function addEvent(elm, evType, fn, useCapture)
{
      if (elm.addEventListener)     {
            elm.addEventListener(evType, fn, useCapture);
            return true;
      }
      else if (elm.attachEvent)     {
            var r = elm.attachEvent('on' + evType, fn);
            return r
      }
      else  {
            elm['on' + evType] = fn;
      }
}

function handleEnter(fieldName, event) { 
    var keyCode = document.all ? event.keyCode : event.which;     
    if (keyCode == 13) { 
        if ( (document.getElementById(fieldName).type == "button" ) || ( document.getElementById(fieldName).type == "submit" ) || ( document.getElementById(fieldName).type == "image" ) || ( document.getElementById(fieldName).tagName == "A" ) )
        {
            document.getElementById(fieldName).click();
        } else {
            document.getElementById(fieldName).focus();
        }
    return false; 
    } else {
        return true; 
    } 
}


function Help(page)
{

window.open('./Controls/Help/'+ page,'PopUP','width=557,height=220,menubar=no,scrollbars=yes,toolbar=no,location=no,directories=no,resizable=yes,top=200,left=300');
}


function Pop(page)
{

window.open('./Controls/'+ page,'PopUP','width=400,height=350,menubar=no,scrollbars=no,toolbar=no,location=no,directories=no,resizable=no,top=200,left=300');
}

function PopBig(page)
{

window.open('./Controls/'+ page,'PopUP','width=800,height=600,menubar=no,scrollbars=yes,toolbar=no,location=no,directories=no,resizable=no,top=200,left=300');
}

function PopBig2(page)
{

window.open(page,'PopUP1','width=800,height=600,menubar=no,scrollbars=yes,toolbar=no,location=no,directories=no,resizable=no,top=200,left=300');
}

function PopBig3(page)
{

window.open(page,'PopUP2','width=800,height=600,menubar=no,scrollbars=yes,toolbar=no,location=no,directories=no,resizable=no,top=200,left=300');
}


function setControlStateVisible(control) {
	if (control.type == "text") {
			control.type="hidden"
		} 
	if (control.type == "hidden") {
			control.type="text"
		}
		
}

function setControlState(control, state) {
	if (state) {
		control.style.background='gainsboro';
		if (control.type == "select-one") {
			control.selectedIndex=0;
		} else {
			control.value='';
		}
		control.disabled=true;
	} else {
		control.style.background='white';
		if (control.type == "select-one") {
			control.selectedIndex=0;
		} else {
			control.value='';
		}
		control.disabled=false;
	}
}


function validateControl(Ctrl, PromptStr, nameDiv) {
	if (Ctrl.disabled == false) {
		if (Ctrl.value == "0" || Ctrl.value == ""){
			if (nameDiv != '') {
				document.getElementById('validator' + nameDiv).innerHTML = PromptStr;
			}
			return false;
		}else{
			if (nameDiv != '') {
				document.getElementById('validator' + nameDiv).innerHTML = "";
			}
			return true;
		}
	}
	else
	{
	return true;
	}
}

function validateComp(Ctrl, Ctrl1, nameDiv) {
	if (Ctrl1.value < Ctrl.value){
	document.getElementById('validator' + nameDiv).innerHTML = "La fecha de inicio no puede ser posterior a la de fin.";
		return false;
	}else{
		document.getElementById('validator' + nameDiv).innerHTML = "";
		return true;
	}

}
function validateDate(Ctrl, PromptStr, nameDiv) {
	var rDate = "^(19|20)\\d\\d$";
	var val = new RegExp(rDate);
	var y = (new Date()).getFullYear();

	
	
	if (val.test(Ctrl.value)&& Ctrl.value <= y){
		document.getElementById('validator' + nameDiv).innerHTML = "";
		return true;
	}else{
		document.getElementById('validator' + nameDiv).innerHTML = PromptStr;
		return false;
	}
}




function validateStudyForm(drpStudyType, drpStudyField, droStudyTitle, txtTitle, txtInstitution, txtStartYear, txtEndYear, chkCurrent){
	var isValid1 = true;
	var isValid2 = true;
	var isValid3 = true;
	var isValid4 = true;
	var isValid5 = true;
	var isValid6 = true;
	var isValid7 = true;
	
	
	var Ctrl1;
	
	var Ctrl = document.getElementById(drpStudyType.id);
	isValid1 = validateControl(Ctrl, "*", "StudyType");
	
	if (Ctrl.value != 2){
		Ctrl = document.getElementById(drpStudyField.id);
		isValid2 = validateControl(Ctrl, "*","StudyField");
	}
	
	Ctrl = document.getElementById(droStudyTitle.id);
	isValid3 = validateControl(Ctrl, "*","StudyTitle");
	
	Ctrl = document.getElementById(txtTitle.id);
	isValid4 = validateControl(Ctrl, "*","title");
	
	Ctrl = document.getElementById(txtInstitution.id);
	isValid5 = validateControl(Ctrl, "*","Institution");
	
	Ctrl = document.getElementById(txtStartYear.id);
	isValid6 = validateControl(Ctrl, "*","StartYear");
	
	if (isValid6)
	{
	Ctrl = document.getElementById(txtStartYear.id);
	isValid6 = validateDate(Ctrl, "Formato incorrecto (1900-Actual)","StartYear");
	}
	
	if (!chkCurrent.checked){
		Ctrl1 = document.getElementById(txtEndYear.id);
	isValid7 = validateControl(Ctrl1, "*","EndYear");
		if (isValid7) 
		{
		Ctrl1 = document.getElementById(txtEndYear.id);
		isValid7 = validateDate(Ctrl1, "Formato incorrecto (1900-Actual)","EndYear");
			if (isValid7){
				isValid7= validateComp(Ctrl, Ctrl1, "EndYear");			
			
			}
		}
	
	}
	
	if (isValid1 && isValid2 && isValid3 && isValid4 && isValid5 && isValid6 && isValid7){
	
	return true;}
	else{
	return false;}
}
function validateStudyField(drpStudyField){
		var Ctrl1;
		Ctrl = document.getElementById(drpStudyField.id);
		return validateControl(Ctrl, "*","StudyField");
}

function validateActivity(controldrp, controltxt)
{
		var ret;
		ret = validateControl(controldrp,"*","") && validateControl(controltxt,"*. Debes ingresar un a&ntildeo de egreso.","") && (controltxt.value > 1920 || controltxt.disabled==true) &&  (controltxt.value < 2999 || controltxt.disabled==true);
		if ( ret == false ) {
			alert('Debes elegir la carrera e ingresar el a' + String.fromCharCode(241) + 'o de graduacion');
		}
		return ret;
}

function validateActivityWithPromotion(controldrp, controltxt, controlprom)
{
		var ret;
		ret = validateControl(controldrp,"*","") && (validateControl(controlprom,"*","") || controlprom.disabled==true) && validateControl(controltxt,"*. Debes ingresar un a&ntildeo de egreso.","") && (controltxt.value > 1920 || controltxt.disabled==true) &&  (controltxt.value < 2999 || controltxt.disabled==true);
		if ( ret == false ) {
			alert('Debes elegir la carrera, la promocion e ingresar el a' + String.fromCharCode(241) + 'o de graduacion');
		}
		return ret;
}


function getBack(){
	history.go(-1)
}
function getPage(url){
		window.location.href=url;
}