1 package usecase.section; 2 3 import common.http.interceptor.InterceptableServlet; 4 import usecase.auth.AuthorizationConstraints; 5 6 import javax.servlet.ServletException; 7 import javax.servlet.annotation.MultipartConfig; 8 import javax.servlet.annotation.WebServlet; 9 import javax.servlet.http.HttpServletRequest; 10 import javax.servlet.http.HttpServletResponse; 11 import java.io.IOException; 12 13 import static usecase.auth.AuthorizationConstraints.Types.ADMINS_ONLY; 14 /** 15 * Servlet che permette ad un amministratore di modificare una sezione. 16 */ 17 @WebServlet("/admin/editsection") 18 @MultipartConfig 19 @AuthorizationConstraints(ADMINS_ONLY) 20 class EditSectionServlet extends InterceptableServlet { 21 //Funzionalità disabilitata 22 23 @Override 24 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 25 resp.sendError(HttpServletResponse.SC_FORBIDDEN,"Funzionalità disabilitata temporaneamente"); 26 } 27 28 29 30 /*@Inject private SectionService service; 31 32 private static final String EDIT_SECTION_PAGE = "/WEB-INF/views/crm/edit-section.jsp"; 33 private static final int MAX_FILE_SIZE = 5 * 1024 * 1024; 34 35 @Override 36 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 37 ParameterConverter converter = new ParameterConverter(request); 38 int sectionId = converter.getIntParameter("sectionId").orElse(0); 39 SectionPage section = service.showSection(sectionId); 40 request.setAttribute("section", section); 41 request.getRequestDispatcher(EDIT_SECTION_PAGE).forward(request, response); 42 } 43 44 @Override 45 @ForwardOnError(EDIT_SECTION_PAGE) 46 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 47 ParameterConverter converter = new ParameterConverter(request); 48 int sectionId = converter.getIntParameter("sectionId").orElse(0); 49 String description = request.getParameter("description"); 50 Part picture = request.getPart("picture"); 51 Part banner = request.getPart("banner"); 52 53 BufferedInputStream buffPicture = null; 54 BufferedInputStream buffBanner = null; 55 if(picture != null && picture.getSize() < MAX_FILE_SIZE) { 56 if (picture.getSize()>0) 57 buffPicture = new BufferedInputStream(picture.getInputStream()); 58 }else{ 59 throw new IllegalArgumentException("Il file non deve superare i 5MB"); 60 } 61 62 if(banner != null && banner.getSize() < MAX_FILE_SIZE) { 63 if (banner.getSize()>0) 64 buffBanner = new BufferedInputStream(banner.getInputStream()); 65 }else{ 66 throw new IllegalArgumentException("Il file non deve superare i 5MB"); 67 } 68 69 SectionPage sectionPage = new SectionPage(sectionId,null,description,picture.getName(),banner.getName(),0,false); //false? 70 service.editSection(sectionPage,sectionId,buffPicture,buffBanner); 71 response.sendRedirect(request.getContextPath()+"/admin/showsections"); 72 } 73 */ 74 }