/** * Delivers the plain uninterpreted resource with escaped XML.<p> * * This is intended for viewing historical versions.<p> * * @param cms the initialized CmsObject which provides user permissions * @param file the requested OpenCms VFS resource * @param req the servlet request * @param res the servlet response * * @throws IOException might be thrown by the servlet environment * @throws CmsException in case of errors accessing OpenCms functions */ protected void showSource(CmsObject cms, CmsResource file, HttpServletRequest req, HttpServletResponse res) throws CmsException, IOException { CmsResource historyResource = (CmsResource)CmsHistoryResourceHandler.getHistoryResource(req); if (historyResource == null) { historyResource = file; } CmsFile historyFile = cms.readFile(historyResource); String content = new String(historyFile.getContents()); // change the content-type header so that browsers show plain text res.setContentLength(content.length()); res.setContentType("text/plain"); Writer out = res.getWriter(); out.write(content); out.close(); }
/** * Checks if the toolbar should be displayed.<p> * * @param request the current request to get the default locale from * * @return <code>true</code> if the toolbar should be displayed */ private boolean isDisplayToolbar(HttpServletRequest request) { // display the toolbar by default boolean displayToolbar = true; if (CmsHistoryResourceHandler.isHistoryRequest(request)) { // we do not want to display the toolbar in case of an historical request displayToolbar = false; } return displayToolbar; }
/** * Appends the <code>version</code> parameter to the URI if needed.<p> * * @param uri the resource URI * @param req the current request * * @return the same URI, with additional parameters in case of a historical request */ public static String getHistoryResourceURI(String uri, ServletRequest req) { String histUri = uri; if (CmsHistoryResourceHandler.isHistoryRequest(req)) { String version = req.getParameter(CmsHistoryResourceHandler.PARAM_VERSION); histUri = CmsRequestUtil.appendParameter(uri, CmsHistoryResourceHandler.PARAM_VERSION, version); } return histUri; }
/** * Delivers the plain uninterpreted resource with escaped XML.<p> * * This is intended for viewing historical versions.<p> * * @param cms the initialized CmsObject which provides user permissions * @param file the requested OpenCms VFS resource * @param req the servlet request * @param res the servlet response * * @throws IOException might be thrown by the servlet environment * @throws CmsException in case of errors accessing OpenCms functions */ protected void showSource(CmsObject cms, CmsResource file, HttpServletRequest req, HttpServletResponse res) throws CmsException, IOException { CmsResource historyResource = (CmsResource)CmsHistoryResourceHandler.getHistoryResource(req); if (historyResource == null) { historyResource = file; } CmsFile historyFile = cms.readFile(historyResource); String content = new String(historyFile.getContents()); // change the content-type header so that browsers show plain text res.setContentLength(content.length()); res.setContentType("text/plain"); Writer out = res.getWriter(); out.write(content); }
m_isOnline = cms.getRequestContext().currentProject().isOnlineProject(); String[] params = req.getParameterValues(PARAMETER_FLEX); boolean nocachepara = CmsHistoryResourceHandler.isHistoryRequest(req); boolean dorecompile = false; if (params != null) {
/** * Returns the current container page resource.<p> * * @return the current container page resource */ private CmsResource getContainerPage() { try { if (m_pageResource == null) { // get the container page itself, checking the history first m_pageResource = (CmsResource)CmsHistoryResourceHandler.getHistoryResource(m_request); if (m_pageResource == null) { m_pageResource = m_cms.readResource(m_cms.getRequestContext().getUri()); } } } catch (CmsException e) { LOG.error(e.getLocalizedMessage(), e); } return m_pageResource; }
m_isOnline = cms.getRequestContext().getCurrentProject().isOnlineProject(); String[] params = req.getParameterValues(PARAMETER_FLEX); boolean nocachepara = CmsHistoryResourceHandler.isHistoryRequest(req); boolean dorecompile = false; if (params != null) {
if (containerPage == null) { CmsResource pageResource = (CmsResource)CmsHistoryResourceHandler.getHistoryResource(req); if (pageResource == null) { pageResource = cms.readResource(requestUri);
if ((CmsHistoryResourceHandler.isHistoryRequest(req)) && (context.getUri().equals(context.removeSiteRoot(file.getRootPath())))) { showSource(cms, file, req, res);
if (containerPage == null) { CmsResource pageResource = (CmsResource)CmsHistoryResourceHandler.getHistoryResource(req); if (pageResource == null) { pageResource = cms.readResource(requestUri);
if ((CmsHistoryResourceHandler.isHistoryRequest(req)) && (context.getUri().equals(context.removeSiteRoot(file.getRootPath())))) { showSource(cms, file, req, res);
if (CmsHistoryResourceHandler.isHistoryRequest(req)) {
/** * Checks if the current request should be direct edit enabled.<p> * * @param req the servlet request * * @return <code>true</code> if the current request should be direct edit enabled */ public static boolean isEditableRequest(ServletRequest req) { boolean result = false; if (CmsHistoryResourceHandler.isHistoryRequest(req) || CmsJspTagEnableAde.isDirectEditDisabled(req)) { // don't display direct edit buttons on an historical resource result = false; } else { CmsFlexController controller = CmsFlexController.getController(req); CmsObject cms = controller.getCmsObject(); result = !cms.getRequestContext().getCurrentProject().isOnlineProject() && !CmsResource.isTemporaryFileName(cms.getRequestContext().getUri()); } return result; }
if (CmsHistoryResourceHandler.isHistoryRequest(req)) {
&& (CmsHistoryResourceHandler.isHistoryRequest(req) || CmsJspTagEnableAde.isDirectEditDisabled(req))) { cms.getRequestContext().setAttribute(CmsGwtConstants.PARAM_DISABLE_DIRECT_EDIT, Boolean.TRUE);