
function callback_PutResult(res) {
	el = res.context;
	if(document.all) {
		ele = document.all[el];
	} else {
		ele = document.getElementById(el);
	}
	if (res.value) {
		ele.innerHTML = res.value;
	} else {
		ele.innerHTML = "";
	}
}

function callback_PutResultVideo(res) {
	el = res.context;
	if(document.all) {
		ele = document.all[el];
	} else {
		ele = document.getElementById(el);
	}
	if (res.value) {
		ele.innerHTML = res.value;
		setTimeout("cargarFlash()", 100)
	} else {
		ele.innerHTML = "";
	}
}

function cargarFlash()
{
	var s1 = new SWFObject("flvplayer.swf","single","150","100","7");
	s1.addParam("allowfullscreen","true");
	s1.addParam('allowscriptaccess','always');
	s1.addVariable('displayheight','100');
	s1.addVariable("file", document.getElementById('fileurl').value);
	s1.addVariable("image", document.getElementById('imageurl').value);
	s1.addVariable("width","150");
	s1.addVariable("height","100");
	s1.addVariable("backcolor","0x000000");
	s1.addVariable("frontcolor","0xCCCCCC");
	s1.addVariable("lightcolor","0x557722");
	s1.write("player1");
}

function colocaCargando(element) {
	ele = document.getElementById(element);	
	ele.innerHTML = "";
	icono = document.createElement("IMG");
	resultado = "/admin/images/html/cargando.gif";
	icono.src = resultado;
	icono.setAttribute('border', '0');
	icono.setAttribute('align', 'center');
	icono.className='img_cargando';
	ele.appendChild(icono);

}

function goAjaxPage(proyecto_id, page, element) {
	try	{
		//colocaCargando(element);	
		MyMethods.DisplayProyectos(proyecto_id, page, callback_PutResult, element);
	} catch(e) {
		alert("Error: " + e.description);
	}
}

function goAjaxPageNews(noticia_id, page, element) {
	try	{
		//colocaCargando(element);	
		MyMethods.DisplayDestacados(noticia_id, page, callback_PutResult, element);
	} catch(e) {
		alert("Error: " + e.description);
	}
}


function goAjaxPageGallery(vivienda_id, tipo_id, page, element) {
	try	{
		//colocaCargando(element);	
		MyMethods.DisplayGallery(vivienda_id, tipo_id, page, callback_PutResult, element);
	} catch(e) {
		alert("Error: " + e.description);
	}
}

function cargaFormulario (element, element_no_display, plantilla, id) {
	ele = document.getElementById('tab_0');
	ele.innerHTML = "";
	ele = document.getElementById('tab_1');
	ele.innerHTML = "";
	ele = document.getElementById('tab_2');
	ele.innerHTML = "";
	ele = document.getElementById('tab_3');
	ele.innerHTML = "";
	ele = document.getElementById('tab_4');
	ele.innerHTML = "";
	ele = document.getElementById('tab_5');
	ele.innerHTML = "";
	colocaCargando(element);		
	try	{
		MyMethods.CargaFormulario(plantilla, id, callback_PutResult, element);
	} catch(e) {
		alert("Error: " + e.description);
	}	
}

function cargaFormularioNProd (element, element_no_display, plantilla, id) {
	ele = document.getElementById('tab_0');
	ele.innerHTML = "";
	ele = document.getElementById('tab_1');
	ele.innerHTML = "";
	ele = document.getElementById('tab_2');
	ele.innerHTML = "";
	ele = document.getElementById('tab_3');
	ele.innerHTML = "";
	ele = document.getElementById('tab_4');
	ele.innerHTML = "";
	ele = document.getElementById('tab_5');
	ele.innerHTML = "";
	colocaCargando(element);		
	try	{
		MyMethods.CargaFormularioNProd(plantilla, id, callback_PutResult, element);
	} catch(e) {
		alert("Error: " + e.description);
	}	
}

function cargaFormularioD (element, element_no_display, plantilla, id) {
	ele = document.getElementById('tab_0');
	ele.innerHTML = "";
	ele = document.getElementById('tab_1');
	ele.innerHTML = "";
	ele = document.getElementById('tab_2');
	ele.innerHTML = "";
	ele = document.getElementById('tab_3');
	ele.innerHTML = "";
	ele = document.getElementById('tab_4');
	ele.innerHTML = "";
	ele = document.getElementById('tab_5');
	ele.innerHTML = "";
	colocaCargando(element);
	try	{
		MyMethods.CargaFormularioD(plantilla, id, callback_PutResult, element);
	} catch(e) {
		alert("Error: " + e.description);
	}	
}

function cargaFormularioV (element, element_no_display, plantilla, id) {
	ele = document.getElementById('tab_0');
	ele.innerHTML = "";
	ele = document.getElementById('tab_1');
	ele.innerHTML = "";
	ele = document.getElementById('tab_2');
	ele.innerHTML = "";
	ele = document.getElementById('tab_3');
	ele.innerHTML = "";
	ele = document.getElementById('tab_4');
	ele.innerHTML = "";
	ele = document.getElementById('tab_5');
	ele.innerHTML = "";
	colocaCargando(element);
	try	{
		MyMethods.CargaFormularioV(plantilla, id, callback_PutResult, element);
	} catch(e) {
		alert("Error: " + e.description);
	}	
}

function getDataDocumentoNoticia (element, sel) {
	try	{
		id = sel.options[sel.selectedIndex].value
		MyMethods.CargaFormularioDocumentoNoticia(id, callback_PutResult, element);
	} catch(e) {
		//alert("Error: " + e.description);
	}
}

function getDataVideo (element, sel) {
	try	{
		id = sel.options[sel.selectedIndex].value
		MyMethods.CargaFormularioVideoNoticia(id, callback_PutResultVideo, element);
	} catch(e) {
		//alert("Error: " + e.description);
	}
}

function getDataImage (element, sel) {
	try	{
		id = sel.options[sel.selectedIndex].value
		MyMethods.CargaFormularioImagen(id, callback_PutResult, element);
	} catch(e) {
		//alert("Error: " + e.description);
	}
}

function getDataImageNProd (element, sel) {
	try	{
		id = sel.options[sel.selectedIndex].value
		MyMethods.CargaFormularioImagenNProd(id, callback_PutResult, element);
	} catch(e) {
		//alert("Error: " + e.description);
	}
}

function callback_Elements(res)
{
	el = res.context;
	if (res.value) {
		document.getElementById('spn_sector_id').style.display ='';
		fillObjects(res.value, el, 'Todos los sectores');
		AjaxUnLoading();
	} else {
		//alert('error al procesar solicitud');
		AjaxUnLoading();
		selectClear(el);
		document.getElementById('spn_sector_id').style.display ='none';
		el.options[el.options.length] = new Option('No requiere', 0);
	}
}

function Elements(myclass, _method, value, ele) {
	var d = null;
	try	{
		AjaxLoading();
		MyMethods.Elements(myclass, _method, value, callback_Elements, ele);
	} catch(e) {
		alert("Error: " + e.description);
	}
}

function callback_Date(res)
{
	if (res.value) {
		el = res.context;
		fillObjects(res.value, el, '- -');
	} else {
		//alert('error al procesar solicitud');
		fillObjects(res.value, el, '- -');
	}
}

function meses(value, ele)
{
	var d = null;
	try	
	{
		MyMethods.meses('noticia', value, callback_Date, ele);
		selectClear(ele.form.anio);
		opt = new Option('- -', '');
		ele.form.anio.options[ele.form.anio.options.length] = opt;
	}
	catch(e)
	{
		alert("Error: " + e.description);
	}
}

function anios(categoria_id, value, ele)
{
	var d = null;
	try	
	{
		selectClear(ele.form.anio);
		fillObjects('', ele.form.anio, '- -');
		MyMethods.anios('noticia', categoria_id, value, callback_Date, ele);
	}
	catch(e)
	{
		alert("Error: " + e.description);
	}
}


function fillSelectFromArray(selectobj, array, displayNull) {
	if(displayNull) 
	{	
		opt = new Option(displayNull, '0');
		selectobj.options[selectobj.options.length] = opt;
	}
	for(var i = 0; i < array.length; i++) {
		value = array[i]['value'];
		text = array[i]['text'];
		//eval('text = ' + text + ";");
		opt = new Option(text, value);
		if (selectobj && value) {
			selectobj.options[selectobj.options.length] = opt;
		}
	}
}

// unserializeArray: deserializa el parametro param y devuelve un arreglo hash 
function _unserializeArray(param) {
	var i, j, text, value, aux;
	objects = param.split("|");
	var aObjects = new Array();
	for(i = 0; i < objects.length; i++) {
		vars = objects[i].split("&");
		var object = new Array();
		for (j = 0; j < vars.length; j++) {
			aux = vars[j].split("=");
			object[aux[0]] = aux[1];
		}
		aObjects[aObjects.length] = object;
	}
	return aObjects;
}

function fillObjects(data, select, displayNull) {
	aDatas = _unserializeArray(data);
	selectClear(select);
	fillSelectFromArray(select, aDatas, displayNull);
	return true;
}

function selectClear(lst){
  lst.options.length = 0;
}