//call ajax script
function call_ajax(method, element_id, script_link, parameters)
	{
		var xmlHttp;
	
		try
			{
				// Firefox, Opera 8.0+, Safari
				xmlHttp = new XMLHttpRequest();
			}
		catch (e)
			{
				// Internet Explorer
				try
					{
						xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
					}
				catch (e)
					{
						try
							{
								xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
							}
						catch (e)
							{
								alert("Your browser does not support AJAX!");
								return false;
							}
					}
			}
		
		xmlHttp.onreadystatechange = function()
			{
				if(xmlHttp.readyState == 4)
					{
						var result = xmlHttp.responseText;
						
						if (!element_id)
							{
								alert (result);
							}
						else
							{
								document.getElementById(element_id).innerHTML = result;
							}
					}
			}
			
		if (method == 'post')
			{			
				xmlHttp.open('POST', script_link, true);
				xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				xmlHttp.setRequestHeader("Content-length", parameters.length);
				xmlHttp.setRequestHeader("Connection", "close");		
				xmlHttp.send(parameters);
			}
		else
			{			
				xmlHttp.open('GET', script_link, true);
				xmlHttp.send(null);			
			}
	} 	

//set cookie 
function set_cookie(object, value) 
	{
		var expireDate  = new Date()
		var expstring   = expireDate.setDate(expireDate.getDate() + 5) //curent date  + 5 days
		document.cookie = object+'='+value+'; expires='+expireDate.toGMTString()+'; path=/'; //set cookie
	}	

//used to auto-start function on page load 	
function addLoadEvent(func) 
	{
		var oldonload = window.onload;
		if (typeof window.onload != 'function') 
			{
				window.onload = func;
			}
		else
			{
				window.onload = function()
					{
						if (oldonload)
							{
								oldonload();
							}
						func();
					}
			}
	}

//bookmark
function add_to_bookmark(url, title)
	{
		if (document.all)
			{
				window.external.AddFavorite(url, title);
			}
		else
			{
				alert('Press CTRL+D to bookmark page');
			}
	}
	
//open popup window
function open_popup(url, target, features) 
	{
		if (!features)
			{
				features = 'top=100, left=100, resizable=1, scrollbars=1, location=0, menubar=0, statusbar=0, titlebar=0, width=650, height=420';
			}
		
		var theWindow = window.open(url, target, features);
		theWindow.focus();		
	}

//submit form function to specific action
function submit_form(form_id, action)
	{
		var form = document.getElementById(form_id);						
		if (action)
			{
				form.action.value = action
			}
		form.submit();
	}
	
//show / hide div 
function toggleDiv(id, flagit, flagclass) 
	{
		if (flagit == '1')
			{			
				divs = document.getElementsByTagName("div");
				
				for (x=0; x < divs.length; x++) 
					{
						if (flagclass == divs[x].className) 
							{
								var sid = divs[x].getAttribute("id");						
								
								if (document.layers) document.layers[''+sid+''].visibility = 'hide'
								else if (document.all) document.all[''+sid+''].style.visibility = 'hidden'
								else if (document.getElementById) document.getElementById(''+sid+'').style.visibility = 'hidden'						
							}
					}
								
				if (document.layers) document.layers[''+id+''].visibility = 'show'
				else if (document.all) document.all[''+id+''].style.visibility = 'visible'
				else if (document.getElementById) document.getElementById(''+id+'').style.visibility = 'visible'	
			}
		else if (flagit == '0')
			{
				if (document.layers) document.layers[''+id+''].visibility = 'hide'
				else if (document.all) document.all[''+id+''].style.visibility = 'hidden'
				else if (document.getElementById) document.getElementById(''+id+'').style.visibility = 'hidden'
			}
	}	
	
//show element based on id 
function show_element(object) 
	{
		if (document.getElementById) 
			{
				document.getElementById(object).style.visibility = 'visible';
				document.getElementById(object).style.display = 'block';
			}
		else if (document.layers && document.layers[object]) 
			{
				document.layers[object].visibility = 'visible';
				document.layers[object].display = 'block';
			}
		else if (document.all) 
			{
				document.all[object].style.visibility = 'visible';
				document.all[object].style.display = 'block';
			}
	}

//hide element based on id 
function hide_element(object) 
	{
		if (document.getElementById) 
			{
				document.getElementById(object).style.visibility = 'hidden';
				document.getElementById(object).style.display = 'none';
			}
		else if (document.layers && document.layers[object]) 
			{
				document.layers[object].visibility = 'hidden';
				document.layers[object].display = 'none';
			}
		else if (document.all) 
			{
				document.all[object].style.visibility = 'hidden';
				document.all[object].style.display = 'none';
			}
	}