ListaAreas = new Array();

function TArea(){}

function AddArea2Table(Elemento, Pos, editando){
	if (editando){
		tr = document.getElementById("rowAr" + Pos);
	}
	else{
		if (IE) {
			tr = document.getElementById('tblAreas').insertRow();
		}
		else{
			tabla = document.getElementById('tblAreas');
			tr = document.createElement("TR");
		}
		
		tr.setAttribute("id", "rowAr" + Pos);
	}
	
	if (IE) {
		td1 = tr.insertCell();
		td1.appendChild(createSpan(Elemento.Categoria));
		td1.setAttribute("valign", "top");
		td1.setAttribute("width", "100px;");		
		
		td2 = tr.insertCell();
		td2.appendChild(createSpan(Elemento.Subcategoria));
		td2.setAttribute("valign", "top");
		td2.setAttribute("width", "100px;");
		
		td3 = tr.insertCell();
		td3.innerHTML = '<a href="javascript:;" onclick="javascript:DeleteAreaFromTable(\'tblAreas\', \'rowAr' + Pos + '\');"><img class="img_noborde" src="/images/iconos/papelera.gif"></a>';
		
        var rndCaja = new RndBox ('rndBoxArea',0);        
        if(rndCaja)rndCaja.Resize();            		
	}
	else {
		td1 = document.createElement("TD");
		td1.appendChild(createSpan(Elemento.Categoria));
		td1.setAttribute("valign", "top");
		td1.setAttribute("width", "100px;");
		
		tr.appendChild(td1);

		td2 = document.createElement("TD");
		td2.appendChild(createSpan(Elemento.Subcategoria));
		td2.setAttribute("valign", "top");
		td2.setAttribute("width", "100px;");
		tr.appendChild(td2);

		td3 = document.createElement("TD");
		td3.innerHTML = '<a href="javascript:;" onclick="javascript:DeleteAreaFromTable(\'tblAreas\', \'rowAr' + Pos + '\');"><img class="img_noborde" src="/images/iconos/papelera.gif"></a>';
		tr.appendChild(td3);
		
		tabla.appendChild(tr);
		
        var tbl = document.getElementById('tblAreas');
        var rndCaja = new RndBox ('rndBoxArea',0);
        if(rndCaja)rndCaja.Resize();				
	}
	
	EnabledRndButton('btnCatAdd',true);
}

function LoadAreaFromTable(Row){
	var Pos = Row.substr(5, Row.length - 5);
	var Elemento = ListaAreas[Pos];

	ClearArea();
	
	document.getElementById("frm_Area_Categoria").value = Elemento.IdCategoria;
	document.getElementById("frm_Area_Subcategoria").value = Elemento.IdSubcategoria;
	document.getElementById("frm_Area_Anos").value = Elemento.IdAnosExperiencia;
}

function ClearArea(){
	//document.getElementById("frm_Area_Categoria").options[0].selected = true;
	if (document.getElementById("frm_Area_Subcategoria").value != 0){
		document.getElementById("frm_Area_Subcategoria").options[0].selected = true;
	}	
	document.getElementById("frm_Area_Anos").options[0].selected = true;
}

function DeleteAreaFromTable(Tabla, Row){	
	if (IE) {				
		var Pos = Row.substr(5, Row.length - 5);
		document.getElementById(Tabla).deleteRow(document.getElementById(Row).rowIndex);

        var rndCaja = new RndBox ('rndBoxArea',0);
        if(rndCaja)rndCaja.Resize();
	}
	else{
		var Pos = Row.substr(5, Row.length - 5);
		tr = document.getElementById(Row);
		
		tr.deleteCell(2);
		tr.deleteCell(1);
		tr.deleteCell(0);

        var tbl = document.getElementById('tblAreas');
        var rndCaja = new RndBox ('rndBoxArea',tbl.clientHeight);
        if(rndCaja)rndCaja.Resize();						
	}
	ListaAreas[Pos].Eliminado = true;
	
	ClearArea();
	GuardarArrayAreas();

}

function AddArea(){
	if (ValidarArea()){
		var ele = InstanciarArea();
		var Pos = 0;
		var existe = false;
		var arr = document.getElementById("arrAreas").value.split("|");
		
		for (i = 0; i < arr.length; i++){
			var arrEle = arr[i].split("~");

			if (arrEle[2] == ele.SubcategoryId){
				// Elemento existente y no eliminado?
				if (arrEle[6] == 'false'){
					existe = true;
					Pos = i;
				}
			}
		}

		if (!existe){
			Pos = ListaAreas.length;
			ListaAreas[Pos] = ele;
			AddArea2Table(ele, Pos, false);
		}
		else{
			ListaAreas[Pos] = ele;
			
			tr = document.getElementById("rowAr" + Pos);
		
			if(tr != 'undefined'){
				tr.deleteCell(2);
				tr.deleteCell(1);
				tr.deleteCell(0);
			}
			
			AddArea2Table(ele, Pos, true);
		}
		
		
		ClearArea();
		GuardarArrayAreas();
	}
	else
	{
	EnabledRndButton('btnCatAdd',true);
	}
}

function InstanciarArea(){
	var ele = new TArea();
			
	Area_Categoria = document.getElementById("frm_Area_Categoria");
	Area_Subcategoria = document.getElementById("frm_Area_Subcategoria");
	Area_Anos = document.getElementById("frm_Area_Anos");
	
	ele.Id = Area_Categoria.value;
	ele.Categoria = Area_Categoria.options[Area_Categoria.selectedIndex].text;
	ele.SubcategoryId = Area_Subcategoria.value;
	ele.Subcategoria = Area_Subcategoria.options[Area_Subcategoria.selectedIndex].text;
	ele.IdAnosExperiencia = Area_Anos.value;
	ele.AnosExperiencia = Area_Anos.options[Area_Anos.selectedIndex].text;
	ele.Eliminado = false;
	
	return ele;	
}

function GuardarArrayAreas(){	
	var strResult = "";

	for (i = 0; i < ListaAreas.length; i++){
		ele = ListaAreas[i];

		if(!ele.Eliminado)
		{
			strResult += ele.Id + "~";
			strResult += ele.Categoria + "~";
			strResult += ele.SubcategoryId + "~";
			strResult += ele.Subcategoria + "~";
			strResult += ele.IdAnosExperiencia + "~";
			strResult += ele.AnosExperiencia + "~";
			strResult += ele.Eliminado + "|"
		}
	}
	
	strResult = strResult.substr(0, strResult.length - 1);

	document.getElementById("arrAreas").value = strResult;

	return true;
}

function ValidarArea(){
	bOk = true;
	var summary = '';
	
	Area = document.getElementById("frm_Area_Subcategoria").value;
	Anos = document.getElementById("frm_Area_Anos").value;

	if (isNaN(Area) || Area == 0)
	{
		bOk = false;		
		summary += '- '+ GetString('valrSubcategoria')+'\n';
	}
	
	if (isNaN(Anos) || Anos == 0)
	{
		bOk = false;		
		summary += '- '+ GetString('valAnosExperiencia')+'\n';
	}
	
	if (!bOk) {
		alert(summary);
	}
	
	return bOk; 
}

function createSpan(text,bold)
{
	var r;
	r = document.createElement('span');
	if (!bold)
		r.className = 't4 t4Nor';
	else
		r.className = 't4 t4Neg';
	r.innerHTML = text;
	return r;
}
