// ==UserScript==
// @name           Urban dictionary Lookup - PopupFix
// @namespace      DotNet Hero
// @description    Sets link and paging dropdown to work with popup
// @require        http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js
// @author  Vipl Limbachiya (http://vipullimbachiya.com)
// @include        http://www.urbandictionary.com/tooltip.php?*
// ==/UserScript==

$(document).ready(function() {
	fixupUDStyle();
});

function fixupUDStyle()
{	
	$("b:first").before("<h1><a href='http://www.urbandictionary.com/define.php?term="+UDMyStrings.getQueryString("term")+"' target=\"_blank\"><img src=\"http://static3.urbandictionary.com/favicon.ico\" border=0/> Urban Dictionary</a> Lookup for : \""+UDMyStrings.getQueryString("term")+"\"</h1>");
		$(".others,b").each(function(){
			var txt = $(this).text();
			$(this).wrap("<a target='_blank' href='http://www.urbandictionary.com/define.php?term="+UDMyStrings.getQueryString("term")+"'></a>");
		});				
		$("body").prepend("<style type=\"text/css\">*{padding:0px;margin:0px;}body{background: #fff;font-size: 12px;font-family: Verdana, Arial, SunSans-Regular, Sans-Serif;padding-left:10px;}b{font-size:16px;margin-bottom:10px;display:block;}h1{color: Maroon;font-size:12px;}h1 a,h1 a:hover,h1 a:visited{color: Maroon;text-decoration:none;margin:0px;padding:0px;display:inline;}a{color:Green;margin-top:10px;display:block;}</style>");		
};


var UDMyStrings =
{
   getQueryVariable : function(query, variable)
   {
      var vars = query.split("&");
      for (var i = 0; i < vars.length; i ++ )
      {
         var pair = vars[i].split("=");
         if (pair[0] == variable)
         {
            return pair[1];
         }
      }
   },
   getQueryString:function(variable)
   {
		var query = window.location.search.substring(1);
		var vars = query.split("&");
		for (var i=0;i<vars.length;i++) 
		{
			var pair = vars[i].split("=");
			if (pair[0] == variable) 
			{
				return pair[1];
			}
		}
	},
	startsWith:function(myString,str) 
	{
		return (myString.indexOf(str)===0);
	}
};