/*
	Functions for the product view

	16.10.2008, mJ:	initial release
	
	25.11.2008, mJ: load_related()
*/



function tracklist_refresh()
//	function to be called by country selection
//	default version reloads current page
{
	location.replace( location.href );
}


var _links = new Array( "buy_options_link", "press_quotes_link", "awards_link" );
var _divs = new Array( "buy_options_container", "press_quotes_container", "awards_container" );

function activate( thislink )
//	activate either track list / reviews / awards
{
	var i;
	for( i=0; i<_links.length; i++ ) {
		var link = document.getElementById( _links[i] );
		var div = document.getElementById( _divs[i] );
		if( link != thislink ) {
			if( link ) {
				link.className = "";
			}
			if( div ) {
				div.style.display = "none";
			}
		} else {
			if( link ) {
				link.className = "active";
			}
			if( !div ) {
				return true;	// Seite war noch nicht fertig gerendert => neu laden
			}
			div.style.display = "block";
		}
	}
	return false;
}


function showLanguage( lang )
//	show review language
{
	for( i = 0; i < langages. length; i++ ) {
		elem = document.getElementById( langages[i] );
		if( elem && elem.style ) {
			elem.style.display = "none";
		} else {
			alert( "me: cannot find " + langages[i] );
		}
	}
	elem = $( lang );
	if( elem ) {
		elem.style.display = "block";
	} else {
		alert( "me2: cannot find " + lang );
	}
	return false;
}


function load_related( product_nr )
{
	var qs = new Querystring();
	qs.put( "PRODUCT_NR", product_nr );
	
//	alert( location.href );
	location.search = qs.toString();
//	alert( location.href );
	
//	location.replace( location.href );
	
}


/* Client-side access to querystring name=value pairs
	Version 1.3
	28 May 2008
	http://adamv.com/dev/javascript/querystring
	
	License (Simplified BSD):
	http://adamv.com/dev/javascript/qslicense.txt
	
	26.11.2008, mJ:	added toString and commented decodeURIComponent
*/
function Querystring( qs ) 
{ // optionally pass a querystring to parse
	this.params = {};
	
	if (qs == null) 
		qs = location.search.substring(1, location.search.length);
	if (qs.length == 0) 
		return;

// Turn <plus> back to <space>
// See: http://www.w3.org/TR/REC-html40/interact/forms.html#h-17.13.4.1
	qs = qs.replace(/\+/g, ' ');
	var args = qs.split('&'); // parse out name/value pairs separated via &
	
// split out each name=value pair
	for (var i = 0; i < args.length; i++) {
		var pair = args[i].split('=');
		var name = pair[0]; // decodeURIComponent(pair[0]);
		
		var value = (pair.length==2)
			? pair[1]		// decodeURIComponent(pair[1])
			: name;
		
		this.params[name] = value;
	}
}

Querystring.prototype.get = function( key, default_ )
{
	var value = this.params[key];
	return (value!= null)? value : default_;
}

Querystring.prototype.put = function( key, value )
{
	this.params[key] = value;
}

Querystring.prototype.contains = function( key ) 
{
	var value = this.params[key];
	return (value!= null);
}

Querystring.prototype.toString = function() 
{
	var a = [];
	for( key in this.params ) {
		a.push( key + "=" + this.params[key] );
	}

	return a.join( "&" );
}
