function SelecionaTodos(obj, obj_form)
{
	var t_meus_produtos = document.getElementById('tabela_meus_produtos');	
	var trs = t_meus_produtos.getElementsByTagName('tr');
	obj_form.Clear();	
	for(var i=0;i<trs.length;i++)
	{
		inputs = getCheckboxInputs(trs[i]);
		if(inputs[0])
		{
			input = inputs[0];
			if(obj.checked)
			{
				input.checked = true;
				obj_form.Add(trs[i].id);
			}
			else
			{
				input.checked = false;
			}
		}
	}
}

function ObjForm()
{
	this.items=Array();
}

ObjForm.prototype.Add = function(id_mini_form)
{
	var mini_form = document.getElementById(id_mini_form);
	var finputs = mini_form.getElementsByTagName('input');
	var fselect = mini_form.getElementsByTagName('select');
	var ftextarea = mini_form.getElementsByTagName('textarea');
	var mini_form_els = Array();
	for(i=0;i<finputs.length;i++)
	{
		if(finputs[i].name!='acao')
			mini_form_els.push(finputs[i]);
	}
	for(i=0;i<fselect.length;i++)
	{
		if(fselect[i].name!='acao')
			mini_form_els.push(fselect[i]);
	}
	for(i=0;i<ftextarea.length;i++)
	{
		if(ftextarea[i].name!='acao')
			mini_form_els.push(ftextarea[i]);
	}
		
	var chaves = Array();
	for(i=0;i<mini_form_els.length;i++)
	{
		var key = mini_form_els[i].getAttribute('chave');
		if(key)
		{
			chaves[mini_form_els[i].name] = mini_form_els[i].value;
		}
	}
	var remover = Array();
	for(k in this.items)
	{
		for(j in this.items[k])
		{
			if(this.items[k][j].getAttribute('chave'))
			{
				var encontrou = true;
				for(l in chaves)
				{
					if(chaves[l]!=this.items[k][j].value)
						encontrou = false;
				}
				if(encontrou)
				{
					remover.push(k);
				}
			}
		}
	}
	if(remover.length>0)
	{
		for(i in remover)
			this.items.splice(remover[i], 1);
	}
	else
		this.items.push(mini_form_els);
}

ObjForm.prototype.Clear = function()
{
	this.items = Array();		
}

function XBrowserAddHandler(target,eventName,handlerName) { 
  if ( target.addEventListener ) { 
    target.addEventListener(eventName, function(e){target[handlerName](e);}, false);
  } else if ( target.attachEvent ) { 
    target.attachEvent("on" + eventName, function(e){target[handlerName](e);});
  } else { 
    var originalHandler = target["on" + eventName]; 
    if ( originalHandler ) { 
      target["on" + eventName] = function(e){originalHandler(e);target[handlerName](e);}; 
    } else { 
      target["on" + eventName] = target[handlerName]; 
    } 
  } 
}

function in_array(needle, haystack, argStrict) {
    var found = false, key, strict = !!argStrict;
    for (key in haystack) {
        if ((strict && haystack[key] === needle) || (!strict && haystack[key] == needle)) {
            found = true;
            break;
        }
    }
    return found;
}

function array_key_exists ( key, search ) {
    if( !search || (search.constructor !== Array && search.constructor !== Object) ){
        return false;
    }
    return key in search;
}

function is_array( mixed_var ) {
    var key = '';
    if (!mixed_var) {
        return false;
    }
     if (typeof mixed_var === 'object') {
         if (mixed_var.hasOwnProperty) {
            for (key in mixed_var) {
                if (false === mixed_var.hasOwnProperty(key)) {
                    return false;
                }
            }
        }
        return true;
    }
    return false;
}

function getElementsByClassName(strClass, strTag, objContElm) {
  strTag = strTag || "*";
  objContElm = objContElm || document;
  var objColl = objContElm.getElementsByTagName(strTag);
  if (!objColl.length &&  strTag == "*" &&  objContElm.all) objColl = objContElm.all;
  var arr = new Array();
  var delim = strClass.indexOf('|') != -1  ? '|' : ' ';
  var arrClass = strClass.split(delim);
  for (var i = 0, j = objColl.length; i < j; i++) {
    var arrObjClass = objColl[i].className.split(' ');
    if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
    var c = 0;
    comparisonLoop:
    for (var k = 0, l = arrObjClass.length; k < l; k++) {
      for (var m = 0, n = arrClass.length; m < n; m++) {
        if (arrClass[m] == arrObjClass[k]) c++;
        if (( delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length)) {
          arr.push(objColl[i]);
          break comparisonLoop;
        }
      }
    }
  }
  return arr;
}


// To cover IE 5.0's lack of the push method
Array.prototype.push = function(value) {
  this[this.length] = value;
}


var myimages = new Array();
function PreLoadImages() 
{
	for (x=0; x<PreLoadImages.arguments.length; x++){
		myimages[x] = new Image();
		myimages[x].src = PreLoadImages.arguments[x];
	}
} 

function IsIe()
{
	var browser=navigator.appName;
	return (browser=='Microsoft Internet Explorer');	
}

function TrocarImagemSeguranca()
{
   var iframe_imagem_seguranca = document.getElementById('iframe_imagem_seguranca');
   iframe_imagem_seguranca.src = iframe_imagem_seguranca.src;
}

function NumPreviousSiblings(obj, tag)
{
	var aux = obj.previousSibling;
	var i=0;
	while(aux != null && aux.tagName==tag)
	{
		i++;
		var aux = aux.previousSibling;
	}
	return i;
}

function RemoveSiblings(obj)
{
	var sibling = obj.nextSibling;
	while(sibling)
	{
		var aux = sibling;
		sibling = sibling.nextSibling;
		aux.parentNode.removeChild(aux);
	}	
}

function chamaAviso(divusada, chamar_on) {
	if(chamar_on)
	{
		document.getElementById(divusada).style.display = 'block';
	}
	else
	{
		document.getElementById(divusada).style.display = 'none';
	}
}

function getRadioInputs(from)
{
	if(!from)
		from = document;
	var ret_array = Array();
	var inputs = from.getElementsByTagName('input');
	for(i=0;i<inputs.length;i++){
		if(inputs[i].type=='radio')
			ret_array.push(inputs[i]);
	}
	return ret_array;
}

function getCheckboxInputs(from)
{
	if(!from)
		from = document;
	var ret_array = Array();
	var inputs = from.getElementsByTagName('input');
	for(i=0;i<inputs.length;i++){
		if(inputs[i].type=='checkbox')
			ret_array.push(inputs[i]);
	}
	return ret_array;
}

function getTextInputs()
{
	var ret_array = Array();
	var inputs = document.getElementsByTagName('input');
	for(i=0;i<inputs.length;i++){
		if(inputs[i].type=='text')
			ret_array.push(inputs[i]);
	}
	return ret_array;
}

function getTextAreas()
{
	var textareas = document.getElementsByTagName('textarea');
	return textareas;		
}

function getTitle(obj)
{
	return obj.getAttribute('title');
}

function VerificaValue(id)
{
	var obj = document.getElementById(id);
	if(getTitle(obj) == obj.value)
		return false;
	else
		return true;
}

function FocusReturnValue(obj){
	if(obj.id == 'txt_senha')
	{
		if(IsIe())
		{
			if(obj.type=='password')
				return;
			var span_password_login = document.getElementById('span_password_login');
			if(obj.value==getTitle(obj))
				obj.value='';
			span_password_login.innerHTML='<input type="password" id="txt_senha" name="senha" class="txt_senha" value="'+obj.value+'" title="Senha" onfocus="FocusReturnValue(this)" onblur="BlurReturnValue(this)" />';
			var txt_senha = document.getElementById('txt_senha');
			txt_senha.hasFocus=true;
			setTimeout("txt_senha = document.getElementById('txt_senha'); txt_senha.focus();", 1);
		}
		else
			obj.type = 'password';
	}
	if(obj.value == getTitle(obj)){
		obj.value = '';
	}
}
		
		/*BLUR*/
function BlurReturnValue(obj){
	if(obj.value == '' && obj.id == 'txt_senha')
	{
		if(IsIe())
		{
			var span_password_login = document.getElementById('span_password_login');
			span_password_login.innerHTML='<input type="text" id="txt_senha" name="senha" class="txt_senha" value="Senha" title="Senha" onfocus="FocusReturnValue(this)" onblur="BlurReturnValue(this)" />';
			var txt_senha = document.getElementById('txt_senha');
			txt_senha.hasFocus=false;
		}
		else
		{
			obj.value = getTitle(obj);				
			obj.type='text';
		}
	}

	if(obj.value == ''){
		obj.value = getTitle(obj);
	}
}

function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}

function setCheckedValue(radioObj, newValue) {
	if(!radioObj)
		return;
	var radioLength = radioObj.length;
	if(radioLength == undefined) {
		radioObj.checked = (radioObj.value == newValue.toString());
		return;
	}
	for(var i = 0; i < radioLength; i++) {
		radioObj[i].checked = false;
		if(radioObj[i].value == newValue.toString()) {
			radioObj[i].checked = true;
		}
	}
}

function childNodesWithTag(childs, tag)
{
	var retorno = new Array();
	if(!childs || !tag)
		return retorno;
	for(i=0;i<childs.length;i++)
	{
		if(childs[i].tagName)	
		{
			if(childs[i].tagName==tag)
				retorno.push(childs[i]);
		}
	}
	return retorno;
}

function DisableEnterKey (field, event) {
		var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
		if (keyCode == 13) {
			var i;
			for (i = 0; i < field.form.elements.length; i++)
				if (field == field.form.elements[i])
					break;
			i = (i + 1) % field.form.elements.length;
			field.form.elements[i].focus();
			return false;
		} 
		else
		return true;
}     

function MudarClasse ( obj , vclass ){
   obj.className = vclass;
}

function ContarNumCaracteres(obj_texto, id_objdisplay, maxlength)
{
	var aux_length = obj_texto.value.length;
	if(obj_texto.value.length > maxlength)
		obj_texto.value = obj_texto.value.substring(0, maxlength);
	var obj_display = document.getElementById(id_objdisplay);
	obj_display.innerHTML =  maxlength - obj_texto.value.length;
}

function getFname(yStr){
	var sFileName = "";
	for (nloop=yStr.length-1;nloop>1;nloop--){
		if (yStr.charAt(nloop)=="/"){
			sFileName=yStr.substring(nloop+1,yStr.length);
			break;
		}
		if (yStr.charAt(nloop)=="\\"){ // backslash must be escaped
		sFileName=yStr.substring(nloop+1,yStr.length);
			break;
		}
	}
	return sFileName;
}

function LimitarStrLength(str, maxl)
{
	if(str.length > maxl)
		return str.substring(0, maxl-3)+'...';
	else
		return str;
}

function MudarAba(ativa, abas, vid, eclass)
{
	for(i=0;i<abas.length;i++)
	{
		var aba = document.getElementById(abas[i]);
		if(aba)
			aba.style.display='none';
	}
	var abaativa = document.getElementById(ativa);
	if(abaativa)
		abaativa.style.display='block';
	var obj = document.getElementById(vid);
	if(obj)
		obj.className=eclass;
}

function ChangeValue(id, val)
{
	var c = document.getElementById(id);
	if(c && c.value)
		c.value = val;
}

function Submitform(id)
{
	var c = document.getElementById(id);
	var onsub = c.onsubmit;
	if(onsub())
		c.submit();
}

function GetTodayDateTruncate()
{
	var today = new Date();
	today.setHours(0);
	today.setMinutes(0);
	today.setSeconds(0);
	today.setMilliseconds(0);
	return today;
}

function StrToDate(str)
{
	pieces = str.split('/');
	var d = new Date(pieces[2], pieces[1]-1, pieces[0]);
	return d;
}