var baseUrl="http://nickmass.com"
var searchTerms="";var page=0;var sort;var selectedItem=-1;var numSelections=0;var oldTerm="";var mouseOver=false;var curLoc=location.hash;function RemoveList(){$("#suggestSelect").empty();$("#suggestSelect").hide();$("#suggestSelect").remove();}
$(document).ready(function(){sort=readCookie("sort");if(sort==null)
{sort="relevance";}
window.setInterval(function(){if($("#txtSearch").val()=="")
{RemoveList();}
if($("#suggestSelect").html=="")
{RemoveList();}
if(location.hash!=curLoc)
{if(location.hash.length>=1)
{$("#txtSearch").val(decodeURI(location.hash.substring(1)));searchTerms=decodeURI(location.hash.substring(1));pageTracker._trackEvent("Search","Incidental Search",searchTerms);doSearch();}
else
{$("#txtSearch").val("");curLoc=location.hash;$("#results").html("<div></div>");$("#news").show();}}},50);$(document).bind("click",function(event){if(!mouseOver)
{RemoveList();}});$("#txtSearch").keyup(function(event){if(event.keyCode!=13&&event.keyCode!=38&&event.keyCode!=40){RemoveList();if($("#txtSearch").val()!="")
{$.post(baseUrl+"/index.php/torrent/getJSONSimilarSearches/",{searchTerms:$("#txtSearch").val()},function(json){RemoveList();numSelections=json.numResults;selectedItem=-1;if(numSelections>0)
{if(json.searchTerms.toLowerCase()!=searchTerms.toLowerCase())
{$("#searchForm").after("<ul id=\"suggestSelect\"></ul>");$.each(json.results,function(i,result){var selectedString="";if(i==selectedItem)
{selectedString="selectedSuggest";}else{selectedString="unselectedSuggest";}
$("#suggestSelect").append("<div id=\"suggest"+ i+"\" class=\""+ selectedString+"\" title=\""+ result.searchString+"\"><li><a href=\"\"><strong>"+ result.searchString.substr(0,json.searchTerms.length)+"</strong>"+ result.searchString.substr(json.searchTerms.length)+"</a></li></div>");$("#suggest"+ i).bind("click",function(event){$("#suggestSelect").remove();event.preventDefault();searchTerms=result.searchString;$("#txtSearch").val(result.searchString);location.hash="#"+ encodeURI(searchTerms);pageTracker._trackEvent("Search","Specific Search",searchTerms);doSearch();});$("#suggest"+ i).bind("mouseover",function(event){mouseOver=true;});$("#suggest"+ i).bind("mouseout",function(event){mouseOver=false;});$("#suggest"+ i).bind("mousemove",function(event){if(mouseOver)
{$("#suggest"+ selectedItem).attr("class","unselectedSuggest");selectedItem=i;$("#suggest"+ selectedItem).attr("class","selectedSuggest");}});});}}},"json");}}
else
{if(event.keyCode==13)
{RemoveList();}
if(event.keyCode==38)
{$("#suggest"+ selectedItem).attr("class","unselectedSuggest");if(selectedItem!=-1)
{selectedItem--;if(selectedItem==-1)
{$("#txtSearch").val(oldTerm);}
else
{$("#suggest"+ selectedItem).attr("class","selectedSuggest");$("#txtSearch").val($("#suggest"+ selectedItem).attr("title"));}}}
if(event.keyCode==40)
{if(selectedItem==-1)
{oldTerm=$("#txtSearch").val();}
$("#suggest"+ selectedItem).attr("class","unselectedSuggest");if(selectedItem<numSelections- 1)
{selectedItem++;}
$("#suggest"+ selectedItem).attr("class","selectedSuggest");$("#txtSearch").val($("#suggest"+ selectedItem).attr("title"));}}});$("#searchForm").submit(function(event){RemoveList();event.preventDefault();searchTerms=$("#txtSearch").val();location.hash="#"+ encodeURI(searchTerms);pageTracker._trackEvent("Search","Specific Search",searchTerms);doSearch();});$("#privacyLink").click(function(event){event.preventDefault();$("#news").hide();$.post(baseUrl+"/index.php/torrent/getJSONPolicy/",function(policy){$("#results").hide();$("#results").empty();$("#results").html("<div id=\"policy\">"+ policy+"</div>");$("#results").fadeIn(500);},"html");});if(location.hash.substring(1)!="")
{$("#txtSearch").val(decodeURI(location.hash.substring(1)));searchTerms=decodeURI(location.hash.substring(1));pageTracker._trackEvent("Search","Specific Search",searchTerms);doSearch();}});function search(term)
{RemoveList();$("#txtSearch").val(term);searchTerms=$("#txtSearch").val();location.hash="#"+ encodeURI(searchTerms);doSearch();}
function doSearch(){$("#news").hide();curLoc=location.hash;$("#results").html("<div id=\"ajaxSpinner\"><img src=\""+ baseUrl+"/assets/ajaxBall.gif\" alt=\"Loading...\"/></div>");$.post(baseUrl+"/index.php/torrent/doJSONSearch/",{searchTerms:searchTerms,page:page,sort:sort},function(json){$("#results").hide();$("#results").empty();$("#results").html("<table cellspacing=\"0\" id=\"resultsTable\"><tr id=\"headerRow\"><th id=\"headerAge\"><a href=\"\" id=\"headerAgeSort\">Age</a></th><th id=\"headerName\" colspan=\"2\"><a href=\"\" id=\"headerNameSort\">Name</a></th><th id=\"headerSize\"><a href=\"\" id=\"headerSizeSort\">Size</a></th><th id=\"headerSeeds\"><a href=\"\" id=\"headerSeedsSort\">Seeds</a></th><th id=\"headerLeechers\"><a href=\"\" id=\"headerLeechersSort\">Leechers</a></th></tr></table>");switch(sort)
{case"relevance":$("#headerName").addClass("selectedSort");break;case"date":$("#headerAge").addClass("selectedSort");break;case"seeds":$("#headerSeeds").addClass("selectedSort");break;case"size":$("#headerSize").addClass("selectedSort");break;case"leechers":$("#headerLeechers").addClass("selectedSort");break;}
$("#headerNameSort").bind("click",function(event){event.preventDefault();createCookie("sort","relevance",360);sort="relevance";doSearch();});$("#headerAgeSort").bind("click",function(event){event.preventDefault();createCookie("sort","date",360);sort="date";doSearch();});$("#headerSeedsSort").bind("click",function(event){event.preventDefault();createCookie("sort","seeds",360);sort="seeds";doSearch();});$("#headerSizeSort").bind("click",function(event){event.preventDefault();createCookie("sort","size",360);sort="size";doSearch();});$("#headerLeechersSort").bind("click",function(event){event.preventDefault();createCookie("sort","leechers",360);sort="leechers";doSearch();});if(json.numResults==0)
$("#results").html("Your search returned zero results.");var i=0;$.each(json.results,function(i,result){i++;var sizeSuffix="b";var size=result.filesize;if(size/1024>=1)
{size/=1024;sizeSuffix="kb";if(size/1024>=1)
{size/=1024;sizeSuffix="mb";if(size/1024>=1)
{var oldSizeString=Math.round(size).toString();size/=1024;sizeSuffix="."+ oldSizeString.substr(oldSizeString.length- 2,1)+"gb";}}}
size=Math.round(size)+ sizeSuffix;var time=json.time- result.date;var timestring=time+" seconds";var remainder=0
if(time>60)
{remainder=time%60;time=(time- remainder)/60;timestring=time+" minutes";if(time>60)
{remainder=time%60;time=(time- remainder)/60;timestring=time+" hours";if(time>24)
{remainder=time%24;time=(time- remainder)/24;timestring=time+" days";if(time>7)
{remainder=time%7;time=(time- remainder)/7;timestring=time+" weeks";if(time>4)
{remainder=time%4;time=(time- remainder)/4;timestring=time+" months";}}}}}
var rowColor;if(i%2==0)
rowColor="searchResultEven";else
rowColor="searchResultOdd";var seeds;var leechers;if(result.failedcrawls>=3)
{seeds="<span class=\"failedUpdate\">"+ result.seeds+"</span>";leechers="<span class=\"failedUpdate\">"+ result.leechers+"</span>";}
else
{seeds=result.seeds;leechers=result.leechers;}
$("#resultsTable").append("<tr class=\""+ rowColor+"\"><td class=\"searchDate\">"+ timestring+"</td><td class=\"searchName\"><a href=\""+ result.download+"\" onclick=\"pageTracker._trackEvent('Torrent', 'Download', '"+ result.name+"', "+ result.id+")\">"+ result.name+"</a></td><td class=\"searchSize\"><a href=\""+ result.magnet+"\" onclick=\"pageTracker._trackEvent('Torrent', 'Magnet', '"+ result.name+"', "+ result.id+")\"><img src=\""+ baseUrl+"/images/magnet.png\" border=\"0\"/></a></td><td class=\"searchSize\">"+ size+"</td><td class=\"searchSeeds\">"+ seeds+"</td><td class=\"searchLeechers\">"+ leechers+"</td></tr>")});$("#results").append("</table>");$("#results").fadeIn(500);},"json");}
function createCookie(name,value,days){if(days){var date=new Date();date.setTime(date.getTime()+(days*24*60*60*1000));var expires="; expires="+date.toGMTString();}
else var expires="";document.cookie=name+"="+value+expires+"; path=/";}
function readCookie(name){var nameEQ=name+"=";var ca=document.cookie.split(';');for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length);}
return null;}
