From f15173c12214d9fdb06e86d15dc9ef4c3bd3bc0b Mon Sep 17 00:00:00 2001 From: mcolonna Date: Sat, 4 May 2024 11:09:12 +0200 Subject: [PATCH] release: v3.0 (v3.0.1 on Firefox) --- .gitignore | 1 + background.js | 19 ++++ content.js | 130 ++++++++++++++++++++++++++++ icon48.png | Bin 0 -> 2642 bytes icon96.png | Bin 0 -> 5824 bytes manifest.chrome.json | 32 +++++++ manifest.firefox.json | 34 ++++++++ manifest.firefox.v3.json | 37 ++++++++ manifest.json | 34 ++++++++ missing_permissions/index.html | 57 ++++++++++++ missing_permissions/script.js | 31 +++++++ missing_permissions/zy_awaiting.png | Bin 0 -> 7485 bytes missing_permissions/zy_lezgo.png | Bin 0 -> 8121 bytes package-lock.json | 47 ++++++++++ package.json | 5 ++ permissions.js | 13 +++ 16 files changed, 440 insertions(+) create mode 100644 .gitignore create mode 100644 background.js create mode 100644 content.js create mode 100644 icon48.png create mode 100644 icon96.png create mode 100644 manifest.chrome.json create mode 100644 manifest.firefox.json create mode 100644 manifest.firefox.v3.json create mode 100644 manifest.json create mode 100644 missing_permissions/index.html create mode 100644 missing_permissions/script.js create mode 100644 missing_permissions/zy_awaiting.png create mode 100644 missing_permissions/zy_lezgo.png create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 permissions.js diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..198748e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/local/ diff --git a/background.js b/background.js new file mode 100644 index 0000000..948ed98 --- /dev/null +++ b/background.js @@ -0,0 +1,19 @@ +"use strict"; + +if (typeof hasPermissions == 'undefined') + self.importScripts("permissions.js"); + +if (chrome) + var browser = chrome; +if (!browser) + throw Error("wtf"); + +function checkPermissions() { + hasPermissions(browser).then((hasPerm) => { + if (!hasPerm) + browser.tabs.create({url: "/missing_permissions/index.html", active: true}); + }); +} + +checkPermissions(); +browser.permissions.onRemoved.addListener(checkPermissions); diff --git a/content.js b/content.js new file mode 100644 index 0000000..52e0d83 --- /dev/null +++ b/content.js @@ -0,0 +1,130 @@ +"use strict"; + +if (chrome) + window.browser = chrome; +if (!browser) + throw Error("wtf"); + +// REMOVE THE BUTTON IF IT ALREADY EXISTS +{ + let buttonEl = document.getElementById("fdtransparentbutton"); + if(buttonEl) + buttonEl.parentNode.removeChild(buttonEl); +} + +if([...document.getElementsByClassName("principal")].length > 0) { + class FDTransparent { + static createButton() { + // STYLESHEET + var styleText = ` + img#fdtransparentbutton { + position: fixed; + bottom: 20px; + left: 20px; + z-index: 9; + width: 48px; + height: 48px; + + border-radius: 50%; + filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.22)); + + background: #fff; + + transition: background 0.5s; + } + + img#fdtransparentbutton.on { + background: none; + } + + @media screen and (min-width: 1201px) { + img#fdtransparentbutton { + left: 325px; + } + } + + .principal.post + { + box-shadow: none !important; + } + + .principal { + transition: background-color 0.5s, box-shadow 0.5s; + box-shadow: none !important; + filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.22)); + } + + .principal.transparent { + background-color: #0000; + } + `; + var styleEl = document.createElement("style"); + if (styleEl.styleSheet) { + styleEl.styleSheet.cssText = styleText; + } else { + styleEl.appendChild(document.createTextNode(styleText)); + } + document.head.appendChild(styleEl); + // CREATE BUTTON + FDTransparent.button = document.createElement('img'); + FDTransparent.button.id = "fdtransparentbutton"; + FDTransparent.button.src = browser.runtime.getURL('icon96.png'); + // button click + FDTransparent.button.addEventListener("click", () => { + FDTransparent.isOn = !FDTransparent.isOn; + FDTransparent.setTransparent(FDTransparent.isOn); + }); + // append button + document.body.appendChild(FDTransparent.button); + // SYNC TRANSPARENCY FROM STORAGE + FDTransparent.isTransparent() + .then((v) => + { + FDTransparent.isOn = v; + FDTransparent.setTransparent(FDTransparent.isOn); + } + ); + } + + static changeButtonDisplay(value) { + if(value) + FDTransparent.button.className = "on"; + else + FDTransparent.button.className = ""; + } + + static isOn = false; + + static isTransparent() { + return new Promise((resolve, reject) => { + browser.storage.local.get("transparent") + .then((v) => { + resolve(Boolean(v.transparent)); + }); + }); + } + + static setTransparent(value) { + // CHANGE SAVED VALUE + browser.storage.local.set({"transparent": value }); + + // CHANGE TRANSPARENCY + [...document.getElementsByClassName("principal")].forEach((el) => { + if (value) + el.classList.add("transparent"); + else + el.classList.remove("transparent"); + }); + + // CHANGE BUTTON + FDTransparent.changeButtonDisplay(value); + } + } + + FDTransparent.createButton(); + + console.info('Extension FDTransparent chargée !'); +} +else { + console.info('L\'extension FDTransparent est inutile sur cette page.'); +} diff --git a/icon48.png b/icon48.png new file mode 100644 index 0000000000000000000000000000000000000000..1230c5bda546088a584803a330db672cf613184e GIT binary patch literal 2642 zcmV-Y3a#~tP)5erQn~qa=eBINa>Rnj%s=u%1XipiA4h=2B5D$clGZ)S`4Xq^3nT*;`Cyf3BN$_dMnylUUoaS~t%gJi8lq5*wng|*r2!3wMzE$|2v&$t zi9E{77CWt-cI-T8XF79d?(5up&-V8}_nzj?%sF???bLp;EBViUt-a6sueJ6*``j_R zAQwFF|LuX)IikOqbv^*D06kzOxYs!wESv2}oAvo-uhI89cnTcsNLiI~!P2(i6>1Cg zQG5^#f&)OtPF2i0Dc_bcyH;>C=o_PW-g9<{@>#GOGDXVsB8u3R;3n{v`JPyE*5!GjBjI?mSH((Ym7ZY+YBO~r`!#R_e(3OBqe~8>^|@q2rZfS86POh?+b&($0)uN495IvM&MfJ=(x#8vEzD^Xbs*TV6+l;{FsO#0g zKpAHfPihTZU&Z*HR7WuUTNv9-UHd^%2~E+S?}5ZEXs2~DT}sDwAX36vvj^p>W#Gi@ zfmYkjMtI?AxlGEpt(f|ETHm03G0@8`N<4Hv#K2|2Oe)$BkrGEh%E!QTb;#bk{9Mk90A322RJ!rM#~)@S#S@Ye-7ifV8tp{ zn6;3NzxYBWk50qN)|;fjrOTCMY7W%GIr>a8!UCFD>&UZ=I7 zSB|b(A@rhC8odt$`ykxuYM&9!{GSP7muN5HiPIRQ(@2+2`9_CZj{Yf1WvZ@L>eD7J z*F851#ZlS;TQQp>Q3OJ_@B&(}@EK6McKh~QjCu`AR#7T5|4pegq5wp!mNryoNIgY@ zQ((qGy%9y=y^LKAeiJpJ#XhZH4}BJc_tMNk;=@3XSxTRbR|FIZ)fF~Hqe@N3?_WVl z>>@XD6ajsxEC=U8>Yft^8RnA`o3TWvqS7c`w@QAljmz*_H1hOJF#ZDVlCt46m?QNF z&FEKOWWLSNO5Dg`*(P30KV!yXDEtb;4%cVPnBp5bWpB`Wn7&~MZKAvsXkW-AS?iHZ|DjYQDoUY9iAteJ#RYU? zjSLS(cYr%Kp=%hVQPdA*Gbck znV*Bm&l%M(6}M3ypkEPaqy8d&hpp`Ay-EcpF%n1Mo#@A16=Rl)>z4Ot6OgX@b?aPP zCsCqjGn$9MOIC5)7^Ba(?C7ZJV2PAC0{T@zB+h}bkAs|UTuM1Ege3F}#Wykh1U+|S zJeNOT`Jc9_DH}R5Xyc8u8|!fdUO{PnqvF}u`3#5^Jzhkr{9TW^8zAvIUhlU`b+HwS z&W4BV`7dk;?i-P-#1Z%l+CAWg$XUrdmH!ZkN}<_{C}Tfrl}fvn%bw+PSsNMlZFtz8 z8Hx3OZM)B2No~D7?gvYOTy$1~+3eOf)@rtd#@fwyd#zO7Vr6fc74j=BJLTKZkd5zq z)}CzkaBcZG`4SP-4=WO7pzYXKJCVfUy0$OjN z4%H>Pt*!-o)QFN|!SCqm%5;`fX)Bf3td$ypvRB3UPEw}IhOGu0_TuiidVG-y2#WtOr z#Oqlb8}pA0ov>|p|0GCNHhpqYPA^1synG3K1UwCX4|K%n10b_?yREq4)BGbZmFk}6 zvp3JjRT1-o%{t*vPfpm&W2fxVS6{Wq|F|pu!p2&$vQPry!g`JBTY3cag71R%)vGPL z^LO@H&$A`mY5ZKyirGnfqfoRbkM!Fsd;Vnmj~rdte<;rt0qi{^dOLLi*VAMEmv6C7 zZj^SKpM@@3V#V!SgNy!*R68^CLgj)7&c6r#3-Sx|wuZVckN^Mx07*qoM6N<$g8g6y AxBvhE literal 0 HcmV?d00001 diff --git a/icon96.png b/icon96.png new file mode 100644 index 0000000000000000000000000000000000000000..37f5687cfe8306bcfd7b083f23160812fb316101 GIT binary patch literal 5824 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 KMNUMnLSTZlzY&lC literal 0 HcmV?d00001 diff --git a/manifest.chrome.json b/manifest.chrome.json new file mode 100644 index 0000000..934cef3 --- /dev/null +++ b/manifest.chrome.json @@ -0,0 +1,32 @@ +{ + "manifest_version": 3, + "name": "FD transparent", + "version": "3.0", + + "description": "Ajoute un bouton pour activer et désactiver la transparence des images sur le Forum Dessiné (https://forum-dessine.fr).", + + "icons": { + "48": "icon48.png", + "96": "icon96.png" + }, + + "content_scripts": [ + { + "matches": ["*://*.forum-dessine.fr/*"], + "js": ["content.js"] + } + ], + + "background": { + "service_worker": "background.js" + }, + + "permissions": [ + "storage" + ], + + "web_accessible_resources": [{ + "resources": ["*"], + "matches": ["*://*.forum-dessine.fr/*"] + }] +} diff --git a/manifest.firefox.json b/manifest.firefox.json new file mode 100644 index 0000000..668b91f --- /dev/null +++ b/manifest.firefox.json @@ -0,0 +1,34 @@ +{ + "manifest_version": 2, + "name": "FD transparent", + "version": "3.0.1", + + "description": "Ajoute un bouton pour activer et désactiver la transparence des images sur le Forum Dessiné (https://forum-dessine.fr).", + + "icons": { + "48": "icon48.png", + "96": "icon96.png" + }, + + "content_scripts": [ + { + "matches": ["*://*.forum-dessine.fr/*"], + "js": ["content.js"] + } + ], + + "background": { + "scripts": ["permissions.js", "background.js"] + }, + + "permissions": [ + "storage", + "*://*.forum-dessine.fr/*" + ], + + "browser_specific_settings": { + "gecko": { + "id": "{9bf41bb9-68ed-49b8-9866-5caf0725e153}" + } + } +} diff --git a/manifest.firefox.v3.json b/manifest.firefox.v3.json new file mode 100644 index 0000000..a1d469d --- /dev/null +++ b/manifest.firefox.v3.json @@ -0,0 +1,37 @@ +{ + "manifest_version": 3, + "name": "FD transparent", + "version": "3.0", + + "description": "Ajoute un bouton pour activer et désactiver la transparence des images sur le Forum Dessiné (https://forum-dessine.fr).", + + "icons": { + "48": "icon48.png", + "96": "icon96.png" + }, + + "content_scripts": [ + { + "matches": ["*://*.forum-dessine.fr/*"], + "js": ["content.js"] + } + ], + + "background": { + "scripts": ["permissions.js", "background.js"] + }, + + "permissions": [ + "storage" + ], + + "web_accessible_resources": [{ + "resources": ["*"], + "matches": ["*://*.forum-dessine.fr/*"] + }], + "browser_specific_settings": { + "gecko": { + "id": "{9bf41bb9-68ed-49b8-9866-5caf0725e153}" + } + } +} diff --git a/manifest.json b/manifest.json new file mode 100644 index 0000000..668b91f --- /dev/null +++ b/manifest.json @@ -0,0 +1,34 @@ +{ + "manifest_version": 2, + "name": "FD transparent", + "version": "3.0.1", + + "description": "Ajoute un bouton pour activer et désactiver la transparence des images sur le Forum Dessiné (https://forum-dessine.fr).", + + "icons": { + "48": "icon48.png", + "96": "icon96.png" + }, + + "content_scripts": [ + { + "matches": ["*://*.forum-dessine.fr/*"], + "js": ["content.js"] + } + ], + + "background": { + "scripts": ["permissions.js", "background.js"] + }, + + "permissions": [ + "storage", + "*://*.forum-dessine.fr/*" + ], + + "browser_specific_settings": { + "gecko": { + "id": "{9bf41bb9-68ed-49b8-9866-5caf0725e153}" + } + } +} diff --git a/missing_permissions/index.html b/missing_permissions/index.html new file mode 100644 index 0000000..a7fc9ef --- /dev/null +++ b/missing_permissions/index.html @@ -0,0 +1,57 @@ + + + + + FD Transparent - Permissions Manquantes + + + +
+

+ ... +

+

+ + <- bouton moche +

+
+ + + + diff --git a/missing_permissions/script.js b/missing_permissions/script.js new file mode 100644 index 0000000..f6cfc87 --- /dev/null +++ b/missing_permissions/script.js @@ -0,0 +1,31 @@ +{ + function hideBouton() { + document.getElementById('boutonbox').style.display = "none"; + } + + function showBouton() { + document.getElementById('boutonbox').style.display = "block"; + } + + document.getElementById('bouton').addEventListener("click", () => { + askPermissions(browser).then((hello) => { + updateMsg(); + }); + }); + + function updateMsg() { + hasPermissions(browser).then((hasPerm) => { + let txt; + if (hasPerm) { + hideBouton(); + txt = "permission accordée ! "; + } + else { + showBouton(); + txt = " pour que FD Transparent puisse fonctionner, il faut que vous permettiez à l'extension l'accès aux pages du Forum Dessiné en appuyant sur le bouton moche"; + } + document.getElementById("msg").innerHTML = txt; + }); + } + updateMsg(); +} diff --git a/missing_permissions/zy_awaiting.png b/missing_permissions/zy_awaiting.png new file mode 100644 index 0000000000000000000000000000000000000000..d30db059993f9152ef5ee0057e710c26ea86175f GIT binary patch literal 7485 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 Hu0mjf9N3AH literal 0 HcmV?d00001 diff --git a/missing_permissions/zy_lezgo.png b/missing_permissions/zy_lezgo.png new file mode 100644 index 0000000000000000000000000000000000000000..d79020ff3f24869a273818186aaa702d5d5292e9 GIT binary patch literal 8121 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 TZ6}zs00000NkvXXu0mjfV@JmV literal 0 HcmV?d00001 diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..4aaafce --- /dev/null +++ b/package-lock.json @@ -0,0 +1,47 @@ +{ + "name": "fd_transparent", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "dependencies": { + "node": "^22.1.0" + } + }, + "node_modules/node": { + "version": "22.1.0", + "resolved": "https://registry.npmjs.org/node/-/node-22.1.0.tgz", + "integrity": "sha512-eeRKoLhxcx3DEzsdU1XxbJlDfVX2rvobe24YT9+jzXa5heKMCadyWjYwAEgevi1+r4WU/weKr5DUoNJbI5OKmw==", + "hasInstallScript": true, + "dependencies": { + "node-bin-setup": "^1.0.0" + }, + "bin": { + "node": "bin/node" + }, + "engines": { + "npm": ">=5.0.0" + } + }, + "node_modules/node-bin-setup": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/node-bin-setup/-/node-bin-setup-1.1.3.tgz", + "integrity": "sha512-opgw9iSCAzT2+6wJOETCpeRYAQxSopqQ2z+N6BXwIMsQQ7Zj5M8MaafQY8JMlolRR6R1UXg2WmhKp0p9lSOivg==" + } + }, + "dependencies": { + "node": { + "version": "22.1.0", + "resolved": "https://registry.npmjs.org/node/-/node-22.1.0.tgz", + "integrity": "sha512-eeRKoLhxcx3DEzsdU1XxbJlDfVX2rvobe24YT9+jzXa5heKMCadyWjYwAEgevi1+r4WU/weKr5DUoNJbI5OKmw==", + "requires": { + "node-bin-setup": "^1.0.0" + } + }, + "node-bin-setup": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/node-bin-setup/-/node-bin-setup-1.1.3.tgz", + "integrity": "sha512-opgw9iSCAzT2+6wJOETCpeRYAQxSopqQ2z+N6BXwIMsQQ7Zj5M8MaafQY8JMlolRR6R1UXg2WmhKp0p9lSOivg==" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..f7a3378 --- /dev/null +++ b/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "node": "^22.1.0" + } +} diff --git a/permissions.js b/permissions.js new file mode 100644 index 0000000..f77cad4 --- /dev/null +++ b/permissions.js @@ -0,0 +1,13 @@ +"use strict"; + +const REQUIRED_PERMISSIONS = {origins: ["*://*.forum-dessine.fr/*"]}; + +function hasPermissions(browser) { + return new Promise((success) => { + browser.permissions.contains(REQUIRED_PERMISSIONS, success); + }); +} + +function askPermissions(browser) { + return browser.permissions.request(REQUIRED_PERMISSIONS); +}