// ==UserScript==
// @name          Treemo Global Tags
// @description	  Adds a direct link to a global search for any tag or location on Treemo
// @namespace     http://www.rhyley.org/gm/
// @include       http://*.treemo.com/*
// ==/UserScript==

var tagImg = '<img alt="tag" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAABGdBTUEAAK/INwWK6QAAABl0 RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHySURBVHjaYrx+/foDDg4OfgYg +P//P8OPHz8Yvn792vTnz5/+379/M6BjgABiYWdnF5GRkeF+9+4dAw8PDwMbGxvDo4cP+16+ egUyoJ8BDQAEEBMjI+NvkOIbN24037t37zwLMyODvJwcg6iIcO9/BoYCkK3IACCAmP7+/Qs2 WUREJJGXi0Pq5df/DPtfsjIISskzSomJ9AOVFyJrAgggll+/frEB/cCgpaUl8+LrX4atj5kZ nn9lYPj0m53BWU6ZAeiXvodPnsGdBxBATJ8/f+5+8OABw/+/fxjuf2FieAZULMnNwPDkCwPD 3pfsDBKKGgwy0pK9TExMBUD1rAABxJycnHzg/fv3QKf9sVOR4Gf8x8DI8BiomJeNkeHlNwaG t7+ZGcwVBBm/fPrg8enz5/MAAcQC9DQDEDc8ePiI8d/fv7UOyiogixkuvGUEkv8ZeJn/MXz8 8B4Y1N8u//v37w5AALGA3AXU8B+k6c79B//+/P1bb6+qzvCfkQmogZFBl/klw+VLly+8+/Ax gJmZ+SFAALHAfA/U8A8Yxg2379wD2+Soocn4Fhjcly9evvL2/YdQkGKQOoAAYkEOY5DzmJgY 62/fvff/85ev9V++frkMNDkQ6OG7IDkQAAggFvSYhEq0Pnr8+CGQfRykGFkeIMAA+xfXZuib BYcAAAAASUVORK5CYII=" width="12" height="12" border="0">';

allTags = document.evaluate("//*[@id='tags']/a[@href]",document,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);
allLocs = document.evaluate("//*[@id='locs']/a[@href]",document,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);

for (i=0;i<allTags.snapshotLength;i++) {
	thisTag = allTags.snapshotItem(i);
	if (thisTag.className.indexOf("deletetag") < 0) {
		a = document.createElement('a');
		a.setAttribute('href', "http://www.treemo.com/tags/" + encodeURIComponent(thisTag.innerHTML) + "/");
		a.setAttribute('title', "view everyone's items tagged " + thisTag.innerHTML);
		a.innerHTML = tagImg;
		thisTag.parentNode.insertBefore(a, thisTag);
		thisTag.parentNode.insertBefore(document.createTextNode(" "), thisTag);
	}
}

for (i=0;i<allLocs.snapshotLength;i++) {
	thisLoc = allLocs.snapshotItem(i);
	if (thisLoc.className.indexOf("deletetag") < 0) {
		a = document.createElement('a');
		a.setAttribute('href', "http://www.treemo.com/locations/" + encodeURIComponent(thisLoc.innerHTML) + "/");
		a.setAttribute('title', "view everyone's items with location " + thisLoc.innerHTML);
		a.innerHTML = tagImg;
		thisLoc.parentNode.insertBefore(a, thisLoc);
		thisLoc.parentNode.insertBefore(document.createTextNode(" "), thisLoc);
	}
}