
function fixPNG(myImage) 
{
    if ((version >= 5.5) && (version < 7) && (document.body.filters)) 
    {
       var imgID = (myImage.id) ? "id='" + myImage.id + "' " : ""
	   var imgClass = (myImage.className) ? "class='" + myImage.className + "' " : ""
	   var imgTitle = (myImage.title) ? 
		             "title='" + myImage.title  + "' " : "title='" + myImage.alt + "' "
	   var imgStyle = "display:inline-block;" + myImage.style.cssText
	   var strNewHTML = "<span " + imgID + imgClass + imgTitle
                  + " style=\"" + "width:" + myImage.width 
                  + "px; height:" + myImage.height 
                  + "px;" + imgStyle + ";  cursor: pointer; filter: none !important;"
                  + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
                  + "(src=\'" + myImage.src + "\', sizingMethod='scale');\"></span>"
				  //alert (strNewHTML);
				  //alert (imgID);
	   myImage.outerHTML = strNewHTML
    }
}

function fixPngs(arr){

	var num = arr.length;
	for (var i=0; i<num ; i++) {
		fixPNG(arr[i]);
	}

}

var PCS = PCS || {};
/*
Filtros
----------------------------*/
PCS.Filters = {
	form_id:'filter-parameters',
	success_container:'results',
	error_container:'not-found',
	page_input_id:'page',
	params:'',
	reset_page:true,
	errors_on:false,
	botonera:'filtros-botonera',
	loader_img:'filtros-loader',
	search: function(){
		var params = Form.serialize(this.form_id);
		if(this.reset_page)
			$(this.page_input_id).value = 0;
		this.reset_page = true;
		if(params != this.params){//busca
			this.loader(true);
			this.params = params;
			var url = $(this.form_id).action;
			var options = {
				parameters:params,
				onSuccess:PCS.Filters.success.bind(this),
				onComplete:PCS.Filters.success2.bind(this),
				onFailure:PCS.Filters.failure.bind(this)
			};
			$('nombre_filtros').innerHTML=this.rutaFiltros();
			new Ajax.Updater({success:this.success_container},url,options);
		}
		//Originamente iba aqui!!!
		return false;
	},
	success2:function(req){
		myCS = new PCS.cargaSecuencial();
		PCS.Filters.pngCatalogo();
	},
	success:function(req){
		this.loader(false);
		if(this.errors_on)
			this.hideErrors();
		$(this.success_container).show();
		PCS.Filters.pngCatalogo();
		
		//new Effect.Highlight(this.success_container);
	},
	failure:function(req){
		this.loader(false);
		if(!this.errors_on)
			this.showErrors();
	},
	hideErrors: function(){
		$(this.error_container).hide();
		this.errors_on = false;
	},
	showErrors: function(){
		$(this.error_container).show();
		$(this.success_container).hide();
		//new Effect.Highlight(this.error_container);
		this.errors_on = true;
	},
	paginate:function(page){
		$(PCS.Filters.page_input_id).value = page;
		PCS.Filters.reset_page = false;
		return PCS.Filters.search();
	},
	ordenar:function(){
		var params = Form.serialize(this.form_id);
		if(this.reset_page)
			$(this.page_input_id).value = 0;
		this.reset_page = true;
		this.loader(true);
		this.params = params;
		params=params+"&DoOrden=1"
		var url = $(this.form_id).action;
		var options = {
			parameters:params,
			onSuccess:PCS.Filters.success.bind(this),
			onFailure:PCS.Filters.failure.bind(this)
		};
		$('nombre_filtros').innerHTML=this.rutaFiltros();
		new Ajax.Updater({success:this.success_container},url,options);
		//Originamente iba aqui!!!
		return false;
	},
	loader:function(mode){
		if(mode){
			$(PCS.Filters.botonera).hide();
			$(PCS.Filters.loader_img).show();
			return;
		}
		$(PCS.Filters.botonera).show();
		$(PCS.Filters.loader_img).hide();
	},
	saveLink: function(){
//		var url = 'index.iws#resultados';
//		if (navigator.appVersion.indexOf("MSIE 6.0")>0){
//			document.location.href = url;
//		}
	},
	reset: function(){
		var f = $(this.form_id);
		f.reset();
	},
	rutaFiltros: function(){
		var params = Form.getElements(this.form_id);
		var texto1='';
		var texto2='';
		var formatos=new Array('todos','Candybar','Clamshell','Slider','Smart phone','M&oacute;dem');		
		for (i=0;i<params.length;i++){
			switch (params[i].name){
				case 'page':
				case 'orden':
					break
				case 'marca':
				case 'modalidad':
					break
				case 'formato':
					temp=params[i].options[params[i].selectedIndex].text;
					if (temp!="Todas") texto1+=temp+ " - "
					break
				default:
					if (params[i].checked) texto2+= params[i].value+ " - " 
			}
		}
		return texto1+texto2.substr(0,texto2.length-2);
	},
	
	pngCatalogo: function (){
		var els = $('resultados').getElementsByTagName('IMG');
		var elsArray = new Array();
		for (var i=0 ; i<els.length ; i++) {
			if (/\.png/i.test(els[i].src))
				elsArray.push(els[i]);
				
		}
		fixPngs(elsArray);	
	}
};
/*
Comparador
---------------------------------*/
PCS.Comparador = {
	comparador_id:'comparador-results',
	botonera:'comparador-botonera',
	url:'session.iws',
	add: function(id, marca, modelo, img_home,tipo){
		var options = {
			parameters:'add='+id+'&marca='+marca+'&modelo='+modelo+'&img_home='+img_home+'&tipo='+tipo,
			method:'post',
			onSuccess:PCS.Comparador.success.bind(this)
		};
		new Ajax.Updater(this.comparador_id,this.url,options);
		return false;
	},
	show: function(){
		var options = {
			method:'post',
			onSuccess:PCS.Comparador.success.bind(this)
		};
		new Ajax.Updater(this.comparador_id,this.url,options);
		return false;
	},
	remove: function(id){
		var li = "comp-"+id;
		new Ajax.Request(this.url,{parameters:'remove='+id});
		//new Ajax.Updater(this.comparador_id,this.url,{parameters:'remove='+id});
		//new Effect.Fade(li,{afterFinish:function(){PCS.Comparador.afterRemove(li)}});
		PCS.Comparador.afterRemove(li);
		PCS.Comparador.success.bind(this);
	},
	success: function(req){
		//new Effect.Highlight(this.comparador_id);
		if (req.responseText.split("Remover").length >1){
			$(this.botonera).hide();
		}
		else{
			if( req.responseText.split("<li id=").length > 2){
				$(this.botonera).show();
			}
		}
	},
	afterRemove:function(li){
		$(li).remove();
		if(this.getCount() ==0){
			$(this.comparador_id).innerHTML="No hay equipos seleccionados";
		}
		if(this.getCount() < 2 ){
			$(this.botonera).hide();
			if (!window.attachEvent){
				//new Effect.Fade(this.botonera);
			}
		}
	},
	getCount: function(){		
		return $A($(this.comparador_id).getElementsByTagName("li")).length;
	},
	init:function(){
		if(this.getCount() > 1){
			$(this.botonera).show();
		}
	}
};
Event.observe(window,'load',function(){PCS.Comparador.init()});
