Skip to content
Snippets Groups Projects
Commit eca88967 authored by srosse's avatar srosse
Browse files

Merge OpenOLAT 10.3 to OpenOLAT default branch with ccae086fc041090fafc86d415d357ed42c61aa8d

parents f026bfe9 b25f660b
No related branches found
No related tags found
No related merge requests found
...@@ -77,6 +77,11 @@ public class Formatter { ...@@ -77,6 +77,11 @@ public class Formatter {
mediumTimeFormat.setLenient(false); mediumTimeFormat.setLenient(false);
shortDateTimeFormat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, locale); shortDateTimeFormat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, locale);
shortDateTimeFormat.setLenient(false); 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 = DateFormat.getTimeInstance(DateFormat.SHORT, locale);
shortTimeFormat.setLenient(false); shortTimeFormat.setLenient(false);
} }
......
...@@ -350,6 +350,9 @@ public class GTACourseNode extends AbstractAccessableCourseNode implements Asses ...@@ -350,6 +350,9 @@ public class GTACourseNode extends AbstractAccessableCourseNode implements Asses
File fSolImportDir = new File(fNodeImportDir, "solutions"); File fSolImportDir = new File(fNodeImportDir, "solutions");
File solutionsDirectory = gtaManager.getSolutionsDirectory(course.getCourseEnvironment(), this); File solutionsDirectory = gtaManager.getSolutionsDirectory(course.getCourseEnvironment(), this);
FileUtils.copyDirContentsToDir(fSolImportDir, solutionsDirectory, false, "import task course node solutions"); FileUtils.copyDirContentsToDir(fSolImportDir, solutionsDirectory, false, "import task course node solutions");
RepositoryEntry entry = course.getCourseEnvironment().getCourseGroupManager().getCourseEntry();
gtaManager.createIfNotExists(entry, this);
} }
@Override @Override
...@@ -366,6 +369,9 @@ public class GTACourseNode extends AbstractAccessableCourseNode implements Asses ...@@ -366,6 +369,9 @@ public class GTACourseNode extends AbstractAccessableCourseNode implements Asses
File sourceSolutionsDirectory = gtaManager.getSolutionsDirectory(sourceCourse.getCourseEnvironment(), this); File sourceSolutionsDirectory = gtaManager.getSolutionsDirectory(sourceCourse.getCourseEnvironment(), this);
File copySolutionsDirectory = gtaManager.getSolutionsDirectory(course.getCourseEnvironment(), this); File copySolutionsDirectory = gtaManager.getSolutionsDirectory(course.getCourseEnvironment(), this);
FileUtils.copyDirContentsToDir(sourceSolutionsDirectory, copySolutionsDirectory, false, "copy task course node solutions"); FileUtils.copyDirContentsToDir(sourceSolutionsDirectory, copySolutionsDirectory, false, "copy task course node solutions");
RepositoryEntry entry = course.getCourseEnvironment().getCourseGroupManager().getCourseEntry();
gtaManager.createIfNotExists(entry, this);
} }
@Override @Override
......
...@@ -124,7 +124,7 @@ public abstract class GTAAbstractController extends BasicController { ...@@ -124,7 +124,7 @@ public abstract class GTAAbstractController extends BasicController {
businessGroupTask = GTAType.group.name().equals(config.getStringValue(GTACourseNode.GTASK_TYPE)); 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); publisherData = gtaManager.getPublisherData(courseEnv, gtaNode);
subsContext = gtaManager.getSubscriptionContext(courseEnv, gtaNode); subsContext = gtaManager.getSubscriptionContext(courseEnv, gtaNode);
......
...@@ -171,6 +171,9 @@ public class GTAParticipantController extends GTAAbstractController { ...@@ -171,6 +171,9 @@ public class GTAParticipantController extends GTAAbstractController {
} else if(response == null || response.getStatus() == AssignmentResponse.Status.noMoreTasks) { } else if(response == null || response.getStatus() == AssignmentResponse.Status.noMoreTasks) {
showError("error.nomoretasks"); showError("error.nomoretasks");
} else if(response == null || response.getStatus() == AssignmentResponse.Status.ok) { } else if(response == null || response.getStatus() == AssignmentResponse.Status.ok) {
if(response != null) {
assignedTask = response.getTask();
}
showInfo("task.successfully.assigned"); showInfo("task.successfully.assigned");
showAssignedTask(ureq, assignedTask); showAssignedTask(ureq, assignedTask);
} }
......
...@@ -52,7 +52,7 @@ download.task=Aufgabe herunterladen ...@@ -52,7 +52,7 @@ download.task=Aufgabe herunterladen
download.task.infos={0} ({1} MB) download.task.infos={0} ({1} MB)
edit.task=Aufgabe bearbeiten edit.task=Aufgabe bearbeiten
editor.title=Abgabe Konfiguration editor.title=Abgabe Konfiguration
embedded.editor=Abgabe mit internem Texteditor embedded.editor=Abgabe mit OpenOLAT Texteditor
enabled=eingeschaltet enabled=eingeschaltet
error.assignment.closed=Zuweisung ist geschlossen. error.assignment.closed=Zuweisung ist geschlossen.
error.duplicate.coaching=Der Teilnehmer ist Teilnehmer von mehreren Gruppen f\u00FCr diese Aufgabe. 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 ...@@ -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.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.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 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=Dateiname
file.name.example=Dokument.html file.name.example=Dokument.html
grading=Bewertung grading=Bewertung
......
...@@ -54,7 +54,7 @@ download.task=Download task ...@@ -54,7 +54,7 @@ download.task=Download task
download.task.infos={0} ({1} MB) download.task.infos={0} ({1} MB)
edit.task=Edit task edit.task=Edit task
editor.title=Submission configuration editor.title=Submission configuration
embedded.editor=Submit with embedded text editor embedded.editor=Submit with OpenOLAT text editor
enabled=enabled enabled=enabled
error.assignment.closed=Assignment is closed error.assignment.closed=Assignment is closed
error.duplicate.coaching=This user is a member of multiple groups in this task. 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 ...@@ -73,7 +73,7 @@ error.not.member.message=Reserved for task members
error.not.member.title=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.number.format=Enter a number between 1 and 12 or leave the field blank.
error.select.atleastonestep=You have not selected any steps 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=File name
file.name.example=Document.html file.name.example=Document.html
grading=Grading grading=Grading
......
...@@ -45,7 +45,7 @@ download.task=T\u00E9l\u00E9charger les devoirs ...@@ -45,7 +45,7 @@ download.task=T\u00E9l\u00E9charger les devoirs
download.task.infos={0} ({1} MB) download.task.infos={0} ({1} MB)
edit.task=Editer le devoir edit.task=Editer le devoir
editor.title=Configuration du d\u00E9p\u00F4t de documents 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 enabled=activ\u00E9
error.assignment.closed=Le d\u00E9lai d'affectation des devoirs est d\u00E9pass\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. 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 ...@@ -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.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.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. 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=Nom du document
file.name.example=Document.html file.name.example=Document.html
grading=Evaluation grading=Evaluation
......
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