There are 16 previous versions of this script.
Add Syntax Highlighting (this will take a few seconds, probably freezing your browser while it works)
// AuctionSearchKit - "eBay Items on Google Maps" User Script
// Version 3.2
// 2008-11-16
// Copyright (c) 2008, Auction Search Kit. All rights reserved.
// Feedback to auctionsearchkit@gmail.com is welcome.
//
// --------------------------------------------------------------------
//
// This is a Greasemonkey user script.
//
// To install, you need Greasemonkey: http://greasemonkey.mozdev.org/
// Then restart Firefox and revisit this script.
// Under Tools, there will be a new menu item to "Install User Script".
// Accept the default configuration and install.
//
// To uninstall, go to Tools/Manage User Scripts,
// select "eBay Items on Google Maps", and click Uninstall.
//
// --------------------------------------------------------------------
//
// ==UserScript==
// @name eBay Items on Google Maps
// @namespace http://www.auctionsearchkit.co.uk
// @description Adds buttons to the eBay search, results and item pages to show items locations on a Google Map.
// @include http://*.ebay.*
// ==/UserScript==
// Script version. NOTE: This should also be updated at the top.
var version = '3.2';
// Get all the elements in the specified class optionally below the specified node and with the
// specified tag name
function getElementsByINCT(elementId, elementName, className, tagName, node) {
if ((typeof elementId != 'undefined') && (elementId !== null)) {
var idRegExp = new RegExp('^' + elementId + '$', 'i');
} else {
var idRegExp = null;
}
if (typeof elementName == 'undefined') {
elementName = null;
}
if ((typeof className != 'undefined') && (className !== null)) {
var classRegExp = new RegExp('^' + className + '$', 'i');
} else {
var classRegExp = null;
}
if ((typeof tagName == 'undefined') || (tagName === null)) {
tagName = '*';
}
if ((typeof node == 'undefined') || (node === null)) {
node = document;
}
var elementsArray = [];
if (elementName === null) {
var elementsNodeList = node.getElementsByTagName(tagName);
} else {
var elementsNodeList = node.getElementsByName(elementName);
}
for (var eaIndex = 0; eaIndex < elementsNodeList.length; eaIndex++) {
if (((idRegExp === null) ||
(idRegExp.test(elementsNodeList[eaIndex].id) == true)) &&
((elementName === null) ||
(tagName == '*') ||
(elementsNodeList[eaIndex].tagName.toLowerCase() == tagName.toLowerCase())) &&
((classRegExp === null) ||
(classRegExp.test(elementsNodeList[eaIndex].className) == true))) {
elementsArray.push(elementsNodeList[eaIndex]);
}
}
return elementsArray;
}
function getItemsUrl(rootElement) {
if (typeof rootElement == 'undefined') {
rootElement = document;
}
var url = null;
var anchorElementsArray = rootElement.getElementsByTagName('a');
if (anchorElementsArray !== null) {
var regexp = /(&|\?|QQ|%26|Q26|_W0QQ)item(=|Z|%3D|Q3D)([0-9]{9,12})(&|QQ|%26|Q26|$)/i;
var itemsArray = [];
for (var index = 0; index < anchorElementsArray.length; index++) {
var anchorElement = anchorElementsArray[index];
var href = anchorElement.href;
var matches = regexp.exec(href);
if (matches != null) {
itemsArray.push(matches[3]);
}
}
if (itemsArray.length > 0) {
itemsArray.sort();
url = 'http://www.auctionsearchkit.co.uk/search.php?item=';
var prevItem = null;
for (var index = 0; index < itemsArray.length; index++) {
var item = itemsArray[index];
if (item !== prevItem) {
url += item + ',';
prevItem = item;
}
}
url = url.substring(0, url.length - 1);
}
}
return url;
}
var advsearchElement = document.getElementById('AdvSearchId');
var headerSearchFormElements = document.getElementsByName('headerSearch');
if ((headerSearchFormElements != null) &&
(headerSearchFormElements[0] != null) &&
(advsearchElement != null)) {
newElement = document.createElement('span');
newElement.innerHTML = ' <input title="Show the results of this search on a Google Map"'
+ ' type="button" value="Map-Search"'
+ ' onclick="var headerSearchFormElements = document.getElementsByName(\'headerSearch\');'
+ ' if ((headerSearchFormElements != null) && (headerSearchFormElements[0] != null)) {'
+ ' var url = headerSearchFormElements[0].action;'
+ ' if ((url == \'\') || (url[0] == \'?\') || (url[0] == \'/\')) {'
+ ' url = window.location.href + url; '
+ ' }'
+ ' var allCtrls = headerSearchFormElements[0].elements;'
+ ' for (ctrlNum = 0; ctrlNum < allCtrls.length; ctrlNum++) {'
+ ' var ctrl = allCtrls[ctrlNum];'
+ ' var ctrlType = ctrl.type;'
+ ' if (typeof ctrlType != \'undefined\') {'
+ ' ctrlType = ctrlType.toLowerCase();'
+ ' if ((ctrlType != \'submit\') && (ctrlType != \'reset\') &&'
+ ' (ctrlType != \'image\') && (ctrlType != \'button\') &&'
+ ' (((ctrlType != \'checkbox\') && (ctrlType != \'radio\')) || (ctrl.checked != false))) {'
+ ' url += (url.indexOf(\'?\') >= 0) ? \'&\' : \'?\';'
+ ' url += ctrl.name + \'=\' + encodeURIComponent(ctrl.value);'
+ ' }'
+ ' }'
+ ' }'
+ ' window.open(\'http://www.auctionsearchkit.co.uk/search.php?\''
+ ' + url + \'&asksrc=gm' + version + 'p1\'); }">';
advsearchElement.parentNode.insertBefore(newElement, advsearchElement);
}
var submitElementsArray = getElementsByINCT(null, null, 'standard', 'input');
if (submitElementsArray.length <= 0) {
var searchButtonElement = document.getElementById('inlinebutton');
var advSearchFormElements = document.getElementsByName('advsearch_form');
if ((advSearchFormElements != null) &&
(advSearchFormElements[0] != null) &&
(searchButtonElement != null)) {
var newElement = document.createElement('td');
newElement.innerHTML = ' <input title="Show the results of this search on a Google Map"'
+ ' type="button" class="standard" value="Map-Search"'
+ ' onclick="var advSearchFormElements = document.getElementsByName(\'advsearch_form\');'
+ ' if ((advSearchFormElements != null) && (advSearchFormElements[0] != null)) {'
+ ' var url = advSearchFormElements[0].action;'
+ ' if ((url == \'\') || (url[0] == \'?\') || (url[0] == \'/\')) {'
+ ' url = window.location.href + url; '
+ ' }'
+ ' var allCtrls = advSearchFormElements[0].elements;'
+ ' for (ctrlNum = 0; ctrlNum < allCtrls.length; ctrlNum++) {'
+ ' var ctrl = allCtrls[ctrlNum];'
+ ' var ctrlType = ctrl.type;'
+ ' if (typeof ctrlType != \'undefined\') {'
+ ' ctrlType = ctrlType.toLowerCase();'
+ ' if ((ctrlType != \'submit\') && (ctrlType != \'reset\') &&'
+ ' (ctrlType != \'image\') && (ctrlType != \'button\') &&'
+ ' (((ctrlType != \'checkbox\') && (ctrlType != \'radio\')) || (ctrl.checked != false))) {'
+ ' url += (url.indexOf(\'?\') >= 0) ? \'&\' : \'?\';'
+ ' url += ctrl.name + \'=\' + encodeURIComponent(ctrl.value);'
+ ' }'
+ ' }'
+ ' }'
+ ' window.open(\'http://www.auctionsearchkit.co.uk/search.php?\''
+ ' + url + \'&asksrc=gm' + version + 'p2\'); }">';
searchButtonElement.parentNode.insertBefore(newElement, searchButtonElement.nextSibling);
newElement = document.createElement('td');
newElement.innerHTML = '<img width="10" height="1" border="0" '
+ 'xmlns="http://www.w3.org/1999/xhtml" src="http://pics.ebaystatic.com/aw/pics/s.gif"/>'
searchButtonElement.parentNode.insertBefore(newElement, searchButtonElement.nextSibling);
}
} else {
for (submitElementIndex = 0; submitElementIndex < submitElementsArray.length; submitElementIndex++) {
var newElement = document.createElement('span');
newElement.innerHTML = '<input title="Show the results of this search on a Google Map"'
+ ' type="button" value="Map-Search" class="standard"'
+ ' onclick="var advSearchFormElements = document.getElementsByName(\'advsearch_form\');'
+ ' if ((advSearchFormElements != null) && (advSearchFormElements[0] != null)) {'
+ ' var url = advSearchFormElements[0].action;'
+ ' if ((url == \'\') || (url[0] == \'?\') || (url[0] == \'/\')) {'
+ ' url = window.location.href + url; '
+ ' }'
+ ' var allCtrls = advSearchFormElements[0].elements;'
+ ' for (ctrlNum = 0; ctrlNum < allCtrls.length; ctrlNum++) {'
+ ' var ctrl = allCtrls[ctrlNum];'
+ ' var ctrlType = ctrl.type;'
+ ' if (typeof ctrlType != \'undefined\') {'
+ ' ctrlType = ctrlType.toLowerCase();'
+ ' if ((ctrlType != \'submit\') && (ctrlType != \'reset\') &&'
+ ' (ctrlType != \'image\') && (ctrlType != \'button\') &&'
+ ' (((ctrlType != \'checkbox\') && (ctrlType != \'radio\')) || (ctrl.checked != false))) {'
+ ' url += (url.indexOf(\'?\') >= 0) ? \'&\' : \'?\';'
+ ' url += ctrl.name + \'=\' + encodeURIComponent(ctrl.value);'
+ ' }'
+ ' }'
+ ' }'
+ ' window.open(\'http://www.auctionsearchkit.co.uk/search.php?\''
+ ' + url + \'&asksrc=gm' + version + 'p2b\'); }">';
submitElementsArray[submitElementIndex].parentNode.insertBefore(
newElement,
submitElementsArray[submitElementIndex].nextSibling);
}
}
var saveSearchElement = document.getElementById('span_save_search');
if (saveSearchElement == null) {
saveSearchElement = document.getElementById('fpcSaveSearchLink');
}
if (saveSearchElement == null) {
saveSearchElement = document.getElementById('span_save_search');
}
if (saveSearchElement != null) {
var newElement = document.createElement('span');
newElement.innerHTML = '<span class="savesearch"><a class="links" title="Show the results of this search on a Google Map" '
+ ' href="http://www.auctionsearchkit.co.uk/search.php?'
+ window.location.href + '&asksrc=gm' + version + 'p3" target="_blank">Map this search</a> | </span> ';
saveSearchElement.parentNode.insertBefore(newElement, saveSearchElement);
var url = getItemsUrl();
if (url != null) {
newElement = document.createElement('span');
newElement.innerHTML = '<span class="savesearch"><a title="Show all the items on the current page on a Google Map" '
+ ' href="' + url + '&asksrc=gm' + version + 'p4" target="_blank">Map all items on page</a> | </span> ';
saveSearchElement.parentNode.insertBefore(newElement, saveSearchElement);
}
}
var watchingElement = document.getElementById('watching');
if (watchingElement != null) {
var newElement = document.createElement('td');
newElement.align = 'right';
newElement.innerHTML = '<b><a title="Show this item\'s location on a Google Map"'
+ ' href="http://www.auctionsearchkit.co.uk/search.php?'
+ window.location.href
+ '&asksrc=gm' + version + 'p5" target="_blank">Map this item</a></b>';
watchingElement.parentNode.insertBefore(newElement, watchingElement);
}
var bsElement = document.getElementById('bs');
var findElement = document.getElementById('find');
if ((bsElement != null) &&
(findElement != null)) {
newElement = document.createElement('span');
newElement.innerHTML = ' <input title="Show the results of this search on a Google Map"'
+ ' type="button" class="standard" value="Map-Search"'
+ ' onclick="var findElement = document.getElementById(\'find\');'
+ ' if (findElement != null) {'
+ ' var qMarkPos = window.location.href.search(/(\\?|__W0QQ)/i);'
+ ' if (qMarkPos > 0) {'
+ ' var url = window.location.href.substring(0, qMarkPos);'
+ ' } else { '
+ ' var url = \'\';'
+ ' }'
+ ' var allCtrls = findElement.elements;'
+ ' for (ctrlNum = 0; ctrlNum < allCtrls.length; ctrlNum++) {'
+ ' var ctrl = allCtrls[ctrlNum];'
+ ' var ctrlType = ctrl.type;'
+ ' if (typeof ctrlType != \'undefined\') {'
+ ' ctrlType = ctrlType.toLowerCase();'
+ ' if ((ctrlType != \'submit\') && (ctrlType != \'reset\') &&'
+ ' (ctrlType != \'image\') && (ctrlType != \'button\') &&'
+ ' (((ctrlType != \'checkbox\') && (ctrlType != \'radio\')) || (ctrl.checked != false))) {'
+ ' url += (url.indexOf(\'?\') >= 0) ? \'&\' : \'?\';'
+ ' url += ctrl.name + \'=\' + encodeURIComponent(ctrl.value);'
+ ' }'
+ ' }'
+ ' }'
+ ' window.open(\'http://www.auctionsearchkit.co.uk/search.php?\''
+ ' + url + \'&asksrc=gm' + version + 'p6\'); }">';
bsElement.parentNode.insertBefore(newElement, bsElement.nextSibling);
}
var watchButtonElement = document.getElementById('watchLinkMiddle');
if (watchButtonElement != null) {
var newElement = document.createElement('span');
newElement.innerHTML = ' <input class="navigation" title="Show the results of this search on a Google Map"'
+ ' type="button" class="standard" value="Map This Item"'
+ ' onclick="window.open(\'http://www.auctionsearchkit.co.uk/search.php?'
+ window.location.href + '&asksrc=gm' + version + 'p7\');"';
watchButtonElement.parentNode.insertBefore(newElement, watchButtonElement);
}
if (window.location.href.search(/my\.ebay/i) >= 0) {
var titleElementsArray = getElementsByINCT(null, null, 'c_Title', 'td');
for (var index = 0; index < titleElementsArray.length; index++) {
var titleElement = titleElementsArray[index];
var anchorElementsArray = titleElement.getElementsByTagName('a');
if (anchorElementsArray.length == 1) {
var anchorElement = anchorElementsArray[0];
var newElement = document.createElement('span');
newElement.innerHTML = ' [<a title="Show this item on a Google Map" '
+ ' href="http://www.auctionsearchkit.co.uk/search.php?'
+ anchorElement.href
+ '&asksrc=gm' + version + 'p10" target="_blank">Map Item</a>] ';
anchorElement.parentNode.insertBefore(newElement, anchorElement.nextSibling);
}
}
var searchElementsArray = getElementsByINCT(null, null, 'c_SearchName', 'td');
for (var index = 0; index < searchElementsArray.length; index++) {
var titleElement = searchElementsArray[index];
var anchorElementsArray = titleElement.getElementsByTagName('a');
if (anchorElementsArray.length == 1) {
var anchorElement = anchorElementsArray[0];
var newElement = document.createElement('span');
newElement.innerHTML = ' [<a title="Show this item on a Google Map" '
+ ' href="http://www.auctionsearchkit.co.uk/search.php?'
+ anchorElement.href
+ '&asksrc=gm' + version + 'p11" target="_blank">Map Search</a>] ';
anchorElement.parentNode.insertBefore(newElement, anchorElement.nextSibling);
}
}
var pdmColElementsArray = getElementsByINCT(null, null, 'pdm-col', 'ul');
for (var index = 0; index < pdmColElementsArray.length; index++) {
var pdmColElement = pdmColElementsArray[index];
var pdmItemElementsArray = getElementsByINCT(null, null, 'pdm-item', 'li', pdmColElement);
var pdmItemElement = pdmItemElementsArray[0];
var anchorElementsArray = pdmItemElement.getElementsByTagName('a');
if (anchorElementsArray.length == 1) {
var anchorElement = anchorElementsArray[0];
if ((anchorElement.innerHTML != 'Summary') &&
(anchorElement.innerHTML != 'Inbox') &&
(anchorElement.innerHTML.substring(0, 18) != '<span id="editmenu') &&
(anchorElement.innerHTML.substring(0, 17) != '<span id="imgspan') &&
(anchorElement.innerHTML.substring(0, 3) != 'All') &&
(anchorElement.innerHTML.substring(0, 4) != 'Last') &&
(anchorElement.innerHTML.substring(0, 4) != 'Time')) {
var newElement = document.createElement('li');
newElement.className = 'pdm-item';
if (anchorElement.innerHTML == 'Go to search results') {
newElement.innerHTML = '<a title="Show this search on a Google Map" '
+ ' href="http://www.auctionsearchkit.co.uk/search.php?'
+ anchorElement.href
+ '&asksrc=gm' + version + 'p12b" target="_blank">Map this search</a>';
} else {
newElement.innerHTML = '<a title="Show this item on a Google Map" '
+ ' href="http://www.auctionsearchkit.co.uk/search.php?'
+ anchorElement.href
+ '&asksrc=gm' + version + 'p12" target="_blank">Map this item</a>';
}
pdmItemElement.parentNode.insertBefore(newElement, pdmItemElement.nextSibling);
}
}
}
var titleElementsArray = getElementsByINCT('ttl_.*', null, null, 'a');
for (var index = 0; index < titleElementsArray.length; index++) {
var titleElement = titleElementsArray[index];
var newElement = document.createElement('span');
newElement.innerHTML = ' [<a title="Show this item on a Google Map" '
+ ' href="http://www.auctionsearchkit.co.uk/search.php?'
+ titleElement.href
+ '&asksrc=gm' + version + 'p13" target="_blank">Map Item</a>] ';
titleElement.parentNode.insertBefore(newElement, titleElement.nextSibling);
}
}
var sacatElement = document.getElementById('_sacat');
var findingSearchBarFormElement = document.getElementById('findingsearchbarfrm');
if ((findingSearchBarFormElement != null) && (sacatElement != null)) {
var newElement = document.createElement('span');
newElement.innerHTML = ' <input title="Show the results of this search on a Google Map"'
+ ' type="button" value="Map-Search"'
+ ' onclick="var findingSearchBarFormElement = document.getElementById(\'findingsearchbarfrm\');'
+ ' if (findingSearchBarFormElement != null) {'
+ ' var url = findingSearchBarFormElement.action;'
+ ' if ((url == \'\') || (url[0] == \'?\') || (url[0] == \'/\')) {'
+ ' url = window.location.href + url; '
+ ' }'
+ ' var allCtrls = findingSearchBarFormElement.elements;'
+ ' for (ctrlNum = 0; ctrlNum < allCtrls.length; ctrlNum++) {'
+ ' var ctrl = allCtrls[ctrlNum];'
+ ' var ctrlType = ctrl.type;'
+ ' if (typeof ctrlType != \'undefined\') {'
+ ' ctrlType = ctrlType.toLowerCase();'
+ ' if ((ctrlType != \'submit\') && (ctrlType != \'reset\') &&'
+ ' (ctrlType != \'image\') && (ctrlType != \'button\') &&'
+ ' (((ctrlType != \'checkbox\') && (ctrlType != \'radio\')) || (ctrl.checked != false))) {'
+ ' url += (url.indexOf(\'?\') >= 0) ? \'&\' : \'?\';'
+ ' url += ctrl.name + \'=\' + encodeURIComponent(ctrl.value);'
+ ' }'
+ ' }'
+ ' }'
+ ' window.open(\'http://www.auctionsearchkit.co.uk/search.php?\''
+ ' + url + \'&asksrc=gm' + version + 'p14\'); }"';
sacatElement.parentNode.insertBefore(newElement, sacatElement.nextSibling.nextSibling);
}
var deleteBtnElementArray = getElementsByINCT(null, 'SubmitAction.BulkDelete', null, 'input');
if (deleteBtnElementArray !== null) {
btnHtml = ' <input title="Display these items on a Google Map"'
+ ' type="button" value="Map Items"'
+ ' onclick="var containerElement = this.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode;'
+ ' if (containerElement != null) {'
+ ' var anchorElementsArray = containerElement.getElementsByTagName(\'a\');'
+ ' if (anchorElementsArray !== null) {'
+ ' var regexp = new RegExp(\'(&|\\\\?|QQ|%26|Q26|_W0QQ)item(=|Z|%3D|Q3D)([0-9]{9,12})(&|QQ|%26|Q26|$)\', \'i\');'
+ ' var itemsArray = [];'
+ ' for (var index = 0; index < anchorElementsArray.length; index++) {'
+ ' var anchorElement = anchorElementsArray[index];'
+ ' var href = anchorElement.href;'
+ ' var matches = regexp.exec(href);'
+ ' if (matches != null) { '
+ ' itemsArray.push(matches[3]);'
+ ' }'
+ ' }'
+ ' if (itemsArray.length > 0) {'
+ ' itemsArray.sort();'
+ ' url = \'http://www.auctionsearchkit.co.uk/search.php?item=\';'
+ ' var prevItem = null;'
+ ' for (var index = 0; index < itemsArray.length; index++) {'
+ ' var item = itemsArray[index];'
+ ' if (item !== prevItem) {'
+ ' url += item + \',\';'
+ ' prevItem = item;'
+ ' }'
+ ' }'
+ ' url = url.substring(0, url.length - 1);'
+ ' window.open(url + \'&asksrc=gm' + version + 'p15\');'
+ '}'
+ ' }'
+ ' }">';
for (var index = 0; index < deleteBtnElementArray.length; index++) {
var newElement = document.createElement('span');
newElement.innerHTML = btnHtml;
var deleteBtnElement = deleteBtnElementArray[index];
deleteBtnElement.parentNode.insertBefore(newElement, deleteBtnElement.nextSibling);
}
}
var removeBtnElementArray = getElementsByINCT(null, 'SubmitAction.BulkRemove', null, 'input');
if (removeBtnElementArray !== null) {
btnHtml = ' <input title="Display these items on a Google Map"'
+ ' type="button" value="Map Items"'
+ ' onclick="var containerElement = this.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode;'
+ ' if (containerElement != null) {'
+ ' var anchorElementsArray = containerElement.getElementsByTagName(\'a\');'
+ ' if (anchorElementsArray !== null) {'
+ ' var regexp = new RegExp(\'(&|\\\\?|QQ|%26|Q26|_W0QQ)item(=|Z|%3D|Q3D)([0-9]{9,12})(&|QQ|%26|Q26|$)\', \'i\');'
+ ' var itemsArray = [];'
+ ' for (var index = 0; index < anchorElementsArray.length; index++) {'
+ ' var anchorElement = anchorElementsArray[index];'
+ ' var href = anchorElement.href;'
+ ' var matches = regexp.exec(href);'
+ ' if (matches != null) { '
+ ' itemsArray.push(matches[3]);'
+ ' }'
+ ' }'
+ ' if (itemsArray.length > 0) {'
+ ' itemsArray.sort();'
+ ' url = \'http://www.auctionsearchkit.co.uk/search.php?item=\';'
+ ' var prevItem = null;'
+ ' for (var index = 0; index < itemsArray.length; index++) {'
+ ' var item = itemsArray[index];'
+ ' if (item !== prevItem) {'
+ ' url += item + \',\';'
+ ' prevItem = item;'
+ ' }'
+ ' }'
+ ' url = url.substring(0, url.length - 1);'
+ ' window.open(url + \'&asksrc=gm' + version + 'p16\');'
+ '}'
+ ' }'
+ ' }">';
for (var index = 0; index < removeBtnElementArray.length; index++) {
var newElement = document.createElement('span');
newElement.innerHTML = btnHtml;
var removeBtnElement = removeBtnElementArray[index];
removeBtnElement.parentNode.insertBefore(newElement, removeBtnElement.nextSibling);
}
}
var viewItemElementsArray = getElementsByINCT('viewItemId', null, null, 'td');
for (var index = 0; index < viewItemElementsArray.length; index++) {
var viewItemElement = viewItemElementsArray[index];
var anchorElementsArray = viewItemElement.getElementsByTagName('a');
if (anchorElementsArray.length == 1) {
var anchorElement = anchorElementsArray[0];
var newElement = document.createElement('span');
newElement.innerHTML = ' [<a title="Show this item on a Google Map" '
+ ' href="http://www.auctionsearchkit.co.uk/search.php?'
+ anchorElement.href
+ '&asksrc=gm' + version + 'p17" target="_blank">Map Item</a>] ';
anchorElement.parentNode.insertBefore(newElement, anchorElement.nextSibling);
}
}
if (window.location.href.search(/feedback\.ebay/i) >= 0) {
var url = getItemsUrl();
if (url != null) {
var menuLinksElementsArray = getElementsByINCT(null, null, 'menuLayerLinksYukon', 'a');
if (menuLinksElementsArray.length > 0) {
var menuLinksElement = menuLinksElementsArray[0];
var newElement = document.createElement('span');
newElement.innerHTML = '<a class="menuLayerLinksYukon" title="Show all the items on the current page on a Google Map" '
+ ' href="' + url + '&asksrc=gm' + version + 'p18" target="_blank">Map all items on page</a></div></span>';
menuLinksElement.parentNode.insertBefore(newElement, menuLinksElement);
}
var doNextListElementsArray = getElementsByINCT(null, null, 'outline_list dft_blt bullets', 'ul');
for (dnleIndex = 0; dnleIndex < doNextListElementsArray.length; dnleIndex++) {
var doNextListElement = doNextListElementsArray[dnleIndex];
if (doNextListElement.childNodes.length > 0) {
var newElement = document.createElement('li');
newElement.class = 'bullets normal';
newElement.innerHTML = '<span class="listext"><div class="ddl2-content">'
+ '<a title="Show all the items on the current page on a Google Map" '
+ ' href="' + url + '&asksrc=gm' + version + 'p19" target="_blank">Map all items on page</a></div></span>';
doNextListElement.insertBefore(newElement, doNextListElement.childNodes[0]);
}
}
}
}
var watchItemElementsArray = getElementsByINCT('l_WatchItem', null, null, 'a');
if (watchItemElementsArray.length > 0) {
var regexp = /(&|\?|QQ|%26|Q26|_W0QQ)item(=|Z|%3D|Q3D)([0-9]{9,12})(&|QQ|%26|Q26|$)/i;
for (var index = 0; index < watchItemElementsArray.length; index++) {
var watchItemElement = watchItemElementsArray[index];
var href = watchItemElement.href;
var matches = regexp.exec(href);
if (matches != null) {
var newElement = document.createElement('li');
newElement.innerHTML = '<a title="Show this item on a Google Map" '
+ ' href="http://www.auctionsearchkit.co.uk/search.php?item='
+ matches[3]
+ '&asksrc=gm' + version + 'p20" target="_blank">Map this item</a>';
watchItemElement.parentNode.parentNode.insertBefore(newElement, watchItemElement.parentNode);
}
}
}
var searchItemElementsArray = getElementsByINCT('searchBtnAnc', null, 'aBtn-btn', 'span');
if (searchItemElementsArray.length > 0) {
var newElement = document.createElement('td');
newElement.innerHTML = '<input title="Show the results of this search on a Google Map"'
+ ' type="button" value="Map-Search"'
+ ' style="background-color: #0040b2; color: white; font-weight: bold;"'
+ ' onmouseover="this.style.cursor=\'pointer\'" onmouseout="this.style.cursor=\'default\'"'
+ ' onclick="var advSearchFormElements = document.getElementsByName(\'adv_search_from\');'
+ ' if ((advSearchFormElements != null) && (advSearchFormElements[0] != null)) {'
+ ' var url = advSearchFormElements[0].action;'
+ ' if ((url == \'\') || (url[0] == \'?\') || (url[0] == \'/\')) {'
+ ' url = window.location.href + url; '
+ ' }'
+ ' var allCtrls = advSearchFormElements[0].elements;'
+ ' for (ctrlNum = 0; ctrlNum < allCtrls.length; ctrlNum++) {'
+ ' var ctrl = allCtrls[ctrlNum];'
+ ' var ctrlType = ctrl.type;'
+ ' if (typeof ctrlType != \'undefined\') {'
+ ' ctrlType = ctrlType.toLowerCase();'
+ ' if ((ctrlType != \'submit\') && (ctrlType != \'reset\') &&'
+ ' (ctrlType != \'image\') && (ctrlType != \'button\') &&'
+ ' (((ctrlType != \'checkbox\') && (ctrlType != \'radio\')) || (ctrl.checked != false))) {'
+ ' url += (url.indexOf(\'?\') >= 0) ? \'&\' : \'?\';'
+ ' url += ctrl.name + \'=\' + encodeURIComponent(ctrl.value);'
+ ' }'
+ ' }'
+ ' }'
+ ' window.open(\'http://www.auctionsearchkit.co.uk/search.php?\''
+ ' + url + \'&asksrc=gm' + version + 'p21\'); }"> ';
searchItemElementsArray[0].parentNode.parentNode.parentNode.insertBefore(
newElement,
searchItemElementsArray[0].parentNode.parentNode.nextSibling);
}
// Check if there is already an Email Alerts element (e.g. if the "eBay Supercharged Email Alerts"
// script is already installed as well. If there is, do not do anythnig here.
var emailAlertsElement = document.getElementById('email_alerts');
if ((emailAlertsElement == null) && (saveSearchElement != null)) {
var currency = '';
var curElement = document.getElementById('sacur');
if (curElement != null) {
var labelElement = curElement.nextSibling;
if (labelElement != null) {
if (labelElement.innerHTML.substring(0, 16) == 'Items listed in ') {
currency = labelElement.innerHTML.substring(16);
}
}
}
var newElement = document.createElement('span');
newElement.innerHTML =
'<table style="position: fixed;'
+ '_position: absolute;'
+ 'left: 72px;'
+ 'top: 100px;'
+ '_top: expression(eval(document.body.scrollTop + 96));'
+ 'z-index: 99999999999999;'
+ 'border-width: 5px;'
+ 'border-spacing: 5px;'
+ 'border-style: outset;'
+ 'border-color: gray;'
+ 'border-collapse: separate;'
+ 'background-color: white;'
+ 'visibility: hidden;"'
+ ' id="email_alerts">'
+ '<tr>'
+ '<td>'
+ '<b>Email Alerts (using'
+ ' <font color="red">A</font>uction<font color="green">S</font>earch<font color="blue">K</font>it)'
+ '</b><br>'
+ 'Please enter email address to receive alerts when new items match this search.<br>'
+ '(You may also enter a maximum total price for the matching items if required.)'
+ '</td>'
+ '<td align="right" valign="top">'
+ '<img src="http://pics.ebaystatic.com/aw/pics/buttons/btnClose_16x16.gif"'
+ ' onclick="var emailAlertsTable = document.getElementById(\'email_alerts\');'
+ 'if (emailAlertsTable != null) {'
+ 'emailAlertsTable.style.visibility = \'hidden\';'
+ '}"'
+ ' onmouseover="this.style.cursor=\'pointer\'"'
+ ' onmouseout="this.style.cursor=\'default\'" />'
+ '</td>'
+ '</tr>'
+ '<tr>'
+ '<td>'
+ '<table style="border-width: 0px;'
+ 'border-spacing: 5px;'
+ 'border-collapse: separate;">'
+ '<tr>'
+ '<td>'
+ 'Search Title:'
+ '</td>'
+ '<td colspan="2">'
+ '<input type="text" id="search_title" title="Enter a title for this search" size=50 value="'
+ document.title + '"/>'
+ '</td>'
+ '</tr>'
+ '<tr>'
+ '<td>'
+ 'Email Address:'
+ '</td>'
+ '<td colspan="2">'
+ '<input type="text" id="email" title="Email address for receiving alerts" size=50 />'
+ '</td>'
+ '</tr>'
+ '<tr>'
+ '<td>'
+ 'Max Total '
+ (currency != '' ? '(' + currency + ')' : 'Price')
+ ':</td>'
+ '<td>'
+ '<input type="text" id="max_total" title="Maximum total price (optional)" size=10 />'
+ '</td>'
+ '<td align="right">'
+ '<input type="checkbox" id="bin_only"/><font color="red">Buy It Now</font> items only'
+ '</td>'
+ '</tr>'
+ '</table>'
+ '</td>'
+ '</tr>'
+ '<tr>'
+ '<td>'
+ '<input type="button" value="OK"'
+ ' onclick="var emailElement = document.getElementById(\'email\');'
+ 'var searchTitleElement = document.getElementById(\'search_title\');'
+ 'var maxTotalElement = document.getElementById(\'max_total\');'
+ 'var binOnlyElement = document.getElementById(\'bin_only\');'
+ 'if ((emailElement != null) && (maxTotalElement != null) && (binOnlyElement != null)) {'
+ 'var email = escape(emailElement.value.replace(/^\\s+|\\s+$/g, \'\'));'
+ 'var searchTitle = escape(searchTitleElement.value.replace(/^\s+|\s+$/g, \'\'));'
+ 'var maxTotal = maxTotalElement.value.replace(/^\\s+|\\s+$/g, \'\');'
+ 'if (maxTotal != \'\') {'
+ 'maxTotal = parseFloat(maxTotal);'
+ '}'
+ 'var binOnly = binOnlyElement.checked;'
+ 'if (/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$/i.test(email) == false) {'
+ 'alert(\'Not a valid email address?\\nPlease check, correct and retry.\');'
+ '} else if ((maxTotal != \'\') && (isNaN(maxTotal) == true)) {'
+ 'alert(\'Max Total must be a number or blank.\\nPlease check, correct and retry.\');'
+ '} else {'
+ 'window.open(\'http://www.auctionsearchkit.com/startalerts.php?email=\''
+ ' + email + \'&search=\' + encodeURIComponent(window.location.href)'
+ ' + (searchTitle != \'\' ? encodeURIComponent(\'&asktitle=\' + searchTitle) : \'\')'
+ ' + (maxTotal != \'\' ? (binOnly == true ? encodeURIComponent(\'&asksabinprchi=\' + maxTotal) : encodeURIComponent(\'&asksatotprchi=\' + maxTotal)) : \'\')'
+ ' + (binOnly == true ? encodeURIComponent(\'&askbinonly=true\') : \'\')'
+ ' + encodeURIComponent(\'&asksrc=gm' + version + 'p22\')'
+ ', \'_blank\', \'channelmode=yes,directories=no,location=no,menubar=no,resizeable=no,status=no,titlebar=no,toolbar=no,width=400,height=100\');'
+ '}'
+ '}"'
+ '/>'
+ '<input type="button" value="Cancel"'
+ ' onclick="var emailAlertsTable = document.getElementById(\'email_alerts\');'
+ 'if (emailAlertsTable != null) {'
+ 'emailAlertsTable.style.visibility = \'hidden\';'
+ '}"/>'
+ '</td>'
+ '</tr>'
+ '</table>';
saveSearchElement.parentNode.insertBefore(newElement, saveSearchElement);
var newElement2 = document.createElement('span');
newElement2.innerHTML = '<a class="anchor" rel="nofollow" href="javascript:;"'
+ 'title="Receive email alerts when new eBay items match this search."'
+ ' onmouseover="this.style.cursor=\'pointer\'" onmouseout="this.style.cursor=\'default\'"'
+ ' onclick="var emailAlertsTable = document.getElementById(\'email_alerts\');'
+ 'if (emailAlertsTable != null) {'
+ 'emailAlertsTable.style.visibility = \'visible\';'
+ '}'
+ 'return false;">Email Alerts (ASK)</a> | ';
saveSearchElement.parentNode.insertBefore(newElement2, saveSearchElement);
}
