diff --git a/content/netError.xhtml b/content/netError.xhtml
index 0e2d9cb..9152959 100644
--- a/content/netError.xhtml
+++ b/content/netError.xhtml
@@ -322,6 +322,10 @@
value='msn' label=' &resurrect.msn;'
image='chrome://resurrect/skin/cacheicons/msn.png'
/>
+
diff --git a/content/resurrect-select-mirror.xul b/content/resurrect-select-mirror.xul
index bcad6d4..a8b9c55 100644
--- a/content/resurrect-select-mirror.xul
+++ b/content/resurrect-select-mirror.xul
@@ -48,6 +48,10 @@
value='msn' label=' &resurrect.msn;'
image='chrome://resurrect/skin/cacheicons/msn.png'
/>
+
diff --git a/content/resurrect.js b/content/resurrect.js
index fc31823..e06f0c2 100644
--- a/content/resurrect.js
+++ b/content/resurrect.js
@@ -116,6 +116,7 @@ var resurrect={
selectMirror:function(mirror, ownerDoc, contentDoc, rawUrl) {
var gotoUrl=null;
var encUrl=encodeURIComponent(rawUrl);
+ var xmlUrl=rawUrl.replace('&', '&');
switch (mirror) {
case 'coralcdn':
@@ -149,7 +150,6 @@ var resurrect={
break;
case 'msn':
- var xmlUrl=rawUrl.replace('&', '&');
var soapBody='FD382E93B5ABC456C5E34C238A906CAB2DEEB5D6'+xmlUrl+'en-USOff01All';
var xhr=new XMLHttpRequest();
@@ -165,6 +165,29 @@ var resurrect={
gotoUrl='http://search.msn.com/results.aspx?q='+encUrl;
}
+ break;
+ case 'gigablast':
+ var apiUrl=[
+ 'http://feed.gigablast.com/search',
+ '?q=', encUrl,
+ '&site=', (rawUrl.match(/:\/\/([^/]+)/)[1]),
+ '&n=1&ns=0&raw=9&bq=0&nrt=0'
+ ].join('');
+
+ var xhr=new XMLHttpRequest();
+ xhr.open('GET', apiUrl, false);
+ xhr.send(null);
+
+ try {
+ var docId=xhr.responseXML
+ .getElementsByTagName('docId')[0].textContent;
+ gotoUrl='http://www.gigablast.com/index.php'
+ +'?page=get&ih=1&ibh=1&cas=0&d='
+ +docId;
+ } catch (e) {
+ gotoUrl='http://www.gigablast.com/index.php?q='+encUrl;
+ }
+
break;
default:
return false;
diff --git a/locale/en-US/overlay.dtd b/locale/en-US/overlay.dtd
index 1a35d10..f413ee7 100644
--- a/locale/en-US/overlay.dtd
+++ b/locale/en-US/overlay.dtd
@@ -10,6 +10,7 @@
+
diff --git a/skin/cacheicons/gigablast.png b/skin/cacheicons/gigablast.png
new file mode 100755
index 0000000..48d6eb0
Binary files /dev/null and b/skin/cacheicons/gigablast.png differ