$(document).ready(function() {
	// fix for bug in IE7, problem with overflow: auto
	if(IsIE && IEVersion <= 7) {
		var height = document.body.offsetHeight;
		height -= 100;
		$('#bottom').css('margin', height + 'px 0px 0px 0px');
		height -= 800;
		
		
		height = height + $('#main').height();
		height += document.body.offsetHeight;
		height += 'px';
		$('#main').css('height', height);
	}
});


// global variables
var MasterDebug = false;
var IsChrome = (navigator.appVersion.toLowerCase().indexOf("chrome") != -1);
var IsFF = (navigator.appName.toLowerCase().indexOf("netscape") != -1 && !IsChrome);

var IsIE = (navigator.appVersion.indexOf("MSIE") != -1);
if(IsIE) {
	var index = (navigator.appVersion.indexOf("MSIE ")+5);
	var IEVersion = parseInt(navigator.appVersion.substring(index, (index+1)));
}

function Log(variable)
{
	if(!IsIE) {
		console.log("- " + variable + "\n");
	}
}

function DebugLog(variable, debug)
{
	if(!IsIE) {
		if(MasterDebug || debug) {
			Log(variable);
		}
	}
}

/** array functions */

function inArray(list, value, caseSensitive)
// Returns true if the passed value is found in the
// array. Returns false if it is not.
{
	var i;
	for (i=0; i < list.length; i++) {
		// use === to check for Matches. ie., identical (===),
		if(caseSensitive){ //performs match even the string is case sensitive
			if (list[i].toLowerCase() == value.toLowerCase()) {
				return true;
			}
		}else{
			if (list[i] == value) {
				return true;
			}
		}
	}
	return false;
};

function assoc_array_merge(array1, array2)
{
	for(var key in array1) {
		if(array2[key] != null) {
			array1[key] = array2[key];
		}		
	}
	
	return array1;
}

function GetUrlWithoutQueryString(url)
{
	if(url == '') {
		url = window.location.href;
	}
	
	var index = url.indexOf('?');
	if(index >= 0) {
		return url.substring(0, index);
	}
	
	return url;
}

function GetQueryString(url)
{
	if(url.indexOf('?') >= 0) {
		return url.slice(url.indexOf('?') + 1);
	}
	
	return '';
}

function GetUrlVar(url, key)
{
	if(url == '') {
		url = window.location.href;
	}
	
    var vars = GetUrlVars(url);
    
    for(var listKey in vars) {
    	if(listKey == key) {
    		return vars[listKey];
    	}
   	}
   	
    return null;
}

function GetUrlVars(url)
{
	if(url == '') {
		url = window.location.href;
	}
	
	var vars = [], hash;
	if(url.indexOf('?') >= 0) {
	    var hashes = url.slice(url.indexOf('?') + 1).split('&');
	
	    for(var i = 0; i < hashes.length; i++)
	    {
			hash = hashes[i].split('=');
			vars[hash[0]] = hash[1];
	    }
	    
    }

    return vars;
}

function SetGetVar(url, key, value)
{
	var cleanUrl = GetUrlWithoutQueryString(url);
	
	var urlVars = GetUrlVars(url);
	urlVars[key] = value;
	
	var counter = 0;
	for(var listKey in urlVars) {
		if(counter == 0) {
			cleanUrl += '?';
		}
		else {
			cleanUrl += '&';
		}
		cleanUrl += listKey + '=' + urlVars[listKey];
		counter++;
	}
	
	return cleanUrl;
}

/** end array functions */

