//Regexuri validare
name_re=/^[\w\-+\/\. ,?]+$/;
namesearch_re=/^%?[\w\-+\/\. ?]+$/;

code_re=/^[\w\-]{0,20}$/;

date_re=/^\d{4}-\d{2}-\d{2} \d{2}\:\d{2}(?:\:\d{2})*$/;
dateshort_re=/^\d{4}-\d{2}-\d{2}$/;

email_re=/^[\w\-_.]+\@[\w\-_.]+$/;
emailsearch_re=/^%?(?:[\w@.]+)?$/;

poza_re=/^[\w\-]{1,20}$/;

numeric_re=/^[\s\-\d]{1,}$/;
url_re=/^(?:(?:ftp|https?):\/\/)?(?:[a-z0-9](?:[-a-z0-9]*[a-z0-9])?\.)+(?:com|edu|biz|org|gov|int|info|mil|net|name|museum|coop|aero|[a-z][a-z])\b(?:\d+)?(?:\/[^;"'<>()\[\]{}\s\x7f-\xff]*(?:[.,?]+[^;"'<>()\[\]{}\s\x7f-\xff]+)*)?/;
content_text_re=/^(.|(\r\n))*$/;

password_re=/^[^`&]+$/;

loc_re=/^[\w\s\-\.()]+$/;
str_re=/^[\w\s\-\.()]+$/;

forbidden_re=/[`]|(?:\.\.)/;

//#########################################

function confirmLink(msg)
{
var is_confirmed = confirm(msg);
return is_confirmed;
}

//#########################################
function validx(re,x,msg){
OK = re.exec(x)   
if (!OK){
	window.alert(msg);
	return false;
}
return true;
}

//#########################################
function is_forbidden_regex(re,x,msg){
OK = re.exec(x)   
if (OK){
	window.alert(msg);
	return true;
}
return false;
}

//#########################################
//selecteaza toate checkboxurile dintr-o forma
function selectall(xform){
for (var i = 0; i < xform.elements.length; i++) {      
	if(xform.elements[i].type=='checkbox'){
		//document.write(document.browse_form.elements[i].name +"&nbsp;"+ document.browse_form.elements[i].type+"<BR>")   
		xform.elements[i].checked=true;
	}
}
}

//#########################################
//deselecteaza toate checkboxurile dintr-o forma
function deselectall(xform){
for (var i = 0; i < xform.elements.length; i++) {      
	if(xform.elements[i].type=='checkbox'){
		//document.write(document.browse_form.elements[i].name +"&nbsp;"+ document.browse_form.elements[i].type+"<BR>")   
		xform.elements[i].checked=false;
	}
}
}

//#########################################
//face toggle, in functie de valoarea lui x, cu toate checkboxurile din forma xform
function sel_toggle(x,xform){
if(x==true){
	selectall(xform);
}else{
	deselectall(xform);
}
}

//#########################################
//deschide o fereastra de dialog, fara meniu si status bar
function meswin(urlx,width,height,title){
	//window.alert('scrollbars=yes,width='+width+', height='+height+', resizable=yes, status=yes');
	window.open(urlx,'picker','scrollbars=yes,width='+width+', height='+height+', resizable=yes, status=yes');
}

//#########################################
//schimba 2 variabile dintr-o forma a ferestrei apelante
function change_opener_value(opener_form,opener_var,newvalue,opener_var2,newvalue2) {
	s='window.opener.document.'+opener_form+'.'+opener_var+".value='"+newvalue+"'";
	//exemplu: window.opener.document.form1.username.value=newvalue;
	eval(s);
	
	if(opener_var2){
		s2='window.opener.document.'+opener_form+'.'+opener_var2+".value='"+newvalue2+"'";
		eval(s2);
	}

	window.opener.focus();
	window.close();
}


//#########################################
//seteaza valoarea unui obiect dintr-o forma la cea a obiectului memoval din aceeasi forma
//memoval a fost setat cu onFocus la intrarea in obiectul care nu se doreste a fi modificat
function nochange(val,obj,mes){
obj.value=obj.form.memoval.value;
window.alert(mes);
}

//#########################################
//deschide o fereastra noua de dimensiunile specificate, deschide in ea url-ul doc si-i da focusul
function show_window(urlx,width,height){
	winx=window.open(urlx,'qqq','status=no,toolbar=no,scrollbars=yes,menubar=no,titlebar=1,resizable=yes,height='+height+',width='+width);
	winx.moveTo(10,10);
	winx.focus()
}
