From 91c33e8e69faa708974d889c59d81f3a18e81d30 Mon Sep 17 00:00:00 2001 From: jensp Date: Mon, 10 Oct 2016 15:17:46 +0000 Subject: [PATCH] CCM NG/ccm-cms: JSPs used by the admin UI. git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@4369 8810af33-2d31-482b-a856-94f89814c4df --- .../content-section/admin/image_select.jsp | 29 ++++++++ .../ccm-cms/content-section/admin/index.jsp | 37 ++++++++++ .../ccm-cms/content-section/admin/item.jsp | 68 +++++++++++++++++++ .../ccm-cms/content-section/admin/search.jsp | 32 +++++++++ 4 files changed, 166 insertions(+) create mode 100644 ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/image_select.jsp create mode 100644 ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/index.jsp create mode 100644 ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/item.jsp create mode 100644 ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/search.jsp diff --git a/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/image_select.jsp b/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/image_select.jsp new file mode 100644 index 000000000..70da67db5 --- /dev/null +++ b/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/image_select.jsp @@ -0,0 +1,29 @@ + + + + + + + + + + + private ImageSelectPage imageSelectPage = new ImageSelectPage(); + + + + // Restore the wrapped request + HttpServletRequest myRequest = DispatcherHelper.getRequest(); + DispatcherHelper.cacheDisable(response); + + ContentSection section = ContentSectionServlet.getContentSection(myRequest); + + if (! ContentSectionServlet.checkAdminAccess(myRequest, section)) { + throw new com.arsdigita.cms.dispatcher.AccessDeniedException(); + } + + RequestContext context = DispatcherHelper.getRequestContext(myRequest); + imageSelectPage.init(); + imageSelectPage.dispatch(myRequest, response, context); + + diff --git a/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/index.jsp b/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/index.jsp new file mode 100644 index 000000000..c12d4ba89 --- /dev/null +++ b/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/index.jsp @@ -0,0 +1,37 @@ + + + + + + + + + + + + + private ContentSectionPage sectionPage = new ContentSectionPage(); + // private HttpServletRequest myRequest = DispatcherHelper.getRequest(); + + + + // Restore the wrapped request + HttpServletRequest myRequest = DispatcherHelper.getRequest(); + DispatcherHelper.cacheDisable(response); + + ContentSection section = ContentSectionServlet.getContentSection(myRequest); + + if (Web.getWebContext().getUser() == null) { + throw new LoginSignal(myRequest); + } else if (! ContentSectionServlet.checkAdminAccess(myRequest, section)) { + throw new com.arsdigita.cms.dispatcher.AccessDeniedException(); + } + + + RequestContext context = DispatcherHelper.getRequestContext(myRequest); + sectionPage.init(); + sectionPage.dispatch(myRequest, response, context); + + + + diff --git a/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/item.jsp b/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/item.jsp new file mode 100644 index 000000000..e2ad763ec --- /dev/null +++ b/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/item.jsp @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + private static final Logger s_log = + Logger.getLogger("content-section.www.admin.item.jsp"); + private ContentItemPage itemPage = null; + private Date timestamp = new Date(0); + + + + s_log.debug("entered item.jsp's service method"); + // Restore the wrapped request + HttpServletRequest myRequest = DispatcherHelper.getRequest(); + DispatcherHelper.cacheDisable(response); + + // ?? just doubles the initial line + // request = DispatcherHelper.getRequest(); + + ContentSection section = ContentSectionServlet.getContentSection(myRequest); + + + if (Web.getWebContext().getUser() == null) { + throw new LoginSignal(myRequest); + } else if (! ContentSectionServlet.checkAdminAccess(myRequest, section)) { + throw new com.arsdigita.cms.dispatcher.AccessDeniedException(); + } + + // page needs to be refreshed when content types or authoring kits + // in the section change + synchronized(this) { + if (Utilities.getLastSectionRefresh(section).after(timestamp)) { + s_log.debug("refreshing itemPage"); + s_log.debug("Creating new ContentItemPage instance..."); + itemPage = new ContentItemPage(); + s_log.debug("Calling init on new instance..."); + itemPage.init(); + s_log.debug("Creating time stamp..."); + timestamp = new Date(); + } + } + + s_log.debug("Starting dispatch process..."); + RequestContext context = DispatcherHelper.getRequestContext(myRequest); + if(itemPage == null) { + s_log.warn("WARNING: itemPage is NULL"); + } + else { + s_log.info("ALL OK: itemPage is not null"); + } + itemPage.dispatch(myRequest, response, context); + s_log.debug("exited item.jsp's service method"); + + + + + diff --git a/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/search.jsp b/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/search.jsp new file mode 100644 index 000000000..c4c341b5d --- /dev/null +++ b/ccm-cms/src/main/resources/web/templates/ccm-cms/content-section/admin/search.jsp @@ -0,0 +1,32 @@ + + + + + + + + + + + private ItemSearchPage sectionPage = new ItemSearchPage(); + + + + // Restore the wrapped request + HttpServletRequest myRequest = DispatcherHelper.getRequest(); + DispatcherHelper.cacheDisable(response); + + ContentSection section = ContentSectionServlet.getContentSection(myRequest); + + if (! ContentSectionServlet.checkAdminAccess(myRequest, section)) { + throw new com.arsdigita.cms.dispatcher.AccessDeniedException(); + } + + + RequestContext context = DispatcherHelper.getRequestContext(myRequest); + sectionPage.init(); + sectionPage.dispatch(myRequest, response, context); + + + +