NEW - # 116: Added Private Folder s

http://bugs.koc.se/view.php?id=116
This commit is contained in:
Ziver Koc 2012-06-13 20:05:58 +00:00
parent d3b4793113
commit 36cee77790
9 changed files with 84 additions and 19 deletions

View file

@ -93,13 +93,18 @@ public class ZalleryAjax extends HttpServlet{
if( action.equalsIgnoreCase("verfemail") ){
User verfuser = User.load(db, Long.parseLong(request.getParameter("id")));
if( verfuser.verifyEmail(request.getParameter("hash")) ){
sendEmailNewUserToAdmin(verfuser, db);
if( verfuser.isEnabled() )
if(out != null) out.println("{ }");
else msgs.add(MessageType.INFO, "Your email has been successfully verified");
else {
sendEmailNewUserToAdmin(verfuser, db);
if(out != null) out.println("{ }");
else msgs.add(MessageType.INFO, "Your email has been successfully verified, the account is waiting account activation by an admin.");
}
verfuser.save(db);
if(out != null) out.println("{ }");
else msgs.add(MessageType.INFO, "Your email has been successfully verified, the account is waiting account activation by an admin.");
}
else if(out != null) out.println("{ \"error\":\"Email verification failed!\" }");
else msgs.add(MessageType.ERROR, "Email verification failed!");
else if(out != null) out.println("{ \"error\":\"Invalid email verification hash!\" }");
else msgs.add(MessageType.ERROR, "Invalid email verification hash!");
return;
}
@ -301,6 +306,33 @@ public class ZalleryAjax extends HttpServlet{
else if(out != null) out.println("{ \"error\": \"No such item!\"}");
else msgs.add(MessageType.ERROR, "The item does not exist!");
}
// Toggle folder private
else if( action.equalsIgnoreCase("mkprivate") ){
if( request.getParameter("id") == null){
if(out != null) out.println("{ \"error\": \"Missing parameters!\"}");
else msgs.add(MessageType.ERROR, "Missing parameters!");
return;
}
long id = Long.parseLong(request.getParameter("id"));
Folder folder = Folder.load(db, id);
if( folder != null ){
if( user.canEdit(folder) ){
folder.setPrivate( !folder.isPrivate() );
folder.save(db);
if(out != null) out.println("{}");
else{
if(folder.isPrivate()) msgs.add(MessageType.INFO, "Folder is now private (not visible to other users).");
else msgs.add(MessageType.INFO, "Folder is now public (can be viewed by other users).");
}
}
else if(out != null) out.println("{ \"error\": \"You are not authorize to edit this folder!\"}");
else msgs.add(MessageType.ERROR, "You are not authorize to edit this folder!");
}
else if(out != null) out.println("{ \"error\": \"No such folder!\"}");
else msgs.add(MessageType.ERROR, "The folder does not exist!");
}
else if( action.equalsIgnoreCase("rmdir") ){
if( request.getParameter("id") == null){
@ -336,7 +368,7 @@ public class ZalleryAjax extends HttpServlet{
// parent folder
if( folder == null ){
String[] dirs = path.split("/");
Folder parent = Folder.loadRoot(db);
Folder parent = Folder.loadRoot(db, user);
if( user.isSuperUser() && path.charAt(0) == '/' )
path = "";
else{
@ -345,7 +377,7 @@ public class ZalleryAjax extends HttpServlet{
// Get root folder
parent = Folder.load(db, path, user); // Get user root folder
if( parent == null ){ // Create root folder
parent = Folder.loadRoot(db); // get root folder
parent = Folder.loadRoot(db, user); // get root folder
folder = new Folder();
folder.setUser( user );
folder.setParent( parent );
@ -409,7 +441,7 @@ public class ZalleryAjax extends HttpServlet{
smtpEmail.setSubject("Registration at "+Zallery.getWebsiteName());
smtpEmail.setContentType(ContentType.HTML);
smtpEmail.setMessage("You receive this message because you have requested an account" +
"<br>at <a href='"+Zallery.getWebsiteURL()+"'>"+Zallery.getWebsiteName()+"</a>. Please click the link to verify your email address: " +
"<br>at "+Zallery.getWebsiteName()+". Please click the link to verify your email address: " +
"<p><a href='"+Zallery.getWebsiteURL()+"?action=verfemail&id="+user.getId()+"&hash="+user.getEmailVerificationHash()+"'>"+Zallery.getWebsiteURL()+"?action=verfemail&id="+user.getId()+"&hash="+user.getEmailVerificationHash()+"</a>" +
"<p> You will have to wait for an admin to activate your account after you have verified your email.");
smtpEmail.send();