1 16 package com.blandware.atleap.webapp.action.news; 17 18 import com.blandware.atleap.webapp.action.core.BaseAction; 19 import com.blandware.atleap.webapp.form.NewsItemForm; 20 import com.blandware.atleap.webapp.util.core.LocaleUtil; 21 import com.blandware.atleap.webapp.util.core.WebappConstants; 22 import com.blandware.atleap.webapp.util.news.NewsModuleWebConstants; 23 import org.apache.struts.action.ActionForm; 24 import org.apache.struts.action.ActionForward; 25 import org.apache.struts.action.ActionMapping; 26 27 import javax.servlet.http.HttpServletRequest ; 28 import javax.servlet.http.HttpServletResponse ; 29 import java.util.List ; 30 31 53 public final class CallCreateNewsItemBodyAction extends BaseAction { 54 63 public ActionForward execute(ActionMapping mapping, ActionForm form, 64 HttpServletRequest request, HttpServletResponse response) throws Exception { 65 66 request.getSession().removeAttribute(NewsModuleWebConstants.NEWS_ITEM_SUBMITTED_ACTION_KEY); 67 NewsItemForm newsItemForm = (NewsItemForm) form; 68 String localesMode = newsItemForm.getLocalesMode(); 69 70 if ( isBackPressed(request) ) { 71 if (request.getSession().getAttribute(WebappConstants.CONTENT_LOCALES_COLLECTION_KEY) == null) { 74 List contentLocales = LocaleUtil.getInstance(servlet.getServletContext()).getAvailableLocales(); 75 request.getSession().setAttribute(WebappConstants.CONTENT_LOCALES_COLLECTION_KEY, contentLocales); 76 } 77 78 newsItemForm.setAllCheckedFlagForAnnotationCheckboxes(request, localesMode); 80 81 return mapping.findForward("inputForward"); 82 } 83 84 if (isCancelled(request)) { 85 return mapping.findForward("listNewsItems"); 86 } 87 88 if ( request.getSession().getAttribute(WebappConstants.CONTENT_LOCALES_COLLECTION_KEY) == null ) { 89 List contentLocales = LocaleUtil.getInstance(servlet.getServletContext()).getAvailableLocales(); 90 request.getSession().setAttribute(WebappConstants.CONTENT_LOCALES_COLLECTION_KEY, contentLocales); 91 } 92 93 if ( !"current".equalsIgnoreCase(localesMode) && !"all".equalsIgnoreCase(localesMode) && newsItemForm.getBodyCheckedBoxes().size() == 0 ) { 96 request.setAttribute("beginPage", mapping.findForward("listNewsItems").getPath()); 97 return mapping.findForward("unsatisfiablePage"); 98 } 99 100 saveToken(request); 101 return mapping.findForward("createNewsItemBody"); 102 } 103 } | Popular Tags |