function dosubmitAdvancedSearch(thisform , buton)
{
	with( thisform )
	{
		var bHaveError = false;
		err = document.getElementById("div_error_dlg");

		if( err )
		{
			err.innerHTML = "";
			var bHaveError = false;
		}

		if( bHaveError == false )
		{
			var param = buildJSONParam(thisform, buton);

			var action2 = '{"actions":[{"action":"actions/search_view_produse.php", "params":{'+ param + '}, "target":"main_content"}]}';
	        MenuActionsManager.startActions(action2);
		}
    }

}


function dosubmitBileteAvion(thisform , buton)
{
	with( thisform )
	{
		var bHaveError = false;
		err = document.getElementById("div_error_dlg");

		if( err )
		{
			err.innerHTML = "";
			var bHaveError = false;
		}

		if( bHaveError == false )
		{
			var param = buildJSONParam(thisform, buton);

			var action2 = '{"actions":[{"action":"actions/pag_form_bilete.php", "params":{'+ param + '}, "target":"main_content"}]}';
	        MenuActionsManager.startActions(action2);
		}
    }

}

function validate_email( field )
{
	with (field)
	{
		apos=value.indexOf("@");
		dotpos=value.lastIndexOf(".");
		if (apos<1||dotpos-apos<2)
		 	{ return false; }
		else
			{ return true; }
	}
}

function validate_required( field )
{
	with (field)
	{
		if (value==null||value=="")
		  { return false; }
		else
		{ return true; }
	}
}

function buildJSONParam( form, button )
{
		var param = "";

		if( button )
		{
			param = '"' + button.name + '":"' + button.value + '"';
		}

		for(i=0; i < form.elements.length; i++)
		{
			if( form.elements[i].type != "button" && form.elements[i].type != "image" && form.elements[i].type != "submit" && form.elements[i].type != "reset")
			{
				if( form.elements[i].type == 'checkbox' )
				{
					if(param != "")
						param = param + ',';
					param = param + '"'+ form.elements[i].name + '":"' + (form.elements[i].checked==true?1:0) + '"';
				}else if( form.elements[i].type == 'radio' )
				{
					if( form.elements[i].checked == true )
					{
						if(param != "")
							param = param + ',';
						param = param + '"'+ form.elements[i].name + '":"' + form.elements[i].value + '"';
					}
				}
				else if( form.elements[i].type == 'textarea')
				{
					if(param != "")
						param = param + ',';
					param = param + '"'+ form.elements[i].name + '":'+YAHOO.lang.JSON.stringify(form.elements[i].value);
				}
				else
				{
					if(param != "")
						param = param + ',';
					param = param + '"'+ form.elements[i].name + '":"' + form.elements[i].value + '"';
				}
			}
		}
		return param;
};

function buildRequestParam( form, button )
{
		var param = "";

		if( button )
		{
			param = button.name + '=' + button.value;
		}

		for(i=0; i < form.elements.length; i++)
		{
			if( form.elements[i].type != "button" && form.elements[i].type != "image" && form.elements[i].type != "submit" && form.elements[i].type != "reset")
			{
				if( form.elements[i].type == 'checkbox' )
				{
					if(param != "")
						param = param + '&';
					param = param + form.elements[i].name + '=' + (form.elements[i].checked==true?1:0);
				}else if( form.elements[i].type == 'radio' )
				{
					if( form.elements[i].checked == true )
					{
						if(param != "")
							param = param + '&';
						param = param + form.elements[i].name + '=' + form.elements[i].value;
					}
				}
				else if( form.elements[i].type == 'textarea')
				{
					if(param != "")
						param = param + '&';
					param = param + form.elements[i].name + '=' + form.elements[i].value;
				}
				else
				{
					if(param != "")
						param = param + '&';
					param = param + form.elements[i].name + '=' + form.elements[i].value;
				}
			}
		}

		return param;
};

function redirectFromSubmit(link, form, button )
{
	window.location = link+'?'+buildRequestParam(form, button);
}


function buildRewriteParam( form )
{
		var param = "";

		for(i=0; i < form.elements.length; i++)
		{
			if( form.elements[i].type != "button" && form.elements[i].type != "image" && form.elements[i].type != "submit" && form.elements[i].type != "reset")
			{
				if( form.elements[i].type == 'checkbox' )
				{
					if(param != "")
						param = param + '--';
					param = param + (form.elements[i].checked==true?1:0);
				}else if( form.elements[i].type == 'radio' )
				{
					if( form.elements[i].checked == true )
					{
						if(param != "")
							param = param + '--';
						param = param + form.elements[i].value;
					}
				}
				else if( form.elements[i].type == 'textarea')
				{
					if(param != "")
						param = param + '--';
					param = param + form.elements[i].value;
				}
				else
				{
					if(param != "")
						param = param + '--';
					param = param + form.elements[i].value;
				}
			}
		}
		return param;
};

function redirectRewriteFromSubmit(form )
{
	window.location = buildRewriteParam(form)+'.html';
}


function sendData( action, params, target )
{
	var action2 = '{"actions":[{"action":"' + action + '", "params":{'+ params + '}, "target":"' + target + '"}]}';
	//alert( action2 );
    MenuActionsManager.startActions(action2);
}


function Login( params )
{
	var action2 = '{"actions":[{"action":"actions/user/logincheck.php", "params":{'+ params + '}, "target":"main_content"}, {"action":"actions/user/user.php", "params":{}, "target":"div_autentif"}, {"action":"actions/user/user.php", "params":{}, "target":"div_autentif"}]}';
	//alert( action2 );
    MenuActionsManager.startActions(action2);
}

//have to overwrite this
function GetDataForCos( id_produs )
{
	var elem = null;
	var ret = "";

	elem = document.getElementById('cant_' + id_produs);
	if( elem )
	{
		var cant =elem.value;
		if(cant && cant != 0)
			ret = '"cantitate":"' + cant + '"';
		else
			return ret;
	}


	var elems = document.getElementsByName( 'col_int_' + id_produs );

	for (var i=0; i < elems.length; i++)
	{
		if( elems[i].checked )
		{
			var col_int = elems[i].value;
			ret = ret + ', "col_int":"' + col_int + '"';
		}
	}

	elems = document.getElementsByName( 'col_ext_' + id_produs );

	for (var i=0; i < elems.length; i++)
	{
		if( elems[i].checked )
		{
			var col_ext = elems[i].value;
			ret = ret + ', "col_ext":"' + col_ext + '"';
		}
	}

	return ret;
}

function AdaugaInCos( id_produs )
{
	//alert(id_produs);
	var data = GetDataForCos(id_produs);
	if( data != "" )
	{
		var action = "actions/cos/cos.php";
		var params = '"command":"adauga", "id_produs":"' + id_produs + '", ' + data  ;
		var target ="div_cos";

		var action1 = '{"actions":[{"action":"' + action + '", "params":{'+ params + '}, "target":"' + target + '"}]}';

		//alert(action1);

		MenuActionsManager.startActions(action1);
	}
}




function getAction( actiune )
{

}




function clearDiv( divName )
{
	var div = document.getElementById( divName );

	if( null != div )
	{
		div.innerHTML = "";
	}
}


/*
 * return IE6, IE7, IE5, IE8, Mozilla
 */
function checkBrowser()
{
	if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
	 var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
	 if (ieversion>=8)
		 return "IE8";
	 else if (ieversion>=7)
		 return "IE7";
	 else if (ieversion>=6)
		 return "IE6";
	 else if (ieversion>=5)
		 return "IE5";
	}
	else if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)){ //test for Firefox/x.x or Firefox x.x (ignoring remaining digits);
		 var ffversion=new Number(RegExp.$1) // capture x.x portion and store as a number
		 if (ffversion>=3)
			 return "FF3";
		 else if (ffversion>=2)
			 return "FF2";
		 else if (ffversion>=1)
			 return "FF1";
		}
	else if (/Opera[\/\s](\d+\.\d+)/.test(navigator.userAgent)){ //test for Opera/x.x or Opera x.x (ignoring remaining decimal places);
		 var oprversion=new Number(RegExp.$1) // capture x.x portion and store as a number
		 if (oprversion>=10)
		  	return "OO10.x";
		 else if (oprversion>=9)
			 return "OO9.x";
		 else if (oprversion>=8)
			 return "OO8.x";
		 else if (oprversion>=7)
			 return "OO7.x";
	}
}

function loadjscssfile(filename, filetype){
 if (filetype=="js"){ //if filename is a external JavaScript file
  var fileref=document.createElement('script')
  fileref.setAttribute("type","text/javascript")
  fileref.setAttribute("src", filename)
 }
 else if (filetype=="css"){ //if filename is an external CSS file
  var fileref=document.createElement("link")
  fileref.setAttribute("rel", "stylesheet")
  fileref.setAttribute("type", "text/css")
  fileref.setAttribute("href", filename)
 }
 if (typeof fileref!="undefined")
  document.getElementsByTagName("head")[0].appendChild(fileref)
}


function toggleElem(id)
{
	elem = document.getElementById(id);
	if(null != elem)
	{
		if( elem.style.display == '' || elem.style.display == 'block')
		{
			elem.style.display = 'none';
		}else
		{
			elem.style.display = 'block';
		}
	}
}

function hideElem(id)
{
	elem = document.getElementById(id);

	if(null != elem)
	{
		elem.style.display = 'none';
	}
}

function showElem(id)
{
	elem = document.getElementById(id);

	if(null != elem)
	{
		elem.style.display = 'block';
	}
}

function toggleMenuDiv(id, id_parent)
{
	target_id = 'div_child_'+id_parent+'_'+id;

	var divs = document.getElementsByTagName('div');
	var _l = divs.length;
	for (var i = 0; i < _l; i++)
	{
		var div = divs[i];

		if(div.id.indexOf('div_child_'+id_parent+'_') == 0)
		{
			hideMenuDiv(div);
		}

		if(div.id.indexOf('div_meniu_'+id+'_') == 0)
		{
			hideMenuDiv(div);
		}
	}

	showMenuDiv(target_id);

};

function hideMenuDiv(elem)
{
	var children = elem.childNodes;
	for( var i = 0; i<children.length; i++ )
	{
		hideMenuDiv(children[i]);
	}

	if(elem.id)
	{
		if(elem.id.indexOf('div_child_') == 0)
		{
			hideElem(elem.id);
		}

		if(elem.id.indexOf('div_meniu_') == 0)
		{
			hideElem(elem.id);
		}
	}
}

function showMenuDiv(id)
{
	var elem = document.getElementById(id);
	var children = elem.childNodes;
	for( var i = 0; i<children.length; i++ )
	{
		var child = children[i];
		if(child.id)
		{
			if(child.id.indexOf('div_child_') == 0)
			{
				showElem(child.id);
			}

			if(child.id.indexOf('div_meniu_') == 0)
			{
				showElem(child.id);
			}
		}
	}
	showElem(id);
}

function enable_calendar() {

	var nodelist = document.getElementsByTagName("div");
	for (var i = 0; i < nodelist.length; i++) {
		var node = nodelist[i];

		if (node.id.indexOf('date_name_') != -1) {
			var idDiv_Name = node.id;
			var idDiv_t = 'date_t_' + idDiv_Name.substring(10);

        var Name = document.getElementById(idDiv_Name);
        var t = document.getElementById(idDiv_t);

			if (null != Name && null != t) {

            Calendar.setup({
            inputField     :    Name.innerHTML,     // id of the input field
            ifFormat       :    "%d-%m-%Y",
					button : t.innerHTML, // trigger for the calendar (button
											// ID)
            align          :    "Tl",           // alignment (defaults to "Bl")
            singleClick    :    true
            });
        }

    }
}

	/*
	 * var x = document.getElementById('Nr_date'); var y =
	 * parseInt(x.innerHTML);
	 *
	 * var i = 0;
	 *
	 * for (i = 0; i < y; i++) { var idDiv_Name = i + "_name"; var idDiv_t = i +
	 * "_t";
	 *
	 * var idDiv_Name1 = i + "_name_1"; var idDiv_t1 = i + "_t_1";
	 *
	 * var Name = document.getElementById(idDiv_Name); var t =
	 * document.getElementById(idDiv_t);
	 *
	 * var Name1 = document.getElementById(idDiv_Name1); var t1 =
	 * document.getElementById(idDiv_t1);
	 *
	 * if( null != Name && null != t ) {
	 *
	 * Calendar.setup({ inputField : Name.innerHTML, // id of the input field
	 * ifFormat : "%d-%m-%Y", button : t.innerHTML, // trigger for the calendar
	 * (button ID) align : "Tl", // alignment (defaults to "Bl") singleClick :
	 * true }); }
	 *
	 * if( null != Name1 && null != t1 ) {
	 *
	 * Calendar.setup({ inputField : Name1.innerHTML, // id of the input field
	 * ifFormat : "%d-%m-%Y", button : t1.innerHTML, // trigger for the calendar
	 * (button ID) align : "Tl", // alignment (defaults to "Bl") singleClick :
	 * true }); }
	 *  }
	 */
}

function ClearField(id) {
    var x = document.getElementById(id);
    x.value = "";
}

function ConfirmAndGo(URL, message) {
  var answer = confirm( message )
  if (answer){
     window.location = URL;
  }
}

function redirectAction(formObj, newPage) {
  formObj.action = newPage;
  formObj.Onsubmit();
}



MenuProcessorAjax = function(){}

MenuProcessorAjax.prototype.handleSuccess = function(o)
{
	var div = document.getElementById( String(o.argument.target) );
	//alert(o.responseText);
	if(null != div)
		div.innerHTML = o.responseText;

	if( o.argument.onComplete != undefined )
	{
		eval(o.argument.onComplete);
	}
}

MenuProcessorAjax.prototype.handleFailure = function(o)
{
	//alert( o.responseText );
}

MenuProcessorAjax.prototype.startRequest = function( arg )
{
	var params = "";
	//prepare arguments
	for( param in arg.params )
	{
		params = params + param + "=" + arg.params[param] + "&";
	}
	///alert(params);

    YAHOO.util.Connect.asyncRequest('POST', arg.action, {
        success:this.handleSuccess,
        failure:this.handleFailure,
        scope: MenuProcessorAjax,
        argument: arg } , params);
}
//////////////////////////////////////////////////////

HistoryProcessorAjax = function(){}

HistoryProcessorAjax.prototype.handleSuccess = function(o)
{
	var div = document.getElementById( String(o.argument.target) );
	//alert(o.responseText);
	if(div)
		div.innerHTML = o.responseText;
}

HistoryProcessorAjax.prototype.handleFailure = function(o)
{
	//alert( o.responseText );
}

HistoryProcessorAjax.prototype.startRequest = function( history, action )
{
	var params = "";
	params = 'target=' + history.target;
	params = params +'&descriere=' + history.descriere;
	params = params +'&action=' + action;
	if( history.clear  )
	{
		params = params +'&clear=' + history.clear;
	}
	//alert(params);

    YAHOO.util.Connect.asyncRequest('POST', "actions/fillhistory.php", {
        success:this.handleSuccess,
        failure:this.handleFailure,
        scope: HistoryProcessorAjax,
        argument: history } , params);
}
//////////////////////////////////////////////////////
var MenuActionsManager = {
		startActions:function( actions )
		{
			var actiuni;
			try
			{
				//alert(actions);
				if (typeof actions == 'string')
					actiuni = YAHOO.lang.JSON.parse(actions);
				else
					actiuni = actions;
			}catch( e )
			{
				alert("json bad format");
				alert(actions);
				return;
			}

			for ( var j in actiuni.clear )
			{
				var div = document.getElementById(actiuni.clear[j]);
				if( null != div)
				{
					div.innerHTML = "";
				}
			}

			for ( var i in actiuni.actions )
			{
				obj  = new MenuProcessorAjax();
				obj.startRequest( actiuni.actions[i] );

			}

			if( actiuni.history  )
			{
				obj2  = new HistoryProcessorAjax();
				obj2.startRequest( actiuni.history, actions );
			}
		}
}
