diff --git a/src/main/java/org/olat/admin/user/SendTokenToUserForm.java b/src/main/java/org/olat/admin/user/SendTokenToUserForm.java index 9567f79f4cdad527f857eaa24fdcba3dd58ad47c..b46412f864622cdec3c1b59605ac2d8b4f7b54e8 100644 --- a/src/main/java/org/olat/admin/user/SendTokenToUserForm.java +++ b/src/main/java/org/olat/admin/user/SendTokenToUserForm.java @@ -26,6 +26,7 @@ import java.util.Locale; import org.olat.basesecurity.Authentication; import org.olat.basesecurity.BaseSecurity; import org.olat.basesecurity.BaseSecurityModule; +import org.olat.core.dispatcher.DispatcherModule; import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.form.flexible.FormItem; import org.olat.core.gui.components.form.flexible.FormItemContainer; @@ -132,6 +133,7 @@ public class SendTokenToUserForm extends FormBasicController { dummyKey = Encoder.md5hash(emailAdress); String serverpath = Settings.getServerContextPathURI(); + String serverLoginPath = Settings.getServerContextPathURI() + DispatcherModule.getPathDefault(); Translator userTrans = Util.createPackageTranslator(RegistrationManager.class, locale) ; String authenticationName = securityManager.findAuthenticationName(user, "OLAT"); String userName = authenticationName; @@ -139,7 +141,7 @@ public class SendTokenToUserForm extends FormBasicController { userName = emailAdress; } return userTrans.translate("pwchange.intro", new String[] { userName, authenticationName, emailAdress }) - + userTrans.translate("pwchange.body", new String[] { serverpath, dummyKey, i18nModule.getLocaleKey(locale) }); + + userTrans.translate("pwchange.body", new String[] { serverpath, dummyKey, i18nModule.getLocaleKey(locale), serverLoginPath }); } else return "This function is not available for users without an email-adress!"; } diff --git a/src/main/java/org/olat/basesecurity/AuthHelper.java b/src/main/java/org/olat/basesecurity/AuthHelper.java index ca58664c11448fecf794b29252b4b532a2362294..0d4bdcfbd8400b25b34bb1a970e49cb89d034e13 100644 --- a/src/main/java/org/olat/basesecurity/AuthHelper.java +++ b/src/main/java/org/olat/basesecurity/AuthHelper.java @@ -392,7 +392,7 @@ public class AuthHelper { // by the implementation of the AuthenticationProvider. String setWarning = wasGuest ? "" : "&logout=true"; ureq.getDispatchResult().setResultingMediaResource( - new RedirectMediaResource(WebappHelper.getServletContextPath() + "/dmz/?lang=" + lang + setWarning)); + new RedirectMediaResource(WebappHelper.getServletContextPath() + DispatcherModule.getPathDefault() + "?lang=" + lang + setWarning)); } private static void deleteShibsessionCookie(UserRequest ureq) { diff --git a/src/main/java/org/olat/core/commons/fullWebApp/_content/fullwebapplayout.html b/src/main/java/org/olat/core/commons/fullWebApp/_content/fullwebapplayout.html index ff33d1a94c6d3ef3a4ee3860846e153a692f787b..7095db5e4683b45c3dc084cd9386f985b8743d96 100644 --- a/src/main/java/org/olat/core/commons/fullWebApp/_content/fullwebapplayout.html +++ b/src/main/java/org/olat/core/commons/fullWebApp/_content/fullwebapplayout.html @@ -172,7 +172,7 @@ try{ var closing = function(e) { if(navigator.sendBeacon) { var beaconUrl = '$r.formURI("close-window")'; - if(beaconUrl.indexOf("/dmz/") == -1) { + if(beaconUrl.indexOf("${r.getPathDefault()}") == -1) { navigator.sendBeacon(beaconUrl, null); } } diff --git a/src/main/java/org/olat/core/commons/fullWebApp/_content/message.html b/src/main/java/org/olat/core/commons/fullWebApp/_content/message.html index c484dddcb2fc052e54d261b1c7bb9d0b5f0878e7..b18abeec7a0230b80e75578393ac90cc1578e957 100644 --- a/src/main/java/org/olat/core/commons/fullWebApp/_content/message.html +++ b/src/main/java/org/olat/core/commons/fullWebApp/_content/message.html @@ -55,7 +55,7 @@ var o_info = new Object(); </div> #end <div class="o_button_group"> - <a class="btn btn-primary" href="$r.relLink('dmz/')?logout=true"><span>$r.translate("goto.login") <i class="o_icon o_icon_start"> </i></span></a> + <a class="btn btn-primary" href="${r.logoutUrl()}"><span>$r.translate("goto.login") <i class="o_icon o_icon_start"> </i></span></a> </div> ## END ERROR AREA </div> diff --git a/src/main/java/org/olat/core/dispatcher/DispatcherModule.java b/src/main/java/org/olat/core/dispatcher/DispatcherModule.java index 7d85e3d2fa842af61ad8689c84db5280e8f3fd5c..63f19ee4e4e274f69170f0b3720ccb2232a924eb 100644 --- a/src/main/java/org/olat/core/dispatcher/DispatcherModule.java +++ b/src/main/java/org/olat/core/dispatcher/DispatcherModule.java @@ -49,7 +49,7 @@ public class DispatcherModule { private static final Logger log = Tracing.createLoggerFor(DispatcherModule.class); /** Identifies requests for the DMZ */ - public static String PATH_DEFAULT = "/dmz/"; + private static String pathDefault; /** Identifies requests for the mapper registry */ public static final String PATH_MAPPED = "/m/"; /** Identifies requests for the global mapper registry */ @@ -67,10 +67,6 @@ public class DispatcherModule { private Map<String, Dispatcher> dispatchers; private static final String DOUBLE_SLASH = "//"; - - public static String getPathDefault(){ - return PATH_DEFAULT; - } public static String getLegacyUriPrefix(HttpServletRequest request) { return request.getContextPath() + getFirstPath(request); @@ -134,7 +130,7 @@ public class DispatcherModule { * @param response */ public static final void redirectToDefaultDispatcher(HttpServletResponse response) { - redirectTo(response, WebappHelper.getServletContextPath() + PATH_DEFAULT); + redirectTo(response, WebappHelper.getServletContextPath() + getPathDefault()); } /** @@ -282,5 +278,18 @@ public class DispatcherModule { */ public void setDispatchers(Map<String, Dispatcher> dispatchers) { this.dispatchers = dispatchers; + + Dispatcher dispatcher = dispatchers.get("/dmz/"); + dispatchers.put(pathDefault, dispatcher); + } + + public static String getPathDefault() { + return pathDefault; } + + public void setDefaultPath(String path) { + pathDefault = path; + } + + } diff --git a/src/main/java/org/olat/core/dispatcher/_spring/dispatcherContext.xml b/src/main/java/org/olat/core/dispatcher/_spring/dispatcherContext.xml index dbf67c27ec29ea07108eb965013f88edbe005353..ff7ec846d8ad84de0bcadf64690ba1bf40a20ec7 100644 --- a/src/main/java/org/olat/core/dispatcher/_spring/dispatcherContext.xml +++ b/src/main/java/org/olat/core/dispatcher/_spring/dispatcherContext.xml @@ -9,6 +9,7 @@ configures DispatcherActions to be called on certain paths --> <bean id="mainUrlDispatcher" class="org.olat.core.dispatcher.DispatcherModule" > + <property name="defaultPath" value="/${server.login.path}/" /> <property name="dispatchers"> <map> <entry key="/dmz/"> diff --git a/src/main/java/org/olat/core/gui/render/velocity/VelocityRenderDecorator.java b/src/main/java/org/olat/core/gui/render/velocity/VelocityRenderDecorator.java index cae9b230d17f27a2505e2aa2b3afc5c32e158259..af54fccff214e08c70a4e18e446f2438bb554f7d 100644 --- a/src/main/java/org/olat/core/gui/render/velocity/VelocityRenderDecorator.java +++ b/src/main/java/org/olat/core/gui/render/velocity/VelocityRenderDecorator.java @@ -38,6 +38,7 @@ import java.util.UUID; import org.olat.core.CoreSpringFactory; import org.olat.core.commons.services.help.HelpModule; +import org.olat.core.dispatcher.DispatcherModule; import org.olat.core.gui.components.Component; import org.olat.core.gui.components.form.flexible.FormItem; import org.olat.core.gui.components.form.flexible.impl.NameValuePair; @@ -96,6 +97,13 @@ public class VelocityRenderDecorator implements Closeable { target = null; renderer = null; } + + /** + * @return The default path /dmz/ + */ + public String getPathDefault() { + return DispatcherModule.getPathDefault(); + } /** * @@ -394,6 +402,10 @@ public class VelocityRenderDecorator implements Closeable { return sb; } + public String logoutUrl() { + return relLink(Settings.getLoginPath() + "/") + "?logout=true"; + } + public StringOutput contextPath() { StringOutput sb = new StringOutput(100); sb.append(Settings.getServerContextPath()); diff --git a/src/main/java/org/olat/core/helpers/Settings.java b/src/main/java/org/olat/core/helpers/Settings.java index ef2936aa5ff6392fae17a5b3ca737f633e680253..9df2f8aa648afa1e082487c496b74b81f68d114a 100644 --- a/src/main/java/org/olat/core/helpers/Settings.java +++ b/src/main/java/org/olat/core/helpers/Settings.java @@ -76,6 +76,8 @@ public class Settings { private static String domainName; private static String legacyContextPath; + private static String loginPath; + /** * [used by spring] */ @@ -245,6 +247,14 @@ public class Settings { Settings.domainName = domainName; } + public static String getLoginPath() { + return loginPath; + } + + public void setLoginPath(String path) { + Settings.loginPath = path; + } + public static String getServerContextPath() { return WebappHelper.getServletContextPath(); } diff --git a/src/main/java/org/olat/core/servlets/OpenOLATServlet.java b/src/main/java/org/olat/core/servlets/OpenOLATServlet.java index 33c7f0b5074b7caed5371e3ee9a8fb804827732b..a67c0147b74cc715a98e9a9de969bdaa2477e3e5 100644 --- a/src/main/java/org/olat/core/servlets/OpenOLATServlet.java +++ b/src/main/java/org/olat/core/servlets/OpenOLATServlet.java @@ -286,7 +286,9 @@ public class OpenOLATServlet extends HttpServlet { } } - if(legacyContext != null && legacyContext.equals(dispatcherName)) { + if("/dmz/".equals(dispatcherName) && !DispatcherModule.getPathDefault().equals("/dmz/")) { + redirectToDmz(response); + } else if(legacyContext != null && legacyContext.equals(dispatcherName)) { String uri = request.getRequestURI(); String redirectUri = uri.substring(legacyContext.length() - 1, uri.length()); RequestDispatcher dispatcher = request.getRequestDispatcher(redirectUri); @@ -296,10 +298,11 @@ public class OpenOLATServlet extends HttpServlet { Dispatcher dispatcher = dispatchers.get(dispatcherName); dispatcher.execute(request, response); } else { + String dmzPath = "/" + Settings.getLoginPath(); //root -> redirect to dmz if("/".equals(dispatcherName)) { redirectToDmz(response); - } else if("/dmz".equals(dispatcherName)) { + } else if("/dmz".equals(dispatcherName) || dmzPath.equals(dispatcherName)) { redirectToDmz(response); } else { String uri = request.getRequestURI(); diff --git a/src/main/java/org/olat/core/util/_spring/utilCorecontext.xml b/src/main/java/org/olat/core/util/_spring/utilCorecontext.xml index b8e204cb336620ab57ec847f2d549dfdcfe7ea09..17a61b017d16b588b9752bdb960270f690efbb09 100644 --- a/src/main/java/org/olat/core/util/_spring/utilCorecontext.xml +++ b/src/main/java/org/olat/core/util/_spring/utilCorecontext.xml @@ -58,6 +58,7 @@ <property name="serverDomainName" value="${server.domainname}" /> <property name="serverSecurePort" value="${server.port.ssl}" /> <property name="serverInsecurePort" value="${server.port}" /> + <property name="loginPath" value="${server.login.path}" /> <property name="legacyContext" value="${server.legacy.context}" /> <!-- true enable debug mode, not for production mode but for productive hours ;) --> <property name="debug" value="${olat.debug}" /> diff --git a/src/main/java/org/olat/registration/PwChangeController.java b/src/main/java/org/olat/registration/PwChangeController.java index 2b8d9198fbc41b39eb5d9a89eb9a0cd4bf071d61..1dd551a19335a3bb3788b6b2d67f5355ff921ea5 100644 --- a/src/main/java/org/olat/registration/PwChangeController.java +++ b/src/main/java/org/olat/registration/PwChangeController.java @@ -267,6 +267,7 @@ public class PwChangeController extends BasicController { String today = DateFormat.getDateInstance(DateFormat.LONG, ureq.getLocale()).format(new Date()); // mailer configuration String serverpath = Settings.getServerContextPathURI(); + String serverLoginPath = Settings.getServerContextPathURI() + DispatcherModule.getPathDefault(); String authenticationName = securityManager.findAuthenticationName(identity, "OLAT"); String userName = authenticationName; if((userName == null || StringHelper.isLong(authenticationName)) && loginModule.isAllowLoginUsingEmail()) { @@ -285,8 +286,8 @@ public class PwChangeController extends BasicController { .append("<div class='o_body'>") .append(userTrans.translate("pwchange.headline")) .append(userTrans.translate("pwchange.intro", new String[] { userName, authenticationName, emailAdress })) - .append(userTrans.translate("pwchange.body", new String[] { serverpath, tk.getRegistrationKey(), i18nModule.getLocaleKey(ureq.getLocale()) })) - .append(userTrans.translate("pwchange.body.alt", new String[] { serverpath, tk.getRegistrationKey(), i18nModule.getLocaleKey(ureq.getLocale()) })) + .append(userTrans.translate("pwchange.body", new String[] { serverpath, tk.getRegistrationKey(), i18nModule.getLocaleKey(ureq.getLocale()), serverLoginPath })) + .append(userTrans.translate("pwchange.body.alt", new String[] { serverpath, tk.getRegistrationKey(), i18nModule.getLocaleKey(ureq.getLocale()), serverLoginPath })) .append("</div>") .append("<div class='o_footer'>") .append(userTrans.translate("reg.wherefrom", new String[] { serverpath, today })) diff --git a/src/main/java/org/olat/registration/RegistrationController.java b/src/main/java/org/olat/registration/RegistrationController.java index 993f41e0175985c95a9140502f7832318db89660..46b5e1183e3b48ffed689d8fe440605286716257 100644 --- a/src/main/java/org/olat/registration/RegistrationController.java +++ b/src/main/java/org/olat/registration/RegistrationController.java @@ -373,7 +373,7 @@ public class RegistrationController extends BasicController implements Activatea } myContent.contextPut("regKey", tk.getRegistrationKey()); - String link = serverpath + "/dmz/registration/index.html?key=" + tk.getRegistrationKey() + "&language=" + i18nModule.getLocaleKey(ureq.getLocale()); + String link = serverpath + DispatcherModule.getPathDefault() + "registration/index.html?key=" + tk.getRegistrationKey() + "&language=" + i18nModule.getLocaleKey(ureq.getLocale()); String[] bodyAttrs = new String[]{ serverpath, //0 tk.getRegistrationKey(), //1 diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_ar.properties index 6fde9a8627d2068d6739001f921841f8caef584c..e34f96706710f373538c6554e5b687326414f401 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_ar.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_ar.properties @@ -36,7 +36,7 @@ menu.login.alt=\u064A\u0631\u062C\u0649 \u062A\u0633\u062C\u064A\u0644 \u0627\u0 password.cantchange=\u0644\u062A\u063A\u064A\u064A\u0631 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643\u060C \u064A\u0631\u062C\u0649 \u0627\u0644\u0627\u062A\u0635\u0627\u0644 \u0628\u0641\u0631\u064A\u0642 \u0627\u0644\u062F\u0639\u0645 \u0641\u0649 \u062C\u0627\u0645\u0639\u062A\u0643. password.notchanged=\u0644\u0627 \u064A\u0645\u0643\u0646 \u062A\u063A\u064A\u064A\u0631 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643. password.successful=\u062A\u0645 \u062A\u063A\u064A\u064A\u0631 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643 \u0628\u0646\u062C\u0627\u062D. -pwchange.body={0}/dmz/pwchange/index.html?key\={1}&language\={2}\u064A\u0631\u062C\u0649 \u0627\u062E\u062A\u064A\u0627\u0631 \u0627\u0644\u0631\u0627\u0628\u0637 \r\n\u0644\u062A\u063A\u064A\u064A\u0631 \u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0623\u0648\u0644\u0627\u062A.\r\n\u0641\u0631\u064A\u0642 \u0623\u0648\u0644\u0627\u062A +pwchange.body={3}pwchange/index.html?key\={1}&language\={2}\u064A\u0631\u062C\u0649 \u0627\u062E\u062A\u064A\u0627\u0631 \u0627\u0644\u0631\u0627\u0628\u0637 \r\n\u0644\u062A\u063A\u064A\u064A\u0631 \u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0623\u0648\u0644\u0627\u062A.\r\n\u0641\u0631\u064A\u0642 \u0623\u0648\u0644\u0627\u062A pwchange.homelink=\u0627\u0644\u0631\u062C\u0627\u0621 \u0627\u0644\u0646\u0642\u0631 \u0647\u0646\u0627 \u0644\u062A\u0633\u062C\u064A\u0644 \u0627\u0644\u062F\u062E\u0648\u0644 pwchange.intro=\u0644\u0642\u062F \u0642\u0645\u062A (\u0623\u0648 \u0634\u062E\u0635 \u0622\u062E\u0631) \u0628\u0637\u0644\u0628 \u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u062C\u062F\u064A\u062F\u0629 \u0628\u0634\u0623\u0646 \u062D\u0633\u0627\u0628 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 {0} \u0641\u0649 \u0623\u0648\u0644\u0627\u062A. pwchange.subject=\u0645\u0641\u062A\u0627\u062D \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0627\u0644\u062C\u062F\u064A\u062F\u0629 \u0628\u0623\u0648\u0644\u0627\u062A diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_ar_LB.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_ar_LB.properties index c02cfc11fff72bdb4a8600aaf019b963bed263fc..8d0ebd8d1325c9787b18dbec46b84f0946c6eade 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_ar_LB.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_ar_LB.properties @@ -1,2 +1,2 @@ #Tue Jul 27 15:48:46 CEST 2010 -pwchange.body={0}/dmz/pwchange/index.html?key\={1}&language\={2}\u064A\u0631\u062C\u0649 \u0627\u062E\u062A\u064A\u0627\u0631 \u0627\u0644\u0631\u0627\u0628\u0637 \r\n\u0644\u062A\u063A\u064A\u064A\u0631 \u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0623\u0648\u0644\u0627\u062A.\r\n\u0641\u0631\u064A\u0642 \u0623\u0648\u0644\u0627\u062A +pwchange.body={3}pwchange/index.html?key\={1}&language\={2}\u064A\u0631\u062C\u0649 \u0627\u062E\u062A\u064A\u0627\u0631 \u0627\u0644\u0631\u0627\u0628\u0637 \r\n\u0644\u062A\u063A\u064A\u064A\u0631 \u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0623\u0648\u0644\u0627\u062A.\r\n\u0641\u0631\u064A\u0642 \u0623\u0648\u0644\u0627\u062A diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_bg.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_bg.properties index b0500c7d917b20d8c8641a579dd072802d586980..db21aa13a5e86a26ae51912ba3ff40c5634034c2 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_bg.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_bg.properties @@ -30,7 +30,7 @@ menu.login.alt=\u041C\u043E\u043B\u044F, \u0432\u043B\u0435\u0437\u0442\u0435 \u password.cantchange=\u0417\u0430 \u0434\u0430 \u043F\u0440\u043E\u043C\u0435\u043D\u0438\u0442\u0435 \u0432\u0430\u0448\u0430\u0442\u0430 \u043F\u0430\u0440\u043E\u043B\u0430, \u043C\u043E\u043B\u044F, \u0441\u0432\u044A\u0440\u0436\u0435\u0442\u0435 \u0441\u0435 \u0441 \u0433\u0440\u0443\u043F\u0430\u0442\u0430 \u043F\u043E \u043F\u043E\u0434\u0434\u0440\u044A\u0436\u043A\u0430 \u043D\u0430 \u0441\u0438\u0441\u0442\u0435\u043C\u0430\u0442\u0430. password.notchanged=\u0412\u0430\u0448\u0430\u0442\u0430 \u043F\u0430\u0440\u043E\u043B\u0430 \u043D\u0435 \u043C\u043E\u0436\u0435 \u0434\u0430 \u0431\u044A\u0434\u0435 \u043F\u0440\u043E\u043C\u0435\u043D\u0435\u043D\u0430. password.successful=\u0412\u0430\u0448\u0430\u0442\u0430 \u043F\u0430\u0440\u043E\u043B\u0430 \u0435 \u043F\u0440\u043E\u043C\u0435\u043D\u0435\u043D\u0430 \u0443\u0441\u043F\u0435\u0448\u043D\u043E. -pwchange.body=\u041C\u043E\u043B\u044F, \u0438\u0437\u043F\u043E\u043B\u0437\u0432\u0430\u0439\u0442\u0435 \u0432\u0440\u044A\u0437\u043A\u0430\u0442\u0430 {0}/dmz/pwchange/index.html?key\={1}&language\={2},\r\n\u0437\u0430 \u0434\u0430 \u043F\u0440\u043E\u043C\u0435\u043D\u0438\u0442\u0435 \u0432\u0430\u0448\u0430\u0442\u0430 \u043F\u0430\u0440\u043E\u043B\u0430. +pwchange.body=\u041C\u043E\u043B\u044F, \u0438\u0437\u043F\u043E\u043B\u0437\u0432\u0430\u0439\u0442\u0435 \u0432\u0440\u044A\u0437\u043A\u0430\u0442\u0430 {3}pwchange/index.html?key\={1}&language\={2},\r\n\u0437\u0430 \u0434\u0430 \u043F\u0440\u043E\u043C\u0435\u043D\u0438\u0442\u0435 \u0432\u0430\u0448\u0430\u0442\u0430 \u043F\u0430\u0440\u043E\u043B\u0430. pwchange.subject=\u041A\u043B\u044E\u0447 \u0437\u0430 \u043D\u043E\u0432\u0430 \u043F\u0430\u0440\u043E\u043B\u0430 pwdchangekey.missing=\u041C\u043E\u043B\u044F, \u043F\u0440\u0435\u0434\u0430\u0439\u0442\u0435 \u043A\u043B\u044E\u0447\u0430 \u0437\u0430 \u043F\u0440\u043E\u043C\u044F\u043D\u0430 \u043D\u0430 \u043F\u0430\u0440\u043E\u043B\u0430\u0442\u0430. pwform.cancelled=\u041F\u0440\u043E\u043C\u044F\u043D\u0430\u0442\u0430 \u043D\u0430 \u043F\u0430\u0440\u043E\u043B\u0430 \u0435 \u043E\u0442\u043C\u0435\u043D\u0435\u043D\u0430. \u041F\u0430\u0440\u043E\u043B\u0430\u0442\u0430 \u043E\u0441\u0442\u0430\u0432\u0430 \u043D\u0435\u043F\u0440\u043E\u043C\u0435\u043D\u0435\u043D\u0430. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_cs.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_cs.properties index 112c1f67ba5c086379495c283004af063bbeb929..72fd7a3e477932fa87c8d0ce0693361b93557209 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_cs.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_cs.properties @@ -29,7 +29,7 @@ menu.login.alt=Please log in to profit from the Learning Management System OpenO password.cantchange=Pro zm\u011Bnu hesla kontaktujte spr\u00E1vu OpenOlatu. password.notchanged=Va\u0161e heslo nemohlo b\u00FDt zm\u011Bn\u011Bno. password.successful=Va\u0161e heslo bylo zm\u011Bn\u011Bno. -pwchange.body=Ke zm\u011Bn\u011B hesla do OpenOlatu pou\u017Eijte odkaz {0}/dmz/pwchange/index.html?key\={1}&language\={2} \n . \n\nSpr\u00E1va OpenOlatu.\n +pwchange.body=Ke zm\u011Bn\u011B hesla do OpenOlatu pou\u017Eijte odkaz {3}pwchange/index.html?key\={1}&language\={2} \n . \n\nSpr\u00E1va OpenOlatu.\n pwchange.subject=Kl\u00ED\u010D k nov\u00E9mu heslu pwdchangekey.missing=Pros\u00EDm potvr\u010Fte kl\u00ED\u010D pro zm\u011Bnu hesla. pwform.cancelled=Zm\u011Bna hesla zru\u0161ena. Heslo z\u016Fstalo stejn\u00E9. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_da.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_da.properties index c66292bc80eda3889210836b04bc2c0a39437f49..565d668a16dc4ead031dcde0c8622a3d347ee82f 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_da.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_da.properties @@ -30,7 +30,7 @@ menu.login.alt=Log venligst ind for at f\u00E5 gl\u00E6de af L\u00E6ringssysteme password.cantchange=For at \u00E6ndre dit kodeord, kontakt venligst supportfunktionen p\u00E5 dit universitet. password.notchanged=Dit kodeord kunne ikke \u00E6ndres. password.successful=Dit kodeord er \u00E6ndret. -pwchange.body=Brug venligst dette link {0}/dmz/pwchange/index.html?key\={1}&language\={2} \nfor at \u00E6ndre dit OpenOlat kodeord. \n\nMvh Dit OpenOlat team.\n +pwchange.body=Brug venligst dette link {3}pwchange/index.html?key\={1}&language\={2} \nfor at \u00E6ndre dit OpenOlat kodeord. \n\nMvh Dit OpenOlat team.\n pwchange.subject=Skift OpenOlat kodeord pwdchangekey.missing=Send venligst n\u00F8gle for kodeordsskift. pwform.cancelled=OpenOlat kodeordsskift er afbrudt. Kodeord er u\u00E6ndret. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_de.properties index 9d63e2639dbca311f8c7b8e0e34878b42b4a9574..cb86817e519e892b5c8d382bcf07baf7dc6604f5 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_de.properties @@ -74,8 +74,8 @@ pw.change.sms=SMS Authentifizierung starten pw.change.sms.descr=Sie haben eine Mobile Telefonnummer in OpenOlat hinterlegt. Sie k\u00F6nnen sich daher \u00FCber SMS authentifizieren. W\u00E4hlen Sie den untenstehenden Button, um die SMS-Authentifizierung zu starten\: pw.change.sms.title=SMS Authentifizierung pwchange.headline=<p><b>Schl\u00FCssel f\u00FCr neues OpenOlat-Passwort</b></p> -pwchange.body=<p>Klicken Sie <a href='{0}/dmz/pwchange/index.html?key\={1}&language\={2}'>hier um Ihr OpenOlat Passwort neu zu setzen</a>. \nAnschliessend k\u00F6nnen Sie sich bei <a href='{0}/dmz/1%3A1%3Aomain_loging%3A1%3A0%3Acid%3Alogin/?lp\=OLAT'>OpenOlat anmelden</a>.</p> -pwchange.body.alt=<p>Falls Ihr Emailprogramm HTML nicht unterst\u00FCtzt, kopieren Sie den folgenden Link in Ihren Webbrowser: </br><a href='{0}/dmz/pwchange/index.html?key\={1}&language\={2}'>{0}/dmz/pwchange/index.html?key\={1}&language\={2}</a><p> +pwchange.body=<p>Klicken Sie <a href='{3}pwchange/index.html?key\={1}&language\={2}'>hier um Ihr OpenOlat Passwort neu zu setzen</a>. \nAnschliessend k\u00F6nnen Sie sich bei <a href='{3}1%3A1%3Aomain_loging%3A1%3A0%3Acid%3Alogin/?lp\=OLAT'>OpenOlat anmelden</a>.</p> +pwchange.body.alt=<p>Falls Ihr Emailprogramm HTML nicht unterst\u00FCtzt, kopieren Sie den folgenden Link in Ihren Webbrowser: </br><a href='{3}pwchange/index.html?key\={1}&language\={2}'>{3}pwchange/index.html?key\={1}&language\={2}</a><p> pwchange.homelink=Klicken Sie hier um sich anzumelden pwchange.intro=Sie oder eine andere Person haben f\u00FCr den OpenOlat-Benutzeraccount {0} ein neues Passwort angefordert.\n\n pwchange.subject=Schl\u00FCssel f\u00FCr neues OpenOlat-Passwort diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_el.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_el.properties index f9f6d13d2fdcf531bcd40888ab41faaf3d021b13..5e5e81355995303ff139f21edc40de9badbb26cd 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_el.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_el.properties @@ -36,7 +36,7 @@ menu.login.alt=\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03B9\u03 password.cantchange=\u0393\u03B9\u03B1 \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03C4\u03B5 \u03C4\u03BF\u03BD \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03AE\u03C2 \u03C3\u03B1\u03C2, \u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03BF\u03CD\u03BC\u03B5 \u03B5\u03C0\u03B9\u03BA\u03BF\u03B9\u03BD\u03C9\u03BD\u03AE\u03C3\u03C4\u03B5 \u03BC\u03B5 \u03C4\u03B7\u03BD \u03BF\u03BC\u03AC\u03B4\u03B1 \u03C5\u03C0\u03BF\u03C3\u03C4\u03AE\u03C1\u03B9\u03BE\u03B7\u03C2 \u03C3\u03C4\u03BF \u03C0\u03B1\u03BD\u03B5\u03C0\u03B9\u03C3\u03C4\u03AE\u03BC\u03B9\u03CC \u03C3\u03B1\u03C2. password.notchanged=\u039F \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03AE\u03C2 \u03C3\u03B1\u03C2 \u03C3\u03C4\u03BF OpenOlat \u03B4\u03B5\u03BD \u03BC\u03C0\u03CC\u03C1\u03B5\u03C3\u03B5 \u03BD\u03B1 \u03B1\u03BB\u03BB\u03B1\u03C7\u03C4\u03B5\u03AF. password.successful=\u039F \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03AE\u03C2 \u03C3\u03B1\u03C2 \u03C3\u03C4\u03BF OpenOlat \u03B1\u03BB\u03BB\u03AC\u03C7\u03C4\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2. -pwchange.body=\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B1\u03BA\u03BF\u03BB\u03BF\u03C5\u03B8\u03AE\u03C3\u03C4\u03B5 \u03C4\u03BF \u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03BC\u03BF {0}/dmz/pwchange/index.html?key\={1}&language\={2} \n\u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03C4\u03B5 \u03C4\u03BF\u03BD \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03AE \u03C3\u03B1\u03C2 \u03C3\u03C4\u03BF OpenOlat. \n\n\u0391\u03C0\u03CC \u03C4\u03B7\u03BD \u03BF\u03BC\u03AC\u03B4\u03B1 \u03C4\u03BF\u03C5 OpenOlat.\n +pwchange.body=\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B1\u03BA\u03BF\u03BB\u03BF\u03C5\u03B8\u03AE\u03C3\u03C4\u03B5 \u03C4\u03BF \u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03BC\u03BF {3}pwchange/index.html?key\={1}&language\={2} \n\u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03C4\u03B5 \u03C4\u03BF\u03BD \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03AE \u03C3\u03B1\u03C2 \u03C3\u03C4\u03BF OpenOlat. \n\n\u0391\u03C0\u03CC \u03C4\u03B7\u03BD \u03BF\u03BC\u03AC\u03B4\u03B1 \u03C4\u03BF\u03C5 OpenOlat.\n pwchange.homelink=\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03BA\u03AC\u03BD\u03C4\u03B5 \u03BA\u03BB\u03AF\u03BA \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03C3\u03C5\u03BD\u03B4\u03B5\u03B8\u03B5\u03AF\u03C4\u03B5 pwchange.intro=\u0388\u03C7\u03B5\u03C4\u03B5 \u03B6\u03B7\u03C4\u03AE\u03C3\u03B5\u03B9 (\u03B5\u03C3\u03B5\u03AF\u03C2 \u03AE \u03BA\u03AC\u03C0\u03BF\u03B9\u03BF\u03C2 \u03AC\u03BB\u03BB\u03BF\u03C2) \u03AD\u03BD\u03B1\u03BD \u03BD\u03AD\u03BF \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03BF \u03BB\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03CC \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7 {0}. pwchange.subject=\u039A\u03BB\u03B5\u03B9\u03B4\u03AF \u03B3\u03B9\u03B1 \u03C4\u03BF \u03BD\u03AD\u03BF \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03C3\u03C4\u03BF OpenOlat diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_en.properties index 76e993562480d4ea1ee7fa8b2f2b1dae5b7d9d89..94839008c0f478da95b55618932c9976cf081e01 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_en.properties @@ -73,8 +73,8 @@ pw.change.confirm.token=SMS authentication code pw.change.sms=Start authentication by SMS pw.change.sms.descr=You have enter a mobile telecom number in OpenOlat. You can authenticate you by SMS. Choose the button below to start the authentication by SMS\: pw.change.sms.title=Authentication by SMS -pwchange.body=<p>Please click <a href\='{0}/dmz/pwchange/index.html?key\={1}&language\={2}'>here to reset your OpenOlat password</a>. \nAfterwards you may <a href\='{0}/dmz/1%3A1%3Aomain_loging%3A1%3A0%3Acid%3Alogin/?lp\=OLAT'>sign in OpenOlat</a>.</p> -pwchange.body.alt=<p>In case your mail program does not support HTML, copy this link to you webbrowser\: </br><a href\='{0}/dmz/pwchange/index.html?key\={1}&language\={2}'>{0}/dmz/pwchange/index.html?key\={1}&language\={2}</a></p> +pwchange.body=<p>Please click <a href\='{3}pwchange/index.html?key\={1}&language\={2}'>here to reset your OpenOlat password</a>. \nAfterwards you may <a href\='{3}1%3A1%3Aomain_loging%3A1%3A0%3Acid%3Alogin/?lp\=OLAT'>sign in OpenOlat</a>.</p> +pwchange.body.alt=<p>In case your mail program does not support HTML, copy this link to you webbrowser\: </br><a href\='{3}pwchange/index.html?key\={1}&language\={2}'>{3}pwchange/index.html?key\={1}&language\={2}</a></p> pwchange.headline=<p><b>Key for new OpenOlat password</b></p> pwchange.homelink=Please click here to log on pwchange.intro=You have (or somebody else has) asked for a new password regarding the OpenOlat user account {0}. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_es.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_es.properties index 8d0d7e6db701c878a67027cce114d3509dd4c918..d2c708d056cd2a478dded218ce85d52773820a9a 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_es.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_es.properties @@ -30,7 +30,7 @@ menu.login.alt=Conectarse a OpenOlat password.cantchange=Para cambiar tu contrase\u00F1a, por favor contacta con el equipo de soporte en tu universidad. password.notchanged=Tu contrase\u00F1a OpenOlat no se ha modificado. password.successful=Tu contrase\u00F1a OpenOlat se ha modificado con \u00E9xito. -pwchange.body=Por favor utiliza el enlace {0}/dmz/pwchange/index.html?key\={1}&language\={2} \npara cambiar tu contrase\u00F1a OpenOlat. \n\nTu equipo OpenOlat.\n +pwchange.body=Por favor utiliza el enlace {3}pwchange/index.html?key\={1}&language\={2} \npara cambiar tu contrase\u00F1a OpenOlat. \n\nTu equipo OpenOlat.\n pwchange.subject=Clave para nueva contrase\u00F1a OpenOlat pwdchangekey.missing=Por favor env\u00EDa la clave para cambiar la contrase\u00F1a. pwform.cancelled=El cambio de contrase\u00F1a OpenOlat ha sido cancelada. La contrase\u00F1a se mantiene inalterada. 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 e41a52a48b213b8f4f57c9b658bffef033e14613..7df5d18e31054998e92b24175ded685b11b3865e 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_fr.properties @@ -73,8 +73,8 @@ pw.change.confirm.token=Code d'authentification pw.change.sms=D\u00E9marrer l'authentification par SMS pw.change.sms.descr=Vous avez entrer un num\u00E9ro de t\u00E9l\u00E9phone portable dans OpenOlat. vous pouvez vous authentifier par SMS. Veuillez choisir le bouton ci-dessous pour d\u00E9marrer l'authentification par SMS. pw.change.sms.title=Authentification par SMS -pwchange.body=Gr\u00E2ce au lien {0}/dmz/pwchange/index.html?key\={1}&language\={2} \r\nvous pouvez modifier votre mot de passe.\r\n\r\nVotre \u00E9quipe OpenOlat -pwchange.body.alt=<p>Si votre programme pour lire les courriels ne supporte pas HTML, copier simplement le lien suivant\:<br><a href\='{0}/dmz/pwchange/index.html?key\={1}&language\={2}'>{0}/dmz/pwchange/index.html?key\={1}&language\={2}</a><p> +pwchange.body=Gr\u00E2ce au lien {3}pwchange/index.html?key\={1}&language\={2} \r\nvous pouvez modifier votre mot de passe.\r\n\r\nVotre \u00E9quipe OpenOlat +pwchange.body.alt=<p>Si votre programme pour lire les courriels ne supporte pas HTML, copier simplement le lien suivant\:<br><a href\='{3}pwchange/index.html?key\={1}&language\={2}'>{0}/dmz/pwchange/index.html?key\={1}&language\={2}</a><p> pwchange.headline=<p><b>Cl\u00E9 pour un nouveau mot de passe</b></p> pwchange.homelink=Cliquer ici pour se connecter pwchange.intro=Vous (ou une autre personne) avez demand\u00E9 un nouveau mot de passe pour le compte d'utilisateur OpenOlat {0}. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_it.properties index 9c9658d455e3bb3450582b840fa65401b229d972..d4f0b8df2c320999d511daf38e36fd86fe39fbfe 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_it.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_it.properties @@ -73,8 +73,8 @@ pw.change.confirm.token=Codice di autenticazione SMS pw.change.sms=Avviare autenticazione con SMS pw.change.sms.descr=Hai inserito un numero di telefono cellulare in OpenOlat, puoi quindi effettuare autenticazione con SMS. Selezionare il bottone sottostante per avviare l'autenticazione con SMS\: pw.change.sms.title=Autenticazione con SMS -pwchange.body=Mediante il link {0}/dmz/pwchange/index.html?key\={1}&language\={2} \r\npu\u00F2 reimpostare la Sua password. \r\n\r\nIl Suo team OpenOlat -pwchange.body.alt=<p>Nel caso in cui il vostro programma di posta non supporti l'HTML, copiate questo link al vostro webbrowser\: </br><a href\='{0}/dmz/pwchange/index.html?key\={1}&language\={2}'>{0}/dmz/pwchange/index.html?key\={1}&language\={2}</a></p> +pwchange.body=Mediante il link {3}pwchange/index.html?key\={1}&language\={2} \r\npu\u00F2 reimpostare la Sua password. \r\n\r\nIl Suo team OpenOlat +pwchange.body.alt=<p>Nel caso in cui il vostro programma di posta non supporti l'HTML, copiate questo link al vostro webbrowser\: </br><a href\='{3}pwchange/index.html?key\={1}&language\={2}'>{0}/dmz/pwchange/index.html?key\={1}&language\={2}</a></p> pwchange.headline=<p><b>Chiave per la nuova password OpenOlat </b></p> pwchange.homelink=Clicchi qui per collegarsi pwchange.intro=Lei (o qualcun altro) ha richiesto una nuova password per il conto d'utente OpenOlat {0}. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_jp.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_jp.properties index fb7c02ca053fa5da6f294fb2484babd9341e0833..5fb9c14d9255927d98346d52ad573f2b6600b84b 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_jp.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_jp.properties @@ -35,7 +35,7 @@ menu.login.alt=\u5f79\u7acb\u3064\u5b66\u7fd2\u7ba1\u7406\u30b7\u30b9\u30c6\u30e password.cantchange=\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5909\u66f4\u3059\u308b\u306b\u306f\u3001\u3042\u306a\u305f\u306e\u5927\u5b66\u306e\u30b5\u30dd\u30fc\u30c8\u30c1\u30fc\u30e0\u306b\u9023\u7d61\u3057\u3066\u304f\u3060\u3055\u3044\u3002 password.notchanged=\u3042\u306a\u305f\u306eOpenOlat\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5909\u66f4\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 password.successful=\u3042\u306a\u305f\u306eOpenOlat\u30d1\u30b9\u30ef\u30fc\u30c9\u304c\u6b63\u5e38\u306b\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002 -pwchange.body=\u3042\u306a\u305f\u306eOpenOlat\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5909\u66f4\u3059\u308b\u306b\u306f\u3001 {0}/dmz/pwchange/index.html?key\={1}&language\={2} \u30ea\u30f3\u30af\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002\r\n\r\nOpenOlat\u30c1\u30fc\u30e0 +pwchange.body=\u3042\u306a\u305f\u306eOpenOlat\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5909\u66f4\u3059\u308b\u306b\u306f\u3001 {3}pwchange/index.html?key\={1}&language\={2} \u30ea\u30f3\u30af\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002\r\n\r\nOpenOlat\u30c1\u30fc\u30e0 pwchange.homelink=\u30ed\u30b0\u30a4\u30f3\u3059\u308b\u306b\u306f\u3001\u3053\u3053\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u304f\u3060\u3055\u3044\u3002 pwchange.intro=OpenOlat\u30e6\u30fc\u30b6\u30a2\u30ab\u30a6\u30f3\u30c8 {0} \u306b\u95a2\u3057\u3066\u3001\u3042\u306a\u305f (\u307e\u305f\u306f\u4ed6\u306e\u8ab0\u304b\u304c) \u65b0\u3057\u3044\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u8acb\u6c42\u3057\u307e\u3057\u305f\u3002 pwchange.subject=\u65b0\u3057\u3044OpenOlat\u30d1\u30b9\u30ef\u30fc\u30c9\u306e\u30ad\u30fc diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_lt.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_lt.properties index 02a063256864f698059bc8de8d2d84edf2f414ed..2519d5f7a36b2b39849e0590ab11266f07d1b7a3 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_lt.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_lt.properties @@ -26,7 +26,7 @@ login.subject=J\u016Bs jau esate u\u017Esiregistrav\u0119s sistemoje. password.cantchange=Norint pakeisti slapta\u017Eod\u012F, pra\u0161ome susisiekti su palaikymo komanda j\u016Bs\u0173 universitete. password.notchanged=J\u016Bs\u0173 slapta\u017Eodis negali b\u016Bti pakeistas. password.successful=J\u016Bs\u0173 slapta\u017Eodis pakeistas s\u0117kmingai. -pwchange.body=Pra\u0161ome naudoti nuorod\u0105 {0}/dmz/pwchange/index.html?key\={1}&language\={2} pakeisti j\u016Bs\u0173 slapta\u017Eod\u012F. \n\nJ\u016Bs\u0173 OpenOlat komanda.\n +pwchange.body=Pra\u0161ome naudoti nuorod\u0105 {3}pwchange/index.html?key\={1}&language\={2} pakeisti j\u016Bs\u0173 slapta\u017Eod\u012F. \n\nJ\u016Bs\u0173 OpenOlat komanda.\n pwchange.subject=Raktas j\u016Bs\u0173 naujam slapta\u017Eod\u017Eiui. pwdchangekey.missing=Pra\u0161ome \u012Fveskite rakt\u0105 slapta\u017Eod\u017Eio pakeitimui. pwform.cancelled=Slapta\u017Eod\u017Eio pakeitimas atmestas. Slapta\u017Eodis lieka nepakeistas. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_nl_NL.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_nl_NL.properties index 06e2c22c94aced67bde595636e8b90c80de113f9..6fb905e0cf53a42532b0f54e2ed8319fc6711fee 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_nl_NL.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_nl_NL.properties @@ -36,7 +36,7 @@ menu.login.alt=Gelieve in te loggen om zo te profiteren van het Learning Managem password.cantchange=Neem contact op met de helpdesk op uw universiteit om uw wachtwoord te wijzigen. password.notchanged=Uw OpenOlat-wachtwoord kon niet gewijzigd worden. password.successful=Uw OpenOlat-wachtwoord werd met succes gewijzigd. -pwchange.body=Gebruik link {0}/dmz/pwchange/index.html?key\={1}&language\={2} \\n om uw OpenOlat-wachtwoord te wijzigen. \\n\\nUw OpenOlat-team.\\n +pwchange.body=Gebruik link {3}pwchange/index.html?key\={1}&language\={2} \\n om uw OpenOlat-wachtwoord te wijzigen. \\n\\nUw OpenOlat-team.\\n pwchange.homelink=Gelieve hier te klikken om in te loggen pwchange.intro=U (of iemand anders) heeft een nieuw wachtwoord aangevraagd betreffende het OpenOlat gebruikersaccount {0}. pwchange.subject=Toegangscode tot een nieuw OpenOlat-wachtwoord diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_pl.properties index 17671c0f445a8a2a0770b8aea9a7e8162a5cddba..9650132daa59c5877c90b85df1ff105bdb2b8df0 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_pl.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_pl.properties @@ -42,7 +42,7 @@ menu.login.alt=Please log in to profit from the Learning Management System OpenO password.cantchange=Aby zmieni\u0107 has\u0142o, skontaktuj si\u0119 z zespo\u0142em wsparcia na twojej uczelni. password.notchanged=Has\u0142o nie mog\u0142o zosta\u0107 zmienione. password.successful=Has\u0142o zosta\u0142o pomy\u015Blnie zmienione. -pwchange.body=U\u017Cyj linka {0}/dmz/pwchange/index.html?key\={1}&language\={2} \naby zmieni\u0107 swoje has\u0142o. \n\nZesp\u00F3\u0142 OpenOlat.\n +pwchange.body=U\u017Cyj linka {3}pwchange/index.html?key\={1}&language\={2} \naby zmieni\u0107 swoje has\u0142o. \n\nZesp\u00F3\u0142 OpenOlat.\n pwchange.homelink=Kliknij tu, \u017Ceby si\u0119 zalogowa\u0107 pwchange.intro=Za\u017C\u0105da\u0142e\u015B zmiany has\u0142a do konta u\u017Cytkownika {0}. pwchange.subject=Klucz do nowego has\u0142a diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_pt_BR.properties index 64c81970ab8968f983f91fa896ff5be3cb866a80..074a6b9c707576d5d7e4fd4ec00dedf2d1341c5d 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_pt_BR.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_pt_BR.properties @@ -73,8 +73,8 @@ pw.change.confirm.token=C\u00F3digo de autentica\u00E7\u00E3o SMS pw.change.sms=Iniciar autentica\u00E7\u00E3o por SMS pw.change.sms.descr=Voc\u00EA digitou um n\u00FAmero de celular no OpenOlat. Voc\u00EA pode autentic\u00E1-lo por SMS. Escolha o bot\u00E3o abaixo para iniciar a autentica\u00E7\u00E3o por SMS\: pw.change.sms.title=Autentica\u00E7\u00E3o por SMS -pwchange.body=Favor usar o link {0}/dmz/pwchange/index.html?key\={1}&language\={2} \npara alterar sua senha OpenOlat. \n\nSua Equipe OpenOlat.\n -pwchange.body.alt=<p>Se o seu programa de correio n\u00E3o suportar HTML, copie este link no seu webbrowser\: </br><a href\='{0}/dmz/pwchange/index.html?key\={1}&language\={2}'>{0}/dmz/pwchange/index.html?key\= {1}&language\={2}</a></p> +pwchange.body=Favor usar o link {3}pwchange/index.html?key\={1}&language\={2} \npara alterar sua senha OpenOlat. \n\nSua Equipe OpenOlat.\n +pwchange.body.alt=<p>Se o seu programa de correio n\u00E3o suportar HTML, copie este link no seu webbrowser\: </br><a href\='{3}pwchange/index.html?key\={1}&language\={2}'>{0}/dmz/pwchange/index.html?key\= {1}&language\={2}</a></p> pwchange.headline=<p><b>Chave para a nova senha do OpenOlat</b></p> pwchange.homelink=Por favor, clique aqui acessar pwchange.intro=Voc\u00EA (ou algu\u00E9m) solicitou uma nova senha para a conta de usu\u00E1rio OpenOlat {0}. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_pt_PT.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_pt_PT.properties index cb668de2e97f9512e679912156069cfb54faf8e8..4ed0a438dfb0894b92a277d540c7ff934b151ea1 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_pt_PT.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_pt_PT.properties @@ -30,7 +30,7 @@ menu.login.alt=Fazer o login no OpenOlat password.cantchange=Para alterar sua senha, favor contatar a equipe de suporte em sua universidade. password.notchanged=Sua senha OpenOlat n\u00E3o pode ser alterada. password.successful=Sua senha OpenOlat foi alterada com sucesso. -pwchange.body=Favor usar o link {0}/dmz/pwchange/index.html?key\={1}&language\={2} \npara alterar sua senha OpenOlat. \n\nSua Equipe OpenOlat.\n +pwchange.body=Favor usar o link {3}pwchange/index.html?key\={1}&language\={2} \npara alterar sua senha OpenOlat. \n\nSua Equipe OpenOlat.\n pwchange.subject=Digite a nova senha OpenOlat pwdchangekey.missing=Favor submeter a chave para altera\u00E7\u00E3o de senha. pwform.cancelled=Altera\u00E7\u00E3o da senha OpenOlat foi cancelada. A senha permanece inalterada. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_ru.properties index 7e44e337174c78eefdca18ad9304e94eaa84f53f..48c3b6b5583b7194b287055d52f7d37e99d40a32 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_ru.properties @@ -30,7 +30,7 @@ menu.login.alt=\u0417\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u044 password.cantchange=\u0414\u043B\u044F \u0442\u043E\u0433\u043E, \u0447\u0442\u043E\u0431\u044B \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0412\u0430\u0448 \u043F\u0430\u0440\u043E\u043B\u044C, \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044C, \u043F\u043E\u0436\u0430\u0439\u043B\u0443\u0441\u0442\u0430, \u0432 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0443\u044E \u0438\u043D\u0441\u0442\u0430\u043D\u0446\u0438\u044E \u0412\u0430\u0448\u0435\u0433\u043E \u0443\u0447\u0435\u0431\u043D\u043E\u0433\u043E \u0437\u0430\u0432\u0435\u0434\u0435\u043D\u0438\u044F. password.notchanged=OpenOlat-\u043F\u0430\u0440\u043E\u043B\u044C \u043D\u0435 \u0431\u044B\u043B \u0438\u0437\u043C\u0435\u043D\u0435\u043D. password.successful=\u0412\u0430\u0448 OpenOlat-\u043F\u0430\u0440\u043E\u043B\u044C \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0438\u0437\u043C\u0435\u043D\u0435\u043D \u043D\u0430 \u043D\u043E\u0432\u044B\u0439. -pwchange.body=\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u044F \u0441\u0441\u044B\u043B\u043A\u0443 {0}/dmz/pwchange/index.html?key\={1}&language\={2} \r\n\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0412\u0430\u0448 OpenOlat-\u043F\u0430\u0440\u043E\u043B\u044C. \r\n\r\n\u0412\u0430\u0448 OpenOlat \u043A\u043E\u043B\u043B\u0435\u043A\u0442\u0438\u0432 +pwchange.body=\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u044F \u0441\u0441\u044B\u043B\u043A\u0443 {3}pwchange/index.html?key\={1}&language\={2} \r\n\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0412\u0430\u0448 OpenOlat-\u043F\u0430\u0440\u043E\u043B\u044C. \r\n\r\n\u0412\u0430\u0448 OpenOlat \u043A\u043E\u043B\u043B\u0435\u043A\u0442\u0438\u0432 pwchange.subject=\u041A\u043E\u0434 \u0434\u043B\u044F \u043D\u043E\u0432\u043E\u0433\u043E OpenOlat-\u043F\u0430\u0440\u043E\u043B\u044F pwdchangekey.missing=\u0423\u043A\u0430\u0436\u0438\u0442\u0435, \u043F\u043E\u0436\u0430\u0439\u043B\u0443\u0441\u0442\u0430, \u043A\u043E\u0434 \u0434\u043B\u044F \u0442\u043E\u0433\u043E, \u0447\u0442\u043E\u0431\u044B \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u043D\u043E\u0432\u044B\u0439 OpenOlat-\u043F\u0430\u0440\u043E\u043B\u044C. pwform.cancelled=\u0412\u0432\u043E\u0434 \u043D\u043E\u0432\u043E\u0433\u043E OpenOlat-\u043F\u0430\u0440\u043E\u043B\u044F \u0431\u044B\u043B \u043F\u0440\u0435\u0440\u0432\u0430\u043D. \u041F\u0430\u0440\u043E\u043B\u044C \u043E\u0441\u0442\u0430\u043B\u0441\u044F \u0431\u0435\u0437 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0439. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_sq.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_sq.properties index 492634770437b99ed7ce70fb14f4d697f4a1b840..1de8cbd7fdab9ab9102f09089493bf4ce02bf2a5 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_sq.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_sq.properties @@ -30,7 +30,7 @@ menu.login.alt=Ju lutemi ky\u00E7uni p\u00EBr t\u00EB p\u00EBrfituar nga Sistemi password.cantchange=P\u00EBr t\u00EB ndrruar fjal\u00EBkalimin tuaj, Ju lutemii kontaktoni p\u00EBrkrahjen teknike. password.notchanged=Fjal\u00EBkalimi i juaj n\u00EB OpenOlat nuk ishte e mundur t\u00EB nd\u00EBrrohet. password.successful=Fjal\u00EBkalimi i juaj n\u00EB OpenOlat u nd\u00EBrrua me sukses. -pwchange.body=Ju lutemi shfryt\u00EBzoni lidhjen {0}/dmz/pwchange/index.html?key\={1}&language\={2} \np\u00EBr t\u00EB ndrruar OpenOlat fjal\u00EBkalimin. \n\nEkipi juaj i OpenOlat.\n +pwchange.body=Ju lutemi shfryt\u00EBzoni lidhjen {3}pwchange/index.html?key\={1}&language\={2} \np\u00EBr t\u00EB ndrruar OpenOlat fjal\u00EBkalimin. \n\nEkipi juaj i OpenOlat.\n pwchange.subject=\u00C7el\u00EBsi p\u00EBr fjal\u00EBkalimin e ri n\u00EB OpenOlat. pwdchangekey.missing=Ju lutemi paraqitni \u00E7el\u00EBsin p\u00EBr nd\u00EBrrimin e fjal\u00EBkalimit. pwform.cancelled=Nd\u00EBrrimi i OpenOlat fjal\u00EBkalimit u anulua. Fjal\u00EBkalimi mbeti i pa nd\u00EBrruar. diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_zh_CN.properties index dc552617213da82a5d8b244fc8d41d59f07aaacc..6283e7bc578a3598c4da588285976479ffd622ed 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_zh_CN.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_zh_CN.properties @@ -51,7 +51,7 @@ menu.login.alt=\u8BF7\u4ECEOpenOlat\u5B66\u4E60\u7BA1\u7406\u7CFB\u7EDF\u767B\u5 password.cantchange=\u5982\u679C\u8981\u4FEE\u6539\u5BC6\u7801\uFF0C\u8BF7\u4E0E\u60A8\u6240\u5728\u7684\u5927\u5B66\u7684\u652F\u6301\u5C0F\u7EC4\u53D6\u5F97\u8054\u7CFB\u3002 password.notchanged=\u65E0\u6CD5\u4FEE\u6539\u60A8\u7684OpenOlat\u5BC6\u7801\u3002 password.successful=\u60A8\u7684OpenOlat \u5BC6\u7801\u4FEE\u6539\u6210\u529F\u3002 -pwchange.body=\u8BF7\u4F7F\u7528\u94FE\u63A5 {0}/dmz/pwchange/index.html?key\={1}\u27E8\={2} \r\n\u6765\u4FEE\u6539\u60A8\u7684 OpenOlat \u5BC6\u7801\u3002 \r\n\r\n\u60A8\u7684OpenOlat\u56E2\u961F\u3002 +pwchange.body=\u8BF7\u4F7F\u7528\u94FE\u63A5 {3}pwchange/index.html?key\={1}\u27E8\={2} \r\n\u6765\u4FEE\u6539\u60A8\u7684 OpenOlat \u5BC6\u7801\u3002 \r\n\r\n\u60A8\u7684OpenOlat\u56E2\u961F\u3002 pwchange.homelink=\u8BF7\u70B9\u51FB\u6B64\u5904\u767B\u9646 pwchange.intro=\u60A8\uFF08\u6216\u8005\u5176\u4ED6\u4EBA\uFF09\u5DF2\u7ECF\u8BF7\u6C42OpenOlat\u7528\u6237\u8D26\u6237{0}\u4F7F\u7528\u4E00\u4E2A\u65B0\u5BC6\u7801\u3002 pwchange.subject=\u4E00\u4E2A\u65B0\u7684OpenOlat\u5BC6\u7801\u7684\u5BC6\u94A5\u3002 diff --git a/src/main/java/org/olat/registration/_i18n/LocalStrings_zh_TW.properties b/src/main/java/org/olat/registration/_i18n/LocalStrings_zh_TW.properties index 1ccc9b693d6df92072bcd9cc2fc9f207e022fa96..729256fa93eceacda90a764b0b0affa57f6077a9 100644 --- a/src/main/java/org/olat/registration/_i18n/LocalStrings_zh_TW.properties +++ b/src/main/java/org/olat/registration/_i18n/LocalStrings_zh_TW.properties @@ -36,7 +36,7 @@ menu.login.alt=\u8ACB\u767B\u5165\u4EE5\u5F9E OpenOlat \u5B78\u7FD2\u7BA1\u7406\ password.cantchange=\u8981\u8B8A\u66F4\u60A8\u7684\u5BC6\u78BC\uFF0C\u8ACB\u806F\u7D61\u5728\u60A8\u5927\u5B78\u7684\u652F\u63F4\u5718\u968A\u3002 password.notchanged=\u60A8\u7684 OpenOlat \u5BC6\u78BC\u7121\u6CD5\u88AB\u8B8A\u66F4\u3002 password.successful=\u60A8\u7684 OpenOlat \u5BC6\u78BC\u5DF2\u6210\u529F\u8B8A\u66F4\u4E86\u3002 -pwchange.body=\u8ACB\u4F7F\u7528\u9019\u500B\u9023\u7D50 {0}/dmz/pwchange/index.html?key\={1}&language\={2}\r\n\u4F86\u8B8A\u66F4\u60A8\u7684 OpenOlat \u5BC6\u78BC\u3002 \r\n\r\n\u60A8\u7684 OpenOlat \u5718\u968A\u3002 +pwchange.body=\u8ACB\u4F7F\u7528\u9019\u500B\u9023\u7D50 {0}pwchange/index.html?key\={1}&language\={2}\r\n\u4F86\u8B8A\u66F4\u60A8\u7684 OpenOlat \u5BC6\u78BC\u3002 \r\n\r\n\u60A8\u7684 OpenOlat \u5718\u968A\u3002 pwchange.homelink=\u8ACB\u9EDE\u64CA\u9019\u88E1\u4F86\u767B\u5165 pwchange.intro=\u60A8\u5DF2\u7D93\uFF08\u6216\u67D0\u4EBA\u5DF2\u7D93\uFF09\u8981\u6C42\u4E00\u500B\u65B0\u7684\u5BC6\u78BC\u7D66\u6B64 OpenOlat \u4F7F\u7528\u8005\u5E33\u865F {0}\u3002 pwchange.subject=\u66F4\u65B0 OpenOlat \u5BC6\u78BC\u7684\u6388\u6B0A\u78BC diff --git a/src/main/java/org/olat/user/ChangePrefsController.java b/src/main/java/org/olat/user/ChangePrefsController.java index 34f1e515602ac8c0f4e4855ef5519f015fe5d175..d908abd8abc17d771e2d2d0b46de209ddaf6c2b2 100644 --- a/src/main/java/org/olat/user/ChangePrefsController.java +++ b/src/main/java/org/olat/user/ChangePrefsController.java @@ -28,6 +28,7 @@ package org.olat.user; import java.util.Set; import org.olat.core.CoreSpringFactory; +import org.olat.core.dispatcher.DispatcherModule; import org.olat.core.gui.UserRequest; import org.olat.core.gui.WindowManager; import org.olat.core.gui.components.Component; @@ -382,7 +383,7 @@ class UserPrefsResetForm extends FormBasicController { //if logout, need a redirect to the login page String lang = i18nModule.getLocaleKey(ureq.getLocale()); ureq.getDispatchResult().setResultingMediaResource( - new RedirectMediaResource(WebappHelper.getServletContextPath() + "/dmz/?lang=" + lang + "&logout=true")); + new RedirectMediaResource(WebappHelper.getServletContextPath() + DispatcherModule.getPathDefault() + "?lang=" + lang + "&logout=true")); } } } diff --git a/src/main/java/org/olat/user/ProfileFormController.java b/src/main/java/org/olat/user/ProfileFormController.java index bdab597cc2d18eb0104a8bd3f094aeb2a3025f1d..f585300a40c4eabfef41998799fdf6c81840ece7 100644 --- a/src/main/java/org/olat/user/ProfileFormController.java +++ b/src/main/java/org/olat/user/ProfileFormController.java @@ -32,6 +32,7 @@ import java.util.Set; import org.olat.basesecurity.BaseSecurity; import org.olat.basesecurity.OrganisationRoles; +import org.olat.core.dispatcher.DispatcherModule; import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.form.flexible.FormItem; import org.olat.core.gui.components.form.flexible.FormItemContainer; @@ -574,7 +575,7 @@ public class ProfileFormController extends FormBasicController { cal.add(Calendar.DAY_OF_WEEK, ChangeEMailController.TIME_OUT); String time = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, ureq.getLocale()).format(cal.getTime()); // create body and subject for email - String link = serverpath + "/dmz/emchange/index.html?key=" + tk.getRegistrationKey() + "&language=" + ureq.getLocale().getLanguage(); + String link = serverpath + DispatcherModule.getPathDefault() + "emchange/index.html?key=" + tk.getRegistrationKey() + "&language=" + ureq.getLocale().getLanguage(); if(Settings.isDebuging()) { logInfo(link); } diff --git a/src/main/resources/serviceconfig/olat.properties b/src/main/resources/serviceconfig/olat.properties index eda2a62badd42d7d67d332e83daacbbdbce86625..1ecf8a5b294a195aa88a0ac6485a38956790edb5 100644 --- a/src/main/resources/serviceconfig/olat.properties +++ b/src/main/resources/serviceconfig/olat.properties @@ -659,6 +659,9 @@ server.domainname=localhost # the port on which the container is listening server.port=8080 +# the default path to login screen (without /) +server.login.path=log + ######################################################################## # MathJAX CDN ########################################################################