📄 managesites.java
字号:
// $Id: ManageSites.java,v 1.14 2002/06/14 12:55:43 knguyen Exp $//// ____.// __/\ ______| |__/\. _______// __ .____| | \ | +----+ \// _______| /--| | | - \ _ | : - \_________// \\______: :---| : : | : | \________>// |__\---\_____________:______: :____|____:_____\// /_____|//// . . . i n j a h i a w e t r u s t . . .////// ManageSites//// 02.04.2001 MJ added in jahia.// 19.04.2001 AK multisite first steps.// 20.04.2001 AK change selection way for re-use existant administrator.// 21.04.2001 AK complete add a site capability.// 22.04.2001 AK edit a site and delete a site capabilities.// 27.04.2001 NK added default site handling.// 02.05.2001 NK added templates, applications, users, files repository// full deletion from disk and db storage when deleting a whole site// 04.05.2001 NK Can delete all sites, no server site anymore// 16.05.2001 NK Handle special case when the current site is deleted -> need session synchronisation.// 16.05.2001 NK Integrate License Check.// 23.05.2001 NK Add Site reminder previous data by storing temporaty new site in session allowing// GO BACK to the previous screen.// 27.09.2001 NK Add Site , added template set choice step//package org.jahia.admin.sites;import java.io.*; // IOExceptionimport java.util.*;import java.sql.*;import javax.servlet.*;import javax.servlet.http.*;import org.jahia.bin.*;import org.jahia.utils.*; // JahiaToolsimport org.jahia.data.templates.*;import org.jahia.data.constants.JahiaConstants;import org.jahia.params.*; // ParamBeanimport org.jahia.utils.properties.*; // PropertiesManagerimport org.jahia.settings.*; // JahiaPrivateSettingsimport org.jahia.services.files.*;import org.jahia.services.pages.*; // JahiaPageDB, JahiaPageUtilsDBimport org.jahia.services.sites.*; // JahiaSitesServiceimport org.jahia.services.audit.*;import org.jahia.services.filemanager.*;import org.jahia.registries.*; // ServicesRegistryimport org.jahia.exceptions.*; // JahiaExceptionimport org.jahia.services.acl.*; // ACLimport org.jahia.services.usermanager.*; // UserManager Servicesimport org.jahia.services.pages.*; // Pages Servicesimport org.jahia.services.search.*; // Search servicesimport org.jahia.security.license.LicenseKey;import org.jahia.security.license.InvalidLicenseException;import org.jahia.services.templates_deployer.*;import org.jahia.services.webapps_deployer.*;/** * desc: This class provides the business methods for sites * management, from the JahiaAdministration servlet. * @author Khue Nguyen * * Copyright: Copyright (c) 2002 * Company: Jahia Ltd * * @version 1.0 */public class ManageSites{ private static final String CLASS_NAME = JahiaAdministration.CLASS_NAME; private static final String JSP_PATH = JahiaAdministration.JSP_PATH; private static JahiaSitesService sMgr; private LicenseKey mLicenseKey; private static ServletContext context; private static HttpSession session; /** * Default constructor. * @author Alexandre Kraft * @author Mikha雔 Janson * * @param request Servlet request. * @param response Servlet response. * @param session Servlet session for the current user. * @param context Servlet context. */ public ManageSites( HttpServletRequest request, HttpServletResponse response, HttpSession session, ServletContext context ) throws Throwable { this.context = context; this.session = session; ServicesRegistry sReg = ServicesRegistry.getInstance(); if (sReg != null) { sMgr = sReg.getJahiaSitesService(); } mLicenseKey = Jahia.getLicenseKey(); if ( mLicenseKey == null ){ // set request attributes... request.setAttribute("jahiaDisplayMessage", "Invalid License Key"); // redirect... JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "menu.jsp" ); return; } userRequestDispatcher( request, response, session); } // end constructor /** * This method serves as a dispatcher for user requests. * @author Alexandre Kraft * @author Mikha雔 Janson * * @param req Servlet request. * @param res Servlet response. * @param sess Servlet session for the current user. */ private void userRequestDispatcher( HttpServletRequest req, HttpServletResponse res, HttpSession sess ) throws IOException, ServletException { String op = req.getParameter("sub"); if(op.equals("list")) { displayList( req, res, sess ); } else if(op.equals("add")) { displayAdd( req, res, sess ); } else if(op.equals("processadd")) { processAdd( req, res, sess ); } else if(op.equals("processcreateadmin")) { processCreateAdmin( req, res, sess ); } else if(op.equals("processexistantadmin")) { processExistantAdmin( req, res, sess ); } else if(op.equals("processadminselectsite")) { processExistantAdminSelectSite( req, res, sess ); } else if(op.equals("processtemplatesetchoice")) { processTemplateSetChoice( req, res, sess ); } else if(op.equals("edit")) { displayEdit( req, res, sess ); } else if(op.equals("processedit")) { processEdit( req, res, sess ); } else if(op.equals("delete")) { displayDelete( req, res, sess ); } else if(op.equals("processdelete")) { processDelete( req, res, sess); } } // userRequestDispatcher /** * Display the list of sites. * * @author NK * @author AK * @param request Servlet request. * @param response Servlet response. * @param session HttpSession object. */ private void displayList( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException { //System.out.println(" ManageSites :: display sites list started "); // retrieve previous form values... String jahiaDisplayMessage = (String) request.getAttribute(CLASS_NAME + "jahiaDisplayMessage"); // set default values... if(jahiaDisplayMessage == null) { jahiaDisplayMessage = Jahia.COPYRIGHT; } try { Enumeration enum = sMgr.getSites(); request.setAttribute("sitesList", enum); } catch (JahiaException ex) { jahiaDisplayMessage = "An error occurred while processing the request."; } // set request attributes... request.setAttribute("jahiaDisplayMessage", jahiaDisplayMessage); // redirect... JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "sites_management.jsp" ); } // end displayList /** * Display Add new site form * * @author NK * @author AK * @param request Servlet request. * @param response Servlet response. * @param session HttpSession object. */ private void displayAdd( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException { //System.out.println(" ManageSites :: display add site started "); // retrieve previous form values... String jahiaDisplayMessage = ""; String warningMsg = (String)request.getAttribute("warningMsg"); if ( warningMsg == null ){ warningMsg = ""; } JahiaUser theUser = (JahiaUser) session.getAttribute( ParamBean.SESSION_USER ); // check it there is a temporary new site in session JahiaSite newJahiaSite = (JahiaSite) session.getAttribute(CLASS_NAME + "newJahiaSite"); if ( newJahiaSite == null ){ //System.out.println(" ManageSites :: display add site , not found in session "); // it's the first time this screen is displayed, so create an empty one newJahiaSite = new JahiaSite( -1, "", // site title "", // site server name "", // site key true, // is active -1, // default page (homepage id) "", // description null, // the acl null ); } Boolean defaultSite = (Boolean)session.getAttribute(CLASS_NAME + "defaultSite"); if ( defaultSite == null ){ defaultSite = new Boolean(true); } Boolean siteMemberShip = (Boolean)session.getAttribute(CLASS_NAME + "siteMemberShip"); if ( siteMemberShip == null ){ siteMemberShip = new Boolean(true); } // store in session session.setAttribute(CLASS_NAME + "newJahiaSite",newJahiaSite); session.setAttribute(CLASS_NAME + "defaultSite",defaultSite); session.setAttribute(CLASS_NAME + "siteMemberShip",siteMemberShip); Vector grantedSites = new Vector(); if ( theUser != null ){ try { grantedSites = ServicesRegistry.getInstance() .getJahiaGroupManagerService() .getAdminGrantedSites( theUser ); } catch ( JahiaException je ){ } if ( grantedSites == null ){ grantedSites = new Vector(); } } // set request attributes... request.setAttribute("newJahiaSite", newJahiaSite); request.setAttribute("jahiaDisplayMessage", jahiaDisplayMessage); request.setAttribute("warningMsg", warningMsg); request.setAttribute("defaultSite", defaultSite); request.setAttribute("siteMemberShip", siteMemberShip); request.setAttribute("newAdminOnly", new Boolean(grantedSites.size()<=0) ); try { //System.out.println(" ManageSites :: display add site , license check "); // get the number of sites in db int nbSites = ServicesRegistry.getInstance().getJahiaSitesService(). getNbSites();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -