📄 managetemplates.java
字号:
templ.commitChanges(); sitesServ.updateSite(site); templ = pageTempServ.lookupPageTemplate (id); session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", "template updated successfully"); } } else { request.setAttribute("errMsg", "Cannot find the template definition"); } int pageid = site.getHomePageID(); JahiaPage page = pageServ.lookupPage(pageid); if ( page != null && (page.getPageTemplateID() == templ.getID()) ){ request.setAttribute("canDelete", Boolean.FALSE ); } request.setAttribute("templ", templ); } request.setAttribute("templatesContext",getTemplatesContext(session)); JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "template_edit.jsp" ); } catch ( JahiaException je ){ request.setAttribute("jahiaDisplayMessage", "An error occured while processing your request"); JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "menu.jsp" ); } } //------------------------------------------------------------------------- /** * Handle Edit Templates options * * @author NK * @param request Servlet request. * @param response Servlet response. * @param session HttpSession object. */ private void editTemplateOption( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException { try { JahiaSitesService sitesServ = sReg.getJahiaSitesService(); if ( sitesServ == null ){ throw new JahiaException( "Unavailable Services", "Unavailable Services", JahiaException.SERVICE_ERROR, JahiaException.ERROR ); } int autoDeploy = 0; if ( site.getTemplatesAutoDeployMode() ){ autoDeploy = 1; } request.setAttribute("autoDeploy", new Integer(autoDeploy)); // get paramater String subAction =(String)request.getParameter("subaction"); if ( subAction != null && subAction.equals("save") ) { String strVal = (String)request.getParameter("autoDeploy"); int intVal = 0; if ( strVal != null ){ intVal = 1; } if ( intVal != autoDeploy ){ try { site.setTemplatesAutoDeployMode(intVal==1); sitesServ.updateSite(site); session.setAttribute( ParamBean.SESSION_SITE , site ); session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", "Changes have been successfully updated"); } catch ( JahiaException je ) { session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", "An error occurred while updating changes"); } request.setAttribute("autoDeploy", new Integer(intVal)); } } JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "template_option.jsp" ); } catch ( JahiaException je ){ request.setAttribute("jahiaDisplayMessage", "An error occured while processing your request"); JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "menu.jsp" ); } } // end editTemplateOption //------------------------------------------------------------------------- /** * Display the list of new templates. * * @author NK * @param request Servlet request. * @param response Servlet response. * @param session HttpSession object. */ private void displayNewTemplateList( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException { try { JahiaTemplatesDeployerService tempDepServ = sReg.getJahiaTemplatesDeployerService(); if ( tempDepServ == null ){ throw new JahiaException( "Unavailable Services", "Unavailable Services", JahiaException.SERVICE_ERROR, JahiaException.ERROR ); } // get the list of new web apps Enumeration newTemplatesKeys = tempDepServ.getTemplatesPackageKeys(site.getSiteKey()); Enumeration enum = tempDepServ.getTemplatesPackages(site.getSiteKey()); Vector vec = new Vector(); JahiaTemplatesPackage aPackage = null; while (enum.hasMoreElements()){ aPackage = (JahiaTemplatesPackage)enum.nextElement(); if ( aPackage != null ){ vec.add(aPackage); } else { //System.out.println("displayNewTemplateList packages is null"); } } request.setAttribute("packagesList", vec.elements()); JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "new_templates.jsp" ); } catch ( JahiaException je ){ request.setAttribute("jahiaDisplayMessage", "An error occured while processing your request"); JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "menu.jsp" ); } } //------------------------------------------------------------------------- /** * Display informations about a new template * * @author NK * @param request Servlet request. * @param response Servlet response. * @param session HttpSession object. */ private void displayNewTemplateDetail( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException { try { JahiaTemplatesDeployerService tempDepServ = sReg.getJahiaTemplatesDeployerService(); JahiaPageTemplateService pageTempServ = sReg.getJahiaPageTemplateService(); if ( tempDepServ == null || pageTempServ == null ){ throw new JahiaException( "Unavailable Services", "Unavailable Services", JahiaException.SERVICE_ERROR, JahiaException.ERROR ); } // get the new template package String packageName = (String)request.getParameter("package_name"); JahiaTemplatesPackage aPackage = (JahiaTemplatesPackage)tempDepServ.getTemplatesPackage(site.getSiteKey() + "_" + packageName); // check for license limitation int nbTemplates = pageTempServ.getNbPageTemplates(site.getID()); boolean canDeploy = ( ( mLicenseKey.getPageTemplateLimit() == -1 ) || !(nbTemplates + aPackage.getTemplates().size() > mLicenseKey.getPageTemplateLimit()) ); request.setAttribute("templateLimit", new Integer(mLicenseKey.getPageTemplateLimit()) ); request.setAttribute("canDeploy", new Boolean(canDeploy) ); String subAction =(String)request.getParameter("subaction"); if ( subAction == null ){ request.setAttribute("aPackage", aPackage); } else if ( subAction.equals("deploy") && canDeploy){ try { if (tempDepServ.deploy( site, aPackage.getRootFolder(), aPackage.getFilePath(),true)){ // Register package in Jahia tempDepServ.registerTemplates(site, aPackage); // delete the package tempDepServ.deletePackage(site,aPackage.getFilePath()); displayNewTemplateList(request,response,session); return; } else { session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", "An error occurred while deploying the package"); request.setAttribute("aPackage", aPackage); } } catch ( JahiaException je ){ request.setAttribute("aPackage", aPackage); session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", "An error occurred while deploying the package"); } } else if ( subAction.equals("delete") ){ try { if (tempDepServ.deletePackage(site,aPackage.getFilePath())){ displayNewTemplateList(request,response,session); return; } else { request.setAttribute("aPackage", aPackage); session.setAttribute( CLASS_NAME + "jahiaDisplayMessage", "An error occurred while deleting the package"); } } catch ( IOException ioe ){ session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", "An error occurred while deleting the package"); } } JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "new_template_detail.jsp" ); } catch ( JahiaException je ){ request.setAttribute("jahiaDisplayMessage", "An error occured while processing your request"); JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "menu.jsp" ); } } //------------------------------------------------------------------------- /** * Handle all the process of manually adding a new template * * @author NK * @param request Servlet request. * @param response Servlet response. * @param session HttpSession object. */ private void addTemplate( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException { try { JahiaTemplatesDeployerService tempDepServ = sReg.getJahiaTemplatesDeployerService(); JahiaPageTemplateService pageTempServ = sReg.getJahiaPageTemplateService(); if ( tempDepServ == null || pageTempServ == null ){ throw new JahiaException( "Unavailable Services", "Unavailable Services", JahiaException.SERVICE_ERROR, JahiaException.ERROR ); } // check for license limitation int nbTemplates = pageTempServ.getNbPageTemplates(site.getID()); boolean canAddNew = ( (mLicenseKey.getPageTemplateLimit() == -1) || (nbTemplates < mLicenseKey.getPageTemplateLimit()) ); request.setAttribute("templateLimit", new Integer(mLicenseKey.getPageTemplateLimit()) ); request.setAttribute("canAddNew", new Boolean(canAddNew) );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -