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\">&nbsp;&nbsp;\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("&nbsp;");
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\">&nbsp;&nbsp;\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("&nbsp;");
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