/** * 我的评论 * * <p>如果没有登录则跳转到登陆页 * * @param request * @param response * @param model * @return */ @RequestMapping(value = "/member/mycomments.jspx") public String mycomments( Integer pageNo, HttpServletRequest request, HttpServletResponse response, ModelMap model) { CmsSite site = CmsUtils.getSite(request); CmsUser user = CmsUtils.getUser(request); FrontUtils.frontData(request, model, site); MemberConfig mcfg = site.getConfig().getMemberConfig(); // 没有开启会员功能 if (!mcfg.isMemberOn()) { return FrontUtils.showMessage(request, model, "member.memberClose"); } if (user == null) { return FrontUtils.showLogin(request, model, site); } Pagination pagination = commentMng.getPageForMember( site.getId(), null, user.getId(), null, null, null, null, true, cpn(pageNo), CookieUtils.getPageSize(request)); model.addAttribute("pagination", pagination); return FrontUtils.getTplPath(request, site.getSolutionPath(), TPLDIR_COMMENT, COMMENT_LIST); }
/** 查看评论回复 */ @RequestMapping(value = "/member/comment_replay.jspx") public String guestbook_replay( Integer id, String nextUrl, HttpServletRequest request, HttpServletResponse response, ModelMap model) { CmsSite site = CmsUtils.getSite(request); CmsUser user = CmsUtils.getUser(request); FrontUtils.frontData(request, model, site); MemberConfig mcfg = site.getConfig().getMemberConfig(); // 没有开启会员功能 if (!mcfg.isMemberOn()) { return FrontUtils.showMessage(request, model, "member.memberClose"); } if (user == null) { return FrontUtils.showLogin(request, model, site); } CmsComment comment = commentMng.findById(id); if (!comment.getCommentUser().equals(user)) { WebErrors errors = WebErrors.create(request); errors.addErrorCode("error.noPermissionsView"); return FrontUtils.showError(request, response, model, errors); } model.addAttribute("comment", comment); return FrontUtils.getTplPath(request, site.getSolutionPath(), TPLDIR_COMMENT, COMMENT_REPLY); }
@RequestMapping(value = "/public_auth.jspx") public String auth( String openId, HttpServletRequest request, HttpServletResponse response, ModelMap model) { CmsSite site = CmsUtils.getSite(request); FrontUtils.frontData(request, model, site); return FrontUtils.getTplPath(request, site.getSolutionPath(), TPLDIR_MEMBER, TPL_AUTH); }
/** * 客户端包含 * * @param request * @param model * @return */ @RequestMapping(value = "/login_csi.jspx") public String csi(HttpServletRequest request, ModelMap model) { CmsSite site = CmsUtils.getSite(request); // 将request中所有参数 model.putAll(RequestUtils.getQueryParams(request)); FrontUtils.frontData(request, model, site); return FrontUtils.getTplPath(request, site.getSolutionPath(), TPLDIR_CSI, LOGIN_CSI); }
@RequestMapping(value = "/public_bind_username.jspx") public String bind_username_post( String username, HttpServletRequest request, HttpServletResponse response, ModelMap model) { CmsSite site = CmsUtils.getSite(request); WebErrors errors = WebErrors.create(request); String source = ""; if (StringUtils.isBlank(username)) { // 用户名为空 errors.addErrorCode("error.usernameRequired"); } else { boolean usernameExist = unifiedUserMng.usernameExist(username); if (usernameExist) { // 用户名存在 errors.addErrorCode("error.usernameExist"); } else { // 获取用户来源 String openId = (String) session.getAttribute(request, CmsThirdAccount.QQ_KEY); String uid = (String) session.getAttribute(request, CmsThirdAccount.SINA_KEY); String weboOpenId = (String) session.getAttribute(request, CmsThirdAccount.QQ_WEBO_KEY); // (获取到登录授权key后可以注册用户) if (StringUtils.isNotBlank(openId) || StringUtils.isNotBlank(uid) || StringUtils.isNotBlank(weboOpenId)) { // 初始设置密码同用户名 cmsUserMng.registerMember( username, null, username, RequestUtils.getIpAddr(request), null, null, false, new CmsUserExt(), null); } if (StringUtils.isNotBlank(openId)) { source = CmsThirdAccount.QQ_PLAT; } else if (StringUtils.isNotBlank(uid)) { source = CmsThirdAccount.SINA_PLAT; } else if (StringUtils.isNotBlank(weboOpenId)) { source = CmsThirdAccount.QQ_WEBO_PLAT; } // 提交登录并绑定账号 loginByUsername(username, request, response, model); } } if (errors.hasErrors()) { errors.toModel(model); model.addAttribute("success", false); } else { model.addAttribute("success", true); } model.addAttribute("source", source); FrontUtils.frontData(request, model, site); return FrontUtils.getTplPath(request, site.getSolutionPath(), TPLDIR_MEMBER, TPL_BIND); }
/** * 删除评论(id,评论人id,来访ip) * * <p>如果没有登录则跳转到登陆页 * * @param request * @param response * @param model * @return */ @RequestMapping(value = "/member/comment_delete.jspx") public String delete( Integer commentId, Integer userId, String ip, Integer pageNo, String nextUrl, HttpServletRequest request, HttpServletResponse response, ModelMap model) { CmsSite site = CmsUtils.getSite(request); CmsUser user = CmsUtils.getUser(request); FrontUtils.frontData(request, model, site); MemberConfig mcfg = site.getConfig().getMemberConfig(); // 没有开启会员功能 if (!mcfg.isMemberOn()) { return FrontUtils.showMessage(request, model, "member.memberClose"); } if (user == null) { return FrontUtils.showLogin(request, model, site); } // 删除单条评论 CmsComment bean; if (commentId != null) { CmsComment cmsComment = commentMng.findById(commentId); if (cmsComment == null) { return FrontUtils.showMessage(request, model, "comment.notFound"); } if (!canDeleteComment(cmsComment, user)) { return FrontUtils.showMessage(request, model, "comment.deleteError"); } bean = commentMng.deleteById(commentId); log.info("delete CmsComment id={}", bean.getId()); } else { // 依据评论人或者评论ip删除评论 List<CmsComment> comments = commentMng.getListForDel(site.getId(), user.getId(), userId, ip); for (int i = 0; i < comments.size(); i++) { bean = comments.get(i); if (!canDeleteComment(bean, user)) { return FrontUtils.showMessage(request, model, "comment.deleteError"); } commentMng.deleteById(comments.get(i).getId()); log.info("delete CmsComment id={}", bean.getId()); } } /* * Pagination pagination = commentMng.getPageForMember(site.getId(), * null, null, user.getId(), null, null, null, true, cpn(pageNo), * CookieUtils.getPageSize(request)); model.addAttribute("pagination", * pagination); */ // 返回评论列表 return FrontUtils.showSuccess(request, model, nextUrl); }
@RequestMapping(value = "/public_bind.jspx", method = RequestMethod.POST) public String bind_post( String username, String password, HttpServletRequest request, HttpServletResponse response, ModelMap model) { boolean usernameExist = unifiedUserMng.usernameExist(username); CmsSite site = CmsUtils.getSite(request); WebErrors errors = WebErrors.create(request); String source = ""; if (!usernameExist) { // 用户名不存在 errors.addErrorCode("error.usernameNotExist"); } else { UnifiedUser u = unifiedUserMng.getByUsername(username); boolean passwordValid = unifiedUserMng.isPasswordValid(u.getId(), password); if (!passwordValid) { errors.addErrorCode("error.passwordInvalid"); } else { // 获取用户来源 String openId = (String) session.getAttribute(request, CmsThirdAccount.QQ_KEY); String uid = (String) session.getAttribute(request, CmsThirdAccount.SINA_KEY); String weboOpenId = (String) session.getAttribute(request, CmsThirdAccount.QQ_WEBO_KEY); if (StringUtils.isNotBlank(openId)) { source = CmsThirdAccount.QQ_PLAT; } else if (StringUtils.isNotBlank(uid)) { source = CmsThirdAccount.SINA_PLAT; } else if (StringUtils.isNotBlank(weboOpenId)) { source = CmsThirdAccount.QQ_WEBO_PLAT; } // 提交登录并绑定账号 loginByUsername(username, request, response, model); } } if (errors.hasErrors()) { errors.toModel(model); model.addAttribute("success", false); } else { model.addAttribute("success", true); } model.addAttribute("source", source); FrontUtils.frontData(request, model, site); return FrontUtils.getTplPath(request, site.getSolutionPath(), TPLDIR_MEMBER, TPL_BIND); }
@RequestMapping(value = "/public_bind.jspx", method = RequestMethod.GET) public String bind_get(HttpServletRequest request, HttpServletResponse response, ModelMap model) { CmsSite site = CmsUtils.getSite(request); FrontUtils.frontData(request, model, site); return FrontUtils.getTplPath(request, site.getSolutionPath(), TPLDIR_MEMBER, TPL_BIND); }