diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextConfiguration.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextConfiguration.java index 4ce590bb2025a8ee4f5ccae0f3b3993a8e609877..38795a27a1a5ccc3d61e6642ab5eebc8ce0d33de 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextConfiguration.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextConfiguration.java @@ -38,11 +38,13 @@ import org.olat.core.gui.components.form.flexible.impl.elements.richText.plugins import org.olat.core.gui.control.Disposable; import org.olat.core.gui.render.StringOutput; import org.olat.core.gui.themes.Theme; +import org.olat.core.gui.translator.Translator; import org.olat.core.helpers.Settings; import org.olat.core.logging.OLog; import org.olat.core.logging.Tracing; import org.olat.core.util.Formatter; import org.olat.core.util.UserSession; +import org.olat.core.util.Util; import org.olat.core.util.WebappHelper; import org.olat.core.util.i18n.I18nManager; import org.olat.core.util.vfs.LocalFolderImpl; @@ -702,7 +704,7 @@ public class RichTextConfiguration implements Disposable { return linkBrowserCustomTreeModel; } - protected void appendConfigToTinyJSArray_4(StringOutput out) { + protected void appendConfigToTinyJSArray_4(StringOutput out, Translator translator) { // Now add the quoted values Map<String,String> copyValues = new HashMap<String,String>(quotedConfigValues); @@ -731,10 +733,20 @@ public class RichTextConfiguration implements Disposable { .append("statusbar:true,\n") .append("menubar:").append(tinyConfig.hasMenu()).append(",\n"); + String leftAndClear = "Left and clear"; + String rightAndClear = "Right and clear"; + if(translator != null) { + translator = Util.createPackageTranslator(RichTextConfiguration.class, translator.getLocale(), translator); + leftAndClear = translator.translate("left.clear"); + rightAndClear = translator.translate("right.clear"); + } + tinyMenuSb.append("image_class_list: [\n") .append(" {title: 'Left', value: 'b_float_left'},\n") + .append(" {title: '").append(leftAndClear).append("', value: 'b_float_left_clear'},\n") .append(" {title: 'Center', value: 'b_centered'},\n") - .append(" {title: 'Right', value: 'b_float_right'}\n") + .append(" {title: 'Right', value: 'b_float_right'},\n") + .append(" {title: '").append(rightAndClear).append("', value: 'b_float_right_clear'}\n") .append("],\n"); if (tinyConfig.getTool1() != null) { diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementRenderer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementRenderer.java index 1da140b424f67392ba1ccb98fc7baa261bd75a2b..cbccb7a06dd8d0bd7e720510549aec92caaca2fa 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementRenderer.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementRenderer.java @@ -97,12 +97,11 @@ class RichTextElementRenderer implements ComponentRenderer { sb.append(Formatter.formatLatexFormulas(value)); sb.append("</div>"); } else if(teC.isUseTiny4()) { - renderTinyMCE_4(sb, domID, teC, ubu); + renderTinyMCE_4(sb, domID, teC, ubu, source.getTranslator()); } } - - private void renderTinyMCE_4(StringOutput sb, String domID, RichTextElementComponent teC, URLBuilder ubu) { + private void renderTinyMCE_4(StringOutput sb, String domID, RichTextElementComponent teC, URLBuilder ubu, Translator translator) { RichTextElementImpl te = teC.getRichTextElementImpl(); RichTextConfiguration config = te.getEditorConfiguration(); List<String> onInit = config.getOnInit(); @@ -111,7 +110,7 @@ class RichTextElementRenderer implements ComponentRenderer { renderTextarea(sb, domID, teC); StringOutput configurations = new StringOutput(); - config.appendConfigToTinyJSArray_4(configurations); + config.appendConfigToTinyJSArray_4(configurations, translator); StringOutput baseUrl = new StringOutput(); StaticMediaDispatcher.renderStaticURI(baseUrl, "js/tinymce4/tinymce/tinymce.min.js", false); diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_de.properties index 4494808975980d979f6a33a8f196b2f3ffc3255d..e2f147745c98f7f1c391b41cc978e3f1a1b2660e 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_de.properties @@ -1,2 +1,4 @@ #Mon Mar 02 09:54:04 CET 2009 richText.element.target.window.alwayssame = Link immer im selben neuen Fenster öffnen +left.clear=Linksb\u00fcndig und allein +right.clear=Rechtsb\u00fcndig und allein \ No newline at end of file diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_en.properties index 808b86703e0b2dd6fbb03462ab9a098fc4d8ec26..bfd2f5c503dd12292044650fd76b393c9e668c85 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_en.properties @@ -1,2 +1,4 @@ #Fri Jan 22 19:18:42 CET 2010 richText.element.target.window.alwayssame=Open link always in the same new window +left.clear=Left and clear +right.clear=Right and clear \ No newline at end of file diff --git a/src/main/webapp/static/themes/openolat/all/_basemod.scss b/src/main/webapp/static/themes/openolat/all/_basemod.scss index e59ca3238eac7f91e8270d32c7dae4eddae0266f..6c53989417d2ce40194e1bbc71f647a62cfc9def 100644 --- a/src/main/webapp/static/themes/openolat/all/_basemod.scss +++ b/src/main/webapp/static/themes/openolat/all/_basemod.scss @@ -597,7 +597,9 @@ div.b_ext_elem { /* FLOTING STYLES */ .b_float_left { float: left; display:inline; margin-right: 1em; margin-bottom: 0.15em; } +.b_float_left_clear { float: left; margin-right: 1em; margin-bottom: 0.15em; } .b_float_right { float: right; display:inline; margin-left: 1em; margin-bottom: 0.15em; } +.b_float_right_clear { float: right; margin-left: 1em; margin-bottom: 0.15em; } .b_center { text-align:center; margin: 0.5em auto } /* CLEAR container: additonal to b_floatbox */ .b_floatscrollbox {