/** * Balero CMS Project: Proyecto 100% Mexicano de código libre. * Página Oficial: http://www.balerocms.com * * @author Anibal Gomez <anibalgomez@icloud.com> * @copyright Copyright (C) 2015 Neblina Software. Derechos reservados. * @license Licencia BSD; vea LICENSE.txt */ package com.neblina.balero.web.authorized.admin; import com.neblina.balero.service.BlockService; import com.neblina.balero.service.PropertyService; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.annotation.Secured; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; @Controller @RequestMapping("/admin/block") public class AdminBlockController { private static final Logger log = LogManager.getLogger(AdminBlockController.class.getName()); @Autowired private BlockService blockService; @Autowired private PropertyService propertyService; @Secured("ROLE_ADMIN") @RequestMapping(value = {"", "/"} ) public String homepage(Model model) { model.addAttribute("blocks", blockService.findAll()); return "authorized/block"; } @Secured("ROLE_ADMIN") @RequestMapping(value = "/{id}", method = RequestMethod.GET) public String homepageEditGet(Model model, @PathVariable("id") Long id) { model.addAttribute("blocks", blockService.findOneById(id)); model.addAttribute("multiLanguage", propertyService.isMultiLanguage()); return "authorized/block_edit"; } @Secured("ROLE_ADMIN") @RequestMapping(value = "/{id}", method = RequestMethod.POST) public String homepageEditPost(Model model, @PathVariable("id") Long id, String name, String content, String code, int blockOrder) { blockService.saveBlock( id, name, content, code, blockOrder ); model.addAttribute("success", 1); model.addAttribute("blocks", blockService.findOneById(id)); model.addAttribute("multiLanguage", propertyService.isMultiLanguage()); return "authorized/block_edit"; } @Secured("ROLE_ADMIN") @RequestMapping(value = "/new", method = RequestMethod.GET) public String homepageEditGet(Model model) { model.addAttribute("multiLanguage", propertyService.isMultiLanguage()); model.addAttribute("mainLanguage", propertyService.getMainLanguage()); return "authorized/block_new"; } @Secured("ROLE_ADMIN") @RequestMapping(value = "/new", method = RequestMethod.POST) public String homepageNew( @RequestParam("name") String name, @RequestParam("content") String content, @RequestParam("code") String code, @RequestParam("blockOrder") int blockOrder) { blockService.createBlock( name, content, code, blockOrder ); return "redirect:/admin//block"; } @Secured("ROLE_ADMIN") @RequestMapping(value = "/delete/{id}", method = RequestMethod.GET) public String homepageDelete(@PathVariable("id") Long id) { blockService.deleteBlock(id); return "redirect:/admin/block"; } }