remove arrow function and useless variable newLangName
authorLaurent Mazet <mazet@softndesign.org>
Wed, 6 May 2020 22:42:45 +0000 (00:42 +0200)
committerLaurent Mazet <mazet@softndesign.org>
Wed, 6 May 2020 22:42:45 +0000 (00:42 +0200)
public/trivabble.js

index d03ece0d218f17aefdc00cdaec8a5b26226be9d8..2ece85b00aebdea055bffcb62d9fc2bee8d6e826 100644 (file)
 
     function createLangBoardSelect(langName) {
 
-        let newLangName = [];
-        for (const k in langName) {
-            newLangName.push({key: k, value: _(langName[k])});
-        }
-        newLangName = newLangName.sort((a, b) => ((a.value > b.value) ? 1 : ((b.value > a.value) ? -1 : 0)));
-
         const select = document.getElementById("board-lang");
 
         for (let i = select.options.length - 1; i >=0; i--) {
             select.remove(i);
         }
 
-        for (let i = 0; i < newLangName.length; i++) {
-            select.add(new Option(newLangName[i].value, newLangName[i].key));
+        for (const key in langName) {
+            if (Object.prototype.isPrototypeOf.call(langName, key)) {
+                select.add(new Option(_(langName[key]), key));
+            }
         }
 
+        Array.prototype.sort.call(select.options,
+            function(a, b) {return (a.textContent > b.textContent) ? 1 : ((b.textContent > a.textContent) ? -1 : 0);});
+
         select.value = localStorage.trivabbleBoardLang;
     }