1 16 package com.blandware.atleap.webapp.action.core.menuItem; 17 18 import com.blandware.atleap.webapp.action.core.BaseAction; 19 import com.blandware.atleap.webapp.form.core.SwitchMenuItemSetVisibilityForm; 20 import com.blandware.atleap.webapp.util.core.WebappConstants; 21 import org.apache.struts.action.ActionForward; 22 import org.apache.struts.action.ActionMapping; 23 import org.apache.struts.action.ActionForm; 24 import org.apache.commons.validator.GenericValidator; 25 26 import javax.servlet.http.HttpServletRequest ; 27 import javax.servlet.http.HttpServletResponse ; 28 import java.util.ArrayList ; 29 import java.util.Map ; 30 31 32 53 public final class ProcessItemSetAction extends BaseAction { 54 63 public ActionForward execute(ActionMapping mapping, ActionForm form, 64 HttpServletRequest request, HttpServletResponse response) throws Exception { 65 66 SwitchMenuItemSetVisibilityForm processSetForm = (SwitchMenuItemSetVisibilityForm) form; 67 ArrayList selectedItemIdsList = new ArrayList (processSetForm.getCheckedBoxes().keySet()); 68 Map positions = processSetForm.getPositions(); 69 70 if ( selectedItemIdsList.isEmpty() ) { 71 return mapping.findForward("listMenuItems"); 72 } 73 74 String ownerId = request.getParameter("ownerId"); 75 if (GenericValidator.isBlankOrNull(ownerId)) { 76 return mapping.findForward("listMenuItems"); 77 } 78 79 String mode = null; 80 String multipleOperation = request.getParameter("multipleOperation"); 81 82 ActionForward forward = null; 83 forward = mapping.findForward("switchMenuItemVisibility"); 84 if (!GenericValidator.isBlankOrNull(multipleOperation)) { 85 if ("hideSelected".equalsIgnoreCase(multipleOperation)) { 86 mode = "invisible"; 87 } else if ("showSelected".equalsIgnoreCase(multipleOperation)) { 88 mode = "visible"; 89 } else if ("inheritVisibilityForSelected".equalsIgnoreCase(multipleOperation)) { 90 mode = "heritable"; 91 } else { 92 return mapping.findForward("listMenuItems"); 93 } 94 } else { 95 if ( request.getParameter("hideSelected") != null ) { 96 mode = "invisible"; 97 } else if ( request.getParameter("showSelected") != null ) { 98 mode = "visible"; 99 } else if ( request.getParameter("inheritVisibilityForSelected") != null ) { 100 mode = "heritable"; 101 } else { 102 return mapping.findForward("listMenuItems"); 103 } 104 } 105 106 request.setAttribute(WebappConstants.MENU_ITEM_SELECTED_IDS_KEY, selectedItemIdsList); 107 request.setAttribute(WebappConstants.MENU_ITEM_VISIBILITY_MODE_FOR_SELECTED_KEY, mode); 108 request.setAttribute(WebappConstants.MENU_ITEM_OWNER_ID_FOR_SELECTED_KEY, ownerId); 109 request.setAttribute(WebappConstants.MENU_ITEM_POSITIONS_KEY, positions); 110 111 return forward; 112 } 113 } 114 | Popular Tags |