Skip to content

Instantly share code, notes, and snippets.

@dafi
Created February 9, 2011 18:05
Show Gist options
  • Save dafi/818917 to your computer and use it in GitHub Desktop.
Save dafi/818917 to your computer and use it in GitHub Desktop.
Firefox mini blocker
var miniUrlBlocker = {
// Lista delle regular expression contenenti le URL da bloccare
blackList : [/http:\/\/www\.badurl\.com/],
observe:function(subject, topic, data) {
if (topic != "http-on-modify-request") {
return;
}
try {
var httpChannel = subject.QueryInterface(Components.interfaces.nsIHttpChannel);
var URI = httpChannel.URI.spec;
for (var i in this.blackList) {
var re = this.blackList[i];
if (re.test(URI)) {
var isMainDoc = httpChannel.loadFlags
& httpChannel.LOAD_INITIAL_DOCUMENT_URI;
httpChannel.cancel(isMainDoc
? Components.results.NS_ERROR_CONNECTION_REFUSED
: Components.results.NS_ERROR_ABORT);
break;
}
}
} catch(err) {
}
}
}
Components.classes["@mozilla.org/observer-service;1"]
.getService(Components.interfaces.nsIObserverService)
.addObserver(miniUrlBlocker, "http-on-modify-request", false);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment