/*************************************************************************\
Autor: RAMON ROCHA www.tecvia.com.br (solucoes@techvia.com.br)
Copyright (c) 2009, Ramon Rocha (solucoes@techvia.com.br)
Nenhuma parte deste código, sem autorização prévia por escrito do autor,
poderá ser publicada, reproduzida, alterada ou transmitida sejam quais forem os meios empregados:
eletrônicos, mecânicos, fotográficos, gravação ou quaisquer outros.
\*************************************************************************/

function AllTrim (InString){var LoopCtrl=true; if (isBlank(InString)) return(""); while (LoopCtrl){if (InString.indexOf("  ") != -1){Temp = InString.substring(0, InString.indexOf("  "));InString = Temp + InString.substring(InString.indexOf("  ")+1, InString.length);} else LoopCtrl = false;}if (InString.substring(0, 1) == " ")InString = InString.substring(1, InString.length);if (InString.substring (InString.length-1) == " ")InString = InString.substring(0, InString.length-1);return (InString);}
function RTrim (InString) {OutString=InString;for (Count=InString.length; Count > 0; Count--) {TempChar=InString.substring (Count-1, Count);if (TempChar != " ") {OutString=InString.substring (0, Count);break;}}return (OutString);}
function LTrim (InString) {OutString=InString;for (Count=0; Count < InString.length; Count++) {TempChar=InString.substring (Count, Count+1);if (TempChar!=" ") {OutString=InString.substring (Count, InString.length);break;}}return (OutString);}
function isBlank (InString) {if (InString==null) return (!false);if (InString.length!=0)return (!true);else return (!false);}
function Range (InString, RangeMin, RangeMax) {if ((InString == null) || (InString == "")) return (false);if((InString>=RangeMin) && (InString<=RangeMax)) return (true);else return (false);}
function Left (InString, num) {OutString=InString.substring (InString, num); return (OutString);}
function Mask (InString, Mask) {LenStr = InString.length;LenMsk = Mask.length;if ((LenStr==0) || (LenMsk==0))return(0);if (LenStr!=LenMsk) return(0);TempString=""; for (Count=0; Count<=InString.length; Count++) {StrChar = InString.substring(Count, Count+1);MskChar = Mask.substring(Count, Count+1);if (MskChar=='#') {if(!isNumberChar(StrChar)) return(0);}else if (MskChar=='?') {if(!isAlphabeticChar(StrChar)) return(0);}else if (MskChar=='!') {if(!isNumOrChar(StrChar)) return(0);} else if (MskChar=='*') {} else {if (MskChar!=StrChar) return(0);}} return (1);}
function Fill (InString, FillChar, FillLength) {if (InString.length >= FillLength) return (InString);OutString=InString;for (Count=InString.length; Count<FillLength; Count++){OutString=FillChar+OutString;}return (OutString);}
function TestLength (InString, Abs, LTE, GTE) {if (isBlank(InString)) return(false); if (Abs != -1){if(InString.length==Abs) return(true);} else if (LTE != -1) {if(InString.length<=LTE) return(true);} else if (GTE != -1) {if(InString.length>=GTE) return(true);} return (false);}
function allowInString (InString, RefString) {if(InString.length==0) return(false); for(Count=0;Count<InString.length;Count++){TempChar=InString.substring(Count,Count+1);if(RefString.indexOf(TempChar,0)==-1) return(false);}return(true);}
function allowNotInString (InString, RefString) {if(InString.length==0) return(false);for(Count=0;Count<InString.length;Count++){TempChar=InString.substring(Count,Count+1);if(RefString.indexOf(TempChar,0)!=-1) return(false);}return (true);}
function isAlphabeticChar (InString) {if(InString.length!=1) return(false);InString=InString.toLowerCase();RefString="abcdefghijklmnopqrstuvwxyz";if(RefString.indexOf(InString,0)==-1) return(false);return(true);}
function isAlphabeticString (InString) {if(InString.length==0) return(false);InString=InString.toLowerCase();RefString="abcdefghijklmnopqrstuvwxyz";for(Count=0;Count<InString.length;Count++){TempChar=InString.substring(Count,Count+1);if(RefString.indexOf(TempChar,0)==-1) return(false);}return(true);}
function isNumberChar (InString) {if(InString.length!=1) return(false);RefString="1234567890";if(RefString.indexOf(InString,0)==-1) return(false);return(true);}
function isNumberString (InString) {if(InString.length==0) return(false);RefString="1234567890";for(Count=0;Count<InString.length;Count++){TempChar=InString.substring(Count,Count+1);if(RefString.indexOf(TempChar,0)==-1) return(false);}return(true);}
function ReplaceStr( theSource, toFind, replaceWith ) {if(null==theSource ) return "";li_pos=theSource.indexOf(toFind);while (li_pos!=-1) {if(li_pos<theSource.length-1){theSource=theSource.substring(0,li_pos)+replaceWith+theSource.substring(li_pos+1, theSource.length);}else{theSource=theSource.substring(0, li_pos );}li_pos=theSource.indexOf(toFind,li_pos+replaceWith.length);}return theSource;}
function ReplaceString(Texto, TextoDe, TextoPara) {var TextoTemp =Texto;for (var i=0; i<Texto.length; i++) {TextoTemp =TextoTemp.replace(TextoDe,TextoPara);}return TextoTemp;} 
function Capitaliza(obj) {var val =obj.value;var newVal ='';val =val.split(' ');for(var c=0; c < val.length; c++) {newVal +=val[c].substring(0,1).toUpperCase() + val[c].substring(1,val[c].length) + ' ';}newVal =newVal.substring(0,newVal.length-1);newVal =ReplaceString(newVal, ' De ', ' de ');newVal =ReplaceString(newVal, ' Da ', ' da ');newVal =ReplaceString(newVal, ' Das ', ' das ');newVal =ReplaceString(newVal, ' Do ', ' do ');newVal =ReplaceString(newVal, ' Dos ', ' dos ');obj.value =newVal;}
function Maiuscula(obj) {obj.value =obj.value.toUpperCase();return;}
function Minuscula(obj) {obj.value =obj.value.toLowerCase();return;}

function isDate (InDate) {var err=0;a=InDate;if (a.length != 10) err=1;b = a.substring(0, 2);c = a.substring(2, 3);d = a.substring(3, 5);e = a.substring(5, 6);f = a.substring(6, 10);if (b<1 || b>12) err = 1;if (c != '/') err = 1;if (d<1 || d>31) err = 1;if (e != '/') err = 1;if (f<0 || f>9999) err = 1;if (b==4 || b==6 || b==9 || b==11) {if (d==31) err=1} if (b==2) {var g=parseInt(f/4);if (isNaN(g)) {err=1;}if (d>29) err=1;if (d==29 && ((f/4)!=parseInt(f/4))) err=1;}if (err==1) {return(1);} else {return(0);}}
function DayText (InDate) {var now = new Date();var ReturnText = "Erro";if (!isBlank(InDate)) {if (isDate(InDate) == 0) {a=InDate;b = a.substring(0, 2);c = a.substring(2, 3);d = a.substring(3, 5);e = a.substring(5, 6);f = a.substring(6, 10);now.setMonth(b-1);now.setDate(d);now.setYear(f);} else return(ReturnText);} var WeekDay = now.getDay();now = null;if (WeekDay == 0) {ReturnText="Domingo";} else if (WeekDay == 1) {ReturnText="Segunda";} else if (WeekDay == 2) {ReturnText="Terça";} else if (WeekDay == 3) {ReturnText="Quarta";} else if (WeekDay == 4) {ReturnText="Quinta";} else if (WeekDay == 5) {ReturnText="Sexta";} else if (WeekDay == 6) {ReturnText="Sábado";} return (ReturnText);}
function MonthText (Month) {var sMonth;Month = parseInt(Month);if (Month == 1) { sMonth = "Janeiro"} else if (Month == 2) { sMonth = "Fevereiro"} else if (Month == 3) { sMonth = "Março"} else if (Month == 4) { sMonth = "Abril"} else if (Month == 5) { sMonth = "Maio"} else if (Month == 6) { sMonth = "Junho"} else if (Month == 7) { sMonth = "Julho"} else if (Month == 8) { sMonth = "Agosto"} else if (Month == 9) { sMonth = "Setembro"} else if (Month == 10) { sMonth = "Outubro"} else if (Month == 11) { sMonth = "Novembro"} else if (Month == 12) { sMonth = "Dezembro"} return (sMonth);}
function HorasToDec(Horas) {Hours =Horas.substring(0,2);if(Hours.substring(0,1)=="0"){Hours =Hours.substring(1,2)}Hours=parseInt(Hours);Minutes=Horas.substring(3,5);Minutes=parseInt(Minutes);Seconds=0;if( (!isNaN(Hours))&&(!isNaN(Minutes))){return(Hours+Minutes/60+Seconds/3600);}else{return;}}
function DecToHoras(Horas) {if(!isNaN(Horas)){Hours=parseInt(Horas);Horas-=parseInt(Horas);Horas*=60;Minutes=parseInt(Horas);Horas-=parseInt(Horas);Horas*=60;Seconds=parseInt(Horas);if(Hours<10){Hours="0"+Hours}if(Minutes<10){Minutes="0"+Minutes}return Hours+":"+Minutes;}else{return;}}		
function checkDate (year, month, day) {month--;var objTempDate=new Date(year,month,day);return((objTempDate.getFullYear()==year)&&(objTempDate.getMonth()==month)&&(objTempDate.getDate()==day))?true:false}
function checkTime (intHour, intMinute, intSecond) {var objTempTime=new Date(0,0,1,intHour,intMinute,intSecond);return((objTempTime.getHours()==intHour)&&(objTempTime.getMinutes()==intMinute)&&(objTempTime.getSeconds()==intSecond))?true:false}

function AbreJanela(Pagina,Janela,Altura,Largura,Esquerda,Topo,Barra,Rolagem,Menu,Mensagem,Diretorios,Localizacao,Maximizado,Redimensiona){if(isBlank(AllTrim(Pagina))){alert("ERRO... Informe o nome da página a ser acessada.");return;}if(isBlank(AllTrim(Janela))){alert("ERRO... Informe o nome da janela a ser aberta.");return;}if(isNaN(Altura)){alert("ERRO... Informe a altura da janela.");return;}else{if(Altura<=0){alert("ERRO... Informe um valor maior do que zero para a altura.");}}if(isNaN(Largura)){alert("ERRO... Informe a largura da janela.");return;}else{if(Largura<=0){alert("ERRO... Informe um valor maior do que zero para a largura.");}}if(isNaN(Esquerda)){alert("ERRO... Informe a posição esquerda da janela.");return;}else{if(Esquerda<=0){Esquerda=0;}}if(isNaN(Topo)){alert("ERRO... Informe a posição superior da janela.");return;}else{if(Topo<=0){Topo=0;}}if(Barra!=1){Barra=0;}if(Rolagem!=1){Rolagem=0;}if(Menu!=1){Menu=0;}if(Mensagem!=1){Mensagem=0;}if(Diretorios!=1){Diretorios=0;}if(Localizacao!=1){Localizacao=0;}if(Maximizado!=1){Maximizado=0;}if(Redimensiona!=1){Redimensiona=0;}window.open(Pagina,Janela,'height='+Altura+',width='+Largura+',left='+Esquerda+',top='+Topo+',toolbar='+Barra+',scrollbars='+Rolagem+',menubar=' +Menu+',status='+Mensagem+',directories='+Diretorios+',location='+Localizacao+',maximized='+Maximizado,'resizable='+Redimensiona);return;}
function AbreJanelaFull(Pagina,Janela,Barra,Rolagem,Menu,Mensagem,Diretorios,Localizacao,Maximizado,JanelaCheia){if(isBlank(AllTrim(Pagina))){alert("ERRO... Informe o nome da página a ser acessada.");return;}if(isBlank(AllTrim(Janela))){alert("ERRO... Informe o nome da janela a ser aberta.");return;}if(Barra!=1){Barra =0;}if(Rolagem!=1){Rolagem =0;}if(Menu!=1){Menu =0;}if (Mensagem!=1){Mensagem =0;}if (Diretorios!=1){Diretorios =0;}if (Localizacao!=1){Localizacao =0;}if(Maximizado!=1){Maximizado=0;}if(JanelaCheia!=1){JanelaCheia=0;}window.open(Pagina,Janela,'resizable=1,toolbar='+Barra+',scrollbars='+Rolagem+',menubar=' +Menu+',status='+Mensagem+',directories='+Diretorios+',location='+Localizacao+',fullscreen='+JanelaCheia);return;}
function AbreJanelaCenter(theURL,winName,features, myWidth, myHeight, isCenter){if(window.screen)if(isCenter)if(isCenter=="true"){var myLeft=(screen.width-myWidth)/2;var myTop=(screen.height-myHeight)/2;features+=(features!='')?',':'';features+=',left='+myLeft+',top='+myTop;}window.open(theURL,winName,features+((features!='')?',':'')+'width='+myWidth+',height='+myHeight);}
function format_number(p,d) {var r;if(p<0){p=-p;r=format_number2(p,d);r="-"+r;}else{r=format_number2(p,d);}return r;}
function format_number2(pnumber,decimals) {var strNumber = new String(pnumber);var arrParts = strNumber.split('.');var intWholePart = parseInt(arrParts[0],10);var strResult = '';if (isNaN(intWholePart))intWholePart = '0';if(arrParts.length > 1){var decDecimalPart=new String(arrParts[1]);var i=0;var intZeroCount=0;while(i<String(arrParts[1]).length ){if(parseInt(String(arrParts[1]).charAt(i),10)==0){intZeroCount+=1;i+=1;}else{break;}}decDecimalPart = parseInt(decDecimalPart,10)/Math.pow(10,parseInt(decDecimalPart.length-decimals-1));Math.round(decDecimalPart);decDecimalPart = parseInt(decDecimalPart)/10;decDecimalPart = Math.round(decDecimalPart);if(decDecimalPart==Math.pow(10,parseInt(decimals))){intWholePart+=1;decDecimalPart="0";}var stringOfZeros=new String('');i=0;if(decDecimalPart>0){while(i<intZeroCount){stringOfZeros+='0';i+=1;}}decDecimalPart=String(intWholePart)+"."+stringOfZeros+String(decDecimalPart);var dot=decDecimalPart.indexOf('.');if(dot==-1){decDecimalPart+='.';dot=decDecimalPart.indexOf('.');}var l=parseInt(dot)+parseInt(decimals);while(decDecimalPart.length<=l){decDecimalPart+='0';}strResult = decDecimalPart;}else{var dot;var decDecimalPart=new String(intWholePart);decDecimalPart+='.';dot=decDecimalPart.indexOf('.');var l=parseInt(dot)+parseInt(decimals);while(decDecimalPart.length<=l){decDecimalPart+='0';}strResult=decDecimalPart;}return strResult;}
function autotab(original,destination){if(original.getAttribute&&original.value.length==original.getAttribute("maxlength"))destination.focus()}

function AddFavorities(sUrl,sTexto){if((navigator.appName=="Microsoft Internet Explorer")&&(parseInt(navigator.appVersion)>=4)){window.external.AddFavorite(sUrl,sTexto);}else{var msg="Nao esqueça de adicionar o site aos seus Favoritos";if(navigator.appName=="Netscape")msg+="  (CTRL-D)";alert(msg);}}

function pop(mypage, myname, w, h, scroll){pos_left = (screen.width - w) / 2;pos_top = (screen.height - h) / 2;winprops = 'height='+h+',width='+w+',scrollbars='+scroll+',left='+ pos_left +',top='+ pos_top +'';win = window.open(mypage, myname, winprops);if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }}
function onPressKey(intPressKey,intKey,strFunction){if(intPressKey == intKey){eval(strFunction);}}

// Mostra ajuda
//ex.: onFocus=SetHelp('Informe o valor com os centavos.') // coloque isso no campo que quer que dispare o help
function SetHelp(txt) {document.getElementById('lblStatus1').innerHTML = txt;}
function ChangePic(img_name,img_src) {document[img_name].src=img_src;}
