From 95fc76c5e2bb616e296200d6fa7068e944f19004 Mon Sep 17 00:00:00 2001 From: lostinlight Date: Thu, 27 Feb 2020 01:37:27 +0300 Subject: [PATCH] Sort lang options --- themes/starter/languages/en.yml | 2 +- themes/starter/layout/miscellaneous.ejs | 37 ++++++++++++------- .../source/assets/scss/modules/_misc.scss | 8 +++- 3 files changed, 31 insertions(+), 16 deletions(-) diff --git a/themes/starter/languages/en.yml b/themes/starter/languages/en.yml index 7bfce1b..c0590e3 100644 --- a/themes/starter/languages/en.yml +++ b/themes/starter/languages/en.yml @@ -6,7 +6,7 @@ menu: MENU chronicles: Chronicles knowledge: Knowledge -more: More apps +more: All apps portal: Portal logo: logo hub about: ABOUT diff --git a/themes/starter/layout/miscellaneous.ejs b/themes/starter/layout/miscellaneous.ejs index 444b090..f0db294 100644 --- a/themes/starter/layout/miscellaneous.ejs +++ b/themes/starter/layout/miscellaneous.ejs @@ -4,6 +4,26 @@ layout: layout <% const apps = site.data.miscellaneous.apps; + + function langCount(arr) { + let langs = []; + arr.forEach(function(item) { + let lang = item.codeLanguage; + if (!lang) {return}; + let check = langs.findIndex(function(x) {return x.language === lang}); + if (check>=0) { + langs[check].count +=1; + } else { + let newLang = {}; + newLang.language = lang; + newLang.count = 1; + langs.push(newLang); + } + }); + return langs; + } + + const langList = langCount(apps).sort((a,b) => b.count - a.count); %> <%- partial('_partial/heroheader') %> @@ -32,25 +52,14 @@ layout: layout

Sort by code language:

- - - - - - - - - - - - - + <% for (i in langList) { %> + + <% } %>
<% for (item in apps) { %> <% let type = apps[item].categories %> <% let lang = apps[item].codeLanguage.toLowerCase() %> - <% if (lang === "c#") {lang = "c3"} %>