Browse Source

Add 'nb' to standard locale list.

Jason Rivard 7 years ago
parent
commit
7d7b3f0fcf

+ 12 - 6
server/src/main/java/password/pwm/http/servlet/ClientApiServlet.java

@@ -277,8 +277,11 @@ public class ClientApiServlet extends ControlledPwmServlet {
     )
             throws ChaiUnavailableException, PwmUnrecoverableException
     {
+        final Locale userLocale = pwmSession.getSessionStateBean().getLocale();
+
         final Configuration config = pwmApplication.getConfig();
         final TreeMap<String,Object> settingMap = new TreeMap<>();
+
         settingMap.put("client.ajaxTypingTimeout", Integer.parseInt(config.readAppProperty(AppProperty.CLIENT_AJAX_TYPING_TIMEOUT)));
         settingMap.put("client.ajaxTypingWait", Integer.parseInt(config.readAppProperty(AppProperty.CLIENT_AJAX_TYPING_WAIT)));
         settingMap.put("client.activityMaxEpsRate", Integer.parseInt(config.readAppProperty(AppProperty.CLIENT_ACTIVITY_MAX_EPS_RATE)));
@@ -294,7 +297,7 @@ public class ClientApiServlet extends ControlledPwmServlet {
         {
             long idleSeconds = config.readSettingAsLong(PwmSetting.IDLE_TIMEOUT_SECONDS);
             if (pageUrl == null || pageUrl.isEmpty()) {
-                LOGGER.warn(pwmSession, "request to /client data did not incliude pageUrl");
+                LOGGER.warn(pwmSession, "request to /client data did not include pageUrl");
             } else {
                 try {
                     final PwmURL pwmURL = new PwmURL(new URI(pageUrl), request.getContextPath());
@@ -358,14 +361,17 @@ public class ClientApiServlet extends ControlledPwmServlet {
         }
 
         {
-            final Map<String,String> localeInfo = new TreeMap<>();
-            final Map<String,String> localeDisplayNames = new TreeMap<>();
-            final Map<String,String> localeFlags = new TreeMap<>();
+            final Map<String,String> localeInfo = new LinkedHashMap<>();
+            final Map<String,String> localeDisplayNames = new LinkedHashMap<>();
+            final Map<String,String> localeFlags = new LinkedHashMap<>();
+
+            final List<Locale> knownLocales = new ArrayList<>(pwmApplication.getConfig().getKnownLocales());
+            knownLocales.sort(LocaleHelper.localeComparator( PwmConstants.DEFAULT_LOCALE));
 
-            for (final Locale locale : pwmApplication.getConfig().getKnownLocales()) {
+            for (final Locale locale : knownLocales ) {
                 final String flagCode = pwmApplication.getConfig().getKnownLocaleFlagMap().get(locale);
                 localeFlags.put(locale.toString(),flagCode);
-                localeInfo.put(locale.toString(),locale.getDisplayName() + " - " + locale.getDisplayLanguage(locale));
+                localeInfo.put(locale.toString(),locale.getDisplayName( PwmConstants.DEFAULT_LOCALE) + " - " + locale.getDisplayLanguage(userLocale));
                 localeDisplayNames.put(locale.toString(),locale.getDisplayLanguage());
             }
 

+ 9 - 0
server/src/main/java/password/pwm/util/LocaleHelper.java

@@ -50,6 +50,7 @@ import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
+import java.util.Comparator;
 import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.List;
@@ -607,4 +608,12 @@ public class LocaleHelper {
                 ? ""
                 : locale.toString().replace("_","-");
     }
+
+    public static Comparator<Locale> localeComparator(final Locale comparisonLocale) {
+        return (o1, o2) -> {
+            final String name1 = o1.getDisplayName(comparisonLocale);
+            final String name2 = o2.getDisplayName(comparisonLocale);
+            return name1.compareToIgnoreCase(name2);
+        };
+    }
 }

+ 1 - 0
server/src/main/resources/password/pwm/config/PwmSetting.xml

@@ -143,6 +143,7 @@
             <value><![CDATA[ja::jp]]></value>
             <value><![CDATA[ko::kr]]></value>
             <value><![CDATA[nl::nl]]></value>
+            <value><![CDATA[nb::no]]></value>
             <value><![CDATA[no::no]]></value>
             <value><![CDATA[nn::no]]></value>
             <value><![CDATA[pl::pl]]></value>

+ 0 - 3
server/src/main/resources/password/pwm/i18n/Display_nb.properties

@@ -279,7 +279,6 @@ Long_Title_VerificationSend=F\u00f8r denne brukeren kan velges, m\u00e5 brukeren
 Title_AnsweredQuestions=Besvarte sp\u00f8rsm\u00e5l
 Title_ActivateUser=Aktiviser konto
 Title_Admin=Administrator
-Title_Application=Self Service Password Reset
 Title_Captcha=Verifisering
 Title_ChangePassword=Endre passord
 Title_ConfirmResponses=Bekreft sikkerhetssp\u00f8rsm\u00e5l
@@ -317,8 +316,6 @@ Title_SetupOtpSecret=Konfigurer mobilapp autentisering
 Title_Shortcuts=Snarveier
 Title_Status=Status
 Title_Success=Suksess
-Title_TitleBarAuthenticated=@User\:ID@  Self Service Password Reset
-Title_TitleBar=Self Service Password Reset
 Title_UpdateProfile=Oppdater profil
 Title_UpdateProfileConfirm=Bekreft profilinnhold
 Title_UserData=Min informasjon

+ 1 - 1
server/src/main/webapp/public/resources/js/main.js

@@ -589,7 +589,7 @@ PWM_MAIN.showLocaleSelectionMenu = function(nextFunction, options) {
 
     };
 
-    var bodyHtml = '<table class="noborder" style="width:auto;margin-right:auto;margin-left:auto">';
+    var bodyHtml = '<table class="noborder" style="width:auto;margin-right:auto;margin-left:auto;overflow-x:scroll">';
     localeIterator(function(localeKey){
         if (!PWM_MAIN.JSLibrary.arrayContains(excludeLocales, localeKey)) {
             var loopDisplayName = localeData[localeKey];