mirror of
https://github.com/LBRYFoundation/Watch-on-LBRY.git
synced 2025-08-23 17:47:26 +00:00
47 lines
1.5 KiB
JavaScript
47 lines
1.5 KiB
JavaScript
|
|
const enable = document.querySelector('.enable button[name="enable"]');
|
|
const disable = document.querySelector('.enable button[name="disable"]');
|
|
|
|
const lbrySite = document.querySelector('.redirect button[name="site"]');
|
|
const lbryApp = document.querySelector('.redirect button[name="app"]');
|
|
|
|
chrome.storage.local.get(['enabled', 'redirect'], ({ enabled, redirect }) => {
|
|
|
|
const currentButton = enabled ? enable : disable;
|
|
currentButton.classList.add('active');
|
|
|
|
const currentRadio = !redirect ? lbrySite : redirect === 'lbry.tv' ? lbrySite : lbryApp;
|
|
currentRadio.classList.add('active');
|
|
});
|
|
|
|
const checkElementForClass = (elToAdd, elToRemove) => {
|
|
if(!elToAdd.classList.contains('active')){
|
|
|
|
elToAdd.classList.add('active');
|
|
elToRemove.classList.remove('active');
|
|
}
|
|
}
|
|
|
|
const attachClick = (selector, handler) =>{
|
|
document.querySelector(selector).addEventListener('click', (event) => {
|
|
const element = event.target;
|
|
const name = event.target.getAttribute('name');
|
|
const value = event.target.getAttribute('value');
|
|
typeof handler==='function' ? handler(element, name, value): null;
|
|
});
|
|
}
|
|
|
|
attachClick('.enable', (element, name, value) => {
|
|
const parsedValue = !!+value;
|
|
if(name){
|
|
checkElementForClass(element, name === 'enable' ? disable : enable );
|
|
chrome.storage.local.set({ enabled: parsedValue });
|
|
}
|
|
});
|
|
|
|
attachClick('.redirect', (element, name, value) => {
|
|
if(name){
|
|
checkElementForClass(element, name === 'site' ? lbryApp : lbrySite);
|
|
chrome.storage.local.set({ redirect: value });
|
|
}
|
|
});
|