﻿// decrypt helper function
function decryptCharcode(n,start,end,offset)	{
	n = n + offset;
	if (offset > 0 && n > end)	{
		n = start + (n - end - 1);
	} else if (offset < 0 && n < start)	{
		n = end - (start - n - 1);
	}
	return String.fromCharCode(n);
}
// decrypt string
function decryptString(enc,offset)	{
	var dec = "";
	var len = enc.length;
	for(var i=0; i < len; i++)	{
		var n = enc.charCodeAt(i);
		if (n >= 0x2B && n <= 0x3A)	{
			dec += decryptCharcode(n,0x2B,0x3A,offset);	// 0-9 . , - + / :
		} else if (n >= 0x40 && n <= 0x5A)	{
			dec += decryptCharcode(n,0x40,0x5A,offset);	// A-Z @
		} else if (n >= 0x61 && n <= 0x7A)	{
			dec += decryptCharcode(n,0x61,0x7A,offset);	// a-z
		} else {
			dec += enc.charAt(i);
		}
	}
	return dec;
}
// decrypt spam-protected emails
function linkTo_UnCryptMailto(s)	{
	location.href = decryptString(s,-1);
}
// adv_search_show
function adv_search_show(name)	{
	var url = '/user/ajax.php?cont=setadvsearch&value='+name;
	document.getElementById('adv_search_lnk').style.display='none';
	document.getElementById('adv_search').style.display='none';
	document.getElementById(name).style.display='block';
	
	new Ajax.Request(url, {
	  method: 'get'
	});

}
// confirmation
function confirm_action(warntext,url) {
	var delok;
	delok = confirm (warntext);
	if  (delok==true ) {
		window.location.href = url;
	}
}
// disables/enables form fields for input, sets value 
function disableFrmField(name, value) {
	document.getElementById(name).value = value;
	document.getElementById(name).style.display='none';
}
// enableFrmField(name)
function enableFrmField(name) {
	document.getElementById(name).style.display='block';
}
// refreshCart(url)
function refreshCart(url) {
    var pars = '&ACTION=totals';
    var myAjax = new Ajax.Updater( { success: 'lnk_cart' }, url, { method: 'post', parameters: pars, onFailure: reportError } );
}
// addToCart(url,TYPE,ID)
function addToCart(url,TYPE,ID) {
	if ( TYPE == 6 ) TYPE = 4;
    var pars = '&ACTION=add' + '&TYPE=' + TYPE + '&ID=' + ID;
    var myAjax = new Ajax.Updater( { success: 'lnk_cart' }, url, { method: 'post', parameters: pars, onFailure: reportError } );
}
// addToList(url,TYPE,ID)
function addToList(url,TYPE,ID) {
    var pars = '&ACTION=add' + '&TYPE=' + TYPE + '&ID=' + ID;
    var myAjax = new Ajax.Updater( { success: 'addlink' }, url, { method: 'post', parameters: pars, onFailure: reportError } );
}
// reportError(request)
function reportError(request) {
    alert('Sorry. There was an error.');
}
// FixCalcXY(el)
function FixCalcXY(el) {
	if(typeof(el.offsetParent) == "undefined")
        return [70, 70];
	var a = new Array(-30, -15);
	while(el)
	{
		a[0] += el.offsetLeft || 0;
		a[1] += el.offsetTop || 0;
		el = el.offsetParent || null;
	}
	return a;
}

/*
// PlayerStart(typ, id)
function PlayerStart(typ, id) {
	var xsreensize = screen.width
	var ysreensize = screen.height
	var xsize=250
	var ysize=120
	var xpos=(xsreensize-xsize)/2
	var ypos=(ysreensize-ysize)/2
	newWindow = window.open('./index.php?page=player&id='+id+'&type='+typ, "Player", "scrollbars=0, status=0, statusbar=0, toolbar=0, location=0, locationbar=0, directories=0, resizable=0, menubar=0, width="+xsize+", height="+ysize+", screenX="+xpos+", screenY="+ypos+", top="+ypos+", left="+xpos);
}
*/

// PlayerStart(typ, id)
function PlayerStart(typ, id) {
	playSong(id,typ);
//	enableFrmField('player_head');
//	enableFrmField('player');
//	enableFrmField('player_bottom');
//	var pars = '&page=player&' + '&TYPE=' + typ + '&ID=' + id;
//	var myAjax = new Ajax.Updater( { success: 'player' }, './index.php?page=player&id='+id+'&type='+typ, { method: 'post', parameters: pars, onFailure: reportError } );
}

// PlayerStart(typ, id)
function PlayerClose() {
	document.getElementById('player_head').style.display='none';
	document.getElementById('player').style.display='none';
	document.getElementById('player_bottom').style.display='none';
}


function gogenre(){
	if ( document.getElementById('genreviewselect').value != 0 ) {
		var uri = document.getElementById('genreviewselect').value+'&ss=1';
		self.location.href = uri;
	}
}
function golbl(){
	if ( document.getElementById('labelviewselect').value != 0 ) {
		var uri = document.getElementById('labelviewselect').value+'&ss=1';
		self.location.href = uri;
	}
}
function goBand() {
	if ( document.getElementById('bandviewselect').value != 0 ) {
		var uri = document.getElementById('bandviewselect').value+'&ss=1';
		self.location.href = uri;
	}
}
function goArtist() {
	if ( document.getElementById('artistviewselect').value != 0 ) {
		var uri = document.getElementById('artistviewselect').value+'&ss=1';
		self.location.href = uri;
	}
}