// ==UserScript==
// @name       displayartist   
// @description   Adds the artists name next to each release listed on the homepage
// @include       http://www.em411.com*
// @include	  http://em411.com*
// ==/UserScript==

// each release..
allDivs = document.evaluate(
	"//div[@class='sideReleaseBox']",
	document,
	null,
	XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
	null);
	
for (var i = 0; i < allDivs.snapshotLength; i++) {
	thisDiv = allDivs.snapshotItem(i);
	var url=thisDiv.parentNode.href;
 
	GM_xmlhttpRequest({
		method: 'GET',
		url: url,
		headers: {
			'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey',
			'Accept': 'application/atom+xml,application/xml,text/xml',
		},
		onload: function(responseDetails) {
		
		
		var postArray=responseDetails.responseText.match(/<div class="post">/g);
		var numPosts=postArray.length;
		if (numPosts>14){
			numPosts="15+";
		}	  
		   var reg1=/<div class="left"><a href="\/(\w+)">/;
		   var name_r = reg1.exec(responseDetails.responseText);
		   var theName=name_r[1];
		   
		   var reg2=/<a href="func-misc.php\?func=store_add&area=release&area_id=(\d+)" class="btnTiny rf"/;
		   var id_r = reg2.exec(responseDetails.responseText);
		   var theId=id_r[1];
		   //alert('id='+theId);
		   var theA = document.evaluate("//a[@href='/show/release/"+theId+"']", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
			//alert('l='+theA.snapshotLength);	
			for (var i = 0; i < theA.snapshotLength; i++) {
				thisA = theA.snapshotItem(i);
				var url=thisDiv.parentNode.href;
				var titleDiv=thisDiv.childNodes[1];
				  
				  
				var artistSpan=document.createElement("span");
				artistSpan.innerHTML='<br/><span style="color:#2B9CBD;font-weight:bold">'+theName+' '+numPosts+'</span></br>';
				//alert('html');
				   
				//document.body.insertBefore(artistSpan, document.body.firstChild);
				   
				thisA.childNodes[1].childNodes[1].appendChild(artistSpan); 
			    //alert('name='+theName);	
			}
		}
	});
}

