diff --git a/html/account-me.ejs b/html/account-me.ejs index a8751f06..d977d004 100644 --- a/html/account-me.ejs +++ b/html/account-me.ejs @@ -9,451 +9,192 @@
- -

My Subscriptions

- - User: - - - <%= userid %> - + User: <%= userid %>
<% const subKeys = (userSubs && Object.keys(userSubs)) || []; const subCount = subKeys.length; - const groups = {}; - subKeys.forEach(function(channelID){ - const c = userSubs[channelID] || {}; - const nm = (c.channelName || '').trim(); - const first = (nm[0] || '#').toUpperCase(); - const key = /^[A-Z]$/.test(first) ? first : '#'; - if(!groups[key]) groups[key] = []; - groups[key].push({ id: channelID, c: c }); - }); - const letters = Object.keys(groups).sort(); - letters.forEach(function(L){ - groups[L].sort(function(a,b){ - const an = (a.c.channelName||'').toLowerCase(); - const bn = (b.c.channelName||'').toLowerCase(); - return an.localeCompare(bn,'en',{sensitivity:'base'}); - }); - }); + const channels = subKeys.map(id => ({ + id, + name: userSubs[id]?.channelName || "Unknown", + avatar: userSubs[id]?.avatar + })); + channels.sort((a,b)=>a.name.localeCompare(b.name,'en',{sensitivity:'base'})); %> -
- - - <%= subCount %> <%= subCount === 1 ? 'subscription' : 'subscriptions' %> - - -
- - -
-
- -
- <% letters.forEach(function(L){ %> -

<%= L %>

-
- <% groups[L].forEach(function(entry){ const c = entry.c; const channelID = entry.id; %> -
- Avatar of <%= c.channelName %> -
<%= c.channelName %>
-
- Unsub - View -
-
- <% }) %> +
+ <% channels.forEach(c => { %> +
+ + <%= c.name %>
<% }) %>
-