From 7c5620f51d3fb4889526b99dce0f0a02155f78c6 Mon Sep 17 00:00:00 2001 From: j Date: Tue, 13 Nov 2018 16:31:03 +0000 Subject: [PATCH 1/2] lazyload list/edit item count --- static/js/folderList.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/static/js/folderList.js b/static/js/folderList.js index fa4bd717..15ae6b65 100644 --- a/static/js/folderList.js +++ b/static/js/folderList.js @@ -155,6 +155,11 @@ pandora.ui.folderList = function(id, section) { {key: 'status', value: 'featured', operator: '='} ], operator: '&'}; } + var _updateItemsCount = false; + if (data.keys && Ox.contains(data.keys, 'items')) { + data.keys = data.keys.filter(function(key) { return key != 'items' }) + _updateItemsCount = true; + } return pandora.api['find' + folderItems](Ox.extend(data, { query: query }), function(result) { @@ -162,6 +167,13 @@ pandora.ui.folderList = function(id, section) { pandora.$ui.mainMenu.updateLists(id, result.data.items); } callback(result); + if (result.data.items.length && _updateItemsCount) { + setTimeout(function() { + updateItemsCount(result.data.items.map(function(item) { + return item.id; + })); + }, 500) + } }); }; } else { @@ -451,5 +463,21 @@ pandora.ui.folderList = function(id, section) { } } + function updateItemsCount(ids) { + Ox.serialForEach(ids, function(item, index, items, callback) { + pandora.api['find' + folderItems]({ + keys: ['items'], + query: { + conditions: [{key: 'id', value: item, operator: '=='}] + }, + range: [0, 1] + }, function(result) { + that.value(item, 'items', result.data.items[0].items); + callback(); + }) + }) + + } + return that; }; From f67026fc77656ec9e985b432b6b4c25793c71c26 Mon Sep 17 00:00:00 2001 From: j Date: Tue, 13 Nov 2018 16:32:39 +0000 Subject: [PATCH 2/2] default values --- pandora/config.0xdb.jsonc | 1 + pandora/config.indiancinema.jsonc | 1 + pandora/config.padma.jsonc | 1 + 3 files changed, 3 insertions(+) diff --git a/pandora/config.0xdb.jsonc b/pandora/config.0xdb.jsonc index 4d218bf0..f7f91cf9 100644 --- a/pandora/config.0xdb.jsonc +++ b/pandora/config.0xdb.jsonc @@ -1204,6 +1204,7 @@ "newsletter": true, "ui": { "annotationsCalendarSize": 128, + "annotationsHighlight": "none", "annotationsMapSize": 128, "annotationsRange": "all", "annotationsSize": 256, diff --git a/pandora/config.indiancinema.jsonc b/pandora/config.indiancinema.jsonc index 3a70ba6c..8f1a9e69 100644 --- a/pandora/config.indiancinema.jsonc +++ b/pandora/config.indiancinema.jsonc @@ -1670,6 +1670,7 @@ "newsletter": true, "ui": { "annotationsCalendarSize": 128, + "annotationsHighlight": "none", "annotationsMapSize": 128, "annotationsRange": "all", "annotationsSize": 256, diff --git a/pandora/config.padma.jsonc b/pandora/config.padma.jsonc index 42f5dba3..e2f75a3a 100644 --- a/pandora/config.padma.jsonc +++ b/pandora/config.padma.jsonc @@ -1148,6 +1148,7 @@ "level": "guest", "ui": { "annotationsCalendarSize": 128, + "annotationsHighlight": "none", "annotationsHighlight": false, "annotationsMapSize": 128, "annotationsRange": "position",