diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java index 25ab0217a..abcf306b5 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java @@ -1201,7 +1201,7 @@ public class DataManagementPlanManager { if (!dmpEntity.isPublic() && dmpEntity.getUsers().stream().filter(userInfo -> userInfo.getUser().getId() == principal.getId()).collect(Collectors.toList()).size() == 0) throw new UnauthorisedException(); - wordBuilder.fillFirstPage(dmpEntity, null, document); + wordBuilder.fillFirstPage(dmpEntity, null, document, false); // int powered_pos = document.getParagraphs().size() - 3; int powered_pos = wordBuilder.findPosOfPoweredBy(document); diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DatasetManager.java b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DatasetManager.java index 20dd25807..298cfc37f 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DatasetManager.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DatasetManager.java @@ -406,7 +406,7 @@ public class DatasetManager { if (!dmpEntity.isPublic() && dmpEntity.getUsers().stream().filter(userInfo -> userInfo.getUser().getId() == principal.getId()).collect(Collectors.toList()).size() == 0) throw new UnauthorisedException(); - wordBuilder.fillFirstPage(dmpEntity, datasetEntity, document); + wordBuilder.fillFirstPage(dmpEntity, datasetEntity, document, true); wordBuilder.fillFooter(dmpEntity, datasetEntity, document, true); int powered_pos = wordBuilder.findPosOfPoweredBy(document); diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/word/WordBuilder.java b/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/word/WordBuilder.java index 9863ec9ff..0a3d64dbe 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/word/WordBuilder.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/word/WordBuilder.java @@ -922,7 +922,7 @@ public class WordBuilder { return -1; } - public void fillFirstPage(DMP dmpEntity, Dataset datasetEntity, XWPFDocument document) { + public void fillFirstPage(DMP dmpEntity, Dataset datasetEntity, XWPFDocument document, boolean isDataset) { int parPos = 0; int descrParPos = -1; XWPFParagraph descrPar = null; @@ -941,12 +941,14 @@ public class WordBuilder { } else if(datasetEntity != null && text.contains("{ARGOS.DATASET.TITLE}")) { text = text.replace("{ARGOS.DATASET.TITLE}", datasetEntity.getLabel()); r.setText(text, 0); - } else if((dmpEntity != null && text.contains("{ARGOS.DMP.DESCRIPTION}")) || (datasetEntity != null && text.contains("{ARGOS.DATASET.DESCRIPTION}"))) { +// } else if(text.equals("Description") && ((!isDataset && (dmpEntity == null || dmpEntity.getDescription() != null)) || (isDataset && (datasetEntity == null || datasetEntity.getDescription() == null)))) { +// r.setText("", 0); + } else if((dmpEntity != null && text.contains("{ARGOS.DMP.DESCRIPTION}") && !isDataset) || (datasetEntity != null && text.contains("{ARGOS.DATASET.DESCRIPTION}") && isDataset)) { descrParPos = parPos; descrPar = p; - if(dmpEntity != null) { + if(dmpEntity != null && !isDataset) { text = text.replace("{ARGOS.DMP.DESCRIPTION}", ""); - } else { + } else if(datasetEntity != null && isDataset) { text = text.replace("{ARGOS.DATASET.DESCRIPTION}", ""); } r.setText(text, 0); @@ -978,14 +980,15 @@ public class WordBuilder { } parPos++; } - if(descrParPos != -1 && dmpEntity!=null && dmpEntity.getDescription() != null) { + + if((descrParPos != -1) && (dmpEntity!=null) && (dmpEntity.getDescription() != null) && !isDataset) { XmlCursor cursor = descrPar.getCTP().newCursor(); cursor.toNextSibling(); Document htmlDoc = Jsoup.parse(((String)dmpEntity.getDescription()).replaceAll("\n", "
")); HtmlToWorldBuilder htmlToWorldBuilder = new HtmlToWorldBuilder(descrPar, 0, cursor); NodeTraversor.traverse(htmlToWorldBuilder, htmlDoc); } - if(descrParPos != -1 && datasetEntity != null && datasetEntity.getDescription() != null) { + if((descrParPos != -1) && (datasetEntity != null) && (datasetEntity.getDescription() != null) && isDataset) { XmlCursor cursor = descrPar.getCTP().newCursor(); cursor.toNextSibling(); Document htmlDoc = Jsoup.parse(((String)datasetEntity.getDescription()).replaceAll("\n", "
")); diff --git a/dmp-backend/web/src/main/resources/documents/h2020.docx b/dmp-backend/web/src/main/resources/documents/h2020.docx index 084eb42d8..c821032e1 100644 Binary files a/dmp-backend/web/src/main/resources/documents/h2020.docx and b/dmp-backend/web/src/main/resources/documents/h2020.docx differ