diff options
Diffstat (limited to 'base/content/padlock.js')
-rw-r--r-- | base/content/padlock.js | 234 |
1 files changed, 0 insertions, 234 deletions
diff --git a/base/content/padlock.js b/base/content/padlock.js deleted file mode 100644 index 9c29524..0000000 --- a/base/content/padlock.js +++ /dev/null @@ -1,234 +0,0 @@ -var Cc = Components.classes; -var Ci = Components.interfaces; -var Cu = Components.utils; -Cu.import("resource://gre/modules/XPCOMUtils.jsm"); - -var padlock_PadLock = -{ - QueryInterface: XPCOMUtils.generateQI([Ci.nsIWebProgressListener, - Ci.nsISupportsWeakReference]), - onButtonClick: function(event) { - event.stopPropagation(); - gIdentityHandler.handleMoreInfoClick(event); - }, - onStateChange: function() {}, - onProgressChange: function() {}, - onLocationChange: function() {}, - onStatusChange: function() {}, - onSecurityChange: function(aCallerWebProgress, aRequestWithState, aState) { - // aState is defined as a bitmask that may be extended in the future. - // We filter out any unknown bits before testing for known values. - const wpl = Ci.nsIWebProgressListener; - const wpl_security_bits = wpl.STATE_IS_SECURE | - wpl.STATE_IS_BROKEN | - wpl.STATE_IS_INSECURE | - wpl.STATE_IDENTITY_EV_TOPLEVEL | - wpl.STATE_SECURE_HIGH | - wpl.STATE_SECURE_MED | - wpl.STATE_SECURE_LOW; - var level; - var is_insecure; - var highlight_urlbar = false; - - switch (aState & wpl_security_bits) { - case wpl.STATE_IS_SECURE | wpl.STATE_SECURE_HIGH | wpl.STATE_IDENTITY_EV_TOPLEVEL: - level = "ev"; - is_insecure = ""; - highlight_urlbar = true; - break; - case wpl.STATE_IS_SECURE | wpl.STATE_SECURE_HIGH: - level = "high"; - is_insecure = ""; - highlight_urlbar = true; - break; - case wpl.STATE_IS_SECURE | wpl.STATE_SECURE_MED: - case wpl.STATE_IS_SECURE | wpl.STATE_SECURE_LOW: - level = "low"; - is_insecure = "insecure"; - break; - case wpl.STATE_IS_BROKEN | wpl.STATE_SECURE_LOW: - level = "mixed"; - is_insecure = "insecure"; - highlight_urlbar = true; - break; - case wpl.STATE_IS_BROKEN: - level = "broken"; - is_insecure = "insecure"; - highlight_urlbar = true; - break; - default: // should not be reached - level = null; - is_insecure = "insecure"; - } - - try { - var proto = gBrowser.contentWindow.location.protocol; - if (proto == "about:" || proto == "chrome:" || proto == "file:" ) { - // do not warn when using local protocols - is_insecure = false; - } - } - catch (ex) {} - - let ub = document.getElementById("urlbar"); - if (ub) { // Only call if URL bar is present. - if (highlight_urlbar) { - ub.setAttribute("security_level", level); - } else { - ub.removeAttribute("security_level"); - } - } - - try { // URL bar may be hidden - padlock_PadLock.setPadlockLevel("padlock-ib", level); - padlock_PadLock.setPadlockLevel("padlock-ib-left", level); - padlock_PadLock.setPadlockLevel("padlock-ub-right", level); - } catch(e) {} - padlock_PadLock.setPadlockLevel("padlock-sb", level); - padlock_PadLock.setPadlockLevel("padlock-tab", level); - }, - setPadlockLevel: function(item, level) { - let secbut = document.getElementById(item); - var sectooltip = ""; - - if (level) { - secbut.setAttribute("level", level); - secbut.hidden = false; - } else { - secbut.hidden = true; - secbut.removeAttribute("level"); - } - - switch (level) { - case "ev": - sectooltip = "Extended Validated"; - break; - case "high": - sectooltip = "Secure"; - break; - case "low": - sectooltip = "Weak security"; - break; - case "mixed": - sectooltip = "Mixed mode (partially encrypted)"; - break; - case "broken": - sectooltip = "Not secure"; - break; - default: - sectooltip = ""; - } - secbut.setAttribute("tooltiptext", sectooltip); - }, - prefbranch : null, - onLoad: function() { - gBrowser.addProgressListener(padlock_PadLock); - - var prefService = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService); - padlock_PadLock.prefbranch = prefService.getBranch("browser.padlock."); - padlock_PadLock.prefbranch.QueryInterface(Components.interfaces.nsIPrefBranch2); - padlock_PadLock.usePrefs(); - padlock_PadLock.prefbranch.addObserver("", padlock_PadLock, false); - }, - onUnLoad: function() { - padlock_PadLock.prefbranch.removeObserver("", padlock_PadLock); - }, - observe: function(subject, topic, data) - { - if (topic != "nsPref:changed") - return; - if (data != "style" && data != "urlbar_background" && data != "shown") - return; - padlock_PadLock.usePrefs(); - }, - usePrefs: function() { - var prefval = padlock_PadLock.prefbranch.getIntPref("style"); - var position; - var padstyle; - if (prefval == 2) { - position = "ib-left"; - padstyle = "modern"; - } - else if (prefval == 3) { - position = "ub-right"; - padstyle = "modern"; - } - else if (prefval == 4) { - position = "statbar"; - padstyle = "modern"; - } - else if (prefval == 5) { - position = "tabs-bar"; - padstyle = "modern"; - } - else if (prefval == 6) { - position = "ib-trans-bg"; - padstyle = "classic"; - } - else if (prefval == 7) { - position = "ib-left"; - padstyle = "classic"; - } - else if (prefval == 8) { - position = "ub-right"; - padstyle = "classic"; - } - else if (prefval == 9) { - position = "statbar"; - padstyle = "classic"; - } - else if (prefval == 10) { - position = "tabs-bar"; - padstyle = "classic"; - } - else { // 1 or anything else_ default - position = "ib-trans-bg"; - padstyle = "modern"; - } - - var colshow; - var colprefval = padlock_PadLock.prefbranch.getIntPref("urlbar_background"); - switch (colprefval) { - case 3: - colshow = "all"; - break; - case 2: - colshow = "secure-mixed"; - break; - case 1: - colshow = "secure-only"; - break; - default: - colshow = ""; // 0 or anything else: no shading - } - try { // URL bar may be hidden - document.getElementById("urlbar").setAttribute("https_color", colshow); - } catch(e) {} - - var lockenabled = padlock_PadLock.prefbranch.getBoolPref("shown"); - var padshow = ""; - if (lockenabled) { - padshow = position; - } - - try { // URL bar may be hidden - document.getElementById("padlock-ib").setAttribute("padshow", padshow); - document.getElementById("padlock-ib-left").setAttribute("padshow", padshow); - document.getElementById("padlock-ub-right").setAttribute("padshow", padshow); - } catch(e) {} - document.getElementById("padlock-sb").setAttribute("padshow", padshow); - document.getElementById("padlock-tab").setAttribute("padshow", padshow); - - try { // URL bar may be hidden - document.getElementById("padlock-ib").setAttribute("padstyle", padstyle); - document.getElementById("padlock-ib-left").setAttribute("padstyle", padstyle); - document.getElementById("padlock-ub-right").setAttribute("padstyle", padstyle); - } catch(e) {} - document.getElementById("padlock-sb").setAttribute("padstyle", padstyle); - document.getElementById("padlock-tab").setAttribute("padstyle", padstyle); - - } -}; - -window.addEventListener("load", padlock_PadLock.onLoad, false ); -window.addEventListener("unload", padlock_PadLock.onUnLoad, false ); |