📄 managehomepages.java
字号:
request.setAttribute("warningMsg","The source page you choose is not available"); return false; } value = (String) request.getParameter("destpageid"); if ( value != null ){ pageID = Integer.parseInt(value); try { if ( pageID != -1 ) destPage = (JahiaPage)pageService .lookupPageWhitoutTemplates(pageID); } catch ( Throwable t ){ t.printStackTrace(); } } if ( destPage == null ){ request.setAttribute("warningMsg","The destination page you choose is not available"); return false; } if ( destPage.getID() == selectedPage.getID() ){ request.setAttribute("warningMsg","The destination page cannot be same as the source page"); return false; } value = (String) request.getParameter("depthtype"); if ( value != null ){ depthType = Integer.parseInt(value); } if ( depthType == 2 ){ depth = 0; } else { value = (String) request.getParameter("depth"); if ( value != null ){ depth = Integer.parseInt(value); } } if ( depth < 0 ){ request.setAttribute("warningMsg","Invalid Depth value"); return false; } JahiaHomepageCopy hp = (JahiaHomepageCopy)session.getAttribute("homepageBean"); if ( hp == null ){ throw new JahiaException(CLASS_NAME+".saveCopy", "Homepage bean not found in session", JahiaException.ERROR, JahiaException.ERROR); } hp.setPageID(selectedPage.getID()); hp.setParentPageID(destPage.getID()); hp.setCopyDepth(depth); //hpServ.saveHomepage(hp,site.getAclID()); if ( true ){ // disallow save // well as it is not implemented yet completely , let's display a warning msg about that request.setAttribute("warningMsg","This type of home page definition is not implemented yet."); return false; } return true; } //-------------------------------------------------------------------------- /** * Save a homepage of type new. * * @author Khue Nguyen * * @param request Servlet request. * @param response Servlet response. * @param session Servlet session for the current user. */ private boolean saveNew( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException, JahiaException { JahiaPageBaseService pageService = JahiaPageBaseService.getInstance(); // retrieve previous form values... JahiaPage selectedPage = null; String value = (String) request.getParameter("destpageid"); int pageID = -1; if ( value != null ){ pageID = Integer.parseInt(value); try { if ( pageID != -1 ) selectedPage = (JahiaPage)pageService .lookupPageWhitoutTemplates(pageID); } catch ( Throwable t ){ t.printStackTrace(); } } if ( selectedPage == null ){ request.setAttribute("warningMsg","The page you choose is not available"); return false; } value = (String) request.getParameter("template"); int templateID = -1; if ( value != null ){ templateID = Integer.parseInt(value); } JahiaPageDefinition pageDef = null; try { pageDef = ServicesRegistry.getInstance() .getJahiaPageTemplateService().lookupPageTemplate(templateID); } catch ( Throwable t ){ t.printStackTrace(); } if ( pageDef == null ){ request.setAttribute("warningMsg","Please choose another template."); return false; } JahiaHomepageNew hp = (JahiaHomepageNew)session.getAttribute("homepageBean"); if ( hp == null ){ throw new JahiaException(CLASS_NAME+".saveCopy", "Homepage bean not found in session", JahiaException.ERROR, JahiaException.ERROR); } hp.setParentPageID(pageID); hp.setTemplateID(templateID); //hpServ.saveHomepage(hp,site.getAclID()); if ( true ) { // disallow save // well as it is not implemented yet completely , let's display a warning msg about that request.setAttribute("warningMsg","This type of home page definition is not implemented yet."); return false; } return true; } //-------------------------------------------------------------------------- /** * Display the form detail of a homepage. * * @author Khue Nguyen * * @param request Servlet request. * @param response Servlet response. * @param session Servlet session for the current user. */ private void displayDetail( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException, JahiaException { JahiaConsole.println(CLASS_NAME+".displayDetail","Started"); JahiaHomepage hp = null; String value = request.getParameter("hpid"); if ( value != null ){ JahiaHomepage oriHp = hpServ.getHomepage(Integer.parseInt(value)); if ( oriHp == null ){ displayError(request,response,"Cannot found the requested homepage ["+value+"]"); return; } hp = ( JahiaHomepage ) oriHp.clone(); session.setAttribute("homepageBean",hp); } hp = (JahiaHomepage)session.getAttribute("homepageBean"); if ( hp == null ){ displayError(request,response,"Cannot found the requested homepage ["+value+"]"); return; } String go = request.getParameter("go"); if ( go == null ) go = ""; // set the default action request.setAttribute("subAction","detail"); // set the default step if ( go.equals("") ) go = "change"; request.setAttribute("go",go); if ( go.equals("delete") ){ String confirm = request.getParameter("confirmdelete"); if ( confirm == null ){ request.setAttribute("includeSpecificSection","delete"); doRedirect(request,response,JSP+"delete"); return; } if (processDelete(hp)){ displayMain(request,response,session); return; } else { displayError(request,response,"An error occurred while deleting the home page"); } } if ( go.equals("save") || go.equals("change") ){ // retrieve submitted Data value = request.getParameter("name"); if ( value != null ) hp.setName(value); value = request.getParameter("descr"); if ( value != null ) hp.setDescr(value); } if ( go.equals("save") ){ boolean error = false; if (hp.getName() == null || hp.getName().trim().equals("") ){ request.setAttribute("warningMsg","A name is required"); error = true; } if ( !error ){ // specific homepage save if ( hp.getType() == HomepageTypes.HOMEPAGE_LINK ){ error = !saveLink( request, response, session ); } else if ( hp.getType() == HomepageTypes.HOMEPAGE_COPY ){ error = !saveCopy( request, response, session ); } else if ( hp.getType() == HomepageTypes.HOMEPAGE_NEW ){ error = !saveNew( request, response, session ); } } if ( !error ){ // reset session session.setAttribute("homepageBean",null); displayMain( request, response, session ); return; } } if ( hp.getType() == HomepageTypes.HOMEPAGE_LINK ){ prepareAddLink(request,response,session); } else if ( hp.getType() == HomepageTypes.HOMEPAGE_COPY ){ prepareAddCopy(request,response,session); } else if ( hp.getType() == HomepageTypes.HOMEPAGE_NEW ){ prepareAddNew(request,response,session); } // display the form doRedirect( request, response, JSP + "detail" ); } //-------------------------------------------------------------------------- /** * Display Homepage options. * * @author Khue Nguyen * * @param request Servlet request. * @param response Servlet response. * @param session Servlet session for the current user. */ private void displayOptions( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException, JahiaException { JahiaConsole.println(CLASS_NAME+".displayOptions","Started"); JahiaHomepage hp = null; String value = null; int userDefaultHomepageID = site.getUserDefaultHomepageDef(); int groupDefaultHomepageID = site.getGroupDefaultHomepageDef(); String go = request.getParameter("go"); if ( go == null ) go = ""; // set the default action request.setAttribute("subAction","options"); // set the default step if ( go.equals("") ) go = "change"; request.setAttribute("go",go); if ( go.equals("save") || go.equals("change") ){ // retrieve submitted Data value = request.getParameter("userdefaulthomepage"); if ( value != null ) userDefaultHomepageID = Integer.parseInt(value); value = request.getParameter("groupdefaulthomepage"); if ( value != null ) groupDefaultHomepageID = Integer.parseInt(value); } if ( go.equals("save") ){ site.setUserDefaultHomepageDef(userDefaultHomepageID); site.setGroupDefaultHomepageDef(groupDefaultHomepageID); request.setAttribute("warningMsg","Changes saved successfully"); //doRedirect( request, response, JSP + "options" ); //displayMain( request, response, session ); //return; } Enumeration enum = hpServ.getHomepages(site); request.setAttribute("homepages1",enum); enum = hpServ.getHomepages(site); request.setAttribute("homepages2",enum); hp = hpServ.getHomepage(userDefaultHomepageID); if (hp == null) hp = hpServ.createHomepage( "","","",HomepageTypes.HOMEPAGE_LINK,null,-1); request.setAttribute("userDefaultHomepage",hp); hp = hpServ.getHomepage(groupDefaultHomepageID); if (hp == null) hp = hpServ.createHomepage( "","","",HomepageTypes.HOMEPAGE_LINK,null,-1); request.setAttribute("groupDefaultHomepage",hp); // display the form doRedirect( request, response, JSP + "options" ); } //-------------------------------------------------------------------------- /** * Delete the homepage bean stored in session. * @author Khue Nguyen * * @param JahiaHomepage , the homepage bean. */ private boolean processDelete( JahiaHomepage hp ) throws JahiaException { if ( hp == null ) return false; hpServ.deleteHomepage(hp.getID()); return true; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -