/*common metods*/
function parseQueryStringParams() 
{
	var result = new Dictionary();
	var url = window.location.href;
	if (url.indexOf('?') < 0)
		return result;
	var qs = url.substr(url.indexOf('?')+1, url.length - (url.indexOf('?')+1));
	var params = qs.split('&');
	for(var i=0;i<params.length;i++)
	{
		var pkv = params[i].split('=');
		if (pkv.length != 2)
			continue;
		result.Add(pkv[0], pkv[1]);
	}
	return result;
 }
 

/*-- Dictionary object --*/
function Dictionary(arr)
{
	this.Count = 0;
	this.Array = new Array();
	if (arr != null && arr.Array != null)
	{
		for(var i in arr.Array)
		{
			this.Array[i] = arr[i];
		}
			
	}
}

function Dictionary_Add(key, value)
{
	this.Array[key] = value;
	var counter = 0;
	for(var i in this.Array)
		counter++;
	this.Count = counter;
}

function Dictionary_Exists(key)
{
	for(var i in this.Array)
	{
		if(i == key) return true;
	}
	return false;
}

function Dictionary_Items()
{
	var result = new Array();

	for(var i in this.Array)
	{
		result[result.length] = this.Array[i];
	}
	return result;
}

function Dictionary_Keys()
{
	var result = new Array();
	for(var i in this.Array)
	{
		result[result.length] = i;
	}
	return result;
}

function Dictionary_Remove(key)
{
	if (!this.Exists(key)) return;
	var newArray = new Array();
	for(var i in this.Array)
	{
		if (i != key)
		{

			newArray[i] = this.Array[i];
		}
	}
	this.Array = newArray;
	var counter = 0;
	for(var i in this.Array)
		counter++;
	this.Count = counter;
}

function Dictionary_RemoveAll()
{
	this.Array = new Array();
	this.Count = this.Array.length;
}

function Dictionary_Item(key)
{
	for(var i in this.Array)
	{
		if(i == key) return this.Array[i];
	}
	return null;
}

Dictionary.prototype.Add = Dictionary_Add;
Dictionary.prototype.Exists =Dictionary_Exists;
Dictionary.prototype.Items = Dictionary_Items;
Dictionary.prototype.Keys = Dictionary_Keys;
Dictionary.prototype.Remove = Dictionary_Remove;
Dictionary.prototype.RemoveAll = Dictionary_RemoveAll;
Dictionary.prototype.Item = Dictionary_Item;
/*--end of dictionary--*/




