/**
 * Javascript - zedFramework
 * 
 * @package   www.hayamax.com.br
 * @name      TI-WEB-HYX-0001 
 * @author    Thiago M. Zampieri <thiago.zampieri@gmail.com>
 * @copyright 2008
 * @version   0.1.0 
 * @access    public
 * @todo      Página de Scripts
 */

/***************************************************************************************************************************
AJAX
****************************************************************************************************************************/
var xmlHttp;

function GetXmlHttpObject()
{ 
	var objXMLHttp = null
	if (window.XMLHttpRequest)
	{
		objXMLHttp = new XMLHttpRequest();
	}
	else if (window.ActiveXObject)
	{
		try
		{
			objXMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
		}catch(E)
		{
			objXMLHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
	}
	return objXMLHttp;
}

function connectAjax()
{
	var ajax;
		ajax = new GetXmlHttpObject();
		
	return ajax;
}

function searchAjax(url,type,funcs)
{
	xmlHttp = connectAjax();
	if (xmlHttp == null)
	{
		alert ("Seu navegador não suporta HTTP Request! Favor contactar TI - Hayamax");
		return false;
	}else
	{
		xmlHttp.onreadystatechange = funcs
		xmlHttp.open(type,url,true);
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Accept-Charset","UTF-8");
		xmlHttp.send(null);		
	}	

}

function ajaxGetAttribute(j_attr, j_value)
{
	if (j_attr)
	{
		if (j_attr == 'link')
			return '<a href="'+j_value+'">'+j_value+'</a>';
		else if (j_attr == 'mail')
			return '<a href="mailto:'+j_value+'">'+j_value+'</a>';
		else if (j_attr == 'image')
			return '<img src="'+j_value+'" />';
	}else
		return j_value;
}


/***************************************************************************************************************************
INDEX
****************************************************************************************************************************/

var search_varGet = 'q';

function suggestionsSearchBar(query, param)
{
	query.value = clearString(query.value);
	if(query.value !== "" && query.value !== null)
	{	
		var url = g_url+'webservice?get=getSuggestionsSearch&'+search_varGet+'='+query.value+param+'&numberProd=20';
		searchAjax(url, 'GET', ajax_xml_suggestions_search);
		show('resultsSearch');
	}else{
		timerHidePop();
	}
}

function ajax_xml_suggestions_search()
{
	if (xmlHttp.readyState == 1)
	{ 
		//_LOADING
		clearDiv('results', 'carregando...');
	}else
	{ 		
		if (xmlHttp.readyState == 4)
		{
			if (xmlHttp.responseXML)
			{
				var j_obj   = xmlHttp.responseXML;				
				var j_array = j_obj.getElementsByTagName("search");
				var j_args  = new Array(j_array.length);
				
				clearDiv('results', '');		
				if(j_array.length > 0) {
					//percorre o arquivo XML paara extrair os dados						
					if(j_array[0].hasChildNodes())
					{
						var j_item  = j_array[0].childNodes;
						var account = 0;
						
						for (var i1=0; i1 < j_item.length; i1++)
						{
							if (j_item[i1].hasChildNodes() & j_item[0].tagName != 'error')
							{
								j_branch = j_item[i1].childNodes;
								
								j_args[i1]			= new Array(2);
								j_args[i1]['attr']  = new Array(j_branch.length);
								
								for (var i2=0; i2 < j_branch.length; i2++)
								{
									var j_name = j_branch[i2].tagName;
									if (j_branch[i2].hasChildNodes())
									{										
										j_value = ajaxGetAttribute(j_branch[i2].getAttribute("type"), j_branch[i2].firstChild.nodeValue.replace(/\&#38;/g,"&"));
										j_args[i1]['attr'][j_name] = j_value;
									}else
										j_args[i1]['attr'][j_name] = '';
								}
								
								var il = document.createElement('li');
								
								var link = document.createElement('a');
									link.setAttribute('class', 'resultLine'); 
 									link.setAttribute('href', g_url+'search?'+search_varGet+'='+j_args[i1]['attr']['query']);
 									link.innerText = encodeUTFtoISO(j_args[i1]['attr']['query'])+' ('+j_args[i1]['attr']['countProduct']+')';

								il.appendChild(link);								
								appendDiv('results', il);
								
							}else{
								account++;
							}
						}
						
						if (account == j_item.length)
						{
							alert('Não foram encontrados resultados!');
						}
					}
				}
			}
		}
	}	
}

/**
 * Loader Progress Bar
 */
//Variáveis globais
var _loadPos	= 0;
var _loadDir	= 2;
var _loadLen	= 0;

//Anima a barra de progresso
function __loadShow(phrase, width, marginLeft, marginTop){
	if (phrase == null)
		phrase = "Aguarde carregando ...";
		
	var objLoader				= docs("root_loader");
	var _loader				    = docs("loader");
	objLoader.style.display		= "";
	objLoader.style.visibility	= "";	
	
	if (width > 0) 
	{		
		var _loaderBgrd			= docs("background_loader");
		_loader.style.width     = width;
		_loaderBgrd.style.width = (width*0.88);
			
	}
	if (marginLeft >= 0 & marginLeft <= 1000)
		_loader.style.marginLeft = marginLeft;
	
	if (marginTop >= 0)
		_loader.style.marginTop = marginTop;

	var objWord				       = docs("phrase");
	if (objWord) objWord.innerHTML = phrase;
	
	var elem = docs("progressBar");
	if(elem != null){
		if (_loadPos==0) _loadLen += _loadDir;
		if (_loadLen>32 || _loadPos>79) _loadPos += _loadDir;
		if (_loadPos>79) _loadLen -= _loadDir;
		if (_loadPos>79 && _loadLen==0) _loadPos=0;
		elem.style.left		= _loadPos;
		elem.style.width	= _loadLen;
	}
}

//Esconde o carregador
function __loadHide(){
	var objLoader				= docs("root_loader");
	objLoader.style.display		="none";
	objLoader.style.visibility	="hidden";
}


