📄 managesites.java
字号:
} } newPageDef = null; } } catch (Throwable t ){ t.printStackTrace(); } //site.setDefaultTemplateID(newPageDef.getID()); JahiaPage page = site.getHomePage(); currentPageDef = page.getPageTemplate(); if ( page != null ){ if ( newPageDef != null ){ page.setPageTemplateID(newPageDef.getID()); page.commitChanges(true); sMgr.updateSite(site); // remove the default home template which is only // used when no other home templates are available. jpts.deletePageTemplate(currentPageDef.getID()); } } } // reset session session.setAttribute( CLASS_NAME + "newJahiaSite" , null ); displayList( request, response, session ); } else { JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "menu.jsp" ); } }catch ( JahiaException je ){ JahiaConsole.println("ManageSites.processTemplateSetChoice","Exception " + je.getMessage() ); session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", "Error while processing."); JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "menu.jsp" ); return; } } } /** * Display Edit Site form * * @author NK * @author AK * @param request Servlet request. * @param response Servlet response. * @param session HttpSession object. */ private void displayEdit( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException { //System.out.println(" ManageSites :: display edit site started "); try { // get site... String site_id = JahiaTools.getStrParameter(request,"siteid","").trim(); Integer siteID = new Integer( site_id ); JahiaSite site = sMgr.getSite( siteID.intValue() ); // retrieve previous form values... String jahiaDisplayMessage = (String) request.getAttribute(CLASS_NAME + "jahiaDisplayMessage"); String siteTitle = (String) request.getAttribute("siteTitle"); String siteServerName = (String) request.getAttribute("siteServerName"); String siteKey = (String) request.getAttribute("siteKey"); String siteDescr = (String) request.getAttribute("siteDescr"); String warningMsg = (String) request.getAttribute("warningMsg"); Boolean defaultSite = new Boolean(false); if ( request.getAttribute("defaultSite") == null ){ JahiaSite defSite = getDefaultSite(); if ( defSite != null && defSite.getSiteKey().equals(site.getSiteKey()) ){ defaultSite = new Boolean(true); } } else { defaultSite = (Boolean)request.getAttribute("defaultSite"); } // set default values... if(jahiaDisplayMessage == null) { jahiaDisplayMessage = Jahia.COPYRIGHT; } if(siteTitle == null) { siteTitle = site.getTitle(); } if(siteServerName == null) { siteServerName = site.getServerName(); } if(siteKey == null) { siteKey = site.getSiteKey(); } if(siteDescr == null) { siteDescr = site.getDescr(); } if(warningMsg == null) { warningMsg = ""; } // set request attributes... request.setAttribute("jahiaDisplayMessage", jahiaDisplayMessage); request.setAttribute("siteTitle", siteTitle); request.setAttribute("siteServerName", siteServerName); request.setAttribute("siteKey", siteKey); request.setAttribute("siteDescr", siteDescr); request.setAttribute("warningMsg", warningMsg); request.setAttribute("siteID", siteID); request.setAttribute("defaultSite", defaultSite); // redirect... JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "site_edit.jsp" ); } catch (Exception e) { // redirect to list... session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", "Error while processing."); displayList( request, response, session ); // reset display message... session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", Jahia.COPYRIGHT); } } // end displayEdit /** * Process Edit Site form * * @author AK * @author NK * @param request Servlet request. * @param response Servlet response. * @param session HttpSession object. */ private void processEdit( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException { //System.out.println(" ManageSites :: process edit site started "); boolean processError = false; // get form values... String siteTitle = JahiaTools.getStrParameter(request,"siteTitle","").trim(); String siteServerName = JahiaTools.getStrParameter(request,"siteServerName","").trim();// String siteKey = JahiaTools.getStrParameter(request,"siteKey","").toLowerCase().trim(); String siteDescr = JahiaTools.getStrParameter(request,"siteDescr","").trim(); String warningMsg = ""; boolean defaultSite = ( request.getParameter("defaultSite") != null ); // set request attributes... request.setAttribute("siteTitle", siteTitle); request.setAttribute("siteServerName", siteServerName); request.setAttribute("siteDescr", siteDescr); request.setAttribute("defaultSite", new Boolean(defaultSite) ); try { // get site... String site_id = JahiaTools.getStrParameter(request,"siteid","").trim(); Integer siteID = new Integer( site_id ); JahiaSite site = sMgr.getSite( siteID.intValue() ); // check validity... if ( siteTitle != null && (siteTitle.trim().length()>0) && siteServerName != null && (siteServerName.trim().length()>0) ) { if(!site.getServerName().equals(siteServerName)) { if ( sMgr.getSite(siteServerName) != null ){ warningMsg = "Please choose another server name."; processError = true; } } } else { warningMsg = "Please complete requested informations (*)"; } if(!processError) { // save modified informations... site.setTitle(siteTitle); site.setServerName(siteServerName); site.setDescr(siteDescr); sMgr.updateSite( site ); JahiaSite defSite = getDefaultSite(); if ( defaultSite ){ if ( defSite == null ){ changeDefaultSite(site); } else if ( !defSite.getSiteKey().equals(site.getSiteKey()) ){ changeDefaultSite(site); } } else { if ( defSite != null && defSite.getSiteKey().equals(site.getSiteKey()) ){ changeDefaultSite(null); } } // set message default values... session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", Jahia.COPYRIGHT); // redirect... displayList( request, response, session); } else { request.setAttribute("warningMsg", warningMsg); displayEdit( request, response, session); } } catch (JahiaException ex) { warningMsg = "An error occurred while processing the request."; request.setAttribute("warningMsg", warningMsg); displayEdit( request, response, session); } } // end processEdit /** * Set the site as default site in storage, if site == null , set default site to undefined * * @param JahiaSite the site * @return JahiaSite the default site * @author NK */ private void changeDefaultSite(JahiaSite site){ String siteKey = ""; if ( site != null ){ siteKey = site.getSiteKey(); } PropertiesManager pm = new PropertiesManager(Jahia.getJahiaPropertiesFileName()); if ( pm != null ){ pm.setProperty("defautSite",siteKey); pm.storeProperties(); } } /** * Return the default site or null if not found or undefined * * @return JahiaSite the default site * @author NK */ private JahiaSite getDefaultSite(){ JahiaSite site = null; String siteKey = null; // try to load from storage PropertiesManager pm = new PropertiesManager(Jahia.getJahiaPropertiesFileName()); if ( pm != null ){ siteKey = (String)pm.getProperty("defautSite"); if ( siteKey == null || siteKey.trim().equals("") ){ return null; } } if ( siteKey != null ){ try { site = ServicesRegistry.getInstance() .getJahiaSitesService() .getSiteByKey(siteKey); } catch ( JahiaException je ){ return null; } } return site; } /** * Display Delete Site confirmation. * * @author AK * @param request Servlet request. * @param response Servlet response. * @param session HttpSession object. */ private void displayDelete( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException { //System.out.println(" ManageSites :: display delete site started "); // change session time out to 1 hour ( the extraction can be very long !) int timeOut = session.getMaxInactiveInterval(); try { session.setMaxInactiveInterval(7200); // get site... String site_id = JahiaTools.getStrParameter(request,"siteid","").trim(); Integer siteID = new Integer( site_id ); JahiaSite site = sMgr.getSite( siteID.intValue() ); // retrieve previous form
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -