Display the correct available apps on the home page

pull/1/head
yflory 6 years ago
parent 47fa7f29c9
commit bca120a3ee

@ -11,35 +11,40 @@ define([
var isAvailableType = function (x) { var isAvailableType = function (x) {
if (!Array.isArray(AppConfig.availablePadTypes)) { return true; } if (!Array.isArray(AppConfig.availablePadTypes)) { return true; }
return AppConfig.availablePadTypes.some(function (type) { return AppConfig.availablePadTypes.indexOf(x) !== -1;
return x.indexOf(type) > -1; };
});
var checkRegisteredType = function (x) {
// Return true if we're registered or if the app is not registeredOnly
if (LocalStore.isLoggedIn()) { return true; }
if (!Array.isArray(AppConfig.registeredOnlyTypes)) { return true; }
return AppConfig.registeredOnlyTypes.indexOf(x) === -1;
}; };
return function () { return function () {
var showingMore = false; var showingMore = false;
var icons = [ var icons = [
[ 'pad', '/pad/', Msg.main_richTextPad, 'pad' ], [ 'pad', Msg.main_richTextPad],
[ 'code', '/code/', Msg.main_codePad, 'code' ], [ 'code', Msg.main_codePad],
[ 'slide', '/slide/', Msg.main_slidePad, 'slide' ], [ 'slide', Msg.main_slidePad],
[ 'poll', '/poll/', Msg.main_pollPad, 'poll' ], [ 'poll', Msg.main_pollPad],
[ 'kanban', '/kanban/', Msg.main_kanbanPad, 'kanban' ], [ 'kanban', Msg.main_kanbanPad],
[ 'whiteboard', '/whiteboard/', Msg.main_whiteboardPad, 'whiteboard' ], [ 'whiteboard', Msg.main_whiteboardPad],
[ 'recent', '/drive/', LocalStore.isLoggedIn() ? Msg.main_yourCryptDrive : Msg.main_localPads, 'drive' ] [ 'drive', LocalStore.isLoggedIn() ? Msg.main_yourCryptDrive : Msg.main_localPads]
].filter(function (x) { ].filter(function (x) {
return isAvailableType(x[1]); return isAvailableType(x[0]) && checkRegisteredType(x[0]);
}) })
.map(function (x, i) { .map(function (x, i) {
var s = 'div.bs-callout.cp-callout-' + x[0]; var s = 'div.bs-callout.cp-callout-' + x[0];
if (i > 2) { s += '.cp-more.cp-hidden'; } if (i > 2) { s += '.cp-more.cp-hidden'; }
var icon = AppConfig.applicationsIcon[x[3]]; var icon = AppConfig.applicationsIcon[x[0]];
var font = icon.indexOf('cptools') === 0 ? 'cptools' : 'fa'; var font = icon.indexOf('cptools') === 0 ? 'cptools' : 'fa';
return h('a', [ return h('a', [
{ href: x[1] }, { href: '/'+ x[0] +'/' },
h(s, [ h(s, [
h('i.' + font + '.' + icon), h('i.' + font + '.' + icon),
h('div.pad-button-text', [ h('h4', x[2]) ]) h('div.pad-button-text', [ h('h4', x[1]) ])
]) ])
]); ]);
}); });

@ -166,7 +166,7 @@
.cp-callout-poll .cptools { background-color: @colortheme_poll-bg; } .cp-callout-poll .cptools { background-color: @colortheme_poll-bg; }
.cp-callout-kanban .cptools { background-color: @colortheme_kanban-bg; } .cp-callout-kanban .cptools { background-color: @colortheme_kanban-bg; }
.cp-callout-whiteboard .cptools { background-color: @colortheme_whiteboard-bg; } .cp-callout-whiteboard .cptools { background-color: @colortheme_whiteboard-bg; }
.cp-callout-recent .fa { background-color: @colortheme_drive-bg; } .cp-callout-drive .fa { background-color: @colortheme_drive-bg; }
.cp-hidden { display: none !important; } .cp-hidden { display: none !important; }
.cp-callout-more { .cp-callout-more {
display: inline-block; display: inline-block;

Loading…
Cancel
Save