| 1 25 26 package com.j2biz.blogunity.web.actions.my; 27 28 import javax.servlet.http.HttpServletRequest ; 29 import javax.servlet.http.HttpServletResponse ; 30 31 import com.j2biz.blogunity.dao.BlogDAO; 32 import com.j2biz.blogunity.dao.UserDAO; 33 import com.j2biz.blogunity.exception.BlogunityException; 34 import com.j2biz.blogunity.i18n.I18N; 35 import com.j2biz.blogunity.i18n.I18NStatusFactory; 36 import com.j2biz.blogunity.pojo.Blog; 37 import com.j2biz.blogunity.pojo.User; 38 import com.j2biz.blogunity.web.ActionResultFactory; 39 import com.j2biz.blogunity.web.IActionResult; 40 41 49 public class AcceptContributorToCommunityBlogAction extends MyAbstractAction { 50 51 private static final IActionResult ADD_ERROR_FORWARD = ActionResultFactory 52 .buildForward("/jsp/my/listCommunityBlogMembers.jsp"); 53 54 60 public IActionResult execute(HttpServletRequest request, HttpServletResponse response) 61 throws BlogunityException { 62 63 64 BlogDAO blogDAO = new BlogDAO(); 65 UserDAO userDAO = new UserDAO(); 66 67 String userid = request.getParameter("userid"); 68 String blogid = request.getParameter("blogid"); 69 70 Blog b; 71 try { 72 b = blogDAO.getBlogByID(Long.parseLong(blogid)); 73 } catch (Exception e) { 74 b = null; 75 } 76 77 if (b == null) { throw new BlogunityException(I18NStatusFactory.create( 78 I18N.ERRORS.NOT_FOUND, "Blog")); } 79 80 if (b.getFounder().getId().longValue() != user.getId().longValue()&& !user.isAdministrator()) { throw new BlogunityException( 81 I18NStatusFactory.create(I18N.ERRORS.USER_NOT_AUTHORIZED_FOR_EXECUTION)); } 82 83 User u; 84 try { 85 u = userDAO.getUserByID(Long.parseLong(userid)); 86 } catch (Exception e) { 87 u = null; 88 } 89 90 if (u == null) { throw new BlogunityException(I18NStatusFactory.create( 91 I18N.ERRORS.NOT_FOUND, "User")); } 92 93 if (!b.getWaitingForAcceptanceUsers().contains(u)) 94 throw new BlogunityException(I18NStatusFactory 95 .create(I18N.ERRORS.BLOG_DOES_NOT_CONTAINS_USER)); 96 97 u.getContributedBlogs().add(b); 98 u.getWaitingForAcceptanceBlogs().remove(b); 99 userDAO.updateUser(user); 100 101 return ActionResultFactory.buildRedirect("/my/listCommunityBlogMembers?id=" + b.getId()); 102 103 } 104 105 } | Popular Tags |