by barbaz » Tue Jul 04, 2017 10:01 pm
That dev has a history of writing addons that mess with NoScript internals. So I did some digging and found this code -
Code: Select all
s3gt.utils.check_noscript = function(win, domain, is_confirm) {
var is_change_rule = false;
//-----------------------------------------------------------------------------------
// check NoScript (Giorgio Maone <g.maone@informaction.com>)
// https://addons.mozilla.org/ru/firefox/addon/noscript/?src=ss
//-----------------------------------------------------------------------------------
try {
if ("noscriptOverlay" in window) {
var confirm_res = true;
//----------------------------------------------------------------------
// it's enabled, which happens also if just domain is whitelisted
//----------------------------------------------------------------------
if (noscriptOverlay.ns.isJSEnabled(domain)) {
// good!
}
else {
if (is_confirm) {
var confirm_txt = s3gt.utils.get_string('s3gt.confirm.translate.full.page.noscript');
confirm_txt = confirm_txt.replace("DOMAIN", '"' + domain + '"');
confirm_res = confirm(confirm_txt);
}
if (confirm_res) {
//----------------------------------------------------------
// temporarily added site in NoScript-White-List
//----------------------------------------------------------
noscriptOverlay.ns.setTemp(domain, true);
noscriptOverlay.ns.setJSEnabled(domain, true);
is_change_rule = true;
}
}
//----------------------------------------------------------------------
//-- temporarily added: translate.googleapis.com, translate.google.com, translate.google.cn
//----------------------------------------------------------------------
if (confirm_res) {
var domain_list = ['translate.googleapis.com', 'translate.google.com', 'translate.google.cn'];
for (var d=0; d<domain_list.length; d++) {
if (! noscriptOverlay.ns.isJSEnabled(domain_list[d])) {
noscriptOverlay.ns.setTemp(domain_list[d], true);
noscriptOverlay.ns.setJSEnabled(domain_list[d], true);
is_change_rule = true;
}
}
}
if (is_change_rule) {
noscriptOverlay.ns.quickReload(win);
}
}
} catch(e) {
}
return is_change_rule;
}
At least this one prompts explicitly before touching the NoScript permissions.
Looks like you need to Temp-Allow the top-level site as well as Allow some google translate domains.
That dev has a history of writing addons that mess with NoScript internals. So I did some digging and found this code -
[code]s3gt.utils.check_noscript = function(win, domain, is_confirm) {
var is_change_rule = false;
//-----------------------------------------------------------------------------------
// check NoScript (Giorgio Maone <g.maone@informaction.com>)
// https://addons.mozilla.org/ru/firefox/addon/noscript/?src=ss
//-----------------------------------------------------------------------------------
try {
if ("noscriptOverlay" in window) {
var confirm_res = true;
//----------------------------------------------------------------------
// it's enabled, which happens also if just domain is whitelisted
//----------------------------------------------------------------------
if (noscriptOverlay.ns.isJSEnabled(domain)) {
// good!
}
else {
if (is_confirm) {
var confirm_txt = s3gt.utils.get_string('s3gt.confirm.translate.full.page.noscript');
confirm_txt = confirm_txt.replace("DOMAIN", '"' + domain + '"');
confirm_res = confirm(confirm_txt);
}
if (confirm_res) {
//----------------------------------------------------------
// temporarily added site in NoScript-White-List
//----------------------------------------------------------
noscriptOverlay.ns.setTemp(domain, true);
noscriptOverlay.ns.setJSEnabled(domain, true);
is_change_rule = true;
}
}
//----------------------------------------------------------------------
//-- temporarily added: translate.googleapis.com, translate.google.com, translate.google.cn
//----------------------------------------------------------------------
if (confirm_res) {
var domain_list = ['translate.googleapis.com', 'translate.google.com', 'translate.google.cn'];
for (var d=0; d<domain_list.length; d++) {
if (! noscriptOverlay.ns.isJSEnabled(domain_list[d])) {
noscriptOverlay.ns.setTemp(domain_list[d], true);
noscriptOverlay.ns.setJSEnabled(domain_list[d], true);
is_change_rule = true;
}
}
}
if (is_change_rule) {
noscriptOverlay.ns.quickReload(win);
}
}
} catch(e) {
}
return is_change_rule;
}[/code]
At least this one prompts explicitly before touching the NoScript permissions. [img]http://i.psyche.me/good.gif[/img]
Looks like you need to Temp-Allow the top-level site as well as Allow some google translate domains.