This is an automated email from the ASF dual-hosted git repository.
sebb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-ponymail-foal.git
The following commit(s) were added to refs/heads/master by this push:
new 7560f1d More shared globals
7560f1d is described below
commit 7560f1d3de69784ecc0102eb40a57f621ebeb4d2
Author: Sebb <[email protected]>
AuthorDate: Thu Nov 18 19:36:15 2021 +0000
More shared globals
---
webui/js/source/aavariables.js | 7 ++++++-
webui/js/source/key-commands.js | 16 ++++++++--------
webui/js/source/listview-flat.js | 2 +-
webui/js/source/listview-header.js | 14 ++++++--------
webui/js/source/listview-threaded.js | 2 +-
5 files changed, 22 insertions(+), 19 deletions(-)
diff --git a/webui/js/source/aavariables.js b/webui/js/source/aavariables.js
index 6708853..25c1e40 100644
--- a/webui/js/source/aavariables.js
+++ b/webui/js/source/aavariables.js
@@ -44,7 +44,12 @@ let G_current_email_idx;
let G_chatty_layout = true;
// emails (composer, key-commands, render-email)
-let full_emails = {};
+let G_full_emails = {};
+
+// listview-*.js, key-commands
+let G_current_index_pos = 0;
+let G_current_per_page = 0;
+
const PONYMAIL_DATE_FORMAT = {
weekday: 'long',
diff --git a/webui/js/source/key-commands.js b/webui/js/source/key-commands.js
index 2265985..2b2b893 100644
--- a/webui/js/source/key-commands.js
+++ b/webui/js/source/key-commands.js
@@ -172,18 +172,18 @@ function keyCommands(e) {
let blobs = G_current_json.emails;
if (G_current_listmode == 'threaded') blobs =
G_current_json.thread_struct;
let no_emails = blobs.length;
- if (G_current_email_idx == undefined && G_current_json &&
(current_index_pos + current_per_page) < no_emails) {
+ if (G_current_email_idx == undefined && G_current_json &&
(G_current_index_pos + G_current_per_page) < no_emails) {
listview_header({
- pos: current_index_pos + current_per_page
+ pos: G_current_index_pos + G_current_per_page
}, G_current_json);
}
}
return;
case 'ArrowLeft': // quick previous
if (G_current_json) { // IF list view...
- if (G_current_email_idx == undefined && G_current_json &&
(current_index_pos - current_per_page) >= 0) {
+ if (G_current_email_idx == undefined && G_current_json &&
(G_current_index_pos - G_current_per_page) >= 0) {
listview_header({
- pos: current_index_pos - current_per_page
+ pos: G_current_index_pos - G_current_per_page
}, G_current_json);
}
}
@@ -202,9 +202,9 @@ function ponymail_swipe(event) {
if (len < 20) return false;
if (direction == 'right') {
if (G_current_json) { // IF list view...
- if (G_current_email_idx == undefined && G_current_json &&
(current_index_pos - current_per_page) >= 0) {
+ if (G_current_email_idx == undefined && G_current_json &&
(G_current_index_pos - G_current_per_page) >= 0) {
listview_header({
- pos: current_index_pos - current_per_page
+ pos: G_current_index_pos - G_current_per_page
}, G_current_json);
}
}
@@ -213,9 +213,9 @@ function ponymail_swipe(event) {
let blobs = G_current_json.emails;
if (G_current_listmode == 'threaded') blobs =
G_current_json.thread_struct;
let no_emails = blobs.length;
- if (G_current_email_idx == undefined && G_current_json &&
(current_index_pos + current_per_page) < no_emails) {
+ if (G_current_email_idx == undefined && G_current_json &&
(G_current_index_pos + G_current_per_page) < no_emails) {
listview_header({
- pos: current_index_pos + current_per_page
+ pos: G_current_index_pos + G_current_per_page
}, G_current_json);
}
}
diff --git a/webui/js/source/listview-flat.js b/webui/js/source/listview-flat.js
index 3a9685b..ad42154 100644
--- a/webui/js/source/listview-flat.js
+++ b/webui/js/source/listview-flat.js
@@ -41,7 +41,7 @@ function listview_flat(json, start) {
let s = start || 0;
if (json.emails && json.emails.length) {
- for (n = s; n < (s + current_per_page); n++) {
+ for (n = s; n < (s + G_current_per_page); n++) {
let z = json.emails.length - n - 1; // reverse order by default
if (json.emails[z]) {
let item = listview_flat_element(json.emails[z], z);
diff --git a/webui/js/source/listview-header.js
b/webui/js/source/listview-header.js
index 7b7662e..ef29bc4 100644
--- a/webui/js/source/listview-header.js
+++ b/webui/js/source/listview-header.js
@@ -16,8 +16,6 @@
*/
let prev_listview_json = {};
let prev_listview_state = {};
-let current_index_pos = 0;
-let current_per_page = 0;
function listview_header(state, json) {
if (isEmpty(json)) { // Bad search request?
@@ -66,8 +64,8 @@ function listview_header(state, json) {
});
let chevrons = document.getElementById('listview_chevrons');
- current_per_page = calc_per_page();
- current_index_pos = state.pos || 0;
+ G_current_per_page = calc_per_page();
+ G_current_index_pos = state.pos || 0;
let first = 1;
if (state && state.pos) {
first = 1 + state.pos;
@@ -76,10 +74,10 @@ function listview_header(state, json) {
chevrons.innerHTML = "No topics to show";
blobs = [];
} else {
- chevrons.innerHTML = "Showing <b>%u through %u</b> of <b>%u</b>
topics ".format(first, Math.min(first + current_per_page - 1,
blobs.length), blobs.length || 0);
+ chevrons.innerHTML = "Showing <b>%u through %u</b> of <b>%u</b>
topics ".format(first, Math.min(first + G_current_per_page - 1,
blobs.length), blobs.length || 0);
}
- let pprev = Math.max(0, first - current_per_page - 1);
+ let pprev = Math.max(0, first - G_current_per_page - 1);
let cback = new HTML('button', {
onclick: 'listview_header({pos: %u}, G_current_json);'.format(pprev),
disabled: (first == 1) ? 'true' : null
@@ -88,10 +86,10 @@ function listview_header(state, json) {
}, " "));
chevrons.inject(cback);
- let pnext = first + current_per_page - 1;
+ let pnext = first + G_current_per_page - 1;
let cforward = new HTML('button', {
onclick: 'listview_header({pos: %u}, G_current_json);'.format(pnext),
- disabled: (first + current_per_page - 1 >= blobs.length) ? 'true' :
null
+ disabled: (first + G_current_per_page - 1 >= blobs.length) ? 'true' :
null
}, new HTML('span', {
class: 'glyphicon glyphicon-chevron-right'
}, " "));
diff --git a/webui/js/source/listview-threaded.js
b/webui/js/source/listview-threaded.js
index 4fb609a..19363a1 100644
--- a/webui/js/source/listview-threaded.js
+++ b/webui/js/source/listview-threaded.js
@@ -30,7 +30,7 @@ function listview_threaded(json, start) {
let s = start || 0;
if (json.thread_struct && json.thread_struct.length) {
- for (let n = s; n < (s + current_per_page); n++) {
+ for (let n = s; n < (s + G_current_per_page); n++) {
let z = json.thread_struct.length - n - 1; // reverse order by
default
if (json.thread_struct[z]) {
let item = listview_threaded_element(json.thread_struct[z], z);