/*
Javascript general para todas las páginas de PCS Equipos
Todas las páginas incluyen Prototype.js (http://prototype.conio.net) con utilidades generales para mejorar la OP de Javascript.
Documentación de la librería en http://www.sergiopereira.com/articles/prototype.js.html
@2006 Aardvark / i2b
--------------------------------------------------*/
/*
Namespace
Otras clases y funciones debieran definirse aquí
ej: EQUIPOS.UnaClase = function(){}
--------------------------------------------------*/
var PCS = PCS || {};
	
/*
Buscador
--------------------------------------------------*/
PCS.SearchBox = {
	message:"Buscar Equipos",
	field_id:"search-field",
	form_id:"search-form",
	button_id:"search-submit",
	fieldset_id:"search-box",
	loader:"<img src='/medios/ajax-loader-mini.gif' id='search-loader' />",
	search_ready:false,
	speed:.2,
	open:false,
	scount:0,
	focus:function(e) {	
		var elem = Event.element(e);
		if($F(PCS.SearchBox.field_id) == PCS.SearchBox.message)
			elem.value = "";
		//alert(this.id);
		//Event.stopObserving(PCS.SearchBox.field_id,"focus",PCS.SearchBox.focus);
	},
	blur:function(){
		if($F(PCS.SearchBox.field_id) == "")
			$(PCS.SearchBox.field_id).value = PCS.SearchBox.message;
	},
	submit:function(){
		var valor = $F(this.field_id);
		if(valor==this.message || valor =="")return false;
		var url = $(this.form_id).action;
		var pars = "q="+valor;
		if(!PCS.SearchBox.search_ready)
			new Insertion.Before(PCS.SearchBox.button_id,PCS.SearchBox.loader);
		Element.hide(PCS.SearchBox.button_id);
		var ajax = new Ajax.Request(
			url,
			{
				method:"get",
				parameters:pars,
				onSuccess:this.searchSuccess,
				onFailure:this.searchFailure,
				onError:this.searchFailure
			}
		);
	},
	searchSuccess:function(req){
		PCS.SearchBox.open = true;
		if(!PCS.SearchBox.search_ready){
			var div = document.createElement("div");
			div.id = "rc";
			Element.hide(div);
			if(!window.attachEvent){
				Element.makePositioned(PCS.SearchBox.fieldset_id);
				$(PCS.SearchBox.fieldset_id).appendChild(div);
			}
			else {
				document.body.appendChild(div);
				Event.observe(window,"resize",PCS.SearchBox.close);
			}
			PCS.SearchBox.search_ready = true;
		}
		if(window.attachEvent){
			var pos = Position.cumulativeOffset($(PCS.SearchBox.fieldset_id));
			var subs = PCS.SearchBox.scount<1?0:18;
			$("rc").style.left = (pos[0]-10-subs)+"px";
			$("rc").style.top = (pos[1]+25)+"px";
			$$("select").each(
				function(elem){
					Element.hide(elem);
				}
			);
			PCS.SearchBox.scount++;
		}
		$("rc").innerHTML = req.responseText;
		Element.show(PCS.SearchBox.button_id);
		Element.hide("search-loader");
		new Effect.Appear("rc",{duration:PCS.SearchBox.speed});
	},
	searchFailure:function(req){
		alert("error "+req.responseText+"sss");
	},
	close:function(){
		if(!PCS.SearchBox.open)return false;
		if(window.attachEvent){
			$$("select").each(
				function(elem){
					Element.show(elem);
				}
			);
		}
		new Effect.Fade("rc",{duration:PCS.SearchBox.speed});
		PCS.SearchBox.open = false;
	},
	init:function(){
		$(PCS.SearchBox.field_id).value = PCS.SearchBox.message;
		Event.observe(PCS.SearchBox.field_id,"focus",PCS.SearchBox.focus);
		Event.observe(PCS.SearchBox.field_id,"blur",PCS.SearchBox.blur);
	}
};
Event.observe(window,"load",PCS.SearchBox.init);

