+5
-1
minisky.js
+5
-1
minisky.js
+26
-3
skythread.js
+26
-3
skythread.js
···
127
});
128
129
$(postingStatsPage.querySelector('form')).addEventListener('submit', (e) => {
130
-
scanPostingStats();
131
});
132
133
$(postingStatsPage.querySelector('input[type="range"]')).addEventListener('input', (e) => {
···
475
476
function scanPostingStats() {
477
let submit = $(postingStatsPage.querySelector('input[type=submit]'), HTMLInputElement);
478
-
submit.disabled = true;
479
480
let range = $(postingStatsPage.querySelector('input[type=range]'), HTMLInputElement);
481
let days = parseInt(range.value, 10);
···
492
tbody.innerHTML = '';
493
494
let now = new Date().getTime();
495
496
accountAPI.loadTimeline(days, {
497
onPageLoad: (data) => {
498
let minTime = now;
499
500
for (let item of data) {
501
let timestamp = item.reason ? item.reason.indexedAt : item.post.record.createdAt;
502
let date = Date.parse(timestamp);
···
507
progressBar.value = daysBack;
508
}
509
}).then(items => {
510
let users = {};
511
let total = 0;
512
···
558
}
559
560
table.style.display = 'table';
561
-
submit.disabled = false;
562
progressBar.style.display = 'none';
563
});
564
}
565
566
function showNotificationsPage() {
···
127
});
128
129
$(postingStatsPage.querySelector('form')).addEventListener('submit', (e) => {
130
+
if (!window.scanStartTime) {
131
+
scanPostingStats();
132
+
} else {
133
+
stopScan();
134
+
}
135
});
136
137
$(postingStatsPage.querySelector('input[type="range"]')).addEventListener('input', (e) => {
···
479
480
function scanPostingStats() {
481
let submit = $(postingStatsPage.querySelector('input[type=submit]'), HTMLInputElement);
482
+
submit.value = 'Cancel';
483
484
let range = $(postingStatsPage.querySelector('input[type=range]'), HTMLInputElement);
485
let days = parseInt(range.value, 10);
···
496
tbody.innerHTML = '';
497
498
let now = new Date().getTime();
499
+
window.scanStartTime = now;
500
501
accountAPI.loadTimeline(days, {
502
onPageLoad: (data) => {
503
let minTime = now;
504
505
+
if (window.scanStartTime != now) {
506
+
return { cancel: true };
507
+
}
508
+
509
for (let item of data) {
510
let timestamp = item.reason ? item.reason.indexedAt : item.post.record.createdAt;
511
let date = Date.parse(timestamp);
···
516
progressBar.value = daysBack;
517
}
518
}).then(items => {
519
+
if (window.scanStartTime != now) {
520
+
return;
521
+
}
522
+
523
let users = {};
524
let total = 0;
525
···
571
}
572
573
table.style.display = 'table';
574
+
submit.value = 'Start scan';
575
progressBar.style.display = 'none';
576
+
window.scanStartTime = undefined;
577
});
578
+
}
579
+
580
+
function stopScan() {
581
+
let submit = $(postingStatsPage.querySelector('input[type=submit]'), HTMLInputElement);
582
+
submit.value = 'Start scan';
583
+
window.scanStartTime = undefined;
584
+
585
+
let progressBar = $(postingStatsPage.querySelector('input[type=submit] + progress'), HTMLProgressElement);
586
+
progressBar.style.display = 'none';
587
}
588
589
function showNotificationsPage() {
+1
types.d.ts
+1
types.d.ts