function disableForm(theform) {
	if (document.all || document.getElementById) {
		for (i = 0; i < theform.length; i++) {
		var formElement = theform.elements[i];
			if (true) {
				formElement.disabled = true;
			}

		}
	}
}

function enableForm(theform) {
	if (document.all || document.getElementById) {
		for (i = 0; i < theform.length; i++) {
		var formElement = theform.elements[i];
			if (true) {
				formElement.disabled = false;
			}

		}
	}
}

/* Stack up window.onload events using this function*/
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}


//AJAX REQUEST STATUS BAR
Ajax.Responders.register({
	onCreate: function() {
		if($('notification') && Ajax.activeRequestCount > 0)
			//disableForm(document.myform);
			Effect.Appear('notification',{duration: 0.25, queue: 'end'});
	},
	onComplete: function() {
		if($('notification') && Ajax.activeRequestCount == 0)
			//enableForm(document.myform);
			Effect.Fade('notification',{duration: 0.25, queue: 'end'});
	}
});


//var http_request = false;
//function makeRequest(url, parameters) {
//	
//	if(!parameters)
//	{
//		parameters = '';
//	}
//	var myAjax = new Ajax.Request(url+parameters,{method: 'get', /*update: $('myspan'),*/ onComplete: handleRequest});
//
//	function handleRequest(originalRequest) {
//		//new Insertion.Bottom('content',originalRequest.responseText);
//		document.getElementById('body_container').innerHTML = originalRequest.responseText;
//		//alert("done");
//	}
//
//}

function makeRequest(url, parameters, container) {
	
	var randomnumber = Math.floor(Math.random()*900);
	
	if(!parameters)
	{
		parameters = '';
	}
	var myAjax = new Ajax.Request(url+parameters+'&'+randomnumber,{method: 'get', /*update: $('myspan'),*/ onComplete: handleRequest});

	function handleRequest(originalRequest) {
		//new Insertion.Bottom('content',originalRequest.responseText);
		document.getElementById(container).innerHTML = originalRequest.responseText;
		//alert("done");
	}

}


function goto(form_name, params)
{
	
	var array_action_url = form_name.action.split('?',2);
	action_url = array_action_url[0];
	action_params = array_action_url[1];
	
	//alert(action_url+'?'+params);
	window.location = action_url+'?'+params;
}



function handleEnter (field, event, assigned_submit, form_name, noajax) 
{
	var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
	if (keyCode == 13) {
//		var i;
//		for (i = 0; i < field.form.elements.length; i++)
//			if (field == field.form.elements[i])
//				break;
//		i = (i + 1) % field.form.elements.length;
//		field.form.elements[i].focus();
		if(assigned_submit)
		{
			if(noajax){
				do_action(form_name, assigned_submit, '' ,1);	
			} else {
				do_action(form_name, assigned_submit);	
			}
		}
		return false;
	} 

}    
     

function do_action(form_name, action_code, confirm_msg, noajax)
{
	var randomnumber = Math.floor(Math.random()*900);
	
	if(confirm_msg) {
		if(!confirm(confirm_msg)){
			return false;
		}
	}
	
	
	var array_action_url = form_name.action.split('?',2);
	action_url = array_action_url[0];
	action_params = array_action_url[1];

	//var action_url = 'http://localhost/filmclick/test.php';
	if(noajax)
	{
		var params = action_params+'&'+geturlparams(form_name)+'&rand='+randomnumber;
	} else {
		var params = action_params+'&'+geturlparams(form_name)+'&ajax=1'+'&rand='+randomnumber;
	}
	
	//var full_params = action_url+geturlparams(myform)+'&ajax=1';
	if(action_code)
	{
		params += 	'&'+action_code+'='+action_code;
	}

	//AJAX CALLBACK
	function handleRequest(originalRequest) 
	{
		//new Insertion.Bottom('content',originalRequest.responseText);
		document.getElementById('body_container').innerHTML = originalRequest.responseText;
		//alert("done");
	}
	
	if(noajax)
	{
		//alert(action_url+'?'+params);
		//form_name.submit();
		window.location = action_url+'?'+params;
	} else {
		
		var myAjax = new Ajax.Request(action_url,{method: 'post', postBody: params, /*update: $('myspan'),*/ onComplete: handleRequest}); //POST
		//var myAjax = new Ajax.Request(full_params,{method: 'post', postBody: '&pipi=okas', /*update: $('myspan'),*/ onComplete: handleRequest}); //GET
	}
	
	
}

//NAVIGATION BAR (Previous-Next Page)
function goPage(url, parameters) {

	var randomnumber = Math.floor(Math.random()*900);

	if(!parameters)
	{
		parameters = '?rand='+randomnumber;
	}
	
	var myAjax = new Ajax.Request(url+parameters+'&rand='+randomnumber,{method: 'get', /*update: $('myspan'),*/ onComplete: handleRequest});

	function handleRequest(originalRequest) {
		document.getElementById('body_container').innerHTML = originalRequest.responseText;
	}
	
	//go pages_top
	if(document.getElementById('pages_top')) {
		document.location.href = "#pages_top";
	}
}



function geturlparams_fromarray(form_name, parameters_array, autocomplete) //param_name:field
{
	
	var parameters = '';
	for(x=0; x < parameters_array.length; x++)
	{
		var par_name_value = parameters_array[x].split(':',2)
		par_name = par_name_value[0];
		par_value = par_name_value[1];
		if(!autocomplete){
			parameters += par_name+'='+document.getElementById(par_value).value+'&';
		} else {
			parameters += document.getElementById(par_value).value+'&';
		}
	}
		
	//----DELETE LAST "&"
	parameters = parameters.slice(0, -1)
	return parameters;

}

//FUNCTION TO GET PARAMETERS  "?name=value&name=value"
function geturlparams(form_name)
{

	var getallstr = '';
	
	//GET ALL TAGS
	var form_elements = form_name.getElementsByTagName("*");

	
	for(x=0; x < form_elements.length; x++)
	{
		//----FILTERING INPUT TAGS
		if(form_elements[x].tagName == "INPUT"){
		
			//Text Fields
			if(form_elements[x].type == "text"){
				getallstr += form_elements[x].name + "=" + form_elements[x].value + "&";
			}
			
			//Checkboxes
			if(form_elements[x].type == "checkbox"){	
				if (form_elements[x].checked) {
					getallstr += form_elements[x].name + "=" + form_elements[x].value + "&";
				}// else {
					//getallstr += form_elements[x].name + "=&";
				//}
			}
			
			//Hidden Fields
			if(form_elements[x].type == "hidden"){
				getallstr += form_elements[x].name + "=" + form_elements[x].value + "&";
			}
			
			//Radio Buttons
			if(form_elements[x].type == "radio"){
				if (form_elements[x].checked) {
					getallstr += form_elements[x].name + "=" + form_elements[x].value + "&";
				}
			}
		
		}
		
		//----FILTERING SELECT TAGS
		if(form_elements[x].tagName == "SELECT"){
			//var sel = form_elements[x];
			//getallstr += sel.name + "=" + sel.options[sel.selectedIndex].value + "&";

			if(form_elements[x].value != "0"){
				getallstr += form_elements[x].name + "=" + form_elements[x].value + "&";
			}
		}

		//----FILTERING TEXTAREA TAGS
		if(form_elements[x].tagName == "TEXTAREA"){
			
			//if(form_elements[x].type == "text"){
				getallstr += form_elements[x].name + "=" + form_elements[x].value + "&";
			//}
			
		}
	}
	
	//----DELETE LAST "&"
	getallstr = getallstr.slice(0, -1)
			
	return getallstr;
}


/*
	PRELOAD IMAGES FUNCTIONS
*/
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
