Add extension pause toggle
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
const profileSelect = document.getElementById('profileSelect');
|
||||
const statusEl = document.getElementById('status');
|
||||
const debugToggle = document.getElementById('debugLoggingToggle');
|
||||
const pauseBtn = document.getElementById('pauseBtn');
|
||||
let extensionPaused = false;
|
||||
|
||||
function isValidProfileNumber(value) {
|
||||
return Number.isInteger(value) && value >= 1 && value <= 5;
|
||||
@@ -63,6 +65,13 @@ function updateStatus(message, saved = false) {
|
||||
statusEl.className = saved ? 'status saved' : 'status';
|
||||
}
|
||||
|
||||
function updatePauseButton() {
|
||||
if (!pauseBtn) {
|
||||
return;
|
||||
}
|
||||
pauseBtn.textContent = extensionPaused ? 'Extension fortsetzen' : 'Extension pausieren';
|
||||
}
|
||||
|
||||
async function initProfileSelect() {
|
||||
const backendProfile = await fetchProfileState();
|
||||
if (isValidProfileNumber(backendProfile)) {
|
||||
@@ -100,6 +109,11 @@ if (debugToggle) {
|
||||
});
|
||||
}
|
||||
|
||||
chrome.storage.sync.get(['extensionPaused'], (result) => {
|
||||
extensionPaused = Boolean(result && result.extensionPaused);
|
||||
updatePauseButton();
|
||||
});
|
||||
|
||||
function reloadFacebookTabs() {
|
||||
chrome.tabs.query({ url: ['https://www.facebook.com/*', 'https://facebook.com/*'] }, (tabs) => {
|
||||
tabs.forEach(tab => {
|
||||
@@ -125,3 +139,14 @@ document.getElementById('saveBtn').addEventListener('click', async () => {
|
||||
document.getElementById('webInterfaceBtn').addEventListener('click', () => {
|
||||
chrome.tabs.create({ url: API_BASE_URL });
|
||||
});
|
||||
|
||||
if (pauseBtn) {
|
||||
pauseBtn.addEventListener('click', () => {
|
||||
const nextPaused = !extensionPaused;
|
||||
chrome.storage.sync.set({ extensionPaused: nextPaused }, () => {
|
||||
extensionPaused = nextPaused;
|
||||
updatePauseButton();
|
||||
updateStatus(`Extension ${nextPaused ? 'pausiert' : 'fortgesetzt'} (wirksam ohne Reload)`, true);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user