/*	
 *	Parameters is an object which contains a map of all url request parameter keys and values
 *	ParametersManager interfaces with the parameters object to set and get URL parameters
 */	

Parameters = function (){
	this.cache = {};
}

ParametersManager = function () {
	this.parameters = null;
	this.init();
}

ParametersManager.prototype = {
	
	init : function () {
		this.parameters = new Parameters();
		this.buildFromUrl();
	},
	
	buildFromUrl : function ( ) {
		var url = window.location.href;
		if(url.indexOf('?')!=-1) {
			var parameters = url.substring( url.indexOf('?')+1 );
			var keyValuePairs = parameters.split( '&' );
		
			for ( var i in keyValuePairs )
			{
			    var pair = keyValuePairs[i].split( '=' );
				this.setValue( pair[0], pair[1] );
			}
		} else if(window.console && window.console.firebug){
			console.log("Error: No URL Parameters Passed To Page.");
		}
	},
	
	getValue : function ( key ) {
		return this.parameters.cache[ key ];
	},
	
	setValue : function ( key, value ) {
		this.parameters.cache[ key ] = value;
	}
}

var parametersManager = new ParametersManager();
