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

Merge OpenOLAT 10.4 to OpenOLAT default branch with f27e1c0990a915455b7ed03b6de85e161f00f4b8

parents 18018bc6 7a89301d
No related branches found
No related tags found
No related merge requests found
......@@ -88,7 +88,7 @@ public class LLEditForm extends FormBasicController {
super(ureq, wControl, "editForm");
this.moduleConfig = moduleConfig;
// read existing links from config
linkList = new ArrayList<LLModel>((List<LLModel>) moduleConfig.get(LLCourseNode.CONF_LINKLIST));
linkList = new ArrayList<LLModel>(moduleConfig.getList(LLCourseNode.CONF_LINKLIST, LLModel.class));
// list of all link target text fields
lTargetInputList = new ArrayList<TextElement>(linkList.size());
// list of all link html target text fields
......@@ -347,18 +347,21 @@ public class LLEditForm extends FormBasicController {
// add link add action button
FormLink addButton = new FormLinkImpl("add" + counter, "add" + counter, "", Link.BUTTON_SMALL + Link.NONTRANSLATED);
addButton.setUserObject(link);
addButton.setDomReplacementWrapperRequired(false);
addButton.setIconLeftCSS("o_icon o_icon-lg o_icon-fw o_icon_add");
flc.add(addButton);
lAddButtonList.add(index, addButton);
// add link deletion action button
FormLink delButton = new FormLinkImpl("delete" + counter, "delete" + counter, "", Link.BUTTON_SMALL + Link.NONTRANSLATED);
delButton.setUserObject(link);
delButton.setDomReplacementWrapperRequired(false);
delButton.setIconLeftCSS("o_icon o_icon-lg o_icon-fw o_icon_delete_item");
flc.add(delButton);
lDelButtonList.add(index, delButton);
// custom media action button
FormLink mediaButton = new FormLinkImpl("media" + counter, "media" + counter, " ", Link.NONTRANSLATED);
mediaButton.setIconLeftCSS("o_icon o_icon_browse o_icon-lg");
mediaButton.setDomReplacementWrapperRequired(false);
mediaButton.setUserObject(link);
flc.add(mediaButton);
lCustomMediaButtonList.add(index, mediaButton);
......
......@@ -7,38 +7,39 @@
#set( $descrErr = $descr + "_ERROR" )
#set( $hasError = "false" )
<div class="o_block_large_bottom row">
<div class="col-xs-12 col-md-10 form-inline">
#if ($f.hasError($target))
$r.render($targetErr)
#end
#if ($f.hasError($descr))
$r.render($descrErr)
#end
<div class="form-group">
<label class="sr-only" for="$f.getItemId($lTargetInputList.get($iter).getName())">$r.translate("ll.table.target")</label>
#if($lCustomMediaButtonList)
<div class="input-group">
$r.render($lTargetInputList.get($iter).getName())
<div class='input-group-addon'>
$r.render($lCustomMediaButtonList.get($iter).getName())
</div>
</div>
#else
$r.render($lTargetInputList.get($iter).getName())
<div class="row o_block_bottom">
<div class="col-xs-12 col-md-10">
<div class="form-inline">
#if ($f.hasError($target))
$r.render($targetErr)
#end
#if ($f.hasError($descr))
$r.render($descrErr)
#end
<div class="form-group">
<label class="sr-only" for="$f.getItemId($lTargetInputList.get($iter).getName())">$r.translate("ll.table.target")</label>
#if($r.available($lCustomMediaButtonList.get($iter).getName()) && $r.visible($lCustomMediaButtonList.get($iter).getName()))
<div class="input-group">
$r.render($lTargetInputList.get($iter).getName())
<div class='input-group-addon'>
$r.render($lCustomMediaButtonList.get($iter).getName())
</div>
</div>
#else
$r.render($lTargetInputList.get($iter).getName())
#end
</div>
<div class="form-group">
<label class="sr-only" for="$f.getItemId($lHtmlTargetInputList.get($iter).getName())">$r.translate("ll.table.html_target")</label>
$r.render($lHtmlTargetInputList.get($iter).getName())
</div>
<div class="form-group">
<label class="sr-only" for="$f.getItemId($lDescriptionInputList.get($iter).getName())">$r.translate("ll.table.description")</label>
$r.render($lDescriptionInputList.get($iter).getName())
</div>
</div>
<div class="form-group">
<label class="sr-only" for="$f.getItemId($lHtmlTargetInputList.get($iter).getName())">$r.translate("ll.table.html_target")</label>
$r.render($lHtmlTargetInputList.get($iter).getName())
</div>
<div class="form-group">
<label class="sr-only" for="$f.getItemId($lDescriptionInputList.get($iter).getName())">$r.translate("ll.table.description")</label>
$r.render($lDescriptionInputList.get($iter).getName())
</div>
<div class="form-group">
<div class="o_block">
<label class="sr-only" for="$f.getItemId($lCommentInputList.get($iter).getName())">$r.translate("ll.table.comment")</label>
$r.render($lCommentInputList.get($iter).getName())
</div>
......
......@@ -3,21 +3,21 @@ pane.tab.llconfig = Konfiguration
condition.accessibility.title = Zugang
config.header = Linkliste
config.nolinks.short = Links unvollstndig.
config.nolinks.short = Links unvollst\u00E4ndig.
config.nolinks.long = Sie haben noch keine Links in dieser Liste erstellt.
ll.table.target = Linkziel
ll.table.html_target = Neues Fenster
ll.table.html_target.self = Gleiches Fenster
ll.table.description = Titel angeben
ll.table.comment = Geben Sie eine optionale Beschreibung fr diesen Link an
ll.table.comment = Geben Sie eine optionale Beschreibung f\u00DCr diesen Link an
ll.table.delete = -
ll.table.add = +
ll.table.media = Media
ll.table.target.error = Bitte URL eintragen
ll.table.target.error.format = Ungltiges URL Format
ll.table.description.error = Bitte Beschreibung ausfllen
ll.table.target.error.format = Ung\u00DCltiges URL Format
ll.table.description.error = Bitte Beschreibung ausf\u00DCllen
ll.table.mandatory = * ... Pflichtfeld
target.example=URL angeben oder Ziel whlen
target.example=URL angeben oder Ziel w\u00E4hlen
......@@ -4,9 +4,9 @@ config.header=Liste de liens
config.nolinks.long=Vous n'avez pas encore \u00E9tabli des liens dans cette liste.
config.nolinks.short=Liens incomplets.
ll.table.add=+
ll.table.comment=Commentaire
ll.table.comment=Entrez une description optionelle
ll.table.delete=-
ll.table.description=Description
ll.table.description=Entrer un titre
ll.table.description.error=Veuillez compl\u00E9ter s.v.p.
ll.table.html_target=Nouvelle fen\u00EAtre
ll.table.html_target.self=M\u00EAme fen\u00EAtre
......@@ -17,4 +17,4 @@ ll.table.target.error=Veuillez indiquer l'URL, s.v.p.
ll.table.target.error.format=Format URL non valide
pane.tab.accessibility=Acc\u00E8s
pane.tab.llconfig=Configuration
target.example=http\://www.openolat.org
target.example=Entrez une URL ou choisissez un lien
#Sun Jun 07 16:40:36 CEST 2015
#Thu Feb 11 11:21:20 CET 2016
add.mode=Cr\u00E9er une configuration d'\u00E9valuation
admin.menu.title=Mode d'\u00E9valuation
admin.menu.title.alt=$\:admin.menu.title
......@@ -44,6 +44,7 @@ edit=Editer
elements=El\u00E9ments de cours
error.atleastone=Choisissez, s'il vous pla\u00EEt, au moins un configuration.
error.begin.after.end=La date de d\u00E9but doit se trouve avant la date de fin.
error.course.element.mandatory=Choisissez s'il vous pla\u00EEt au moins un \u00E9l\u00E9ment de cours.
error.group.missing=Vous devez choisir au moins un groupe.
error.in.assessment=Vous ne pouvez pas effacer la configuration d'une \u00E9valuation en cours.
error.ip.range=Vous ne vous trouvez pas dans le r\u00E9seau ad\u00E9quat.
......
#Sun Nov 08 12:36:55 CET 2015
#Thu Feb 11 11:24:24 CET 2016
chkbx.calendar.onoff=Afficher calendrier via la bo\u00EEte \u00E0 outils
chkbx.chat.onoff=Utiliser le chat du cours
chkbx.efficency.onoff=Utiliser l'attestation de performance
......@@ -32,3 +32,6 @@ tab.layout.title=R\u00E9glages
tab.sharedfolder.title=R\u00E9glages
warning.change.todisabled=Toutes les attestations de performance ne seront plus affich\u00E9s au participants au cours. Voulez-vous continuer?
warning.change.toenable=Cette s\u00E9lection conduit \u00E0 la cr\u00E9ation des attestations de performance pour ce cours. Ceci peut prendre un certain temps. Voulez-vous continuer?
warning.folderRef=Ce dossier de ressources est r\u00E9f\u00E9renc\u00E9 par au moins un \u00E9l\u00E9ment de cours de type dossier. La suppression de ce dossier se traduira par une configuration invalide. Voulez-vous tout de m\u00EAme continuer?
warning.folderRef.title=Attention\!
warning.folderRefAdd=Ce dossier de ressources est r\u00E9f\u00E9renc\u00E9 par au moins un \u00E9l\u00E9ment de cours de type dossier. La modification de ce dossier de ressources se traduira par une configuration des dossiers invalides ou incompl\u00E8tes. Voulez-vous tout de m\u00EAme continuer?
#Sun Nov 29 11:12:42 CET 2015
#Thu Feb 11 11:24:34 CET 2016
admin.menu.title=Forum
admin.menu.title.alt=Configuration de la fonction forum
admin.title=Configuration des forums
......@@ -23,6 +23,7 @@ close.thread=Terminer discussion
delete.att.ok=Les fichiers ont \u00E9t\u00E9 supprim\u00E9s.
deleteok=La contribution a \u00E9t\u00E9 supprim\u00E9e.
error.field.not.empty=Ce champ ne peut pas \u00EAtre vide.
error.message.deleted=$\:deleteok
error.pseudonym=Trop de similitude avec le nom d'un utilisateur pr\u00E9-existant
filter=Filtre personne
filter.header.allUsers=Contributions de toutes les personnes
......
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