//	Menu code
var menu = new Array(4);
menu[0] = "browseList";
menu[1] = "albumsList";
menu[2] = "genreChartsList";
menu[3] = "latestAdditionsList";

function showhide(id)
{
	if ( ! id ) return;

	//Hide all menus except the one we want to toggle the view on
	hideMenu(id);

	var d;

	// Check that the menu we're calling exists
	if (d = document.getElementById(id))
	{
		//switch the view either on or off
		if (d.style.display == 'block')
		{
			d.style.display = 'none';
		}
		else
		{
			d.style.display = 'block';
		}
	}
}

function hideMenu ()
{
	// start by declaring a variable for an optional ignore
	var ignore = -1;
	var d;

	if (arguments.length > 0)
	{
		// If the ignore argument is set, assign it to the variable
		ignore = arguments[0];
	}

	for (var i = 0; i <= 3; i++)
	{
		// check to make sure this id is not to be ignored
		if (menu[i] != ignore)
		{
			//hide the menu
			if (d = document.getElementById(menu[i]))
			{
				d.style.display = 'none';
			}
		}
	}
}

//	End of Menu code ---

function updateCart(x, cartid) {
	window.location="/cart.php?t=updatemycart&cid="+cartid+"&opt="+(x.checked ? 1 : 0);
}

var token_used = 0;

function confirmUseToken() {
        if (token_used == 1) {
            return false;
        }
	if (confirm("Are you sure you wish to use one of your download tokens?")) {
            token_used = 1;
            return true;
        }   else {
            return false;
        }
}

function confirmDeleteTrack() {
	return confirm("Are you sure you wish to remove this track from your cart?\n\nIf you don't want to purchase it at the moment, simply un-check the tick-box on the right of the track and it will stay in your cart for next time");
}

function popup3(url,nme,hgt,wgt)
		{
		var params='toolbar=no,height='+hgt+',width='+wgt+',location=no,scrollbars=yes,status=no,menubar=no,resizable=no';
		if(self && self.screen && self.screen.width)
			{
			params+=",left="+((self.screen.width-wgt)/2);
			params+=",top="+((self.screen.height-hgt)/2);
			}
		window.open(url,nme,params);

}


//	Registration form code
//	Removed references to 'friendEmail'; no longer part of registration.
function checkWhereHeard(idx) {

	var label = document.getElementById("whereheard").options[idx].value;
	if (label=='Other (Please Specify)') {
		document.frmRegister.whereheard_other.style.display="inline";
	} else {
		document.frmRegister.whereheard_other.style.display="none";
	}
}

//	Test information
//	A brief ajax function to sit over the cartXML.php and constantly update the cart values
//	This should just keep the values updated asynchronously until the next page refresh brings
//	out the 'cart proper'.  Should give us a little more functionality than simply triggering a refresh
//	on the window opener.

function getCart(dataSource, priceDivID, numCartItemsDivID) {
	var XMLHttpRequestObject = false;
	var repeatDelay = 5000;

	if (window.XMLHttpRequest) 			{ XMLHttpRequestObject = new XMLHttpRequest(); }
	else if (window.ActiveXObject) 	{ XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP"); }

	if(XMLHttpRequestObject) {
		var priceObj = document.getElementById(priceDivID);
		var cartObj = document.getElementById(numCartItemsDivID);
		if ((priceObj) && (cartObj)) {
			XMLHttpRequestObject.open("GET", dataSource);
			XMLHttpRequestObject.onreadystatechange = function() {
				if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
					var xmlReturn = XMLHttpRequestObject.responseXML;
					var cartNum = xmlReturn.getElementsByTagName('numCartItems')[0].firstChild.data;
					var cartPrice = xmlReturn.getElementsByTagName('cartPrice')[0].firstChild.data;
					priceObj.innerHTML = cartPrice;
					cartObj.innerHTML = cartNum;
				}
			}
			XMLHttpRequestObject.send(null);
		}
		//	trigger the request again. and again. and again.  5 second delay.
		//setTimeout("getCart('"+dataSource+"', '"+priceDivID+"', '"+numCartItemsDivID+"')", repeatDelay);
	}
}


function processPPTx(cm, tx, amt, st) {
	pp = document.getElementById("paypaloutput");
	pp.innerHTML = '<p>&nbsp;</p>';

	var XMLHttpRequestObject = false;
	if (window.XMLHttpRequest) 			{ XMLHttpRequestObject = new XMLHttpRequest(); }
	else if (window.ActiveXObject) 	{ XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP"); }

	url = "/ppAjax.php?cm="+cm+"&tx="+tx+"&amt="+amt+"&st="+st;

	if(XMLHttpRequestObject) {
		XMLHttpRequestObject.open("GET", url, true);

		XMLHttpRequestObject.onreadystatechange = function() {
				if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
					if (XMLHttpRequestObject.responseText=='0') {
						pp.innerHTML = "<p>Verifying.  Please wait.</p>";
						setTimeout("processPPTx('"+cm+"', '"+tx+"', '"+amt+"', '"+st+"')", 2000);
					} else {
						pp.innerHTML = XMLHttpRequestObject.responseText;
					}
				}
			}
			XMLHttpRequestObject.send(null);
		}
}



/*
 * purchase item
 */
 function purchaseItem(button, stockid,bitrate) {
 	var XMLHttpRequestObject = false;
	if (window.XMLHttpRequest) {
		XMLHttpRequestObject = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
	}

	var url='/cartAjax.php?a=add&bitrate='+bitrate+'&id='+stockid;
	if(XMLHttpRequestObject) {
		XMLHttpRequestObject.open("GET", url, true);

		XMLHttpRequestObject.onreadystatechange = function() {
				if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
					var r = eval("("+ XMLHttpRequestObject.responseText + ")");
					if (r.status===false) {

						button.innerHTML = 'Not Available';
						button.onclick = null;
						
						document.getElementById('ddmenu_'+stockid).innerHTML ='<div class="buttonBoxPrice" style="font-weight:normal;width:120px;">Ineligible Country</div>';

						return false;
					} else {


						document.getElementById('cartNumItems').innerHTML = r.numitems;
						document.getElementById('cartTotalPrice').innerHTML = r.cartTotal;
						new Effect.Pulsate($('cart'), {pulses: 1, from:1.0, to:0.01});

						button.innerHTML = 'Added to cart';
						button.onclick = null;
						document.getElementById('ddmenu_'+stockid).innerHTML ='<div class="buttonBoxPrice" style="font-weight:normal;width:120px;">Added to cart</div>';

						new Effect.Pulsate(button.parentNode.parentNode, {pulses:1, from:1.0, to:0.01});


						// Added by Lawrence 30/07/2009 - Strands Recommendations (Crashed with another script)
						DJDSendAjax("/strands/strands_event.php?action=cart&item_id="+stockid, "DJDDummyHandler2", "");

					}
				}
			}
			XMLHttpRequestObject.send(null);
		}

// Added by Lawrence 15/07/2009 - Strands Recommendations
//DJDSendAjax("/strands/strands_event.php?action=cart&item_id="+stockid, "DJDDummyHandler2", "");
 }
function DJDDummyHandler2(){
  // do nothing
}


/*
 * modal window stuff
 * http://www.pjhyett.com/posts/190-the-lightbox-effect-without-lightbox
 */
function showBox(){
    $('box').show();
    center('box');
    return false;
}

function hideBox(){
    $('box').hide();
  //  $('page_overlay').hide();
    return false;
}

function center(element){
    try{
        element = $(element);
    }catch(e){
        return;
    }

    var my_width  = 0;
    var my_height = 0;

    if ( typeof( window.innerWidth ) == 'number' ){
        my_width  = window.innerWidth;
        my_height = window.innerHeight;
    }else if ( document.documentElement &&
             ( document.documentElement.clientWidth ||
               document.documentElement.clientHeight ) ){
        my_width  = document.documentElement.clientWidth;
        my_height = document.documentElement.clientHeight;
    }
    else if ( document.body &&
            ( document.body.clientWidth || document.body.clientHeight ) ){
        my_width  = document.body.clientWidth;
        my_height = document.body.clientHeight;
    }

    element.style.position = 'absolute';
    element.style.zIndex   = 99;

    var scrollY = 0;

    if ( document.documentElement && document.documentElement.scrollTop ){
        scrollY = document.documentElement.scrollTop;
    }else if ( document.body && document.body.scrollTop ){
        scrollY = document.body.scrollTop;
    }else if ( window.pageYOffset ){
        scrollY = window.pageYOffset;
    }else if ( window.scrollY ){
        scrollY = window.scrollY;
    }

    var elementDimensions = Element.getDimensions(element);

    var setX = ( my_width  - elementDimensions.width  ) / 2;
    var setY = ( my_height - elementDimensions.height ) / 2 + scrollY;

    setX = ( setX < 0 ) ? 0 : setX;
    setY = ( setY < 0 ) ? 0 : setY;

    element.style.left = setX + "px";
    element.style.top  = (setY+50) + "px";

    element.style.display  = 'block';
}





/*
 * community form - deprecated
 */

function verifyCommunityForm() {
	if(!$('alias')) {
		alert('We need an alias, at least');
		return false;
	} else {
		return true;
	}
}


/*
 * replace all https A links with http
 * shouldn't break payment then
 */
  function clearHTTPS() {
    var a = document.getElementsByTagName("A");
    for(var i=0;i<a.length;i++) {
        a[i].href = a[i].href.replace(/https/g, 'http');
    }
  }


<!-- Embedded WhosOn http://www.whoson.com -->
var sSession;
function writeWhosOn(sGateway,sDomain,sDepartment,sResponse,sChatstart){
var sUrl;
var sUser = "";
var sPage = "";

// specify a user name here if you want a specific user name instead of a session cookie
// sUser="my user";

// specify a page name here if you want a specific page name shown in WhosOn instead of the window.location
// sPage="my page";

// create session cookie
var dt=new Date();
var sCookie=document.cookie.toString();
if(sCookie.indexOf("whoson")==-1){
    sSession=parseInt(Math.random()*1000)+"-"+dt.getTime();
    document.cookie="whoson="+sSession+";expires=Fri, 31-Dec-2010 00:00:00 GMT;";}
sCookie=document.cookie.toString();
if(sCookie.indexOf('whoson')==-1){sSession="";}
else{
    var s=sCookie.indexOf("whoson=")+7;
    var e=sCookie.indexOf(";",s);
    if(e==-1)e=sCookie.length;
    sSession=sCookie.substring(s,e);
}

if(sUser!="")sSession=sUser;
if(sPage=="")sPage=escape(window.location);
sUrl=sGateway+"?u="+sSession+"&d="+sDomain;
if(sDepartment.length>0)sUrl+="&t="+sDepartment;
sUrl+="&p='"+sPage+"'&r='"+escape(document.referrer)+"'";

if(sResponse==""){
    if(document.layers){document.write("<layer name=\"WhosOn\" visibility=hide><img src=\""+sUrl+"\" height=1 width=1></layer>");}
    else{document.write("<div id=\"WhosOn\" STYLE=\"position:absolute;visibility:hidden;\"><img src=\""+sUrl+"\" height=1 width=1></div>");}}
else {
    sUrl+="&response=g";sChatstart+="?domain="+sDomain;
    if(sDepartment.length>0)sChatstart+="&department="+sDepartment;
    document.write("<a target=\"_blank\" href=\""+sChatstart+"\" onclick=\"javascript:window.open('"+sChatstart+"','new_win','width=484,height=361');return false;\"><img border=\"0\" src=\""+sUrl+"\"></a>");}
}

<!-- // End whoson code // -->

/*
	New Javascript login box
*/

var boxes = ['login-1', 'login-2', 'login-3'];
function login (id) {
	for (i = 0; i < boxes.length; i++) {
		if (d = document.getElementById(boxes[i])) {
			if (boxes[i] == id) {
				d.style.display = "block";
			} else {
				d.style.display = "none";
			}
		}
	}
}

//turns the modal 'Vista/IE7 Bugging' off
function bugger_off()
{
	document.cookie='vistabugging=no; expires=Thu, 26 Aug 2026 00:00:00 GMT; path=/';
	Modalbox.hide();
}

function suggest_search(search_string) {$('searchterm').value = search_string;$('searchForm').submit();}
function onSearchEnter(event){if (Event.KEY_RETURN == event.keyCode) {$('searchForm').submit();}return;}

