function isArray(obj) {
return (obj.constructor.toString().indexOf("Array") != -1);
}

function isObject(obj) {
if (obj === null || obj === undefined) return false;
else return true;	
}

function schimbClasa(clasa,cumschimb) {
if (cumschimb==0)	{
	if (clasa.indexOf('r')!=-1) return clasa.replace('r','w');
	else return clasa.replace('v','w');
}
else {
	if (clasa.indexOf('w')!=-1) return clasa.replace('w','r');
	return clasa.replace('v','r');
}

}

function asiguratProcessed() {
	if (asiguratRequest.readyState == 4) { 
		if (asiguratRequest.status==200) {  
			if (asiguratRequest.responseText=='null') {  
				if (document.getElementById('citesc')) document.getElementById('citesc').value=0; 
				alert('Eroare! Cod 0200.'); 
			} 
			else { 
				var id=asiguratRequest.responseText.split('|'); 
				var cescriu=id[3]; 
				idv=id[2]; 
				et=id[1]; 
				id=id[0]; 
				document.getElementById('numara').value=id;	
				var newdiv=document.createElement('div'); 
				newdiv.id='a'+id; newdiv.innerHTML=cescriu; 
				if (et==1) document.getElementById('contractant').appendChild(newdiv); 
				else if (et==2) document.getElementById('asigurati').appendChild(newdiv); 
				if (et==3) document.getElementById('cesionari').appendChild(newdiv); 
				
				//daca e cesionar nu mai are bifa de aceeasi adresa
				if (et==3) afisareAdresaCesionar(id);
				document.getElementById('a'+id).className = 'formular'; 
				
				if (et<3) document.getElementById('aceeasiadresa'+id).onclick = afisareAdresa; 
				document.getElementById('secundara'+id).onclick = afisareSecundara;
				document.getElementById("secundar"+id).className = "ascuns";
				if (et<3) document.getElementById('adresa'+id).className = 'ascuns';	
				if (document.getElementById('adauga'+id+'_'+et)) document.getElementById('adauga'+id+'_'+et).onclick = adaugAsigurat; 
				if (document.getElementById('adauga'+idv+'_'+et)) { 
					document.getElementById('adauga'+idv+'_'+et).className = 'ascuns'; 
				} 
				if (document.getElementById('sterge'+idv+'_'+et)) { 
					document.getElementById('sterge'+idv+'_'+et).className = 'ascuns'; 
				} 
				if (document.getElementById('sterge'+id+'_'+et)) { 	
					if (idv>0) document.getElementById('sterge'+id+'_'+et).onclick = adaugAsigurat; 
					else document.getElementById('sterge'+id+'_'+et).className = 'ascuns'; 
				} 
				document.getElementById('cnpcui'+id).onchange = validezCNP; 
				document.getElementById('strainn'+id).onclick = validezCNP; 
				document.getElementById('straind'+id).onclick = validezCNP; 
				document.getElementById('tippersoana'+id).onchange = validezCNP; 
				document.getElementById('nume'+id).onchange = validezElement; 
				document.getElementById('prenume'+id).onchange = validezElement; 
				
				document.getElementById('tara'+id).onchange = validezTara;
				if(document.getElementById('tara'+id).value=='RO') document.getElementById('judets'+id).className = 'ascuns';
				else document.getElementById('judet'+id).className = 'ascuns';
								
				document.getElementById('stara'+id).onchange = validezSTara;
				if(document.getElementById('stara'+id).value=='RO') document.getElementById('sjudets'+id).className = 'ascuns';
				else document.getElementById('sjudet'+id).className = 'ascuns';
				
				if (id==1) { 
					document.getElementById('easigurat0_2').onclick = adaugAsigurat; 
					document.getElementById('cesionar0_3').onclick = adaugAsigurat; 
					document.getElementById('acelasicontractant').onclick = bifeContractant; 
				} 
				if (document.getElementById('citesc')) document.getElementById('citesc').value=0; 
			} 
		} 
	}
window.location.hash="l"+id;
}

function validezTara(e) {
	var id = ceelement(e).split('tara')[1];

	if(document.getElementById('tara'+id).value=='RO') {
document.getElementById("judet"+id).className = "w150";
document.getElementById("judets"+id).className = "ascuns";
	}
	else {
document.getElementById("judets"+id).className = "w150";
document.getElementById("judet"+id).className = "ascuns";
	}
}

function validezSTara(e) {
	var id = ceelement(e).split('stara')[1];

	if(document.getElementById('stara'+id).value=='RO') {
document.getElementById("sjudet"+id).className = "w150";
document.getElementById("sjudets"+id).className = "ascuns";
	}
	else {
document.getElementById("sjudets"+id).className = "w150";
document.getElementById("sjudet"+id).className = "ascuns";
	}
}

// verific daca data nu e in trecut mai devreme de maine sau mai tarziu de 30 de zile
function dataStart(dStart) {
	var elemente=dStart.split("-");

	if(checkdate(elemente[1],elemente[0],elemente[2])) {
		var incepe = new Date(elemente[2],elemente[1]-1,elemente[0],23,59,59);
		minim = new Date();
		maxim = new Date();
		minim.setDate(minim.getDate()+1);
		maxim.setDate(maxim.getDate()+365);
		if (incepe < minim) {
			return 1; //prea devreme
		}
		else if (incepe > maxim) {
			return 2; //prea tarziu
		}
		else return 4; //corect
	}
	else return 3; //data incorecta
}


//verific daca o data exista in calendar
function checkdate ( m, d, y ) {
    // Returns true(1) if it is a valid date in gregorian calendar  
    return m > 0 && m < 13 && y > 0 && y < 32768 && d > 0 && d <= (new Date(y, m, 0)).getDate();
}

function ceelement(e) {
if (!e) var e = window.event;

if(typeof(e) !== 'undefined') {
if (e.target) targ = e.target;
else if (e.srcElement) targ = e.srcElement;
}

if(typeof(targ) !== 'undefined') {
if (targ.nodeType == 3) // defeat Safari bug
targ = targ.parentNode;

if (targ.id) return targ.id;	
}
else return 0;
}

function createRequest() {
try {
request = new XMLHttpRequest();
} catch (tryMS) {
try {
request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (otherMS) {
try {
request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
request = null;
}
}
}
return request;
}

function addEventHandler(obj, eventName, handler) {
if (document.attachEvent) {
obj.attachEvent("on" + eventName, handler);
} else if (document.addEventListener) {
obj.addEventListener(eventName, handler, false);
}
}

function getActivatedObject(e) {
var obj;
if (!e) {
// early version of IE
obj = window.event.srcElement;
} else if (e.srcElement) {
// IE 7 or later
obj = e.srcElement;
} else {
// DOM Level 2 browser
obj = e.target;
}
return obj;
}

function isArray(arg) { Code
if (typeof arg == 'object') {
var criteria = arg.constructor.toString().match(/array/i);
return (criteria != null);
}
return false;
}

function fieldIsFilled(e) {
var me = getActivatedObject(e);
if (me.value == "") {
// Display an error message
} else {
// No problems; we're good to go
}
}

function emailIsProper(e) {
var me = getActivatedObject(e);
if (!/^[\w\.-_\+]+@[\w-]+(\.\w{2,4})+$/.test(me.value)) {
// Display an error message
} else {
// No problems; we're good to go
}
}

function fieldIsLetters(e) {
var me = getActivatedObject(e);
var nonAlphaChars = /[^a-zA-Z]/;
if (nonAlphaChars.test(me.value)) {
// Display an error message
} else {
// No problems; we're good to go
}
}

function fieldIsNumbers(e) {
var me = getActivatedObject(e);
var nonNumericChars = /[^0-9]/;
if (nonNumericChars.test(me.value)) {
// Display an error message
} else {
// No problems; we're good to go
}
}
