diff --git a/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_fr.properties index f797f3f3dab52a8c5d1daf32fea89d6e2783b333..4698a6a3d8daa0cfeb4f3226232838f8f7c4f548 100644 --- a/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Sun Nov 08 12:27:44 CET 2015 +#Fri Apr 28 11:33:33 CEST 2017 Directory=Dossier FileDeleteFailed=fichier/dossier <b>{0}</b> n'a pas pu \u00EAtre supprim\u00E9. FileDeleted=Le fichier/dossier <b>{0}</b> a \u00E9t\u00E9 supprim\u00E9 avec succ\u00E8s. @@ -46,6 +46,7 @@ cfile.name.noextension=Ce fichier ne contient pas d'extension de nom de fichier. cfile.name.noname=Aucun nom de fichier sp\u00E9cifi\u00E9. cfile.name.notvalid=File name not valid, please remove any path info\! cfile.name.notvalid.cannot.edit.metadata=Ce nom de fichier contient des caract\u00E8res non permis, vous ne pouvez donc pas \u00E9diter les m\u00E9tadonn\u00E9es. +cfile.name.notvalid.uri=Ce nom de fichier contient des caract\u00E8res interdits comme / , \: ou un espace blanc. Supprimer-les, s'il vous pla\u00EEt, avant de t\u00E9l\u00E9charger le fichier \u00E0 nouveau. cfile.name.notvalidchars=Ce nom de fichier contient des caract\u00E8res interdits "{0}". S'il vous pla\u00EEt supprimer les avant de t\u00E9l\u00E9charger le fichier \u00E0 nouveau. checkall=Tout s\u00E9lectionner command.closepreview=Fermer l'aper\u00E7u diff --git a/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_fr.properties index 88aafa1d84ac3a87367163527cf1b380cff203d5..72446f3dc5299efe43265cf1ea5ba68ea1ed93b7 100644 --- a/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu Mar 09 17:21:46 CET 2017 +#Fri Apr 28 11:35:35 CEST 2017 checklist=Listes de contr\u00F4le cl=Listes de contr\u00F4le cmd.download=T\u00E9l\u00E9charger @@ -33,7 +33,10 @@ course.res.feedback=Le fichier <b>{0}</b> contenant les r\u00E9sultats se trouve course.res.intro=Cliquez sur 'D\u00E9marrer' pour archiver les r\u00E9sultats finaux des tests, des \u00E9valuations et des devoirs. course.res.title=R\u00E9sultats du cours dialog=Fichiers discut\u00E9s +download.options=Configurer les options de t\u00E9l\u00E9chargement fo=Forums +form.poscol.extra=Montrer les questions s\u00E9lectionn\u00E9es (seulement QTI 1.2) +form.title=Configurer les options gta=Devoirs de groupe index.intro=Gr\u00E2ce \u00E0 cet outil, diff\u00E9rentes donn\u00E9es de ce cours OLAT peuvent \u00EAtre archiv\u00E9es. <p> Veuillez choisir une entr\u00E9e du menu de gauche pour commencer. index.title=Outil d'archivage des donn\u00E9es @@ -76,7 +79,9 @@ menu.scorm=R\u00E9sultats SCORM menu.scorm.alt=R\u00E9sultats SCORM menu.wikis=Wikis menu.wikis.alt=Archiver Wikis +nodechoose.config.error=Choisissez s'il vous pla\u00EEt au moins une option. nodechoose.intro.cl=S\u00E9lectionnez avec le dialogue suivant l'\u00E9l\u00E9ment de cours liste de contr\u00F4le que vous souhaitez \u00E9valuer. +nodechoose.intro.config=L'archive contient\: tous les utilisateurs et toutes les questions. Modifier les options de t\u00E9l\u00E9chargement avec le bouton ci-dessus. nodechoose.intro.dialog=S\u00E9lectionnez un \u00E9l\u00E9ment de cours pour archiver ses discussions de fichiers. nodechoose.intro.fo=S\u00E9lectionnez un \u00E9l\u00E9ment de cours pour archiver son forum. nodechoose.intro.gta=S\u00E9lectionnez un \u00E9l\u00E9ment de cours pour archiver ses devoirs de groupe. diff --git a/src/main/java/org/olat/group/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/group/ui/_i18n/LocalStrings_fr.properties index 36ba6c2316a81bca3464ce44220cf076803b9795..fd95ad128ee449300aad04f682d76cfd66e47281 100644 --- a/src/main/java/org/olat/group/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/group/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu Sep 03 11:24:42 CEST 2015 +#Fri Apr 28 10:58:43 CEST 2017 LearningGroup=Groupe d'\u00E9tude action.choose=S\u00E9lectionner admin.menu.title=Groupes @@ -70,7 +70,6 @@ groupsPortlet.no_member=Vous avez \u00E9t\u00E9 d\u00E9sinscrit de ce groupe ou groupsPortlet.nogroups=Vous n'\u00EAtes dans aucun groupe groupsPortlet.showAll=Afficher tous groupsPortlet.title=Mes groupes - leaving.group=Les membres peuvent quitter le groupe leaving.group.authors=Permettre aux participants de quitter les groupes cr\u00E9\u00E9s par les auteurs leaving.group.learners=Permettre aux membres de quitter les groupes cr\u00E9\u00E9s par les utilisateurs @@ -103,6 +102,7 @@ notification.mail.added.self.body=*** Ceci est un message g\u00E9n\u00E9r\u00E9 notification.mail.added.self.subject=Groupe d'\u00E9tude OLAT $groupname notification.mail.added.subject=Groupe d'\u00E9tude OLAT $groupname notification.mail.error=Le courrier n'a pas pu \u00EAtre envoy\u00E9. Pri\u00E8re d'informer l'utilisateur personnellement. +notification.mail.no.ressource=Ce groupe n'est utilis\u00E9 dans aucun objet didactique. notification.mail.removed.body=*** Ceci est un message g\u00E9n\u00E9r\u00E9 de mani\u00E8re automatique. Veuillez svp ne pas r\u00E9pondre \u00E0 ce message *** \r\n\r\nVous avez \u00E9t\u00E9 d\u00E9sinscrit(e) par {0} {1} ({2}) du groupe d'\u00E9tude \: \r\n\r\nNom du groupe\: $groupname\r\nDescription\: $groupdescription\r\n\r\nPour toute question, veuillez contacter svp {0} {1} ({2}). \r\n\r\nCe groupe d'\u00E9tude est utilis\u00E9 pour les ressources didactiques suivantes \: \r\n\r\n$courselist notification.mail.removed.self.body=*** Ceci est un message g\u00E9n\u00E9r\u00E9 de mani\u00E8re automatique. Veuillez svp ne pas r\u00E9pondre \u00E0 ce message *** \r\n\r\nVous vous \u00EAtes d\u00E9sinscrit(e) du groupe d'\u00E9tude\: \r\n\r\nNom du groupe\: $groupname\r\nDescription\: $groupdescription\r\n\r\nCe groupe d'\u00E9tude est utilis\u00E9 pour les ressources didactiques suivantes\:\r\n\r\n$courselist notification.mail.removed.self.subject=Groupe d'\u00E9tude OLAT $groupname\: Vous avez \u00E9t\u00E9 d\u00E9sinscrit-e. diff --git a/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_de.properties index 646df41b944efb44956d0721ac2cecaff9d35df1..7505630b1f5e4d56b45bc3f39560d1da83a265b7 100644 --- a/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_de.properties @@ -90,7 +90,6 @@ email.send=Schicken email.function=Emailfunktion email.function.all=Emailfunktion f\u00FCr alle Benutzer freischalten email.function.coachAndAdmin=Emailfunktion nur f\u00FCr Betreuer und Administratoren freischalten -yemail.title=E-Mail senden members.to=Teilnehmer "{0}" aus Gruppe "{1}" msg.send.ok=$org.olat.modules.co\:msg.send.ok error.msg.send.partially.nok=$org.olat.modules.co\:error.msg.send.partially.nok diff --git a/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_en.properties index c34f278cdd79259dd6fcf9dc339435b2c8714241..d17ec071cd384bb2cd1593dd81d5560e570d1b9a 100644 --- a/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_en.properties @@ -90,7 +90,6 @@ email.send=Send email.function=Email function email.function.all=Enable email for all users email.function.coachAndAdmin=Enable email for all users for coaches and admins -email.title=Send email members.to=Members "{0}" of group "{1}" msg.send.ok=$org.olat.modules.co\:msg.send.ok error.msg.send.partially.nok=$org.olat.modules.co\:error.msg.send.partially.nok diff --git a/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_fr.properties index 501995c091c28835b946952f264c78c0807f5abf..5e67e21c8b4cb6560ce8ff3f6a9d9342b8ccbbf4 100644 --- a/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_fr.properties @@ -107,4 +107,3 @@ userlist.show.no.waitinglist.text=pas visible userlist.show.no.waitinglist.title=Liste d'attente userlist.title=Membres du groupe wizard.step1.send_option.member=Participants et coachs du groupe -yemail.title=Envoyer un courriel diff --git a/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_it.properties index f229e0ba9c0f53fe822e528d34e0d08e04e30dac..341486af62da7f6834970df77cbb15521a3fd5b8 100644 --- a/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_it.properties +++ b/src/main/java/org/olat/group/ui/run/_i18n/LocalStrings_it.properties @@ -15,7 +15,6 @@ email.function=Funzione e-mail email.function.all=Abilitare email per tutti gli utenti email.function.coachAndAdmin=Abilitare e-mail a tutti gli utenti per tutori e amministratori email.send=Inviare -email.title=Invio email error.msg.send.553=$org.olat.modules.co\:error.msg.send.553 error.msg.send.invalid.rcps=$org.olat.modules.co\:error.msg.send.invalid.rcps error.msg.send.nok=$org.olat.modules.co\:error.msg.send.nok diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/ims/qti21/ui/editor/_i18n/LocalStrings_fr.properties index a69f46eda1469e6e7010e623dbd94d75e9b2767b..4de9c4ab88e0ae1be3d9fdb895fc0fc3aadea8f0 100644 --- a/src/main/java/org/olat/ims/qti21/ui/editor/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/ims/qti21/ui/editor/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu Apr 06 15:22:02 CEST 2017 +#Fri Apr 28 11:30:05 CEST 2017 add.match.column=Ajouter une colonne add.match.row=Ajouter une ligne answers=R\u00E9ponses @@ -17,6 +17,8 @@ error.import.question=Une erreur inattendue s'est produite pendant l'importation error.lock=Ce test / questionnaire est \u00E9dit\u00E9 par {0} en ce moment et est bloqu\u00E9. error.lock.title=Test bloqu\u00E9 error.mimetype=$org.olat.core.commons.modules.bc\:WrongMimeType +error.missing.fib=La question doit contenir au moins un text \u00E0 trou ou une entr\u00E9e num\u00E9rique. +error.missing.hottext=La question doit contenir au moins un hottext. error.need.correct.answer=Vous devez s\u00E9lectionner au moins une r\u00E9ponse comme correcte. error.positive.double=Seul des nombres positives sont permis. Par exemple\: 15.0, 5.5, 10 error.singlechoice=En s\u00E9lectionner exactement une @@ -35,7 +37,9 @@ fib.tolerance.low=Limite inf\u00E9rieure fib.tolerance.mode=Type de tol\u00E9rance fib.tolerance.mode.absolute=Absolu fib.tolerance.mode.absolute.example=Un nombre, par exemple 1.5 ou 1322 +fib.tolerance.mode.absolute.help=La solution est accept\u00E9 si elle se trouve entre la limite sup\u00E9rieure et inf\u00E9rieure. La limite est un nombre absolu. Exemple\: la solution est 20, la limite inf\u00E9rieure 2, la limite sup\u00E9rieure 2 &arr; toutes les solutions entre 18 et 22 sont correctes. La limite inf\u00E9rieure est soustraite \u00E0 la solution, la limite sup\u00E9rieure addition\u00E9e. fib.tolerance.mode.exact=Exact +fib.tolerance.mode.exact.help=La solution doit \u00EAtre exactement celle entr\u00E9e sous "Solution". fib.tolerance.mode.relative=Relatif fib.tolerance.mode.relative.example=Pourcentage, par example 15 ou 99.0 fib.tolerance.up=Limite sup\u00E9rieur diff --git a/src/main/java/org/olat/modules/fo/ui/ForumController.java b/src/main/java/org/olat/modules/fo/ui/ForumController.java index 867f17f5ef0ddadd4be22768f32027be632331ff..b6bc42177f18c7803dde99a7baa9a64dc1aa2369 100644 --- a/src/main/java/org/olat/modules/fo/ui/ForumController.java +++ b/src/main/java/org/olat/modules/fo/ui/ForumController.java @@ -208,6 +208,7 @@ public class ForumController extends BasicController implements GenericEventList } } else if(viewCtrl == source) { if(event == Event.BACK_EVENT) { + reloadThreadList |= viewCtrl.hasMarkedNewMessages(); doThreadList(ureq); } else if(event instanceof DeleteThreadEvent) { reloadThreadList = true; @@ -219,6 +220,7 @@ public class ForumController extends BasicController implements GenericEventList } } else if(userViewCtrl == source) { if(event == Event.BACK_EVENT) { + reloadThreadList |= userViewCtrl.hasMarkedNewMessages(); cleanUpMessageViews(); doUserList(ureq); } else if(event instanceof SelectMessageEvent) { diff --git a/src/main/java/org/olat/modules/fo/ui/MessageListController.java b/src/main/java/org/olat/modules/fo/ui/MessageListController.java index 4ddd179269ae1e10b68b4db1d4e2699395d7e4bc..fec754d4dbf0c883818c746d07f108e97a27a4a2 100644 --- a/src/main/java/org/olat/modules/fo/ui/MessageListController.java +++ b/src/main/java/org/olat/modules/fo/ui/MessageListController.java @@ -148,6 +148,7 @@ public class MessageListController extends BasicController implements GenericEve private Message thread; private boolean reloadList; + private boolean hasMarkedNewMessages; private final Forum forum; private final boolean guestOnly; @@ -211,6 +212,13 @@ public class MessageListController extends BasicController implements GenericEve CoordinatorManager.getInstance().getCoordinator().getEventBus().registerFor(this, getIdentity(), forum); } + /** + * @return true if the controller has marked some new messages as seen + */ + public boolean hasMarkedNewMessages() { + return hasMarkedNewMessages; + } + @Override protected void doDispose() { CoordinatorManager.getInstance().getCoordinator().getEventBus().deregisterFor(this, forum); @@ -495,24 +503,7 @@ public class MessageListController extends BasicController implements GenericEve */ private void orderMessagesThreaded(List<MessageLight> messages, List<MessageLight> orderedList, MessageLight startMessage) { if (messages == null || orderedList == null || startMessage == null) return; - /* - Iterator<MessageLight> iterMsg = messages.iterator(); - while (iterMsg.hasNext()) { - MessageLight msg = iterMsg.next(); - if (msg.getParentKey() == null) { - orderedList.add(msg); - List<MessageLight> copiedMessages = new ArrayList<>(messages); - copiedMessages.remove(msg); - messages = copiedMessages; - continue; - } - if ((msg.getParentKey() != null) && (msg.getParentKey().equals(startMessage.getKey()))) { - orderedList.add(msg); - orderMessagesThreaded(messages, orderedList, msg); - } - } - */ - + Map<Long, MessageNode> messagesMap = new HashMap<>(); if(startMessage != null) { messagesMap.put(startMessage.getKey(), new MessageNode(startMessage)); @@ -563,6 +554,7 @@ public class MessageListController extends BasicController implements GenericEve private void markRead(MessageLight message) { if(!guestOnly) { forumManager.markAsRead(getIdentity(), forum, message); + hasMarkedNewMessages = true; } } diff --git a/src/main/java/org/olat/modules/gotomeeting/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/gotomeeting/ui/_i18n/LocalStrings_fr.properties index b02bc4771807532d20482f3346cb2e8575ba00b8..1054144afd02ffcf34a2e815c1de82224726773e 100644 --- a/src/main/java/org/olat/modules/gotomeeting/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/modules/gotomeeting/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu May 05 10:04:51 CEST 2016 +#Fri Apr 28 11:31:26 CEST 2017 add.my.account=J'ai un compte GoToMeeting add.organizer=Ajoutez un organisateur add.training=Ajoutez une formation @@ -8,6 +8,7 @@ confirm.delete.meeting=Voulez-vous vraiment effacer la formation "{0}"? confirm.remove.organizer=Voulez-vous vraiment enlever l'organisateur "{0}" du syst\u00E8me? download=T\u00E9l\u00E9charger enabled= +error.code.InvalidToken=L'authentification de votre organisateur n'est probablement plus valable et doit \u00EAtre renouvel\u00E9e. Demandez s'il vous pla\u00EEt \u00E0 votre administrateur de le v\u00E9rifier. error.code.InvalidTrainingDatesMaxDuration=La formation ne peut pas durer plus de 24 heures. error.code.NoSuchTraining=La formation n'a pas pu \u00EAtre trouv\u00E9e. error.code.TrainingInSession=La formation a d\u00E9j\u00E0 commenc\u00E9. diff --git a/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_fr.properties index 97907c28f80fbd5be4ab5c28e714179ab3be2d01..f399b33c5ab5c8f94875d7aba41dd61dacda2642 100644 --- a/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Wed Mar 08 11:23:46 CET 2017 +#Fri Apr 28 11:01:21 CEST 2017 add=+ add.to.list=Ajouter \u00E0 la liste applications=Utilisations @@ -72,14 +72,18 @@ item.deleted=La question a \u00E9t\u00E9 effac\u00E9e. item.level=Niveau item.pooled=La question {0} a \u00E9t\u00E9 ajout\u00E9e au pool. item.shared=La question {0} a \u00E9t\u00E9 partag\u00E9e. +item.type.drawing=Dessin item.type.essay=Dissertation item.type.fib=Texte \u00E0 trous item.type.hotspot=Hotspot +item.type.hottext=Hottext item.type.kprim=KPrim +item.type.match=Match item.type.mc=Choix multiple item.type.numerical=Entr\u00E9e num\u00E9rique item.type.sc=Choix unique item.type.unkown=Inconnu +item.type.upload=T\u00E9l\u00E9verser un fichier lifecycle=Lifecycle lifecycle.status=Statut lifecycle.status.draft=Ebauche diff --git a/src/main/java/org/olat/user/propertyhandlers/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/user/propertyhandlers/ui/_i18n/LocalStrings_fr.properties index 79cfa4832e93d0c883092ba05482a4ec514fedef..2b3610117637f70e2afb31fedb9cb8bf686b1adb 100644 --- a/src/main/java/org/olat/user/propertyhandlers/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/user/propertyhandlers/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Wed Mar 08 11:34:13 CET 2017 +#Fri Apr 28 11:35:59 CEST 2017 error.phone.invalid=Le num\u00E9ro n'est pas valide. error.sms.change.confirm.token=Le code n'est pas valide. sms.change.confirm=Entrer le code envoy\u00E9 par SMS @@ -48,3 +48,4 @@ upc.reset.configs.note=Remarque\: lorsque vous chargez un r\u00E9glage pr\u00E9d upc.translate=Traduire upc.up=En haut upc.userreadonly=Utilisateur en lecture seule +warning.message.not.send=Le SMS n'a pas pu \u00EAtre envoy\u00E9.