diff --git a/web/documentserver-example/java/src/main/java/entities/FileModel.java b/web/documentserver-example/java/src/main/java/entities/FileModel.java index ceee9ae1..d0dc4e93 100755 --- a/web/documentserver-example/java/src/main/java/entities/FileModel.java +++ b/web/documentserver-example/java/src/main/java/entities/FileModel.java @@ -180,7 +180,7 @@ public class FileModel dataObj.put("fileType", FileUtility.GetFileExtension(document.title).substring(1)); dataObj.put("key", key); - dataObj.put("url", i == curVer ? document.url : DocumentManager.GetPathUri(verDir + File.separator + "prev" + FileUtility.GetFileExtension(document.title))); + dataObj.put("url", i == curVer ? document.url : DocumentManager.GetDownloadHistoryUrl(document.title, i.toString(), "prev" + FileUtility.GetFileExtension(document.title))); dataObj.put("version", i); if (i > 1) { //check if the version number is greater than 1 diff --git a/web/documentserver-example/java/src/main/java/helpers/DocumentManager.java b/web/documentserver-example/java/src/main/java/helpers/DocumentManager.java index deaa1a33..ec956d27 100644 --- a/web/documentserver-example/java/src/main/java/helpers/DocumentManager.java +++ b/web/documentserver-example/java/src/main/java/helpers/DocumentManager.java @@ -446,6 +446,23 @@ public class DocumentManager } } + // get url to download a file to History prev.* + public static String GetDownloadHistoryUrl(String fileName, String version, String file) { + String serverPath = GetServerUrl(true); + String hostAddress = CurUserHostAddress(null); + try + { + String query = "?type=download&fileName=" + URLEncoder.encode(fileName, java.nio.charset.StandardCharsets.UTF_8.toString()) + "&userAddress=" + URLEncoder.encode(hostAddress, java.nio.charset.StandardCharsets.UTF_8.toString()); + query = query + "&ver=" + URLEncoder.encode(version, java.nio.charset.StandardCharsets.UTF_8.toString()) + "&file=" + URLEncoder.encode(file, java.nio.charset.StandardCharsets.UTF_8.toString()); + + return serverPath + "/IndexServlet" + query; + } + catch (UnsupportedEncodingException e) + { + return ""; + } + } + // get an editor internal extension public static String GetInternalExtension(FileType fileType) {