1 16 package com.blandware.atleap.webapp.action.core.localizable; 17 18 import com.blandware.atleap.common.Constants; 19 import com.blandware.atleap.model.core.ActionPage; 20 import com.blandware.atleap.model.core.ContentPage; 21 import com.blandware.atleap.model.core.Layout; 22 import com.blandware.atleap.model.core.Localizable; 23 import com.blandware.atleap.service.core.LookupManager; 24 import com.blandware.atleap.webapp.action.core.BaseAction; 25 import com.blandware.atleap.webapp.util.core.WebappConstants; 26 import org.apache.commons.validator.GenericValidator; 27 import org.apache.struts.action.ActionForm; 28 import org.apache.struts.action.ActionForward; 29 import org.apache.struts.action.ActionMapping; 30 import org.apache.struts.action.ActionMessage; 31 import org.apache.struts.action.ActionMessages; 32 33 import javax.servlet.http.HttpServletRequest ; 34 import javax.servlet.http.HttpServletResponse ; 35 36 57 public final class ViewLocalizableAction extends BaseAction { 58 67 public ActionForward execute(ActionMapping mapping, ActionForm form, 68 HttpServletRequest request, HttpServletResponse response) { 69 70 Long localizableId = null; 71 if ( !GenericValidator.isBlankOrNull(request.getParameter("id")) ) { 72 localizableId = Long.valueOf(request.getParameter("id")); 73 } else { 74 if ( log.isWarnEnabled() ) { 75 log.warn("Missing localizable ID. Returning to index..."); 76 } 77 return mapping.findForward("admin"); 78 } 79 80 LookupManager lookupManager = (LookupManager) getBean(Constants.LOOKUP_MANAGER_BEAN); 81 Localizable localizable = lookupManager.retrieveLocalizable(localizableId); 82 83 if ( localizable == null ) { 84 ActionMessages errors = new ActionMessages(); 86 errors.add("localizableNotFound", new ActionMessage("core.localizable.errors.notFound", localizableId)); 87 saveErrors(request, errors); 88 return mapping.findForward("admin"); 89 } 90 91 String key = new String (); 92 ActionForward forward = null; 93 94 if ( localizable instanceof Layout ) { 95 forward = mapping.findForward("viewLayout"); 96 key = WebappConstants.LAYOUT_ID_KEY; 97 } else if ( localizable instanceof ContentPage ) { 98 forward = mapping.findForward("viewContentPage"); 99 key = WebappConstants.CONTENT_PAGE_ID_KEY; 100 } else if ( localizable instanceof ActionPage ) { 101 forward = mapping.findForward("viewActionPage"); 102 key = WebappConstants.ACTION_PAGE_ID_KEY; 103 } 104 105 request.getSession().setAttribute(key, localizableId); 106 107 saveToken(request); 109 110 return forward; 111 } 112 } | Popular Tags |