diff --git a/src/main/java/org/olat/course/nodes/gta/ui/DirectoryController.java b/src/main/java/org/olat/course/nodes/gta/ui/DirectoryController.java index ff60b1700d2480e625cfa7946b6a451c247c1f70..ab4cf8d3214e6cd7327969ca2c61b19b41a12c0a 100644 --- a/src/main/java/org/olat/course/nodes/gta/ui/DirectoryController.java +++ b/src/main/java/org/olat/course/nodes/gta/ui/DirectoryController.java @@ -21,6 +21,7 @@ package org.olat.course.nodes.gta.ui; import java.io.File; import java.util.ArrayList; +import java.util.Date; import java.util.List; import org.olat.core.commons.modules.bc.meta.MetaInfo; @@ -40,6 +41,7 @@ import org.olat.core.gui.media.FileMediaResource; import org.olat.core.gui.media.MediaResource; import org.olat.core.gui.util.CSSHelper; import org.olat.core.util.CodeHelper; +import org.olat.core.util.Formatter; import org.olat.core.util.StringHelper; import org.olat.core.util.io.SystemFileFilter; import org.olat.core.util.vfs.VFSContainer; @@ -68,6 +70,8 @@ public class DirectoryController extends BasicController { @Autowired private UserManager userManager; + private final Formatter format; + public DirectoryController(UserRequest ureq, WindowControl wControl, File documentsDir, VFSContainer documentsContainer, String i18nDescription) { this(ureq, wControl, documentsDir, documentsContainer, i18nDescription, null, null); @@ -80,7 +84,9 @@ public class DirectoryController extends BasicController { this.zipName = zipName; this.documentsDir = documentsDir; this.documentsContainer = documentsContainer; - + + format = Formatter.getInstance(ureq.getLocale()); + VelocityContainer mainVC = createVelocityContainer("documents_readonly"); mainVC.contextPut("description", translate(i18nDescription)); @@ -105,8 +111,10 @@ public class DirectoryController extends BasicController { } String uploadedBy = null; + String lastModified = null; if(documentsContainer != null) { VFSItem item = documentsContainer.resolve(document.getName()); + lastModified = format.formatDateAndTime(new Date(item.getLastModified())); if(item instanceof MetaTagged) { MetaInfo metaInfo = ((MetaTagged)item).getMetaInfo(); if(metaInfo != null && metaInfo.getAuthorIdentityKey() != null) { @@ -115,7 +123,7 @@ public class DirectoryController extends BasicController { } } - linkNames.add(new DocumentInfos(link.getComponentName(), uploadedBy)); + linkNames.add(new DocumentInfos(link.getComponentName(), uploadedBy, lastModified)); } mainVC.contextPut("linkNames", linkNames); @@ -175,10 +183,16 @@ public class DirectoryController extends BasicController { private final String linkName; private final String uploadedBy; + private final String lastModified; public DocumentInfos(String linkName, String uploadedBy) { + this(linkName, uploadedBy, null); + } + + public DocumentInfos(String linkName, String uploadedBy, String lastModified) { this.linkName = linkName; this.uploadedBy = uploadedBy; + this.lastModified = lastModified; } public String getLinkName() { @@ -188,5 +202,9 @@ public class DirectoryController extends BasicController { public String getUploadedBy() { return uploadedBy; } + + public String getLastModified() { + return lastModified; + } } } \ No newline at end of file diff --git a/src/main/java/org/olat/course/nodes/gta/ui/_content/documents_readonly.html b/src/main/java/org/olat/course/nodes/gta/ui/_content/documents_readonly.html index d0fb03ab46c7cbdf1f9eef78dce18cfeb6b1cecc..7dc61ff6a75def1c88e1ca0fcf5cbadb8c5b450e 100644 --- a/src/main/java/org/olat/course/nodes/gta/ui/_content/documents_readonly.html +++ b/src/main/java/org/olat/course/nodes/gta/ui/_content/documents_readonly.html @@ -7,6 +7,6 @@ </div> <ul class="list-unstyled"> #foreach($docInfo in $linkNames) - <li>$r.render($docInfo.linkName) #if($docInfo.uploadedBy)<small>$r.translate("uploaded.by",$docInfo.uploadedBy)</small>#end</li> + <li>$r.render($docInfo.linkName) #if($docInfo.uploadedBy)<small>$r.translate("uploaded.by",$docInfo.uploadedBy)</small>#end #if($r.isNotNull($docInfo.lastModified))<small>$r.translate("lastmodified",$docInfo.lastModified)</small>#end</li> #end </ul> \ No newline at end of file diff --git a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_de.properties index c9b4ba138b931492dbcad47df1353cc989cf2c39..d8d6dac5112d96a156e084a0438e40fbbb3f3dd1 100644 --- a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_de.properties @@ -110,6 +110,7 @@ group.passed=Gruppe bestanden group.score=Gruppe Punkte group.title=Leistungs\u00FCbersicht info.title=$org.olat.course.nodes.ms\:info.title +lastmodified= am {0} log.title=\u00C4nderungsverlauf mail.confirm.assignment.body=Zuweisung war erfolgreich mail.confirm.assignment.subject=Zuweisung diff --git a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_en.properties index ce5467bfbec005555d18c376af26a68e28cdebfc..6b8528b9511134ff5a85ed2e7730e752ad7758fe 100644 --- a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_en.properties @@ -110,6 +110,7 @@ group.passed=Group passed group.score=Group score group.title=Score summary info.title=$org.olat.course.nodes.ms\:info.title +lastmodified= at {0} log.title=Change log mail.confirm.assignment.body=Assignment was successful mail.confirm.assignment.subject=Assignment diff --git a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_fr.properties index e9e95f6aa3ecb0ea2b698a3ce152a0e1ea2d68c5..cd1effea009ba2ecc6cfa3544418bbf744fb0690 100644 --- a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_fr.properties @@ -110,6 +110,7 @@ group.passed=R\u00E9ussi pour le groupe group.score=Points pour le groupe group.title=Aper\u00E7u des performances info.title=$org.olat.course.nodes.ms\:info.title +lastmodified= le {0} log.title=Historique des modifications mail.confirm.assignment.body=Affectation du devoir est r\u00E9ussi. mail.confirm.assignment.subject=Affectation