Browse Source

Font Awesome to Unicode icons. Part 4.

Thanks to xet7 !
Lauri Ojansivu 1 week ago
parent
commit
088bc16072

+ 44 - 2
client/components/main/popup.css

@@ -73,7 +73,7 @@
 }
 .pop-over .content-wrapper {
   width: 100%;
-  max-height: 70vh;
+  max-height: calc(70vh + 20px);
   overflow-y: auto;
   overflow-x: hidden;
 }
@@ -84,7 +84,7 @@
 }
 .pop-over .content-container {
   width: 100%;
-  max-height: 70vh;
+  max-height: calc(70vh + 20px);
   transition: transform 0.2s;
 }
 
@@ -99,6 +99,22 @@
   overflow: visible;
 }
 
+/* Specific styling for language popup list */
+.pop-over[data-popup="changeLanguage"] .pop-over-list {
+  max-height: none;
+  overflow: visible;
+  height: auto;
+  flex: 1;
+}
+
+/* Ensure content div in language popup contains all items */
+.pop-over[data-popup="changeLanguage"] .content {
+  height: auto;
+  min-height: 100%;
+  display: flex;
+  flex-direction: column;
+}
+
 /* Allow dynamic height for Change Language popup */
 .pop-over[data-popup="changeLanguage"] .content-wrapper {
   max-height: inherit; /* Use dynamic height from JavaScript */
@@ -108,6 +124,32 @@
   max-height: inherit; /* Use dynamic height from JavaScript */
 }
 
+/* Make language popup extend to bottom of browser window */
+.pop-over[data-popup="changeLanguage"] {
+  height: calc(100vh - 30px);
+  min-height: 300px;
+  /* Adjust positioning to move popup 30px higher */
+  transform: translateY(-30px);
+}
+
+.pop-over[data-popup="changeLanguage"] .content-wrapper {
+  height: calc(100% - 50px); /* Subtract header height more precisely */
+  min-height: 250px;
+  overflow-y: auto;
+  max-height: none; /* Remove any max-height constraints */
+  display: flex;
+  flex-direction: column;
+}
+
+.pop-over[data-popup="changeLanguage"] .content-container {
+  height: auto; /* Let content determine height */
+  min-height: 250px;
+  max-height: none; /* Remove any max-height constraints */
+  flex: 1;
+  display: flex;
+  flex-direction: column;
+}
+
 /* Date popup sizing for native HTML inputs */
 .pop-over[data-popup="editCardReceivedDatePopup"],
 .pop-over[data-popup="editCardStartDatePopup"],

+ 2 - 1
client/components/users/userHeader.jade

@@ -171,7 +171,8 @@ template(name="changeLanguagePopup")
     each languages
       li(class="{{# if isCurrentLanguage}}active{{/if}}")
         a.js-set-language
-          = name
+          | {{languageFlag}}
+          | {{name}}
           if isCurrentLanguage
             | โœ…
 

+ 24 - 0
client/components/users/userHeader.js

@@ -294,6 +294,30 @@ Template.changeLanguagePopup.helpers({
   isCurrentLanguage() {
     return this.tag === TAPi18n.getLanguage();
   },
+
+  languageFlag() {
+    const flagMap = {
+      'en': '๐Ÿ‡บ๐Ÿ‡ธ', 'es': '๐Ÿ‡ช๐Ÿ‡ธ', 'fr': '๐Ÿ‡ซ๐Ÿ‡ท', 'de': '๐Ÿ‡ฉ๐Ÿ‡ช', 'it': '๐Ÿ‡ฎ๐Ÿ‡น', 'pt': '๐Ÿ‡ต๐Ÿ‡น', 'ru': '๐Ÿ‡ท๐Ÿ‡บ',
+      'ja': '๐Ÿ‡ฏ๐Ÿ‡ต', 'ko': '๐Ÿ‡ฐ๐Ÿ‡ท', 'zh': '๐Ÿ‡จ๐Ÿ‡ณ', 'ar': '๐Ÿ‡ธ๐Ÿ‡ฆ', 'hi': '๐Ÿ‡ฎ๐Ÿ‡ณ', 'th': '๐Ÿ‡น๐Ÿ‡ญ', 'vi': '๐Ÿ‡ป๐Ÿ‡ณ',
+      'tr': '๐Ÿ‡น๐Ÿ‡ท', 'pl': '๐Ÿ‡ต๐Ÿ‡ฑ', 'nl': '๐Ÿ‡ณ๐Ÿ‡ฑ', 'sv': '๐Ÿ‡ธ๐Ÿ‡ช', 'da': '๐Ÿ‡ฉ๐Ÿ‡ฐ', 'no': '๐Ÿ‡ณ๐Ÿ‡ด', 'fi': '๐Ÿ‡ซ๐Ÿ‡ฎ',
+      'cs': '๐Ÿ‡จ๐Ÿ‡ฟ', 'hu': '๐Ÿ‡ญ๐Ÿ‡บ', 'ro': '๐Ÿ‡ท๐Ÿ‡ด', 'bg': '๐Ÿ‡ง๐Ÿ‡ฌ', 'hr': '๐Ÿ‡ญ๐Ÿ‡ท', 'sk': '๐Ÿ‡ธ๐Ÿ‡ฐ', 'sl': '๐Ÿ‡ธ๐Ÿ‡ฎ',
+      'et': '๐Ÿ‡ช๐Ÿ‡ช', 'lv': '๐Ÿ‡ฑ๐Ÿ‡ป', 'lt': '๐Ÿ‡ฑ๐Ÿ‡น', 'el': '๐Ÿ‡ฌ๐Ÿ‡ท', 'he': '๐Ÿ‡ฎ๐Ÿ‡ฑ', 'uk': '๐Ÿ‡บ๐Ÿ‡ฆ', 'be': '๐Ÿ‡ง๐Ÿ‡พ',
+      'ca': '๐Ÿ‡ช๐Ÿ‡ธ', 'eu': '๐Ÿ‡ช๐Ÿ‡ธ', 'gl': '๐Ÿ‡ช๐Ÿ‡ธ', 'cy': '๐Ÿ‡ฌ๐Ÿ‡ง', 'ga': '๐Ÿ‡ฎ๐Ÿ‡ช', 'mt': '๐Ÿ‡ฒ๐Ÿ‡น', 'is': '๐Ÿ‡ฎ๐Ÿ‡ธ',
+      'mk': '๐Ÿ‡ฒ๐Ÿ‡ฐ', 'sq': '๐Ÿ‡ฆ๐Ÿ‡ฑ', 'sr': '๐Ÿ‡ท๐Ÿ‡ธ', 'bs': '๐Ÿ‡ง๐Ÿ‡ฆ', 'me': '๐Ÿ‡ฒ๐Ÿ‡ช', 'fa': '๐Ÿ‡ฎ๐Ÿ‡ท', 'ur': '๐Ÿ‡ต๐Ÿ‡ฐ',
+      'bn': '๐Ÿ‡ง๐Ÿ‡ฉ', 'ta': '๐Ÿ‡ฎ๐Ÿ‡ณ', 'te': '๐Ÿ‡ฎ๐Ÿ‡ณ', 'ml': '๐Ÿ‡ฎ๐Ÿ‡ณ', 'kn': '๐Ÿ‡ฎ๐Ÿ‡ณ', 'gu': '๐Ÿ‡ฎ๐Ÿ‡ณ', 'pa': '๐Ÿ‡ฎ๐Ÿ‡ณ',
+      'or': '๐Ÿ‡ฎ๐Ÿ‡ณ', 'as': '๐Ÿ‡ฎ๐Ÿ‡ณ', 'ne': '๐Ÿ‡ณ๐Ÿ‡ต', 'si': '๐Ÿ‡ฑ๐Ÿ‡ฐ', 'my': '๐Ÿ‡ฒ๐Ÿ‡ฒ', 'km': '๐Ÿ‡ฐ๐Ÿ‡ญ', 'lo': '๐Ÿ‡ฑ๐Ÿ‡ฆ',
+      'ka': '๐Ÿ‡ฌ๐Ÿ‡ช', 'hy': '๐Ÿ‡ฆ๐Ÿ‡ฒ', 'az': '๐Ÿ‡ฆ๐Ÿ‡ฟ', 'kk': '๐Ÿ‡ฐ๐Ÿ‡ฟ', 'ky': '๐Ÿ‡ฐ๐Ÿ‡ฌ', 'uz': '๐Ÿ‡บ๐Ÿ‡ฟ', 'mn': '๐Ÿ‡ฒ๐Ÿ‡ณ',
+      'bo': '๐Ÿ‡จ๐Ÿ‡ณ', 'dz': '๐Ÿ‡ง๐Ÿ‡น', 'ug': '๐Ÿ‡จ๐Ÿ‡ณ', 'ii': '๐Ÿ‡จ๐Ÿ‡ณ', 'za': '๐Ÿ‡จ๐Ÿ‡ณ', 'yue': '๐Ÿ‡ญ๐Ÿ‡ฐ', 'zh-HK': '๐Ÿ‡ญ๐Ÿ‡ฐ',
+      'zh-TW': '๐Ÿ‡น๐Ÿ‡ผ', 'zh-CN': '๐Ÿ‡จ๐Ÿ‡ณ', 'id': '๐Ÿ‡ฎ๐Ÿ‡ฉ', 'ms': '๐Ÿ‡ฒ๐Ÿ‡พ', 'tl': '๐Ÿ‡ต๐Ÿ‡ญ', 'ceb': '๐Ÿ‡ต๐Ÿ‡ญ',
+      'haw': '๐Ÿ‡บ๐Ÿ‡ธ', 'mi': '๐Ÿ‡ณ๐Ÿ‡ฟ', 'sm': '๐Ÿ‡ผ๐Ÿ‡ธ', 'to': '๐Ÿ‡น๐Ÿ‡ด', 'fj': '๐Ÿ‡ซ๐Ÿ‡ฏ', 'ty': '๐Ÿ‡ต๐Ÿ‡ซ', 'mg': '๐Ÿ‡ฒ๐Ÿ‡ฌ',
+      'sw': '๐Ÿ‡น๐Ÿ‡ฟ', 'am': '๐Ÿ‡ช๐Ÿ‡น', 'om': '๐Ÿ‡ช๐Ÿ‡น', 'so': '๐Ÿ‡ธ๐Ÿ‡ด', 'ti': '๐Ÿ‡ช๐Ÿ‡ท', 'ha': '๐Ÿ‡ณ๐Ÿ‡ฌ', 'yo': '๐Ÿ‡ณ๐Ÿ‡ฌ',
+      'ig': '๐Ÿ‡ณ๐Ÿ‡ฌ', 'zu': '๐Ÿ‡ฟ๐Ÿ‡ฆ', 'xh': '๐Ÿ‡ฟ๐Ÿ‡ฆ', 'af': '๐Ÿ‡ฟ๐Ÿ‡ฆ', 'st': '๐Ÿ‡ฟ๐Ÿ‡ฆ', 'tn': '๐Ÿ‡ฟ๐Ÿ‡ฆ', 'ss': '๐Ÿ‡ฟ๐Ÿ‡ฆ',
+      've': '๐Ÿ‡ฟ๐Ÿ‡ฆ', 'ts': '๐Ÿ‡ฟ๐Ÿ‡ฆ', 'nr': '๐Ÿ‡ฟ๐Ÿ‡ฆ', 'nso': '๐Ÿ‡ฟ๐Ÿ‡ฆ', 'wo': '๐Ÿ‡ธ๐Ÿ‡ณ', 'ff': '๐Ÿ‡ธ๐Ÿ‡ณ', 'dy': '๐Ÿ‡ฒ๐Ÿ‡ฑ',
+      'bm': '๐Ÿ‡ฒ๐Ÿ‡ฑ', 'tw': '๐Ÿ‡ฌ๐Ÿ‡ญ', 'ak': '๐Ÿ‡ฌ๐Ÿ‡ญ', 'lg': '๐Ÿ‡บ๐Ÿ‡ฌ', 'rw': '๐Ÿ‡ท๐Ÿ‡ผ', 'rn': '๐Ÿ‡ง๐Ÿ‡ฎ', 'ny': '๐Ÿ‡ฒ๐Ÿ‡ผ',
+      'sn': '๐Ÿ‡ฟ๐Ÿ‡ผ', 'nd': '๐Ÿ‡ฟ๐Ÿ‡ผ'
+    };
+    return flagMap[this.tag] || '๐ŸŒ';
+  },
 });
 
 Template.changeLanguagePopup.events({