﻿function ordenate_recentes() 
	{
		if(document.quicksearch_form.recentes.checked == true) 
		{
	
			document.quicksearch_form.maior_preco.checked = false;
			document.quicksearch_form.menor_preco.checked = false;
	
			document.quicksearch_form.ORC.value = '16';
			document.quicksearch_form.ORD.value = '1';
			alert('ORC: '+document.search_rap.ORC.value+' ORD: '+document.search_rap.ORD.value);
			
		} else { };
	}
	
	 function ordenate_menor_preco() {
	document.quicksearch_form.ORC.value = '1';
	document.quicksearch_form.ORD.value = '0';
	alert(document.quicksearch_form.ORC.value);
	}
	
	 function ordenate_maior_preco() {
	document.quicksearch_form.ORC.value = '1';
	document.quicksearch_form.ORD.value = '1';
	alert(document.quicksearch_form.ORC.value);
	}

function callEvent(oObj, oEvt)
{
	if(window.event && oObj.fireEvent)
	{
		oObj.fireEvent(oEvt,window.event)
	}
	else
	{
		var clickevent=document.createEvent('HTMLEvents');
		clickevent.initEvent(oEvt.replace(/^on/i,''), true, true);
		oObj.dispatchEvent(clickevent);
	}
}

function addStackEvent(obj,evt,func)
{
  var oldevt = eval(obj+'.'+evt);
 
  if (typeof(oldevt) != 'function')
  {   
    eval(obj+'.'+evt+'= func;');
  }
  else
  {
  	eval(obj+'.'+evt+'= function(){new '+oldevt.toString()+';new '+func.toString()+';}');
  }
}

//addLoadEvent(setFormData);
function setFormData(sFormName)
{
	var aux=getCookie('formData_'+sFormName);
	
	//alert("got "+aux);
	
	var oElems = aux.split('§');
		
	for(var i=0; i<oElems.length; i++)
	{
		var oPair = oElems[i].split('::');
		
		var oNode;
		if(oPair[1] != "" && (oNode = document.getElementById(oPair[0])))
		{
			if(oNode.tagName == 'INPUT')
			{
				if(oNode.type.toLowerCase() == 'checkbox' || oNode.type.toLowerCase() == 'radio')
					oNode.checked  = true;
				else
					oNode.value = oPair[1];
			}
			else if(oNode.tagName == 'SELECT')
			{
				for(var j=0; j<oNode.options.length; j++)
				{
					if(oNode.options[j].value == oPair[1])
					{
						oNode.selectedIndex = j;
						break;	
					}
				}

				callEvent(oNode, 'onchange')	
			}
			else
				oNode.innerText = oPair[1];
		}
	}
}


function saveSearch(oForm)
{
	
	var oNodes = getSearchNodes(oForm);
	var oSerialized = '';
	
	for(var i=0;i<oNodes.length; i++)
	{
		var oNode = oNodes[i];
		
		if(oNode.tagName == 'INPUT' || oNode.tagName == 'SELECT')
		{
			if( oNode.type && (oNode.type.toLowerCase() == 'checkbox' || oNode.type.toLowerCase() == 'radio'))
			{
				if(oNode.checked)	
					oSerialized += oNode.id + '::' + oNode.value;
			}
			else
				oSerialized += oNode.id + '::' + oNode.value;
		}
		else if(node.tagName == 'TEXTAREA')
		{
			oSerialized += oNode.id + '::' + oNode.text;
		}
	
		oSerialized += '§';
	}
	
	//alert(oSerialized);
	
	setCookie('formData_'+oForm.id,oSerialized);
}

////////////////////////guardar cookie /////////////////////////

window.onbeforeunload=function()
{
	if(saveSearch)
		saveSearch(document.getElementById('quicksearch_form'));
		
	saveCookie();
}


/*
window.onbeforeunload=function()
{
	saveSearch(document.getElementById('f')); 
}
*/

function getSearchNodes(oParent)
{
	var temp= new Array(oParent?oParent:document.body);
	var oNodes= new Array();	
	
	for(var i=0; i<temp.length; i++)
	{
		if(temp[i].hasChildNodes)
		{
			for(var x=0; x<temp[i].childNodes.length;x++)
			{
				var node=temp[i].childNodes[x];
				if(node.nodeType == 1 && (node.tagName == 'INPUT' || node.tagName == 'SELECT' || node.tagName == 'TEXTAREA'))
				{
					oNodes.push(node);
				}
				
				temp.push(node);
			}
		}
	}
	
	return oNodes;
}

/////////////////////////////  Generic functions  ///////////////////////

/*** Devolve o valor de uma determinada chave do cookie ***/
function getCookie(val)
{
	var scrambles = document.cookie.split(';');
	
	for(var x=0; x<scrambles.length;x++)
	{
		var keys = scrambles[x].split('=');
		var reg= new RegExp(val,"ig");
		
		var aux = keys[0];
		if(aux.match(reg) && keys[1] && keys[1] != "")
		{	
			return keys[1];
		}
		
		reg.lastIndex=0;
	}
	return "";
}

/*** verifica se os cookies estão bloqueados ***/
function cookiesEnabled()
{
	var _date = new Date();
	_date.setTime(_date.getTime()+9000);
	document.cookie='test=true;expires='+_date.toGMTString();
	var aux=getCookie('test');

	if(aux != "")
	{
		return true;	
	}
	
	return false;
}


function setCookie(name, value)
{
	var dat = new Date();
	var nextYear = dat.getTime()+ (365 * 24 * 60 * 60 * 1000);
	dat.setTime(nextYear);
	document.cookie=name+'='+value+';expires='+dat.toGMTString()+';path=/';
}