1 31 32 package com.opencms.workplace; 33 34 import org.opencms.file.CmsObject; 35 import org.opencms.main.OpenCms; 36 import org.opencms.workplace.CmsFrameset; 37 import org.opencms.workplace.CmsWorkplace; 38 import org.opencms.workplace.CmsWorkplaceManager; 39 import org.opencms.workplace.CmsWorkplaceSettings; 40 41 42 import javax.servlet.http.HttpServletRequest ; 43 import javax.servlet.http.HttpSession ; 44 45 55 public final class CmsWorkplaceAction { 56 57 58 public static final String FILE_WORKPLACE_FILELIST = "explorer_files.jsp"; 59 60 61 public static final String JSP_WORKPLACE_FILELIST = "../views/explorer/" + FILE_WORKPLACE_FILELIST; 62 63 64 public static final String PATH_VIEWS_WORKPLACE = CmsWorkplace.VFS_PATH_WORKPLACE + "views/"; 65 66 67 public static final String PATH_VIEW_EXPLORER = PATH_VIEWS_WORKPLACE + "explorer/"; 68 69 70 public static final String PATH_XML_WORKPLACE = CmsWorkplace.VFS_PATH_WORKPLACE + "action/"; 71 72 73 public static final String XML_WORKPLACE_URI = PATH_XML_WORKPLACE + "index.html"; 74 75 76 private static final String FILELIST_ATTRIBUTE = "__filelist"; 77 78 81 private CmsWorkplaceAction() { 82 83 } 85 86 92 public static String getCurrentFolder(HttpServletRequest req) { 93 94 HttpSession session = req.getSession(false); 95 if (session == null) { 96 return null; 97 } 98 CmsWorkplaceSettings settings = (CmsWorkplaceSettings)session.getAttribute(CmsWorkplaceManager.SESSION_WORKPLACE_SETTINGS); 99 if (settings != null) { 100 return settings.getExplorerResource(); 101 } else { 102 return (String )session.getAttribute(FILELIST_ATTRIBUTE); 103 } 104 } 105 106 113 public static String getExplorerFileFullUri(CmsObject cms, HttpServletRequest req) { 114 115 HttpSession session = req.getSession(false); 116 String link = PATH_XML_WORKPLACE + FILE_WORKPLACE_FILELIST; 117 if (session == null) { 118 return OpenCms.getLinkManager().substituteLink(cms, link); 119 } 120 CmsWorkplaceSettings settings = (CmsWorkplaceSettings)session.getAttribute(CmsWorkplaceManager.SESSION_WORKPLACE_SETTINGS); 121 if (settings == null) { 122 return OpenCms.getLinkManager().substituteLink(cms, link); 123 } 124 return OpenCms.getLinkManager().substituteLink(cms, PATH_VIEW_EXPLORER + FILE_WORKPLACE_FILELIST); 125 } 126 127 133 public static String getExplorerFileUri(HttpServletRequest req) { 134 135 HttpSession session = req.getSession(false); 136 if (session == null) { 137 return CmsWorkplaceDefault.C_WP_EXPLORER_FILELIST; 138 } 139 CmsWorkplaceSettings settings = (CmsWorkplaceSettings)session.getAttribute(CmsWorkplaceManager.SESSION_WORKPLACE_SETTINGS); 140 if (settings == null) { 141 return CmsWorkplaceDefault.C_WP_EXPLORER_FILELIST; 142 } 143 return JSP_WORKPLACE_FILELIST; 144 } 145 146 152 public static String getWorkplaceUri(HttpServletRequest req) { 153 154 HttpSession session = req.getSession(false); 155 if (session == null) { 156 return XML_WORKPLACE_URI; 157 } 158 CmsWorkplaceSettings settings = (CmsWorkplaceSettings)session.getAttribute(CmsWorkplaceManager.SESSION_WORKPLACE_SETTINGS); 159 if (settings == null) { 160 return XML_WORKPLACE_URI; 161 } 162 return CmsFrameset.JSP_WORKPLACE_URI; 163 } 164 165 171 public static void setCurrentFolder(String currentFolder, HttpServletRequest req) { 172 173 HttpSession session = req.getSession(false); 174 if (session == null) { 175 return; 176 } 177 CmsWorkplaceSettings settings = (CmsWorkplaceSettings)session.getAttribute(CmsWorkplaceManager.SESSION_WORKPLACE_SETTINGS); 178 if (settings != null) { 179 settings.setExplorerResource(currentFolder); 180 } 181 session.setAttribute(FILELIST_ATTRIBUTE, currentFolder); 182 } 183 } 184
| Popular Tags
|