diff --git a/src/main/java/de/bps/course/nodes/den/_i18n/LocalStrings_fr.properties b/src/main/java/de/bps/course/nodes/den/_i18n/LocalStrings_fr.properties index e21d4aae63a9ffdbced593f605f44cb9f15c9c18..69ed9900bc6260d1ec206a664b7b67e023803625 100644 --- a/src/main/java/de/bps/course/nodes/den/_i18n/LocalStrings_fr.properties +++ b/src/main/java/de/bps/course/nodes/den/_i18n/LocalStrings_fr.properties @@ -69,7 +69,7 @@ dates.table.participant.firstname=Pr\u00E9nom dates.table.participant.lastname=Nom dates.table.participant.manage=administrer dates.table.participant.name=Nom -dates.table.participant.username=nom d'utilisateur +dates.table.participant.username=Nom d'utilisateur dates.table.participants.num=Anz. participants dates.table.reserved=Places dates.table.run.enrolled=inscrit(e) diff --git a/src/main/java/de/bps/olat/portal/institution/_content/institutionPortlet.html b/src/main/java/de/bps/olat/portal/institution/_content/institutionPortlet.html index 04ac02dbd54a7f54cdc2dbbad27273bcc35127d0..47814bb3320299c13cb7b392ef82b922c03bd336 100644 --- a/src/main/java/de/bps/olat/portal/institution/_content/institutionPortlet.html +++ b/src/main/java/de/bps/olat/portal/institution/_content/institutionPortlet.html @@ -4,13 +4,13 @@ <a href="$iurl" target="_blank"><img src='$r.staticLink("images/institution/$ilogo")' alt="$iname" /></a> <p>$iname</p> </h4> - <div class="b_toolbox"><ul> + <ul> #if($hasPolymorphLink) #foreach($polyLink in $polyLinks) <li>$r.render("$polyLink")</li> #end #end - </ul></div> + </ul> <p class="clearfix">$r.translate("stextintro")<br />$sperson</p> #if($showphone) <p>$r.translate("phone"): $sphone</p> diff --git a/src/main/java/de/bps/olat/portal/institution/_i18n/LocalStrings_fr.properties b/src/main/java/de/bps/olat/portal/institution/_i18n/LocalStrings_fr.properties index d1ad78d1103a3230e0f961e6f94f49714909d209..251d2051206f7e4f7c103af08da7e17b9307c8e8 100644 --- a/src/main/java/de/bps/olat/portal/institution/_i18n/LocalStrings_fr.properties +++ b/src/main/java/de/bps/olat/portal/institution/_i18n/LocalStrings_fr.properties @@ -4,11 +4,11 @@ catalogue=Catalogue course=Cours email=E-mail institution.description=L'universit\u00E9 \u00E0 travers laquelle vous \u00EAtes inscrit(e) dans OLAT -institution.title=mon universit\u00E9 +institution.title=Mon universit\u00E9 institutionPortlet.polymorphLink=\u00E7a commence ici\! noinstitution=L'universit\u00E9 n'a pas \u00E9t\u00E9 trouv\u00E9e dans le syst\u00E8me. phone=t\u00E9l\u00E9phone supervisor=Mon encadrement r\u00E9gional -url=web +url=Web warn.cantlaunch=Le lien n'est malheureusement pas valable. Veuillez informer votre encadrement r\u00E9gional. stextintro= diff --git a/src/main/java/org/olat/admin/layout/_content/layoutadmin.html b/src/main/java/org/olat/admin/layout/_content/layoutadmin.html index 494c0e3fa30f55dd59ca0be8de006e41967efbe2..add58cd5fb4b59eb1524f988ccc7f1f410232080 100644 --- a/src/main/java/org/olat/admin/layout/_content/layoutadmin.html +++ b/src/main/java/org/olat/admin/layout/_content/layoutadmin.html @@ -3,7 +3,7 @@ <p> $r.translate("layout.intro"). </p> - <div class="b_form"> + <div class="o_form"> $r.render("themeAdminFormContainer") </div> </fieldset> \ No newline at end of file diff --git a/src/main/java/org/olat/admin/securitygroup/gui/multi/_content/index.html b/src/main/java/org/olat/admin/securitygroup/gui/multi/_content/index.html index 173d0bd593a81b70dbb28b0b10c9df08e9767c6e..ec32cff14ca9e18a887951ef05f1573f64ed1ec0 100644 --- a/src/main/java/org/olat/admin/securitygroup/gui/multi/_content/index.html +++ b/src/main/java/org/olat/admin/securitygroup/gui/multi/_content/index.html @@ -24,7 +24,7 @@ $r.render("table") </div> #end -<div class="b_button_group"> +<div class="o_button_group"> #if ($usercount > 0) #if ($r.available("next")) $r.render("next") diff --git a/src/main/java/org/olat/admin/user/bulkChange/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/admin/user/bulkChange/_i18n/LocalStrings_fr.properties index 23b731d4b6e5bf2d4ac998d825b9d74ba020c81b..09d691daf8fd96942e8bab4cf4c72ba5687256c1 100644 --- a/src/main/java/org/olat/admin/user/bulkChange/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/admin/user/bulkChange/_i18n/LocalStrings_fr.properties @@ -27,9 +27,9 @@ step2.content=Les modifications suivantes seront effectu\u00E9es avec "Finir". step2.description=Contr\u00F4le/Aper\u00E7u step2.novalidChanges=Vous n'avez effectu\u00E9 aucune modification, l'assistant ne peut pas \u00EAtre termin\u00E9 ainsi. table.role.admin=Administration de syst\u00E8me -table.role.author=auteur +table.role.author=Auteur table.role.groupadmin=Administrateur des groupes -table.role.status=statut +table.role.status=Statut table.role.useradmin=Administrateur des utilisateurs -table.user.login=nom d'utilisateur +table.user.login=Nom d'utilisateur title=Modifications des attributs d'utilisateurs diff --git a/src/main/java/org/olat/admin/user/delete/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/admin/user/delete/_i18n/LocalStrings_fr.properties index a9e3e4b8de95bbdab132e9ae2502d055e403c95f..0968806e62c33bd8b11fe4ee96ddbe6c76fc0808 100644 --- a/src/main/java/org/olat/admin/user/delete/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/admin/user/delete/_i18n/LocalStrings_fr.properties @@ -9,7 +9,7 @@ close=Fermer delete.announcement.email.body=Vous ne vous \u00EAtes plus connect\u00E9 sur OLAT depuis $lastloginduration mois et votre compte sera donc supprim\u00E9 dans $durationdeleteemail jours. Pour \u00E9viter ceci, veuillez vous connecter \u00E0 OLAT.\r\n\r\nCeci concerne $firstname $lastname (nom d'utilisateur OLAT\: $username) delete.announcement.email.subject=Attention\: votre compte d'utilisateur OLAT sera supprim\u00E9 delete.email.announcement.warning.header=Pour les utilisateurs suivants, l'e-mail concernant la suppression de compte n'a pas pu \u00EAtre envoy\u00E9\: <br> -delete.list=nom d'utilisateur +delete.list=Nom d'utilisateur delete.list.example=Un nom d'utilisateur(Login) par ligne\:<br>login1@tu-chemnitz.de<br>login2@tu-dresden.de<br />usw.<br /><br />V\u00E9rifier d'indiquer correctement le domaine de l'universit\u00E9\! delete.reason=Raison de la proc\u00E9dure d'effacement delete.searchuser=Recherche utilisateur \u00E0 supprimer @@ -43,7 +43,7 @@ readyToDelete.delete.confirm=Les comptes d'utilisateur s\u00E9lectionn\u00E9s {0 reason.empty=N'indiquez aucune raison\! selection.feedback.msg=Un e-mail avec avertissement de suppression a \u00E9t\u00E9 envoy\u00E9 aux utilisateurs. status.delete.email.header=Les utilisateurs ci-dessus ont \u00E9t\u00E9 inform\u00E9s par e-mail sur la suppression prochaine de leur compte. Le d\u00E9lai de {0} jours pour une r\u00E9action (r\u00E9ponse ou connexion) n'est pas encore \u00E9coul\u00E9. -table.col.login=nom d'utilisateur +table.col.login=Nom d'utilisateur table.identity.deleteEmail=E-mail de suppression table.users.found=utilisateurs trouv\u00E9s table.users.notfound=Les utilisateurs suivants n'ont pas pu \u00EAtre trouv\u00E9 diff --git a/src/main/java/org/olat/commons/calendar/_content/importedCalConfig.html b/src/main/java/org/olat/commons/calendar/_content/importedCalConfig.html index 0af96f587c7e3b153907d4c8f893afb0140228a6..f21715c0b9ec550642e1bfba25126aa832fe3ffe 100644 --- a/src/main/java/org/olat/commons/calendar/_content/importedCalConfig.html +++ b/src/main/java/org/olat/commons/calendar/_content/importedCalConfig.html @@ -7,7 +7,7 @@ <legend>$r.translate("cal.import.list")</legend> #if (!$insideManager) - <div class="b_float_right"> + <div class="o_button_group o_button_group_right"> $r.render("cal.managecalendars") </div> #end @@ -62,8 +62,5 @@ #if ($calendars.size() > 5) </div> #end - - - </fieldset> - </div> - +</fieldset> +</div> diff --git a/src/main/java/org/olat/commons/calendar/_content/indexWeekly.html b/src/main/java/org/olat/commons/calendar/_content/indexWeekly.html deleted file mode 100644 index 636393a46ff081f1f098428137dc824514acdd7b..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/commons/calendar/_content/indexWeekly.html +++ /dev/null @@ -1,54 +0,0 @@ -<div id="o_cal_config_below_cal_container"> - <div class="o_cal_toptoolbar clearfix"> - - <div class="o_cal_pagination"> - $r.render("cal.thisweek") - $r.render("cal.prevweek") - $r.render("cal.nextweek") - </div> - - <div class="o_cal_gotodate"> - $r.render("cal.gotodate") - </div> - - <div class="o_cal_search"> - $r.render("cal.search.button") - </div> - - #if ($caller == "home") - $r.contextHelpWithWrapper("org.olat.commons.calendar","personal-calendar.html","help.hover.personalcal") - #elseif ($caller == "course") - $r.contextHelpWithWrapper("org.olat.commons.calendar","course-calendar.html","help.hover.coursecal") - #elseif ($caller == "collab") - $r.contextHelpWithWrapper("org.olat.commons.calendar","group-calendar.html","help.hover.groupcal") - #elseif ($caller == "profile") - $r.contextHelpWithWrapper("org.olat.commons.calendar","personal-calendar.html","help.hover.cal") - #end - </div> - <div class="clearfix" style="position:relative;"> - <div class="o_cal_search_subscribe" style="float:left;"> - <span class="o_noti_actions"> - #if ($hasSubscription) - #if ($isSubscribed) - <span class="o_noti_u_icon">$r.render("cal.unsubscribe")</span> - #else - <span class="o_noti_s_icon">$r.render("cal.subscribe")</span> - #end - #end - </span> - </div> - <div class="b_subcr" style="float:right;"> - #if ($r.available("calsubscription")) - $r.render("calsubscription") - #end - </div> - </div> - <div class="o_cal_week_year_label"> $r.translate("cal.week.label") $week - $year </div> - $r.render("calendar") - $r.render("calendarConfig") - #if ($caller == "home") - $r.render("importedCalendarConfig") - #end -</div> - -</div> \ No newline at end of file diff --git a/src/main/java/org/olat/commons/calendar/_content/manageCalendars.html b/src/main/java/org/olat/commons/calendar/_content/manageCalendars.html index 9b3aab04b9105fb3d6d0f9d6cba5aa70b1ffbd9d..50055df32150a0216ac40cf517aa875507cbcf78 100644 --- a/src/main/java/org/olat/commons/calendar/_content/manageCalendars.html +++ b/src/main/java/org/olat/commons/calendar/_content/manageCalendars.html @@ -1,34 +1,29 @@ - #if ($importedCalendarWrappers.size() > 0) - <div class="b_subcolumns"> - <div class="b_c50l"> - <div class="b_subcl"> + <div class="clearfix"> $r.render("importedCalendarConfig") - </div> - </div> - <div class="b_c50r"> - <div class="b_subcr"> + </div> + <div class="clearfix"> #if ($choose == 0) $r.render("fileupload") #else - <div> - Import Calendar<br/><br/> - $r.render("cal.import.type.file") - $r.render("cal.import.type.url")<br/><br/><br/> - </div> + Import Calendar + <div class="o_button_group"> + $r.render("cal.import.type.file") + $r.render("cal.import.type.url") + </div> #end - </div> </div> </div> #else - #if ($choose == 0) - $r.render("fileupload") - #else - <div> - $r.translate("cal.import.title")<br/><br/> - $r.render("cal.import.type.file") - $r.render("cal.import.type.url")<br/><br/><br/> - </div> - #end -#end - + #if ($choose == 0) + $r.render("fileupload") + #else + <div> + $r.translate("cal.import.title") + <div class="o_button_group"> + $r.render("cal.import.type.file") + $r.render("cal.import.type.url") + </div> + </div> + #end +#end \ No newline at end of file diff --git a/src/main/java/org/olat/commons/calendar/ui/MediaLinksController.java b/src/main/java/org/olat/commons/calendar/ui/MediaLinksController.java index 3a3ef957783c109b53293754a211341d01dfe401..d951ff3b21fd858dfe9aedea672fea8b1b1d9bd8 100644 --- a/src/main/java/org/olat/commons/calendar/ui/MediaLinksController.java +++ b/src/main/java/org/olat/commons/calendar/ui/MediaLinksController.java @@ -140,7 +140,7 @@ public class MediaLinksController extends FormBasicController { // custom media action button FormLink mediaButton = uifactory.addFormLink("media_" + id, " ", " ", layoutContainer, Link.NONTRANSLATED); - mediaButton.setCustomEnabledLinkCSS("b_small o_ll_browse"); + mediaButton.setIconLeftCSS("o_icon o_icon_browse"); mediaButton.setUserObject(link); link.setMediaButton(mediaButton); diff --git a/src/main/java/org/olat/core/commons/controllers/linkchooser/_content/internallinkchooser.html b/src/main/java/org/olat/core/commons/controllers/linkchooser/_content/internallinkchooser.html index 892e37df630d425fe8b67889e66e2f7133fedcbe..1f744cf215cc4ebdaefc5f2cf770b0e1943c3fcf 100644 --- a/src/main/java/org/olat/core/commons/controllers/linkchooser/_content/internallinkchooser.html +++ b/src/main/java/org/olat/core/commons/controllers/linkchooser/_content/internallinkchooser.html @@ -1,15 +1,11 @@ <div id="o_internallink_chooser"> - <h3> - $r.translate("filechooser.select.internallink.title") - </h3> - <p> + <h3>$r.translate("filechooser.select.internallink.title")</h3> $r.render("internalLinkTree") #if ($r.available("selectfile")) - <div class="b_button_group"> + <div class="o_button_group"> $r.render("selectfile") $r.render("cancel") </div> #end - </div> \ No newline at end of file diff --git a/src/main/java/org/olat/core/commons/editor/plaintexteditor/_content/index.html b/src/main/java/org/olat/core/commons/editor/plaintexteditor/_content/index.html index e47f6a1e164a1d754e0ef978491136c146be9715..e83f71b8c7e119d34f6ff27e8767a10670c34db0 100644 --- a/src/main/java/org/olat/core/commons/editor/plaintexteditor/_content/index.html +++ b/src/main/java/org/olat/core/commons/editor/plaintexteditor/_content/index.html @@ -1,4 +1,4 @@ -<div class="b_plaintext_editor"> +<div class="o_plaintext_editor"> $r.render("form") #if ($findtext) <script type="text/javascript"> diff --git a/src/main/java/org/olat/core/commons/modules/bc/meta/MetaInfoController.java b/src/main/java/org/olat/core/commons/modules/bc/meta/MetaInfoController.java index aaba6ffa56cff58373df07f08dfefce0a38af3c3..b4e279034a09b74b976e8c5b5deaa261b855e6fa 100644 --- a/src/main/java/org/olat/core/commons/modules/bc/meta/MetaInfoController.java +++ b/src/main/java/org/olat/core/commons/modules/bc/meta/MetaInfoController.java @@ -201,7 +201,6 @@ public class MetaInfoController extends FormBasicController { if (!hasMetadata(meta)) { moreMetaDataLink = uifactory.addFormLink("mf.more.meta.link", formLayout, Link.LINK_CUSTOM_CSS); - moreMetaDataLink.setCustomEnabledLinkCSS("b_link_moreinfo"); setMetaFieldsVisible(false); } diff --git a/src/main/java/org/olat/core/commons/modules/bc/meta/MetaInfoFormController.java b/src/main/java/org/olat/core/commons/modules/bc/meta/MetaInfoFormController.java index bbeba7403280a0dc6fe19e8894e980f053fe3bc8..f7accf6913cd68e41e292f7a279641629ee1b0b1 100644 --- a/src/main/java/org/olat/core/commons/modules/bc/meta/MetaInfoFormController.java +++ b/src/main/java/org/olat/core/commons/modules/bc/meta/MetaInfoFormController.java @@ -272,7 +272,6 @@ public class MetaInfoFormController extends FormBasicController { if (!hasMetadata(meta)) { moreMetaDataLink = uifactory.addFormLink("mf.more.meta.link", formLayout, Link.LINK_CUSTOM_CSS); - moreMetaDataLink.setCustomEnabledLinkCSS("b_link_moreinfo"); setMetaFieldsVisible(false); } diff --git a/src/main/java/org/olat/core/commons/portlets/iframe/IframePortletRunController.java b/src/main/java/org/olat/core/commons/portlets/iframe/IframePortletRunController.java index d95cae99425254a4cd6faa96a816ecd7eb7ef484..0c0896b9ef1f8349d455f7bc122614d3b9fc15c0 100644 --- a/src/main/java/org/olat/core/commons/portlets/iframe/IframePortletRunController.java +++ b/src/main/java/org/olat/core/commons/portlets/iframe/IframePortletRunController.java @@ -66,40 +66,40 @@ public class IframePortletRunController extends BasicController { private VFSContainer rootDir; private CloseableModalController cmc; - protected IframePortletRunController(UserRequest ureq, WindowControl wControl, Map configuration) { + protected IframePortletRunController(UserRequest ureq, WindowControl wControl, Map<String,String> configuration) { super(ureq, wControl); - this.iframeVC = this.createVelocityContainer("iframePortlet"); + iframeVC = createVelocityContainer("iframePortlet"); // uri is mandatory - String uri = (String)configuration.get("uri"); + String uri = configuration.get("uri"); /* * temp fix for wrong config */ - if(uri != null && uri.startsWith("$")){ + if(uri != null && uri.startsWith("$")) { uri = null; iframeVC.contextPut("ENABLED", Boolean.FALSE); - }else{ + } else { iframeVC.contextPut("ENABLED", Boolean.TRUE); } if (uri == null) log.warn("Missing argument 'uri' in iframeportlet configuration"); - this.iframeVC.contextPut("uri", uri); + iframeVC.contextPut("uri", uri); // height of iframe is mandatory - String height = (String)configuration.get("height"); + String height = configuration.get("height"); if (height == null) log.warn("Missing argument 'height' in iframeportlet configuration"); - this.iframeVC.contextPut("height", height); + iframeVC.contextPut("height", height); // target attribute of iframe, should be unique on page - String id = (String)configuration.get("id"); - this.iframeVC.contextPut("name", id); + String id = configuration.get("id"); + iframeVC.contextPut("name", id); // edit Link only for administrators if (ureq.getUserSession().getRoles().isOLATAdmin()) { - String editFilePath = (String)configuration.get("editFilePath"); + String editFilePath = configuration.get("editFilePath"); boolean editLinkEnabled = false; if (StringHelper.containsNonWhitespace(editFilePath)) { - editLinkEnabled = initEditButton(ureq, editFilePath); + editLinkEnabled = initEditButton(editFilePath); } else { // ignore missing argument // editLinkEnabled false in this case @@ -119,7 +119,7 @@ public class IframePortletRunController extends BasicController { * @param ureq * @param editFilePath */ - public boolean initEditButton(UserRequest ureq, String editFilePath) { + private boolean initEditButton(String editFilePath) { if(editFilePath == null){ log.warn("initEditButton: editFilePath was null"); return false; @@ -164,6 +164,7 @@ public class IframePortletRunController extends BasicController { /** * @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest, org.olat.core.gui.components.Component, org.olat.core.gui.control.Event) */ + @Override public void event(UserRequest ureq, Component source, Event event) { if (source == editLink) { // start up editor controller as modal dialog @@ -177,7 +178,7 @@ public class IframePortletRunController extends BasicController { } } - + @Override public void event(UserRequest ureq, Controller source, Event event) { if (source == editorCtr) { if (event == Event.CANCELLED_EVENT || event == Event.DONE_EVENT) { @@ -192,8 +193,8 @@ public class IframePortletRunController extends BasicController { /** * @see org.olat.core.gui.control.DefaultController#doDispose(boolean) */ + @Override protected void doDispose() { // editorCtr is registerd with listenTo and gets disposed in BasicController } - } diff --git a/src/main/java/org/olat/core/commons/portlets/iframe/_content/iframePortlet.html b/src/main/java/org/olat/core/commons/portlets/iframe/_content/iframePortlet.html index 421728eaad59a169327846b967ec379a6d3ce4b0..6e9da7b27e744eb19c0feec41fea77fbc10d9a84 100644 --- a/src/main/java/org/olat/core/commons/portlets/iframe/_content/iframePortlet.html +++ b/src/main/java/org/olat/core/commons/portlets/iframe/_content/iframePortlet.html @@ -1,5 +1,5 @@ #if ($r.available("edit")) - <div class="b_float_right"> + <div class="o_button_group o_button_group_right"> $r.render("edit") </div> #end diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormJSHelper.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormJSHelper.java index b1fd92f631e1df45cfc5c78d02a1e8d7aef6bc34..7430309da893bcf18e9db408b90d781fe195ce88 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormJSHelper.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormJSHelper.java @@ -42,13 +42,8 @@ import org.olat.core.logging.OLATRuntimeException; * @author patrickb */ public class FormJSHelper { - private static final String READONLYA = "<div class=\"b_form_disabled\">"; - private static final String READONLYB = "</div>"; - - // EXTJS DEP - private static final String[] EXTJSACTIONS = { "dblclick", "click", - "change" }; + private static final String[] EXTJSACTIONS = { "dblclick", "click", "change" }; /** * create for example an @@ -119,12 +114,6 @@ public class FormJSHelper { return sb.toString(); } - public static void appendReadOnly(String text, StringOutput sb) { - sb.append(READONLYA); - sb.append(text); - sb.append(READONLYB); - } - /** * * @param sb diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormLayoutContainer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormLayoutContainer.java index 5603c594c162f732603b731537b4904c050e1015..ed97b48c60dc18f952f6673ed1aabd6c7944a63a 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormLayoutContainer.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormLayoutContainer.java @@ -551,7 +551,7 @@ public class FormLayoutContainer extends FormItemImpl implements FormItemContain /** * Create a layout container that should be only used to render buttons using - * a b_button_group css wrapper. Buttons are ususally rendered on one line + * a o_button_group css wrapper. Buttons are ususally rendered on one line * without indent * * @param name diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/JSDateChooserRenderer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/JSDateChooserRenderer.java index dbe1eeaa42240adaa1bdb31d0207e7f35fca29ef..f88aedf86f008c95795cc41f85e54ad2a9092040 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/JSDateChooserRenderer.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/JSDateChooserRenderer.java @@ -181,7 +181,7 @@ class JSDateChooserRenderer extends DefaultComponentRenderer { shorter += " "; } } - sb.append("<input disabled=\"disabled\" class=\"b_form_element_disabled\" size=\"") + sb.append("<input disabled=\"disabled\" class=\"o_form_element_disabled\" size=\"") .append(te.displaySize) .append("\" value=\"").append(shorter).append("\" /></span>"); } diff --git a/src/main/java/org/olat/core/gui/components/link/LinkFactory.java b/src/main/java/org/olat/core/gui/components/link/LinkFactory.java index 2e3089d017b38beca1e99acd404fbebd3c45150a..35e3de027c96dd1ac35837b991bfb4f0fdc629b4 100644 --- a/src/main/java/org/olat/core/gui/components/link/LinkFactory.java +++ b/src/main/java/org/olat/core/gui/components/link/LinkFactory.java @@ -95,8 +95,6 @@ public class LinkFactory { */ public static Link createIconClose(String title, VelocityContainer vc, ComponentEventListener listener){ Link closeIcon = new Link("closeIcon", "close", "", Link.LINK_CUSTOM_CSS + Link.NONTRANSLATED, vc, listener); - //closeIcon.setCustomEnabledLinkCSS("b_link_close"); - //closeIcon.setCustomDisabledLinkCSS("b_link_close"); closeIcon.setIconLeftCSS("close o_icon o_icon_close o_icon-lg"); closeIcon.setTooltip(title); if(title != null){ diff --git a/src/main/java/org/olat/core/gui/components/panel/LayeredPanelRenderer.java b/src/main/java/org/olat/core/gui/components/panel/LayeredPanelRenderer.java index 95c89f8319a0cf4b641c5d17ba74d4a827053067..a1a93a84b70f3cd875a58142e77e638c774dd944 100644 --- a/src/main/java/org/olat/core/gui/components/panel/LayeredPanelRenderer.java +++ b/src/main/java/org/olat/core/gui/components/panel/LayeredPanelRenderer.java @@ -22,7 +22,6 @@ package org.olat.core.gui.components.panel; import java.util.List; import org.olat.core.gui.components.Component; -import org.olat.core.gui.components.ComponentRenderer; import org.olat.core.gui.render.RenderResult; import org.olat.core.gui.render.Renderer; import org.olat.core.gui.render.RenderingState; @@ -41,15 +40,7 @@ import org.olat.core.gui.translator.Translator; * * @author gnaegi */ -public class LayeredPanelRenderer extends PanelRenderer implements - ComponentRenderer { - - /** - * - */ - public LayeredPanelRenderer() { - // - } +public class LayeredPanelRenderer extends PanelRenderer { /** * @see org.olat.core.gui.render.ui.ComponentRenderer#render(org.olat.core.gui.render.Renderer, @@ -59,6 +50,7 @@ public class LayeredPanelRenderer extends PanelRenderer implements * org.olat.core.gui.translator.Translator, * org.olat.core.gui.render.RenderResult, java.lang.String[]) */ + @Override public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderResult renderResult, String[] args) { @@ -75,7 +67,7 @@ public class LayeredPanelRenderer extends PanelRenderer implements } else { sb.append("<div"); } - sb.append(" class=\"b_layeredPanel b_layer_").append(level).append("\" style=\"z-index:") + sb.append(" class=\"o_layered_panel o_layer_").append(level).append("\" style=\"z-index:") .append(layerLevel).append("\">"); renderer.render(sb, component, args); if (component.getSpanAsDomReplaceable()) { @@ -97,6 +89,7 @@ public class LayeredPanelRenderer extends PanelRenderer implements * org.olat.core.gui.render.URLBuilder, * org.olat.core.gui.translator.Translator) */ + @Override public void renderHeaderIncludes(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderingState rstate) { @@ -116,6 +109,7 @@ public class LayeredPanelRenderer extends PanelRenderer implements * org.olat.core.gui.render.StringOutput, * org.olat.core.gui.components.Component) */ + @Override public void renderBodyOnLoadJSFunctionCall(Renderer renderer, StringOutput sb, Component source, RenderingState rstate) { LayeredPanel panel = (LayeredPanel) source; @@ -128,5 +122,4 @@ public class LayeredPanelRenderer extends PanelRenderer implements } } } - -} +} \ No newline at end of file diff --git a/src/main/java/org/olat/core/gui/components/textboxlist/TextBoxListRenderer.java b/src/main/java/org/olat/core/gui/components/textboxlist/TextBoxListRenderer.java index e2c5ddfbb57e0cb549a3c9525461516e62c33225..bbeceefc8f2aecbf448d9a78583eafb493d1e51f 100644 --- a/src/main/java/org/olat/core/gui/components/textboxlist/TextBoxListRenderer.java +++ b/src/main/java/org/olat/core/gui/components/textboxlist/TextBoxListRenderer.java @@ -115,11 +115,11 @@ public class TextBoxListRenderer extends DefaultComponentRenderer { // comma-separated string String readOnlyContent = tblComponent.getInitialItemsAsString(); if (readOnlyContent.length() > 0) { - output.append("<div class=\"b_with_small_icon_left b_tag_icon\">"); - FormJSHelper.appendReadOnly(readOnlyContent, output); - output.append("</div>"); + output.append("<div><i class='o_icon o_icon_tags'> </i> ") + .append(readOnlyContent) + .append("</div>"); } else { - FormJSHelper.appendReadOnly("-", output); + output.append("-"); } } } diff --git a/src/main/java/org/olat/core/gui/control/generic/ajax/autocompletion/FlexiAutoCompleterController.java b/src/main/java/org/olat/core/gui/control/generic/ajax/autocompletion/FlexiAutoCompleterController.java index 17798d4391b7cb0593bd4081afb1e05f76101517..fff44ed421d9ffc3667210976ad0f4bffd738190 100644 --- a/src/main/java/org/olat/core/gui/control/generic/ajax/autocompletion/FlexiAutoCompleterController.java +++ b/src/main/java/org/olat/core/gui/control/generic/ajax/autocompletion/FlexiAutoCompleterController.java @@ -64,7 +64,7 @@ import org.olat.core.gui.control.winmgr.JSCommand; public class FlexiAutoCompleterController extends FormBasicController { protected static final String COMMAND_SELECT = "select"; - protected static final String JSNAME_INPUTFIELD = "b_autocomplete_input"; + protected static final String JSNAME_INPUTFIELD = "o_autocomplete_input"; protected static final String JSNAME_DATASTORE = "autocompleterDatastore"; protected static final String JSNAME_COMBOBOX = "autocompleterCombobox"; protected static final String AUTOCOMPLETER_NO_RESULT = "AUTOCOMPLETER_NO_RESULT"; diff --git a/src/main/java/org/olat/core/gui/control/guistack/_content/modalDialog.html b/src/main/java/org/olat/core/gui/control/guistack/_content/modalDialog.html index 09ad0eb5a5c19337bd44d38e39d5f3595b53137c..d55e93aeb00974c056792ee683892162d5ec0552 100644 --- a/src/main/java/org/olat/core/gui/control/guistack/_content/modalDialog.html +++ b/src/main/java/org/olat/core/gui/control/guistack/_content/modalDialog.html @@ -4,8 +4,6 @@ ## 2) the modal area: this is the place where the modal content will be. Note that this are ## has no visual effects like a border. It is just a container where the various modal elements ## are placed. -## 3) the overlay: a transparent element that covers the background. links in the background -## are not clickable anymore (see blow) ## First tell Ext on which z-index the next Ext-window can be opened so that is is on top of ## this modal dialog @@ -22,17 +20,8 @@ ## that looses the curser in form fields if this iframe is present. ## See http://www.activewidgets.com/javascript.forum.8495.4/blinking-cursor-lost-in-text.html <!--[if IE]> - <iframe class="b_modal_iebug" src="$r.staticLink("empty.html")" style="position:absolute; left:0; top:0; width:100%; height:100%; border:none; z-index: $zindexshim; opacity:0; filter: alpha(opacity:0);" ></iframe> + <iframe class="o_modal_iebug" src="$r.staticLink("empty.html")" style="position:absolute; left:0; top:0; width:100%; height:100%; border:none; z-index: $zindexshim; opacity:0; filter: alpha(opacity:0);" ></iframe> <![endif]--> - ## 2) -## <div class="b_modal_area clearfix" style="z-index: $zindexarea"> -## <div class="o_scrollblock"> - ## <a name="b_modal"></a> - $r.render("guimsgplace") - $r.render("cont") -## </div> -## </div> - -## 3) -## <div class="b_modal_overlay" style="z-index: $zindexoverlay" id="b_modal_overlay_$r.getCId()"></div> +$r.render("guimsgplace") +$r.render("cont") diff --git a/src/main/java/org/olat/core/gui/dev/controller/_content/index.html b/src/main/java/org/olat/core/gui/dev/controller/_content/index.html index ffac9eb6a296b2334668636f382b4f839f19ef7d..4f758bcccf6fa029682c1be7936a4ebfe8dafdfc 100644 --- a/src/main/java/org/olat/core/gui/dev/controller/_content/index.html +++ b/src/main/java/org/olat/core/gui/dev/controller/_content/index.html @@ -20,7 +20,7 @@ <legend>Tools</legend> <ul class="nav nav-pills"> <li>$r.render("showComponentTree")</li> - <li><a href="#" onclick="o_toggle_log()" class="b_button"><span>JavaScript console</span></a></li> + <li><a href="#" onclick="o_toggle_log()" class="btn btn-default"><span>JavaScript console</span></a></li> #if ($r.available("inlineTrans")) <li>$r.render("inlineTrans")</li> #end diff --git a/src/main/java/org/olat/core/logging/_content/logviewer.html b/src/main/java/org/olat/core/logging/_content/logviewer.html index a8007d3c9ab0ee7c2ccff84e5eda25ee35487da0..344d7a843bb60c5483f91c4efb01d216f637e3b2 100644 --- a/src/main/java/org/olat/core/logging/_content/logviewer.html +++ b/src/main/java/org/olat/core/logging/_content/logviewer.html @@ -1,5 +1,5 @@ -<div id="b_logviewer"> - <div class="b_float_right"> +<div id="o_logviewer"> + <div class="o_button_group o_button_group_right"> #if ($r.available("logviewer.link.update")) $r.render("logviewer.link.update") #end @@ -10,11 +10,9 @@ $r.render("logviewer.link.stop") #end </div> - <div style="font-weight: bold" class="b_logviewer_package"> - $loggingPackage - </div> - <div id="b_logviewer_log" class="b_overflowscrollbox b_border_box"> - <div class="b_xsmall"> + <h4 class="o_logviewer_package">$loggingPackage</h4> + <div id="o_logviewer_log" class="o_scrollbox"> + <div class="xsmall"> #if ($r.available("logviewer.link.update")) $log #end @@ -23,7 +21,7 @@ <script type="text/javascript"> /* <![CDATA[ */ jQuery(function(){ - var logger = jQuery('#b_logviewer_log'); + var logger = jQuery('#o_logviewer_log'); logger.scrollTop=logger.scrollHeight; }); /* ]]> */ diff --git a/src/main/java/org/olat/core/util/Formatter.java b/src/main/java/org/olat/core/util/Formatter.java index 629301294264a784d5beb384767cadbbbbdbaeba..21cb2df88a3575feb5de675580326e943b66c216 100644 --- a/src/main/java/org/olat/core/util/Formatter.java +++ b/src/main/java/org/olat/core/util/Formatter.java @@ -556,14 +556,14 @@ public class Formatter { // OpenOLAT URL's are opened in same window, all other URL's in separate window else if (!url.startsWith(Settings.getServerContextPathURI())) { sb.append(" target=\"_blank\""); - } else { - sb.append(" class=\"b_link_forward\""); } sb.append(">"); if (url.startsWith("mailto")) { sb.append("<i class='o_icon o_icon_mail'> </i> "); } else if (!url.startsWith(Settings.getServerContextPathURI())) { sb.append("<i class='o_icon o_icon_link_extern'> </i> "); + } else { + sb.append("<i class='o_icon o_icon_star'> </i> "); } sb.append(url); diff --git a/src/main/java/org/olat/core/util/i18n/I18nManager.java b/src/main/java/org/olat/core/util/i18n/I18nManager.java index 913a77a8c4a20a2fc5cfb17759122963d1a1a79c..55329dc3874a842064c9302102aebe69f995df17 100644 --- a/src/main/java/org/olat/core/util/i18n/I18nManager.java +++ b/src/main/java/org/olat/core/util/i18n/I18nManager.java @@ -1280,7 +1280,7 @@ public class I18nManager extends BasicManager { * * @param languageKeys The source array of language keys * @param additionalCssClass additional CSS classes that should be added or - * NULL. E.g. you could use 'b_with_small_icon_left' + * NULL. E.g. you could use 'o_flag' * @return */ public String[] createLanguageFlagsCssClasses(String[] languageKeys, String additionalCssClass) { diff --git a/src/main/java/org/olat/core/util/i18n/ui/I18nConfigController.java b/src/main/java/org/olat/core/util/i18n/ui/I18nConfigController.java index f23a84b422af5507a67fced2b7cf50df534bec1d..de3b1b13a472e8b11f514c28f72ea4f4c9b6980e 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/I18nConfigController.java +++ b/src/main/java/org/olat/core/util/i18n/ui/I18nConfigController.java @@ -121,9 +121,9 @@ class I18nConfigController extends FormBasicController { // count translation status int keyCount = i18nMgr.countI18nItems(i18nMgr.getLocaleOrNull(key), null, true); if(keyCount > 0) { - all += " <span class='b_translation_status'>" + (keyCount * 100 / referenceKeyCount) + "%</span>"; + all += " <span class='o_translation_status'>" + (keyCount * 100 / referenceKeyCount) + "%</span>"; } else { - all += " <span class='b_translation_status'>0%</span>"; + all += " <span class='o_translation_status'>0%</span>"; } availableValues[i] = all; } diff --git a/src/main/java/org/olat/core/util/i18n/ui/I18nConfigSubDeleteLangController.java b/src/main/java/org/olat/core/util/i18n/ui/I18nConfigSubDeleteLangController.java index 85b1873fc50c4710c502c4c6a8b695cb44e91d0f..4346c295905956959464c013f7705e8ce73d7ffe 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/I18nConfigSubDeleteLangController.java +++ b/src/main/java/org/olat/core/util/i18n/ui/I18nConfigSubDeleteLangController.java @@ -105,9 +105,8 @@ class I18nConfigSubDeleteLangController extends FormBasicController { availableValues[i] = all; } ArrayHelper.sort(deletableKeys, availableValues, false, true, false); - String[] availableLangCssClasses = i18nMgr.createLanguageFlagsCssClasses(deletableKeys, "b_with_small_icon_left"); deleteLangSelection = uifactory.addCheckboxesVertical("configuration.deleteLangSelection", null, formLayout, deletableKeys, - availableValues, availableLangCssClasses, null, 2); + availableValues, null, null, 2); deleteLangSelection.addActionListener(FormEvent.ONCLICK); // Add cancel and submit in button group layout FormLayoutContainer buttonGroupLayout = FormLayoutContainer.createButtonLayout("buttonGroupLayout", getTranslator()); diff --git a/src/main/java/org/olat/core/util/i18n/ui/InlineTranslationInterceptHandlerController.java b/src/main/java/org/olat/core/util/i18n/ui/InlineTranslationInterceptHandlerController.java index a76c622a4b361f67c3b51aecbfed6bb21af9ef19..f22704f9423411ea8ef50220e921a6edd25feff8 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/InlineTranslationInterceptHandlerController.java +++ b/src/main/java/org/olat/core/util/i18n/ui/InlineTranslationInterceptHandlerController.java @@ -318,7 +318,7 @@ public class InlineTranslationInterceptHandlerController extends BasicController foundPos = false; } else { // check if link is visible, skip other links - int skipPos = stringWithMarkup.indexOf("b_skip", wrapperOpen); + int skipPos = stringWithMarkup.indexOf("o_skip", wrapperOpen); if (skipPos > -1 && skipPos < wrapperClose) { stringWithMarkup = replaceItemWithoutHTMLMarkup(stringWithMarkup, startSPos, startEPos, endSPos, endEPos); continue; diff --git a/src/main/java/org/olat/core/util/i18n/ui/_content/i18nConfiguration.html b/src/main/java/org/olat/core/util/i18n/ui/_content/i18nConfiguration.html index b0d8f7f00e8f1e347564cd009d3bf34bdba51d4e..80b15765a0682a52b8a2c455bec032b9789175c4 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_content/i18nConfiguration.html +++ b/src/main/java/org/olat/core/util/i18n/ui/_content/i18nConfiguration.html @@ -1,4 +1,4 @@ -<div class="b_translation_config"> +<div class="o_translation_config"> <fieldset> <legend>$r.translate("configuration.defaultLangSelection")</legend> <p>$r.translate("configuration.defaultLangSelection.intro")</p> diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_ar.properties index 083bad5d9ada0feea9923101ad289a28d7a5e1eb..479332e2609b0ecdd574cb691605be6b5f29fdb8 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_ar.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_ar.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=\u0627\u0644\u0644\u063A\u0629 {0} \u0644\ configuration.management.delete.success=\u0627\u0644\u0644\u063A\u0629 {0} \u062A\u0645 \u062D\u0630\u0641\u0647\u0627 \u0628\u0646\u062C\u0627\u062D. configuration.management.delete.title=\u062D\u0630\u0641 \u0644\u063A\u0627\u062A \u0627\u0644\u0646\u0638\u0627\u0645 configuration.management.export=\u062A\u0635\u062F\u064A\u0631 \u0644\u063A\u0629 -configuration.management.flag=\u0644\u0643\u0649 \u064A\u062A\u0645 \u062A\u062E\u0635\u064A\u0635 \u0631\u0645\u0632 (\u0627\u0644\u0639\u0644\u0645) \u0644\u0644\u063A\u0629 \u0627\u0644\u062C\u062F\u064A\u062F\u0629 \u0623\u0648 \u0627\u0644\u062A\u0649 \u062A\u0645 \u0627\u0633\u062A\u064A\u0631\u0627\u062F\u0647\u0627 \u060C \u0641\u0625\u0646\u0647 \u064A\u0631\u062C\u0649 \u0625\u0636\u0627\u0641\u0629\r\nCSS class "b_flag_LANGKEY"\r\n \u0648\u0630\u0644\u0643 \u0644\u0644\u0645\u0644\u0641\r\nwebapp/static/themes/default/all/brasato.css +configuration.management.flag=\u0644\u0643\u0649 \u064A\u062A\u0645 \u062A\u062E\u0635\u064A\u0635 \u0631\u0645\u0632 (\u0627\u0644\u0639\u0644\u0645) \u0644\u0644\u063A\u0629 \u0627\u0644\u062C\u062F\u064A\u062F\u0629 \u0623\u0648 \u0627\u0644\u062A\u0649 \u062A\u0645 \u0627\u0633\u062A\u064A\u0631\u0627\u062F\u0647\u0627 \u060C \u0641\u0625\u0646\u0647 \u064A\u0631\u062C\u0649 \u0625\u0636\u0627\u0641\u0629\r\nCSS class "o_flag_LANGKEY"\r\n \u0648\u0630\u0644\u0643 \u0644\u0644\u0645\u0644\u0641\r\nwebapp/static/themes/default/all/brasato.css configuration.management.import=\u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0644\u063A\u0629 configuration.management.intro=\u064A\u0631\u062C\u0649 \u0627\u062E\u062A\u064A\u0627\u0631 \u0623\u062D\u062F \u0627\u0644\u0625\u062C\u0631\u0627\u0621\u0627\u062A \u0627\u0644\u062A\u0649 \u062A\u0648\u062C\u062F \u0628\u0627\u0644\u0623\u0633\u0641\u0644 \u0644\u0625\u062F\u0627\u0631\u0629 \u0644\u063A\u0627\u062A \u0623\u0648\u0644\u0627\u062A. configuration.management.package.delete=\u062D\u0630\u0641 \u062D\u0632\u0645 \u0627\u0644\u0644\u063A\u0629 diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_bg.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_bg.properties index b503663df9621e118f780351f73908e3ed360686..9e0b66c4feea927f786218b0bc6394e6ca42fbd0 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_bg.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_bg.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=\u0415\u0437\u0438\u043A\u044A\u0442 {0} \ configuration.management.delete.success=\u0415\u0437\u0438\u043A\u044A\u0442 {0} \u0435 \u0438\u0437\u0442\u0440\u0438\u0442 \u0443\u0441\u043F\u0435\u0448\u043D\u043E. configuration.management.delete.title=\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043D\u0435 \u043D\u0430 \u0441\u0438\u0441\u0442\u0435\u043C\u043D\u0438 \u0435\u0437\u0438\u0446\u0438 configuration.management.export=\u0418\u0437\u043D\u0435\u0441\u0435\u0442\u0435 \u0435\u0437\u0438\u043A -configuration.management.flag=\u0410\u043A\u043E \u0438\u0441\u043A\u0430\u0442\u0435 \u0434\u0430 \u043F\u0440\u0438\u0431\u0430\u0432\u0438\u0442\u0435 \u0441\u0438\u043C\u0432\u043E\u043B (\u0437\u043D\u0430\u043C\u0435) \u043A\u044A\u043C \u043D\u043E\u0432\u0438\u0442\u0435 \u0438\u043B\u0438 \u0432\u043D\u0435\u0441\u0435\u043D\u0438 \u0435\u0437\u0438\u0446\u0438, \u043C\u043E\u043B\u044F \u043F\u0440\u0438\u0431\u0430\u0432\u0435\u0442\u0435 CSS \u043A\u043B\u0430\u0441 "b_flag_LANGKEY" \u043A\u044A\u043C \u0444\u0430\u0439\u043B\u0430 webapp/static/themes/default/all/brasato.css +configuration.management.flag=\u0410\u043A\u043E \u0438\u0441\u043A\u0430\u0442\u0435 \u0434\u0430 \u043F\u0440\u0438\u0431\u0430\u0432\u0438\u0442\u0435 \u0441\u0438\u043C\u0432\u043E\u043B (\u0437\u043D\u0430\u043C\u0435) \u043A\u044A\u043C \u043D\u043E\u0432\u0438\u0442\u0435 \u0438\u043B\u0438 \u0432\u043D\u0435\u0441\u0435\u043D\u0438 \u0435\u0437\u0438\u0446\u0438, \u043C\u043E\u043B\u044F \u043F\u0440\u0438\u0431\u0430\u0432\u0435\u0442\u0435 CSS \u043A\u043B\u0430\u0441 "o_flag_LANGKEY" \u043A\u044A\u043C \u0444\u0430\u0439\u043B\u0430 webapp/static/themes/default/all/brasato.css configuration.management.import=\u0412\u043D\u0435\u0441\u0435\u0442\u0435 \u0435\u0437\u0438\u043A configuration.management.intro=\u041C\u043E\u043B\u044F, \u0438\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0435\u0434\u043D\u043E \u043E\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044F\u0442\u0430 \u043F\u043E-\u0434\u043E\u043B\u0443, \u0437\u0430 \u0434\u0430 \u043C\u0435\u043D\u0430\u0436\u0438\u0440\u0430\u0442\u0435 \u0435\u0437\u0438\u0446\u0438\u0442\u0435 \u043D\u0430 \u0441\u0438\u0441\u0442\u0435\u043C\u0430\u0442\u0430. configuration.management.package.delete=\u0418\u0437\u0442\u0440\u0438\u0439\u0442\u0435 \u0435\u0437\u0438\u043A\u043E\u0432\u0438 \u043F\u0430\u043A\u0435\u0442\u0438 diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_de.properties index d75b264a21a81a47e0e78e086e46254b4035cf7a..71e55cc7435937be7afaa98134c1140b4d372860 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_de.properties @@ -46,7 +46,7 @@ configuration.management.delete.error=Die Sprache {0} kann nicht gel\u00F6scht w configuration.management.delete.success=Die Sprachen {0} wurden erfolgreich gel\u00F6scht. configuration.management.delete.title=L\u00F6schen von Systemsprachen configuration.management.export=Sprache exportieren -configuration.management.flag=Um neu angelegten oder importierten Sprachen ein Fahnensymbol zuzuweisen, f\u00FCgen Sie eine CSS klassse "b_flag_LANGKEY" in die Datei webapp/static/themes/openolat/all/_icons.scss ein. +configuration.management.flag=Um neu angelegten oder importierten Sprachen ein Fahnensymbol zuzuweisen, f\u00FCgen Sie eine CSS klassse "o_flag_LANGKEY" in die Datei webapp/static/themes/openolat/all/_icons.scss ein. configuration.management.import=Sprache importieren configuration.management.intro=W\u00E4hlen Sie eine der untenstehenden Aktionen um Sprachen zu verwalten. configuration.management.package.delete=Sprachpakete l\u00F6schen diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_el.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_el.properties index cba2f3556a95cff41b039bf1b12a63e72d0a602d..21400f0b40df0da96817684ea926c881d87d9a5e 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_el.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_el.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=\u0397 \u03B3\u03BB\u03CE\u03C3\u03C3\u03B configuration.management.delete.success=\u039F\u03B9 \u03B3\u03BB\u03CE\u03C3\u03C3\u03B5\u03C2 {0} \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03C4\u03B7\u03BA\u03B1\u03BD \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2. configuration.management.delete.title=\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03B3\u03BB\u03C9\u03C3\u03C3\u03CE\u03BD \u03C3\u03C5\u03C3\u03C4\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2 configuration.management.export=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE \u03B3\u03BB\u03CE\u03C3\u03C3\u03B1\u03C2 -configuration.management.flag=\u03A0\u03C1\u03BF\u03BA\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5 \u03BD\u03B1 \u03B4\u03B9\u03B1\u03C4\u03B5\u03B8\u03BF\u03CD\u03BD \u03BF\u03B9 \u03BD\u03AD\u03B5\u03C2 \u03AE \u03B5\u03B9\u03C3\u03B7\u03B3\u03BC\u03AD\u03BD\u03B5\u03C2 \u03B3\u03BB\u03CE\u03C3\u03C3\u03B5\u03C2 \u03C3\u03B5 \u03AD\u03BD\u03B1 \u03C3\u03CD\u03BC\u03B2\u03BF\u03BB\u03BF (\u03C3\u03B7\u03BC\u03B1\u03AF\u03B1) \u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03C0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C3\u03C4\u03B5 \u03C4\u03B7\u03BD \u03BA\u03BB\u03AC\u03C3\u03C3\u03B7 CSS "b_flag_LANGKEY" \u03C3\u03C4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF webapp/static/themes/default/all/brasato.css +configuration.management.flag=\u03A0\u03C1\u03BF\u03BA\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5 \u03BD\u03B1 \u03B4\u03B9\u03B1\u03C4\u03B5\u03B8\u03BF\u03CD\u03BD \u03BF\u03B9 \u03BD\u03AD\u03B5\u03C2 \u03AE \u03B5\u03B9\u03C3\u03B7\u03B3\u03BC\u03AD\u03BD\u03B5\u03C2 \u03B3\u03BB\u03CE\u03C3\u03C3\u03B5\u03C2 \u03C3\u03B5 \u03AD\u03BD\u03B1 \u03C3\u03CD\u03BC\u03B2\u03BF\u03BB\u03BF (\u03C3\u03B7\u03BC\u03B1\u03AF\u03B1) \u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03C0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C3\u03C4\u03B5 \u03C4\u03B7\u03BD \u03BA\u03BB\u03AC\u03C3\u03C3\u03B7 CSS "o_flag_LANGKEY" \u03C3\u03C4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF webapp/static/themes/default/all/brasato.css configuration.management.import=\u0395\u03B9\u03C3\u03B1\u03B3\u03C9\u03B3\u03AE \u03B3\u03BB\u03CE\u03C3\u03C3\u03B1\u03C2 configuration.management.intro=\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03BC\u03AF\u03B1 \u03B1\u03C0\u03BF \u03C4\u03B9\u03C2 \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03B4\u03C1\u03B1\u03C3\u03C4\u03B7\u03C1\u03B9\u03CC\u03C4\u03B7\u03C4\u03B5\u03C2 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B4\u03B9\u03B1\u03C7\u03B5\u03B9\u03C1\u03B9\u03C3\u03C4\u03B5\u03AF\u03C4\u03B5 \u03C4\u03B9\u03C2 \u03B3\u03BB\u03CE\u03C3\u03C3\u03B5\u03C2 \u03C4\u03BF\u03C5 OLAT. configuration.management.package.delete=\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03C0\u03B1\u03BA\u03AD\u03C4\u03C9\u03BD \u03B3\u03BB\u03CE\u03C3\u03C3\u03B1\u03C2 diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_en.properties index fbd415664e3402a1f87eb54a168660fbc34737c7..2152f20a7a5151a82fe3497328507b60d221f6c5 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_en.properties @@ -46,7 +46,7 @@ configuration.management.delete.error=The language {0} cannot be deleted since i configuration.management.delete.success=The languages {0} have been deleted successfully. configuration.management.delete.title=Deletion of system languages configuration.management.export=Export language -configuration.management.flag=In order to allocate new or imported languages to a symbol (flag) please add the CSS class "b_flag_LANGKEY" to the file webapp/static/themes/openolat/all/_icons.scss +configuration.management.flag=In order to allocate new or imported languages to a symbol (flag) please add the CSS class "o_flag_LANGKEY" to the file webapp/static/themes/openolat/all/_icons.scss configuration.management.import=Import language configuration.management.intro=Please select one of the actions below to manage OpenOLAT's languages. configuration.management.package.delete=Delete language packages diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_es.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_es.properties index 77636d2d1749572ac1e8f730f71da3e4b05e5ac6..d4ed2ac164544afc86760e96e17e61e76bdb6a74 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_es.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_es.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=El idioma {0} no puede ser eliminado ya qu configuration.management.delete.success=Los idiomas {0} se han eliminado correctamente. configuration.management.delete.title=Eliminaci\u00F3n de idiomas de sistema configuration.management.export=Exportar idioma -configuration.management.flag=Para asignarle un s\u00EDmbolo (bandera) a los idiomas nuevos o importados, por favor agregue la clase CSS "b_flag_LANGKEY" al archivo webapp/static/themes/openolat/all/_icons.scss +configuration.management.flag=Para asignarle un s\u00EDmbolo (bandera) a los idiomas nuevos o importados, por favor agregue la clase CSS "o_flag_LANGKEY" al archivo webapp/static/themes/openolat/all/_icons.scss configuration.management.import=Importar idioma configuration.management.intro=Por favor, seleccione una de las acciones para administrar los idiomas de OLAT configuration.management.package.delete=Eliminar paquetes de idioma diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_fr.properties index 4ca3e531cdf4c19dd101bb996291df86a2631421..9fed6bea277e9e178ca69890f5a171c3234a338c 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_fr.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=La langue {0} ne peut pas \u00EAtre effac\ configuration.management.delete.success=Les langues {0} ont \u00E9t\u00E9 supprim\u00E9es avec succ\u00E8s. configuration.management.delete.title=Effacer des langues syst\u00E8me configuration.management.export=Exporter la langue -configuration.management.flag=Pour affecter un symbole de drapeau \u00E0 une langue nouvellement cr\u00E9\u00E9e ou import\u00E9e, ajouter un classe CSS 'b_flag_LANGKEY' dans le fichier webapp/static/themes/openolat/all/_icons.scss +configuration.management.flag=Pour affecter un symbole de drapeau \u00E0 une langue nouvellement cr\u00E9\u00E9e ou import\u00E9e, ajouter un classe CSS 'o_flag_LANGKEY' dans le fichier webapp/static/themes/openolat/all/_icons.scss configuration.management.import=Importer langue configuration.management.intro=S\u00E9lectionnez une des actions ci-dessus pour administer les langues. configuration.management.package.delete=Effacer les paquets de langues diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_it.properties index 325a5bb810d99c0fd7f3b98828f77a6331b3b4db..7d58d1921e92afa0f1b0369c6eb8b021254a7aad 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_it.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_it.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=La lingua {0} non ha potuto essere elimina configuration.management.delete.success=Le lingue {0} sono state eliminate. configuration.management.delete.title=Eliminazione delle lingue di sistema configuration.management.export=Esportare lingua -configuration.management.flag=Per attribuire il simbolo della bandiera alle lingue generate o importate, aggiunga una classe css "b_flag_LANGKEY" nel file webapp/static/themes/openolat/all/_icons.scss +configuration.management.flag=Per attribuire il simbolo della bandiera alle lingue generate o importate, aggiunga una classe css "o_flag_LANGKEY" nel file webapp/static/themes/openolat/all/_icons.scss configuration.management.import=Importare lingua configuration.management.intro=Selezioni una delle azioni sottostanti per amministrare le lingue. configuration.management.package.delete=Eliminare pacchetti linguistici diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_jp.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_jp.properties index 7d8bcaa05ea6791593ed735d5331ed786dc4937f..e6a0c2063151c354909beee8febfdb54710da68f 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_jp.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_jp.properties @@ -44,7 +44,7 @@ configuration.management.delete.error=\u6A19\u6E96\u307E\u305F\u306F\u4EE3\u66FF configuration.management.delete.success=\u8A00\u8A9E {0} \u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F\u3002 configuration.management.delete.title=\u30B7\u30B9\u30C6\u30E0\u8A00\u8A9E\u306E\u524A\u9664 configuration.management.export=\u8A00\u8A9E\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3059\u308B -configuration.management.flag=\u65B0\u3057\u3044\u3001\u307E\u305F\u306F\u30A4\u30F3\u30DD\u30FC\u30C8\u3055\u308C\u305F\u8A00\u8A9E\u3092\u30B7\u30F3\u30DC\u30EB (\u30D5\u30E9\u30B0) \u306B\u5272\u308A\u5F53\u3066\u308B\u306B\u306F\u3001webapp/static/themes/default/all/brasato.css\u306BCSS\u30AF\u30E9\u30B9\u300Cb_flag_LANGKEY\u300D\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +configuration.management.flag=\u65B0\u3057\u3044\u3001\u307E\u305F\u306F\u30A4\u30F3\u30DD\u30FC\u30C8\u3055\u308C\u305F\u8A00\u8A9E\u3092\u30B7\u30F3\u30DC\u30EB (\u30D5\u30E9\u30B0) \u306B\u5272\u308A\u5F53\u3066\u308B\u306B\u306F\u3001webapp/static/themes/default/all/brasato.css\u306BCSS\u30AF\u30E9\u30B9\u300Co_flag_LANGKEY\u300D\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002 configuration.management.import=\u8A00\u8A9E\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3059\u308B configuration.management.intro=OLAT\u8A00\u8A9E\u3092\u7BA1\u7406\u3059\u308B\u306B\u306F\u3001\u4EE5\u4E0B\u306E\u51E6\u7406\u306E1\u3064\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 configuration.management.package.delete=\u8A00\u8A9E\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u524A\u9664\u3059\u308B diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_pl.properties index fed84c598c6051a7f2702ffa131c6a91a25c1e30..6cee8aea2c63cad9dd9c1b6749bcce3209d527e7 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_pl.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_pl.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=J\u0119zyk {0} nie mo\u017Ce zosta\u0107 u configuration.management.delete.success=J\u0119zyk {0} zosta\u0142 pomy\u015Blnie usuni\u0119ty. configuration.management.delete.title=Usuwanie j\u0119zyka systemowego configuration.management.export=Eksportuj j\u0119zyk -configuration.management.flag=Aby przypisa\u0107 nowy lub zaimportowany j\u0119zyk do symbolu (flagi), dodaj klas\u0119 CSS "b_flag_LANGKEY" w pliku webapp/static/themes/openolat/all/_icons.scss +configuration.management.flag=Aby przypisa\u0107 nowy lub zaimportowany j\u0119zyk do symbolu (flagi), dodaj klas\u0119 CSS "o_flag_LANGKEY" w pliku webapp/static/themes/openolat/all/_icons.scss configuration.management.import=Importuj j\u0119zyk configuration.management.intro=Wybierz jedn\u0105 z poni\u017Cszych akcji, aby zarz\u0105dza\u0107 j\u0119zykami w OLAT. configuration.management.package.delete=Usu\u0144 pakiety j\u0119zykowe diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_pt_BR.properties index 977b4d448a389baad4261d9e980d25f2282fd40b..24c5f83a860232cfc9411b4f66bfa35c94d6da47 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_pt_BR.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_pt_BR.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=O idioma {0} n\u00E3o pode ser removido po configuration.management.delete.success=Os idiomas {0} foram removidos com sucesso. configuration.management.delete.title=Remo\u00E7\u00E3o dos idiomas do sistema configuration.management.export=Exportar idioma -configuration.management.flag=Para alocar idiomas novos ou importados para um simbolo (bandeira) favor adicione o CSS "b_flag_LANGKEY" para o arquivo webapp/static/themes/openolat/all/_icons.scss +configuration.management.flag=Para alocar idiomas novos ou importados para um simbolo (bandeira) favor adicione o CSS "o_flag_LANGKEY" para o arquivo webapp/static/themes/openolat/all/_icons.scss configuration.management.import=Importar idioma configuration.management.intro=Favor selecione uma das a\u00E7\u00F5es a baixo para gerenciar os idiomas do OLAT. configuration.management.package.delete=Remova os pacotes de idioma. diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_ru.properties index 28ab52bb6790ba52c9c39b69e28292ed07dc15f7..2b583826d50880228a1779189f7f08aa54315c8a 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_ru.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=\u042F\u0437\u044B\u043A {0} \u043D\u0435\ configuration.management.delete.success=\u042F\u0437\u044B\u043A\u0438 {0} \u0431\u044B\u043B\u0438 \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0443\u0434\u0430\u043B\u0435\u043D\u044B. configuration.management.delete.title=\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u0435 \u044F\u0437\u044B\u043A\u043E\u0432 \u0441\u0438\u0441\u0442\u0435\u043C\u044B configuration.management.export=\u042D\u043A\u0441\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u044F\u0437\u044B\u043A -configuration.management.flag=\u0414\u043B\u044F \u0442\u043E\u0433\u043E, \u0447\u0442\u043E\u0431\u044B \u043D\u043E\u0432\u043E\u043C\u0443 \u0438\u043B\u0438 \u0438\u043C\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u043C\u0443 \u044F\u0437\u044B\u043A\u0443 \u043F\u0440\u0438\u0441\u0432\u043E\u0438\u0442\u044C \u0444\u043B\u0430\u0436\u043E\u043A \u0441\u0442\u0440\u0430\u043D\u044B, \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 CSS \u043A\u043B\u0430\u0441\u0441 "b_flag_LANGKEY" \u043A \u0444\u0430\u0439\u043B\u0443 webapp/static/themes/default/all/brasato.css +configuration.management.flag=\u0414\u043B\u044F \u0442\u043E\u0433\u043E, \u0447\u0442\u043E\u0431\u044B \u043D\u043E\u0432\u043E\u043C\u0443 \u0438\u043B\u0438 \u0438\u043C\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u043C\u0443 \u044F\u0437\u044B\u043A\u0443 \u043F\u0440\u0438\u0441\u0432\u043E\u0438\u0442\u044C \u0444\u043B\u0430\u0436\u043E\u043A \u0441\u0442\u0440\u0430\u043D\u044B, \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 CSS \u043A\u043B\u0430\u0441\u0441 "o_flag_LANGKEY" \u043A \u0444\u0430\u0439\u043B\u0443 webapp/static/themes/default/all/brasato.css configuration.management.import=\u0418\u043C\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u044F\u0437\u044B\u043A configuration.management.intro=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043E\u0434\u043D\u043E \u0438\u0437 \u0432\u043D\u0438\u0437\u0443 \u043F\u0440\u0438\u0432\u0435\u0434\u0451\u043D\u043D\u044B\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439, \u0447\u0442\u043E\u0431\u044B \u0443\u043F\u0440\u0430\u0432\u043B\u044F\u0442\u044C \u044F\u0437\u044B\u043A\u0430\u043C\u0438 \u0432 \u0441\u0438\u0441\u0442\u0435\u043C\u0435. configuration.management.package.delete=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u044F\u0437\u044B\u043A\u043E\u0432\u044B\u0435 \u043F\u0430\u043A\u0435\u0442\u044B diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_zh_CN.properties index 9861f4d13b6fe5d0049ba5ddee5fb7a66fe7091b..4a13adf31808d676d943eef45e36031f7e99b8dc 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_zh_CN.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_zh_CN.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=\u7531\u4E8E\u8BED\u8A00{0}\u662F\u6807\u5 configuration.management.delete.success=\u6210\u529F\u5220\u9664\u8BED\u8A00{0}. configuration.management.delete.title=\u5220\u9664\u7CFB\u7EDF\u8BED\u8A00 configuration.management.export=\u5BFC\u51FA\u8BED\u8A00\u5305 -configuration.management.flag=\u4E3A\u4E86\u5B9A\u4F4D\u65B0\u7684\u6216\u5DF2\u5BFC\u5165\u5230\u6807\u8BC6(\u7279\u6B8A\u8BB0\u53F7)\u7684\u8BED\u8A00\uFF0C\u8BF7\u60A8\u6DFB\u52A0CSS\u6837\u5F0F "b_flag_LANGKEY" \u5230\u6587\u4EF6 webapp/static/themes/openolat/all/_icons.scss \u4E2D\u3002 +configuration.management.flag=\u4E3A\u4E86\u5B9A\u4F4D\u65B0\u7684\u6216\u5DF2\u5BFC\u5165\u5230\u6807\u8BC6(\u7279\u6B8A\u8BB0\u53F7)\u7684\u8BED\u8A00\uFF0C\u8BF7\u60A8\u6DFB\u52A0CSS\u6837\u5F0F "o_flag_LANGKEY" \u5230\u6587\u4EF6 webapp/static/themes/openolat/all/_icons.scss \u4E2D\u3002 configuration.management.import=\u5BFC\u5165\u8BED\u8A00 configuration.management.intro=\u8BF7\u9009\u62E9\u5176\u4E2D\u4E0B\u9762\u4E00\u4E2A\u52A8\u4F5C\u6765\u7BA1\u7406OLAT\u7684\u8BED\u8A00\u3002 configuration.management.package.delete=\u5220\u9664\u8BED\u8A00\u5305 diff --git a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_zh_TW.properties b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_zh_TW.properties index ed85fe5e4ad6fbc7a040cfeb70868b74154736b0..a85ad2bcc898053ae6a994f72eb605ecfd3c1866 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_zh_TW.properties +++ b/src/main/java/org/olat/core/util/i18n/ui/_i18n/LocalStrings_zh_TW.properties @@ -45,7 +45,7 @@ configuration.management.delete.error=\u8A9E\u8A00 {0} \u7121\u6CD5\u88AB\u522A\ configuration.management.delete.success=\u8A9E\u8A00 {0} \u5DF2\u88AB\u6210\u529F\u522A\u9664\u4E86\u3002 configuration.management.delete.title=\u522A\u9664\u7CFB\u7D71\u8A9E\u8A00 configuration.management.export=\u532F\u51FA\u8A9E\u8A00 -configuration.management.flag=\u70BA\u4E86\u5206\u914D\u65B0\u7684\u6216\u532F\u5165\u7684\u8A9E\u8A00\u5230\u4E00\u500B\u8C61\u5FB5(\u570B\u65D7)\uFF0C\u8ACB\u65B0\u589E CSS \u985E\u5225 "b_flag_LANGKEY" \u5230\u6A94\u6848 webapp/static/themes/openolat/all/_icons.scss +configuration.management.flag=\u70BA\u4E86\u5206\u914D\u65B0\u7684\u6216\u532F\u5165\u7684\u8A9E\u8A00\u5230\u4E00\u500B\u8C61\u5FB5(\u570B\u65D7)\uFF0C\u8ACB\u65B0\u589E CSS \u985E\u5225 "o_flag_LANGKEY" \u5230\u6A94\u6848 webapp/static/themes/openolat/all/_icons.scss configuration.management.import=\u532F\u5165\u8A9E\u8A00 configuration.management.intro=\u8ACB\u9078\u64C7\u4EE5\u4E0B\u7684\u884C\u52D5\u4F86\u7BA1\u7406 OLAT \u7684\u8A9E\u8A00\u3002 configuration.management.package.delete=\u522A\u9664\u8A9E\u8A00\u5957\u4EF6 diff --git a/src/main/java/org/olat/core/util/mail/_content/mail.html b/src/main/java/org/olat/core/util/mail/_content/mail.html index 90dfed2e0d5d9e8a086e33fe32439f39d4ff8805..699ba3561e7c23d7c839c4e98ba2759f4f943319 100644 --- a/src/main/java/org/olat/core/util/mail/_content/mail.html +++ b/src/main/java/org/olat/core/util/mail/_content/mail.html @@ -1,6 +1,6 @@ #if($r.available("back")) $r.render("back")<br/><br/> #end -<div class="b_mail_message"> +<div class="o_mail_message"> $r.render("mainCmp") </div> \ No newline at end of file diff --git a/src/main/java/org/olat/core/util/mail/_content/mailsTable.html b/src/main/java/org/olat/core/util/mail/_content/mailsTable.html index 197fea78d0040fe3fe9f42c7c2aae3705fe53e6d..b62b22870ec75183558fef93443481d73f9f0ad1 100644 --- a/src/main/java/org/olat/core/util/mail/_content/mailsTable.html +++ b/src/main/java/org/olat/core/util/mail/_content/mailsTable.html @@ -1,5 +1,5 @@ -<h4 class="b_with_small_icon_left b_mail_icon">$title</h4> +<h4><i class="o_icon o_icon_mail"> </i> $title</h4> #if($description) - <i>$description</i> + <p class="o_info">$description</p> #end $r.render("tableCmp") \ No newline at end of file diff --git a/src/main/java/org/olat/core/util/mail/ui/MailActionExtension.java b/src/main/java/org/olat/core/util/mail/ui/MailActionExtension.java deleted file mode 100644 index 1a5ecfb352a78d400726452361a3f30dc44ce700..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/core/util/mail/ui/MailActionExtension.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * <a href="http://www.openolat.org"> - * OpenOLAT - Online Learning and Training</a><br> - * <p> - * Licensed under the Apache License, Version 2.0 (the "License"); <br> - * you may not use this file except in compliance with the License.<br> - * You may obtain a copy of the License at the - * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> - * <p> - * Unless required by applicable law or agreed to in writing,<br> - * software distributed under the License is distributed on an "AS IS" BASIS, <br> - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> - * See the License for the specific language governing permissions and <br> - * limitations under the License. - * <p> - * Initial code contributed and copyrighted by<br> - * frentix GmbH, http://www.frentix.com - * <p> - */ -package org.olat.core.util.mail.ui; - -import org.olat.core.extensions.action.GenericActionExtension; -import org.olat.core.gui.UserRequest; -import org.olat.core.gui.components.tree.GenericTreeNode; - -/** - * - * Description:<br> - * MailActionExtension is used in MinimalHomeController (Home-menu). it returns - * a MailTreeNode which displays an iconDecorator if user has unread e-mails in - * his inbox - * - * <P> - * Initial Date: 13.09.2011 <br> - * - * @author Sergio Trentini, sergio.trentini@frentix.com, www.frentix.com - */ -public class MailActionExtension extends GenericActionExtension { - - @Override - public GenericTreeNode createMenuNode(UserRequest ureq) { - GenericTreeNode node = new MailTreeNode(ureq.getIdentity()); - node.setAltText(getDescription(ureq.getLocale())); - node.setTitle(getActionText(ureq.getLocale())); - node.setIconCssClass(getIconCssClass()); - node.setCssClass(getCssClass()); - - node.setUserObject(this); - - return node; - } - -} diff --git a/src/main/java/org/olat/core/util/mail/ui/MailDataModel.java b/src/main/java/org/olat/core/util/mail/ui/MailDataModel.java index fe2038f7623a8b4b985c29a0b3ad6ca7cd07feb0..26c613c4103973e737e073b1289595612f7d0abb 100644 --- a/src/main/java/org/olat/core/util/mail/ui/MailDataModel.java +++ b/src/main/java/org/olat/core/util/mail/ui/MailDataModel.java @@ -170,7 +170,7 @@ public class MailDataModel implements TableDataModelWithMarkableRows<DBMailLight for(DBMailRecipient recipient:mail.getRecipients()) { if(recipient != null && recipient.getRecipient() != null && recipient.getRecipient().equalsByPersistableKey(identity)) { if (!recipient.getRead()) { - return "b_marked"; + return "o_marked"; } } } diff --git a/src/main/java/org/olat/core/util/mail/ui/MailTreeNode.java b/src/main/java/org/olat/core/util/mail/ui/MailTreeNode.java deleted file mode 100644 index 3f53ab68ce5d0bad5c5360be9dcf881411189206..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/core/util/mail/ui/MailTreeNode.java +++ /dev/null @@ -1,58 +0,0 @@ -/** - * <a href="http://www.openolat.org"> - * OpenOLAT - Online Learning and Training</a><br> - * <p> - * Licensed under the Apache License, Version 2.0 (the "License"); <br> - * you may not use this file except in compliance with the License.<br> - * You may obtain a copy of the License at the - * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> - * <p> - * Unless required by applicable law or agreed to in writing,<br> - * software distributed under the License is distributed on an "AS IS" BASIS, <br> - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> - * See the License for the specific language governing permissions and <br> - * limitations under the License. - * <p> - * Initial code contributed and copyrighted by<br> - * frentix GmbH, http://www.frentix.com - * <p> - */ -package org.olat.core.util.mail.ui; - -import org.olat.core.CoreSpringFactory; -import org.olat.core.gui.components.tree.GenericTreeNode; -import org.olat.core.id.Identity; -import org.olat.core.util.mail.MailManager; - -/** - * - * Description:<br> - * overwrites <code>getIconDecorator1CssClass()</code> to display a special icon - * if the user has unread mails in his inbox. - * - * <P> - * Initial Date: 24 mars 2011 <br> - * - * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com - * @author strentini, sergio.trentini@frentix.com - * - */ -public class MailTreeNode extends GenericTreeNode { - - private static final long serialVersionUID = -2579792704194953641L; - - private final Identity identity; - - public MailTreeNode(Identity identity) { - this.identity = identity; - } - - - @Override - public String getIconDecorator1CssClass() { - if(CoreSpringFactory.getImpl(MailManager.class).hasNewMail(identity)) { - return "b_mail_new"; - } - return null; - } -} diff --git a/src/main/java/org/olat/course/condition/GroupSelectionController.java b/src/main/java/org/olat/course/condition/GroupSelectionController.java index 6553da13f23cc8781485ec0283e28a0c5df5d362..8f6fcea168953e7f42954e901a8ff73fe3f16179 100644 --- a/src/main/java/org/olat/course/condition/GroupSelectionController.java +++ b/src/main/java/org/olat/course/condition/GroupSelectionController.java @@ -30,13 +30,10 @@ import java.util.List; import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.form.flexible.FormItemContainer; +import org.olat.core.gui.components.form.flexible.elements.FormLink; import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement; -import org.olat.core.gui.components.form.flexible.elements.Reset; -import org.olat.core.gui.components.form.flexible.elements.Submit; import org.olat.core.gui.components.form.flexible.impl.FormBasicController; -import org.olat.core.gui.components.form.flexible.impl.elements.FormLinkImpl; -import org.olat.core.gui.components.form.flexible.impl.elements.FormReset; -import org.olat.core.gui.components.form.flexible.impl.elements.FormSubmit; +import org.olat.core.gui.components.link.Link; import org.olat.core.gui.control.Controller; import org.olat.core.gui.control.Event; import org.olat.core.gui.control.WindowControl; @@ -59,7 +56,7 @@ import org.olat.repository.RepositoryManager; public class GroupSelectionController extends FormBasicController { private MultipleSelectionElement entrySelector; - private FormLinkImpl createNew; + private FormLink createNew; private CourseGroupManager courseGrpMngr; private NewBGController groupCreateCntrllr; private CloseableModalController cmc; @@ -143,20 +140,12 @@ public class GroupSelectionController extends FormBasicController { protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) { if(createEnable) { // easy creation only possible if a default group context available - createNew = new FormLinkImpl("create"); - //is a button - createNew.setCustomEnabledLinkCSS("b_button"); - createNew.setCustomDisabledLinkCSS("b_button o_disabled"); - // create new group/area on the right side - formLayout.add(createNew); + createNew = uifactory.addFormLink("create", formLayout, Link.BUTTON); } entrySelector = uifactory.addCheckboxesVertical("entries", null, formLayout, groupKeys, groupNames, 1); - // submitCancel after checkboxes - Submit subm = new FormSubmit("subm", "apply"); - Reset reset = new FormReset("reset", "cancel"); - formLayout.add(subm); - formLayout.add(reset); + uifactory.addFormSubmitButton("subm", "apply", formLayout); + uifactory.addFormCancelButton("cancel", formLayout, ureq, getWindowControl()); } @Override diff --git a/src/main/java/org/olat/course/config/ui/courselayout/elements/MenuLE.java b/src/main/java/org/olat/course/config/ui/courselayout/elements/MenuLE.java index 42714fb835430dc06784c1b5d0a789086ceb1c6c..dd510dbf0995227ad6b6993aa0488f5372da4ddc 100644 --- a/src/main/java/org/olat/course/config/ui/courselayout/elements/MenuLE.java +++ b/src/main/java/org/olat/course/config/ui/courselayout/elements/MenuLE.java @@ -54,7 +54,7 @@ public class MenuLE extends AbstractLayoutElement { setIframeRelativeChildren(iFrameRelativeChildren); HashMap<String, Integer> mainRelativeChildren = new HashMap<String, Integer>(); - mainRelativeChildren.put("#o_main .b_tree a", 0); + mainRelativeChildren.put("#o_main .o_tree a", 0); setMainRelativeChildren(mainRelativeChildren); ArrayList<AbstractLayoutAttribute> avAttribs = new ArrayList<AbstractLayoutAttribute>(); diff --git a/src/main/java/org/olat/course/nodes/cl/ui/wizard/_content/metadatas_config.html b/src/main/java/org/olat/course/nodes/cl/ui/wizard/_content/metadatas_config.html index 9fa83b36fe49222f8e1af552a83ffca0207181a9..6c9fbfd4a7ee1796a069d13cee9fb87f34bb1db1 100644 --- a/src/main/java/org/olat/course/nodes/cl/ui/wizard/_content/metadatas_config.html +++ b/src/main/java/org/olat/course/nodes/cl/ui/wizard/_content/metadatas_config.html @@ -1,4 +1,4 @@ -<div class="b_form clearfix"> +<div class="o_form clearfix"> <fieldset><legend>$r.contextHelpWithWrapper("$off_chelp_package","$off_chelp_page","$off_chelp_hover") $off_title</legend> <div class="o_desc">$off_desc</div> @@ -11,7 +11,7 @@ <tbody> #foreach($duedate in $duedates) <tr><td>$r.render($duedate.titleName)</td> - <td><div class="b_form_element"> + <td><div class="form-inline"> $r.render($duedate.dueDateName)</div></td></tr> #end </tbody> diff --git a/src/main/java/org/olat/group/ui/homepage/_content/groupcontact.html b/src/main/java/org/olat/group/ui/homepage/_content/groupcontact.html index 9b56c2edf5bfeee33b7b114c59aa5b6fd7d7d663..02934397b60358f4ae7584874989138df6ac4449 100644 --- a/src/main/java/org/olat/group/ui/homepage/_content/groupcontact.html +++ b/src/main/java/org/olat/group/ui/homepage/_content/groupcontact.html @@ -1,4 +1,4 @@ -<h4 class="b_with_small_icon_left b_mail_icon">$r.translate("contactform.title")</h4> +<h2><i class="o_icon o_icon_mail"> </i> $r.translate("contactform.title")</h2> #if ($r.available("contactForm")) $r.render("contactForm") #else diff --git a/src/main/java/org/olat/group/ui/homepage/_content/groupinfodisplay.html b/src/main/java/org/olat/group/ui/homepage/_content/groupinfodisplay.html index 7c259a000b4aa8e22f3409685f8c9b639c16ed70..6aee98a0db7442daf123ca5184b8f28112e20547 100644 --- a/src/main/java/org/olat/group/ui/homepage/_content/groupinfodisplay.html +++ b/src/main/java/org/olat/group/ui/homepage/_content/groupinfodisplay.html @@ -1,5 +1,5 @@ -<div class="o_visitingcard clearfix"><div class="b_floatscrollbox"> - <h4>$r.translate("GroupInfoDisplayController.content.title") <i>$!name</i></h4> +<div class="o_visitingcard clearfix"> + <h2><i class="o_icon o_icon_group"> </i> $r.translate("GroupInfoDisplayController.content.title") <i>$!name</i></h2> <p>$!description</p> <div class="o_visitingcard_content"> <div class="o_visitingcard_image o_bcard_portrait o_bcard_portrait_group"></div> @@ -9,4 +9,4 @@ $!numMembers $r.translate("GroupInfoDisplayController.content.numParticipants") #end </div> -</div></div> \ No newline at end of file +</div> \ No newline at end of file diff --git a/src/main/java/org/olat/group/ui/homepage/_content/groupmembersdisplay.html b/src/main/java/org/olat/group/ui/homepage/_content/groupmembersdisplay.html index 8294411124ed721c588e7638b99287263d87b8e3..26672b710fdc6c5475bdb8169f656415afecaf5e 100644 --- a/src/main/java/org/olat/group/ui/homepage/_content/groupmembersdisplay.html +++ b/src/main/java/org/olat/group/ui/homepage/_content/groupmembersdisplay.html @@ -1,25 +1,19 @@ -<h4>$r.translate("userlist.title")</h4> +<h2><i class="o_icon o_icon_group"> </i> $r.translate("userlist.title")</h2> #if($r.available("owners")) - <h5>$r.translate("userlist.owners.title")</h5> + <h3>$r.translate("userlist.owners.title")</h3> <div class="o_sel_group_coaches"> $r.render("owners") </div> -#else - <div class="o_sel_group_coaches_not_visible" style="display:none;"></div> #end #if($r.available("participants")) - <h5>$r.translate("userlist.participants.title")</h5> + <h3>$r.translate("userlist.participants.title")</h3> <div class="o_sel_group_participants"> $r.render("participants") </div> -#else - <div class="o_sel_group_participants_not_visible" style="display:none;"></div> #end #if($r.available("waitingList")) - <h5>$r.translate("userlist.waitingList.title")</h5> + <h3>$r.translate("userlist.waitingList.title")</h3> <div class="o_sel_group_waiting_list"> $r.render("waitingList") </div> -#else - <div class="o_sel_group_waiting_list_not_visible" style="display:none;"></div> #end \ No newline at end of file diff --git a/src/main/java/org/olat/group/ui/main/_content/index.html b/src/main/java/org/olat/group/ui/main/_content/index.html deleted file mode 100644 index 8dd77f7921fe82a60be10d3cc164af86244c8906..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/group/ui/main/_content/index.html +++ /dev/null @@ -1,6 +0,0 @@ -<h4 class="b_with_small_icon_left b_group_icon"> - $r.translate("index.header") -</h4> -$r.translate("index.intro") -<p /> -$r.render("groupList") diff --git a/src/main/java/org/olat/group/ui/main/_content/newbgform.html b/src/main/java/org/olat/group/ui/main/_content/newbgform.html deleted file mode 100644 index 1eae56272ff590c54db2618c1a5c96fe12b75ffe..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/group/ui/main/_content/newbgform.html +++ /dev/null @@ -1,5 +0,0 @@ -<h4 class="b_with_small_icon_left b_group_icon"> - $r.translate("header.newbgmsg") -</h4> -<p /> -$r.render("createBuddygroupForm") diff --git a/src/main/java/org/olat/gui/demo/guidemo/GuiDemoLinksController.java b/src/main/java/org/olat/gui/demo/guidemo/GuiDemoLinksController.java index 2e4f1013be8b89bf076a5710278e07a1b7b993ed..cec2d45488b9bb92f7b91a0376ec67d73586221f 100644 --- a/src/main/java/org/olat/gui/demo/guidemo/GuiDemoLinksController.java +++ b/src/main/java/org/olat/gui/demo/guidemo/GuiDemoLinksController.java @@ -84,9 +84,9 @@ public class GuiDemoLinksController extends BasicController { buttonSmall = LinkFactory.createButtonSmall("button.small", mainVC, this); button = LinkFactory.createButton("button", mainVC, this); buttonDirty = LinkFactory.createButton("button.dirty", mainVC, this); - buttonDirty.setCustomEnabledLinkCSS("b_button o_button_dirty"); + buttonDirty.setCustomEnabledLinkCSS("btn btn-default o_button_dirty"); buttonPreferred = LinkFactory.createButton("button.preferred", mainVC, this); - buttonPreferred.setCustomEnabledLinkCSS("b_button b_button_preferred"); + buttonPreferred.setCustomEnabledLinkCSS("btn btn-primary"); Link buttonDisabled = LinkFactory.createCustomLink("button.disabled", "button.disabled", "button.disabled", Link.BUTTON, mainVC, this); buttonDisabled.setEnabled(false); @@ -104,7 +104,7 @@ public class GuiDemoLinksController extends BasicController { linkExtern = LinkFactory.createCustomLink("link.ext", "link.ext", "link.ext", Link.LINK, mainVC, this); linkExtern.setIconLeftCSS("o_icon o_icon_link_extern"); linkMail = LinkFactory.createCustomLink("link.mail", "link.mail", "link.mail", Link.LINK, mainVC, this); - linkMail.setCustomEnabledLinkCSS("b_link_mailto"); + linkMail.setIconLeftCSS("o_icon o_icon_mail"); linkPos = LinkFactory.createCustomLink("link.pos", "link.pos", "link.pos", Link.LINK, mainVC, this); linkPos.registerForMousePositionEvent(true); @@ -117,9 +117,9 @@ public class GuiDemoLinksController extends BasicController { TextFactory.createTextComponentFromI18nKey("text.translated", "text.translated", getTranslator(), null, true, mainVC); counterText = TextFactory.createTextComponentFromString("text.simple.counter", "I'm counting events fron this controller: 0", null, true, mainVC); TextFactory.createTextComponentFromString("text.span", "I'm a text in a SPAN", null, true, mainVC); - TextFactory.createTextComponentFromString("text.div", "I'm a text in a DIV (with optional CSS class <b>o_warning b_border_box</b>)", "o_warning b_border_box", false, mainVC); - TextFactory.createTextComponentFromString("text.div.note", "I'm a text in a DIV (with optional CSS class <b>o_note </b>)", "o_note", false, mainVC); - TextFactory.createTextComponentFromString("text.div.dimmed", "I'm a text in a DIV (with optional CSS class <b>b_dimmed b_border_box</b>)", "b_dimmed b_border_box", false, mainVC); + TextFactory.createTextComponentFromString("text.div", "I'm a text in a DIV (with optional CSS class <b>o_warning</b>)", "o_warning", false, mainVC); + TextFactory.createTextComponentFromString("text.div.note", "I'm a text in a DIV (with optional CSS class <b>o_note</b>)", "o_note", false, mainVC); + TextFactory.createTextComponentFromString("text.div.dimmed", "I'm a text in a DIV (with optional CSS class <b>o_info</b>)", "o_info", false, mainVC); //add sourceview control Controller sourceView = new SourceViewController(ureq, wControl, this.getClass(), mainVC); @@ -192,13 +192,12 @@ public class GuiDemoLinksController extends BasicController { @Override protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) { uifactory.addToggleButton("toggle1", "Toggle 1", formLayout, null, null); - FormToggle fi1 = uifactory.addToggleButton("toggle_slide1", " ", formLayout, "b_toggle_slide b_small b_on", "b_toggle_slide b_small"); - FormToggle fi2 = uifactory.addToggleButton("toggle_slide2", " ", formLayout, "b_toggle_slide b_on", "b_toggle_slide"); + FormToggle fi1 = uifactory.addToggleButton("toggle_slide1", " ", formLayout, null, null); + FormToggle fi2 = uifactory.addToggleButton("toggle_slide2", " ", formLayout, null, null); fi1.setEnabled(true); fi2.setEnabled(true); fi1.toggleOff(); fi2.toggleOff(); - } @Override @@ -210,7 +209,5 @@ public class GuiDemoLinksController extends BasicController { protected void doDispose() { // do nothing } - } - -} +} \ No newline at end of file diff --git a/src/main/java/org/olat/gui/demo/guidemo/_content/guidemo-icons.html b/src/main/java/org/olat/gui/demo/guidemo/_content/guidemo-icons.html index 0d1b2e2f9ecbc677be4deeb6aeea86b0b00e31c9..5b8df25cb012c0d61c45c630c92624b2a496b460 100644 --- a/src/main/java/org/olat/gui/demo/guidemo/_content/guidemo-icons.html +++ b/src/main/java/org/olat/gui/demo/guidemo/_content/guidemo-icons.html @@ -1,8 +1,4 @@ <style type="text/css"> -span.b_with_small_icon_left { - padding-top: 3px; -} - h3 { margin-bottom: 5px; margin-top: 12px; } diff --git a/src/main/java/org/olat/gui/demo/guidemo/_content/guidemo-links.html b/src/main/java/org/olat/gui/demo/guidemo/_content/guidemo-links.html index dd66725f374475a5c5fa2c978227c1706728f9fc..b9dd58d2eb8945a10d9d38d61d5b5eea7ceb63fc 100644 --- a/src/main/java/org/olat/gui/demo/guidemo/_content/guidemo-links.html +++ b/src/main/java/org/olat/gui/demo/guidemo/_content/guidemo-links.html @@ -1,38 +1,33 @@ <h4>Links</h4> $r.render("sourceview") -<p> -All available links & buttons in OLAT -<p> -<hr> +<p>All available links & buttons in OLAT</p> +<hr /> <p>$r.render("closeIcon")</p> -Buttons:<br> -<p>$r.render("button.xsmall") (CSS classes <b>b_button</b> and <b>b_xsmall</b>)</p> -<p>$r.render("button.small") (CSS classes <b>b_button</b> and <b>b_small</b>)</p> -<p>$r.render("button") (CSS class <b>b_button</b>)</p> +Buttons:<br /> +<p>$r.render("button.xsmall") (CSS classes <b>btn bt-default</b> and <b>xsmall</b>)</p> +<p>$r.render("button.small") (CSS classes <b>btn bt-default</b> and <b>small</b>)</p> +<p>$r.render("button") (CSS class <b>btn bt-default</b>)</p> <p>$r.render("button.dirty") (CSS class <b>o_button_dirty</b>)</p> -<p>$r.render("button.preferred") (CSS class <b>b_button_preferred</b>)</p> -<p>$r.render("button.disabled") (CSS classes <b>b_button</b> and <b>o_disabled</b>)</p> +<p>$r.render("button.preferred") (CSS class <b>btn bt-primary</b>)</p> +<p>$r.render("button.disabled") (CSS classes <b>btn bt-default</b> and <b>o_disabled</b>)</p> <p>$r.render("button.long.trans")</p> <p>$r.render("sonne")</p> -<hr> - +<hr /> Form Buttons:<br /> <p>$r.render("formbuttonctr")</p> - - <hr /> Links:<br> <p>$r.render("link")</p> -<p>$r.render("backLink") (CSS class <b>b_link_back</b>)</p> -<p>$r.render("link.ext") (CSS class <b>b_link_extern</b>)</p> -<p>$r.render("link.mail") (CSS class <b>b_link_mailto</b>)</p> +<p>$r.render("backLink") (CSS class <b>o_icon o_icon_back</b>)</p> +<p>$r.render("link.ext") (CSS class <b>o_icon o_icon_link_extern</b>)</p> +<p>$r.render("link.mail") (CSS class <b>o_icon o_icon_mail</b>)</p> <p>$r.render("link.pos") (Give the position)</p> <p>$r.render("link.tooltip") (Tooltip)</p> -<br> -<br> -<hr> -Text Component:<br> -<ul> +<br /> +<br /> +<hr /> +Text Component:<br /> +<ul class="list-unstyled"> <li>$r.render("text.simple")</li> <li>$r.render("text.simple.counter")</li> <li>$r.render("text.translated")</li> @@ -41,8 +36,8 @@ Text Component:<br> <li>$r.render("text.div.note")</li> <li>$r.render("text.div.dimmed")</li> </ul> -<br> -<hr> +<br /> +<hr /> <fieldset> $r.render("ajaxtest") </fieldset> diff --git a/src/main/java/org/olat/ims/qti/render/LocalizedXSLTransformer.java b/src/main/java/org/olat/ims/qti/render/LocalizedXSLTransformer.java index 312611c27c480fa9568dbab0703d160052768804..0e2f8435d4d4b65ec45a5968703116d550d937e1 100644 --- a/src/main/java/org/olat/ims/qti/render/LocalizedXSLTransformer.java +++ b/src/main/java/org/olat/ims/qti/render/LocalizedXSLTransformer.java @@ -228,20 +228,18 @@ public class LocalizedXSLTransformer { return evaluatedValue.toString(); } - /** * convert xsl InputStream to String * @param in * @return xsl as String * @throws IOException */ - private static String slurp (InputStream in) throws IOException { + private static String slurp(InputStream in) throws IOException { StringBuffer out = new StringBuffer(); byte[] b = new byte[4096]; for (int n; (n = in.read(b)) != -1;) { out.append(new String(b, 0, n)); } return out.toString(); - } - + } } \ No newline at end of file diff --git a/src/main/java/org/olat/ims/qti/statistics/ui/_content/hbar_item_overview.html b/src/main/java/org/olat/ims/qti/statistics/ui/_content/hbar_item_overview.html index e85b85e35b99e2206203be208f9e859437365054..104f65acfa5d6c4da73a5014d4937f97628247b0 100644 --- a/src/main/java/org/olat/ims/qti/statistics/ui/_content/hbar_item_overview.html +++ b/src/main/java/org/olat/ims/qti/statistics/ui/_content/hbar_item_overview.html @@ -1,7 +1,7 @@ -<div class="o_qti_statistics b_print_break_avoid"> - <h4 class="b_with_small_icon_left $series.itemCss">$title</h4> +<div class="o_qti_statistics o_print_break_avoid"> + <h4><i class="o_icon $series.itemCss"> </i> $title</h4> <div class="o_qti_statistics_question">$question</div> - + <div id="$r.getId('d3div')"><div id='$r.getId("d3holder")' class='d3chart' style='width:90%;'></div> <script type='text/javascript'> /* <![CDATA[ */ diff --git a/src/main/java/org/olat/ims/qti/statistics/ui/_content/histogram_duration.html b/src/main/java/org/olat/ims/qti/statistics/ui/_content/histogram_duration.html index ae1168a472fd8d1f78c97f4e59df63368b0f1b8f..35c29532a9ad9b2d5ca81eabbd82a4ac101a6205 100644 --- a/src/main/java/org/olat/ims/qti/statistics/ui/_content/histogram_duration.html +++ b/src/main/java/org/olat/ims/qti/statistics/ui/_content/histogram_duration.html @@ -1,4 +1,4 @@ -<div class="b_print_break_avoid"> +<div class="o_print_break_avoid"> <h4>$r.translate("chart.duration.histogramm")</h4> <div id="$r.getId('d3div')"><div id='$r.getId("d3holder")' class='d3chart' style='width:90%;height:300px'></div> <script type='text/javascript'> diff --git a/src/main/java/org/olat/ims/qti/statistics/ui/_content/histogram_score.html b/src/main/java/org/olat/ims/qti/statistics/ui/_content/histogram_score.html index 99ff9821556f44f8a81ad806372302374a6f8101..ae649ab3882f44d4b788d924324d7f55d4401806 100644 --- a/src/main/java/org/olat/ims/qti/statistics/ui/_content/histogram_score.html +++ b/src/main/java/org/olat/ims/qti/statistics/ui/_content/histogram_score.html @@ -1,4 +1,4 @@ -<div class="b_print_break_avoid"> +<div class="o_print_break_avoid"> <h4>$r.translate("chart.score.histogramm")</h4> <div id="$r.getId('d3div')"><div id='$r.getId("d3holder")' class='d3chart' style='width:90%;height:300px'></div> <script type='text/javascript'> diff --git a/src/main/java/org/olat/ims/qti/statistics/ui/_content/print.html b/src/main/java/org/olat/ims/qti/statistics/ui/_content/print.html index bac9bf12c73e7ff4bfad5cd6bd14650b5cbbc5da..6d9bba90ae0d2e0140215ef6cb939f11371c2608 100644 --- a/src/main/java/org/olat/ims/qti/statistics/ui/_content/print.html +++ b/src/main/java/org/olat/ims/qti/statistics/ui/_content/print.html @@ -2,7 +2,7 @@ <h3>$testTitle</h3> #foreach($pageName in $pageNames) - <div #if ($velocityCount > 1) class="b_print_break_before" #end> + <div #if ($velocityCount > 1) class="o_print_break_before" #end> $r.render($pageName) </div> diff --git a/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_assessment.html b/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_assessment.html index e39f2daf44a31344243cbde3d37cf5886008e2fb..56186e97bc7bb756b07b673ec61f92b7689957da 100644 --- a/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_assessment.html +++ b/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_assessment.html @@ -64,7 +64,7 @@ #end #if($r.available("averageScorePerItemChart")) -<div class="b_print_break_avoid"> +<div class="o_print_break_avoid"> <h4>$r.translate("chart.averagescore.peritem")</h4> $r.render("averageScorePerItemChart") <ul> @@ -76,7 +76,7 @@ #end #if($r.available("percentRightAnswersPerItemChart")) -<div class="b_print_break_avoid"> +<div class="o_print_break_avoid"> <h4>$r.translate("chart.rightanswers.peritem")</h4> $r.render("percentRightAnswersPerItemChart") <ul> diff --git a/src/main/java/org/olat/ims/resources/xsl/results2html_generic.xsl b/src/main/java/org/olat/ims/resources/xsl/results2html_generic.xsl index 7c9fcca7ad6288025db45c9d7a5078a57b8af08f..598fcded415c80e52d1b5b5ff807f7ec346efd6f 100644 --- a/src/main/java/org/olat/ims/resources/xsl/results2html_generic.xsl +++ b/src/main/java/org/olat/ims/resources/xsl/results2html_generic.xsl @@ -197,14 +197,14 @@ border-collapse: collapse; <xsl:param name="id"><xsl:value-of select="@ident"/></xsl:param> <xsl:param name="score"><xsl:value-of select="//item_result[@ident_ref=$id]/outcomes/score/score_value"/></xsl:param> <h4> - <img align="middle" border="0"> + <i> <xsl:if test="$score > 0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/correct.png</xsl:attribute> + <xsl:attribute name="class">o_icon o_passed o_icon_passed</xsl:attribute> </xsl:if> <xsl:if test="$score <= 0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/wrong.png</xsl:attribute> + <xsl:attribute name="class">o_icon o_failed o_icon_failed</xsl:attribute> </xsl:if> - </img> + </i> <xsl:value-of select="@title"/> </h4> <xsl:apply-templates select="presentation"/> @@ -270,29 +270,17 @@ border-collapse: collapse; <xsl:when test="ancestor::item[starts-with(@ident, 'QTIEDIT:KPRIM:')]"> <xsl:choose> <xsl:when test="$response/response_value = concat(@ident, ':correct')"> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_on.png</xsl:attribute> - </img> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_off.png</xsl:attribute> - </img> + <i class="o_icon o_icon_radio_on"> </i> + <i class="o_icon o_icon_radio_off"> </i> </xsl:when> <xsl:when test="$response/response_value = concat(@ident, ':wrong')"> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_off.png</xsl:attribute> - </img> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_on.png</xsl:attribute> - </img> + <i class="o_icon o_icon_radio_off"> </i> + <i class="o_icon o_icon_radio_on"> </i> </xsl:when> <!-- no answer --> <xsl:otherwise> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_off.png</xsl:attribute> - </img> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_off.png</xsl:attribute> - </img> + <i class="o_icon o_icon_radio_off"> </i> + <i class="o_icon o_icon_radio_off"> </i> </xsl:otherwise> </xsl:choose> </xsl:when> @@ -302,14 +290,10 @@ border-collapse: collapse; <xsl:when test="ancestor::response_lid/@rcardinality = 'Multiple'"> <xsl:choose> <xsl:when test="$response/response_value = @ident"> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/check_on.png</xsl:attribute> - </img> + <i class="o_icon o_icon_check_on"> </i> </xsl:when> <xsl:otherwise> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/check_off.png</xsl:attribute> - </img> + <i class="o_icon o_icon_check_off"> </i> </xsl:otherwise> </xsl:choose> </xsl:when> @@ -317,14 +301,10 @@ border-collapse: collapse; <!-- Case Single Choice --> <xsl:choose> <xsl:when test="$response/response_value = @ident"> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_on.png</xsl:attribute> - </img> + <i class="o_icon o_icon_radio_on"> </i> </xsl:when> <xsl:otherwise> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_off.png</xsl:attribute> - </img> + <i class="o_icon o_icon_radio_off"> </i> </xsl:otherwise> </xsl:choose> </xsl:otherwise> @@ -352,20 +332,12 @@ border-collapse: collapse; <xsl:when test="ancestor::item[starts-with(@ident, 'QTIEDIT:KPRIM:')]"> <xsl:choose> <xsl:when test="$response/response_form/correct_response = concat(@ident, ':correct')"> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_on.png</xsl:attribute> - </img> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_off.png</xsl:attribute> - </img> + <i class="o_icon o_icon_radio_on"> </i> + <i class="o_icon o_icon_radio_off"> </i> </xsl:when> <xsl:otherwise> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_off.png</xsl:attribute> - </img> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_on.png</xsl:attribute> - </img> + <i class="o_icon o_icon_radio_off"> </i> + <i class="o_icon o_icon_radio_on"> </i> </xsl:otherwise> </xsl:choose> </xsl:when> @@ -376,15 +348,11 @@ border-collapse: collapse; <xsl:choose> <xsl:when test="$response/response_form/correct_response = @ident"> <!-- case correct MC answer --> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/check_on.png</xsl:attribute> - </img> + <i class="o_icon o_icon_check_on"> </i> </xsl:when> <xsl:otherwise> <!-- case incorrect MC answer --> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/check_off.png</xsl:attribute> - </img> + <i class="o_icon o_icon_check_off"> </i> </xsl:otherwise> </xsl:choose> </xsl:when> @@ -393,15 +361,11 @@ border-collapse: collapse; <xsl:choose> <xsl:when test="$response/response_form/correct_response = @ident"> <!-- case correct SC answer --> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_on.png</xsl:attribute> - </img> + <i class="o_icon o_icon_radio_on"> </i> </xsl:when> <xsl:otherwise> - <!-- case incorrect SC answer --> - <img align="middle" border="0"> - <xsl:attribute name="src">${staticPath}themes/openolat/images/qti/radio_off.png</xsl:attribute> - </img> + <!-- case incorrect SC answer --> + <i class="o_icon o_icon_radio_off"> </i> </xsl:otherwise> </xsl:choose> </xsl:when> diff --git a/src/main/java/org/olat/instantMessaging/ui/_chelp/instant-messenger.html b/src/main/java/org/olat/instantMessaging/ui/_chelp/instant-messenger.html index 9fc9c42431dadd21a65cfa715429bf5a79377f3d..ac032ed99e69e92139d1a18525740d0929ebfd96 100644 --- a/src/main/java/org/olat/instantMessaging/ui/_chelp/instant-messenger.html +++ b/src/main/java/org/olat/instantMessaging/ui/_chelp/instant-messenger.html @@ -25,9 +25,9 @@ <b>$r.translate("im.status.change"):</b> $r.translate("chelp.chan1") </p> - <div class="b_with_small_icon_left o_im_available_icon"><i>$r.translate("presence.available")</i>: $r.translate("chelp.status.available")</div> - <div class="b_with_small_icon_left o_im_dnd_icon"><i>$r.translate("presence.dnd")</i>: $r.translate("chelp.status.dnd") </div> - <div class="b_with_small_icon_left o_im_unavailable_icon"><i>$r.translate("presence.unavailable")</i>: $r.translate("chelp.status.unavailable") </div> + <div><i class="o_icon o_icon-fw o_icon_status_available"> </i> $r.translate("presence.available"): $r.translate("chelp.status.available")</div> + <div><i class="o_icon o_icon-fw o_icon_status_dnd"> </i> $r.translate("presence.dnd"): $r.translate("chelp.status.dnd")</div> + <div><i class="o_icon o_icon-fw o_icon_status_unavailable"> </i> $r.translate("presence.unavailable"): $r.translate("chelp.status.unavailable")</div> <br /> <p> <a name="senden"></a> @@ -66,9 +66,9 @@ <b>$r.translate("chelp.rece"):</b> $r.translate("chelp.rece1") </p> - <div class="b_with_small_icon_left o_im_available_icon"><i>$r.translate("presence.available")</i>: $r.translate("chelp.rece4") $r.translate("chelp.rece5")</div> - <div class="b_with_small_icon_left o_im_dnd_icon"><i>$r.translate("presence.dnd")</i>: $r.translate("chelp.rece2") $r.translate("chelp.rece3") $r.translate("chelp.rece4") </div> - <div class="b_with_small_icon_left o_im_unavailable_icon"><i>$r.translate("presence.unavailable")</i>: $r.translate("chelp.rece2") $r.translate("chelp.rece3") $r.translate("chelp.rece4") </div> + <div><i class="o_icon o_icon-fw o_icon_status_available"> </i> $r.translate("presence.available"): $r.translate("chelp.rece4") $r.translate("chelp.rece5")</div> + <div><i class="o_icon o_icon-fw o_icon_status_dnd"> </i> $r.translate("presence.dnd"): $r.translate("chelp.rece2") $r.translate("chelp.rece3") $r.translate("chelp.rece4")</div> + <div><i class="o_icon o_icon-fw o_icon_status_unavailable"> </i> $r.translate("presence.unavailable"): $r.translate("chelp.rece2") $r.translate("chelp.rece3") $r.translate("chelp.rece4")</div> <br /> <p> <a name="add"></a> diff --git a/src/main/java/org/olat/ldap/ui/LDAPAuthenticationController.java b/src/main/java/org/olat/ldap/ui/LDAPAuthenticationController.java index 9f6f343c95c5281df7176ac260416f3e372e8ad0..36ab48830142e435dc154c6eeaebe74c2fa295bb 100644 --- a/src/main/java/org/olat/ldap/ui/LDAPAuthenticationController.java +++ b/src/main/java/org/olat/ldap/ui/LDAPAuthenticationController.java @@ -111,7 +111,7 @@ public class LDAPAuthenticationController extends AuthenticationController imple openChangePassword(ureq, null); //fxdiff FXOLAT-113: business path in DMZ } } - //fxdiff FXOLAT-113: business path in DMZ + protected void openChangePassword(UserRequest ureq, String initialEmail) { // double-check if allowed first if (!UserModule.isPwdchangeallowed(ureq.getIdentity()) || !LDAPLoginModule.isPropagatePasswordChangedOnLdapServer()) @@ -119,7 +119,7 @@ public class LDAPAuthenticationController extends AuthenticationController imple removeAsListenerAndDispose(subController); - subController = new PwChangeController(ureq, getWindowControl(), initialEmail); + subController = new PwChangeController(ureq, getWindowControl(), initialEmail, true); listenTo(subController); removeAsListenerAndDispose(cmc); diff --git a/src/main/java/org/olat/login/OLATAuthenticationController.java b/src/main/java/org/olat/login/OLATAuthenticationController.java index bfb129f105c079e6994730e208965b0d433dc5d4..7d0adf3795a97b8e52acbc87cf080ee4430b2e48 100644 --- a/src/main/java/org/olat/login/OLATAuthenticationController.java +++ b/src/main/java/org/olat/login/OLATAuthenticationController.java @@ -127,17 +127,15 @@ public class OLATAuthenticationController extends AuthenticationController imple /** * @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest, org.olat.core.gui.components.Component, org.olat.core.gui.control.Event) */ + @Override public void event(UserRequest ureq, Component source, Event event) { - if (source == registerLink) { - //fxdiff FXOLAT-113: business path in DMZ openRegistration(ureq); } else if (source == pwLink) { - //fxdiff FXOLAT-113: business path in DMZ openChangePassword(ureq, null); } } - //fxdiff FXOLAT-113: business path in DMZ + protected RegistrationController openRegistration(UserRequest ureq) { removeAsListenerAndDispose(subController); subController = new RegistrationController(ureq, getWindowControl()); @@ -150,13 +148,13 @@ public class OLATAuthenticationController extends AuthenticationController imple cmc.activate(); return (RegistrationController)subController; } - //fxdiff FXOLAT-113: business path in DMZ + protected void openChangePassword(UserRequest ureq, String initialEmail) { // double-check if allowed first if (!UserModule.isPwdchangeallowed(ureq.getIdentity())) throw new OLATSecurityException("chose password to be changed, but disallowed by config"); removeAsListenerAndDispose(subController); - subController = new PwChangeController(ureq, getWindowControl(), initialEmail); + subController = new PwChangeController(ureq, getWindowControl(), initialEmail, true); listenTo(subController); removeAsListenerAndDispose(cmc); @@ -169,8 +167,8 @@ public class OLATAuthenticationController extends AuthenticationController imple /** * @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest, org.olat.core.gui.control.Controller, org.olat.core.gui.control.Event) */ + @Override public void event(UserRequest ureq, Controller source, Event event) { - if (source == loginForm && event == Event.DONE_EVENT) { String login = loginForm.getLogin(); String pass = loginForm.getPass(); @@ -222,20 +220,28 @@ public class OLATAuthenticationController extends AuthenticationController imple // disclaimer acceptance not required authenticated(ureq, authenticatedIdentity); } - } - - if (source == disclaimerCtr) { + } else if (source == disclaimerCtr) { cmc.deactivate(); if (event == Event.DONE_EVENT) { // disclaimer accepted RegistrationManager.getInstance().setHasConfirmedDislaimer(authenticatedIdentity); authenticated(ureq, authenticatedIdentity); } + } else if(cmc == source) { + cleanUp(); + } if (source == subController) { + if(event == Event.CANCELLED_EVENT) { + cmc.deactivate(); + cleanUp(); + } } - - if (source == subController && event == Event.CANCELLED_EVENT) { - cmc.deactivate(); - } + } + + private void cleanUp() { + removeAsListenerAndDispose(subController); + removeAsListenerAndDispose(cmc); + subController = null; + cmc = null; } @Override diff --git a/src/main/java/org/olat/modules/fo/QuoteAndTagFilter.java b/src/main/java/org/olat/modules/fo/QuoteAndTagFilter.java index 19500a190e7e27afd671081c1db5e2bc814b6da2..af13c4dca3fc4a02fb1ac08b61c8ab5f2a49f92c 100644 --- a/src/main/java/org/olat/modules/fo/QuoteAndTagFilter.java +++ b/src/main/java/org/olat/modules/fo/QuoteAndTagFilter.java @@ -33,11 +33,10 @@ import org.xml.sax.SAXException; public class QuoteAndTagFilter extends LogDelegator implements Filter { - private static final String QUOTE_WRAPPER = "b_quote_wrapper"; - /** * @see org.olat.core.util.filter.Filter#filter(java.lang.String) */ + @Override public String filter(String original) { try { DOMParser parser = new DOMParser(); @@ -59,8 +58,11 @@ public class QuoteAndTagFilter extends LogDelegator implements Filter { for(Node child=node; child != null; child=child.getNextSibling()) { if(child.hasAttributes()) { Node nodeclass = child.getAttributes().getNamedItem("class"); - if(nodeclass != null && QUOTE_WRAPPER.equals(nodeclass.getNodeValue())) { - continue; + if(nodeclass != null) { + String value = nodeclass.getNodeValue(); + if("b_quote_wrapper".equals(value) || "o_quote_wrapper".equals(value)) { + continue; + } } } if(child.hasChildNodes()) { diff --git a/src/main/java/org/olat/modules/fo/archiver/formatters/ForumRTFFormatter.java b/src/main/java/org/olat/modules/fo/archiver/formatters/ForumRTFFormatter.java index 8fc88eeca6bbfd63d1eff5637c40d4ed9a6ac255..a1b8f0c290a18ab82d5dd90d787a93feceefdbfd 100644 --- a/src/main/java/org/olat/modules/fo/archiver/formatters/ForumRTFFormatter.java +++ b/src/main/java/org/olat/modules/fo/archiver/formatters/ForumRTFFormatter.java @@ -81,7 +81,7 @@ public class ForumRTFFormatter extends ForumFormatter { final Pattern PATTERN_HTML_LIST = Pattern.compile("<li>(.*?)</li>", Pattern.CASE_INSENSITIVE); final Pattern HTML_SPACE_PATTERN = Pattern.compile(" "); - final Pattern PATTERN_CSS_O_FOQUOTE = Pattern.compile("<div class=\"b_quote_wrapper\">\\s*<div class=\"b_quote_author mceNonEditable\">(.*?)</div>\\s*<blockquote class=\"b_quote\">\\s*(.*?)\\s*</blockquote>\\s*</div>", Pattern.CASE_INSENSITIVE | Pattern.DOTALL); + final Pattern PATTERN_CSS_O_FOQUOTE = Pattern.compile("<div class=\"o_quote_wrapper\">\\s*<div class=\"b_quote_author mceNonEditable\">(.*?)</div>\\s*<blockquote class=\"b_quote\">\\s*(.*?)\\s*</blockquote>\\s*</div>", Pattern.CASE_INSENSITIVE | Pattern.DOTALL); final Pattern PATTERN_THREEPOINTS = Pattern.compile("…", Pattern.CASE_INSENSITIVE); final String THREEPOINTS = "..."; diff --git a/src/main/java/org/olat/modules/fo/archiver/formatters/ForumStreamedRTFFormatter.java b/src/main/java/org/olat/modules/fo/archiver/formatters/ForumStreamedRTFFormatter.java index 73581fe8ddf5023603bddb3f0d3d6cc3acc6878c..582272afcb09e2a0c580e0742b5d010fb9656695 100644 --- a/src/main/java/org/olat/modules/fo/archiver/formatters/ForumStreamedRTFFormatter.java +++ b/src/main/java/org/olat/modules/fo/archiver/formatters/ForumStreamedRTFFormatter.java @@ -73,7 +73,7 @@ public class ForumStreamedRTFFormatter extends ForumFormatter { final Pattern PATTERN_HTML_LIST = Pattern.compile("<li>(.*?)</li>", Pattern.CASE_INSENSITIVE); final Pattern HTML_SPACE_PATTERN = Pattern.compile(" "); - final Pattern PATTERN_CSS_O_FOQUOTE = Pattern.compile("<div class=\"b_quote_wrapper\">\\s*<div class=\"b_quote_author mceNonEditable\">(.*?)</div>\\s*<blockquote class=\"b_quote\">\\s*(.*?)\\s*</blockquote>\\s*</div>", Pattern.CASE_INSENSITIVE | Pattern.DOTALL); + final Pattern PATTERN_CSS_O_FOQUOTE = Pattern.compile("<div class=\"o_quote_wrapper\">\\s*<div class=\"b_quote_author mceNonEditable\">(.*?)</div>\\s*<blockquote class=\"b_quote\">\\s*(.*?)\\s*</blockquote>\\s*</div>", Pattern.CASE_INSENSITIVE | Pattern.DOTALL); final Pattern PATTERN_THREEPOINTS = Pattern.compile("…", Pattern.CASE_INSENSITIVE); final String THREEPOINTS = "..."; diff --git a/src/main/java/org/olat/modules/iq/IQComponentRenderer.java b/src/main/java/org/olat/modules/iq/IQComponentRenderer.java index 6ab0264f62cd5401881e2926127339f5b4990e7e..b750f42f0c30ec6e0f169e5a7bad4f07e249653c 100644 --- a/src/main/java/org/olat/modules/iq/IQComponentRenderer.java +++ b/src/main/java/org/olat/modules/iq/IQComponentRenderer.java @@ -264,11 +264,11 @@ public class IQComponentRenderer implements ComponentRenderer { renderFeedback(info, sb, ai, translator); //add the next button - sb.append("<a class=\"b_button\" onclick=\"return o2cl()\" href=\""); + sb.append("<a class=\"btn btn-primary\" onclick=\"return o2cl()\" href=\""); ubu.buildURI(sb, new String[] { VelocityContainer.COMMAND_ID }, new String[] { "sitsec" }); String title = translator.translate("next"); sb.append("\" title=\"" + StringEscapeUtils.escapeHtml(title) + "\">"); - sb.append("<span>").append(title).append("</title>"); + sb.append("<span>").append(title).append("</span>"); sb.append("</a>"); } } @@ -351,21 +351,21 @@ public class IQComponentRenderer implements ComponentRenderer { sb.append("<td></td>"); // no time limit symbol // add lock image sb.append("<td>"); - sb.append("<div class=\"b_small_icon o_qti_closed_icon\" title=\""); + sb.append("<div class='o_qti_closed_icon' title=\""); sb.append(StringEscapeUtils.escapeHtml(r.getTranslator().translate("itemclosed"))); - sb.append("\"></div>"); + sb.append("\"><i class='o_icon o_icon_locked'> </i></div>"); sb.append("</td>"); } else if (info) { // max duration info sb.append("<td>"); if (maxdur != -1) { - sb.append("<div class=\"b_small_icon o_qti_timelimit_icon\" title=\""); + sb.append("<div class='o_qti_timelimit_icon' title=\""); if (!itc.isStarted()) { sb.append(StringEscapeUtils.escapeHtml(r.getTranslator().translate("timelimit.initial", new String[] {getFormattedLimit(maxdur)}))); } else { sb.append(StringEscapeUtils.escapeHtml(r.getTranslator().translate("timelimit.running", new String[] {fdue}))); } - sb.append("\" ></div>"); + sb.append("\" ><i class='o_icon o_icon_timelimit'> </i></div>"); } sb.append("</td>"); @@ -374,9 +374,9 @@ public class IQComponentRenderer implements ComponentRenderer { int maxa = itc.getMaxAttempts(); int attempts = itc.getTimesAnswered(); if (maxa != -1) { // only limited times of answers - sb.append("<div class=\"b_small_icon o_qti_attemptslimit_icon\" title=\""); + sb.append("<div class='o_qti_attemptslimit_icon' title=\""); sb.append(StringEscapeUtils.escapeHtml(r.getTranslator().translate("attemptsleft", new String[] {"" + (maxa - attempts)}))); - sb.append("\" ></div>"); + sb.append("\" ><i class='o_icon o_icon_attempt_limit'> </i></div>"); } sb.append("</td>"); } @@ -447,19 +447,19 @@ public class IQComponentRenderer implements ComponentRenderer { sb.append("<td>"); if (!sc.isOpen()) { - sb.append("<div class=\"b_small_icon o_qti_closed_icon\" title=\""); + sb.append("<div class='o_qti_closed_icon' title=\""); sb.append(StringEscapeUtils.escapeHtml(r.getTranslator().translate("itemclosed"))); - sb.append("\"></div>"); + sb.append("\"><i class='o_icon o_icon_locked'> </i></div>"); } else { // max duration info if (maxdur != -1) { - sb.append("<div class=\"b_small_icon o_qti_timelimit_icon\" title=\""); + sb.append("<div class='o_qti_timelimit_icon' title=\""); if (!sc.isStarted()) { sb.append(StringEscapeUtils.escapeHtml(r.getTranslator().translate("timelimit.initial", new String[] {getFormattedLimit(maxdur)}))); } else { sb.append(StringEscapeUtils.escapeHtml(r.getTranslator().translate("timelimit.running", new String[] {fdue}))); } - sb.append("\" ></div>"); + sb.append("\" ><i class='o_icon o_icon_timelimit'> </i></div>"); } } sb.append("</td>"); @@ -585,14 +585,14 @@ public class IQComponentRenderer implements ComponentRenderer { // show button to navigate to the first question of the current section IQMenuDisplayConf menuDisplayConfig = comp.getMenuDisplayConf(); if (!menuDisplayConfig.isEnabledMenu() && menuDisplayConfig.isItemPageSequence()) { - sb.append("<a class=\"b_button\" onclick=\"return o2cl()\" href=\""); + sb.append("<a class=\"btn btn-default\" onclick=\"return o2cl()\" href=\""); ubu.buildURI(sb, new String[] { VelocityContainer.COMMAND_ID }, new String[] { "git" }); AssessmentContext ac = ai.getAssessmentContext(); int sectionPos = ac.getCurrentSectionContextPos(); sb.append("?itid=" + 0 + "&seid=" + sectionPos); String title = translator.translate("next"); sb.append("\" title=\"" + StringEscapeUtils.escapeHtml(title) + "\">"); - sb.append("<span>").append(title).append("</title>"); + sb.append("<span>").append(title).append("</span>"); sb.append("</a>"); } } @@ -610,7 +610,7 @@ public class IQComponentRenderer implements ComponentRenderer { //if Menu not visible, or if visible but not selectable show button to navigate to the first section panel IQMenuDisplayConf menuDisplayConfig = comp.getMenuDisplayConf(); if (!menuDisplayConfig.isEnabledMenu()) { - sb.append("<a class=\"b_button\" onclick=\"return o2cl()\" href=\""); + sb.append("<a class=\"btn btn-default\" onclick=\"return o2cl()\" href=\""); ubu.buildURI(sb, new String[] { VelocityContainer.COMMAND_ID }, new String[] { "gse" }); sb.append("?seid=" + 0); String title = translator.translate("next"); diff --git a/src/main/java/org/olat/modules/iq/_content/qti.html b/src/main/java/org/olat/modules/iq/_content/qti.html index b7367f6c7594277c2204dd17f63c7e6a0c35f2ea..c2b21eca146ca645fa89c9d3af60c47d12978dc0 100644 --- a/src/main/java/org/olat/modules/iq/_content/qti.html +++ b/src/main/java/org/olat/modules/iq/_content/qti.html @@ -135,7 +135,7 @@ function confirmSuspend() { #if ($qtistatus.hasItemTimeLimit() && $qtistatus.hasItemAttemptsLimit()) #if($qtistatus.hasAttemptsExeeded()) - <div class="o_warning"><i class="o_icon_ o_icon_attempt_limit"> </i> + <div class="o_warning"><i class="o_icon o_icon_attempt_limit"> </i> $qtistatus.getItemAttemptsLeft() </div> #else diff --git a/src/main/java/org/olat/modules/openmeetings/ui/_chelp/module.html b/src/main/java/org/olat/modules/openmeetings/ui/_chelp/module.html index b42c50e0137843af21e568da6af7dde417030e1d..bc915c0363d7d27c60d9f76e6d4bfbba819ac589 100644 --- a/src/main/java/org/olat/modules/openmeetings/ui/_chelp/module.html +++ b/src/main/java/org/olat/modules/openmeetings/ui/_chelp/module.html @@ -1,18 +1,8 @@ -<p> - $r.translate("chelp.openmeetings.intro") -</p> -<p> - $r.translate("chelp.openmeetings.url") <a href="http://incubator.apache.org/openmeetings" target="_blank" class="b_extern">http://incubator.apache.org/openmeetings</a> -</p> -<p> - $r.translate("chelp.openmeetings.module") -</p> -<p> - <ul> - <li>$r.translate("chelp.openmeetings.course")</li> - <li>$r.translate("chelp.openmeetings.group")</li> - </ul> -</p> -<p> - $r.translate("chelp.openmeetings.config") -</p> +<p>$r.translate("chelp.openmeetings.intro")</p> +<p>$r.translate("chelp.openmeetings.url") <a href="http://incubator.apache.org/openmeetings" target="_blank"><i class="o_icon o_icon_link_extern"> </i> http://incubator.apache.org/openmeetings</a></p> +<p>$r.translate("chelp.openmeetings.module")</p> +<ul> + <li>$r.translate("chelp.openmeetings.course")</li> + <li>$r.translate("chelp.openmeetings.group")</li> +</ul> +<p>$r.translate("chelp.openmeetings.config")</p> diff --git a/src/main/java/org/olat/modules/openmeetings/ui/_chelp/room.html b/src/main/java/org/olat/modules/openmeetings/ui/_chelp/room.html index 4fc0a17fd60cc1247a4d6da23f62fa65bc5002b9..a1dddbd0ffb42b961eb0e9bb932d78230127abd9 100644 --- a/src/main/java/org/olat/modules/openmeetings/ui/_chelp/room.html +++ b/src/main/java/org/olat/modules/openmeetings/ui/_chelp/room.html @@ -1,43 +1,23 @@ -<p> - $r.translate("chelp.openmeetings.intro") -</p> -<p> - $r.translate("chelp.openmeetings.url") <a href="http://incubator.apache.org/openmeetings" target="_blank" class="b_extern">http://incubator.apache.org/openmeetings</a> -</p> - +<p>$r.translate("chelp.openmeetings.intro")</p> +<p>$r.translate("chelp.openmeetings.url") <a href="http://incubator.apache.org/openmeetings" target="_blank"><i class="o_icon o_icon_link_extern"> </i> http://incubator.apache.org/openmeetings</a></p> <hr /> - -<p> - $r.translate("chelp.openmeetings.room") -</p> -<p> - <ul> - <li>$r.translate("chelp.openmeetings.course")</li> - <li>$r.translate("chelp.openmeetings.group")</li> - </ul> -</p> -<p> - $r.translate("chelp.openmeetings.room.config") -</p> -<table class="b_grid"> +<p>$r.translate("chelp.openmeetings.room")</p> +<ul> + <li>$r.translate("chelp.openmeetings.course")</li> + <li>$r.translate("chelp.openmeetings.group")</li> +</ul> +<p>$r.translate("chelp.openmeetings.room.config")</p> +<table class="table table-bordered"> <thead> <tr><th>$r.translate("chelp.openmeetings.room.options")</th><th>$r.translate("chelp.openmeetings.room.values")</th><th>$r.translate("chelp.openmeetings.room.desc")</th></tr> </thead> <tbody> <tr><th>$r.translate("room.name")</th><td>$r.translate("chelp.openmeetings.room.text")</td><td>$r.translate("room.name.desc")</td></tr> - <tr><th>$r.translate("room.type")</th><td>$r.translate("room.type.conference")</br>$r.translate("room.type.restricted")</br>$r.translate("room.type.interview")</td><td>$r.translate("room.type.desc")</td></tr> - <tr><th>$r.translate("room.size")</th><td>2-1000</td><td>$r.translate("room.size.desc")</td></tr> - <tr><th>$r.translate("room.moderation.mode")</td><td>$r.translate("room.moderation.yes")</br>$r.translate("room.moderation.no")</td><td>$r.translate("room.moderation.mode.desc")</td></tr> - <tr><th>$r.translate("room.recording")</th><td>$r.translate("room.recording.enabled")</td><td>$r.translate("room.recording.desc")</td></tr> - <tr><th>$r.translate("room.comment")</th><td>$r.translate("chelp.openmeetings.room.text")</td><td>$r.translate("room.comment.desc")</td></tr> - </tbody> </table> -<p> - $r.translate("chelp.openmeetings.room.create") -</p> +<p>$r.translate("chelp.openmeetings.room.create")</p> diff --git a/src/main/java/org/olat/modules/openmeetings/ui/_chelp/room_admin.html b/src/main/java/org/olat/modules/openmeetings/ui/_chelp/room_admin.html index b086985388c237a69e9e9cf6507fec6092332601..7c4ef0bf91a27ec7871d1ef8e7376dcd104baf51 100644 --- a/src/main/java/org/olat/modules/openmeetings/ui/_chelp/room_admin.html +++ b/src/main/java/org/olat/modules/openmeetings/ui/_chelp/room_admin.html @@ -1,7 +1,5 @@ -<p> - $r.translate("chelp.openmeetings.admin") -</p> -<table class="b_grid"> +<p>$r.translate("chelp.openmeetings.admin")</p> +<table class="table table-bordered"> <thead> <tr><th>$r.translate("room.actions")</th><th>$r.translate("room.actions.desc")</th></tr> </thead> @@ -11,6 +9,5 @@ <tr><th>$r.translate("room.members")</th><td>$r.translate("room.members.desc")</td></tr> <tr><th>$r.translate("edit.room")</th><td>$r.translate("edit.room.desc")</td></tr> - </tbody> </table> diff --git a/src/main/java/org/olat/modules/vitero/ui/_chelp/module.html b/src/main/java/org/olat/modules/vitero/ui/_chelp/module.html index c4f7d233c383bbf110d5c0e219d9ad8e80cd976e..e8476bc3163a75d1a1ebb7e63f85d5e86cf57bda 100644 --- a/src/main/java/org/olat/modules/vitero/ui/_chelp/module.html +++ b/src/main/java/org/olat/modules/vitero/ui/_chelp/module.html @@ -1,7 +1,7 @@ <p> $r.translate("chelp.vitero1") <br /> - <a href="http://www.vitero.de" target="_blank" class="b_extern">http://www.vitero.de</a> + <a href="http://www.vitero.de" target="_blank"><i class="o_icon o_icon_link_extern"> </i> http://www.vitero.de</a> </p> <p> $r.translate("chelp.module1") diff --git a/src/main/java/org/olat/portfolio/ui/_content/mymapsmain.html b/src/main/java/org/olat/portfolio/ui/_content/mymapsmain.html index ea1a6dff35c0731874a5f97ef3723ac91e8a2dcd..27f637bdfed61a2b213c6df28087ee03070c458b 100644 --- a/src/main/java/org/olat/portfolio/ui/_content/mymapsmain.html +++ b/src/main/java/org/olat/portfolio/ui/_content/mymapsmain.html @@ -1,4 +1,4 @@ -<div class="b_eportfolio"> +<div class="o_eportfolio"> #if($overview) <h4>$r.translate($title)</h4> <div class="o_info">$r.translate($description)</div> @@ -7,12 +7,12 @@ <div class="container-fluid"> #if($r.available("search_input")) <ul class="o_tools o_tools_left list-unstyled"> - <li><div class="b_eportfolio_fulltextsearch btn-group">$r.render("search_input")</div></li> + <li><div class="o_eportfolio_fulltextsearch btn-group">$r.render("search_input")</div></li> </ul> #end #if($r.available("create.map")) <ul class="o_tools o_tools_right list-unstyled"> - <li><div class="b_ep_add_artefact btn-group pull-right">$r.render("create.map")</div></li> + <li><div class="o_ep_add_artefact btn-group pull-right">$r.render("create.map")</div></li> </ul> #end </div> diff --git a/src/main/java/org/olat/portfolio/ui/artefacts/collect/MapsTreeModel.java b/src/main/java/org/olat/portfolio/ui/artefacts/collect/MapsTreeModel.java index 35c0f07c2c7fd597f98799a70d88dffe29d4d7e8..2cf1b3236216394ac1f8282340f82c869449492d 100644 --- a/src/main/java/org/olat/portfolio/ui/artefacts/collect/MapsTreeModel.java +++ b/src/main/java/org/olat/portfolio/ui/artefacts/collect/MapsTreeModel.java @@ -49,7 +49,7 @@ public class MapsTreeModel extends GenericTreeModel { rootNode.setIconCssClass("o_st_icon"); GenericTreeNode noMapNode = new GenericTreeNode(EPCollectStepForm04.NO_MAP_CHOOSEN, translator.translate("no.map.as.target"), null); - noMapNode.setIconCssClass("b_ep_collection_icon"); + noMapNode.setIconCssClass("o_ep_icon_collection"); rootNode.addChild(noMapNode); loadMaps(identity, rootNode); @@ -82,69 +82,4 @@ public class MapsTreeModel extends GenericTreeModel { loadStructure(childStruct, structureNode); } } - -/* - private boolean firstLevelDone = false; - - @SuppressWarnings("synthetic-access") - @Override - public List<AjaxTreeNode> getChildrenFor(String nodeId) { - List<AjaxTreeNode> children = new ArrayList<AjaxTreeNode>(); - AjaxTreeNode child; - try { - List<PortfolioStructure> structs = null; - if (nodeId.equals(ROOT_NODE_IDENTIFIER)) { - structs = ePFMgr.getStructureElementsForUser(getIdentity(), ElementType.STRUCTURED_MAP, ElementType.DEFAULT_MAP); - firstLevelDone = false; - } else { - PortfolioStructure selStruct = ePFMgr.loadPortfolioStructureByKey(new Long(nodeId)); - structs = ePFMgr.loadStructureChildren(selStruct); - } - if (structs == null || structs.size() == 0) { return null; } - // add a fake map to choose if no target should be set - if (!firstLevelDone){ - child = new AjaxTreeNode(NO_MAP_CHOOSEN, translate("no.map.as.target")); - child.put(AjaxTreeNode.CONF_LEAF, true); - child.put(AjaxTreeNode.CONF_IS_TYPE_LEAF, true); - child.put(AjaxTreeNode.CONF_ALLOWDRAG, false); - child.put(AjaxTreeNode.CONF_ALLOWDROP, false); - child.put(AjaxTreeNode.CONF_ICON_CSS_CLASS, "b_ep_collection_icon"); - child.put(AjaxTreeNode.CONF_QTIP, translate("no.map.as.target.desc")); - if (isUsedInStepWizzard()) children.add(child); - firstLevelDone = true; - } - for (PortfolioStructure portfolioStructure : structs) { - // FXOLAT-436 : skip templateMaps that are closed - if (portfolioStructure instanceof EPStructuredMap) { - if( ((EPStructuredMap) portfolioStructure).getStatus() != null && ((EPStructuredMap) portfolioStructure).getStatus().equals(StructureStatusEnum.CLOSED)){ - continue; - } - } - - String title = portfolioStructure.getTitle(); - if (!isUsedInStepWizzard() && oldStructure.getKey().equals(portfolioStructure.getKey())) { - title = portfolioStructure.getTitle() + " <-- " + translate("move.artefact.actual.node"); - } - child = new AjaxTreeNode(String.valueOf(portfolioStructure.getKey()), title); - boolean hasChilds = ePFMgr.countStructureChildren(portfolioStructure) > 0; - child.put(AjaxTreeNode.CONF_LEAF, !hasChilds); - child.put(AjaxTreeNode.CONF_IS_TYPE_LEAF, !hasChilds); - child.put(AjaxTreeNode.CONF_ALLOWDRAG, false); - child.put(AjaxTreeNode.CONF_ALLOWDROP, false); - child.put(AjaxTreeNode.CONF_EXPANDED, true); - child.put(AjaxTreeNode.CONF_DISABLED, portfolioStructure instanceof EPAbstractMap); - child.put(AjaxTreeNode.CONF_ICON_CSS_CLASS, portfolioStructure.getIcon()); - child.put(AjaxTreeNode.CONF_QTIP, portfolioStructure.getDescription()); - - children.add(child); - } - } catch (JSONException e) { - throw new OLATRuntimeException("Error while creating tree model for map/page/structure selection", e); - } - return children; - } -}; -model.setCustomRootIconCssClass("o_st_icon"); -*/ - -} +} \ No newline at end of file diff --git a/src/main/java/org/olat/portfolio/ui/artefacts/collect/_content/step01tagging.html b/src/main/java/org/olat/portfolio/ui/artefacts/collect/_content/step01tagging.html index 3ce0c60f0fc258df42c442a3eda6e77c65ff2201..e445d0dbb9b246d192630c82fb1121f3d25b6183 100644 --- a/src/main/java/org/olat/portfolio/ui/artefacts/collect/_content/step01tagging.html +++ b/src/main/java/org/olat/portfolio/ui/artefacts/collect/_content/step01tagging.html @@ -5,7 +5,7 @@ $r.render("artefact.tags") <div class="b_tags"> <p><i>$r.translate("tagging.intro.existing")</i></p> <p>$r.translate("users.tags")<p> - <div class="b_with_small_icon_left b_tag_icon"> + <div><i class="o_icon o_icon_tag"> </i> #foreach($tagLink in $userTagLinks) <span class="b_tag">$r.render($tagLink.getName())</span> #end diff --git a/src/main/java/org/olat/portfolio/ui/artefacts/view/EPTagBrowseController.java b/src/main/java/org/olat/portfolio/ui/artefacts/view/EPTagBrowseController.java index f7bf034836ab516952049d3c579b8e30f3dd9b66..bec5fa05ca0e6b1af069d584abfcec9c7b224071 100644 --- a/src/main/java/org/olat/portfolio/ui/artefacts/view/EPTagBrowseController.java +++ b/src/main/java/org/olat/portfolio/ui/artefacts/view/EPTagBrowseController.java @@ -24,7 +24,6 @@ import java.util.HashSet; import java.util.List; import java.util.Set; -import org.olat.core.CoreSpringFactory; import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.Component; import org.olat.core.gui.components.link.Link; @@ -37,6 +36,7 @@ import org.olat.core.util.StringHelper; import org.olat.portfolio.manager.EPArtefactTagCloud; import org.olat.portfolio.manager.EPFrontendManager; import org.olat.portfolio.model.artefacts.AbstractArtefact; +import org.springframework.beans.factory.annotation.Autowired; /** * Description:<br> @@ -50,19 +50,18 @@ import org.olat.portfolio.model.artefacts.AbstractArtefact; */ public class EPTagBrowseController extends BasicController { - private String activeCSS = "tag label label-info b_on"; + private String activeCSS = "tag label label-info on"; private String inactiveCSS = "tag label label-info"; private String disabledCSS = "tag label label-info"; - private final VelocityContainer mainVc; - private final EPFrontendManager ePFMgr; + @Autowired + private EPFrontendManager ePFMgr; private final List<Link> tagLinks = new ArrayList<Link>(); private List<AbstractArtefact> allUsersArtefacts; public EPTagBrowseController(UserRequest ureq, WindowControl wControl) { super(ureq, wControl); - mainVc = createVelocityContainer("tagbrowser"); - ePFMgr = (EPFrontendManager) CoreSpringFactory.getBean("epFrontendManager"); + VelocityContainer mainVc = createVelocityContainer("tagbrowser"); List<String> tagList = ePFMgr.getUsersTagsOfArtefactType(getIdentity()); int count = 0; diff --git a/src/main/java/org/olat/portfolio/ui/artefacts/view/_content/multiArtefact.html b/src/main/java/org/olat/portfolio/ui/artefacts/view/_content/multiArtefact.html index 55e5bab1ec2d7ac96f75cffa6bcf60492e07d11c..9b67a094eb03b13c2d482ee993f9c0f78b3e5b36 100644 --- a/src/main/java/org/olat/portfolio/ui/artefacts/view/_content/multiArtefact.html +++ b/src/main/java/org/olat/portfolio/ui/artefacts/view/_content/multiArtefact.html @@ -1,11 +1,11 @@ -<div class="b_ep_multiartefacts"> +<div class="o_ep_multiartefacts"> #if ($artefactAmnt) #if ($r.available("detail.options")) <div class="o_button_group o_button_group_right"> $r.render("detail.options") </div> #end - <div class="b_artefact_count"> + <div class="o_artefact_count"> $r.translate("artefact.amount", $artefactAmnt) </div> #else diff --git a/src/main/java/org/olat/portfolio/ui/artefacts/view/_content/smallSingleArtefact.html b/src/main/java/org/olat/portfolio/ui/artefacts/view/_content/smallSingleArtefact.html index ab6e08e1fa2dac54a3b35f6e35118561491550d6..87fdcaf2bb123136d048f059125f695e7993e0b2 100644 --- a/src/main/java/org/olat/portfolio/ui/artefacts/view/_content/smallSingleArtefact.html +++ b/src/main/java/org/olat/portfolio/ui/artefacts/view/_content/smallSingleArtefact.html @@ -12,7 +12,7 @@ <tr><th>$r.translate("artefact.date")</th> <td>$r.formatDateAndTime($artefact.getCreationDate())</td></tr> #if($tags) - <tr><td colspan="2" class="b_with_small_icon_left b_tag_icon">$tags</td></tr> + <tr><td colspan="2"><i class="o_icon o_icon_tags"> </i> $tags</td></tr> #end </tbody></table> </div> diff --git a/src/main/java/org/olat/portfolio/ui/filter/EPFilterSelectController.java b/src/main/java/org/olat/portfolio/ui/filter/EPFilterSelectController.java index c14ca984a6428ab16f2fe0a2bd8c74716fd03502..881421507413310870715a863fad790688fa0669 100644 --- a/src/main/java/org/olat/portfolio/ui/filter/EPFilterSelectController.java +++ b/src/main/java/org/olat/portfolio/ui/filter/EPFilterSelectController.java @@ -92,7 +92,7 @@ public class EPFilterSelectController extends FormBasicController { } // don't show anything if no filter exists if (!nonEmptyFilters.isEmpty()) { - String page = this.velocity_root + "/filter_select.html"; + String page = velocity_root + "/filter_select.html"; FormLayoutContainer selection = FormLayoutContainer.createCustomFormLayout("filter_selection", getTranslator(), page); selection.setRootForm(mainForm); selection.setLabel("filter.select", null); diff --git a/src/main/java/org/olat/portfolio/ui/filter/_content/filter.html b/src/main/java/org/olat/portfolio/ui/filter/_content/filter.html index 0f8d1371b3704a9cb84bdb619aadadc82e66b6c1..4af701775e2c674b0956a24c7b8b07d10300a48b 100644 --- a/src/main/java/org/olat/portfolio/ui/filter/_content/filter.html +++ b/src/main/java/org/olat/portfolio/ui/filter/_content/filter.html @@ -1,4 +1,4 @@ -<div class="b_ep_search_attributes"> +<div> $tagLayout $r.render("tagLayout") $r.render("typeLayout") diff --git a/src/main/java/org/olat/portfolio/ui/filter/_content/filter_date.html b/src/main/java/org/olat/portfolio/ui/filter/_content/filter_date.html index 722bf229ac8e86ff7e8e787fac7b0b757e7fa579..196b4948f2406eb5f86a3ef9b225d8468e4cdd41 100644 --- a/src/main/java/org/olat/portfolio/ui/filter/_content/filter_date.html +++ b/src/main/java/org/olat/portfolio/ui/filter/_content/filter_date.html @@ -4,4 +4,4 @@ <div class="form-group"><span class="form-control-static">$r.translate("filter.date.end")</span></div> <div class="form-group">$r.render("filter.date.end")</div> </div> -<div class="b_form_error_msg">$r.render("filter.date.start_ERROR") $r.render("filter.date.end_ERROR")</div> \ No newline at end of file +<div>$r.render("filter.date.start_ERROR") $r.render("filter.date.end_ERROR")</div> \ No newline at end of file diff --git a/src/main/java/org/olat/portfolio/ui/filter/_content/filter_select.html b/src/main/java/org/olat/portfolio/ui/filter/_content/filter_select.html index ec758fe7df18ad4455fb95574a0650b5187d9859..52e12e1609297197e6384863cad4160b55c6dc63 100644 --- a/src/main/java/org/olat/portfolio/ui/filter/_content/filter_select.html +++ b/src/main/java/org/olat/portfolio/ui/filter/_content/filter_select.html @@ -1,4 +1,4 @@ -<div class="b_ep_inline"> +<div> #if($r.available("filter.select")) $r.render("filter.select") #end diff --git a/src/main/java/org/olat/portfolio/ui/structel/_content/mapview.html b/src/main/java/org/olat/portfolio/ui/structel/_content/mapview.html index 19a1fbfa287b07692caa35deaa8f322ee5ac7195..59b86c055b11a1ceabf690658d8bd03af8d0883a 100644 --- a/src/main/java/org/olat/portfolio/ui/structel/_content/mapview.html +++ b/src/main/java/org/olat/portfolio/ui/structel/_content/mapview.html @@ -42,14 +42,14 @@ ## show av. artefacts here... #if ($r.available("artefactTable")) $r.render("artefactTable") #end - </div> ## end b_map_header + </div> ## end o_map_header ## multiple page(s) contains instances of page-ctrl #if ($r.available("pagesCtrl")) $r.render("pagesCtrl") #end #else - </div> ## end b_map_header + </div> ## end o_map_header $r.render("editor") #end </div> diff --git a/src/main/java/org/olat/portfolio/ui/structel/_content/multiMaps.html b/src/main/java/org/olat/portfolio/ui/structel/_content/multiMaps.html index 5a90de0a1c91a3a2a6d8c0fc7d93bb049212be34..652b936833fb542e7e42d7bd546a79ba1571c93e 100644 --- a/src/main/java/org/olat/portfolio/ui/structel/_content/multiMaps.html +++ b/src/main/java/org/olat/portfolio/ui/structel/_content/multiMaps.html @@ -2,7 +2,7 @@ #if(!$noMaps) #if($!showPaging) - <div class="b_map_page"> + <div class="o_map_page"> #foreach($pageLink in $pageLinks) $r.render($pageLink.componentName) #end @@ -45,7 +45,7 @@ </div> #if($!showPaging) - <div class="b_map_page"> + <div class="o_map_page"> #foreach($pageLink in $pageLinks) $r.render($pageLink.componentName) #end diff --git a/src/main/java/org/olat/portfolio/ui/structel/edit/EPTOCController.java b/src/main/java/org/olat/portfolio/ui/structel/edit/EPTOCController.java index 26d2e26c5f83b7e44b0261a0e64354123441b664..f2cf20a7a0625f67ae1fe4f1e4cc219b5846ae0d 100644 --- a/src/main/java/org/olat/portfolio/ui/structel/edit/EPTOCController.java +++ b/src/main/java/org/olat/portfolio/ui/structel/edit/EPTOCController.java @@ -438,7 +438,6 @@ public class EPTOCController extends BasicController { return null; } - /** * @see org.olat.core.gui.control.DefaultController#doDispose() */ @@ -446,5 +445,4 @@ public class EPTOCController extends BasicController { protected void doDispose() { // } - -} +} \ No newline at end of file diff --git a/src/main/java/org/olat/portfolio/ui/structel/edit/EPTOCTreeModel.java b/src/main/java/org/olat/portfolio/ui/structel/edit/EPTOCTreeModel.java index 5f9eaf0778a3eeb8a4e0e9766c1be8a9f54cbcf8..9203c1cd174d2b179ffcdb9bc5f3b6f1e57c4511 100644 --- a/src/main/java/org/olat/portfolio/ui/structel/edit/EPTOCTreeModel.java +++ b/src/main/java/org/olat/portfolio/ui/structel/edit/EPTOCTreeModel.java @@ -83,7 +83,7 @@ public class EPTOCTreeModel extends GenericTreeModel implements DnDTreeModel { for (AbstractArtefact artefact : artList) { String artefactIdent = structureNode.getIdent() + artefact.getKey().toString(); GenericTreeNode artefactNode = new GenericTreeNode(artefactIdent, artefact.getTitle(), artefact); - artefactNode.setIconCssClass("o_icon " + artefact.getIcon()); + artefactNode.setIconCssClass("o_icon o_ep_artefact " + artefact.getIcon()); structureNode.addChild(artefactNode); } } diff --git a/src/main/java/org/olat/registration/LanguageChooserController.java b/src/main/java/org/olat/registration/LanguageChooserController.java index 6a645c06ff34c23734762940f7f974796d199aa9..bbd9b464923b4365c57611ce7e2f117cf2dec907 100644 --- a/src/main/java/org/olat/registration/LanguageChooserController.java +++ b/src/main/java/org/olat/registration/LanguageChooserController.java @@ -132,18 +132,11 @@ public class LanguageChooserController extends FormBasicController { String[] langKeys = StringHelper.getMapKeysAsStringArray(languages); String[] langValues = StringHelper.getMapValuesAsStringArray(languages); ArrayHelper.sort(langKeys, langValues, false, true, false); - // Build css classes for reference languages - String[] langCssClasses = I18nManager.getInstance().createLanguageFlagsCssClasses(langKeys, "b_with_small_icon_left"); - - final FormLayoutContainer langLayout = FormLayoutContainer.createCustomFormLayout("langLayout", getTranslator(), velocity_root + "/langchooser.html"); - formLayout.add(langLayout); - langs = uifactory.addDropdownSingleselect("select.language", langLayout, langKeys, langValues, langCssClasses); + + langs = uifactory.addDropdownSingleselect("select.language", formLayout, langKeys, langValues, null); langs.addActionListener(FormEvent.ONCHANGE); langs.select(curlang, true); - Locale loc = I18nManager.getInstance().getLocaleOrDefault(curlang); - langLayout.contextPut("languageCode", loc.toString()); - langLayout.contextPut("selectLanguage", translate("select.language")); - + final FormLayoutContainer buttonLayout = FormLayoutContainer.createButtonLayout("buttonLayout", getTranslator()); formLayout.add(buttonLayout); nextButton = uifactory.addFormSubmitButton("submit.weiter", buttonLayout); diff --git a/src/main/java/org/olat/registration/PwChangeController.java b/src/main/java/org/olat/registration/PwChangeController.java index 8193ca28a20b28828d08eae176bafd31ab8aa0a5..2d242d9c509f3bd3b60d8ae15e97e9e451110840 100644 --- a/src/main/java/org/olat/registration/PwChangeController.java +++ b/src/main/java/org/olat/registration/PwChangeController.java @@ -87,7 +87,7 @@ public class PwChangeController extends BasicController { * @param wControl */ public PwChangeController(UserRequest ureq, WindowControl wControl) { - this(ureq, wControl, null); + this(ureq, wControl, null, false); } /** @@ -95,8 +95,7 @@ public class PwChangeController extends BasicController { * @param ureq * @param wControl */ - //fxdiff FXOLAT-113: business path in DMZ - public PwChangeController(UserRequest ureq, WindowControl wControl, String initialEmail) { + public PwChangeController(UserRequest ureq, WindowControl wControl, String initialEmail, boolean modal) { super(ureq, wControl); mailManager = CoreSpringFactory.getImpl(MailManager.class); myContent = createVelocityContainer("pwchange"); @@ -107,10 +106,7 @@ public class PwChangeController extends BasicController { pwKey = ureq.getHttpReq().getParameter("key"); if (pwKey == null || pwKey.equals("")) { // no temporarykey is given, we assume step 1 - //fxdiff FXOLAT-113: business path in DMZ createEmailForm(ureq, wControl, initialEmail); - LayoutMain3ColsController layoutCtr = new LayoutMain3ColsController(ureq, getWindowControl(), null, myContent, null); - putInitialPanel(layoutCtr.getInitialComponent()); } else { // we check if given key is a valid temporary key tempKey = rm.loadTemporaryKeyByRegistrationKey(pwKey); @@ -118,11 +114,7 @@ public class PwChangeController extends BasicController { if (tempKey == null) { // error, there should be an entry getWindowControl().setError(translate("pwkey.missingentry")); - //fxdiff FXOLAT-113: business path in DMZ createEmailForm(ureq, wControl, initialEmail); - // load view in layout - LayoutMain3ColsController layoutCtr = new LayoutMain3ColsController(ureq, getWindowControl(), null, myContent, null); - putInitialPanel(layoutCtr.getInitialComponent()); } else { wic.setCurStep(3); pwf = new PwChangeForm(ureq, wControl); @@ -130,11 +122,15 @@ public class PwChangeController extends BasicController { myContent.contextPut("pwdhelp", translate("pwdhelp")); myContent.contextPut("text", translate("step3.pw.text")); pwarea.setContent(pwf.getInitialComponent()); - // load view in layout - LayoutMain3ColsController layoutCtr = new LayoutMain3ColsController(ureq, getWindowControl(), null, myContent, null); - putInitialPanel(layoutCtr.getInitialComponent()); } } + + if(modal) { + putInitialPanel(myContent); + } else { + LayoutMain3ColsController layoutCtr = new LayoutMain3ColsController(ureq, getWindowControl(), null, myContent, null); + putInitialPanel(layoutCtr.getInitialComponent()); + } } /** diff --git a/src/main/java/org/olat/registration/_content/finish.html b/src/main/java/org/olat/registration/_content/finish.html index 11db5ac2b2f7180c997a485dc072d0b490a6b1e5..4b77ffc397c01637882899c4a3a693993c211859 100644 --- a/src/main/java/org/olat/registration/_content/finish.html +++ b/src/main/java/org/olat/registration/_content/finish.html @@ -1,27 +1,30 @@ - - #* velocity template for the last step (5) in the registration process it displays all entered values (except pw and language) in a table and provides a button that links to the login-screen of OpenOLAT *# - -$r.translate("step5.reg.yourdata") -<div class="b_border_box" style="width:20%;"> - <table> - <tr> - <td><label>$r.translate("user.login"):</label></td> - <td>$username</td> - </tr> - #foreach( $propertyHandler in $userPropertyHandlers ) - <tr> - <td><label>$r.translate($propertyHandler.i18nFormElementLabelKey()):</label></td> - <td>$!propertyHandler.getUserPropertyAsHTML($user, $locale)</td> - </tr> - #end - </table> +<div class="panel-group" id="o_preview_details"> + <div class="panel panel-default"> + <div class="panel-heading"> + <h4 class="panel-title">$r.translate("step5.reg.yourdata")</h4> + </div> + <div class="panel-body"> + <p>$text</p> + </div> + <table class="table table-bordered"> + <tr> + <th>$r.translate("user.login")</th> + <td>$username</td> + </tr> + #foreach( $propertyHandler in $userPropertyHandlers ) + <tr> + <th>$r.translate($propertyHandler.i18nFormElementLabelKey())</th> + <td>$!propertyHandler.getUserPropertyAsHTML($user, $locale)</td> + </tr> + #end + </table> + </div> +</div> +<div class="o_button_group o_button_group_left"> + <a href="$loginhref" class="btn btn-primary">Login</a> </div> -<p style="margin-top:12px;"> -$text<br /> -<div style="margin-top:8px"><a href="$loginhref" class="b_button b_button_preferred"><span>Login</span></a> </div> -</p> \ No newline at end of file diff --git a/src/main/java/org/olat/registration/_content/langchooser.html b/src/main/java/org/olat/registration/_content/langchooser.html deleted file mode 100644 index d6aca427eb379489d87d604b57d0d016d5b235a6..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/registration/_content/langchooser.html +++ /dev/null @@ -1,6 +0,0 @@ -<div class="b_float_left"> - $selectLanguage -</div> -<div class="b_with_small_icon_left b_flag_${languageCode} b_float_left"> - $r.render("select.language") -</div> \ No newline at end of file diff --git a/src/main/java/org/olat/registration/_content/pwchange.html b/src/main/java/org/olat/registration/_content/pwchange.html index e0f06c063692840031392907f610b2083ca4c6d0..79abf222b7b1cf1bb529cfd50d659bdfe69f89da 100644 --- a/src/main/java/org/olat/registration/_content/pwchange.html +++ b/src/main/java/org/olat/registration/_content/pwchange.html @@ -2,17 +2,12 @@ $r.render("pwwizard") <h4>$r.translate("step1.pw.title")</h4> </div> -<p> - $text -</p> +<p class="o_info">$text</p> + #if ($pwdhelp) - <p> - $pwdhelp - </p> + <p>$pwdhelp</p> #end -<p> - $r.render("pwarea") -</p> +<p>$r.render("pwarea")</p> #if ($r.available("pwchange.homelink")) <div class="b_block"> $r.render("pwchange.homelink") diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_fr.properties index 90bbc71ab9faf980ed5a80bf15b398a2495ad7ec..4c6aea5bbc8c1b3711e404cdc58429d82a06b944 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_fr.properties @@ -107,7 +107,7 @@ unknown.subject=Adresse e-mail inconnue dans OpenOLAT user.firstname=Pr\u00E9nom user.language=Langue user.lastname=Nom -user.login=nom d'utilisateur +user.login=Nom d'utilisateur user.loginlength=Au moins 4 caract\u00E8res, peut contenir des lettres et des chiffres user.notregistered=Vous n'avez pas pu \u00EAtre enregistr\u00E9(e). Veuillez SVP contr\u00F4ler vos donn\u00E9es. user.password=Mot de passe OpenOLAT diff --git a/src/main/java/org/olat/repository/_content/infopanel.html b/src/main/java/org/olat/repository/_content/infopanel.html deleted file mode 100644 index 29f1ae08a1767d5f7568ee14f832a50ac2e94703..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/repository/_content/infopanel.html +++ /dev/null @@ -1,69 +0,0 @@ -#if ($isOwner || $isAuthor) - #if($iscourse && $CourseInfoForm) - $r.render("CourseInfoForm") - #else - <fieldset> - <legend>$r.translate("details.typeinfoheader")</legend> - $r.contextHelpWithWrapper("org.olat.repository",'rep-meta-info.html','help.hover.rep.detail') - #if ($hasHandlerDetails) - $r.render("handlerDetails") - #else - <i>$r.translate("details.notypeinfo")</i> - #end - </fieldset> - #end - #if($managedflags) - <fieldset> - <legend>$r.translate("managed.resource")</legend> - $r.contextHelpWithWrapper("org.olat.admin.restapi","managed.html","help.hover.managed") - <p class="o_important"> - $r.translate("managed.resource.intro") - </p> - <div class="b_form"> - <div class="b_form_element_wrapper clearfix"> - <div class="b_form_element_label"><label>$r.translate("cif.managedflags")</label></div> - <div class="b_form_element"> - <ul> - #foreach ($flag in $managedflags) - <li>$r.translate("managed.flags.course.${flag}")</li> - #end - </ul> - </div> - </div> - </div> - </fieldset> - #end - <fieldset> - <legend>$r.translate("details.referenceinfoheader")</legend> - $r.contextHelpWithWrapper("org.olat.repository",'rep-meta-info-reference.html','help.hover.rep.detail') - ## simulate form view to match styling of fieldset above - <div class="b_form"> - <div class="b_form_element_wrapper clearfix"> - <div class="b_form_element_label"><label>$r.translate("details.referenceinfo")</label></div> - <div class="b_form_element"> - #if ($referenceDetails) - $referenceDetails - #else - <i>$r.translate("details.noreferenceinfo")</i> - #end - </div> - </div> - <div class="b_form_element_wrapper clearfix"> - <div class="b_form_element_label"><label>$r.translate("cif.downloaded")</label></div> - <div class="b_form_element">$numDownloads</div> - </div> - <div class="b_form_element_wrapper clearfix"> - <div class="b_form_element_label"><label>$r.translate("cif.launched")</label></div> - <div class="b_form_element">$numLaunches</div> - </div> - <div class="b_form_element_wrapper clearfix"> - <div class="b_form_element_label"><label>$r.translate("cif.lastusage")</label></div> - <div class="b_form_element">$lastUsage</div> - </div> - <div class="b_form_element_wrapper clearfix"> - <div class="b_form_element_label"><label>$r.translate("cif.usedbycnt")</label></div> - <div class="b_form_element">$numUsers</div> - </div> - </div> - </fieldset> -#end \ No newline at end of file diff --git a/src/main/java/org/olat/repository/ui/list/_content/details.html b/src/main/java/org/olat/repository/ui/list/_content/details.html index e710c9b9928409a94e909594e7f2a3cbf5ea4771..be0891977f847e18dedb02d4b9f60282eeab7eef 100644 --- a/src/main/java/org/olat/repository/ui/list/_content/details.html +++ b/src/main/java/org/olat/repository/ui/list/_content/details.html @@ -281,41 +281,4 @@ ## END LEFT COLUMN </div> -</div> - - -#* - - -#if ($isOwner || $isAuthor) - <h3> - $r.translate("addinfo.owner") - </h3> - #if($iscourse && $CourseInfoForm) - $r.render("CourseInfoForm") - #else - <fieldset> - <legend>$r.translate("details.typeinfoheader")</legend> - $r.contextHelpWithWrapper("org.olat.repository",'rep-meta-info.html','help.hover.rep.detail') - #if ($hasHandlerDetails) - $r.render("handlerDetails") - #else - <i>$r.translate("details.notypeinfo")</i> - #end - </fieldset> - #end - - #if($isOwner) - - #o_togglebox_start("o_repo_details" $r.translate("addinfo.owner")) - <fieldset> - <legend>$r.translate('details.owner')</legend> - - $r.render('ownertable') - </fieldset> - $r.render('vc_infopanel') - #o_togglebox_end() - #end -#end - -*# \ No newline at end of file +</div> \ No newline at end of file diff --git a/src/main/webapp/static/js/functions.js b/src/main/webapp/static/js/functions.js index 43cd603b32fff5595dede07802bff1e16b08125b..6339819e18a9a75e38678e26dcaeaa3bb53c5227 100644 --- a/src/main/webapp/static/js/functions.js +++ b/src/main/webapp/static/js/functions.js @@ -1318,13 +1318,13 @@ function treeNode_portfolioType(el) { function treeNode_portfolioTypes(nodeEl) { if(nodeEl.find === undefined) { return null; - } else if(nodeEl.find(".b_ep_struct_icon").length > 0 || nodeEl.hasClass('b_ep_struct_icon')) { + } else if(nodeEl.find(".o_ep_icon_struct").length > 0 || nodeEl.hasClass('o_ep_icon_struct')) { return "struct"; - } else if(nodeEl.find(".b_ep_page_icon").length > 0 || nodeEl.hasClass('b_ep_page_icon')) { + } else if(nodeEl.find(".o_ep_icon_page").length > 0 || nodeEl.hasClass('o_ep_icon_page')) { return "page"; - } else if(nodeEl.find(".b_ep_map_icon").length > 0 || nodeEl.hasClass('b_ep_map_icon')) { + } else if(nodeEl.find(".o_ep_icon_map").length > 0 || nodeEl.hasClass('o_ep_icon_map')) { return "map"; - } else if(nodeEl.find(".b_ep_artefact").length > 0 || nodeEl.hasClass('b_ep_artefact')) { + } else if(nodeEl.find(".o_ep_artefact").length > 0 || nodeEl.hasClass('o_ep_artefact')) { return "artefact"; } return null; diff --git a/src/main/webapp/static/js/tinymce4/tinymce/plugins/quotespliter/plugin.js b/src/main/webapp/static/js/tinymce4/tinymce/plugins/quotespliter/plugin.js index c01ad35574ce16115b133b49204959384ac7879e..8f55c77ba2841dcdf2fdc9a1b6c1b3941c59fbb1 100644 --- a/src/main/webapp/static/js/tinymce4/tinymce/plugins/quotespliter/plugin.js +++ b/src/main/webapp/static/js/tinymce4/tinymce/plugins/quotespliter/plugin.js @@ -21,7 +21,7 @@ function detectQuote(el) { var divQuote = ed.dom.getParent(el, 'DIV'); var blockquote = ed.dom.getParent(el, 'BLOCKQUOTE'); - if(divQuote && blockquote && divQuote.className == "b_quote_wrapper") { + if(divQuote && blockquote && (divQuote.className == "b_quote_wrapper" || divQuote.className == "o_quote_wrapper")) { return true; } return false; @@ -36,10 +36,10 @@ var parent = parents[i]; endQuote += '</' + parent.nodeName + '>' - if(parent.className == "b_quote_wrapper") { - var quoteWrapper = '<div class="b_quote_wrapper"><div class="b_quote_author mceNonEditable">'; + if(parent.className == "b_quote_wrapper" || parent.className == "o_quote_wrapper") { + var quoteWrapper = '<div class="o_quote_wrapper"><div class="o_quote_author mceNonEditable">'; for(var j=0; j<parent.childNodes.length; j++) { - if(parent.childNodes[j].className == "b_quote_author mceNonEditable") { + if(parent.childNodes[j].className == "o_quote_author mceNonEditable" || parent.childNodes[j].className == "b_quote_author mceNonEditable") { quoteWrapper += parent.childNodes[j].innerHTML; break; } @@ -72,7 +72,7 @@ author : 'frentix GmbH', authorurl : 'http://www.frentix.com', infourl : 'http://www.frentix.com', - version : "1.1" + version : "1.1.1" }; } }); diff --git a/src/main/webapp/static/js/tinymce4/tinymce/plugins/quotespliter/plugin.min.js b/src/main/webapp/static/js/tinymce4/tinymce/plugins/quotespliter/plugin.min.js index 4c8f8c0ae5fadee7f4bde9c1378855ac91ee7571..841e462d9b0f680d7b8e2b6941c3c78eaa2fa1b9 100644 --- a/src/main/webapp/static/js/tinymce4/tinymce/plugins/quotespliter/plugin.min.js +++ b/src/main/webapp/static/js/tinymce4/tinymce/plugins/quotespliter/plugin.min.js @@ -1 +1 @@ -(function(){tinymce.create("org.olat.core.gui.components.form.flexible.impl.elements.richText.plugins.quotespliter",{init:function(a,b){a.on("KeyDown",function(f){if(f==null||f.keyCode!=13||!a.selection.isCollapsed()){return}var c=a.selection.getNode();if(c==null){return}if(g(c)){tinymce.dom.Event.cancel(f);d(c)}function g(e){var i=a.dom.getParent(e,"DIV");var h=a.dom.getParent(e,"BLOCKQUOTE");if(i&&h&&i.className=="b_quote_wrapper"){return true}return false}function d(n){var o=a.dom.getParents(n);var r="";var h="";for(var m=0;m<o.length;m++){var p=o[m];r+="</"+p.nodeName+">";if(p.className=="b_quote_wrapper"){var q='<div class="b_quote_wrapper"><div class="b_quote_author mceNonEditable">';for(var k=0;k<p.childNodes.length;k++){if(p.childNodes[k].className=="b_quote_author mceNonEditable"){q+=p.childNodes[k].innerHTML;break}}h=q+"</div>"+h;if(!g(p)){break}}else{h="<"+p.nodeName+' class="'+p.className+'">'+h}}var e=r+'<p><span id="quote_spliter_marker"></span><br/></p>'+h;a.execCommand("mceInsertRawHTML",true,e);var l=a.dom.get("quote_spliter_marker");if(l){a.selection.select(l);a.selection.collapse();a.execCommand("mceRemoveNode",true,l)}}})},getInfo:function(){return{longname:"Olat Quote Spliter",author:"frentix GmbH",authorurl:"http://www.frentix.com",infourl:"http://www.frentix.com",version:"1.1"}}});tinymce.PluginManager.add("quotespliter",org.olat.core.gui.components.form.flexible.impl.elements.richText.plugins.quotespliter)})(); \ No newline at end of file +(function(){tinymce.create("org.olat.core.gui.components.form.flexible.impl.elements.richText.plugins.quotespliter",{init:function(a,b){a.on("KeyDown",function(f){if(f==null||f.keyCode!=13||!a.selection.isCollapsed()){return}var c=a.selection.getNode();if(c==null){return}if(g(c)){tinymce.dom.Event.cancel(f);d(c)}function g(e){var i=a.dom.getParent(e,"DIV");var h=a.dom.getParent(e,"BLOCKQUOTE");if(i&&h&&(i.className=="b_quote_wrapper"||i.className=="o_quote_wrapper")){return true}return false}function d(n){var o=a.dom.getParents(n);var r="";var h="";for(var m=0;m<o.length;m++){var p=o[m];r+="</"+p.nodeName+">";if(p.className=="b_quote_wrapper"||p.className=="o_quote_wrapper"){var q='<div class="o_quote_wrapper"><div class="o_quote_author mceNonEditable">';for(var k=0;k<p.childNodes.length;k++){if(p.childNodes[k].className=="o_quote_author mceNonEditable"||p.childNodes[k].className=="b_quote_author mceNonEditable"){q+=p.childNodes[k].innerHTML;break}}h=q+"</div>"+h;if(!g(p)){break}}else{h="<"+p.nodeName+' class="'+p.className+'">'+h}}var e=r+'<p><span id="quote_spliter_marker"></span><br/></p>'+h;a.execCommand("mceInsertRawHTML",true,e);var l=a.dom.get("quote_spliter_marker");if(l){a.selection.select(l);a.selection.collapse();a.execCommand("mceRemoveNode",true,l)}}})},getInfo:function(){return{longname:"Olat Quote Spliter",author:"frentix GmbH",authorurl:"http://www.frentix.com",infourl:"http://www.frentix.com",version:"1.1.1"}}});tinymce.PluginManager.add("quotespliter",org.olat.core.gui.components.form.flexible.impl.elements.richText.plugins.quotespliter)})(); \ No newline at end of file diff --git a/src/main/webapp/static/themes/light/modules/_icons.scss b/src/main/webapp/static/themes/light/modules/_icons.scss index 09e742a3dc27ed7ca7705a0196213e047ae024be..009553eee32d65a8ba83b949bcf62f021a0e87bc 100644 --- a/src/main/webapp/static/themes/light/modules/_icons.scss +++ b/src/main/webapp/static/themes/light/modules/_icons.scss @@ -51,6 +51,8 @@ $fa-css-prefix: "o_icon" !default; .o_icon_certificate:before { content: $fa-var-certificate;} .o_icon_chat:before { content: $fa-var-comment-o; } .o_icon_check:before { content: $fa-var-check; } +.o_icon_check_off:before { content: $fa-var-square-o; } +.o_icon_check_on:before { content: $fa-var-check-square-o; } .o_icon_checkbox:before { content: $fa-var-square-o; } .o_icon_checkbox_checked:before { content: $fa-var-check-square; } .o_icon_cleanup:before { content: $fa-var-ambulance;} @@ -148,6 +150,8 @@ $fa-css-prefix: "o_icon" !default; .o_icon_provider_shibboleth:before { content: $fa-var-university;} .o_icon_publish:before { content: $fa-var-share;} .o_icon_qrcode:before { content: $fa-var-qrcode;} +.o_icon_radio_off:before { content: $fa-var-circle-o;} +.o_icon_radio_on:before { content: $fa-var-check-circle-o;} .o_icon_rating_on:before { content: $fa-var-star;} .o_icon_rating_off:before { content: $fa-var-star-o;} .o_icon_read:before { content: $fa-var-circle-o; } @@ -180,6 +184,7 @@ $fa-css-prefix: "o_icon" !default; .o_icon_statistics_tool:before { content: $fa-var-bar-chart-o;} .o_icon_table:before { content: $fa-var-table; } .o_icon_table_large:before { content: $fa-var-th-large; } +.o_icon_tags:before { content: $fa-var-tags; } .o_icon_timelimit:before { content: $fa-var-bomb; } .o_icon_toggle:before { content: $fa-var-circle; } .o_icon_to_read:before { content: $fa-var-circle; } diff --git a/src/main/webapp/static/themes/light/modules/_portfolio.scss b/src/main/webapp/static/themes/light/modules/_portfolio.scss index 0493a5a5e1f82bf6f2f20b994588324986ca141a..c693a57d3cc42b2191316a2bc721e7cba6c1a949 100644 --- a/src/main/webapp/static/themes/light/modules/_portfolio.scss +++ b/src/main/webapp/static/themes/light/modules/_portfolio.scss @@ -1,4 +1,5 @@ .o_ep_icon_map:before { content: $fa-var-briefcase; } +.o_ep_icon_collection:before { content: $fa-var-briefcase; } .o_ep_icon_page:before { content: $fa-var-file-o; }; .o_ep_icon_struct:before { content: $fa-var-cubes; } .o_ep_icon_liveblog:before { content: $fa-var-bullhorn;} diff --git a/src/main/webapp/static/themes/light/modules/_print.scss b/src/main/webapp/static/themes/light/modules/_print.scss index 561bb6359e633f488f2920ebd2e195faa6e435e5..4e57f596bb4bcdb9e09f490ce4ccb9f2e8071528 100644 --- a/src/main/webapp/static/themes/light/modules/_print.scss +++ b/src/main/webapp/static/themes/light/modules/_print.scss @@ -19,10 +19,10 @@ /** with the noprint class, you can hide any element in printout **/ .o_noprint { @include o-ghost();} - .b_print_break_avoid { + .o_print_break_avoid { page-break-inside : avoid; } - .b_print_break_before { + .o_print_break_before { page-break-before: always; } diff --git a/src/main/webapp/static/themes/light/modules/_table.scss b/src/main/webapp/static/themes/light/modules/_table.scss index d984c2a3e5ddadd39692da57fac03fa4cb406496..b21a1f6da0588053a9771fa019e39bd365407910 100644 --- a/src/main/webapp/static/themes/light/modules/_table.scss +++ b/src/main/webapp/static/themes/light/modules/_table.scss @@ -34,6 +34,9 @@ .o_table { margin-bottom: 0; } + .o_marked { + font-weight: bold; + } } .o_table_config { diff --git a/src/main/webapp/static/themes/light/theme.css b/src/main/webapp/static/themes/light/theme.css index 5c660fbe25202ae95f55cf59f5b1cb2d946733cd..c173e92d1d5ccd87fb72c00121fbfbc4d90e049a 100644 --- a/src/main/webapp/static/themes/light/theme.css +++ b/src/main/webapp/static/themes/light/theme.css @@ -58,16 +58,16 @@ fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100% @media (max-width: 767px){.hidden-xs{display:none !important}}@media (min-width: 768px) and (max-width: 991px){.hidden-sm{display:none !important}}@media (min-width: 992px) and (max-width: 1199px){.hidden-md{display:none !important}}@media (min-width: 1200px){.hidden-lg{display:none !important}}.visible-print{display:none !important}@media print{.visible-print{display:block !important}table.visible-print{display:table}tr.visible-print{display:table-row !important}th.visible-print,td.visible-print{display:table-cell !important}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}} .visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}} .visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}} -@media print{.hidden-print{display:none !important}}body .modal{position:absolute;overflow:visible}body div.tooltip-inner{max-width:400px}body div.popover{max-width:450px}body .modal-body.alert{border-radius:0}body .progress{margin-bottom:0}.panel-body:nth-child(n+2){border-top:1px solid #ddd}.form-control-feedback{top:10px}.form-horizontal .has-feedback .form-control-feedback{top:10px}@font-face{font-family:'FontAwesome';src:url("../../../font-awesome/fonts/fontawesome-webfont.eot?v=4.1.0");src:url("../../../font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.1.0") format("embedded-opentype"),url("../../../font-awesome/fonts/fontawesome-webfont.woff?v=4.1.0") format("woff"),url("../../../font-awesome/fonts/fontawesome-webfont.ttf?v=4.1.0") format("truetype"),url("../../../font-awesome/fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular") format("svg");font-weight:normal;font-style:normal}.o_icon{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_icon-lg{font-size:1.33333em;line-height:0.75em;vertical-align:-15%}.o_icon-2x{font-size:2em}.o_icon-3x{font-size:3em}.o_icon-4x{font-size:4em}.o_icon-5x{font-size:5em}.o_icon-fw{width:1.28571em;text-align:center}.o_icon-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.o_icon-ul>li{position:relative}.o_icon-li{position:absolute;left:-2.14286em;width:2.14286em;top:0.14286em;text-align:center}.o_icon-li.o_icon-lg{left:-1.85714em}.o_icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.o_icon.pull-left{margin-right:.3em}.o_icon.pull-right{margin-left:.3em}.o_icon-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.o_icon-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.o_icon-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.o_icon-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.o_icon-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1)}.o_icon-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1)}.o_icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.o_icon-stack-1x,.o_icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.o_icon-stack-1x{line-height:inherit}.o_icon-stack-2x{font-size:2em}.o_icon-inverse{color:#fff}.o_icon_accessibility:before{content:"\f193"}.o_icon_actions:before{content:"\f085"}.o_icon_archive_tool:before{content:"\f019"}.o_icon_assessment_tool:before{content:"\f091"}.o_icon_attempt_limit:before{content:"\f021"}.o_icon_accept:before{content:"\f00c";color:#5cb85c}.o_icon_add:before{content:"\f055"}.o_icon_add_search:before{content:"\f00e"}.o_icon_audio:before{content:"\f028"}.o_icon_back:before{content:"\f053"}.o_icon_back_history:before{content:"\f1da"}.o_icon_bold:before{content:"\f032"}.o_icon_booking:before{content:"\f07a"}.o_icon_bookmark:before{content:"\f02e";color:#996633}.o_icon_bookmark_add:before{content:"\f097"}.o_icon_bookmark_header:before{content:"\f02e"}.o_icon_browse:before{content:"\f00e"}.o_icon_browsercheck:before{content:"\f164"}.o_icon_busy:before{content:"\f110"}.o_icon_calendar:before{content:"\f073"}.o_icon_calendar_enabled:before{content:"\f05d"}.o_icon_calendar_disabled:before{content:"\f10c"}.o_icon_calendar:before{content:"\f073"}.o_icon_caret:before{content:"\f0d7"}.o_icon_catalog:before{content:"\f0e8"}.o_icon_catalog_sub:before{content:"\f07b"}.o_icon_certificate:before{content:"\f0a3"}.o_icon_chat:before{content:"\f0e5"}.o_icon_check:before{content:"\f00c"}.o_icon_checkbox:before{content:"\f096"}.o_icon_checkbox_checked:before{content:"\f14a"}.o_icon_cleanup:before{content:"\f0f9"}.o_icon_close:before{content:"\f00d"}.o_icon_close_resource:before{content:"\f011"}.o_icon_close_tab:before{content:"\f00d"}.o_icon_close_tool:before{content:"\f00d"}.o_icon_close_tree:before{content:"\f0d7"}.o_icon_close_togglebox:before,.o_togglebox_wrapper .o_opener.o_in i:before{content:"\f0d7"}.o_icon_code:before{content:"\f121"}.o_icon_color_picker:before{content:"\f043"}.o_icon_copy:before{content:"\f0c5"}.o_icon_courseareas:before{content:"\f1db"}.o_icon_coursedb:before{content:"\f1c0"}.o_icon_courseeditor:before{content:"\f044"}.o_icon_coursefolder:before{content:"\f114"}.o_icon_courserun:before{content:"\f1b2"}.o_icon_comments:before{content:"\f086"}.o_icon_comments_none:before{content:"\f0e5"}.o_icon_content_popup:before{content:"\f08e"}.o_icon_customize:before{content:"\f013"}.o_icon_delete_item:before{content:"\f014"}.o_icon_delete:before{content:"\f056";color:#A87E7E}.o_icon_details:before{content:"\f0eb"}.o_icon_dev:before{content:"\f188"}.o_icon_disabled:before{content:"\f10c"}.o_icon_download:before{content:"\f019"}.o_icon_edit:before{content:"\f044"}.o_icon_edit_file:before{content:"\f044"}.o_icon_edit_metadata:before{content:"\f013"}.o_icon_enabled:before{content:"\f111"}.o_icon_enlarge:before{content:"\f00e"}.o_icon_eportfolio_add:before{content:"\f12e"}.o_icon_eportfolio_link:before{content:"\f12e"}.o_icon_error:before{content:"\f06a";color:#d9534f}.o_icon_expenditure:before{content:"\f017"}.o_icon_external_link:before{content:"\f08e"}.o_icon_failed:before{content:"\f057"}.o_icon_filter:before{content:"\f0b0"}.o_icon_group:before{content:"\f0c0"}.o_icon_header:before{content:"\f1dc"}.o_icon_help:before{content:"\f059";cursor:help}.o_icon_home:before{content:"\f015"}.o_icon_impress:before{content:"\f05a"}.o_icon_important:before{content:"\f071";color:#f0ad4e}.o_icon_import:before{content:"\f093"}.o_icon_info:before{content:"\f05a";color:#5bc0de}.o_icon_info_msg:before{content:"\f06a";color:#d9534f}.o_icon_inline_editable:before{content:"\f044"}.o_icon_institution:before{content:"\f19c"}.o_icon_italic:before{content:"\f033"}.o_icon_language:before{content:"\f0ac"}.o_icon_link:before{content:"\f0c1"}.o_icon_link_extern:before{content:"\f08e"}.o_icon_list:before{content:"\f03a"}.o_icon_list_num :before{content:"\f0cb"}.o_icon_lifecycle:before{content:"\f073"}.o_icon_locked:before{content:"\f023"}.o_icon_login:before{content:"\f090"}.o_icon_logout:before{content:"\f08b"}.o_icon_mandatory:before{content:"\f069";color:#f0ad4e}.o_icon_managed:before{content:"\f079";color:#777}.o_icon_mail:before{content:"\f003"}.o_icon_math:before{content:"\f198"}.o_icon_membersmanagement:before{content:"\f0c0"}.o_icon_menuhandel:before{content:"\f0c9"}.o_icon_message:before{content:"\f0e0"}.o_icon_move:before{content:"\f047"}.o_icon_move_down:before{content:"\f103"}.o_icon_move_left:before{content:"\f100"}.o_icon_move_right:before{content:"\f101"}.o_icon_move_up:before{content:"\f102"}.o_icon_new:before{content:"\f069";color:#5cb85c}.o_icon_new_document:before{content:"\f15c"}.o_icon_new_folder:before{content:"\f07b"}.o_icon_news:before{content:"\f05a"}.o_icon_next:before{content:"\f0a9"}.o_icon_next_page:before{content:"\f101"}.o_icon_notes:before{content:"\f040"}.o_icon_notification:before{content:"\f09e"}.o_icon_open_tree:before{content:"\f0da"}.o_icon_open_togglebox:before,.o_togglebox_wrapper .o_opener i:before{content:"\f0da"}.o_icon_openolat:before,.o_icon_provider_olat:before{content:"\221E";font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:bold}.o_icon_passed:before{content:"\f058"}.o_icon_password:before{content:"\f023"}.o_icon_post:before{content:"\f0e5"}.o_icon_preview:before{content:"\f06e"}.o_icon_previous:before{content:"\f0a8"}.o_icon_previous_page:before{content:"\f100"}.o_icon_print:before{content:"\f02f"}.o_icon_private:before{content:"\f02f"}.o_icon_provider_guest:before{content:"\f1ae"}.o_icon_provider_ldap:before{content:"\f19c"}.o_icon_provider_shibboleth:before{content:"\f19c"}.o_icon_publish:before{content:"\f064"}.o_icon_qrcode:before{content:"\f029"}.o_icon_rating_on:before,.o_rating .o_rating_items.o_enabled .o_icon:hover:before{content:"\f005"}.o_icon_rating_off:before{content:"\f006"}.o_icon_read:before{content:"\f10c"}.o_icon_readonly:before{content:"\f044";color:red}.o_icon_readwrite:before{content:"\f044"}.o_icon_recycle:before{content:"\f1b8"}.o_icon_refresh:before{content:"\f021"}.o_icon_reject:before{content:"\f00d";color:#d9534f}.o_icon_remove:before{content:"\f00d"}.o_icon_reply:before{content:"\f112"}.o_icon_reply_with_quote:before{content:"\f122"}.o_icon_rss:before{content:"\f09e"}.o_icon_rss_unsubscribe:before{content:"\f09e";color:#996633}.o_icon_search:before{content:"\f002"}.o_icon_settings:before{content:"\f085"}.o_icon_share:before{content:"\f064"}.o_icon_show_more:before{content:"\f150"}.o_icon_show_less:before{content:"\f151"}.o_icon_spacer:before{content:"\f07e"}.o_icon_split:before{content:"\f127"}.o_icon_sort:before{content:"\f0dc"}.o_icon_sort_asc:before{content:"\f0de"}.o_icon_sort_desc:before{content:"\f0dd"}.o_icon_sort_menu:before{content:"\f160"}.o_icon_start:before{content:"\f054"}.o_icon_status_available:before{content:"\f111";color:#006633}.o_icon_status_chat:before{content:"\f075"}.o_icon_status_dnd:before{content:"\f192";color:#CCCC33}.o_icon_status_unavailable:before{content:"\f05c";color:#996633}.o_icon_statistics_tool:before{content:"\f080"}.o_icon_table:before{content:"\f0ce"}.o_icon_table_large:before{content:"\f009"}.o_icon_timelimit:before{content:"\f1e2"}.o_icon_toggle:before{content:"\f111"}.o_icon_to_read:before{content:"\f111"}.o_icon_tool:before{content:"\f013"}.o_icon_tools:before{content:"\f0ad"}.o_icon_top:before{content:"\f077"}.o_icon_translation_item:before{content:"\f1c9"}.o_icon_translation_package:before{content:"\f115"}.o_icon_user:before{content:"\f007"}.o_icon_user_vip:before{content:"\f19d"}.o_icon_user_anonymous:before{content:"\f128"}.o_icon_upload:before{content:"\f093"}.o_icon_version:before{content:"\f1da"}.o_icon_video:before{content:"\f008"}.o_icon_warn:before{content:"\f071";color:#f0ad4e}.o_icon_wizard:before{content:"\f0d0"}.o_CourseModule_icon:before,.o_course_icon:before{content:"\f1b2"}.o_EPStructuredMapTemplate_icon:before{content:"\f12e"}.o_FileResource-BLOG_icon:before{content:"\f0a1"}.o_FileResource-IMSCP_icon:before{content:"\f187"}.o_FileResource-PODCAST_icon:before{content:"\f03d"}.o_FileResource-SHAREDFOLDER:before{content:"\f08e"}.o_FileResource-SCORMCP_icon:before{content:"\f187"}.o_FileResource-SURVEY_icon:before{content:"\f11a"}.o_FileResource-TEST_icon:before{content:"\f044"}.o_FileResource-WIKI_icon:before{content:"\f0ac"}.o_FileResource-SHAREDFOLDER_icon:before{content:"\f115"}.o_FileResource-GLOSSARY_icon:before{content:"\f19d"}.o_FileResource-PDF_icon:before{content:"\f1c1"}.o_FileResource-XLS_icon:before{content:"\f1c3"}.o_FileResource-PPT_icon:before{content:"\f1c4"}.o_FileResource-DOC_icon:before{content:"\f1c2"}.o_FileResource-ANIM_icon:before{content:"\f1c8"}.o_FileResource-IMAGE_icon:before{content:"\f1c5"}.o_FileResource-SOUND_icon:before{content:"\f1c7"}.o_FileResource-MOVIE_icon:before{content:"\f1c8"}.o_FileResource-FILE_icon:before{content:"\f016"}.o_portlet_infomsg_icon:before{content:"\f05a"}.o_portlet_quickstart_icon:before{content:"\f1d9"}.o_portlet_bookmark_icon:before{content:"\f02e"}.o_portlet_groups_icon:before{content:"\f0c0"}.o_portlet_notes_icon:before{content:"\f040"}.o_portlet_noti_icon:before{content:"\f09e"}.o_portlet_eff_icon:before{content:"\f0a3"}.o_portlet_repository_student_icon:before{content:"\f1b3"}.o_portlet_repository_teacher_icon:before{content:"\f19d"}.o_portlet_iframe_icon:before{content:"\f005"}.o_portlet_sysinfo_icon:before{content:"\f0e4"}.o_portlet_dyk_icon:before{content:"\f0eb"}.o_portlet_infomessages_icon:before{content:"\f0e5"}.o_portlet_cal_icon:before{content:"\f073"}.o_portlet_institutions_icon:before{content:"\f19c"}.o_portlet_links_icon:before{content:"\f0c1"}.o_portlet_shibboleth_icon:before{content:"\f090"}.o_icon_qpool:before{content:"\f19c"}.o_icon_pool_private:before{content:"\f00d"}.o_icon_pool_public:before{content:"\f00c"}.o_icon_pool_my_items:before{content:"\f007"}.o_icon_pool_favorits:before{content:"\f02e"}.o_icon_pool_collection:before{content:"\f03a"}.o_icon_pool_pool:before{content:"\f1e1"}.o_icon_pool_share:before{content:"\f0c0"}.o_forum_message_icon:before{content:"\f0e5"}.o_calendar_icon:before{content:"\f073"}.o_forum_status_thread_icon:before{content:"\f0e6"}.o_forum_status_sticky_closed_icon:before{content:"\f05e"}.o_forum_status_sticky_icon:before{content:"\f086"}.o_forum_status_closed_icon:before{content:"\f05e";color:#a94442}.o_forum_status_opened_icon:before{content:"\f05e";color:#3c763d}.o_forum_status_hidden_icon:before{content:"\f070";color:#a94442}.o_forum_status_visible_icon:before{content:"\f06e";color:#3c763d}.o_mi_qtisc:before{content:"\f192"}.o_mi_qtimc:before{content:"\f046"}.o_mi_qtikprim:before{content:"\f14a"}.o_mi_qtifib:before{content:"\f141"}.o_mi_qtiessay:before{content:"\f036"}.o_black_led:before{content:"\f111";color:#428bca}.o_green_led:before{content:"\f111";color:#5cb85c}.o_yellow_led:before{content:"\f111";color:#f0ad4e}.o_red_led:before{content:"\f111";color:#d9534f}.o_ac_token_icon:before{content:"\f084"}.o_ac_free_icon:before{content:"\f06b"}.o_ac_group_icon:before{content:"\f0c0"}.o_ac_membersonly_icon:before{content:"\f023"}.o_ac_paypal_icon:before{content:"\f09d"}.o_ac_status_canceled_icon:before{content:"\f068";color:#f0ad4e}.o_ac_status_error_icon:before{content:"\f00d";color:#d9534f}.o_ac_status_new_icon:before{content:"\f069";color:#428bca}.o_ac_status_succes_icon:before{content:"\f00c";color:#5cb85c}.o_ac_status_waiting_icon:before{content:"\f017";color:#428bca}.o_ac_order_status_new_icon:before{content:"\f069";color:#428bca}.o_ac_order_status_prepayment_icon:before{content:"\f0d6";color:#5bc0de}.o_ac_order_status_payed_icon:before{content:"\f00c";color:#5cb85c}.o_ac_order_status_canceled_icon:before{content:"\f068";color:#f0ad4e}.o_ac_order_status_error_icon:before{content:"\f00d";color:#d9534f}.o_ac_order_status_warning_icon:before{content:"\f12a";color:#f0ad4e}.o_filetype_file:before,.o_filetype_ico:before{content:"\f016"}.o_filetype_folder:before{content:"\f114"}.o_filetype_folder_open:before{content:"\f115"}.o_filetype_zip:before,.o_filetype_gz:before,.o_filetype_tar:before,.o_filetype_tgz:before{content:"\f1c6"}.o_filetype_css:before,.o_filetype_js:before,.o_filetype_java:before,.o_filetype_numbers:before,.o_filetype_ods:before,.o_filetype_xml:before,.o_filetype_xsl:before{content:"\f1c9"}.o_filetype_bat_icon:before,.o_filetype_bat:before,.o_filetype_exe:before,.o_filetype_app:before,.o_filetype_sh:before{content:"\f1c9"}.o_filetype_xls:before,.o_filetype_xlsx:before{content:"\f1c3"}.o_filetype_png:before,.o_filetype_tiff:before,.o_filetype_webp:before,.o_filetype_gif:before,.o_filetype_ico:before,.o_filetype_jpeg:before,.o_filetype_bmp:before,.o_filetype_odg:before,.o_filetype_eps:before,.o_filetype_jpg:before{content:"\f1c5"}.o_filetype_psd:before,.o_filetype_avi:before,.o_filetype_dvi:before,.o_filetype_mp4:before,.o_filetype_m4v:before,.o_filetype_webm:before,.o_filetype_ogg:before,.o_filetype_video:before,.o_filetype_mov:before,.o_filetype_mpeg:before,.o_filetype_mpg:before,.o_filetype_qt:before,.o_filetype_ra:before,.o_filetype_ram:before,.o_filetype_swf:before,.o_filetype_flv:before{content:"\f1c8"}.o_filetype_midi:before,.o_filetype_audio:before,.o_filetype_mp3:before,.o_filetype_m3u:before,.o_filetype_wav:before{content:"\f1c7"}.o_filetype_ps:before,.o_filetype_pdf:before{content:"\f1c1"}.o_filetype_key:before,.o_filetype_odp:before,.o_filetype_ppt:before,.o_filetype_pptx:before{content:"\f1c4"}.o_filetype_odf:before,.o_filetype_rtf:before,.o_filetype_readme:before,.o_filetype_README:before,.o_filetype_log:before,.o_filetype_txt:before,.o_filetype_htm:before,.o_filetype_html:before{content:"\f0f6"}.o_filetype_odt:before,.o_filetype_pages:before,.o_filetype_doc:before,.o_filetype_docx:before{content:"\f1c2"}.o_icon_apple:before{content:"\f179"}.o_icon_facebook:before{content:"\f082"}.o_icon_twitter:before{content:"\f081"}.o_icon_google:before{content:"\f0d4"}.o_icon_delicious:before{content:"\f1a5"}.o_icon_digg:before{content:"\f1a6"}.o_icon_mailto:before{content:"\f199"}.o_icon_link:before{content:"\f0c1"}.o_icon_yahoo:before{content:"\f19e"}a.o_icon:hover,a.o_icon:focus{text-decoration:none}img.o_emoticons_angel{background:url(../light/images/emoticons/smiley-angel.png);width:16px;height:16px}img.o_emoticons_angry{background:url(../light/images/emoticons/smiley-mad.png);width:16px;height:16px}img.o_emoticons_blushing{background:url(../light/images/emoticons/smiley-red.png);width:16px;height:16px}img.o_emoticons_confused{background:url(../light/images/emoticons/smiley-confuse.png);width:16px;height:16px}img.o_emoticons_cool{background:url(../light/images/emoticons/smiley-cool.png);width:16px;height:16px}img.o_emoticons_cry{background:url(../light/images/emoticons/smiley-cry.png);width:16px;height:16px}img.o_emoticons_devil{background:url(../light/images/emoticons/smiley-evil.png);width:16px;height:16px}img.o_emoticons_grin{background:url(../light/images/emoticons/smiley-grin.png);width:16px;height:16px}img.o_emoticons_kiss{background:url(../light/images/emoticons/smiley-kiss.png);width:16px;height:16px}img.o_emoticons_ohoh{background:url(../light/images/emoticons/smiley-eek.png);width:16px;height:16px}img.o_emoticons_sad{background:url(../light/images/emoticons/smiley-sad.png);width:16px;height:16px}img.o_emoticons_sick{background:url(../light/images/emoticons/smiley-sad-blue.png);width:16px;height:16px}img.o_emoticons_smile{background:url(../light/images/emoticons/smiley.png);width:16px;height:16px}img.o_emoticons_tongue{background:url(../light/images/emoticons/smiley-razz.png);width:16px;height:16px}img.o_emoticons_ugly{background:url(../light/images/emoticons/smiley-money.png);width:16px;height:16px}img.o_emoticons_weird{background:url(../light/images/emoticons/smiley-nerd.png);width:16px;height:16px}img.o_emoticons_wink{background:url(../light/images/emoticons/smiley-wink.png);width:16px;height:16px}img.o_emoticons_worried{background:url(../light/images/emoticons/smiley-roll-blue.png);width:16px;height:16px}img.o_emoticons_up{background:url(../light/images/emoticons/thumb-up.png);width:16px;height:16px}img.o_emoticons_down{background:url(../light/images/emoticons/thumb.png);width:16px;height:16px}.o_block_bottom,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry,.o_header_with_buttons,.o_search_result{margin-bottom:1em}.o_block_top,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry{margin-top:1em}.o_block_large_bottom,.o_block_large,.o_block_with_datecomp,.o_portlet{margin-bottom:2em}.o_block_large_top,.o_block_large,.o_block_with_datecomp,.o_portlet{margin-top:2em}.o_scrollblock{overflow-x:auto;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_button_group{text-align:center}.o_button_group a,.o_button_group input,.o_button_group button,.o_button_group .btn-group{margin-right:5px;margin-bottom:0.5em}.o_button_group a:last-child,.o_button_group input:last-child,.o_button_group button:last-child,.o_button_group .btn-group:last-child{margin-right:0}.o_button_group .btn-group a,.o_button_group .btn-group input,.o_button_group .btn-group button{margin-right:0;margin-bottom:0}.o_button_group .dropdown-menu{text-align:left}.o_button_group_left{text-align:left}.o_button_group_right{text-align:right}.o_button_group_top{margin-top:0}.o_header_with_buttons:before,.o_header_with_buttons:after{content:" ";display:table}.o_header_with_buttons:after{clear:both}.o_header_with_buttons h3,.o_header_with_buttons h4,.o_header_with_buttons .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_header_with_buttons h2{display:inline-block}.o_header_with_buttons .o_button_group{margin-top:10px;margin-bottom:0;float:right}.o_xsmall{font-size:12px}.o_small,.o_comments .o_comment_wrapper h5,.o_comments .o_comment_wrapper .o_comment,.o_bc_meta,.tooltip,.o_noti,.o_block_with_datecomp .o_meta,.o_togglebox_wrapper div.o_togglebox_content .o_hide,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label,.o_course_run .o_toc .o_entry{font-size:12px}.o_large{font-size:18px}.o_xlarge{font-size:18px}.o_disabled{color:#777 !important;cursor:default}.o_disabled:hover{color:#777 !important}.o_dimmed{opacity:0.4;filter:alpha(opacity=40)}.o_selected{font-weight:bold}.o_deleted{text-decoration:line-through}.o_ochre{color:#c8a959}.o_blue{color:#12223F}.o_undecorated:hover,.o_undecorated:focus,.o_disabled:hover,.o_withEllipsis .o_morelink:hover,.o_withEllipsis .o_lesslink:hover,#o_main_wrapper #o_toplink:hover,#o_footer_wrapper #o_footer_container #o_footer_powered a:hover,#o_share a:hover,.o_toolbar a:hover,.o_button_toggle:hover,.o_im_message_group .o_im_from:hover,.o_noti .o_label:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover,.o_catalog .o_level .o_meta .o_title a:hover,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover,.o_repo_details .o_social .o_comments:hover,.o_login .o_login_register:hover,.o_disabled:focus,.o_withEllipsis .o_morelink:focus,.o_withEllipsis .o_lesslink:focus,#o_main_wrapper #o_toplink:focus,#o_footer_wrapper #o_footer_container #o_footer_powered a:focus,#o_share a:focus,.o_toolbar a:focus,.o_button_toggle:focus,.o_im_message_group .o_im_from:focus,.o_noti .o_label:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:focus,.o_catalog .o_level .o_meta .o_title a:focus,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:focus,.o_repo_details .o_social .o_comments:focus,.o_login .o_login_register:focus{text-decoration:none}.o_copy_code{overflow-x:auto;overflow-y:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;white-space:nowrap;border-radius:4px}.o_nowrap{white-space:nowrap}.o_titled_wrapper .o_content{margin-top:20px}.o_video{display:block;width:100% \9;max-width:100%;height:auto}.o_image{display:block;width:100% \9;max-width:100%;height:auto}.o_withEllipsis .o_ellipsis_links{float:right}.o_withEllipsis .o_morelink,.o_withEllipsis .o_lesslink{display:none}.o_withEllipsis.o_hasOverflow .o_morelink{display:block}.o_withEllipsis.o_hasOverflow .o_lesslink{display:none}.o_withEllipsis.o_hasOverflow.o_showOverflow{height:auto !important}.o_withEllipsis.o_hasOverflow.o_showOverflow .o_morelink{display:none}.o_withEllipsis.o_hasOverflow.o_showOverflow .o_lesslink{display:block}html{position:relative;min-height:100%}body{min-height:100%;margin-bottom:70px}#o_main_wrapper{background:#fff;z-index:3}#o_main_wrapper #o_main_container{background:#fff}#o_main_wrapper #o_main_container #o_main_left{float:left;z-index:2;position:relative;background:#fff}#o_main_wrapper #o_main_container #o_main_left #o_main_left_content{padding:0 0 0 15px}#o_main_wrapper #o_main_container #o_main_left #o_main_left_toggle{position:absolute;display:none;right:0;top:70px;margin-right:-30px;font-size:25px;line-height:35px;text-align:center;width:30px;height:35px;z-index:3;border:1px solid #ddd;border-left:none;border-bottom-right-radius:4px;border-top-right-radius:4px;background-color:#fbfbfb;-webkit-box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);color:#428bca}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas{background:#fbfbfb;-webkit-box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);min-width:250px}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas #o_main_left_content{padding:0 0 0 0}#o_main_wrapper #o_main_container #o_main_right{float:right;z-index:2;position:relative;background:inherit}#o_main_wrapper #o_main_container #o_main_right #o_main_right_content{padding:0 15px 0 0}#o_main_wrapper #o_main_container #o_main_center{position:relative;z-index:1;background:inherit}#o_main_wrapper #o_main_container #o_main_center h2:first-child{margin-top:0}@media screen and (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center{margin-left:0 !important}}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:0 15px}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content #o_main_center_content_inner{padding-bottom:15px}#o_main_wrapper #o_toplink{position:absolute;bottom:0;right:15px;text-align:center;z-index:3}@media (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:15px}} +@media print{.hidden-print{display:none !important}}body .modal{position:absolute;overflow:visible}body div.tooltip-inner{max-width:400px}body div.popover{max-width:450px}body .modal-body.alert{border-radius:0}body .progress{margin-bottom:0}.panel-body:nth-child(n+2){border-top:1px solid #ddd}.form-control-feedback{top:10px}.form-horizontal .has-feedback .form-control-feedback{top:10px}@font-face{font-family:'FontAwesome';src:url("../../../font-awesome/fonts/fontawesome-webfont.eot?v=4.1.0");src:url("../../../font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.1.0") format("embedded-opentype"),url("../../../font-awesome/fonts/fontawesome-webfont.woff?v=4.1.0") format("woff"),url("../../../font-awesome/fonts/fontawesome-webfont.ttf?v=4.1.0") format("truetype"),url("../../../font-awesome/fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular") format("svg");font-weight:normal;font-style:normal}.o_icon{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_icon-lg{font-size:1.33333em;line-height:0.75em;vertical-align:-15%}.o_icon-2x{font-size:2em}.o_icon-3x{font-size:3em}.o_icon-4x{font-size:4em}.o_icon-5x{font-size:5em}.o_icon-fw{width:1.28571em;text-align:center}.o_icon-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.o_icon-ul>li{position:relative}.o_icon-li{position:absolute;left:-2.14286em;width:2.14286em;top:0.14286em;text-align:center}.o_icon-li.o_icon-lg{left:-1.85714em}.o_icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.o_icon.pull-left{margin-right:.3em}.o_icon.pull-right{margin-left:.3em}.o_icon-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.o_icon-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.o_icon-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.o_icon-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.o_icon-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1)}.o_icon-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1)}.o_icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.o_icon-stack-1x,.o_icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.o_icon-stack-1x{line-height:inherit}.o_icon-stack-2x{font-size:2em}.o_icon-inverse{color:#fff}.o_icon_accessibility:before{content:"\f193"}.o_icon_actions:before{content:"\f085"}.o_icon_archive_tool:before{content:"\f019"}.o_icon_assessment_tool:before{content:"\f091"}.o_icon_attempt_limit:before{content:"\f021"}.o_icon_accept:before{content:"\f00c";color:#5cb85c}.o_icon_add:before{content:"\f055"}.o_icon_add_search:before{content:"\f00e"}.o_icon_audio:before{content:"\f028"}.o_icon_back:before{content:"\f053"}.o_icon_back_history:before{content:"\f1da"}.o_icon_bold:before{content:"\f032"}.o_icon_booking:before{content:"\f07a"}.o_icon_bookmark:before{content:"\f02e";color:#996633}.o_icon_bookmark_add:before{content:"\f097"}.o_icon_bookmark_header:before{content:"\f02e"}.o_icon_browse:before{content:"\f00e"}.o_icon_browsercheck:before{content:"\f164"}.o_icon_busy:before{content:"\f110"}.o_icon_calendar:before{content:"\f073"}.o_icon_calendar_enabled:before{content:"\f05d"}.o_icon_calendar_disabled:before{content:"\f10c"}.o_icon_calendar:before{content:"\f073"}.o_icon_caret:before{content:"\f0d7"}.o_icon_catalog:before{content:"\f0e8"}.o_icon_catalog_sub:before{content:"\f07b"}.o_icon_certificate:before{content:"\f0a3"}.o_icon_chat:before{content:"\f0e5"}.o_icon_check:before{content:"\f00c"}.o_icon_check_off:before{content:"\f096"}.o_icon_check_on:before{content:"\f046"}.o_icon_checkbox:before{content:"\f096"}.o_icon_checkbox_checked:before{content:"\f14a"}.o_icon_cleanup:before{content:"\f0f9"}.o_icon_close:before{content:"\f00d"}.o_icon_close_resource:before{content:"\f011"}.o_icon_close_tab:before{content:"\f00d"}.o_icon_close_tool:before{content:"\f00d"}.o_icon_close_tree:before{content:"\f0d7"}.o_icon_close_togglebox:before,.o_togglebox_wrapper .o_opener.o_in i:before{content:"\f0d7"}.o_icon_code:before{content:"\f121"}.o_icon_color_picker:before{content:"\f043"}.o_icon_copy:before{content:"\f0c5"}.o_icon_courseareas:before{content:"\f1db"}.o_icon_coursedb:before{content:"\f1c0"}.o_icon_courseeditor:before{content:"\f044"}.o_icon_coursefolder:before{content:"\f114"}.o_icon_courserun:before{content:"\f1b2"}.o_icon_comments:before{content:"\f086"}.o_icon_comments_none:before{content:"\f0e5"}.o_icon_content_popup:before{content:"\f08e"}.o_icon_customize:before{content:"\f013"}.o_icon_delete_item:before{content:"\f014"}.o_icon_delete:before{content:"\f056";color:#A87E7E}.o_icon_details:before{content:"\f0eb"}.o_icon_dev:before{content:"\f188"}.o_icon_disabled:before{content:"\f10c"}.o_icon_download:before{content:"\f019"}.o_icon_edit:before{content:"\f044"}.o_icon_edit_file:before{content:"\f044"}.o_icon_edit_metadata:before{content:"\f013"}.o_icon_enabled:before{content:"\f111"}.o_icon_enlarge:before{content:"\f00e"}.o_icon_eportfolio_add:before{content:"\f12e"}.o_icon_eportfolio_link:before{content:"\f12e"}.o_icon_error:before{content:"\f06a";color:#d9534f}.o_icon_expenditure:before{content:"\f017"}.o_icon_external_link:before{content:"\f08e"}.o_icon_failed:before{content:"\f057"}.o_icon_filter:before{content:"\f0b0"}.o_icon_group:before{content:"\f0c0"}.o_icon_header:before{content:"\f1dc"}.o_icon_help:before{content:"\f059";cursor:help}.o_icon_home:before{content:"\f015"}.o_icon_impress:before{content:"\f05a"}.o_icon_important:before{content:"\f071";color:#f0ad4e}.o_icon_import:before{content:"\f093"}.o_icon_info:before{content:"\f05a";color:#5bc0de}.o_icon_info_msg:before{content:"\f06a";color:#d9534f}.o_icon_inline_editable:before{content:"\f044"}.o_icon_institution:before{content:"\f19c"}.o_icon_italic:before{content:"\f033"}.o_icon_language:before{content:"\f0ac"}.o_icon_link:before{content:"\f0c1"}.o_icon_link_extern:before{content:"\f08e"}.o_icon_list:before{content:"\f03a"}.o_icon_list_num :before{content:"\f0cb"}.o_icon_lifecycle:before{content:"\f073"}.o_icon_locked:before{content:"\f023"}.o_icon_login:before{content:"\f090"}.o_icon_logout:before{content:"\f08b"}.o_icon_mandatory:before{content:"\f069";color:#f0ad4e}.o_icon_managed:before{content:"\f079";color:#777}.o_icon_mail:before{content:"\f003"}.o_icon_math:before{content:"\f198"}.o_icon_membersmanagement:before{content:"\f0c0"}.o_icon_menuhandel:before{content:"\f0c9"}.o_icon_message:before{content:"\f0e0"}.o_icon_move:before{content:"\f047"}.o_icon_move_down:before{content:"\f103"}.o_icon_move_left:before{content:"\f100"}.o_icon_move_right:before{content:"\f101"}.o_icon_move_up:before{content:"\f102"}.o_icon_new:before{content:"\f069";color:#5cb85c}.o_icon_new_document:before{content:"\f15c"}.o_icon_new_folder:before{content:"\f07b"}.o_icon_news:before{content:"\f05a"}.o_icon_next:before{content:"\f0a9"}.o_icon_next_page:before{content:"\f101"}.o_icon_notes:before{content:"\f040"}.o_icon_notification:before{content:"\f09e"}.o_icon_open_tree:before{content:"\f0da"}.o_icon_open_togglebox:before,.o_togglebox_wrapper .o_opener i:before{content:"\f0da"}.o_icon_openolat:before,.o_icon_provider_olat:before{content:"\221E";font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:bold}.o_icon_passed:before{content:"\f058"}.o_icon_password:before{content:"\f023"}.o_icon_post:before{content:"\f0e5"}.o_icon_preview:before{content:"\f06e"}.o_icon_previous:before{content:"\f0a8"}.o_icon_previous_page:before{content:"\f100"}.o_icon_print:before{content:"\f02f"}.o_icon_private:before{content:"\f02f"}.o_icon_provider_guest:before{content:"\f1ae"}.o_icon_provider_ldap:before{content:"\f19c"}.o_icon_provider_shibboleth:before{content:"\f19c"}.o_icon_publish:before{content:"\f064"}.o_icon_qrcode:before{content:"\f029"}.o_icon_radio_off:before{content:"\f10c"}.o_icon_radio_on:before{content:"\f05d"}.o_icon_rating_on:before,.o_rating .o_rating_items.o_enabled .o_icon:hover:before{content:"\f005"}.o_icon_rating_off:before{content:"\f006"}.o_icon_read:before{content:"\f10c"}.o_icon_readonly:before{content:"\f044";color:red}.o_icon_readwrite:before{content:"\f044"}.o_icon_recycle:before{content:"\f1b8"}.o_icon_refresh:before{content:"\f021"}.o_icon_reject:before{content:"\f00d";color:#d9534f}.o_icon_remove:before{content:"\f00d"}.o_icon_reply:before{content:"\f112"}.o_icon_reply_with_quote:before{content:"\f122"}.o_icon_rss:before{content:"\f09e"}.o_icon_rss_unsubscribe:before{content:"\f09e";color:#996633}.o_icon_search:before{content:"\f002"}.o_icon_settings:before{content:"\f085"}.o_icon_share:before{content:"\f064"}.o_icon_show_more:before{content:"\f150"}.o_icon_show_less:before{content:"\f151"}.o_icon_spacer:before{content:"\f07e"}.o_icon_split:before{content:"\f127"}.o_icon_sort:before{content:"\f0dc"}.o_icon_sort_asc:before{content:"\f0de"}.o_icon_sort_desc:before{content:"\f0dd"}.o_icon_sort_menu:before{content:"\f160"}.o_icon_start:before{content:"\f054"}.o_icon_status_available:before{content:"\f111";color:#006633}.o_icon_status_chat:before{content:"\f075"}.o_icon_status_dnd:before{content:"\f192";color:#CCCC33}.o_icon_status_unavailable:before{content:"\f05c";color:#996633}.o_icon_statistics_tool:before{content:"\f080"}.o_icon_table:before{content:"\f0ce"}.o_icon_table_large:before{content:"\f009"}.o_icon_tags:before{content:"\f02c"}.o_icon_timelimit:before{content:"\f1e2"}.o_icon_toggle:before{content:"\f111"}.o_icon_to_read:before{content:"\f111"}.o_icon_tool:before{content:"\f013"}.o_icon_tools:before{content:"\f0ad"}.o_icon_top:before{content:"\f077"}.o_icon_translation_item:before{content:"\f1c9"}.o_icon_translation_package:before{content:"\f115"}.o_icon_user:before{content:"\f007"}.o_icon_user_vip:before{content:"\f19d"}.o_icon_user_anonymous:before{content:"\f128"}.o_icon_upload:before{content:"\f093"}.o_icon_version:before{content:"\f1da"}.o_icon_video:before{content:"\f008"}.o_icon_warn:before{content:"\f071";color:#f0ad4e}.o_icon_wizard:before{content:"\f0d0"}.o_CourseModule_icon:before,.o_course_icon:before{content:"\f1b2"}.o_EPStructuredMapTemplate_icon:before{content:"\f12e"}.o_FileResource-BLOG_icon:before{content:"\f0a1"}.o_FileResource-IMSCP_icon:before{content:"\f187"}.o_FileResource-PODCAST_icon:before{content:"\f03d"}.o_FileResource-SHAREDFOLDER:before{content:"\f08e"}.o_FileResource-SCORMCP_icon:before{content:"\f187"}.o_FileResource-SURVEY_icon:before{content:"\f11a"}.o_FileResource-TEST_icon:before{content:"\f044"}.o_FileResource-WIKI_icon:before{content:"\f0ac"}.o_FileResource-SHAREDFOLDER_icon:before{content:"\f115"}.o_FileResource-GLOSSARY_icon:before{content:"\f19d"}.o_FileResource-PDF_icon:before{content:"\f1c1"}.o_FileResource-XLS_icon:before{content:"\f1c3"}.o_FileResource-PPT_icon:before{content:"\f1c4"}.o_FileResource-DOC_icon:before{content:"\f1c2"}.o_FileResource-ANIM_icon:before{content:"\f1c8"}.o_FileResource-IMAGE_icon:before{content:"\f1c5"}.o_FileResource-SOUND_icon:before{content:"\f1c7"}.o_FileResource-MOVIE_icon:before{content:"\f1c8"}.o_FileResource-FILE_icon:before{content:"\f016"}.o_portlet_infomsg_icon:before{content:"\f05a"}.o_portlet_quickstart_icon:before{content:"\f1d9"}.o_portlet_bookmark_icon:before{content:"\f02e"}.o_portlet_groups_icon:before{content:"\f0c0"}.o_portlet_notes_icon:before{content:"\f040"}.o_portlet_noti_icon:before{content:"\f09e"}.o_portlet_eff_icon:before{content:"\f0a3"}.o_portlet_repository_student_icon:before{content:"\f1b3"}.o_portlet_repository_teacher_icon:before{content:"\f19d"}.o_portlet_iframe_icon:before{content:"\f005"}.o_portlet_sysinfo_icon:before{content:"\f0e4"}.o_portlet_dyk_icon:before{content:"\f0eb"}.o_portlet_infomessages_icon:before{content:"\f0e5"}.o_portlet_cal_icon:before{content:"\f073"}.o_portlet_institutions_icon:before{content:"\f19c"}.o_portlet_links_icon:before{content:"\f0c1"}.o_portlet_shibboleth_icon:before{content:"\f090"}.o_icon_qpool:before{content:"\f19c"}.o_icon_pool_private:before{content:"\f00d"}.o_icon_pool_public:before{content:"\f00c"}.o_icon_pool_my_items:before{content:"\f007"}.o_icon_pool_favorits:before{content:"\f02e"}.o_icon_pool_collection:before{content:"\f03a"}.o_icon_pool_pool:before{content:"\f1e1"}.o_icon_pool_share:before{content:"\f0c0"}.o_forum_message_icon:before{content:"\f0e5"}.o_calendar_icon:before{content:"\f073"}.o_forum_status_thread_icon:before{content:"\f0e6"}.o_forum_status_sticky_closed_icon:before{content:"\f05e"}.o_forum_status_sticky_icon:before{content:"\f086"}.o_forum_status_closed_icon:before{content:"\f05e";color:#a94442}.o_forum_status_opened_icon:before{content:"\f05e";color:#3c763d}.o_forum_status_hidden_icon:before{content:"\f070";color:#a94442}.o_forum_status_visible_icon:before{content:"\f06e";color:#3c763d}.o_mi_qtisc:before{content:"\f192"}.o_mi_qtimc:before{content:"\f046"}.o_mi_qtikprim:before{content:"\f14a"}.o_mi_qtifib:before{content:"\f141"}.o_mi_qtiessay:before{content:"\f036"}.o_black_led:before{content:"\f111";color:#428bca}.o_green_led:before{content:"\f111";color:#5cb85c}.o_yellow_led:before{content:"\f111";color:#f0ad4e}.o_red_led:before{content:"\f111";color:#d9534f}.o_ac_token_icon:before{content:"\f084"}.o_ac_free_icon:before{content:"\f06b"}.o_ac_group_icon:before{content:"\f0c0"}.o_ac_membersonly_icon:before{content:"\f023"}.o_ac_paypal_icon:before{content:"\f09d"}.o_ac_status_canceled_icon:before{content:"\f068";color:#f0ad4e}.o_ac_status_error_icon:before{content:"\f00d";color:#d9534f}.o_ac_status_new_icon:before{content:"\f069";color:#428bca}.o_ac_status_succes_icon:before{content:"\f00c";color:#5cb85c}.o_ac_status_waiting_icon:before{content:"\f017";color:#428bca}.o_ac_order_status_new_icon:before{content:"\f069";color:#428bca}.o_ac_order_status_prepayment_icon:before{content:"\f0d6";color:#5bc0de}.o_ac_order_status_payed_icon:before{content:"\f00c";color:#5cb85c}.o_ac_order_status_canceled_icon:before{content:"\f068";color:#f0ad4e}.o_ac_order_status_error_icon:before{content:"\f00d";color:#d9534f}.o_ac_order_status_warning_icon:before{content:"\f12a";color:#f0ad4e}.o_filetype_file:before,.o_filetype_ico:before{content:"\f016"}.o_filetype_folder:before{content:"\f114"}.o_filetype_folder_open:before{content:"\f115"}.o_filetype_zip:before,.o_filetype_gz:before,.o_filetype_tar:before,.o_filetype_tgz:before{content:"\f1c6"}.o_filetype_css:before,.o_filetype_js:before,.o_filetype_java:before,.o_filetype_numbers:before,.o_filetype_ods:before,.o_filetype_xml:before,.o_filetype_xsl:before{content:"\f1c9"}.o_filetype_bat_icon:before,.o_filetype_bat:before,.o_filetype_exe:before,.o_filetype_app:before,.o_filetype_sh:before{content:"\f1c9"}.o_filetype_xls:before,.o_filetype_xlsx:before{content:"\f1c3"}.o_filetype_png:before,.o_filetype_tiff:before,.o_filetype_webp:before,.o_filetype_gif:before,.o_filetype_ico:before,.o_filetype_jpeg:before,.o_filetype_bmp:before,.o_filetype_odg:before,.o_filetype_eps:before,.o_filetype_jpg:before{content:"\f1c5"}.o_filetype_psd:before,.o_filetype_avi:before,.o_filetype_dvi:before,.o_filetype_mp4:before,.o_filetype_m4v:before,.o_filetype_webm:before,.o_filetype_ogg:before,.o_filetype_video:before,.o_filetype_mov:before,.o_filetype_mpeg:before,.o_filetype_mpg:before,.o_filetype_qt:before,.o_filetype_ra:before,.o_filetype_ram:before,.o_filetype_swf:before,.o_filetype_flv:before{content:"\f1c8"}.o_filetype_midi:before,.o_filetype_audio:before,.o_filetype_mp3:before,.o_filetype_m3u:before,.o_filetype_wav:before{content:"\f1c7"}.o_filetype_ps:before,.o_filetype_pdf:before{content:"\f1c1"}.o_filetype_key:before,.o_filetype_odp:before,.o_filetype_ppt:before,.o_filetype_pptx:before{content:"\f1c4"}.o_filetype_odf:before,.o_filetype_rtf:before,.o_filetype_readme:before,.o_filetype_README:before,.o_filetype_log:before,.o_filetype_txt:before,.o_filetype_htm:before,.o_filetype_html:before{content:"\f0f6"}.o_filetype_odt:before,.o_filetype_pages:before,.o_filetype_doc:before,.o_filetype_docx:before{content:"\f1c2"}.o_icon_apple:before{content:"\f179"}.o_icon_facebook:before{content:"\f082"}.o_icon_twitter:before{content:"\f081"}.o_icon_google:before{content:"\f0d4"}.o_icon_delicious:before{content:"\f1a5"}.o_icon_digg:before{content:"\f1a6"}.o_icon_mailto:before{content:"\f199"}.o_icon_link:before{content:"\f0c1"}.o_icon_yahoo:before{content:"\f19e"}a.o_icon:hover,a.o_icon:focus{text-decoration:none}img.o_emoticons_angel{background:url(../light/images/emoticons/smiley-angel.png);width:16px;height:16px}img.o_emoticons_angry{background:url(../light/images/emoticons/smiley-mad.png);width:16px;height:16px}img.o_emoticons_blushing{background:url(../light/images/emoticons/smiley-red.png);width:16px;height:16px}img.o_emoticons_confused{background:url(../light/images/emoticons/smiley-confuse.png);width:16px;height:16px}img.o_emoticons_cool{background:url(../light/images/emoticons/smiley-cool.png);width:16px;height:16px}img.o_emoticons_cry{background:url(../light/images/emoticons/smiley-cry.png);width:16px;height:16px}img.o_emoticons_devil{background:url(../light/images/emoticons/smiley-evil.png);width:16px;height:16px}img.o_emoticons_grin{background:url(../light/images/emoticons/smiley-grin.png);width:16px;height:16px}img.o_emoticons_kiss{background:url(../light/images/emoticons/smiley-kiss.png);width:16px;height:16px}img.o_emoticons_ohoh{background:url(../light/images/emoticons/smiley-eek.png);width:16px;height:16px}img.o_emoticons_sad{background:url(../light/images/emoticons/smiley-sad.png);width:16px;height:16px}img.o_emoticons_sick{background:url(../light/images/emoticons/smiley-sad-blue.png);width:16px;height:16px}img.o_emoticons_smile{background:url(../light/images/emoticons/smiley.png);width:16px;height:16px}img.o_emoticons_tongue{background:url(../light/images/emoticons/smiley-razz.png);width:16px;height:16px}img.o_emoticons_ugly{background:url(../light/images/emoticons/smiley-money.png);width:16px;height:16px}img.o_emoticons_weird{background:url(../light/images/emoticons/smiley-nerd.png);width:16px;height:16px}img.o_emoticons_wink{background:url(../light/images/emoticons/smiley-wink.png);width:16px;height:16px}img.o_emoticons_worried{background:url(../light/images/emoticons/smiley-roll-blue.png);width:16px;height:16px}img.o_emoticons_up{background:url(../light/images/emoticons/thumb-up.png);width:16px;height:16px}img.o_emoticons_down{background:url(../light/images/emoticons/thumb.png);width:16px;height:16px}.o_block_bottom,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry,.o_header_with_buttons,.o_search_result{margin-bottom:1em}.o_block_top,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry{margin-top:1em}.o_block_large_bottom,.o_block_large,.o_block_with_datecomp,.o_portlet{margin-bottom:2em}.o_block_large_top,.o_block_large,.o_block_with_datecomp,.o_portlet{margin-top:2em}.o_scrollblock{overflow-x:auto;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_button_group{text-align:center}.o_button_group a,.o_button_group input,.o_button_group button,.o_button_group .btn-group{margin-right:5px;margin-bottom:0.5em}.o_button_group a:last-child,.o_button_group input:last-child,.o_button_group button:last-child,.o_button_group .btn-group:last-child{margin-right:0}.o_button_group .btn-group a,.o_button_group .btn-group input,.o_button_group .btn-group button{margin-right:0;margin-bottom:0}.o_button_group .dropdown-menu{text-align:left}.o_button_group_left{text-align:left}.o_button_group_right{text-align:right}.o_button_group_top{margin-top:0}.o_header_with_buttons:before,.o_header_with_buttons:after{content:" ";display:table}.o_header_with_buttons:after{clear:both}.o_header_with_buttons h3,.o_header_with_buttons h4,.o_header_with_buttons .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_header_with_buttons h2{display:inline-block}.o_header_with_buttons .o_button_group{margin-top:10px;margin-bottom:0;float:right}.o_xsmall{font-size:12px}.o_small,.o_comments .o_comment_wrapper h5,.o_comments .o_comment_wrapper .o_comment,.o_bc_meta,.tooltip,.o_noti,.o_block_with_datecomp .o_meta,.o_togglebox_wrapper div.o_togglebox_content .o_hide,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label,.o_course_run .o_toc .o_entry{font-size:12px}.o_large{font-size:18px}.o_xlarge{font-size:18px}.o_disabled{color:#777 !important;cursor:default}.o_disabled:hover{color:#777 !important}.o_dimmed{opacity:0.4;filter:alpha(opacity=40)}.o_selected{font-weight:bold}.o_deleted{text-decoration:line-through}.o_ochre{color:#c8a959}.o_blue{color:#12223F}.o_undecorated:hover,.o_undecorated:focus,.o_disabled:hover,.o_withEllipsis .o_morelink:hover,.o_withEllipsis .o_lesslink:hover,#o_main_wrapper #o_toplink:hover,#o_footer_wrapper #o_footer_container #o_footer_powered a:hover,#o_share a:hover,.o_toolbar a:hover,.o_button_toggle:hover,.o_im_message_group .o_im_from:hover,.o_noti .o_label:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover,.o_catalog .o_level .o_meta .o_title a:hover,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover,.o_repo_details .o_social .o_comments:hover,.o_login .o_login_register:hover,.o_disabled:focus,.o_withEllipsis .o_morelink:focus,.o_withEllipsis .o_lesslink:focus,#o_main_wrapper #o_toplink:focus,#o_footer_wrapper #o_footer_container #o_footer_powered a:focus,#o_share a:focus,.o_toolbar a:focus,.o_button_toggle:focus,.o_im_message_group .o_im_from:focus,.o_noti .o_label:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:focus,.o_catalog .o_level .o_meta .o_title a:focus,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:focus,.o_repo_details .o_social .o_comments:focus,.o_login .o_login_register:focus{text-decoration:none}.o_copy_code{overflow-x:auto;overflow-y:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;white-space:nowrap;border-radius:4px}.o_nowrap{white-space:nowrap}.o_titled_wrapper .o_content{margin-top:20px}.o_video{display:block;width:100% \9;max-width:100%;height:auto}.o_image{display:block;width:100% \9;max-width:100%;height:auto}.o_withEllipsis .o_ellipsis_links{float:right}.o_withEllipsis .o_morelink,.o_withEllipsis .o_lesslink{display:none}.o_withEllipsis.o_hasOverflow .o_morelink{display:block}.o_withEllipsis.o_hasOverflow .o_lesslink{display:none}.o_withEllipsis.o_hasOverflow.o_showOverflow{height:auto !important}.o_withEllipsis.o_hasOverflow.o_showOverflow .o_morelink{display:none}.o_withEllipsis.o_hasOverflow.o_showOverflow .o_lesslink{display:block}html{position:relative;min-height:100%}body{min-height:100%;margin-bottom:70px}#o_main_wrapper{background:#fff;z-index:3}#o_main_wrapper #o_main_container{background:#fff}#o_main_wrapper #o_main_container #o_main_left{float:left;z-index:2;position:relative;background:#fff}#o_main_wrapper #o_main_container #o_main_left #o_main_left_content{padding:0 0 0 15px}#o_main_wrapper #o_main_container #o_main_left #o_main_left_toggle{position:absolute;display:none;right:0;top:70px;margin-right:-30px;font-size:25px;line-height:35px;text-align:center;width:30px;height:35px;z-index:3;border:1px solid #ddd;border-left:none;border-bottom-right-radius:4px;border-top-right-radius:4px;background-color:#fbfbfb;-webkit-box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);color:#428bca}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas{background:#fbfbfb;-webkit-box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);min-width:250px}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas #o_main_left_content{padding:0 0 0 0}#o_main_wrapper #o_main_container #o_main_right{float:right;z-index:2;position:relative;background:inherit}#o_main_wrapper #o_main_container #o_main_right #o_main_right_content{padding:0 15px 0 0}#o_main_wrapper #o_main_container #o_main_center{position:relative;z-index:1;background:inherit}#o_main_wrapper #o_main_container #o_main_center h2:first-child{margin-top:0}@media screen and (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center{margin-left:0 !important}}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:0 15px}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content #o_main_center_content_inner{padding-bottom:15px}#o_main_wrapper #o_toplink{position:absolute;bottom:0;right:15px;text-align:center;z-index:3}@media (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:15px}} #o_footer_wrapper{position:absolute;bottom:0;width:100%;z-index:3;height:70px;overflow:hidden;background-color:#f5f5f5;color:#999;line-height:16px;font-size:12px}#o_footer_wrapper a{color:#999}#o_footer_wrapper a:hover{color:#000}#o_footer_wrapper #o_footer_container{position:relative;padding-top:10px;min-height:70px;background:#f5f5f5}#o_footer_wrapper #o_footer_container #o_footer_user #o_counter{white-space:nowrap}#o_footer_wrapper #o_footer_container #o_footer_user #o_username{white-space:nowrap;margin-right:1em}#o_footer_wrapper #o_footer_container #o_footer_version{position:absolute;right:15px;top:10px;text-align:right}@media (max-width: 767px){#o_footer_wrapper #o_footer_container #o_footer_version{padding-top:10px;text-align:left}}#o_footer_wrapper #o_footer_container #o_footer_powered{position:absolute;top:30px;right:15px}#o_footer_wrapper #o_footer_container #o_footer_powered img{opacity:0.6;filter:alpha(opacity=60)}#o_footer_wrapper #o_footer_container #o_footer_powered img:hover{opacity:1;filter:alpha(opacity=100)}@media (max-width: 767px){#o_footer_wrapper #o_footer_container #o_counter,#o_footer_wrapper #o_footer_container #o_footer_version{display:none}#o_footer_wrapper #o_footer_container #o_footer_powered{top:10px}#o_footer_wrapper #o_footer_container #o_footer_powered a:after{content:"\221E";font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:bold;font-size:14px}#o_footer_wrapper #o_footer_container #o_footer_powered img{display:none}} #o_share{margin-top:10px;font-size:14px}#o_share a{margin:0 3px 0 0;opacity:0.6;filter:alpha(opacity=60)}#o_share a:hover{opacity:1;filter:alpha(opacity=100)}#o_navbar_wrapper{z-index:4}#o_navbar_wrapper #o_navbar_container{position:relative}#o_navbar_wrapper #o_navbar_container a.o_navbar-brand{font-size:40px;vertical-align:top;font-weight:bold;color:#31729B}#o_navbar_wrapper #o_navbar_container a.o_navbar-brand:after{content:"\221E"}.o_navbar .o_navbar_tabs li a{padding-right:30px}.o_navbar .o_navbar_tabs .o_navbar_tab_close{position:absolute;top:15px;right:0.5em;padding:0;width:1em;height:1em}.o_navbar .o_navbar_tabs .o_navbar_tab_close i:before{color:#A87E7E}.o_navbar .o_navbar_tabs .o_navbar_tab_close:hover i:before{color:#CC0000}.o_navbar #o_navbar_tools_permanent #o_navbar_langchooser{color:#777;padding:7px 15px}.o_navbar #o_navbar_tools_permanent #o_navbar_langchooser form span+div{display:inline}.o_navbar #o_navbar_tools_permanent #o_navbar_help a i{margin-right:0.4em}@media (max-width: 767px){.o_navbar #o_navbar_tools_permanent #o_navbar_impress a span{display:none}}.o_navbar #o_navbar_tools_personal .o_navbar_tool a{padding-right:5px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .dropdown-toggle{padding-left:45px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .o_portrait{position:absolute;left:7px;top:10px}.o_navbar #o_navbar_tools_personal .o_logout{color:#d9534f}.o_navbar.o_navbar-offcanvas .o_navbar_tab_close{top:10px}.o_navbar.o_navbar-offcanvas .o_navbar_tool{display:none}.o_navbar.o_navbar-offcanvas #o_navbar_my_menu a{color:#777}.o_navbar.o_navbar-offcanvas #o_navbar_my_menu a:hover,.o_navbar.o_navbar-offcanvas #o_navbar_my_menu a:focus{color:#fff;background-color:transparent}.o_navbar.o_navbar-offcanvas #o_navbar_my_menu a.o_logout{color:#d9534f}.o_navbar.o_navbar-offcanvas #o_navbar_my_menu a.o_logout:hover,.o_navbar.o_navbar-offcanvas #o_navbar_my_menu a.o_logout:focus{color:#d9534f}.o_navbar.o_navbar-offcanvas #o_navbar_my_menu .dropdown-header{padding-left:15px}.o_navbar.o_navbar-offcanvas #o_navbar_my_menu .dropdown-toggle{display:none}.o_navbar.o_navbar-offcanvas #o_navbar_my_menu .dropdown-menu{box-shadow:none;position:relative;top:0;left:0;display:block;float:none;background-color:#222;color:#777;font-size:14px}.o_navbar.o_navbar-offcanvas #o_navbar_my_menu .dropdown-menu .divider{background:none}.o_navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.o_navbar:before,.o_navbar:after{content:" ";display:table}.o_navbar:after{clear:both}.o_navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.o_navbar-collapse:before,.o_navbar-collapse:after{content:" ";display:table}.o_navbar-collapse:after{clear:both}.o_navbar-collapse.o_collapse{display:block !important;height:auto !important;padding-bottom:0;overflow:visible !important}.o_navbar-offcanvas .o_navbar-collapse{width:auto;border-top:0;box-shadow:none;margin-top:10px;margin-right:-15px;margin-left:-15px}.o_navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px;height:50px}.o_navbar-brand:hover,.o_navbar-brand:focus{text-decoration:none}.o_navbar-toggle{position:relative;margin-right:15px;margin-left:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.o_navbar-toggle:focus{outline:none}.o_navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.o_navbar-toggle .icon-bar+.icon-bar{margin-top:4px}#o_navbar_left-toggle{float:left}#o_navbar_right-toggle{float:right}.o_navbar-nav{margin:7.5px -15px}.o_navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}.o_collapse .o_navbar-nav{float:left;margin:0}.o_collapse .o_navbar-nav>li{float:left}.o_collapse .o_navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.o_collapse .o_navbar-nav.o_navbar-right:last-child{margin-right:-15px}.o_collapse.o_navbar-collapse .o_navbar-left{float:left !important}.o_collapse.o_navbar-collapse .o_navbar-right{float:right !important}.o_navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (max-width: 767px){.o_navbar-form .form-group{margin-bottom:5px}} .o_collapse .o_navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.o_collapse .o_navbar-form.o_navbar-right:last-child{margin-right:-15px}.o_navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.o_navbar-fixed-bottom .o_navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.o_navbar-btn{margin-top:8px;margin-bottom:8px}.o_navbar-btn.btn-sm,.btn-group-sm>.o_navbar-btn.btn{margin-top:10px;margin-bottom:10px}.o_navbar-btn.btn-xs,.btn-group-xs>.o_navbar-btn.btn{margin-top:14px;margin-bottom:14px}.o_navbar-text{margin-top:15px;margin-bottom:15px}.o_collapse .o_navbar-text{float:left;margin-left:15px;margin-right:15px}.o_collapse .o_navbar-text.o_navbar-right:last-child{margin-right:0}.o_navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.o_navbar-default .o_navbar-brand{color:#777}.o_navbar-default .o_navbar-brand:hover,.o_navbar-default .o_navbar-brand:focus{color:#5e5e5e;background-color:transparent}.o_navbar-default .o_navbar-text{color:#777}.o_navbar-default .o_navbar-nav>li>a{color:#777}.o_navbar-default .o_navbar-nav>li>a:hover,.o_navbar-default .o_navbar-nav>li>a:focus{color:#333;background-color:transparent}.o_navbar-default .o_navbar-nav>.active>a,.o_navbar-default .o_navbar-nav>.active>a:hover,.o_navbar-default .o_navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar-default .o_navbar-nav>.disabled>a,.o_navbar-default .o_navbar-nav>.disabled>a:hover,.o_navbar-default .o_navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.o_navbar-default .o_navbar-toggle{border-color:#ddd}.o_navbar-default .o_navbar-toggle:hover,.o_navbar-default .o_navbar-toggle:focus{background-color:#ddd}.o_navbar-default .o_navbar-toggle .icon-bar{background-color:#888}.o_navbar-default .o_navbar-collapse,.o_navbar-default .o_navbar-form{border-color:#e7e7e7}.o_navbar-default .o_navbar-nav>.open>a,.o_navbar-default .o_navbar-nav>.open>a:hover,.o_navbar-default .o_navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}.o_navbar-default .o_navbar-link{color:#777}.o_navbar-default .o_navbar-link:hover{color:#333}.o_navbar-offcanvas.o_navbar-default .o_navbar-nav .open .dropdown-menu>li>a{color:#777}.o_navbar-offcanvas.o_navbar-default .o_navbar-nav .open .dropdown-menu>li>a:hover,.o_navbar-offcanvas.o_navbar-default .o_navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.o_navbar-offcanvas.o_navbar-default .o_navbar-nav .open .dropdown-menu>.active>a,.o_navbar-offcanvas.o_navbar-default .o_navbar-nav .open .dropdown-menu>.active>a:hover,.o_navbar-offcanvas.o_navbar-default .o_navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar-offcanvas.o_navbar-default .o_navbar-nav .open .dropdown-menu>.disabled>a,.o_navbar-offcanvas.o_navbar-default .o_navbar-nav .open .dropdown-menu>.disabled>a:hover,.o_navbar-offcanvas.o_navbar-default .o_navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}.o_navbar-inverse{background-color:#222;border-color:#090909}.o_navbar-inverse .o_navbar-brand{color:#777}.o_navbar-inverse .o_navbar-brand:hover,.o_navbar-inverse .o_navbar-brand:focus{color:#fff;background-color:transparent}.o_navbar-inverse .o_navbar-text{color:#777}.o_navbar-inverse .o_navbar-nav>li>a{color:#777}.o_navbar-inverse .o_navbar-nav>li>a:hover,.o_navbar-inverse .o_navbar-nav>li>a:focus{color:#fff;background-color:transparent}.o_navbar-inverse .o_navbar-nav>.active>a,.o_navbar-inverse .o_navbar-nav>.active>a:hover,.o_navbar-inverse .o_navbar-nav>.active>a:focus{color:#fff;background-color:#090909}.o_navbar-inverse .o_navbar-nav>.disabled>a,.o_navbar-inverse .o_navbar-nav>.disabled>a:hover,.o_navbar-inverse .o_navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.o_navbar-inverse .o_navbar-toggle{border-color:#333}.o_navbar-inverse .o_navbar-toggle:hover,.o_navbar-inverse .o_navbar-toggle:focus{background-color:#333}.o_navbar-inverse .o_navbar-toggle .icon-bar{background-color:#fff}.o_navbar-inverse .o_navbar-collapse,.o_navbar-inverse .o_navbar-form{border-color:#101010}.o_navbar-inverse .o_navbar-nav>.open>a,.o_navbar-inverse .o_navbar-nav>.open>a:hover,.o_navbar-inverse .o_navbar-nav>.open>a:focus{background-color:#090909;color:#fff}.o_navbar-inverse .o_navbar-nav .o_navbar-link{color:#777}.o_navbar-inverse .o_navbar-nav .o_navbar-link:hover{color:#fff}.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#090909}.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu .divider{background-color:#090909}.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>li>a{color:#777}.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>li>a:hover,.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>.active>a,.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>.active>a:hover,.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#090909}.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>.disabled>a,.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>.disabled>a:hover,.o_navbar-inverse .o_navbar-offcanvas.o_navbar-inverse .o_navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}.o_toolbar{position:relative;min-height:37px;margin-bottom:20px;border:1px solid transparent;background-color:#f8f8f8;border-color:#e7e7e7;text-align:center;min-height:37px}.o_toolbar:before,.o_toolbar:after{content:" ";display:table}.o_toolbar:after{clear:both}@media (min-width: 768px){.o_toolbar{border-radius:4px}}.o_toolbar a{color:#777;display:inline-block}.o_toolbar a:hover{color:#333}.o_toolbar .o_breadcrumb{float:left;margin-top:4px;margin-bottom:2px;padding-right:5px;padding-left:5px;padding-top:3px;border-right:1px solid #e7e7e7;margin-right:15px;margin-left:-15px}.o_toolbar .o_breadcrumb i{font-size:18px}.o_toolbar .o_breadcrumb .o_history.o_tool_dropdown i{font-size:14px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_breadcrumb{margin-top:3px;margin-bottom:2px;padding-top:3px}.o_toolbar .o_breadcrumb i{font-size:16px}.o_toolbar .o_breadcrumb .o_history.o_tool_dropdown i{font-size:12px}}@media (max-width: 767px){.o_toolbar .o_breadcrumb{margin-top:6px;margin-bottom:4px;padding-top:0}.o_toolbar .o_breadcrumb i{font-size:20px}.o_toolbar .o_breadcrumb .o_history{display:none}}.o_toolbar .o_tools_close{float:right;position:relative;margin:8px -15px 5px 15px;border-left:1px solid #e7e7e7;padding-right:5px;padding-left:5px;vertical-align:middle}.o_toolbar .o_tools_close a{line-height:37px;color:#d9534f}.o_toolbar .o_tools_close a:hover{color:#b52b27}.o_toolbar .o_tools_close a i{font-size:18px}.o_toolbar .o_tools_close a span{display:none}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tools_close{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools_close a{line-height:35px}.o_toolbar .o_tools_close a i{font-size:16px}}@media (max-width: 767px){.o_toolbar .o_tools_close{min-height:22px;margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools_close a{line-height:22px}.o_toolbar .o_tools_close a i{font-size:20px}}.o_toolbar .o_tools{margin-top:8px;margin-bottom:5px}.o_toolbar .o_tool,.o_toolbar .o_text{position:relative;margin:0 10px}.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:18px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:block;font-size:12px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{position:absolute;right:50%;top:-24px;margin-right:-12px;font-size:13px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:16px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{font-size:11px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{top:-22px;margin-right:-11px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:20px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:none}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{display:block;position:relative;top:0;left:0}}.o_toolbar .o_tool .o_chelp,.o_toolbar .o_text .o_chelp{position:relative;top:-1em;vertical-align:top}.o_toolbar .o_tool_dropdown{position:relative}.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:18px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span{display:block;font-size:12px}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{position:absolute;right:50%;top:4px;margin-right:-20px;font-size:14px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:16px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span,.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{font-size:11px}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{top:4px;margin-right:-18px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:20px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span,.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{display:none}}.o_toolbar .o_tool_dropdown .dropdown-menu{text-align:left}.o_toolbar .o_tools_left{float:left}.o_toolbar .o_tools_right{float:right}@media (max-width: 991px){.o_toolbar{min-height:35px}.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tool span{max-width:10em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (max-width: 767px){.o_toolbar{min-height:22px;text-align:left}.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools .o_chelp{top:0;vertical-align:top}.o_toolbar .o_tools_right,.o_toolbar .o_tools_center{float:left}} body{overflow-x:hidden}.o_container_offcanvas{position:relative;max-width:1324px;-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;-m-transition:all .25s ease-in-out;transition:all .25s ease-in-out}@media screen and (min-width: 1324px) and (max-width: 1574px){body.o_offcanvas_right_visible .o_container_offcanvas{left:-125px;max-width:1074px}}@media screen and (min-width: 1574px) and (max-width: 1824px){body.o_offcanvas_right_visible .o_container_offcanvas{left:-125px}}#o_offcanvas_right{position:absolute;top:0;right:-250px;width:250px;padding:15px 15px;background-color:#222;color:#777;border:1px solid #090909;-webkit-box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);min-height:100%;z-index:10;display:none}#o_offcanvas_right:before,#o_offcanvas_right:after{content:" ";display:table}#o_offcanvas_right:after{clear:both}@media screen and (max-width: 767px){.row-offcanvas{position:relative;-webkit-transition:all .25s ease-out;-moz-transition:all .25s ease-out;transition:all .25s ease-out}.row-offcanvas-right{right:0}.row-offcanvas-right .sidebar-offcanvas{right:-50%}.row-offcanvas-right.active{right:50%}.row-offcanvas-left{left:0}.row-offcanvas-left .sidebar-offcanvas{left:-50%}.row-offcanvas-left.active{left:50%}.sidebar-offcanvas{position:absolute;top:0;width:50%}}.o_info,.o_form .o_info,.o_togglebox_wrapper div.o_togglebox_content,div.o_qti_item_itemfeedback{margin:20px 0;padding:20px;border-left:3px solid #d4d4d4;background-color:#eee}.o_info h2,.o_info h3,.o_info h4,.o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_info h2,.o_info h5,.o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback h2,.o_form .o_info h3,.o_togglebox_wrapper div.o_togglebox_content h3,div.o_qti_item_itemfeedback h3,.o_form .o_info h4,.o_togglebox_wrapper div.o_togglebox_content h4,div.o_qti_item_itemfeedback h4,.o_form .o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback .o_cal .fc-header-title h2,.o_cal .fc-header-title div.o_qti_item_itemfeedback h2,.o_form .o_info h5,.o_togglebox_wrapper div.o_togglebox_content h5,div.o_qti_item_itemfeedback h5{color:#d4d4d4}.o_note,.o_form .o_desc,.o_course_run .o_statusinfo,.o_course_stats .o_desc{margin:20px 0;padding:20px;border-left:3px solid #5bc0de;background-color:#f4f8fa}.o_note h2,.o_note h3,.o_note h4,.o_note .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_note h2,.o_note h5,.o_form .o_desc h2,.o_course_run .o_statusinfo h2,.o_course_stats .o_desc h2,.o_form .o_desc h3,.o_course_run .o_statusinfo h3,.o_course_stats .o_desc h3,.o_form .o_desc h4,.o_course_run .o_statusinfo h4,.o_course_stats .o_desc h4,.o_form .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_desc h2,.o_course_run .o_statusinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_statusinfo h2,.o_course_stats .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_stats .o_desc h2,.o_form .o_desc h5,.o_course_run .o_statusinfo h5,.o_course_stats .o_desc h5{color:#5bc0de}.o_important,.o_bc_empty,.o_course_run .o_no_scoreinfo{margin:20px 0;padding:20px;border-left:3px solid #f4d000;background-color:#fff1a4}.o_important h2,.o_important h3,.o_important h4,.o_important .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_important h2,.o_important h5,.o_bc_empty h2,.o_course_run .o_no_scoreinfo h2,.o_bc_empty h3,.o_course_run .o_no_scoreinfo h3,.o_bc_empty h4,.o_course_run .o_no_scoreinfo h4,.o_bc_empty .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_bc_empty h2,.o_course_run .o_no_scoreinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_no_scoreinfo h2,.o_bc_empty h5,.o_course_run .o_no_scoreinfo h5{color:#f4d000}.o_success{margin:20px 0;padding:20px;border-left:3px solid #3c763d;background-color:#d6e9c6}.o_success h2,.o_success h3,.o_success h4,.o_success .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_success h2,.o_success h5{color:#3c763d}.o_warning,.o_form .o_warning{margin:20px 0;padding:20px;border-left:3px solid #ff9e3e;background-color:#ffd5aa}.o_warning h2,.o_warning h3,.o_warning h4,.o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_warning h2,.o_warning h5,.o_form .o_warning h2,.o_form .o_warning h3,.o_form .o_warning h4,.o_form .o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_warning h2,.o_form .o_warning h5{color:#ff9e3e}.o_error{margin:20px 0;padding:20px;border-left:3px solid #d9534f;background-color:#fdf7f7}.o_error h2,.o_error h3,.o_error h4,.o_error .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_error h2,.o_error h5{color:#d9534f}div.o_callout_overlay{position:fixed;top:0;left:0;width:100%;height:100%;zoom:1;background:#000;opacity:0;filter:alpha(opacity=0)}.o_alert_info{position:fixed;top:-100%;left:0;display:none;z-index:2000;width:100%;text-align:center}.o_alert_info .alert{position:relative;width:auto;margin:0 auto;text-align:left;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.o_alert_info .alert .o_icon_close{float:right;color:#777}.o_alert_info .alert .o_icon_close:hover{color:#555}@media (min-width: 768px){.o_alert_info .alert{width:600px}} -#o_msg_sticky,#o_msg_sticky_preview{position:relative;color:#a94442;background-color:#f2dede;border:1px solid #ebccd1;padding:10px 16px 10px 60px;min-height:40px;margin:-20px 0 20px 0}#o_msg_sticky .o_icon_info_msg,#o_msg_sticky_preview .o_icon_info_msg{position:absolute;left:10px;top:5px;font-size:40px}.o_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_tree a{color:#777;background-color:none}.o_tree a:hover,.o_tree a:focus{color:#333;background-color:#f8f8f8}.o_tree ul{margin:0;padding:0;list-style-type:none}.o_tree ul li{margin:0;padding:0;white-space:nowrap}.o_tree ul li div{position:relative;margin-bottom:-1px;border-bottom:1px solid #ddd}.o_tree ul li div a.o_tree_oc_l0{position:absolute;top:10px;left:-4px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l0,.o_tree ul .o_tree_level_close.b_tree_oc_l0{z-index:10}.o_tree ul li div a.o_tree_oc_l1{position:absolute;top:10px;left:11px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l1,.o_tree ul .o_tree_level_close.b_tree_oc_l1{z-index:10}.o_tree ul li div a.o_tree_oc_l2{position:absolute;top:10px;left:26px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l2,.o_tree ul .o_tree_level_close.b_tree_oc_l2{z-index:10}.o_tree ul li div a.o_tree_oc_l3{position:absolute;top:10px;left:41px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l3,.o_tree ul .o_tree_level_close.b_tree_oc_l3{z-index:10}.o_tree ul li div a.o_tree_oc_l4{position:absolute;top:10px;left:56px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l4,.o_tree ul .o_tree_level_close.b_tree_oc_l4{z-index:10}.o_tree ul li div a.o_tree_oc_l5{position:absolute;top:10px;left:71px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l5,.o_tree ul .o_tree_level_close.b_tree_oc_l5{z-index:10}.o_tree ul li div a.o_tree_oc_l6{position:absolute;top:10px;left:86px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l6,.o_tree ul .o_tree_level_close.b_tree_oc_l6{z-index:10}.o_tree ul li div a.o_tree_oc_l7{position:absolute;top:10px;left:101px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l7,.o_tree ul .o_tree_level_close.b_tree_oc_l7{z-index:10}.o_tree ul li div a.o_tree_oc_l8{position:absolute;top:10px;left:116px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l8,.o_tree ul .o_tree_level_close.b_tree_oc_l8{z-index:10}.o_tree ul li div a.o_tree_oc_l9{position:absolute;top:10px;left:131px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l9,.o_tree ul .o_tree_level_close.b_tree_oc_l9{z-index:10}.o_tree ul li div a.o_tree_oc_l10{position:absolute;top:10px;left:146px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l10,.o_tree ul .o_tree_level_close.b_tree_oc_l10{z-index:10}.o_tree ul li div a.o_tree_oc_l11{position:absolute;top:10px;left:161px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l11,.o_tree ul .o_tree_level_close.b_tree_oc_l11{z-index:10}.o_tree ul li div a.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_tree ul li div a.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_tree ul li div a.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_tree ul li div a.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_tree ul li div a.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_tree ul li div a.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_tree ul li div a.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_tree ul li div a.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_tree ul li div a.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_tree ul li div a.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_tree ul li div a.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_tree ul li div a.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_tree ul span.o_tree_leaf{display:none}.o_tree ul li .badge{float:right;font-size:70%}.o_tree ul li div.o_dnd_sibling{margin:0;padding:0;border-bottom:none}.o_tree ul li a.active{color:#428bca;background-color:none;font-weight:bold}.o_tree ul li a.active:hover,.o_tree ul li a.active:focus{color:#2a6496;background-color:#eee}.o_tree ul li a.active_parent{color:#777;font-weight:bold}.o_tree ul li a.active_parent:hover,.o_tree ul li a.active_parent:focus{color:#333}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l0{left:6px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l1{left:21px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l2{left:36px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l3{left:51px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l4{left:66px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l5{left:81px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l6{left:96px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l7{left:111px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l8{left:126px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l9{left:141px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l10{left:156px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l11{left:171px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l0{padding:10px 2px 10px 20px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l1{padding:10px 2px 10px 35px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l2{padding:10px 2px 10px 50px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l3{padding:10px 2px 10px 65px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l4{padding:10px 2px 10px 80px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l5{padding:10px 2px 10px 95px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l6{padding:10px 2px 10px 110px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l7{padding:10px 2px 10px 125px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l8{padding:10px 2px 10px 140px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l9{padding:10px 2px 10px 155px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l10{padding:10px 2px 10px 170px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l11{padding:10px 2px 10px 185px}.o_tree .o_dnd_item{cursor:move;z-index:100}.o_tree .o_dnd_proxy{opacity:0.4;filter:alpha(opacity=40);background-color:yellow}.o_tree .o_dnd_item.o_dnd_over{background-color:#ffff60}.o_tree .o_dnd_sibling{height:3px;width:100%}.o_tree .o_dnd_sibling.o_dnd_over{background:transparent url(../light/images/arrow_dd.png) top left no-repeat}.o_tree .o_dnd_l1{margin-left:0 !important}.o_tree .o_dnd_l2{margin-left:1em !important}.o_tree .o_dnd_l3{margin-left:2em !important}.o_tree .o_dnd_l4{margin-left:3em !important}.o_tree .o_dnd_l5{margin-left:4em !important}.o_tree .o_dnd_l6{margin-left:5em !important}.o_tree .o_dnd_l7{margin-left:6em !important}.o_tree .o_dnd_l8{margin-left:7em !important}.o_tree .o_dnd_l9{margin-left:8em !important}.o_tree .o_dnd_l10{margin-left:9em !important}.o_tree .o_dnd_l11{margin-left:10em !important}.o_offcanvas .o_tree{border:0}.o_selection_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_selection_tree ul{margin:0;padding:0;list-style-type:none}.o_selection_tree li{margin:0;padding:0;white-space:nowrap}.o_selection_tree li div{position:relative;margin-bottom:-1px;border-bottom:1px solid #ddd}.o_selection_tree li>div>span.o_tree_l0,.o_selection_tree li>div>div.checkbox.o_tree_l0,.o_selection_tree li>div>div.radio.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_selection_tree li>div>span.o_tree_l1,.o_selection_tree li>div>div.checkbox.o_tree_l1,.o_selection_tree li>div>div.radio.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_selection_tree li>div>span.o_tree_l2,.o_selection_tree li>div>div.checkbox.o_tree_l2,.o_selection_tree li>div>div.radio.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_selection_tree li>div>span.o_tree_l3,.o_selection_tree li>div>div.checkbox.o_tree_l3,.o_selection_tree li>div>div.radio.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_selection_tree li>div>span.o_tree_l4,.o_selection_tree li>div>div.checkbox.o_tree_l4,.o_selection_tree li>div>div.radio.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_selection_tree li>div>span.o_tree_l5,.o_selection_tree li>div>div.checkbox.o_tree_l5,.o_selection_tree li>div>div.radio.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_selection_tree li>div>span.o_tree_l6,.o_selection_tree li>div>div.checkbox.o_tree_l6,.o_selection_tree li>div>div.radio.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_selection_tree li>div>span.o_tree_l7,.o_selection_tree li>div>div.checkbox.o_tree_l7,.o_selection_tree li>div>div.radio.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_selection_tree li>div>span.o_tree_l8,.o_selection_tree li>div>div.checkbox.o_tree_l8,.o_selection_tree li>div>div.radio.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_selection_tree li>div>span.o_tree_l9,.o_selection_tree li>div>div.checkbox.o_tree_l9,.o_selection_tree li>div>div.radio.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_selection_tree li>div>span.o_tree_l10,.o_selection_tree li>div>div.checkbox.o_tree_l10,.o_selection_tree li>div>div.radio.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_selection_tree li>div>span.o_tree_l11,.o_selection_tree li>div>div.checkbox.o_tree_l11,.o_selection_tree li>div>div.radio.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_breadcrumb{position:relative}.o_breadcrumb .o_breadcrumb_close{float:right}.o_form .o_icon_mandatory{position:relative;right:0;line-height:inherit;margin-left:0.25em}.o_form .o_error{margin-top:1px;margin-bottom:0;padding:10px}.o_form hr.o_spacer_noline{border-top:1px solid transparent}.o_form .o_date{position:relative;padding-right:34px}.o_form .o_date.form-inline .form-group,.o_form .o_date.navbar-form .form-group,.o_form .o_date.o_navbar-form .form-group{margin-left:0}.o_form input.o_date_ms{width:3em}.o_form .o_date.form-inline .o_date_ms.form-group,.o_form .o_date.navbar-form .o_date_ms.form-group,.o_form .o_date.o_navbar-form .o_date_ms.form-group{margin-left:25px}.o_form .input-group.o_date_picker{width:16em}.o_form .o_filepreview{margin-bottom:10px}.o_form .o_fileinput{cursor:pointer;position:relative}.o_form .o_fileinput .o_fakechooser{position:relative;z-index:1}.o_form .o_fileinput .o_realchooser{position:absolute;top:0;left:0;z-index:2;opacity:0;filter:alpha(opacity=0)}.o_choice_checkrow,.o_choice_textrow{vertical-align:text-top;padding-bottom:2px}.o_choice_textrow{padding-left:1em}.o_togglecheck a{white-space:nowrap}.o_catalog .o_catalog_delete_img{position:relative;top:-0.5em}.o_button_dirty{color:#fff;background-color:#f0ad4e;border-color:#eea236}.o_button_dirty:hover,.o_button_dirty:focus,.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{background-image:none}.o_button_dirty.disabled,.o_button_dirty.disabled:hover,.o_button_dirty.disabled:focus,.o_button_dirty.disabled:active,.o_button_dirty.disabled.active,.o_button_dirty[disabled],.o_button_dirty[disabled]:hover,.o_button_dirty[disabled]:focus,.o_button_dirty[disabled]:active,.o_button_dirty[disabled].active,fieldset[disabled] .o_button_dirty,fieldset[disabled] .o_button_dirty:hover,fieldset[disabled] .o_button_dirty:focus,fieldset[disabled] .o_button_dirty:active,fieldset[disabled] .o_button_dirty.active{background-color:#f0ad4e;border-color:#eea236}.o_button_dirty .badge{color:#f0ad4e;background-color:#fff}.o_button_toggle{border:1px solid #777;border-top-right-radius:9px;border-top-left-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px;background:#eee;display:inline-block;height:18px;line-height:16px;font-size:16px;text-align:left;padding:0 0.5em 0 0;margin:0}.o_button_toggle i{color:#777;text-shadow:1px 0 2px rgba(0,0,0,0.25)}.o_button_toggle span{line-height:16px;vertical-align:top;font-size:60%;color:#777;text-transform:uppercase}.o_button_toggle.o_on{text-align:right;padding:0 0 0 0.5em}.o_button_toggle.o_on i{color:#428bca;text-shadow:-1px 0 2px rgba(0,0,0,0.25)}.o_table_wrapper.o_table_flexi .o_table_body{margin-top:20px}.o_table_wrapper.o_table_flexi .table{margin-top:20px}.o_table_wrapper.o_table_flexi .table td ul{margin:0}.o_table_wrapper .o_table_search{max-width:50em}.o_table_wrapper .o_table_footer .o_table_pagination{text-align:center}.o_table_wrapper .o_row_selected td{background-color:#dff0d8 !important}.o_table_wrapper .o_table{margin-bottom:0}.o_table_config{font-size:12px}.o_table_buttons{text-align:center}.o_table_buttons input{margin-right:1em}.o_table_buttons input:last-child{margin-right:0}.o_table_tools{margin-left:0.5em}.o_table_count{max-width:20em;float:left;padding:0 15px}.o_info .table-bordered td,o_note .table-bordered td,o_important .table-bordered td,o_warning .table-bordered td,o_error .table-bordered td{border-color:#333}.panel .o_table_layout{border-top:1px solid #ddd;padding-top:6px}.panel .o_table_count{padding:0 15px}#o_navbar_imclient #o_im_message,#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_summary{float:left;position:relative;padding:15px 3px}#o_navbar_imclient #o_im_summary{padding-right:15px}#o_navbar_imclient #o_im_status div.o_chelp_wrapper{right:0.5em}.o_im_load_history{margin-bottom:6px}.o_im_load_history .o_label{font-size:12px;padding-right:0.5em;line-height:1.5em;color:#777}.o_im_chat_history{height:170px;font-size:90%;border:1px solid #eee;margin:0 0 1em 0;overflow:scroll;overflow-x:auto}.o_im_message_group{padding:3px 3px 3px 40px;min-height:40px;position:relative;border-top:1px solid #eee;background:#fff}.o_im_message_group.o_odd{background:#f4f4f4}.o_im_message_group .o_portrait{position:absolute;top:3px;left:3px}.o_im_message_group .o_im_from{color:#777;font-size:12px;font-weight:bold}.o_im_message_group .o_im_from:hover{color:#5e5e5e}.o_im_message_group div.o_im_body{padding:3px 0 3px 0;font-size:12px}.o_im_message_group div.o_im_body .o_date{float:right;color:#777;font-size:9px}.o_groupchat_roster{font-size:12px}.o_groupchat_roster li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333}.o_groupchat_roster li.o_vip{color:#3c763d}.o_groupchat_roster li.o_anonymous{color:#31708f}.o_im_buddieslist .o_im_buddieslist_toggler .btn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_im_buddieslist ul{font-size:12px}.o_im_buddieslist ul ul{padding-left:1em}.o_im_buddieslist ul a{color:#428bca}.o_im_buddieslist ul a:hover{color:#2a6496}.o_flag{position:relative;top:1px;display:inline-block;line-height:1;width:16px;height:16px;background-repeat:no-repeat;background-position:0 100%}option.o_with_flag{padding-left:23px;min-height:16px;background-repeat:no-repeat;background-position:2px 50%}.o_flag_en{background-image:url("../light/images/flags/gb.png")}.o_flag_de{background-image:url("../light/images/flags/de.png")}.o_flag_fr{background-image:url("../light/images/flags/fr.png")}.o_flag_it{background-image:url("../light/images/flags/it.png")}.o_flag_es{background-image:url("../light/images/flags/es.png")}.o_flag_da{background-image:url("../light/images/flags/dk.png")}.o_flag_cs{background-image:url("../light/images/flags/cz.png")}.o_flag_el{background-image:url("../light/images/flags/gr.png")}.o_flag_ee{background-image:url("../light/images/flags/ee.png")}.o_flag_ru{background-image:url("../light/images/flags/ru.png")}.o_flag_pl{background-image:url("../light/images/flags/pl.png")}.o_flag_zh_CN{background-image:url("../light/images/flags/cn.png")}.o_flag_zh_TW{background-image:url("../light/images/flags/tw.png")}.o_flag_lt{background-image:url("../light/images/flags/lt.png")}.o_flag_fa{background-image:url("../light/images/flags/ir.png")}.o_flag_pt_PT{background-image:url("../light/images/flags/pt.png")}.o_flag_pt_BR{background-image:url("../light/images/flags/br.png")}.o_flag_tr{background-image:url("../light/images/flags/tr.png")}.o_flag_hu{background-image:url("../light/images/flags/hu.png")}.o_flag_sq{background-image:url("../light/images/flags/al.png")}.o_flag_in{background-image:url("../light/images/flags/id.png")}.o_flag_ar{background-image:url("../light/images/flags/eg.png")}.o_flag_rm{background-image:url("../light/images/flags/rm.png")}.o_flag_af{background-image:url("../light/images/flags/za.png")}.o_flag_vi{background-image:url("../light/images/flags/vn.png")}.o_flag_mn{background-image:url("../light/images/flags/mn.png")}.o_flag_iw{background-image:url("../light/images/flags/il.png")}.o_flag_ko{background-image:url("../light/images/flags/kr.png")}.o_flag_nl_NL{background-image:url("../light/images/flags/nl.png")}.o_flag_jp{background-image:url("../light/images/flags/jp.png")}.o_flag_nb_NO{background-image:url("../light/images/flags/no.png")}.o_flag_et_EE{background-image:url("../light/images/flags/ee.png")}.o_flag_bg{background-image:url("../light/images/flags/bg.png")}.o_flag_hi_IN_ASIA{background-image:url("../light/images/flags/in.png")}.o_flag_ar_LB{background-image:url("../light/images/flags/lb.png")}.o_flag_gl_ES{background-image:url("../light/images/flags/galicia.png")}.o_rating .o_rating_title{font-size:12px}.o_rating .o_rating_items{white-space:nowrap}.o_rating .o_rating_items .o_icon{color:#f0ad4e}.o_rating .o_rating_items .o_icon:hover{color:#428bca}.o_rating .o_rating_items .o_legend{margin-left:1em;font-size:12px;line-height:1em}.o_rating .o_rating_explanation{font-size:12px;color:#777}@media (max-width: 991px){.o_rating .o_rating_title,.o_rating .o_rating_explanation{display:none}} +#o_msg_sticky,#o_msg_sticky_preview{position:relative;color:#a94442;background-color:#f2dede;border:1px solid #ebccd1;padding:10px 16px 10px 60px;min-height:40px;margin:-20px 0 20px 0}#o_msg_sticky .o_icon_info_msg,#o_msg_sticky_preview .o_icon_info_msg{position:absolute;left:10px;top:5px;font-size:40px}.o_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_tree a{color:#777;background-color:none}.o_tree a:hover,.o_tree a:focus{color:#333;background-color:#f8f8f8}.o_tree ul{margin:0;padding:0;list-style-type:none}.o_tree ul li{margin:0;padding:0;white-space:nowrap}.o_tree ul li div{position:relative;margin-bottom:-1px;border-bottom:1px solid #ddd}.o_tree ul li div a.o_tree_oc_l0{position:absolute;top:10px;left:-4px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l0,.o_tree ul .o_tree_level_close.b_tree_oc_l0{z-index:10}.o_tree ul li div a.o_tree_oc_l1{position:absolute;top:10px;left:11px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l1,.o_tree ul .o_tree_level_close.b_tree_oc_l1{z-index:10}.o_tree ul li div a.o_tree_oc_l2{position:absolute;top:10px;left:26px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l2,.o_tree ul .o_tree_level_close.b_tree_oc_l2{z-index:10}.o_tree ul li div a.o_tree_oc_l3{position:absolute;top:10px;left:41px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l3,.o_tree ul .o_tree_level_close.b_tree_oc_l3{z-index:10}.o_tree ul li div a.o_tree_oc_l4{position:absolute;top:10px;left:56px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l4,.o_tree ul .o_tree_level_close.b_tree_oc_l4{z-index:10}.o_tree ul li div a.o_tree_oc_l5{position:absolute;top:10px;left:71px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l5,.o_tree ul .o_tree_level_close.b_tree_oc_l5{z-index:10}.o_tree ul li div a.o_tree_oc_l6{position:absolute;top:10px;left:86px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l6,.o_tree ul .o_tree_level_close.b_tree_oc_l6{z-index:10}.o_tree ul li div a.o_tree_oc_l7{position:absolute;top:10px;left:101px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l7,.o_tree ul .o_tree_level_close.b_tree_oc_l7{z-index:10}.o_tree ul li div a.o_tree_oc_l8{position:absolute;top:10px;left:116px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l8,.o_tree ul .o_tree_level_close.b_tree_oc_l8{z-index:10}.o_tree ul li div a.o_tree_oc_l9{position:absolute;top:10px;left:131px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l9,.o_tree ul .o_tree_level_close.b_tree_oc_l9{z-index:10}.o_tree ul li div a.o_tree_oc_l10{position:absolute;top:10px;left:146px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l10,.o_tree ul .o_tree_level_close.b_tree_oc_l10{z-index:10}.o_tree ul li div a.o_tree_oc_l11{position:absolute;top:10px;left:161px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l11,.o_tree ul .o_tree_level_close.b_tree_oc_l11{z-index:10}.o_tree ul li div a.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_tree ul li div a.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_tree ul li div a.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_tree ul li div a.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_tree ul li div a.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_tree ul li div a.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_tree ul li div a.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_tree ul li div a.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_tree ul li div a.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_tree ul li div a.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_tree ul li div a.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_tree ul li div a.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_tree ul span.o_tree_leaf{display:none}.o_tree ul li .badge{float:right;font-size:70%}.o_tree ul li div.o_dnd_sibling{margin:0;padding:0;border-bottom:none}.o_tree ul li a.active{color:#428bca;background-color:none;font-weight:bold}.o_tree ul li a.active:hover,.o_tree ul li a.active:focus{color:#2a6496;background-color:#eee}.o_tree ul li a.active_parent{color:#777;font-weight:bold}.o_tree ul li a.active_parent:hover,.o_tree ul li a.active_parent:focus{color:#333}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l0{left:6px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l1{left:21px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l2{left:36px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l3{left:51px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l4{left:66px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l5{left:81px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l6{left:96px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l7{left:111px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l8{left:126px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l9{left:141px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l10{left:156px}.o_tree.o_tree_root_hidden ul li div a.o_tree_oc_l11{left:171px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l0{padding:10px 2px 10px 20px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l1{padding:10px 2px 10px 35px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l2{padding:10px 2px 10px 50px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l3{padding:10px 2px 10px 65px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l4{padding:10px 2px 10px 80px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l5{padding:10px 2px 10px 95px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l6{padding:10px 2px 10px 110px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l7{padding:10px 2px 10px 125px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l8{padding:10px 2px 10px 140px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l9{padding:10px 2px 10px 155px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l10{padding:10px 2px 10px 170px}.o_tree.o_tree_root_hidden ul li div a.o_tree_l11{padding:10px 2px 10px 185px}.o_tree .o_dnd_item{cursor:move;z-index:100}.o_tree .o_dnd_proxy{opacity:0.4;filter:alpha(opacity=40);background-color:yellow}.o_tree .o_dnd_item.o_dnd_over{background-color:#ffff60}.o_tree .o_dnd_sibling{height:3px;width:100%}.o_tree .o_dnd_sibling.o_dnd_over{background:transparent url(../light/images/arrow_dd.png) top left no-repeat}.o_tree .o_dnd_l1{margin-left:0 !important}.o_tree .o_dnd_l2{margin-left:1em !important}.o_tree .o_dnd_l3{margin-left:2em !important}.o_tree .o_dnd_l4{margin-left:3em !important}.o_tree .o_dnd_l5{margin-left:4em !important}.o_tree .o_dnd_l6{margin-left:5em !important}.o_tree .o_dnd_l7{margin-left:6em !important}.o_tree .o_dnd_l8{margin-left:7em !important}.o_tree .o_dnd_l9{margin-left:8em !important}.o_tree .o_dnd_l10{margin-left:9em !important}.o_tree .o_dnd_l11{margin-left:10em !important}.o_offcanvas .o_tree{border:0}.o_selection_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_selection_tree ul{margin:0;padding:0;list-style-type:none}.o_selection_tree li{margin:0;padding:0;white-space:nowrap}.o_selection_tree li div{position:relative;margin-bottom:-1px;border-bottom:1px solid #ddd}.o_selection_tree li>div>span.o_tree_l0,.o_selection_tree li>div>div.checkbox.o_tree_l0,.o_selection_tree li>div>div.radio.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_selection_tree li>div>span.o_tree_l1,.o_selection_tree li>div>div.checkbox.o_tree_l1,.o_selection_tree li>div>div.radio.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_selection_tree li>div>span.o_tree_l2,.o_selection_tree li>div>div.checkbox.o_tree_l2,.o_selection_tree li>div>div.radio.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_selection_tree li>div>span.o_tree_l3,.o_selection_tree li>div>div.checkbox.o_tree_l3,.o_selection_tree li>div>div.radio.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_selection_tree li>div>span.o_tree_l4,.o_selection_tree li>div>div.checkbox.o_tree_l4,.o_selection_tree li>div>div.radio.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_selection_tree li>div>span.o_tree_l5,.o_selection_tree li>div>div.checkbox.o_tree_l5,.o_selection_tree li>div>div.radio.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_selection_tree li>div>span.o_tree_l6,.o_selection_tree li>div>div.checkbox.o_tree_l6,.o_selection_tree li>div>div.radio.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_selection_tree li>div>span.o_tree_l7,.o_selection_tree li>div>div.checkbox.o_tree_l7,.o_selection_tree li>div>div.radio.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_selection_tree li>div>span.o_tree_l8,.o_selection_tree li>div>div.checkbox.o_tree_l8,.o_selection_tree li>div>div.radio.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_selection_tree li>div>span.o_tree_l9,.o_selection_tree li>div>div.checkbox.o_tree_l9,.o_selection_tree li>div>div.radio.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_selection_tree li>div>span.o_tree_l10,.o_selection_tree li>div>div.checkbox.o_tree_l10,.o_selection_tree li>div>div.radio.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_selection_tree li>div>span.o_tree_l11,.o_selection_tree li>div>div.checkbox.o_tree_l11,.o_selection_tree li>div>div.radio.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_breadcrumb{position:relative}.o_breadcrumb .o_breadcrumb_close{float:right}.o_form .o_icon_mandatory{position:relative;right:0;line-height:inherit;margin-left:0.25em}.o_form .o_error{margin-top:1px;margin-bottom:0;padding:10px}.o_form hr.o_spacer_noline{border-top:1px solid transparent}.o_form .o_date{position:relative;padding-right:34px}.o_form .o_date.form-inline .form-group,.o_form .o_date.navbar-form .form-group,.o_form .o_date.o_navbar-form .form-group{margin-left:0}.o_form input.o_date_ms{width:3em}.o_form .o_date.form-inline .o_date_ms.form-group,.o_form .o_date.navbar-form .o_date_ms.form-group,.o_form .o_date.o_navbar-form .o_date_ms.form-group{margin-left:25px}.o_form .input-group.o_date_picker{width:16em}.o_form .o_filepreview{margin-bottom:10px}.o_form .o_fileinput{cursor:pointer;position:relative}.o_form .o_fileinput .o_fakechooser{position:relative;z-index:1}.o_form .o_fileinput .o_realchooser{position:absolute;top:0;left:0;z-index:2;opacity:0;filter:alpha(opacity=0)}.o_choice_checkrow,.o_choice_textrow{vertical-align:text-top;padding-bottom:2px}.o_choice_textrow{padding-left:1em}.o_togglecheck a{white-space:nowrap}.o_catalog .o_catalog_delete_img{position:relative;top:-0.5em}.o_button_dirty{color:#fff;background-color:#f0ad4e;border-color:#eea236}.o_button_dirty:hover,.o_button_dirty:focus,.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{background-image:none}.o_button_dirty.disabled,.o_button_dirty.disabled:hover,.o_button_dirty.disabled:focus,.o_button_dirty.disabled:active,.o_button_dirty.disabled.active,.o_button_dirty[disabled],.o_button_dirty[disabled]:hover,.o_button_dirty[disabled]:focus,.o_button_dirty[disabled]:active,.o_button_dirty[disabled].active,fieldset[disabled] .o_button_dirty,fieldset[disabled] .o_button_dirty:hover,fieldset[disabled] .o_button_dirty:focus,fieldset[disabled] .o_button_dirty:active,fieldset[disabled] .o_button_dirty.active{background-color:#f0ad4e;border-color:#eea236}.o_button_dirty .badge{color:#f0ad4e;background-color:#fff}.o_button_toggle{border:1px solid #777;border-top-right-radius:9px;border-top-left-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px;background:#eee;display:inline-block;height:18px;line-height:16px;font-size:16px;text-align:left;padding:0 0.5em 0 0;margin:0}.o_button_toggle i{color:#777;text-shadow:1px 0 2px rgba(0,0,0,0.25)}.o_button_toggle span{line-height:16px;vertical-align:top;font-size:60%;color:#777;text-transform:uppercase}.o_button_toggle.o_on{text-align:right;padding:0 0 0 0.5em}.o_button_toggle.o_on i{color:#428bca;text-shadow:-1px 0 2px rgba(0,0,0,0.25)}.o_table_wrapper.o_table_flexi .o_table_body{margin-top:20px}.o_table_wrapper.o_table_flexi .table{margin-top:20px}.o_table_wrapper.o_table_flexi .table td ul{margin:0}.o_table_wrapper .o_table_search{max-width:50em}.o_table_wrapper .o_table_footer .o_table_pagination{text-align:center}.o_table_wrapper .o_row_selected td{background-color:#dff0d8 !important}.o_table_wrapper .o_table{margin-bottom:0}.o_table_wrapper .o_marked{font-weight:bold}.o_table_config{font-size:12px}.o_table_buttons{text-align:center}.o_table_buttons input{margin-right:1em}.o_table_buttons input:last-child{margin-right:0}.o_table_tools{margin-left:0.5em}.o_table_count{max-width:20em;float:left;padding:0 15px}.o_info .table-bordered td,o_note .table-bordered td,o_important .table-bordered td,o_warning .table-bordered td,o_error .table-bordered td{border-color:#333}.panel .o_table_layout{border-top:1px solid #ddd;padding-top:6px}.panel .o_table_count{padding:0 15px}#o_navbar_imclient #o_im_message,#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_summary{float:left;position:relative;padding:15px 3px}#o_navbar_imclient #o_im_summary{padding-right:15px}#o_navbar_imclient #o_im_status div.o_chelp_wrapper{right:0.5em}.o_im_load_history{margin-bottom:6px}.o_im_load_history .o_label{font-size:12px;padding-right:0.5em;line-height:1.5em;color:#777}.o_im_chat_history{height:170px;font-size:90%;border:1px solid #eee;margin:0 0 1em 0;overflow:scroll;overflow-x:auto}.o_im_message_group{padding:3px 3px 3px 40px;min-height:40px;position:relative;border-top:1px solid #eee;background:#fff}.o_im_message_group.o_odd{background:#f4f4f4}.o_im_message_group .o_portrait{position:absolute;top:3px;left:3px}.o_im_message_group .o_im_from{color:#777;font-size:12px;font-weight:bold}.o_im_message_group .o_im_from:hover{color:#5e5e5e}.o_im_message_group div.o_im_body{padding:3px 0 3px 0;font-size:12px}.o_im_message_group div.o_im_body .o_date{float:right;color:#777;font-size:9px}.o_groupchat_roster{font-size:12px}.o_groupchat_roster li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333}.o_groupchat_roster li.o_vip{color:#3c763d}.o_groupchat_roster li.o_anonymous{color:#31708f}.o_im_buddieslist .o_im_buddieslist_toggler .btn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_im_buddieslist ul{font-size:12px}.o_im_buddieslist ul ul{padding-left:1em}.o_im_buddieslist ul a{color:#428bca}.o_im_buddieslist ul a:hover{color:#2a6496}.o_flag{position:relative;top:1px;display:inline-block;line-height:1;width:16px;height:16px;background-repeat:no-repeat;background-position:0 100%}option.o_with_flag{padding-left:23px;min-height:16px;background-repeat:no-repeat;background-position:2px 50%}.o_flag_en{background-image:url("../light/images/flags/gb.png")}.o_flag_de{background-image:url("../light/images/flags/de.png")}.o_flag_fr{background-image:url("../light/images/flags/fr.png")}.o_flag_it{background-image:url("../light/images/flags/it.png")}.o_flag_es{background-image:url("../light/images/flags/es.png")}.o_flag_da{background-image:url("../light/images/flags/dk.png")}.o_flag_cs{background-image:url("../light/images/flags/cz.png")}.o_flag_el{background-image:url("../light/images/flags/gr.png")}.o_flag_ee{background-image:url("../light/images/flags/ee.png")}.o_flag_ru{background-image:url("../light/images/flags/ru.png")}.o_flag_pl{background-image:url("../light/images/flags/pl.png")}.o_flag_zh_CN{background-image:url("../light/images/flags/cn.png")}.o_flag_zh_TW{background-image:url("../light/images/flags/tw.png")}.o_flag_lt{background-image:url("../light/images/flags/lt.png")}.o_flag_fa{background-image:url("../light/images/flags/ir.png")}.o_flag_pt_PT{background-image:url("../light/images/flags/pt.png")}.o_flag_pt_BR{background-image:url("../light/images/flags/br.png")}.o_flag_tr{background-image:url("../light/images/flags/tr.png")}.o_flag_hu{background-image:url("../light/images/flags/hu.png")}.o_flag_sq{background-image:url("../light/images/flags/al.png")}.o_flag_in{background-image:url("../light/images/flags/id.png")}.o_flag_ar{background-image:url("../light/images/flags/eg.png")}.o_flag_rm{background-image:url("../light/images/flags/rm.png")}.o_flag_af{background-image:url("../light/images/flags/za.png")}.o_flag_vi{background-image:url("../light/images/flags/vn.png")}.o_flag_mn{background-image:url("../light/images/flags/mn.png")}.o_flag_iw{background-image:url("../light/images/flags/il.png")}.o_flag_ko{background-image:url("../light/images/flags/kr.png")}.o_flag_nl_NL{background-image:url("../light/images/flags/nl.png")}.o_flag_jp{background-image:url("../light/images/flags/jp.png")}.o_flag_nb_NO{background-image:url("../light/images/flags/no.png")}.o_flag_et_EE{background-image:url("../light/images/flags/ee.png")}.o_flag_bg{background-image:url("../light/images/flags/bg.png")}.o_flag_hi_IN_ASIA{background-image:url("../light/images/flags/in.png")}.o_flag_ar_LB{background-image:url("../light/images/flags/lb.png")}.o_flag_gl_ES{background-image:url("../light/images/flags/galicia.png")}.o_rating .o_rating_title{font-size:12px}.o_rating .o_rating_items{white-space:nowrap}.o_rating .o_rating_items .o_icon{color:#f0ad4e}.o_rating .o_rating_items .o_icon:hover{color:#428bca}.o_rating .o_rating_items .o_legend{margin-left:1em;font-size:12px;line-height:1em}.o_rating .o_rating_explanation{font-size:12px;color:#777}@media (max-width: 991px){.o_rating .o_rating_title,.o_rating .o_rating_explanation{display:none}} .o_comments .o_comment_wrapper .o_avatar{float:left;margin:0 1em 0 0}.o_comments .o_comment_wrapper .o_reply,.o_comments .o_comment_wrapper .o_delete{float:right}.o_ratings_and_comments .o_rating_wrapper{vertical-align:middle;display:inline-block}.o_ratings_and_comments a.o_comments{margin-left:10px;position:relative;top:0.1em}.d3chart .bar{shape-rendering:crispEdges}.d3chart .bar_default_light{fill:#7eb0db}.d3chart .bar_default{fill:#428bca}.d3chart .bar_default_dark{fill:#2a6496}.d3chart .axis{font:12px sans-serif}.d3chart .axis path,.d3chart .axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.o_forum_peekview .o_quote_wrapper,.o_forum_peekview .b_quote_wrapper{display:none}.o_forum_thread_sticky{font-weight:bold}.o_forum_switch{font-size:12px}.o_forum_toolbar{margin-bottom:6px;float:left}.o_forum_fulltextsearch{float:right}@media (max-width: 767px){.o_forum_fulltextsearch{float:left}}.o_forum .o_mark,.o_forum .o_ep_collect{float:right;position:relative;width:2em;margin-left:12px}.o_forum .o_portrait{float:left;margin-right:16px}.o_forum .o_portrait_avatar{width:70px;height:70px}.o_forum .o_newindicator{font-size:10px;color:#5cb85c;text-transform:uppercase;padding-left:1em;vertical-align:text-top;white-space:nowrap}.o_forum .o_author,.o_forum .o_date{display:inline-block;color:#777}.o_forum .o_date{font-size:12px}.o_forum .o_modified{color:#8a6d3b;font-size:12px;font-style:italic}.o_forum .o_forum_message{margin-bottom:20px;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_forum .o_forum_message_new{-webkit-box-shadow:0 1px 10px rgba(92,184,92,0.3);box-shadow:0 1px 10px rgba(92,184,92,0.3)}.o_forum .o_forum_message_highlight{-webkit-box-shadow:0 1px 10px rgba(240,173,78,0.5);box-shadow:0 1px 10px rgba(240,173,78,0.5)}.o_forum .o_forum_message_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:3px;border-top-left-radius:3px}.o_forum .o_forum_message_title{margin-top:0}.o_forum .o_forum_message_body{padding:10px 15px}.o_forum .o_forum_message_attachments{border-top:1px solid #ddd;padding:10px 15px;font-size:12px;background-color:#f7f7f9}.o_forum .o_attachment{position:relative;max-width:250px;vertical-align:top;margin:6px 12px 10px 0}.o_forum .o_attachment img{margin-top:6px}.o_forum .o_filename{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_forum .o_icon_enlarge{position:absolute;left:1em;bottom:1em;text-shadow:1px 1px 2px #fff, -1px 1px 2px #fff, 1px -1px 2px #fff, -1px -1px 2px #fff}@media (min-width: 768px) and (max-width: 991px){.o_forum .o_attachments{font-size:10px}.o_forum .o_attachment{max-width:200px}.o_forum .o_attachment img{max-width:150px}.o_forum .o_filename{max-width:200px}}@media (max-width: 767px){.o_forum .o_attachments{font-size:9px}.o_forum .o_attachment{max-width:150px}.o_forum .o_attachment img{max-width:100px}.o_forum .o_filename{max-width:150px}} .o_quote_wrapper,.b_quote_wrapper{position:relative;margin:10px 0}.o_quote_author,.b_quote_author{color:#777;font-size:12px}.o_quote_author:before,.b_quote_author:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f10e";font-size:21px;padding-right:0.5em}blockquote.o_quote,blockquote.b_quote{color:#555;font-size:12px;margin-top:6px;padding:0 12px}a.o_chelp{display:inline-block;padding:1px 3px;text-align:center;vertical-align:middle;white-space:nowrap;font-size:10px;font-weight:normal;line-height:15px;color:#fff;background-color:#428bca;border:1px solid #357ebd;border-radius:2px;cursor:help;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}a.o_chelp:active,a.o_chelp:hover,a.o_chelp:focus{text-decoration:none;color:#fff;background-color:#3276b1;border-color:#285e8e}a.o_chelp i{font-size:10px !important}.o_chelp_wrapper{position:relative;float:right;display:inline-block;line-height:1em}.o_iframedisplay iframe{width:100%}.o_singlepage .o_edit{position:absolute;top:10px;right:37px}.o_content_popup{position:absolute;top:10px;right:12px}.o_module_cp_wrapper .o_tools{position:absolute;top:10px;right:12px;text-align:right;vertical-align:middle}.o_module_cp_wrapper .o_tools .o_search_wrapper{display:inline-block;position:relative;top:-2px}.o_bc_meta .o_thumbnail,.tooltip .o_thumbnail{width:200px;height:200px}.o_htmleditor .o_lastmodified{color:#777}.o_htmleditor #o_save{margin-top:10px;text-align:center}.o_htmleditor #o_save input{margin-right:1em}.o_htmleditor #o_save input:last-child{margin-right:0}.o_notifications_news_wrapper .o_notifications_news_subscription{margin:10px 0}.o_notifications_news_wrapper .o_notifications_news_subscription h4 i,.o_notifications_news_wrapper .o_notifications_news_subscription .o_cal .fc-header-title h2 i,.o_cal .fc-header-title .o_notifications_news_wrapper .o_notifications_news_subscription h2 i{display:none}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_context{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content{margin-left:1.5em;position:relative}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_icon{position:absolute;left:-1.5em;line-height:1.5em;top:0}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_date{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_url{margin-left:1.5em}.o_noti{margin:6px 0 6px 12px;float:right;color:#777}.o_noti .o_label{color:#777;cursor:help}@media (max-width: 767px){.o_noti .o_label span{display:none}} .panel-body .o_noti{margin:0}.o_portrait{display:inline-block}.o_portrait img{border-radius:50%;border:none;background-color:#eee;background-position:50% 50%;background-repeat:no-repeat;background-size:cover}.o_portrait_name{margin-top:6px}.o_portrait_avatar,.o_portrait_dummy,.o_portrait_dummy_female_big,.o_portrait_dummy_male_big,.o_portrait_anonymous{width:100px;height:100px}.o_portrait_dummy{background-image:url("../light/images/portrait/dummy.png")}.o_portrait_dummy_female_big{background-image:url("../light/images/portrait/dummy_female_big.png")}.o_portrait_dummy_male_big{background-image:url("../light/images/portrait/dummy_male_big.png")}.o_portrait_anonymous{background-image:url("../light/images/portrait/dummy.png")}.o_portrait_avatar_small,.o_portrait_dummy_small,.o_portrait_dummy_female_small,.o_portrait_dummy_male_small,.o_portrait_anonymous_small{width:30px;height:30px}.o_portrait_dummy_small{background-image:url("../light/images/portrait/dummy_small.png")}.o_portrait_dummy_female_small{background-image:url("../light/images/portrait/dummy_female_small.png")}.o_portrait_dummy_male_small{background-image:url("../light/images/portrait/dummy_male_small.png")}.o_portrait_anonymous_small{background-image:url("../light/images/portrait/dummy_small.png")}.o_datecomp{position:relative;width:40px;height:52px;border:1px solid #555;margin-right:12px;text-align:center;vertical-align:middle}.o_datecomp div.o_year{position:absolute;left:0;width:100%;top:-20px;height:20px;line-height:20px;font-size:10px}.o_datecomp div.o_month{height:20px;line-height:20px;font-size:12px;background-color:#428bca;color:#fff}.o_datecomp div.o_day{height:30px;line-height:30px;font-size:18px;border-top:1px solid #555;background-color:#fff;color:#333}.o_block_with_datecomp .o_head{position:relative;padding-left:52px}.o_block_with_datecomp .o_datecomp{position:absolute;top:0.2em;left:0}.o_block_with_datecomp .o_title{margin-top:0}.o_block_with_datecomp .o_meta{color:#777}.o_block_with_datecomp .o_content{border-left:5px solid #eee;padding:0 20px}.o_block_with_datecomp .o_block_footer{padding-left:25px}.o_cal_toptoolbar{margin-bottom:6px}.o_cal_toptoolbar .o_cal_toptoolbar_sub,.o_cal_toptoolbar .o_cal_toptoolbar_help{float:left;margin-right:12px}.o_feed .o_date,.o_feed .o_author{color:#777}.o_feed .o_subscription a{margin-right:1.5em}.o_feed .o_subscription form{margin-top:6px}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper{float:left}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_title,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_explanation,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_legend{display:none}.o_feed .o_blog_posts .o_ratings_and_comments a.o_comments span{display:none}.o_segments_content{margin-top:20px}.o_tabbed_pane .o_tabbed_pane_content{padding:20px 0 6px 0}.o_togglebox_wrapper .o_opener{position:relative;left:-0.5em}.o_togglebox_wrapper div.o_togglebox_content{position:relative;margin:0}.o_togglebox_wrapper div.o_togglebox_content .o_hide{position:absolute;bottom:0.5em;right:1em}.o_toolboxes ul{margin:0 0 1.5em 0;padding:0 0 0 1.5em}.o_qrcode{width:256px;height:256px}#o_ajax_busy{position:absolute;left:50%;top:20em;margin-left:-2.5em;height:5em;width:5em;color:#fff;z-index:1201;display:none}#o_body.o_ajax_busy{cursor:busy}.o_exception .o_visual{position:relative;background-image:url("../light/images/lion-500x333.jpg");filter:grayscale(50%);-webkit-filter:grayscale(50%);-moz-filter:grayscale(50%);-ms-filter:grayscale(50%);-o-filter:grayscale(50%);width:500px;height:333px;background-repeat:no-repeat;background-position:50% 50%;background-size:contain;margin:0 0 10px 16px}@media (min-width: 768px) and (max-width: 991px){.o_exception .o_visual{width:375px;height:249px}}@media (min-width: 500px) and (max-width: 767px){.o_exception .o_visual{width:250px;height:166px}}@media (max-width: 500px){.o_exception .o_visual{background-size:cover}} .typeahead,.tt-query,.tt-hint{width:396px;height:30px;padding:8px 12px;font-size:24px;line-height:30px;border:2px solid #ccc;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;outline:none}.typeahead{background-color:#fff}.typeahead:focus{border:2px solid #0097cf}.tt-query{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.tt-hint{color:#999}.tt-dropdown-menu{width:422px;margin-top:12px;padding:8px 0;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2)}.tt-suggestion{padding:3px 20px;font-size:18px;line-height:24px}.tt-suggestion.tt-cursor{color:#fff;background-color:#0097cf}.tt-suggestion p{margin:0}.o_search_link_extended,.o_search_link_simple{margin-top:12px;display:inline-block}.o_search_results_stats{color:#777;padding-left:1.5em}.o_search_highlight{margin-left:12px;font-size:12px}.o_search_result_title h4,.o_search_result_title .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_search_result_title h2{display:inline-block;margin-right:12px;margin-bottom:6px}.o_search_result_highlight{font-weight:bold}.o_search_result_context{color:#3c763d}.o_search_result_excerpt{color:#555}.o_search_result_details .o_togglebox_wrapper.o_block{margin-top:0;margin-bottom:0}.o_search_result_details .o_togglebox_wrapper .o_togglebox_content{color:#777;font-size:12px;background:#fff;padding:6px 12px}@media (max-width: 767px){.o_search_result_details{display:none}} .o_cal_orange{background:#ffc266;border-color:#ff9900;color:#5D5D5D}.o_cal_orange .o_cal_wv_event_header{background:#ff9900}.o_cal_orange a{color:#5d5d5d !important}.o_cal_green{background:#66c266;border-color:#009900;color:#FFF}.o_cal_green .o_cal_wv_event_header{background:#009900}.o_cal_green a{color:#fff !important}.o_cal_blue{background:#4d6e9f;border-color:#2e5894;color:#FFF}.o_cal_blue .o_cal_wv_event_header{background:#2e5894}.o_cal_blue a{color:#fff !important}.o_cal_yellow{background:#ffe066;border-color:#ffcc00;color:#5D5D5D}.o_cal_yellow .o_cal_wv_event_header{background:#ffcc00}.o_cal_yellow a{color:#5d5d5d !important}.o_cal_red{background:#c26666;border-color:#990000;color:#FFF}.o_cal_red .o_cal_wv_event_header{background:#990000}.o_cal_red a{color:#fff !important}.o_cal_rebeccapurple{background:#663399;border-color:#663399;color:#FFF}.o_cal_rebeccapurple .o_cal_wv_event_header{background:#663399}.o_cal_rebeccapurple a{color:#fff !important}.o_cal_grey{background:#DDDAAA;border-color:#5D5D5D;color:#FFF}.o_cal_grey .o_cal_wv_event_header{background:#5D5D5D}.o_cal_grey a{color:#fff !important}.o_cal_config_enabled,.o_cal_config_disabled{position:relative;float:left;display:inline}.o_cal_config_calendar{margin:0 5px;padding:1px 6px 1px 4px;position:relative;width:200px;overflow:hidden;float:left;display:inline}.o_cal_colorchooser_selected:before{content:"\f00c"}#o_cal_colorchooser div{border:1px solid #428bca;margin:5px;display:inline-block}#o_cal_colorchooser div:hover{border:1px solid #333}#o_cal_colorchooser a{width:20px;height:20px;display:inline-block}.o_visual{position:absolute;top:0;left:0;overflow:hidden;height:120px;width:180px;vertical-align:middle}@media (min-width: 768px) and (max-width: 991px){.o_visual{height:80px;width:120px}}@media (max-width: 767px){.o_visual{height:50px;width:75px}}.o_visual img{width:100%;height:auto}.o_visual .o_visual_not_available{width:100%;height:100%;background-image:url("../light/images/no_preview.png");background-repeat:no-repeat;background-position:50% 50%;background-size:contain}.o_coursetable.o_rendertype_custom .o_table_row{position:relative;border:1px solid #428bca;margin-bottom:10px}.o_coursetable.o_rendertype_custom .o_table_row .o_visual{border-right:1px solid #428bca}.o_coursetable.o_rendertype_custom .o_table_row .o_access{position:absolute;top:0;right:0;height:120px;width:180px;overflow:hidden;border-left:1px solid #428bca;padding-top:0.25em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{padding:0 1em;height:20px;line-height:20px;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{position:relative;left:2px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score .o_label{color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social{position:absolute;width:100%;bottom:32px;height:20px;padding-left:1em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_title,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating o_rating_legend,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_explanation{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings{padding:0 0 0 1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label{margin-bottom:1em;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_methods{color:#5bc0de}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{position:absolute;display:block;bottom:0;width:90px;height:30px;line-height:30px;text-align:center}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{right:0}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start{color:#fff;background-color:#428bca;border-color:#357ebd}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{color:#fff;background-color:#3071a9;border-color:#285e8e}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active{background-color:#428bca;border-color:#357ebd}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start .badge{color:#428bca;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{color:#fff;background-color:#f0ad4e;border-color:#eea236}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active{background-color:#f0ad4e;border-color:#eea236}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book .badge{color:#f0ad4e;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:90px;color:#fff;background-color:#5cb85c;border-color:#4cae4c}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{color:#fff;background-color:#449d44;border-color:#398439}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active{background-color:#5cb85c;border-color:#4cae4c}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details .badge{color:#5cb85c;background-color:#fff}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{height:80px;width:120px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_comments,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_label{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{width:60px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:60px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:120px;margin:0 180px 0 180px;position:relative;padding:1em 0.5em 0.25em 1em;overflow:hidden}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{margin:0;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a{display:block;color:#428bca}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover{color:#3071a9}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author{margin-top:0.5em;line-height:1em;font-size:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c763d}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle{position:absolute;top:5px;right:40px;font-size:90%;line-height:1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active{color:#3c763d}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active:hover{color:#2b542c}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{margin-top:0.5em}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark{position:absolute;top:-1px;right:15px}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:80px;margin:0 120px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:50px;margin:0 0 0 75px;padding:0 0 0 1em}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{line-height:50px}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_go_xs{position:absolute;top:0;right:0;padding:0 1em;height:50px;line-height:50px;background-color:#dff0d8}.o_coursetable.o_rendertype_classic .o_rating_explanation{display:none}.o_coursetable.o_rendertype_classic .o_start,.o_coursetable.o_rendertype_classic .o_book{white-space:nowrap}.o_coursetable.o_rendertype_classic .o_repoentry_type{color:#555}.o_coursetable.o_rendertype_classic .o_repoentry_ac{color:#555}.o_catalog .o_level{position:relative;margin-bottom:10px;padding:0;border-top:1px solid #428bca;border-bottom:1px solid #428bca}.o_catalog .o_level .o_visual{height:180px}.o_catalog .o_level .o_meta{position:relative;min-height:180px;height:180px;overflow:hidden;margin:0 0 0 180px;padding:1em 0.5em 0.5em 2em}.o_catalog .o_level .o_meta .o_title{margin:0}.o_catalog .o_level .o_meta .o_title a{display:block;color:#428bca}.o_catalog .o_level .o_meta .o_title a:hover{color:#3071a9}.o_catalog .o_level .o_meta .o_desc{padding:1em 0 0.5em 0}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_level .o_visual{height:120px}.o_catalog .o_level .o_meta{min-height:120px;height:120px;margin:0 0 0 120px}}@media (max-width: 767px){.o_catalog .o_level .o_visual{height:75px}.o_catalog .o_level .o_meta{min-height:75px;height:75px;margin:0 0 0 75px;padding:0 0 0 1em}.o_catalog .o_level .o_meta .o_title{line-height:75px}.o_catalog .o_level .o_meta .o_desc{display:none}}.o_catalog .o_sublevels{position:relative;margin-bottom:20px}.o_catalog .o_sublevels:before,.o_catalog .o_sublevels:after{content:" ";display:table}.o_catalog .o_sublevels:after{clear:both}.o_catalog .o_sublevels .o_sublevel{position:relative;float:left;margin:0 20px 20px 0;width:180px}.o_catalog .o_sublevels .o_sublevel:last-child{margin-right:0}.o_catalog .o_sublevels .o_sublevel .o_visual{border:1px solid #428bca;position:relative;height:180px}.o_catalog .o_sublevels .o_sublevel .o_meta{position:absolute;left:0;bottom:0;width:100%;border:1px solid #428bca;border-top:0;background-color:rgba(255,255,255,0.8)}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title{margin:0;text-align:center;line-height:2em;height:2em;width:100%;overflow:hidden}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a{display:block;color:#428bca}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover{color:#3071a9}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 10px 10px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}}@media (max-width: 767px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 1px 1px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px;width:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}} .o_repo_details{position:relative}.o_repo_details .o_lead .o_media{float:right;margin-left:2em;margin-bottom:2em}.o_repo_details .o_lead h1 i{display:none}.o_repo_details .o_overview i{margin-right:0.5em}.o_repo_details .o_overview div{margin-bottom:0.25em}.o_repo_details .o_start,.o_repo_details .o_book{margin:2em 0}.o_repo_details .o_social:before,.o_repo_details .o_social:after{content:" ";display:table}.o_repo_details .o_social:after{clear:both}.o_repo_details .o_social .o_rating_wrapper{float:left}.o_repo_details .o_social .o_comments{margin-left:1em}@media (max-width: 767px){.o_repo_details .o_lead p{font-size:16px}.o_repo_details .o_lead .o_media{margin-top:0}}@media (max-width: 613px){.o_repo_details .o_subcolumn{width:100%}} -.o_sp_icon:before{content:"\f0f6"}.o_st_icon:before{content:"\f1b3"}.o_tu_icon:before{content:"\f08e"}.o_bc_icon:before{content:"\f115"}.o_lti_icon:before{content:"\f08e"}.o_cp_icon:before{content:"\f187"}.o_cp_item:before{content:"\f0f6"}.o_scorm_icon:before{content:"\f187"}.o_en_icon:before{content:"\f090"}.o_fo_icon:before{content:"\f0e6"}.o_co_icon:before{content:"\f003"}.o_infomsg_icon:before{content:"\f05a"}.o_cal_icon:before{content:"\f073"}.o_wiki_icon:before{content:"\f0ac"}.o_podcast_icon:before{content:"\f03d"}.o_blog_icon:before{content:"\f0a1"}.o_ep_icon:before{content:"\f12e"}.o_iqtest_icon:before{content:"\f044"}.o_iqself_icon:before{content:"\f044"}.o_iqsurv_icon:before{content:"\f11a"}.o_ta_icon:before{content:"\f0ae"}.o_ms_icon:before{content:"\f087"}.o_dialog_icon:before{content:"\f0c5"}.o_projectbroker_icon:before{content:"\f10c"}.o_ll_icon:before{content:"\f0c1"}.o_den_icon:before{content:"\f133"}.o_cmembers_icon:before{content:"\f0c0"}.o_cl_icon:before{content:"\f046"}.o_vc_icon:before{content:"\f108"}.o_vitero_icon:before{content:"\f108"}.o_openmeetings_icon:before{content:"\f108"}.o_midpub:before{content:"\f058";color:green}.o_midwarn:before{content:"\f071";color:orange}.o_midlock:before{content:"\f023"}.o_miderr:before{content:"\f071";color:red}.o_middel:before{content:"\f12d"}.o_passed{color:#3c763d;font-weight:bold}.o_passed a:hover{color:#2b542c}.o_passed th{color:#333}.o_failed{color:#a94442;font-weight:bold}.o_failed a:hover{color:#843534}.o_failed th{color:#333}.o_unknown{color:#8a6d3b;font-weight:bold}.o_unknown a:hover{color:#66512c}.o_unknown th{color:#333}.o_noinfo{color:#777}.o_course_run .o_toc .o_entry .o_shorttitle{border-bottom:1px solid #777}.o_course_run .o_toc .o_entry .o_displaytitle{margin-top:5px;color:#777}.o_course_run .o_toc .o_entry .o_objectives{margin-top:10px;font-style:italic}.o_st_peekview ul li{margin-bottom:0.5em}.o_cl_line{margin-bottom:10px;padding-bottom:5px}.o_cl_line.o_even{background-color:#f9f9f9}.o_cmembers .o_cmember{margin:12px 0}.o_cmembers .o_cmember .o_portrait{margin-right:6px}.o_cmembers .o_cmember .o_cmember_info_wrapper{line-height:30px}.o_cmembers .o_cmember .o_cmember_info_wrapper .o_mail{margin-left:6px}.o_scorm_org:before{content:"\f187"}.o_scorm_item:before{content:"\f016"}.o_scorm_completed:before,.o_scorm_passed:before{content:"\f058";color:green}.o_scorm_failed:before{content:"\f071";color:red}.o_scorm_incomplete:before{content:"\f071";color:orange}.o_scorm_not_attempted:before{background:none}.o_course_editor .o_node_config{margin-bottom:20px}#o_course_editor_errorbox ul,#o_course_editor_warningbox ul{list-style-type:none}table.table.o_qti_item_kprim>thead>tr>th,table.table.o_qti_item_kprim>tbody>tr>td{border:none}td.o_qti_item_kprim_input,th.o_qti_item_kprim_input{text-align:center}.o_qti_item_mattext{line-height:2.5em}div.o_qti_item_itemfeedback{background-color:#ffffff;border-color:#000000}.d3chart .bar_green{fill:#5cb85c}.d3chart .bar_red{fill:#d9534f}.d3chart .bar_grey{fill:lightgrey}div.o_qti_statistics ul{list-style-type:none;padding:0;margin:0;font-size:90%}div.o_qti_statistics ul strong{font-weight:normal}div.o_qti_statistics ul li{padding-left:48px;margin-left:0;margin-bottom:10px}div.o_qti_statistics ul li.o_qti_statistics-ncorrect:before{font-size:125%;content:'\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-correct:before{font-size:125%;content:'\2713\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kplus:before{font-size:125%;content:'\2713\00A0\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kminus:before{font-size:125%;content:'\2A2F\00A0\2713\00A0\00A0'}div.o_qti_statistics ul li img{vertical-align:top}div.o_qti_statistics table.o_qti_statistics_figures tr{float:left}div.o_qti_statistics table.o_qti_statistics_figures tr:nth-child(2n+1){clear:left;padding-right:20px}div.o_qti_statistics table.o_qti_statistics_figures td{width:200px;padding-left:0}div.o_qti_statistics table.o_qti_statistics_figures td+td{width:100px}div.o_qti_statistics .o_qti_statistics_answer{background:#F5F5F5;padding:1px 2px;width:90%}div.o_qti_statistics div.o_qti_statistics_legend{padding-top:10px;width:470px;border:1px solid #ddd;border-radius:4px}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_green{background-color:#9dd53a}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_red{background-color:#f85032}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_grey{background-color:lightgrey}.onyx_iframe{width:100%;height:100%;border:none;min-height:60em}.o_qti_print div.o_qti_statistics{width:680px}@media print{div.o_qti_statistics{width:680px}}#o_dev_tool #o_dev_tool_mode{width:1em;height:1em;float:left;border:1px solid #000;margin-right:5px}a.o_dev{position:absolute;left:0;top:0;z-index:4000;background:#f0ad4e;border:1px solid #d59645;border-top:none;border-left:none;border-radius:0 0 4px 0;color:#fff}a.o_dev:hover{color:#d9534f}.o_dev_w{margin:1px}.o_dev_w .o_dev_h{color:#000;font-size:8px;line-height:10px;margin:0}.o_dev_w .o_dev_h span{background:#f4c37d;border:1px solid #f0ad4e;border-bottom:0}.o_dev_w .o_dev_c{position:relative;border:1px dotted #eee}.o_dev_w .o_dev_c .o_dev_i{position:absolute;top:0px;left:24px;height:auto;width:auto;padding:5px;border:1px solid black;display:none;margin:0px;z-index:999;font-size:11px;background-color:#BBF}.o_dev_w.o_dev_m>.o_dev_c{border:1px solid #f0ad4e;margin:0px;background-color:#f8e9d4}.o_wikimod_nav .o_noti{margin:0}.o_wikimod_editform_wrapper{margin-top:30px}.o_wiki-file-deleted{text-decoration:line-through}.o_ep_icon_map:before{content:"\f0b1"}.o_ep_icon_page:before{content:"\f016"}.o_ep_icon_struct:before{content:"\f1b3"}.o_ep_icon_liveblog:before{content:"\f0a1"}.o_artefact_closed:before{content:"\f023"}.o_portfolio_toc .o_ep_link{float:right;margin-right:0px}.o_portfolio_toc .o_ep_commentlink{float:right;margin-right:10%}.o_portfolio_toc li.level1{font-size:1.2em;margin:1.2em 0 0.2em 0;border-bottom:1px solid #ddd}.o_portfolio_toc li.level2{padding-left:20px;font-size:1.1em;border-bottom:1px dotted #ddd}.o_portfolio_toc li.level3{padding-left:40px}.b_eportfolio_page .b_eportfolio_structure>h5{border-bottom:1px solid #ddd;margin-top:1.2em}.o_eportfolio_maps .panel{font-family:'Century Gothic', 'Apple Gothic', sans-serif;box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .panel-heading{padding:5px 10px}.o_eportfolio_maps h4,.o_eportfolio_maps .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps h2{padding:11px 15px;background:rgba(255,255,230,0.7) none;border-radius:6px}.o_eportfolio_maps .table>tbody>tr>td{border-top:none}.o_eportfolio_maps .panel-body{border-top:none}.o_eportfolio_maps .panel>.panel-body+.table{border-top:none}.o_eportfolio_map{padding:0 20px 2px 3px;border-radius:6px 10px 6px 0;font-family:'Century Gothic', 'Apple Gothic', sans-serif}.o_map_header{padding-left:5px}.o_eportfolio_map ul.nav-tabs li:not(.active) a{background-color:rgba(240,240,240,0.7);border-radius:4px 4px 0 0}.o_eportfolio_edit{border-radius:4px 4px 0 0}.o_ep_actualpage,.o_eportfolio_edit{padding:15px;background-color:#fff}.o_ep_content{margin-top:15px}.o_ep_filter .o_date.form-inline .form-group,.o_ep_filter .o_date.navbar-form .form-group,.o_ep_filter .o_date.o_navbar-form .form-group{margin-left:8px}.o_eportfolio_share_policy_wrapper{border:1px solid #ddd;border-radius:4px}.o_eportfolio_share_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5}.o_eportfolio_share_policy{padding:10px 15px}.o_map-default{background:#fafafa;background:#fafafa -webkit-gradient(linear, 37% 20%, 53% 100%, from(#fafafa), to(#efefef));background:#fafafa -moz-linear-gradient(43% 71% 101deg, #efefef, #fafafa);background:#fafafa -o-linear-gradient(#fafafa, #efefef);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#fafafa', EndColorStr='#efefef');border:1px solid #efefef;border-left:3px solid rgba(188,188,188,0.8)}.o_eportfolio_maps .o_map-default h4,.o_eportfolio_maps .o_map-default .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-default h2{color:#444;background:none}.o_eportfolio_maps .o_map-default .panel-body,.o_eportfolio_maps .o_map-default td,.o_eportfolio_maps .o_map-default a{color:#000}.o_map-comic{background:#a2c3e8 none;font-family:'Comic Sans MS', 'Comic Sans', fantasy;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_map-leather{background-color:#957352;background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(248,248,248,0.7)), color-stop(100%, rgba(193,193,193,0.5))),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-webkit-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-moz-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-ms-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-o-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");font-family:Palatino, Georgia, serif;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-leather h4,.o_eportfolio_maps .o_map-leather .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-leather h2{background:rgba(243,230,225,0.3) none}.o_eportfolio_maps .o_map-leather .panel-body,.o_eportfolio_maps .o_map-leather td{color:#333}.o_eportfolio_maps .o_map-leather a{color:#fad9a4}.o_eportfolio_map.o_map-leather .o_map_header h4,.o_eportfolio_map.o_map-leather .o_map_header .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_map.o_map-leather .o_map_header h2,.o_eportfolio_map.o_map-leather .o_map_header p,.o_eportfolio_map.o_map-leather .o_map_header a,.o_eportfolio_map.o_map-leather .o_map_header span,.o_eportfolio_map.o_map-leather .o_map_header label{color:#333}.o_map-epmst-green{background-color:#ecf69a;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-green h4,.o_eportfolio_maps .o_map-epmst-green .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green h2{color:#444}.o_eportfolio_maps .o_map-epmst-green .panel-body,.o_eportfolio_maps .o_map-epmst-green td,.o_eportfolio_maps .o_map-epmst-green a{color:#000}.o_map-epmst-green2{background:#99e44d;background:#99e44d -webkit-gradient(linear, 37% 20%, 53% 100%, from(#99e44d), to(#cbf1a5));background:#99e44d -moz-linear-gradient(43% 71% 101deg, #cbf1a5, #99e44d);background:#99e44d -o-linear-gradient(#99e44d, #cbf1a5);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#99e44d', EndColorStr='#cbf1a5');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green2 h4,.o_eportfolio_maps .o_map-epmst-green2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green2 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green2 .panel-body,.o_eportfolio_maps .o_map-epmst-green2 td,.o_eportfolio_maps .o_map-epmst-green2 a{color:#000}.o_map-epmst-green3{background:#dff0c1;background:#dff0c1 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#dff0c1), to(#a0d346));background:#dff0c1 -moz-linear-gradient(43% 71% 101deg, #a0d346, #dff0c1);background:#dff0c1 -o-linear-gradient(#dff0c1, #a0d346);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#dff0c1', EndColorStr='#a0d346');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green3 h4,.o_eportfolio_maps .o_map-epmst-green3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green3 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green3 .panel-body,.o_eportfolio_maps .o_map-epmst-green3 td,.o_eportfolio_maps .o_map-epmst-green3 a{color:#000}.o_map-epmst-green4{background-color:#d7dbb5;border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green4 h4,.o_eportfolio_maps .o_map-epmst-green4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green4 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green4 .panel-body,.o_eportfolio_maps .o_map-epmst-green4 td,.o_eportfolio_maps .o_map-epmst-green4 a{color:#000}.o_map-epmst-red{background:#ffba71;background:#ffba71 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#ffba71), to(#ffba99));background:#ffba71 -moz-linear-gradient(43% 71% 101deg, #ffba99, #ffba71);background:#ffba71 -o-linear-gradient(#ffba71, #ffba99);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffba71', EndColorStr='#ffba99');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red h4,.o_eportfolio_maps .o_map-epmst-red .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red h2{color:#444}.o_eportfolio_maps .o_map-epmst-red .panel-body,.o_eportfolio_maps .o_map-epmst-red td,.o_eportfolio_maps .o_map-epmst-red a{color:#000}.o_map-epmst-red2{background:#ff9772;background:#ff9772 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#ff9772), to(#ff9780));background:#ff9772 -moz-linear-gradient(43% 71% 101deg, #ff9780, #ff9772);background:#ff9772 -o-linear-gradient(#ff9772, #ff9780);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ff9772', EndColorStr='#ff9780');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red2 h4,.o_eportfolio_maps .o_map-epmst-red2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red2 .panel-body,.o_eportfolio_maps .o_map-epmst-red2 td,.o_eportfolio_maps .o_map-epmst-red2 a{color:#000}.o_map-epmst-red3{background:#e8afbb;background:#e8afbb -webkit-gradient(linear, 37% 20%, 53% 100%, from(#e8afbb), to(#e8afa0));background:#e8afbb -moz-linear-gradient(43% 71% 101deg, #e8afa0, #e8afbb);background:#e8afbb -o-linear-gradient(#e8afbb, #e8afa0);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#e8afbb', EndColorStr='#e8afa0');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red3 h4,.o_eportfolio_maps .o_map-epmst-red3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red3 .panel-body,.o_eportfolio_maps .o_map-epmst-red3 td,.o_eportfolio_maps .o_map-epmst-red3 a{color:#000}.o_map-epmst-red4{background:#ffa800;background:#ffa800 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#ffa800), to(#ffaf00));background:#ffa800 -moz-linear-gradient(43% 71% 101deg, #ffaf00, #ffa800);background:#ffa800 -o-linear-gradient(#ffa800, #ffaf00);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffa800', EndColorStr='#ffaf00');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red4 h4,.o_eportfolio_maps .o_map-epmst-red4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red4 .panel-body,.o_eportfolio_maps .o_map-epmst-red4 td,.o_eportfolio_maps .o_map-epmst-red4 a{color:#000}.o_map-epmst-blue{background:#00d2f8;background:#00d2f8 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#00d2f8), to(#4a9ead));background:#00d2f8 -moz-linear-gradient(43% 71% 101deg, #4a9ead, #00d2f8);background:#00d2f8 -o-linear-gradient(#00d2f8, #4a9ead);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#00d2f8', EndColorStr='#4a9ead');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue h4,.o_eportfolio_maps .o_map-epmst-blue .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue .panel-body,.o_eportfolio_maps .o_map-epmst-blue td,.o_eportfolio_maps .o_map-epmst-blue a{color:#000}.o_map-epmst-blue2{background-color:#c4f6ff;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue2 h4,.o_eportfolio_maps .o_map-epmst-blue2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue2 .panel-body,.o_eportfolio_maps .o_map-epmst-blue2 td,.o_eportfolio_maps .o_map-epmst-blue2 a{color:#000}.o_map-epmst-blue3{background-color:#b3e2f7;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue3{box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .o_map-epmst-blue3 h4,.o_eportfolio_maps .o_map-epmst-blue3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue3 .panel-body,.o_eportfolio_maps .o_map-epmst-blue3 td,.o_eportfolio_maps .o_map-epmst-blue3 a{color:#000}.o_map-epmst-blue4{background:#dee7f7;background:#dee7f7 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#dee7f7), to(#c1e9fd));background:#dee7f7 -moz-linear-gradient(43% 71% 101deg, #c1e9fd, #dee7f7);background:#dee7f7 -o-linear-gradient(#dee7f7, #c1e9fd);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#dee7f7', EndColorStr='#c1e9fd');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue4 h4,.o_eportfolio_maps .o_map-epmst-blue4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue4 .panel-body,.o_eportfolio_maps .o_map-epmst-blue4 td,.o_eportfolio_maps .o_map-epmst-blue4 a{color:#000}.o_userbulk_changedcell{font-style:italic;font-weight:bold}body.o_dmz{background:linear-gradient(to right, rgba(255,255,255,0) 0.2%, rgba(255,255,255,0.95) 60%, #fff 100%),url("../light/images/learn-bg.jpg");background-size:cover, cover}body.o_dmz #o_main_wrapper,body.o_dmz #o_main_wrapper #o_main_container{background:transparent}.o_login{padding-left:50%;padding-right:5%;padding-bottom:20px}.o_login h1{margin-bottom:40px}.o_login .o_infomessage_wrapper{background-color:#fff;border:1px solid #e3e3e3;border-radius:4px;padding:6px 12px}.o_login .o_infomessage_wrapper div.o_info,.o_login .o_infomessage_wrapper div.o_warning,.o_login .o_infomessage_wrapper div.o_note{margin:0}.o_login .o_login_providers{margin-bottom:6px;border-radius:4px;-webkit-box-shadow:0px 1px 20px rgba(0,0,0,0.25);box-shadow:0px 1px 20px rgba(0,0,0,0.25)}.o_login .o_login_providers a span{display:block;font-size:9px;padding-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_login .o_login_provider{background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:0px 1px 20px rgba(0,0,0,0.25);box-shadow:0px 1px 20px rgba(0,0,0,0.25)}.o_login .o_login_form{position:relative;padding:10px 12px}.o_login .o_login_form .o_login_pwd{position:absolute;bottom:2em;right:12px}.o_login .o_login_register{display:block;line-height:2em;font-size:18px;text-align:center;color:#fff;background-color:#5bc0de;border-color:#46b8da;border-radius:4px;margin-top:16px;padding:10px 12px}.o_login .o_login_register:hover,.o_login .o_login_register:focus,.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{color:#fff;background-color:#31b0d5;border-color:#269abc}.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{background-image:none}.o_login .o_login_register.disabled,.o_login .o_login_register.disabled:hover,.o_login .o_login_register.disabled:focus,.o_login .o_login_register.disabled:active,.o_login .o_login_register.disabled.active,.o_login .o_login_register[disabled],.o_login .o_login_register[disabled]:hover,.o_login .o_login_register[disabled]:focus,.o_login .o_login_register[disabled]:active,.o_login .o_login_register[disabled].active,fieldset[disabled] .o_login .o_login_register,fieldset[disabled] .o_login .o_login_register:hover,fieldset[disabled] .o_login .o_login_register:focus,fieldset[disabled] .o_login .o_login_register:active,fieldset[disabled] .o_login .o_login_register.active{background-color:#5bc0de;border-color:#46b8da}.o_login .o_login_register .badge{color:#5bc0de;background-color:#fff}.o_login .o_login_register small{font-size:14px}@media (max-width: 991px){body.o_dmz{background:none}.o_login{padding-left:0;padding-right:0}.o_login .o_login_providers,.o_login .o_login_provider{-webkit-box-shadow:none;box-shadow:none}}.o_home_main h1{text-align:center}.o_home_main .o_icon_rss{line-height:20px;vertical-align:middle}.o_showall{font-size:12px;text-align:right;margin-bottom:5px}.o_portlet{position:relative;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_portlet .o_header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 12px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_portlet .o_content{padding:6px 12px}.o_portlet .o_portlet_table{margin:-12px;margin-bottom:-6px;margin-top:0}.o_portlet .o_table_empty.o_info{padding:6px}.o_portlet .o_toolbox{position:absolute;top:-1px;right:-1px;z-index:2;background-color:#fff;border:1px solid #faebcc;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;padding:6px 12px}.o_portlet .o_toolbox div{display:inline}.o_portlet .o_edit_shim{position:absolute;height:100%;width:100%;z-index:1;background:#fcf8e3;opacity:0.8}.o_inactive .o_header a{float:right;margin-left:12px;margin-top:10px}.o_portlet_dyk_q{margin-top:5px;font-style:italic}.o_portlet_dyk_a{margin:5px 0}.o_portlet_dyk_next{margin:5px 0;text-align:right}.o_library ul{list-style:none;margin:0 0 15px 0;padding:0}.o_library ul ul{margin:0}span.o_translation_i18nitem{position:relative !important}span.o_translation_i18nitem a.o_translation_i18nitem_launcher{position:absolute !important;z-index:100 !important;width:18px !important;height:20px !important;top:0 !important;left:5px !important;background:#fff;border:1px solid #428bca !important;border-radius:3px;text-align:center;padding:0 !important}.ui-widget{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:100%}.ui-widget-header{border-top:none;border-left:none;border-right:none;border-bottom:1px solid #eee;background:#fff;font-weight:bold}.ui-icon,.ui-widget-content .ui-icon,.ui-widget-header .ui-icon,.ui-state-default .ui-icon,.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-active .ui-icon,.ui-state-highlight .ui-icon,.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background:none;background-image:none}.ui-dialog{-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.25);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.25);background-color:#fefefe}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close:before{content:"\f00d" !important}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:120%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ui-dialog .ui-widget-header .ui-button.ui-corner-all{border:none !important;background:#fff !important}.ui-dialog .ui-widget-content{border-color:#fff;padding:5px}.ui-dialog .ui-dialog-titlebar{padding:4px 30px 4px 7px;margin:-2px -2px 0 -2px;background-color:#eee}.ui-dialog.ui-corner-all{border-radius:4px}.ui-dialog.ui-widget-content{border:1px solid transparent}.ui-dialog.o_modal-ui div.ui-dialog-buttonpane{display:none}.ui-datepicker{z-index:2000 !important;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.ui-datepicker .ui-widget-header .ui-corner-all,.ui-datepicker .ui-widget-header .ui-datepicker-next.ui-corner-all{border:none !important;background:#fff !important}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e:before{content:"\f061";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w:before{content:"\f060";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e,.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w{font-family:'FontAwesome';display:inline-block;background-image:none;background-position:0 0;font-weight:normal;text-indent:0;color:white}.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-next-hover{top:2px}.ui-datepicker .ui-state-default{background:#eee}.ui-datepicker .ui-state-highlight,.ui-datepicker .ui-widget-content .ui-state-highlight{border:1px solid #357ebd;background:#428bca;color:#fff}.ui-datepicker.ui-corner-all{border-radius:4px}.ui-datepicker.ui-widget-content{border:1px solid transparent}label.mce-label{display:inline;max-width:150px;margin-bottom:0;font-weight:normal} +.o_sp_icon:before{content:"\f0f6"}.o_st_icon:before{content:"\f1b3"}.o_tu_icon:before{content:"\f08e"}.o_bc_icon:before{content:"\f115"}.o_lti_icon:before{content:"\f08e"}.o_cp_icon:before{content:"\f187"}.o_cp_item:before{content:"\f0f6"}.o_scorm_icon:before{content:"\f187"}.o_en_icon:before{content:"\f090"}.o_fo_icon:before{content:"\f0e6"}.o_co_icon:before{content:"\f003"}.o_infomsg_icon:before{content:"\f05a"}.o_cal_icon:before{content:"\f073"}.o_wiki_icon:before{content:"\f0ac"}.o_podcast_icon:before{content:"\f03d"}.o_blog_icon:before{content:"\f0a1"}.o_ep_icon:before{content:"\f12e"}.o_iqtest_icon:before{content:"\f044"}.o_iqself_icon:before{content:"\f044"}.o_iqsurv_icon:before{content:"\f11a"}.o_ta_icon:before{content:"\f0ae"}.o_ms_icon:before{content:"\f087"}.o_dialog_icon:before{content:"\f0c5"}.o_projectbroker_icon:before{content:"\f10c"}.o_ll_icon:before{content:"\f0c1"}.o_den_icon:before{content:"\f133"}.o_cmembers_icon:before{content:"\f0c0"}.o_cl_icon:before{content:"\f046"}.o_vc_icon:before{content:"\f108"}.o_vitero_icon:before{content:"\f108"}.o_openmeetings_icon:before{content:"\f108"}.o_midpub:before{content:"\f058";color:green}.o_midwarn:before{content:"\f071";color:orange}.o_midlock:before{content:"\f023"}.o_miderr:before{content:"\f071";color:red}.o_middel:before{content:"\f12d"}.o_passed{color:#3c763d;font-weight:bold}.o_passed a:hover{color:#2b542c}.o_passed th{color:#333}.o_failed{color:#a94442;font-weight:bold}.o_failed a:hover{color:#843534}.o_failed th{color:#333}.o_unknown{color:#8a6d3b;font-weight:bold}.o_unknown a:hover{color:#66512c}.o_unknown th{color:#333}.o_noinfo{color:#777}.o_course_run .o_toc .o_entry .o_shorttitle{border-bottom:1px solid #777}.o_course_run .o_toc .o_entry .o_displaytitle{margin-top:5px;color:#777}.o_course_run .o_toc .o_entry .o_objectives{margin-top:10px;font-style:italic}.o_st_peekview ul li{margin-bottom:0.5em}.o_cl_line{margin-bottom:10px;padding-bottom:5px}.o_cl_line.o_even{background-color:#f9f9f9}.o_cmembers .o_cmember{margin:12px 0}.o_cmembers .o_cmember .o_portrait{margin-right:6px}.o_cmembers .o_cmember .o_cmember_info_wrapper{line-height:30px}.o_cmembers .o_cmember .o_cmember_info_wrapper .o_mail{margin-left:6px}.o_scorm_org:before{content:"\f187"}.o_scorm_item:before{content:"\f016"}.o_scorm_completed:before,.o_scorm_passed:before{content:"\f058";color:green}.o_scorm_failed:before{content:"\f071";color:red}.o_scorm_incomplete:before{content:"\f071";color:orange}.o_scorm_not_attempted:before{background:none}.o_course_editor .o_node_config{margin-bottom:20px}#o_course_editor_errorbox ul,#o_course_editor_warningbox ul{list-style-type:none}table.table.o_qti_item_kprim>thead>tr>th,table.table.o_qti_item_kprim>tbody>tr>td{border:none}td.o_qti_item_kprim_input,th.o_qti_item_kprim_input{text-align:center}.o_qti_item_mattext{line-height:2.5em}div.o_qti_item_itemfeedback{background-color:#ffffff;border-color:#000000}.d3chart .bar_green{fill:#5cb85c}.d3chart .bar_red{fill:#d9534f}.d3chart .bar_grey{fill:lightgrey}div.o_qti_statistics ul{list-style-type:none;padding:0;margin:0;font-size:90%}div.o_qti_statistics ul strong{font-weight:normal}div.o_qti_statistics ul li{padding-left:48px;margin-left:0;margin-bottom:10px}div.o_qti_statistics ul li.o_qti_statistics-ncorrect:before{font-size:125%;content:'\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-correct:before{font-size:125%;content:'\2713\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kplus:before{font-size:125%;content:'\2713\00A0\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kminus:before{font-size:125%;content:'\2A2F\00A0\2713\00A0\00A0'}div.o_qti_statistics ul li img{vertical-align:top}div.o_qti_statistics table.o_qti_statistics_figures tr{float:left}div.o_qti_statistics table.o_qti_statistics_figures tr:nth-child(2n+1){clear:left;padding-right:20px}div.o_qti_statistics table.o_qti_statistics_figures td{width:200px;padding-left:0}div.o_qti_statistics table.o_qti_statistics_figures td+td{width:100px}div.o_qti_statistics .o_qti_statistics_answer{background:#F5F5F5;padding:1px 2px;width:90%}div.o_qti_statistics div.o_qti_statistics_legend{padding-top:10px;width:470px;border:1px solid #ddd;border-radius:4px}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_green{background-color:#9dd53a}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_red{background-color:#f85032}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_grey{background-color:lightgrey}.onyx_iframe{width:100%;height:100%;border:none;min-height:60em}.o_qti_print div.o_qti_statistics{width:680px}@media print{div.o_qti_statistics{width:680px}}#o_dev_tool #o_dev_tool_mode{width:1em;height:1em;float:left;border:1px solid #000;margin-right:5px}a.o_dev{position:absolute;left:0;top:0;z-index:4000;background:#f0ad4e;border:1px solid #d59645;border-top:none;border-left:none;border-radius:0 0 4px 0;color:#fff}a.o_dev:hover{color:#d9534f}.o_dev_w{margin:1px}.o_dev_w .o_dev_h{color:#000;font-size:8px;line-height:10px;margin:0}.o_dev_w .o_dev_h span{background:#f4c37d;border:1px solid #f0ad4e;border-bottom:0}.o_dev_w .o_dev_c{position:relative;border:1px dotted #eee}.o_dev_w .o_dev_c .o_dev_i{position:absolute;top:0px;left:24px;height:auto;width:auto;padding:5px;border:1px solid black;display:none;margin:0px;z-index:999;font-size:11px;background-color:#BBF}.o_dev_w.o_dev_m>.o_dev_c{border:1px solid #f0ad4e;margin:0px;background-color:#f8e9d4}.o_wikimod_nav .o_noti{margin:0}.o_wikimod_editform_wrapper{margin-top:30px}.o_wiki-file-deleted{text-decoration:line-through}.o_ep_icon_map:before{content:"\f0b1"}.o_ep_icon_collection:before{content:"\f0b1"}.o_ep_icon_page:before{content:"\f016"}.o_ep_icon_struct:before{content:"\f1b3"}.o_ep_icon_liveblog:before{content:"\f0a1"}.o_artefact_closed:before{content:"\f023"}.o_portfolio_toc .o_ep_link{float:right;margin-right:0px}.o_portfolio_toc .o_ep_commentlink{float:right;margin-right:10%}.o_portfolio_toc li.level1{font-size:1.2em;margin:1.2em 0 0.2em 0;border-bottom:1px solid #ddd}.o_portfolio_toc li.level2{padding-left:20px;font-size:1.1em;border-bottom:1px dotted #ddd}.o_portfolio_toc li.level3{padding-left:40px}.b_eportfolio_page .b_eportfolio_structure>h5{border-bottom:1px solid #ddd;margin-top:1.2em}.o_eportfolio_maps .panel{font-family:'Century Gothic', 'Apple Gothic', sans-serif;box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .panel-heading{padding:5px 10px}.o_eportfolio_maps h4,.o_eportfolio_maps .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps h2{padding:11px 15px;background:rgba(255,255,230,0.7) none;border-radius:6px}.o_eportfolio_maps .table>tbody>tr>td{border-top:none}.o_eportfolio_maps .panel-body{border-top:none}.o_eportfolio_maps .panel>.panel-body+.table{border-top:none}.o_eportfolio_map{padding:0 20px 2px 3px;border-radius:6px 10px 6px 0;font-family:'Century Gothic', 'Apple Gothic', sans-serif}.o_map_header{padding-left:5px}.o_eportfolio_map ul.nav-tabs li:not(.active) a{background-color:rgba(240,240,240,0.7);border-radius:4px 4px 0 0}.o_eportfolio_edit{border-radius:4px 4px 0 0}.o_ep_actualpage,.o_eportfolio_edit{padding:15px;background-color:#fff}.o_ep_content{margin-top:15px}.o_ep_filter .o_date.form-inline .form-group,.o_ep_filter .o_date.navbar-form .form-group,.o_ep_filter .o_date.o_navbar-form .form-group{margin-left:8px}.o_eportfolio_share_policy_wrapper{border:1px solid #ddd;border-radius:4px}.o_eportfolio_share_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5}.o_eportfolio_share_policy{padding:10px 15px}.o_map-default{background:#fafafa;background:#fafafa -webkit-gradient(linear, 37% 20%, 53% 100%, from(#fafafa), to(#efefef));background:#fafafa -moz-linear-gradient(43% 71% 101deg, #efefef, #fafafa);background:#fafafa -o-linear-gradient(#fafafa, #efefef);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#fafafa', EndColorStr='#efefef');border:1px solid #efefef;border-left:3px solid rgba(188,188,188,0.8)}.o_eportfolio_maps .o_map-default h4,.o_eportfolio_maps .o_map-default .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-default h2{color:#444;background:none}.o_eportfolio_maps .o_map-default .panel-body,.o_eportfolio_maps .o_map-default td,.o_eportfolio_maps .o_map-default a{color:#000}.o_map-comic{background:#a2c3e8 none;font-family:'Comic Sans MS', 'Comic Sans', fantasy;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_map-leather{background-color:#957352;background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(248,248,248,0.7)), color-stop(100%, rgba(193,193,193,0.5))),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-webkit-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-moz-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-ms-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-o-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");font-family:Palatino, Georgia, serif;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-leather h4,.o_eportfolio_maps .o_map-leather .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-leather h2{background:rgba(243,230,225,0.3) none}.o_eportfolio_maps .o_map-leather .panel-body,.o_eportfolio_maps .o_map-leather td{color:#333}.o_eportfolio_maps .o_map-leather a{color:#fad9a4}.o_eportfolio_map.o_map-leather .o_map_header h4,.o_eportfolio_map.o_map-leather .o_map_header .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_map.o_map-leather .o_map_header h2,.o_eportfolio_map.o_map-leather .o_map_header p,.o_eportfolio_map.o_map-leather .o_map_header a,.o_eportfolio_map.o_map-leather .o_map_header span,.o_eportfolio_map.o_map-leather .o_map_header label{color:#333}.o_map-epmst-green{background-color:#ecf69a;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-green h4,.o_eportfolio_maps .o_map-epmst-green .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green h2{color:#444}.o_eportfolio_maps .o_map-epmst-green .panel-body,.o_eportfolio_maps .o_map-epmst-green td,.o_eportfolio_maps .o_map-epmst-green a{color:#000}.o_map-epmst-green2{background:#99e44d;background:#99e44d -webkit-gradient(linear, 37% 20%, 53% 100%, from(#99e44d), to(#cbf1a5));background:#99e44d -moz-linear-gradient(43% 71% 101deg, #cbf1a5, #99e44d);background:#99e44d -o-linear-gradient(#99e44d, #cbf1a5);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#99e44d', EndColorStr='#cbf1a5');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green2 h4,.o_eportfolio_maps .o_map-epmst-green2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green2 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green2 .panel-body,.o_eportfolio_maps .o_map-epmst-green2 td,.o_eportfolio_maps .o_map-epmst-green2 a{color:#000}.o_map-epmst-green3{background:#dff0c1;background:#dff0c1 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#dff0c1), to(#a0d346));background:#dff0c1 -moz-linear-gradient(43% 71% 101deg, #a0d346, #dff0c1);background:#dff0c1 -o-linear-gradient(#dff0c1, #a0d346);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#dff0c1', EndColorStr='#a0d346');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green3 h4,.o_eportfolio_maps .o_map-epmst-green3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green3 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green3 .panel-body,.o_eportfolio_maps .o_map-epmst-green3 td,.o_eportfolio_maps .o_map-epmst-green3 a{color:#000}.o_map-epmst-green4{background-color:#d7dbb5;border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green4 h4,.o_eportfolio_maps .o_map-epmst-green4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green4 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green4 .panel-body,.o_eportfolio_maps .o_map-epmst-green4 td,.o_eportfolio_maps .o_map-epmst-green4 a{color:#000}.o_map-epmst-red{background:#ffba71;background:#ffba71 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#ffba71), to(#ffba99));background:#ffba71 -moz-linear-gradient(43% 71% 101deg, #ffba99, #ffba71);background:#ffba71 -o-linear-gradient(#ffba71, #ffba99);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffba71', EndColorStr='#ffba99');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red h4,.o_eportfolio_maps .o_map-epmst-red .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red h2{color:#444}.o_eportfolio_maps .o_map-epmst-red .panel-body,.o_eportfolio_maps .o_map-epmst-red td,.o_eportfolio_maps .o_map-epmst-red a{color:#000}.o_map-epmst-red2{background:#ff9772;background:#ff9772 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#ff9772), to(#ff9780));background:#ff9772 -moz-linear-gradient(43% 71% 101deg, #ff9780, #ff9772);background:#ff9772 -o-linear-gradient(#ff9772, #ff9780);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ff9772', EndColorStr='#ff9780');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red2 h4,.o_eportfolio_maps .o_map-epmst-red2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red2 .panel-body,.o_eportfolio_maps .o_map-epmst-red2 td,.o_eportfolio_maps .o_map-epmst-red2 a{color:#000}.o_map-epmst-red3{background:#e8afbb;background:#e8afbb -webkit-gradient(linear, 37% 20%, 53% 100%, from(#e8afbb), to(#e8afa0));background:#e8afbb -moz-linear-gradient(43% 71% 101deg, #e8afa0, #e8afbb);background:#e8afbb -o-linear-gradient(#e8afbb, #e8afa0);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#e8afbb', EndColorStr='#e8afa0');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red3 h4,.o_eportfolio_maps .o_map-epmst-red3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red3 .panel-body,.o_eportfolio_maps .o_map-epmst-red3 td,.o_eportfolio_maps .o_map-epmst-red3 a{color:#000}.o_map-epmst-red4{background:#ffa800;background:#ffa800 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#ffa800), to(#ffaf00));background:#ffa800 -moz-linear-gradient(43% 71% 101deg, #ffaf00, #ffa800);background:#ffa800 -o-linear-gradient(#ffa800, #ffaf00);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffa800', EndColorStr='#ffaf00');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red4 h4,.o_eportfolio_maps .o_map-epmst-red4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red4 .panel-body,.o_eportfolio_maps .o_map-epmst-red4 td,.o_eportfolio_maps .o_map-epmst-red4 a{color:#000}.o_map-epmst-blue{background:#00d2f8;background:#00d2f8 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#00d2f8), to(#4a9ead));background:#00d2f8 -moz-linear-gradient(43% 71% 101deg, #4a9ead, #00d2f8);background:#00d2f8 -o-linear-gradient(#00d2f8, #4a9ead);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#00d2f8', EndColorStr='#4a9ead');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue h4,.o_eportfolio_maps .o_map-epmst-blue .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue .panel-body,.o_eportfolio_maps .o_map-epmst-blue td,.o_eportfolio_maps .o_map-epmst-blue a{color:#000}.o_map-epmst-blue2{background-color:#c4f6ff;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue2 h4,.o_eportfolio_maps .o_map-epmst-blue2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue2 .panel-body,.o_eportfolio_maps .o_map-epmst-blue2 td,.o_eportfolio_maps .o_map-epmst-blue2 a{color:#000}.o_map-epmst-blue3{background-color:#b3e2f7;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue3{box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .o_map-epmst-blue3 h4,.o_eportfolio_maps .o_map-epmst-blue3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue3 .panel-body,.o_eportfolio_maps .o_map-epmst-blue3 td,.o_eportfolio_maps .o_map-epmst-blue3 a{color:#000}.o_map-epmst-blue4{background:#dee7f7;background:#dee7f7 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#dee7f7), to(#c1e9fd));background:#dee7f7 -moz-linear-gradient(43% 71% 101deg, #c1e9fd, #dee7f7);background:#dee7f7 -o-linear-gradient(#dee7f7, #c1e9fd);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#dee7f7', EndColorStr='#c1e9fd');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue4 h4,.o_eportfolio_maps .o_map-epmst-blue4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue4 .panel-body,.o_eportfolio_maps .o_map-epmst-blue4 td,.o_eportfolio_maps .o_map-epmst-blue4 a{color:#000}.o_userbulk_changedcell{font-style:italic;font-weight:bold}body.o_dmz{background:linear-gradient(to right, rgba(255,255,255,0) 0.2%, rgba(255,255,255,0.95) 60%, #fff 100%),url("../light/images/learn-bg.jpg");background-size:cover, cover}body.o_dmz #o_main_wrapper,body.o_dmz #o_main_wrapper #o_main_container{background:transparent}.o_login{padding-left:50%;padding-right:5%;padding-bottom:20px}.o_login h1{margin-bottom:40px}.o_login .o_infomessage_wrapper{background-color:#fff;border:1px solid #e3e3e3;border-radius:4px;padding:6px 12px}.o_login .o_infomessage_wrapper div.o_info,.o_login .o_infomessage_wrapper div.o_warning,.o_login .o_infomessage_wrapper div.o_note{margin:0}.o_login .o_login_providers{margin-bottom:6px;border-radius:4px;-webkit-box-shadow:0px 1px 20px rgba(0,0,0,0.25);box-shadow:0px 1px 20px rgba(0,0,0,0.25)}.o_login .o_login_providers a span{display:block;font-size:9px;padding-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_login .o_login_provider{background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:0px 1px 20px rgba(0,0,0,0.25);box-shadow:0px 1px 20px rgba(0,0,0,0.25)}.o_login .o_login_form{position:relative;padding:10px 12px}.o_login .o_login_form .o_login_pwd{position:absolute;bottom:2em;right:12px}.o_login .o_login_register{display:block;line-height:2em;font-size:18px;text-align:center;color:#fff;background-color:#5bc0de;border-color:#46b8da;border-radius:4px;margin-top:16px;padding:10px 12px}.o_login .o_login_register:hover,.o_login .o_login_register:focus,.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{color:#fff;background-color:#31b0d5;border-color:#269abc}.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{background-image:none}.o_login .o_login_register.disabled,.o_login .o_login_register.disabled:hover,.o_login .o_login_register.disabled:focus,.o_login .o_login_register.disabled:active,.o_login .o_login_register.disabled.active,.o_login .o_login_register[disabled],.o_login .o_login_register[disabled]:hover,.o_login .o_login_register[disabled]:focus,.o_login .o_login_register[disabled]:active,.o_login .o_login_register[disabled].active,fieldset[disabled] .o_login .o_login_register,fieldset[disabled] .o_login .o_login_register:hover,fieldset[disabled] .o_login .o_login_register:focus,fieldset[disabled] .o_login .o_login_register:active,fieldset[disabled] .o_login .o_login_register.active{background-color:#5bc0de;border-color:#46b8da}.o_login .o_login_register .badge{color:#5bc0de;background-color:#fff}.o_login .o_login_register small{font-size:14px}@media (max-width: 991px){body.o_dmz{background:none}.o_login{padding-left:0;padding-right:0}.o_login .o_login_providers,.o_login .o_login_provider{-webkit-box-shadow:none;box-shadow:none}}.o_home_main h1{text-align:center}.o_home_main .o_icon_rss{line-height:20px;vertical-align:middle}.o_showall{font-size:12px;text-align:right;margin-bottom:5px}.o_portlet{position:relative;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_portlet .o_header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 12px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_portlet .o_content{padding:6px 12px}.o_portlet .o_portlet_table{margin:-12px;margin-bottom:-6px;margin-top:0}.o_portlet .o_table_empty.o_info{padding:6px}.o_portlet .o_toolbox{position:absolute;top:-1px;right:-1px;z-index:2;background-color:#fff;border:1px solid #faebcc;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;padding:6px 12px}.o_portlet .o_toolbox div{display:inline}.o_portlet .o_edit_shim{position:absolute;height:100%;width:100%;z-index:1;background:#fcf8e3;opacity:0.8}.o_inactive .o_header a{float:right;margin-left:12px;margin-top:10px}.o_portlet_dyk_q{margin-top:5px;font-style:italic}.o_portlet_dyk_a{margin:5px 0}.o_portlet_dyk_next{margin:5px 0;text-align:right}.o_library ul{list-style:none;margin:0 0 15px 0;padding:0}.o_library ul ul{margin:0}span.o_translation_i18nitem{position:relative !important}span.o_translation_i18nitem a.o_translation_i18nitem_launcher{position:absolute !important;z-index:100 !important;width:18px !important;height:20px !important;top:0 !important;left:5px !important;background:#fff;border:1px solid #428bca !important;border-radius:3px;text-align:center;padding:0 !important}.ui-widget{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:100%}.ui-widget-header{border-top:none;border-left:none;border-right:none;border-bottom:1px solid #eee;background:#fff;font-weight:bold}.ui-icon,.ui-widget-content .ui-icon,.ui-widget-header .ui-icon,.ui-state-default .ui-icon,.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-active .ui-icon,.ui-state-highlight .ui-icon,.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background:none;background-image:none}.ui-dialog{-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.25);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.25);background-color:#fefefe}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close:before{content:"\f00d" !important}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:120%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ui-dialog .ui-widget-header .ui-button.ui-corner-all{border:none !important;background:#fff !important}.ui-dialog .ui-widget-content{border-color:#fff;padding:5px}.ui-dialog .ui-dialog-titlebar{padding:4px 30px 4px 7px;margin:-2px -2px 0 -2px;background-color:#eee}.ui-dialog.ui-corner-all{border-radius:4px}.ui-dialog.ui-widget-content{border:1px solid transparent}.ui-dialog.o_modal-ui div.ui-dialog-buttonpane{display:none}.ui-datepicker{z-index:2000 !important;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.ui-datepicker .ui-widget-header .ui-corner-all,.ui-datepicker .ui-widget-header .ui-datepicker-next.ui-corner-all{border:none !important;background:#fff !important}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e:before{content:"\f061";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w:before{content:"\f060";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e,.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w{font-family:'FontAwesome';display:inline-block;background-image:none;background-position:0 0;font-weight:normal;text-indent:0;color:white}.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-next-hover{top:2px}.ui-datepicker .ui-state-default{background:#eee}.ui-datepicker .ui-state-highlight,.ui-datepicker .ui-widget-content .ui-state-highlight{border:1px solid #357ebd;background:#428bca;color:#fff}.ui-datepicker.ui-corner-all{border-radius:4px}.ui-datepicker.ui-widget-content{border:1px solid transparent}label.mce-label{display:inline;max-width:150px;margin-bottom:0;font-weight:normal} diff --git a/src/test/java/org/olat/core/util/filter/impl/XSSFilterTest.java b/src/test/java/org/olat/core/util/filter/impl/XSSFilterTest.java index b6cac031c97b005702c065c9c9a982e2a7ec6045..df8997fcd591c6079be18dba75d1265c55a8a16e 100644 --- a/src/test/java/org/olat/core/util/filter/impl/XSSFilterTest.java +++ b/src/test/java/org/olat/core/util/filter/impl/XSSFilterTest.java @@ -182,7 +182,7 @@ public class XSSFilterTest { public void test_links(){ testsToRun = 2; t("<a href=\"blibla.html\" alt=\"blub\" target=\"_blank\">new window link</A>", "<a alt=\"blub\" href=\"blibla.html\" target=\"_blank\">new window link</a>"); - t("<a target=\"_blank\" href=\"http://www.frentix.com\" onclick=\"javascript:alert('hallo');\" title=\"a good link\" class=\"o_icon_link_externe\">a complicated link</a>","<a class=\"b_link_extern\" href=\"http://www.frentix.com\" target=\"_blank\" title=\"a good link\">a complicated link</a>"); + t("<a target=\"_blank\" href=\"http://www.frentix.com\" onclick=\"javascript:alert('hallo');\" title=\"a good link\" class=\"o_icon_link_externe\">a complicated link</a>","<a class=\"o_icon_link_extern\" href=\"http://www.frentix.com\" target=\"_blank\" title=\"a good link\">a complicated link</a>"); } @Test @@ -229,7 +229,7 @@ public class XSSFilterTest { public void test_tiny_tables(){ testsToRun = 2; //tables - t("<table border=\"1\" style=\"width: 268px; height: 81px;\" class=\"b_table\">\n<caption>bliblablue</caption>\n<tbody>\n<tr>\n<td>\n<p>adsfadsf</p>\n</td>\n<td>asdf</td>\n</tr>\n<tr>\n<td>asf</td>\n<td>\n<p>asdf</p>\n</td>\n</tr>\n</tbody>\n</table>", "<table border=\"1\" class=\"b_table\" style=\"width: 268.0px;height: 81.0px;\">\n<caption>bliblablue</caption>\n<tbody>\n<tr>\n<td>\n<p>adsfadsf</p>\n</td>\n<td>asdf</td>\n</tr>\n<tr>\n<td>asf</td>\n<td>\n<p>asdf</p>\n</td>\n</tr>\n</tbody>\n</table>"); + t("<table border=\"1\" style=\"width: 268px; height: 81px;\" class=\"table\">\n<caption>bliblablue</caption>\n<tbody>\n<tr>\n<td>\n<p>adsfadsf</p>\n</td>\n<td>asdf</td>\n</tr>\n<tr>\n<td>asf</td>\n<td>\n<p>asdf</p>\n</td>\n</tr>\n</tbody>\n</table>", "<table border=\"1\" class=\"table\" style=\"width: 268.0px;height: 81.0px;\">\n<caption>bliblablue</caption>\n<tbody>\n<tr>\n<td>\n<p>adsfadsf</p>\n</td>\n<td>asdf</td>\n</tr>\n<tr>\n<td>asf</td>\n<td>\n<p>asdf</p>\n</td>\n</tr>\n</tbody>\n</table>"); t("<tr style=\"background-color: rgb(46, 147, 209);\">\n<td style=\"border: 1px solid rgb(240, 68, 14);\">asf</td>\n<td>\n<p>asdf</p>\n</td>\n</tr>","\nasf\n\n<p>asdf</p>\n"); } diff --git a/src/test/java/org/olat/core/util/i18n/I18nTest.java b/src/test/java/org/olat/core/util/i18n/I18nTest.java index 8a6636d46f9ff8c814448967ed146841705603b9..0ee05d08dda89c9a1321ee3e961bd9a291b1d48a 100644 --- a/src/test/java/org/olat/core/util/i18n/I18nTest.java +++ b/src/test/java/org/olat/core/util/i18n/I18nTest.java @@ -701,7 +701,7 @@ public class I18nTest extends OlatTestCase { String convertedToHTMLMarkup = InlineTranslationInterceptHandlerController.replaceLocalizationMarkupWithHTML(plainVanillaWrapped, inlineTranslationURLBuilder, inlineTrans); assertEquals("<span class=\"o_translation_i18nitem\">" + inlineTransLink.toString() + plainVanillaPlain + "</span>", convertedToHTMLMarkup); // Simple link - String linkOPEN = "<a href=\"http://www.olat.org/bla/blu:bli#bla\" title='funny title' class=\"b_css b_anothercss\">"; + String linkOPEN = "<a href=\"http://www.olat.org/bla/blu:bli#bla\" title='funny title' class=\"o_css O_anothercss\">"; String linkCLOSE = "</a>"; String inlineSpanOPEN = "<span class=\"o_translation_i18nitem\">"; String inlineSpanCLOSE = "</span>"; @@ -742,7 +742,7 @@ public class I18nTest extends OlatTestCase { assertEquals(convertedWithinMultipleLinksAndInputExpected, convertedToHTMLMarkup); // Within element attribute String attributeOPEN = "<a href='sdfsdf' title=\""; - String attributeCLOSE = "\" class=\"b_bluber\">hello world</a>"; + String attributeCLOSE = "\" class=\"o_bluber\">hello world</a>"; String translatedWithinAttribute = attributeOPEN + plainVanillaWrapped + attributeCLOSE + rawtext1; convertedToHTMLMarkup = InlineTranslationInterceptHandlerController.replaceLocalizationMarkupWithHTML(translatedWithinAttribute, inlineTranslationURLBuilder, inlineTrans); String convertedWithinAttributeExpected = attributeOPEN + plainVanillaPlain + attributeCLOSE + rawtext1; diff --git a/src/test/java/org/olat/modules/fo/WordCountTest.java b/src/test/java/org/olat/modules/fo/WordCountTest.java index 7271ca4c99daf22bd559051d9b580209e50e05ab..9885076fc03b84f978f28528e0428de422032244 100644 --- a/src/test/java/org/olat/modules/fo/WordCountTest.java +++ b/src/test/java/org/olat/modules/fo/WordCountTest.java @@ -42,7 +42,7 @@ public class WordCountTest { @Test public void testCleanMessage() { Filter filter = new QuoteAndTagFilter(); - String text = "<p> </p><div class=\"b_quote_wrapper\"><div class=\"b_quote_author mceNonEditable\">Am 23.11.09 12:29 hat OLAT Administrator geschrieben:</div><blockquote class=\"b_quote\"><p>Quelques mots que je voulais écrire. Et encore un ou deux.</p></blockquote></div><p>Et une réponse avec citation incorporée</p>"; + String text = "<p> </p><div class=\"o_quote_wrapper\"><div class=\"o_quote_author mceNonEditable\">Am 23.11.09 12:29 hat OLAT Administrator geschrieben:</div><blockquote class=\"o_quote\"><p>Quelques mots que je voulais écrire. Et encore un ou deux.</p></blockquote></div><p>Et une réponse avec citation incorporée</p>"; String output = filter.filter(text); assertTrue(" Et une réponse avec citation incorporée".equals(output)); }