package com.jspxcms.core.web.back; import static com.jspxcms.core.support.Constants.MESSAGE; import static com.jspxcms.core.support.Constants.OPERATION_SUCCESS; import static com.jspxcms.core.support.Constants.SAVE_SUCCESS; import java.util.List; import javax.servlet.http.HttpServletRequest; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.WebDataBinder; import org.springframework.web.bind.annotation.InitBinder; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.jspxcms.common.web.Servlets; import com.jspxcms.core.domain.Global; import com.jspxcms.core.domain.GlobalMail; import com.jspxcms.core.domain.GlobalRegister; import com.jspxcms.core.domain.GlobalUpload; import com.jspxcms.core.domain.MemberGroup; import com.jspxcms.core.domain.Org; import com.jspxcms.core.domain.SiteWatermark; import com.jspxcms.core.service.GlobalService; import com.jspxcms.core.service.MemberGroupService; import com.jspxcms.core.service.OrgService; /** * ConfGlobalController * * @author liufang * */ @Controller @RequestMapping("/core/conf_global") public class ConfGlobalController { public static final String TYPE = "type"; @RequiresPermissions("core:conf_global:base_edit") @RequestMapping("base_edit.do") public String baseEdit(org.springframework.ui.Model modelMap) { modelMap.addAttribute(TYPE, "base"); return "core/conf_global/conf_global_base"; } @RequiresPermissions("core:conf_global:base_update") @RequestMapping("base_update.do") public String baseUpdate(@ModelAttribute("bean") Global bean, HttpServletRequest request, RedirectAttributes ra) { service.update(bean); ra.addFlashAttribute(MESSAGE, SAVE_SUCCESS); return "redirect:base_edit.do"; } @RequiresPermissions("core:conf_global:upload_edit") @RequestMapping("upload_edit.do") public String uploadEdit(org.springframework.ui.Model modelMap) { modelMap.addAttribute(TYPE, "upload"); return "core/conf_global/conf_global_upload"; } @RequiresPermissions("core:conf_global:upload_update") @RequestMapping("upload_update.do") public String uploadUpdate(GlobalUpload bean, HttpServletRequest request, RedirectAttributes ra) { service.updateConf(bean); ra.addFlashAttribute(MESSAGE, SAVE_SUCCESS); return "redirect:upload_edit.do"; } @RequiresPermissions("core:conf_global:watermark_edit") @RequestMapping("watermark_edit.do") public String watermarkEdit(org.springframework.ui.Model modelMap) { modelMap.addAttribute(TYPE, "watermark"); return "core/conf_global/conf_global_watermark"; } @RequiresPermissions("core:conf_global:watermark_update") @RequestMapping("watermark_update.do") public String watermarkUpdate(SiteWatermark bean, HttpServletRequest request, RedirectAttributes ra) { service.updateConf(bean); ra.addFlashAttribute(MESSAGE, SAVE_SUCCESS); return "redirect:watermark_edit.do"; } @RequiresPermissions("core:conf_global:register_edit") @RequestMapping("register_edit.do") public String registerEdit(org.springframework.ui.Model modelMap) { List<MemberGroup> groupList = memberGroupService.findList(); List<Org> orgList = orgService.findList(); modelMap.addAttribute("groupList", groupList); modelMap.addAttribute("orgList", orgList); modelMap.addAttribute(TYPE, "register"); return "core/conf_global/conf_global_register"; } @RequiresPermissions("core:conf_global:register_update") @RequestMapping("register_update.do") public String registerUpdate(GlobalRegister bean, HttpServletRequest request, RedirectAttributes ra) { service.updateConf(bean); ra.addFlashAttribute(MESSAGE, SAVE_SUCCESS); return "redirect:register_edit.do"; } @RequiresPermissions("core:conf_global:mail_edit") @RequestMapping("mail_edit.do") public String mailEdit(org.springframework.ui.Model modelMap) { modelMap.addAttribute(TYPE, "mail"); return "core/conf_global/conf_global_mail"; } @RequiresPermissions("core:conf_global:mail_update") @RequestMapping("mail_update.do") public String mailUpdate(GlobalMail bean, HttpServletRequest request, RedirectAttributes ra) { service.updateConf(bean); ra.addFlashAttribute(MESSAGE, SAVE_SUCCESS); return "redirect:mail_edit.do"; } @RequiresPermissions("core:conf_global:mail_send") @RequestMapping("mail_send.do") public String mailSend(HttpServletRequest request, RedirectAttributes ra) { String to = Servlets.getParameter(request, "to"); String subject = Servlets.getParameter(request, "subject"); String text = Servlets.getParameter(request, "text"); Global global = service.findUnique(); GlobalMail mail = global.getMail(); mail.sendMail(new String[] { to }, subject, text); ra.addFlashAttribute(MESSAGE, OPERATION_SUCCESS); return "redirect:mail_edit.do"; } @ModelAttribute("bean") public Global preloadBean() { return service.findUnique(); } @InitBinder protected void initBinder(WebDataBinder binder) { binder.setDisallowedFields("version"); } @Autowired private OrgService orgService; @Autowired private MemberGroupService memberGroupService; @Autowired private GlobalService service; }