Fixed some auth issues

This commit is contained in:
Ziver Koc 2018-08-13 16:49:08 +02:00
parent 0a099bd5d7
commit 121e290d74
6 changed files with 10 additions and 92 deletions

View file

@ -1,78 +0,0 @@
package zall.action.media;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.logging.Logger;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import zall.action.ZalleryAction;
import zall.bean.Folder;
import zall.bean.User;
import zutil.db.DBConnection;
import zutil.log.LogUtil;
import zutil.ui.UserMessageManager;
import zutil.ui.UserMessageManager.MessageLevel;
import zutil.ui.UserMessageManager.UserMessage;
public class CreateFolderAction extends ZalleryAction {
private static final Logger logger = LogUtil.getLogger();
public CreateFolderAction() {
super("mkdir", true);
}
@Override
public void handleRequest(DBConnection db, HttpServletRequest request, HttpServletResponse response, HttpSession session,
PrintWriter out, User user, UserMessageManager msgs) throws SQLException, IOException {
// Create Folder
String path = request.getParameter("dir");
Folder folder = Folder.load(db, path, user);
logger.info("Creating new folder: /" + user.getName() + "/" + path);
// parent folder
if (folder == null) {
String[] dirs = path.split("/");
Folder parent = Folder.loadRoot(db, user);
if (user.isSuperUser() && path.charAt(0) == '/')
path = "";
else {
path = "/{NAME}";
// Get root folder
parent = Folder.load(db, path, user); // Get user root folder
if (parent == null) { // Create root folder
parent = Folder.loadRoot(db, user); // get root folder
folder = new Folder();
folder.setOwner(user);
folder.setParent(parent);
folder.setName("{NAME}");
folder.save(db);
parent = folder;
}
}
for (String dir : dirs) {
if (dir.trim().isEmpty()) // skip empty names
continue;
path += "/" + dir;
folder = Folder.load(db, path, user);
if (folder == null) { // create folder
folder = new Folder();
folder.setOwner(user);
folder.setParent(parent);
folder.setName(dir);
folder.save(db);
}
parent = folder;
}
msgs.add(new UserMessage(MessageLevel.INFO, "Folder '" + path + "' has been successfully created.!"));
} else
msgs.add(new UserMessage(MessageLevel.ERROR, "The folder '" + path + "' already exists!"));
}
}