Skip to content
Snippets Groups Projects
Verified Commit 896a0c56 authored by Alex ORLUC's avatar Alex ORLUC
Browse files

FIX #7118 fix command convert for mac (libreoffice required!)

parent e246c57c
No related branches found
No related tags found
No related merge requests found
No preview for this file type
No preview for this file type
...@@ -329,7 +329,7 @@ public class MaarchCM { ...@@ -329,7 +329,7 @@ public class MaarchCM {
return cookie; return cookie;
} }
public void createPDF(String docxFile, String directory, boolean isUnix) { public void createPDF(String docxFile, String directory, String os) {
logger.log("createPDF ", Level.INFO); logger.log("createPDF ", Level.INFO);
try { try {
System.out.println("mode ! : " + editMode); System.out.println("mode ! : " + editMode);
...@@ -365,8 +365,10 @@ public class MaarchCM { ...@@ -365,8 +365,10 @@ public class MaarchCM {
String cmd = ""; String cmd = "";
if (docxFile.contains(".odt") || docxFile.contains(".ods") || docxFile.contains(".ODT") || docxFile.contains(".ODS")) { if (docxFile.contains(".odt") || docxFile.contains(".ods") || docxFile.contains(".ODT") || docxFile.contains(".ODS")) {
logger.log("This is opendocument ! ", Level.INFO); logger.log("This is opendocument ! ", Level.INFO);
if (isUnix) { if (os == "linux") {
cmd = "libreoffice -env:UserInstallation=file://"+userLocalDirTmp+idApplet+"_conv/ --headless --convert-to pdf --outdir \"" + userLocalDirTmp.substring(0, userLocalDirTmp.length() - 1) + "\" \"" + docxFile + "\""; cmd = "libreoffice -env:UserInstallation=file://"+userLocalDirTmp+idApplet+"_conv/ --headless --convert-to pdf --outdir \"" + userLocalDirTmp.substring(0, userLocalDirTmp.length() - 1) + "\" \"" + docxFile + "\"";
} else if (os == "mac") {
cmd = "cd /Applications/LibreOffice.app/Contents/MacOs && ./soffice --headless --convert-to pdf:writer_pdf_Export --outdir \"" + userLocalDirTmp.substring(0, userLocalDirTmp.length() - 1) + "\" \"" + docxFile + "\"";
} else { } else {
String convertProgram; String convertProgram;
convertProgram = fM.findPathProgramInRegistry("soffice.exe"); convertProgram = fM.findPathProgramInRegistry("soffice.exe");
...@@ -376,8 +378,10 @@ public class MaarchCM { ...@@ -376,8 +378,10 @@ public class MaarchCM {
} else if (docxFile.contains(".doc") || docxFile.contains(".docx") || docxFile.contains(".DOC") || docxFile.contains(".DOCX")) { } else if (docxFile.contains(".doc") || docxFile.contains(".docx") || docxFile.contains(".DOC") || docxFile.contains(".DOCX")) {
logger.log("This is MSOffice document ", Level.INFO); logger.log("This is MSOffice document ", Level.INFO);
if (useExeConvert.equals("false")) { if (useExeConvert.equals("false")) {
if (isUnix) { if (os == "linux") {
cmd = "libreoffice -env:UserInstallation=file://"+userLocalDirTmp+idApplet+"_conv\\ --headless --convert-to pdf --outdir \"" + userLocalDirTmp.substring(0, userLocalDirTmp.length() - 1) + "\" \"" + docxFile + "\""; cmd = "libreoffice -env:UserInstallation=file://"+userLocalDirTmp+idApplet+"_conv\\ --headless --convert-to pdf --outdir \"" + userLocalDirTmp.substring(0, userLocalDirTmp.length() - 1) + "\" \"" + docxFile + "\"";
} else if (os == "mac") {
cmd = "cd /Applications/LibreOffice.app/Contents/MacOs && ./soffice --headless --convert-to pdf:writer_pdf_Export --outdir \"" + userLocalDirTmp.substring(0, userLocalDirTmp.length() - 1) + "\" \"" + docxFile + "\"";
} else if(editMode.equals("libreoffice")){ } else if(editMode.equals("libreoffice")){
String convertProgram; String convertProgram;
convertProgram = fM.findPathProgramInRegistry("soffice.exe"); convertProgram = fM.findPathProgramInRegistry("soffice.exe");
...@@ -402,7 +406,7 @@ public class MaarchCM { ...@@ -402,7 +406,7 @@ public class MaarchCM {
FileManager fM = new FileManager(); FileManager fM = new FileManager();
Process proc_vbs; Process proc_vbs;
if (isUnix) { if (os == "linux" || os == "mac") {
//cmd = "cscript \""+vbsPath+"\" \""+docxFile+"\" /nologo \r\n"; //cmd = "cscript \""+vbsPath+"\" \""+docxFile+"\" /nologo \r\n";
final Writer outBat; final Writer outBat;
outBat = new OutputStreamWriter(new FileOutputStream(appPath_convert), "CP850"); outBat = new OutputStreamWriter(new FileOutputStream(appPath_convert), "CP850");
...@@ -690,7 +694,7 @@ public class MaarchCM { ...@@ -690,7 +694,7 @@ public class MaarchCM {
if ((fileExtension.equalsIgnoreCase("docx") || fileExtension.equalsIgnoreCase("doc") || fileExtension.equalsIgnoreCase("docm") || fileExtension.equalsIgnoreCase("odt") || fileExtension.equalsIgnoreCase("ott"))) { if ((fileExtension.equalsIgnoreCase("docx") || fileExtension.equalsIgnoreCase("doc") || fileExtension.equalsIgnoreCase("docm") || fileExtension.equalsIgnoreCase("odt") || fileExtension.equalsIgnoreCase("ott"))) {
logger.log("----------CONVERSION PDF----------", Level.INFO); logger.log("----------CONVERSION PDF----------", Level.INFO);
createPDF(userLocalDirTmp + fileToEdit, userLocalDirTmp, isUnix); createPDF(userLocalDirTmp + fileToEdit, userLocalDirTmp, os);
String pdfFile = userLocalDirTmp + "thefile_" + idApplet + ".pdf"; String pdfFile = userLocalDirTmp + "thefile_" + idApplet + ".pdf";
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment