⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 managehomepages.java

📁 java 写的一个新闻发布系统
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
                session.setAttribute("homepageBean",hp);            }            // set new values            hp.setName(name);            hp.setDescr(descr);            if ( go.equals("save") ){                boolean error = false;                if (name == null || name.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 + "add" );    }    //--------------------------------------------------------------------------    /**     * Prepares information to display specific data for homepage of type link.     *     * @author  Khue Nguyen     *     * @param   request       Servlet request.     * @param   response      Servlet response.     * @param   session       Servlet session for the current user.     */    private void prepareAddLink(	HttpServletRequest    request,                                    HttpServletResponse   response,                                    HttpSession           session )    throws IOException, ServletException, JahiaException    {        prepareAdd( request, response, session );        JahiaHomepageLink hp = (JahiaHomepageLink)session.getAttribute("homepageBean");        if ( hp == null ){            displayError(request,response,"Cannot found the requested Homepage bean in session");            return;        }        // retrieve form values...        String value = (String) request.getParameter("pageid");        int pageID = -1;        if ( value != null ){            pageID = Integer.parseInt(value);            hp.setPageID(pageID);        }        // 	get value from engineMap from the Tree Copy engine        HashMap engineMap = (HashMap)session.getAttribute(ParamBean.SESSION_JAHIA_ENGINEMAP);        if ( engineMap != null ){            // check if the Tree engine was opened for this source page            value = (String)engineMap.get(CopyTree_Engine.ENGINE_LAUNCHER_NAME);            if ( (value != null) && ( value.equals(CHOOSEPAGE_LAUNCHER_LINK_SOURCEPAGE) ) ){                // get the selected page                Integer I = (Integer)engineMap.get(CopyTree_Engine.SOURCEPAGE_ID);                if ( I != null ){                    pageID = I.intValue();                }                hp.setPageID(pageID);                // reset engine map                session.setAttribute(ParamBean.SESSION_JAHIA_ENGINEMAP,null);            }        }        // set the initial source page for the Page Tree Engine        request.setAttribute("linkInitialSourcePage",new Integer(hp.getPageID()));        if ( operation.equals("add") ){            request.setAttribute("includeSpecificSection","addlink");        } else if ( operation.equals("detail") )            request.setAttribute("includeSpecificSection","detaillink");    }    //--------------------------------------------------------------------------    /**     * Prepares information to display specific data for homepage of type copy.     *     * @author  Khue Nguyen     *     * @param   request       Servlet request.     * @param   response      Servlet response.     * @param   session       Servlet session for the current user.     */    private void prepareAddCopy(	HttpServletRequest    request,                                    HttpServletResponse   response,                                    HttpSession           session )    throws IOException, ServletException, JahiaException    {        prepareAdd( request, response, session );        JahiaHomepageCopy hp = (JahiaHomepageCopy)session.getAttribute("homepageBean");        if ( hp == null ){            displayError(request,response,"Cannot found the requested Homepage bean in session");            return;        }        // retrieve form values...        String value = (String) request.getParameter("pageid");        int pageID = -1;        int destPageID = -1;        int depth = 1;        int depthType = 2;        if ( value != null ){            pageID = Integer.parseInt(value);            hp.setPageID(pageID);        }        value = (String) request.getParameter("destpageid");        if ( value != null ){            destPageID = Integer.parseInt(value);            hp.setParentPageID(destPageID);        }        value = (String) request.getParameter("depth");        if ( value != null ){            try {                depth = Integer.parseInt(value);            } catch ( Throwable t ){            }            if ( depth >= 0 )                hp.setCopyDepth(depth);        }        value = (String) request.getParameter("depthtype");        if ( value != null ){            depthType = Integer.parseInt(value);        }        request.setAttribute("depthType",new Integer(depthType));        if ( operation.equals("add") ){            request.setAttribute("includeSpecificSection","addcopy");        } else if ( operation.equals("detail") )            request.setAttribute("includeSpecificSection","detailcopy");    }    //--------------------------------------------------------------------------    /**     * Prepares information to display specific data for homepage of type new.     *     * @author  Khue Nguyen     *     * @param   request       Servlet request.     * @param   response      Servlet response.     * @param   session       Servlet session for the current user.     */    private void prepareAddNew(		HttpServletRequest    request,                                    HttpServletResponse   response,                                    HttpSession           session )    throws IOException, ServletException, JahiaException    {        prepareAdd( request, response, session );        JahiaHomepageNew hp = (JahiaHomepageNew)session.getAttribute("homepageBean");        if ( hp == null ){            displayError(request,response,"Cannot found the requested Homepage bean in session");            return;        }        // get only visible templates        Enumeration templates = ServicesRegistry.getInstance()            .getJahiaPageTemplateService().getPageTemplates (site.getID(), true);        JahiaPageBaseService pageService = JahiaPageBaseService.getInstance();        // retrieve previous form values...        String value = (String) request.getParameter("destpageid");        int pageID = -1;        if ( value != null ){            pageID = Integer.parseInt(value);            hp.setParentPageID(pageID);        }        value = (String) request.getParameter("template");        int templateID = -1;        if ( value != null ){            templateID = Integer.parseInt(value);            hp.setTemplateID(templateID);        }        request.setAttribute("templates",templates);        if ( operation.equals("add") ){            request.setAttribute("includeSpecificSection","addnew");        } else if ( operation.equals("detail") )            request.setAttribute("includeSpecificSection","detailnew");    }    //--------------------------------------------------------------------------    /**     * Prepares information common to all type of home pages.     *     * @author  Khue Nguyen     *     * @param   request       Servlet request.     * @param   response      Servlet response.     * @param   session       Servlet session for the current user.     */    private void prepareAdd(	HttpServletRequest    request,                                HttpServletResponse   response,                                HttpSession           session )    throws IOException, ServletException, JahiaException    {        // get all pages id...        JahiaPageBaseService pageService = JahiaPageBaseService.getInstance();        Vector allPagesIDVector = pageService.getPageIDsInSite(site.getID(),            org.jahia.services.pages.PageInfoInterface.TYPE_DIRECT);        // get all pages infos...        Vector pages = new Vector();        Enumeration allPagesIDEnumeration  = allPagesIDVector.elements();        while(allPagesIDEnumeration.hasMoreElements()) {            Integer pageID = (Integer) allPagesIDEnumeration.nextElement();            try {                pages.add ((JahiaPage)pageService                            .lookupPageWhitoutTemplates (pageID.intValue()));            } catch (JahiaTemplateNotFoundException jtnfe) {            }        }        // set all pages infos        request.setAttribute("pages",  pages);    }    //--------------------------------------------------------------------------    /**     * Save homepage of type link.     *     * @author  Khue Nguyen     *     * @param   request       Servlet request.     * @param   response      Servlet response.     * @param   session       Servlet session for the current user.     */    private boolean saveLink(	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("pageid");        int pageID = -1;        if ( value != null ){            pageID = Integer.parseInt(value);            try {                if ( pageID != -1 )                    selectedPage = (JahiaPage)pageService                            .lookupPageWhitoutTemplates(pageID);            } catch ( Throwable t ){            }        }        if ( selectedPage == null ){            request.setAttribute("warningMsg","The page you choose is not available");            return false;        }        JahiaHomepageLink hp = (JahiaHomepageLink)session.getAttribute("homepageBean");        if ( hp == null ){            throw new JahiaException(CLASS_NAME+".saveLink",                                        "Homepage bean not found in session",                                        JahiaException.ERROR,                                        JahiaException.ERROR);        }        hp.setPageID(pageID);        hpServ.saveHomepage(hp,site.getAclID());        return true;    }    //--------------------------------------------------------------------------    /**     * Save homepage of type copy.     *     * @author  Khue Nguyen     *     * @param   request       Servlet request.     * @param   response      Servlet response.     * @param   session       Servlet session for the current user.     */    private boolean saveCopy(	HttpServletRequest    request,                                HttpServletResponse   response,                                HttpSession           session )    throws IOException, ServletException, JahiaException    {        prepareAdd( request, response, session );        JahiaPageBaseService pageService = JahiaPageBaseService.getInstance();        // retrieve previous form values...        JahiaPage selectedPage = null;        JahiaPage destPage = null;        String value = (String) request.getParameter("pageid");        int pageID = -1;        int depth = 1;        int depthType = 2;        if ( value != null ){            pageID = Integer.parseInt(value);            try {                if ( pageID != -1 )                    selectedPage = (JahiaPage)pageService                            .lookupPageWhitoutTemplates(pageID);            } catch ( Throwable t ){            }        }        if ( selectedPage == null ){

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -