Site configs are hidden by default. Wrote functions for gathering/setting the values from the edit form of a given site.
This commit is contained in:
parent
f5d3711b4c
commit
505995f83f
14
js/uw.js
14
js/uw.js
@ -222,7 +222,9 @@ var UW_SITES = {
|
|||||||
isClass: true,
|
isClass: true,
|
||||||
insertStrat: "prepend",
|
insertStrat: "prepend",
|
||||||
},
|
},
|
||||||
autoar_imdb: false
|
autoar_imdb:{
|
||||||
|
enabled: false
|
||||||
|
}
|
||||||
},
|
},
|
||||||
netflix: {
|
netflix: {
|
||||||
enabled: true,
|
enabled: true,
|
||||||
@ -237,7 +239,11 @@ var UW_SITES = {
|
|||||||
isClass: true,
|
isClass: true,
|
||||||
insertStrat: "append"
|
insertStrat: "append"
|
||||||
},
|
},
|
||||||
autoar_imdb: true
|
autoar_imdb:{
|
||||||
|
enabled: true,
|
||||||
|
title: "dummy please replace",
|
||||||
|
isClass: false
|
||||||
|
}
|
||||||
},
|
},
|
||||||
dummy: {
|
dummy: {
|
||||||
type: "add new site",
|
type: "add new site",
|
||||||
@ -253,7 +259,9 @@ var UW_SITES = {
|
|||||||
isClass: false,
|
isClass: false,
|
||||||
insertStrat: "prepend",
|
insertStrat: "prepend",
|
||||||
},
|
},
|
||||||
autoar_imdb: false
|
autoar_imdb:{
|
||||||
|
enabled: false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
browser.storage.local.set({ultrawidify_siterules: UW_SITES});
|
browser.storage.local.set({ultrawidify_siterules: UW_SITES});
|
||||||
|
105
res/settings.js
105
res/settings.js
@ -270,7 +270,7 @@ function gotsites(opts){
|
|||||||
|
|
||||||
var category_desc = document.createElement("div");
|
var category_desc = document.createElement("div");
|
||||||
if(type == "official"){
|
if(type == "official"){
|
||||||
category_desc.textContent = "These sites are officially supported by the extension developer. These sites should always work.";
|
category_desc.innerHTML = "These sites are officially supported by the extension developer. These sites should always work. <small>(Pro tip: if you don't want extension to run on some of the following sites, uncheck the checkbox for that site)</small>";
|
||||||
}
|
}
|
||||||
else if(type == "non-official"){
|
else if(type == "non-official"){
|
||||||
category_desc.textContent = "Sites in this category have been contribued by third parties. These sites will probably work, but the developer couldn't test whether they work or not.";
|
category_desc.textContent = "Sites in this category have been contribued by third parties. These sites will probably work, but the developer couldn't test whether they work or not.";
|
||||||
@ -314,7 +314,7 @@ function gotsites(opts){
|
|||||||
saveBtn.textContent = "« save »";
|
saveBtn.textContent = "« save »";
|
||||||
saveBtn.className = "inline_button hide";
|
saveBtn.className = "inline_button hide";
|
||||||
saveBtn.id = site + "_save_button";
|
saveBtn.id = site + "_save_button";
|
||||||
saveBtn.addEventListener("click", function(){ var site = this.id; site = site.replace("_save_button", ""); enableEditing(site)});
|
saveBtn.addEventListener("click", function(){ var site = this.id; site = site.replace("_save_button", ""); getSiteOpts(site)});
|
||||||
|
|
||||||
var cancelBtn = document.createElement("div");
|
var cancelBtn = document.createElement("div");
|
||||||
cancelBtn.textContent = "« cancel »";
|
cancelBtn.textContent = "« cancel »";
|
||||||
@ -326,12 +326,17 @@ function gotsites(opts){
|
|||||||
siteTitle.append(saveBtn);
|
siteTitle.append(saveBtn);
|
||||||
siteTitle.append(cancelBtn);
|
siteTitle.append(cancelBtn);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var siteDetails = document.createElement("div");
|
||||||
|
siteDetails.id = site + "_conf_details";
|
||||||
|
siteDetails.classList = "hide";
|
||||||
|
|
||||||
var urlRules = document.createElement("div");
|
var urlRules = document.createElement("div");
|
||||||
{
|
{
|
||||||
var urlRulesLabel = document.createElement("span");
|
var urlRulesLabel = document.createElement("span");
|
||||||
urlRulesLabel.textContent = "URL rule: ";
|
urlRulesLabel.textContent = "URL rule: ";
|
||||||
|
|
||||||
urlRulesEbox = mkebox(site, uw_sites[site].urlRules[0]);
|
urlRulesEbox = mkebox(site, uw_sites[site].urlRules[0], "url_rules");
|
||||||
|
|
||||||
urlRules.append(urlRulesLabel);
|
urlRules.append(urlRulesLabel);
|
||||||
urlRules.append(urlRulesEbox);
|
urlRules.append(urlRulesEbox);
|
||||||
@ -343,10 +348,9 @@ function gotsites(opts){
|
|||||||
var playerName = document.createElement("div");
|
var playerName = document.createElement("div");
|
||||||
|
|
||||||
var playerNameLabel = document.createElement("span");
|
var playerNameLabel = document.createElement("span");
|
||||||
var playerNameEbox = mkebox(site);
|
|
||||||
|
|
||||||
playerNameLabel.textContent = "id of the player container:";
|
playerNameLabel.textContent = "id of the player container:";
|
||||||
playerNameEbox = mkebox(site, uw_sites[site].player.name);
|
var playerNameEbox = mkebox(site, uw_sites[site].player.name, "player_name");
|
||||||
|
|
||||||
playerName.append(playerNameLabel);
|
playerName.append(playerNameLabel);
|
||||||
playerName.append(playerNameEbox);
|
playerName.append(playerNameEbox);
|
||||||
@ -372,21 +376,21 @@ function gotsites(opts){
|
|||||||
var iframe_playerName = document.createElement("div");
|
var iframe_playerName = document.createElement("div");
|
||||||
var ipn_label = document.createElement("span");
|
var ipn_label = document.createElement("span");
|
||||||
ipn_label.textContent = "id of the player container when in an iframe:";
|
ipn_label.textContent = "id of the player container when in an iframe:";
|
||||||
ipn_ebox = mkebox(site, uw_sites[site].iframe ? uw_sites[site].iframe.name : "");
|
ipn_ebox = mkebox(site, uw_sites[site].iframe ? uw_sites[site].iframe.name : "", "iframe_name");
|
||||||
iframe_playerName.append(ipn_label);
|
iframe_playerName.append(ipn_label);
|
||||||
iframe_playerName.append(ipn_ebox);
|
iframe_playerName.append(ipn_ebox);
|
||||||
|
|
||||||
var iframe_playerClass = document.createElement("div");
|
var iframe_playerClass = document.createElement("div");
|
||||||
var ipc_label = document.createElement("span");
|
var ipc_label = document.createElement("span");
|
||||||
ipc_label.textContent = " Name of the player container is a class";
|
ipc_label.textContent = " Name of the player container is a class";
|
||||||
var ipc_cb = mkcb(site, uw_sites[site].iframe ? uw_sites[site].iframe.isClass : false);
|
var ipc_cb = mkcb(site, uw_sites[site].iframe ? uw_sites[site].iframe.isClass : false, "iframe_class");
|
||||||
iframe_playerClass.append(ipc_cb);
|
iframe_playerClass.append(ipc_cb);
|
||||||
iframe_playerClass.append(ipc_label);
|
iframe_playerClass.append(ipc_label);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var imdbar = document.createElement("div");
|
var imdbar = document.createElement("div");
|
||||||
var imdbar_cb = mkcb(site, uw_sites[site].autoar_imdb);
|
var imdbar_cb = mkcb(site, uw_sites[site].autoar_imdb, "imdbar");
|
||||||
var imdbar_label = document.createElement("span");
|
var imdbar_label = document.createElement("span");
|
||||||
imdbar_label.textContent = " This site supports automatic aspect ratio detection";
|
imdbar_label.textContent = " This site supports automatic aspect ratio detection";
|
||||||
imdbar.append(imdbar_cb);
|
imdbar.append(imdbar_cb);
|
||||||
@ -395,14 +399,14 @@ function gotsites(opts){
|
|||||||
var imdbar_title = document.createElement("div");
|
var imdbar_title = document.createElement("div");
|
||||||
var it_label = document.createElement("span");
|
var it_label = document.createElement("span");
|
||||||
it_label.textContent = "id of the element containing video title:";
|
it_label.textContent = "id of the element containing video title:";
|
||||||
it_ebox = mkebox(site, uw_sites[site].iframe ? uw_sites[site].iframe.name : "");
|
it_ebox = mkebox(site, uw_sites[site].iframe ? uw_sites[site].iframe.name : "", "imdbar_title");
|
||||||
imdbar_title.append(it_label);
|
imdbar_title.append(it_label);
|
||||||
imdbar_title.append(it_ebox);
|
imdbar_title.append(it_ebox);
|
||||||
|
|
||||||
var imdbar_class = document.createElement("div");
|
var imdbar_class = document.createElement("div");
|
||||||
var ic_label = document.createElement("span");
|
var ic_label = document.createElement("span");
|
||||||
ic_label.textContent = " Name of the title container is a class";
|
ic_label.textContent = " Name of the title container is a class";
|
||||||
var ic_cb = mkcb(site, uw_sites[site].iframe ? uw_sites[site].iframe.isClass : false);
|
var ic_cb = mkcb(site, uw_sites[site].iframe ? uw_sites[site].iframe.isClass : false, "imdbar_class");
|
||||||
imdbar_class.append(ic_cb);
|
imdbar_class.append(ic_cb);
|
||||||
imdbar_class.append(ic_label);
|
imdbar_class.append(ic_label);
|
||||||
|
|
||||||
@ -411,17 +415,21 @@ function gotsites(opts){
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
siteDetails.append(urlRules);
|
||||||
|
siteDetails.append(playerElement);
|
||||||
|
siteDetails.append(iframe_playerName);
|
||||||
|
siteDetails.append(iframe_playerClass);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
siteDetails.append(imdbar);
|
||||||
|
siteDetails.append(imdbar_title);
|
||||||
|
siteDetails.append(imdbar_class);
|
||||||
|
|
||||||
|
|
||||||
displayedInfo.append(siteTitle);
|
displayedInfo.append(siteTitle);
|
||||||
displayedInfo.append(urlRules);
|
displayedInfo.append(siteDetails);
|
||||||
displayedInfo.append(playerElement);
|
|
||||||
displayedInfo.append(iframe_playerName);
|
|
||||||
displayedInfo.append(iframe_playerClass);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
displayedInfo.append(imdbar);
|
|
||||||
displayedInfo.append(imdbar_title);
|
|
||||||
displayedInfo.append(imdbar_class);
|
|
||||||
|
|
||||||
entry.append(displayedInfo);
|
entry.append(displayedInfo);
|
||||||
|
|
||||||
@ -443,9 +451,10 @@ function gotsites(opts){
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function mkebox(site, value){
|
function mkebox(site, value, id){
|
||||||
var ebox = document.createElement("input");
|
var ebox = document.createElement("input");
|
||||||
ebox.className = "site_details details_ebox " + site + "_ebox",
|
ebox.className = "site_details details_ebox " + site + "_ebox",
|
||||||
|
ebox.id = site + "_" + id + "_ebox";
|
||||||
ebox.type = "text";
|
ebox.type = "text";
|
||||||
ebox.value = value;
|
ebox.value = value;
|
||||||
ebox.disabled = true;
|
ebox.disabled = true;
|
||||||
@ -453,12 +462,12 @@ function mkebox(site, value){
|
|||||||
return ebox;
|
return ebox;
|
||||||
}
|
}
|
||||||
|
|
||||||
function mkcb(site, checked, forceEnable){
|
function mkcb(site, checked, id, forceEnable){
|
||||||
var cb = document.createElement("input");
|
var cb = document.createElement("input");
|
||||||
cb.className = site + "_ebox",
|
cb.className = site + "_ebox",
|
||||||
cb.type = "checkbox";
|
cb.type = "checkbox";
|
||||||
cb.name = site + "_cb_name";
|
cb.name = site + "_cb_name";
|
||||||
cb.id = site + "_cb_id";
|
cb.id = site + "_" + id + "_cb";
|
||||||
cb.checked = checked;
|
cb.checked = checked;
|
||||||
|
|
||||||
if(!forceEnable)
|
if(!forceEnable)
|
||||||
@ -468,6 +477,7 @@ function mkcb(site, checked, forceEnable){
|
|||||||
}
|
}
|
||||||
|
|
||||||
function enableEditing(site){
|
function enableEditing(site){
|
||||||
|
showSiteDetails(site);
|
||||||
if(debugmsg)
|
if(debugmsg)
|
||||||
console.log("uw settings :: enableEditing | enabling editing for",site);
|
console.log("uw settings :: enableEditing | enabling editing for",site);
|
||||||
|
|
||||||
@ -517,6 +527,55 @@ function disableEditing(site){
|
|||||||
} catch (e){};
|
} catch (e){};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function showSiteDetails(site){
|
||||||
|
try{
|
||||||
|
document.getElementById(site + "_conf_details").classList.remove("hide");
|
||||||
|
}catch(me_outside_how_about_that){}
|
||||||
|
}
|
||||||
|
|
||||||
|
function hideSiteDetails(site){
|
||||||
|
try{
|
||||||
|
document.getElementById(site + "_conf_details").classList.add("hide");
|
||||||
|
}catch(me_outside_how_about_that){}
|
||||||
|
}
|
||||||
|
|
||||||
|
function getSiteOpts(site){
|
||||||
|
var newOptions = {};
|
||||||
|
|
||||||
|
newOptions.urlRules = [ document.getElementById(site + "_url_rules_ebox").value ];
|
||||||
|
newOptions.player = {};
|
||||||
|
newOptions.player.name = document.getElementById(site + "_player_name_ebox").value;
|
||||||
|
newOptions.player.isClass = document.getElementById(site + "_pccb_id").checked;
|
||||||
|
newOptions.iframe = {};
|
||||||
|
newOptions.iframe.name = document.getElementById(site + "_iframe_name_ebox").value;
|
||||||
|
newOptions.iframe.isClass = document.getElementById(site + "_iframe_class_cb").checked;
|
||||||
|
newOptions.autoar_imdb = {};
|
||||||
|
newOptions.autoar_imdb.enabled = document.getElementById(site + "_imdbar_cb").value;
|
||||||
|
newOptions.autoar_imdb.title = document.getElementById(site + "_imdbar_title_ebox").value;
|
||||||
|
newOptions.autoar_imdb.isClass = document.getElementById(site + "_imdbar_class_cb").checked;
|
||||||
|
|
||||||
|
console.log(newOptions); //TODO: delete this logline
|
||||||
|
return newOptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
function setSiteOpts(site, opts){
|
||||||
|
document.getElementById(site + "_url_rules_ebox").value = opts.urlRules[0];
|
||||||
|
document.getElementById(site + "_player_name_ebox").value = opts.player.name;
|
||||||
|
document.getElementById(site + "_pccb_id").checked = opts.player.isClass;
|
||||||
|
if(opts.iframe){
|
||||||
|
document.getElementById(site + "_iframe_name_ebox").value = opts.iframe.name;
|
||||||
|
document.getElementById(site + "_iframe_class_cb").checked = opts.iframe.isClass;
|
||||||
|
}
|
||||||
|
if(opts.autoar_imdb){
|
||||||
|
document.getElementById(site + "_imdbar_cb").checked = opts.autoar_imdb.enabled;
|
||||||
|
if(opts.autoar_imdb.enabled){
|
||||||
|
document.getElementById(site + "_imdbar_title_ebox").value = opts.autoar_imdb.title;
|
||||||
|
document.getElementById(site + "_imdbar_class_cb").value = opts.autoar_imdb.isClass
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
function loadopts(){
|
function loadopts(){
|
||||||
|
|
||||||
getopt("ultrawidify_keybinds", gotopts);
|
getopt("ultrawidify_keybinds", gotopts);
|
||||||
|
Loading…
Reference in New Issue
Block a user