diff --git a/src/main/java/org/olat/core/util/Formatter.java b/src/main/java/org/olat/core/util/Formatter.java
index 00f1f98c023ffe0bd4d6e0fab61a9206126d5fc6..8ccb4586d8102e0886efa54d920d94fd18fb6ed4 100644
--- a/src/main/java/org/olat/core/util/Formatter.java
+++ b/src/main/java/org/olat/core/util/Formatter.java
@@ -77,6 +77,11 @@ public class Formatter {
 		mediumTimeFormat.setLenient(false);
 		shortDateTimeFormat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, locale);
 		shortDateTimeFormat.setLenient(false);
+		if (shortDateTimeFormat instanceof SimpleDateFormat) {
+			SimpleDateFormat sdf = (SimpleDateFormat) shortDateTimeFormat;
+			String pattern = sdf.toPattern().replaceAll("y+","yyyy");
+			sdf.applyPattern(pattern); 
+		}
 		shortTimeFormat = DateFormat.getTimeInstance(DateFormat.SHORT, locale);
 		shortTimeFormat.setLenient(false);
 	}
diff --git a/src/main/java/org/olat/course/nodes/GTACourseNode.java b/src/main/java/org/olat/course/nodes/GTACourseNode.java
index 5f8c3432f2bdd7db6598617188236fc4615492a4..ed34240d1d6004ee7131ef72ca44ec3f7aa86c25 100644
--- a/src/main/java/org/olat/course/nodes/GTACourseNode.java
+++ b/src/main/java/org/olat/course/nodes/GTACourseNode.java
@@ -350,6 +350,9 @@ public class GTACourseNode extends AbstractAccessableCourseNode implements Asses
 		File fSolImportDir = new File(fNodeImportDir, "solutions");
 		File solutionsDirectory = gtaManager.getSolutionsDirectory(course.getCourseEnvironment(), this);
 		FileUtils.copyDirContentsToDir(fSolImportDir, solutionsDirectory, false, "import task course node solutions");
+		
+		RepositoryEntry entry = course.getCourseEnvironment().getCourseGroupManager().getCourseEntry();
+		gtaManager.createIfNotExists(entry, this);
 	}
 
 	@Override
@@ -366,6 +369,9 @@ public class GTACourseNode extends AbstractAccessableCourseNode implements Asses
 		File sourceSolutionsDirectory = gtaManager.getSolutionsDirectory(sourceCourse.getCourseEnvironment(), this);
 		File copySolutionsDirectory = gtaManager.getSolutionsDirectory(course.getCourseEnvironment(), this);
 		FileUtils.copyDirContentsToDir(sourceSolutionsDirectory, copySolutionsDirectory, false, "copy task course node solutions");
+		
+		RepositoryEntry entry = course.getCourseEnvironment().getCourseGroupManager().getCourseEntry();
+		gtaManager.createIfNotExists(entry, this);
 	}
 
 	@Override
diff --git a/src/main/java/org/olat/course/nodes/gta/ui/GTAAbstractController.java b/src/main/java/org/olat/course/nodes/gta/ui/GTAAbstractController.java
index f86b673083c7a6fdbf4c7a1f8b061c00183f99fb..f4005115a969f19f776adc583c6f3378d29c3ceb 100644
--- a/src/main/java/org/olat/course/nodes/gta/ui/GTAAbstractController.java
+++ b/src/main/java/org/olat/course/nodes/gta/ui/GTAAbstractController.java
@@ -124,7 +124,7 @@ public abstract class GTAAbstractController extends BasicController {
 		
 		businessGroupTask = GTAType.group.name().equals(config.getStringValue(GTACourseNode.GTASK_TYPE));
 		
-		taskList = gtaManager.getTaskList(courseEntry, gtaNode);
+		taskList = gtaManager.createIfNotExists(courseEntry, gtaNode);
 		publisherData = gtaManager.getPublisherData(courseEnv, gtaNode);
 		subsContext = gtaManager.getSubscriptionContext(courseEnv, gtaNode);
 		
diff --git a/src/main/java/org/olat/course/nodes/gta/ui/GTAParticipantController.java b/src/main/java/org/olat/course/nodes/gta/ui/GTAParticipantController.java
index fa7c0bdfec57133e57ac98f10bcc84a96757c49d..238d1a732dc9f5e3ca87cbf1a873d8db6265c66e 100644
--- a/src/main/java/org/olat/course/nodes/gta/ui/GTAParticipantController.java
+++ b/src/main/java/org/olat/course/nodes/gta/ui/GTAParticipantController.java
@@ -171,6 +171,9 @@ public class GTAParticipantController extends GTAAbstractController {
 					} else if(response == null || response.getStatus() == AssignmentResponse.Status.noMoreTasks) {
 						showError("error.nomoretasks");
 					} else if(response == null || response.getStatus() == AssignmentResponse.Status.ok) {
+						if(response != null) {
+							assignedTask = response.getTask();
+						}
 						showInfo("task.successfully.assigned");
 						showAssignedTask(ureq, assignedTask);
 					}
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 e5923efafa6bfacebc088b531e44ec3be8ee7da3..d633289cf194efd3d23476519d47907670a96bcd 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
@@ -52,7 +52,7 @@ download.task=Aufgabe herunterladen
 download.task.infos={0} ({1} MB)
 edit.task=Aufgabe bearbeiten
 editor.title=Abgabe Konfiguration
-embedded.editor=Abgabe mit internem Texteditor
+embedded.editor=Abgabe mit OpenOLAT Texteditor
 enabled=eingeschaltet
 error.assignment.closed=Zuweisung ist geschlossen.
 error.duplicate.coaching=Der Teilnehmer ist Teilnehmer von mehreren Gruppen f\u00FCr diese Aufgabe.
@@ -71,7 +71,7 @@ error.not.member.message=Reserviert f\u00FCr die Teilnehmer der Aufgabe
 error.not.member.title=Reserviert f\u00FCr die Teilnehmer der Aufgabe
 error.number.format=Geben Sie eine Zahl zwischen 1 und 12 ein oder lassen Sie das Feld leer.
 error.select.atleastonestep=Sie haben keine Schritte gew\u00E4hlt
-external.editor=Abgabe mit externem Editor (PDF)
+external.editor=Dokumente hochladen (z.B. PDF)
 file.name=Dateiname
 file.name.example=Dokument.html
 grading=Bewertung
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 ec01ec87915ac7cc53590d7127f2befffd232cb4..21050ca85123cd43faadd841598db9eaf397a918 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
@@ -54,7 +54,7 @@ download.task=Download task
 download.task.infos={0} ({1} MB)
 edit.task=Edit task
 editor.title=Submission configuration
-embedded.editor=Submit with embedded text editor
+embedded.editor=Submit with OpenOLAT text editor
 enabled=enabled
 error.assignment.closed=Assignment is closed
 error.duplicate.coaching=This user is a member of multiple groups in this task.
@@ -73,7 +73,7 @@ error.not.member.message=Reserved for task members
 error.not.member.title=Reserved for task members
 error.number.format=Enter a number between 1 and 12 or leave the field blank.
 error.select.atleastonestep=You have not selected any steps
-external.editor=Submit files created with external editor (e.g. PDF)
+external.editor=Upload files (e.g. PDF)
 file.name=File name
 file.name.example=Document.html
 grading=Grading
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 32b5ff5d7eac2fb5699f8dd49542bfefa1d53f0e..18a5f3aa497df6fb538b2cfead0d2aab51121c24 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
@@ -45,7 +45,7 @@ download.task=T\u00E9l\u00E9charger les devoirs
 download.task.infos={0} ({1} MB)
 edit.task=Editer le devoir
 editor.title=Configuration du d\u00E9p\u00F4t de documents
-embedded.editor=D\u00E9p\u00F4t avec l'\u00E9diteur de text interne
+embedded.editor=Soumettre avec l'\u00E9diteur de texte d'OpenOLAT
 enabled=activ\u00E9
 error.assignment.closed=Le d\u00E9lai d'affectation des devoirs est d\u00E9pass\u00E9.
 error.duplicate.coaching=Le participant est participant dans plusieurs groupes pour ce devoir.
@@ -64,7 +64,7 @@ error.not.member.message=R\u00E9serv\u00E9 aux participants aux devoirs
 error.not.member.title=R\u00E9serv\u00E9 aux participants du devoir
 error.number.format=Donnez un nombre entre 1 et 12 ou laissez le champ libre.
 error.select.atleastonestep=Vous n'avez s\u00E9lectionn\u00E9 aucune \u00E9tape.
-external.editor=D\u00E9p\u00F4t avec un \u00E9diteur externe (PDF)
+external.editor=T\u00E9l\u00E9charger un fichier (PDF par exemple)
 file.name=Nom du document
 file.name.example=Document.html
 grading=Evaluation