|
|
@@ -5,6 +5,20 @@ let {{JS_PREFIX}}_interval = null; |
|
|
|
let {{JS_PREFIX}}_last_applied = null; |
|
|
|
const {{JS_PREFIX}}_idle_interval = 2500; |
|
|
|
|
|
|
|
const {{JS_PREFIX}}_stop_refreshing_blocks = function(e) { |
|
|
|
if ({{JS_PREFIX}}_interval !== null) { |
|
|
|
window.clearInterval({{JS_PREFIX}}_interval); |
|
|
|
} |
|
|
|
} |
|
|
|
const {{JS_PREFIX}}_refresh_blocks = function(e) { |
|
|
|
{{JS_PREFIX}}_stop_refreshing_blocks(); |
|
|
|
{{JS_PREFIX}}_apply_blocks({{JS_PREFIX}}_blocked_users); |
|
|
|
{{JS_PREFIX}}_interval = window.setInterval(function () { |
|
|
|
{{JS_PREFIX}}_apply_blocks({{JS_PREFIX}}_blocked_users); |
|
|
|
{{JS_PREFIX}}_last_applied = Date.now(); |
|
|
|
}, {{JS_PREFIX}}_idle_interval); |
|
|
|
} |
|
|
|
|
|
|
|
function {{JS_PREFIX}}_fetch_blocks (do_apply) { |
|
|
|
const requestOptions = { method: 'GET' }; |
|
|
|
const blocked_users_url = '/__bubble/api/filter/data/{{BUBBLE_DATA_ID}}/read'; |
|
|
@@ -26,16 +40,17 @@ function {{JS_PREFIX}}_fetch_blocks (do_apply) { |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
window.addEventListener('popstate', function(e) { |
|
|
|
if ({{JS_PREFIX}}_interval !== null) { |
|
|
|
window.clearInterval({{JS_PREFIX}}_interval); |
|
|
|
window.addEventListener('popstate', {{JS_PREFIX}}_refresh_blocks); |
|
|
|
|
|
|
|
function {{JS_PREFIX}}_handleVisibilityChange() { |
|
|
|
if (document.hidden) { |
|
|
|
{{JS_PREFIX}}_stop_refreshing_blocks(); |
|
|
|
} else { |
|
|
|
{{JS_PREFIX}}_refresh_blocks(); |
|
|
|
} |
|
|
|
{{JS_PREFIX}}_apply_blocks({{JS_PREFIX}}_blocked_users); |
|
|
|
{{JS_PREFIX}}_interval = window.setInterval(function () { |
|
|
|
{{JS_PREFIX}}_apply_blocks({{JS_PREFIX}}_blocked_users); |
|
|
|
{{JS_PREFIX}}_last_applied = Date.now(); |
|
|
|
}, {{JS_PREFIX}}_idle_interval); |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
document.addEventListener("visibilitychange", {{JS_PREFIX}}_handleVisibilityChange, false); |
|
|
|
|
|
|
|
function {{JS_PREFIX}}_block_user (author) { |
|
|
|
{{JS_PREFIX}}_blocked_users.push(author); |
|
|
|