Revision 8e471ce5
b/src/gr/ebs/gss/server/rest/FilesHandler.java | ||
---|---|---|
195 | 195 |
} |
196 | 196 |
String progress = req.getParameter(PROGRESS_PARAMETER); |
197 | 197 |
|
198 |
if (logger.isDebugEnabled())
|
|
198 |
if (logger.isDebugEnabled()) |
|
199 | 199 |
if (content) |
200 | 200 |
logger.debug("Serving resource '" + path + "' headers and data"); |
201 | 201 |
else |
... | ... | |
2214 | 2214 |
relativePathNoFolderName = relativePath.substring(0, indexFolderPath); |
2215 | 2215 |
else |
2216 | 2216 |
relativePathNoFolderName = relativePath; |
2217 |
String parentDirectory = folderPath;
|
|
2217 |
String parentDirectory = rewriteUrl(folderPath);
|
|
2218 | 2218 |
//To-do: further search in encoding folder names with special characters |
2219 |
//String rewrittenParentDirectory = rewriteUrl(parentDirectory);
|
|
2219 |
// String rewrittenParentDirectory = rewriteUrl(parentDirectory);
|
|
2220 | 2220 |
if (parentDirectory.endsWith("/")) |
2221 | 2221 |
parentDirectory = parentDirectory.substring(0, parentDirectory.length() - 1); |
2222 | 2222 |
int slash = parentDirectory.lastIndexOf('/'); |
2223 |
parentDirectory = parentDirectory.substring(0,slash); |
|
2223 |
if(!parentDirectory.equals("/") && !parentDirectory.equals("")) |
|
2224 |
parentDirectory = parentDirectory.substring(0,slash); |
|
2224 | 2225 |
if (slash >= 0) { |
2225 | 2226 |
sb.append(" - <a href=\""); |
2226 |
sb.append(rewrittenContextPath);
|
|
2227 |
sb.append(contextPath);
|
|
2227 | 2228 |
sb.append(relativePathNoFolderName); |
2228 | 2229 |
sb.append(parentDirectory); |
2229 | 2230 |
if (!parentDirectory.endsWith("/")) |
... | ... | |
2236 | 2237 |
sb.append(parentDirectory); |
2237 | 2238 |
sb.append("</b>"); |
2238 | 2239 |
sb.append("</a>"); |
2240 |
}else{ |
|
2241 |
sb.append(" - <a href=\""); |
|
2242 |
sb.append(rewrittenContextPath); |
|
2243 |
sb.append(relativePathNoFolderName); |
|
2244 |
sb.append("\">"); |
|
2245 |
sb.append("<b>"); |
|
2246 |
sb.append("Up To "); |
|
2247 |
if (parentDirectory.equals("")) |
|
2248 |
parentDirectory = rewrittenContextPath + relativePathNoFolderName ; |
|
2249 |
sb.append("/"); |
|
2250 |
sb.append("</b>"); |
|
2251 |
sb.append("</a>"); |
|
2239 | 2252 |
} |
2240 | 2253 |
|
2241 | 2254 |
sb.append("</h1>"); |
... | ... | |
2260 | 2273 |
Iterator iter = folder.getSubfolders().iterator(); |
2261 | 2274 |
while (iter.hasNext()) { |
2262 | 2275 |
FolderDTO subf = (FolderDTO) iter.next(); |
2263 |
String resourceName = subf.getName(); |
|
2264 |
if (resourceName.equalsIgnoreCase("WEB-INF") || resourceName.equalsIgnoreCase("META-INF")) |
|
2265 |
continue; |
|
2266 |
|
|
2267 |
sb.append("<tr"); |
|
2268 |
if (shade) |
|
2269 |
sb.append(" bgcolor=\"#eeeeee\""); |
|
2270 |
sb.append(">\r\n"); |
|
2271 |
shade = !shade; |
|
2272 |
|
|
2273 |
sb.append("<td align=\"left\"> \r\n"); |
|
2274 |
sb.append("<a href=\""); |
|
2275 |
sb.append(rewrittenContextPath); |
|
2276 |
sb.append(relativePathNoFolderName); |
|
2277 |
sb.append(folderPath + resourceName); |
|
2278 |
sb.append("/"); |
|
2279 |
sb.append("\"><tt>"); |
|
2280 |
sb.append(RequestUtil.filter(resourceName)); |
|
2281 |
sb.append("/"); |
|
2282 |
sb.append("</tt></a></td>\r\n"); |
|
2276 |
if(subf.isReadForAll()){ |
|
2277 |
String resourceName = subf.getName(); |
|
2278 |
if (resourceName.equalsIgnoreCase("WEB-INF") || resourceName.equalsIgnoreCase("META-INF")) |
|
2279 |
continue; |
|
2283 | 2280 |
|
2284 |
sb.append("<td align=\"right\"><tt>"); |
|
2285 |
sb.append(" "); |
|
2286 |
sb.append("</tt></td>\r\n"); |
|
2281 |
sb.append("<tr"); |
|
2282 |
if (shade) |
|
2283 |
sb.append(" bgcolor=\"#eeeeee\""); |
|
2284 |
sb.append(">\r\n"); |
|
2285 |
shade = !shade; |
|
2286 |
sb.append("<td align=\"left\"> \r\n"); |
|
2287 |
sb.append("<a href=\""); |
|
2288 |
sb.append(rewrittenContextPath); |
|
2289 |
sb.append(relativePathNoFolderName); |
|
2290 |
if (!(folderPath.length() == 1) && !folderPath.equals("/")) |
|
2291 |
sb.append(rewriteUrl(folderPath + resourceName)); |
|
2292 |
else |
|
2293 |
sb.append(resourceName); |
|
2294 |
sb.append("/"); |
|
2295 |
sb.append("\"><tt>"); |
|
2296 |
sb.append(RequestUtil.filter(resourceName)); |
|
2297 |
sb.append("/"); |
|
2298 |
sb.append("</tt></a></td>\r\n"); |
|
2287 | 2299 |
|
2288 |
sb.append("<td align=\"right\"><tt>"); |
|
2289 |
sb.append(getLastModifiedHttp(folder.getAuditInfo())); |
|
2290 |
sb.append("</tt></td>\r\n"); |
|
2300 |
sb.append("<td align=\"right\"><tt>"); |
|
2301 |
sb.append(" "); |
|
2302 |
sb.append("</tt></td>\r\n"); |
|
2303 |
sb.append("<td align=\"right\"><tt>"); |
|
2304 |
sb.append(getLastModifiedHttp(folder.getAuditInfo())); |
|
2305 |
sb.append("</tt></td>\r\n"); |
|
2291 | 2306 |
|
2292 |
sb.append("</tr>\r\n"); |
|
2307 |
sb.append("</tr>\r\n"); |
|
2308 |
} |
|
2293 | 2309 |
} |
2294 | 2310 |
List<FileHeaderDTO> files; |
2295 | 2311 |
try { |
... | ... | |
2307 | 2323 |
String resourceName = file.getName(); |
2308 | 2324 |
if (resourceName.equalsIgnoreCase("WEB-INF") || resourceName.equalsIgnoreCase("META-INF")) |
2309 | 2325 |
continue; |
2310 |
|
|
2326 |
String rewrittenResource = rewriteUrl(resourceName); |
|
2311 | 2327 |
sb.append("<tr"); |
2312 | 2328 |
if (shade) |
2313 | 2329 |
sb.append(" bgcolor=\"#eeeeee\""); |
... | ... | |
2320 | 2336 |
sb.append(relativePath); |
2321 | 2337 |
if(!relativePath.endsWith("/")) |
2322 | 2338 |
sb.append("/"); |
2323 |
sb.append(rewriteUrl(resourceName));
|
|
2339 |
sb.append(rewrittenResource);
|
|
2324 | 2340 |
sb.append("\"><tt>"); |
2325 | 2341 |
sb.append(RequestUtil.filter(resourceName)); |
2326 | 2342 |
sb.append("</tt></a></td>\r\n"); |
Also available in: Unified diff