//----------------------------------------------------------------- // geral.js (gravar como utf-8) // // funções auxiliares em javascript // // copyright (c) 2003 Ponto.C - Desenv. Sistemas de Informação, Lda //----------------------------------------------------------------- //Converte código em HTML para caracteres //Inverso do HTMLEncode function SPW_HTMLDecode(strIn) { var strFrom = new Array; var strTo = new Array; strFrom[0] = /Ç/g; strTo[0] = "Ç"; strFrom[1] = /È/g; strTo[1] = "È"; strFrom[2] = /É/g; strTo[2] = "É"; strFrom[3] = /Ê/g; strTo[3] = "Ê"; strFrom[4] = /Ë/g; strTo[4] = "Ë"; strFrom[5] = /Ì/g; strTo[5] = "Ì"; strFrom[6] = /Í/g; strTo[6] = "Í"; strFrom[7] = /Î/g; strTo[7] = "Î"; strFrom[8] = /Ï/g; strTo[8] = "Ï"; strFrom[9] = /Ò/g; strTo[9] = "Ò"; strFrom[10] = /Ó/g; strTo[10] = "Ó"; strFrom[11] = /Ô/g; strTo[11] = "Ô"; strFrom[12] = /Õ/g; strTo[12] = "Õ"; strFrom[13] = /Ö/g; strTo[13] = "Ö"; strFrom[14] = /Ù/g; strTo[14] = "Ù"; strFrom[15] = /Ú/g; strTo[15] = "Ú"; strFrom[16] = /Û/g; strTo[16] = "Û"; strFrom[17] = /Ü/g; strTo[17] = "Ü"; strFrom[18] = /à/g; strTo[18] = "à"; strFrom[19] = /á/g; strTo[19] = "á"; strFrom[20] = /â/g; strTo[20] = "â"; strFrom[21] = /ã/g; strTo[21] = "ã"; strFrom[22] = /ä/g; strTo[22] = "ä"; strFrom[23] = /ç/g; strTo[23] = "ç"; strFrom[24] = /è/g; strTo[24] = "è"; strFrom[25] = /é/g; strTo[25] = "é"; strFrom[26] = /ê/g; strTo[26] = "ê"; strFrom[27] = /ë/g; strTo[27] = "ë"; strFrom[28] = /ì/g; strTo[28] = "ì"; strFrom[29] = /í/g; strTo[29] = "í"; strFrom[30] = /î/g; strTo[30] = "î"; strFrom[31] = /ï/g; strTo[31] = "ï"; strFrom[32] = /ñ/g; strTo[32] = "ñ"; strFrom[33] = /ò/g; strTo[33] = "ò"; strFrom[34] = /ó/g; strTo[34] = "ó"; strFrom[35] = /ô/g; strTo[35] = "ô"; strFrom[36] = /õ/g; strTo[36] = "õ"; strFrom[37] = /ö/g; strTo[37] = "ö"; strFrom[38] = /ù/g; strTo[38] = "ù"; strFrom[39] = /ú/g; strTo[39] = "ú"; strFrom[40] = /û/g; strTo[40] = "û"; strFrom[41] = /&/g; strTo[41] = "&"; strFrom[42] = /&/g; strTo[42] = "&"; strFrom[43] = ///g; strTo[43] = "/"; strFrom[44] = /º/g; strTo[44] = "º"; strFrom[45] = /</g; strTo[45] = "<"; strFrom[46] = />/g; strTo[46] = ">"; strFrom[47] = /"/g; strTo[47] = "\""; //aspas strFrom[48] = /ª/g; strTo[48] = "ª"; strFrom[49] = /Ø/g; strTo[49] = "Ø"; strFrom[50] = /À/g; strTo[50] = "À"; strFrom[51] = /Á/g; strTo[51] = "Á"; strFrom[52] = /«/g; strTo[52] = "«"; strFrom[53] = /»/g; strTo[53] = "»"; strFrom[54] = /£/g; strTo[54] = "£"; strFrom[55] = /§/g; strTo[55] = "§"; strFrom[56] = /€/g; strTo[56] = "€"; strFrom[57] = /Â/g; strTo[57] = "Â"; strFrom[58] = /Ã/g; strTo[58] = "Ã"; strFrom[59] = /Ñ/g; strTo[59] = "Ñ"; strFrom[60] = /°/g; strTo[60] = "°"; strFrom[61] = /±/g; strTo[61] = "±"; strFrom[62] = /¼/g; strTo[62] = "¼"; strFrom[63] = /½/g; strTo[63] = "½"; strFrom[64] = /¾/g; strTo[64] = "¾"; strFrom[65] = /´/g; strTo[65] = ""; // plica não colocamos... vai a vazio var iMax = strFrom.length; var i; var strOut = strIn; var strT; for(i = 0; i < iMax; i++){ strOut = strOut.replace(strFrom[i], strTo[i]); } return strOut; } //Função para importar dados para construir select //O parâmetro de entrada GuardaSelecionado serve para guardar a 1ª opção do select //durante a sua construção e é um boolean (parâmetro opcional) function SPW_CallExport(Form,InputText,ISelect,urlSite,GuardaSelecionado) { var Input = eval("document." + Form + "." + InputText); var Select = eval("document." + Form + "." + ISelect); var DescCampo = Input.value; //Não pode ser vazio if (!DescCampo=="") { //caracteres inválidos if (!caracteres_inv(DescCampo,"'&+%\"")) { alert("O campo para pesquisa não pode conter o(s) caracter(es) ', &, +, % e \" ."); Input.focus(); return (false); } urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") { var sURL = urlSite + InputText + "=" + DescCampo; }else { var sURL = urlSite + "&" + InputText + "=" + DescCampo; } oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText aux = SPW_HTMLDecode(aux); //alert(aux.substr(3500)); //alert(aux); if (!aux == "") { if(GuardaSelecionado) { if (aux == "0") { alert("Não existe mais nenhum contacto com a designação " + DescCampo + "."); Input.focus(); return (false); }else if (aux == "1") { alert("Foram encontrados mais de 1000 registos. \nEspecífique melhor a designação do contacto que pretende de forma a trazer menos registos."); Input.focus(); return (false); }else { mArray = aux.toString().split(","); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] +"','"+ mArrayId[0] +"')"; Select.options[j+1] = eval(opt); mArrayId = ""; } } }else { if (aux == "0") { alert("Não existe nenhum contacto com a designação " + DescCampo + ". \nVerifique o nome introduzido."); Input.focus(); return (false); }else if (aux == "1") { alert("Foram encontrados mais de 1000 registos. \nEspecífique melhor a designação do contacto que pretende de forma a trazer menos registos."); Input.focus(); return (false); }else { Select.options.length = 0; mArray = aux.toString().split(","); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] +"','"+ mArrayId[0] +"')"; Select.options[j] = eval(opt); mArrayId = ""; } } } } } } //-- Função para selects multisize. Passa as opções de um select para outro e vice-versa sem o submit do form. //-- Begin function SelectMultiSize(Ligado,Desligado,InputHydden,aux,NomeForm) { var valor = new Array(); var SelectLigado = eval("document."+ NomeForm + "." + Ligado); var SelectNaoLigado = eval("document."+ NomeForm + "." + Desligado); var len = SelectLigado.length; for(var i = 0; i < SelectNaoLigado.length; i++) { if ((SelectNaoLigado.options[i] != null) && (SelectNaoLigado.options[i].selected)) { var found = false; for(var count = 0; count < len; count++) { if (SelectLigado.options[count] != null) { //if (SelectNaoLigado.options[i].text == SelectLigado.options[count].text) { if (SelectNaoLigado.options[i].value == SelectLigado.options[count].value) { found = true; break; } } } if (found != true) { SelectLigado.options[len] = new Option(SelectNaoLigado.options[i].text,SelectNaoLigado.options[i].value); //adiconado pelo Nuno em 2004-05-07 ----------------------------------- //alert(SelectNaoLigado.options[i].id); SelectLigado.options[len].id = SelectNaoLigado.options[i].id; //--------------------------------------------------------------------- len++; } } } var leng = SelectNaoLigado.options.length; for(var i = (leng-1); i >= 0; i--) { if ((SelectNaoLigado.options[i] != null) && (SelectNaoLigado.options[i].selected == true)) { SelectNaoLigado.options[i] = null; } } if (aux == "0" ){ var len = SelectLigado.length; for(var i = 0; i < len; i++){ valor[i] = SelectLigado.options[i].value; } }else{ var len = SelectNaoLigado.length; for(var i = 0; i < len; i++){ valor[i] = SelectNaoLigado.options[i].value; } } if(eval("document."+ NomeForm + "." + InputHydden)){ eval("document."+ NomeForm + "." + InputHydden).value = valor; } } // End --> //Função para importar dados para construir select function SPW_ExportAtributos(Form,IdTipoDoc,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "IdTipoDoc=" + IdTipoDoc; else var sURL = urlSite + "&IdTipoDoc=" + IdTipoDoc; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); if (aux != "" && aux != 0) { Select.options.length = 1; mArray = aux.toString().split(","); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[2] +"','"+ mArrayId[0] +"|"+ mArrayId[1] +"')"; Select.options[j+1] = eval(opt); mArrayId = ""; } } } //Função para importar dados para construir select function SPW_ExportNodos(Form,IdNivel,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "IdNivel=" + IdNivel; else var sURL = urlSite + "&IdNivel=" + IdNivel; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); if (aux != "" && aux != 0) { Select.options.length = 1; mArray = aux.toString().split(","); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] +"','"+ mArrayId[0] +"')"; Select.options[j+1] = eval(opt); mArrayId = ""; } } else Select.options.length = 1; } //Função para verificar se existe um código function SPW_ViCodigo(Codigo,urlSite) { urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "Codigo=" + Codigo; else var sURL = urlSite + "&Codigo=" + Codigo; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var RES = ""; RES = oXMLHTTP.responseText; RES = SPW_HTMLDecode(RES); if (RES == "True") return (1); else return (0); } function SPW_ExportTiposAtributo(Form,val,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "s=" + val; else var sURL = urlSite + "&s=" + val; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); if (aux != "" && aux != 0) { Select.options.length = 0; mArray = aux.toString().split(","); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] +"','"+ mArrayId[0] +"')"; Select.options[j] = eval(opt); mArrayId = ""; } } else Select.options.length = 0; } //Função para importar dados para construir select function SPW_ExportMetas(Form,strIdsObjs,strIdsMetasAssoc,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "strIdsObjs=" + strIdsObjs + "&strIdsMetasAssoc=" + strIdsMetasAssoc; else var sURL = urlSite + "&strIdsObjs=" + strIdsObjs + "&strIdsMetasAssoc=" + strIdsMetasAssoc; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); if (aux != "" && aux != 0) { Select.options.length = 0; mArray = aux.toString().split("|;|"); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] +"','"+ mArrayId[0] +"')"; Select.options[j] = eval(opt); Select.options[j].id = mArrayId[2]; mArrayId = ""; } } else Select.options.length = 0; } //Função para importar dados para construir select function SPW_ExportPerigos(Form,strIdsGrupos,strIdsPerigosAssoc,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "strIdsGrupos=" + strIdsGrupos + "&strIdsPerigosAssoc=" + strIdsPerigosAssoc; else var sURL = urlSite + "&strIdsGrupos=" + strIdsGrupos + "&strIdsPerigosAssoc=" + strIdsPerigosAssoc; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); //se der erro descomentar estas linhas para ver o erro //document.open() //document.write(aux) //alert(aux) if (aux != "" && aux != 0) { Select.options.length = 0; mArray = aux.toString().split("|;|"); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] +"','"+ mArrayId[0] +"')"; Select.options[j] = eval(opt); Select.options[j].id = mArrayId[2]; mArrayId = ""; } } else Select.options.length = 0; } //Função para importar dados para construir select function SPW_ExportRiscos(Form,strIdsPerigos,strIdsRiscosAssoc,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "strIdsPerigos=" + strIdsPerigos + "&strIdsRiscosAssoc=" + strIdsRiscosAssoc; else var sURL = urlSite + "&strIdsPerigos=" + strIdsPerigos + "&strIdsRiscosAssoc=" + strIdsRiscosAssoc; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); //se der erro descomentar estas linhas para ver o erro //document.open() //document.write(aux) //alert(aux) if (aux != "" && aux != 0) { Select.options.length = 0; mArray = aux.toString().split("|;|"); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] +"','"+ mArrayId[0] +"')"; Select.options[j] = eval(opt); Select.options[j].id = mArrayId[2]; mArrayId = ""; } } else Select.options.length = 0; } //Função para importar dados para construir select function SPW_ExportColabs(Form,CodPF,ISelect,OSelect,urlSite) { var SelectO = eval("document." + Form + "." + OSelect); var SelectI = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "CodPF=" + CodPF else var sURL = urlSite + "&CodPF=" + CodPF oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArrayA = new Array(); var mArrayIdA = new Array(); var mArrayNA = new Array(); var mArrayIdNA = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); //se der erro descomentar estas linhas para ver o erro //document.open(); //document.write(CodPF); var auxA=""; var auxNA=""; aux=aux.toString().split("#@#"); auxA=aux[0]; //associados auxNA=aux[1]; //não associados //document.write(auxNA); //alert(auxa) //Colaboradores associados à acção do Plano if (auxA != "" && auxA != 0) { SelectO.options.length = 0; mArrayA = auxA.toString().split("|;|"); for (j = 0; j < mArrayA.length; j++) { mArrayIdA = mArrayA[j].toString().split("|"); opt = "new Option" + "('"+ mArrayIdA[1] +"','"+ mArrayIdA[0] +"')"; SelectO.options[j] = eval(opt); SelectO.options[j].id = mArrayIdA[2]; mArrayIdA = ""; } } else SelectO.options.length = 0; //Colaboradores não associados à acção do Plano if (auxNA != "" && auxNA != 0) { SelectI.options.length = 0; mArrayNA = auxNA.toString().split("|;|"); for (j = 0; j < mArrayNA.length; j++) { mArrayIdNA = mArrayNA[j].toString().split("|"); opt = "new Option" + "('"+ mArrayIdNA[1] +"','"+ mArrayIdNA[0] +"')"; SelectI.options[j] = eval(opt); SelectI.options[j].id = mArrayIdNA[2]; mArrayIdNA = ""; } } else SelectI.options.length = 0; } //Esta função permite buscar código pronto para colocar no innerHTML //de um objecto function SPW_ExportCodigo(urlSite) { urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } oXMLHTTP.open("POST",urlSite,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); if (aux != "" && aux != 0) return(aux); else return(""); } //Abre PopUp function SPW_OpenPopUp(url,Nome,sFeatures,w,h) { if (sFeatures == ""){ sFeatures ='top=200,'; sFeatures +='left=200,'; sFeatures +='scrollbars=yes,'; sFeatures +='resizable=no,'; } sFeatures +='height='+ h +','; sFeatures +='width='+ w; //sFeatures +=',directories=1'; ########NOTA: Esta linha deve ser descomentada se for para a EXTRUSAL!!! newwin=window.open (url, Nome,sFeatures); if (newwin){ if (!newwin.opener) newwin.opener=self; if(parseInt(navigator.appVersion) >= 4) newwin.window.focus(); } } //Abre Janela Modal function SPW_showModalDialog(url,Arguments,sFeatures,w,h) { if (navigator.appName != "Microsoft Internet Explorer") { SPW_OpenPopUp(url,'popup','',w,h); return false; } //abre uma janela modal no url indicado if (sFeatures == ""){ sFeatures = " center=yes;"; //centrado na janela mãe sFeatures += " dialogHide:no;"; sFeatures += " edge:'sunken';";//{ sunken | raised } sFeatures += " help:no;"; sFeatures += " resizable:no;"; sFeatures += " status:no;"; sFeatures += " scroll:no;"; sFeatures += " unadorned:no;"; } sFeatures += " dialogHeight: "+h+"px;"; sFeatures += " dialogWidth: "+w+"px;"; window.showModalDialog (url, window, sFeatures); } //Permite preencher um SelectBox com dados vindos por XMLHTTP function SPW_Import(inpDestino,PageUrl) { if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } oXMLHTTP.open("POST",PageUrl,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; //document.writeln(aux); aux = SPW_HTMLDecode(aux); if (aux != "" && aux != 0) { inpDestino.options.length = 1; mArray = aux.toString().split("|;|"); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] +"','"+ mArrayId[0] +"')"; inpDestino.options[j+1] = eval(opt); mArrayId = ""; } } else inpDestino.options.length = 1; } //Permite preencher um ListBox com dados vindos por XMLHTTP function SPW_ImportListBox(inpDestino,PageUrl) { if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } oXMLHTTP.open("POST",PageUrl,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; //document.writeln(aux); aux = SPW_HTMLDecode(aux); if (aux != "" && aux != 0) { inpDestino.options.length = 0; mArray = aux.toString().split("|;|"); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] + " " + mArrayId[2] +"','"+ mArrayId[0] +"')"; inpDestino.options[j] = eval(opt); mArrayId = ""; } } else inpDestino.options.length = 0; } //Permite preencher um SelectBox com dados vindos por XMLHTTP //Preenche tb os Atributos MaxNumTarefas e Responsavel. function SPW_ImportServicos(inpDestino,PageUrl) { if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } oXMLHTTP.open("POST",PageUrl,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); if (aux != "" && aux != 0) { inpDestino.options.length = 1; mArray = aux.toString().split("|;|"); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[1] +"','"+ mArrayId[0] +"')"; inpDestino.options[j+1] = eval(opt); inpDestino.options[j+1].MaxNumTarefas = mArrayId[2]; inpDestino.options[j+1].Responsavel = mArrayId[3]; mArrayId = ""; } } else inpDestino.options.length = 1; } //Função para importar dados para construir select function SPW_ExportParametros(Form,revisao,seccao,plano,peca,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "Revisao=" + revisao + "&Seccao=" + seccao + "&Plano=" + plano + "&Peca=" + peca; else var sURL = urlSite + "&Revisao=" + revisao + "&Seccao=" + seccao + "&Plano=" + plano + "&Peca=" + peca; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); //se der erro descomentar estas linhas para ver o erro //document.open() //document.write(aux) //document.write(aux) if (aux != "" && aux != 0) { Select.options.length = 0; mArray = aux.toString().split("|;|"); for (j = 0; j < mArray.length; j++) { mArrayId = mArray[j].toString().split("|"); opt = "new Option" + "('"+ mArrayId[2] + " / " + mArrayId[1] +"','"+ mArrayId[0] +"')"; Select.options[j] = eval(opt); Select.options[j].id = mArrayId[2]; mArrayId = ""; } } else Select.options.length = 0; } //Função para importar o valor máximo de crédito entre as causas function SPW_ExportCredito(Form,causas,contacto,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "Causas=" + causas + "&Contacto=" + contacto; else var sURL = urlSite + "&Causas=" + causas + "&Contacto=" + contacto; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); //se der erro descomentar estas linhas para ver o erro //document.open() //document.write(aux) Select.value = aux; } //Função para importar dados para construir select function SPW_ExportLotes(Form,ordemFAB,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "OrdemFAB=" + ordemFAB; else var sURL = urlSite + "&OrdemFAB=" + ordemFAB; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); //se der erro descomentar estas linhas para ver o erro //document.open() //document.write(aux) if (aux != "" && aux != 0) { mArray = aux.toString().split("|;|"); for (j = 1; j <= mArray.length; j++) { mArrayId = mArray[j-1].toString().split("|"); opt = "new Option" + "('"+ mArrayId[0] + " - " + mArrayId[1] +"','"+ mArray[j-1].toString() +"')"; Select.options[j] = eval(opt); Select.options[j].id = mArray[j-1].toString(); mArrayId = ""; } } } //Função para importar dados para construir select function SPW_ExportOrdemFAB(Form,peca,ISelect,urlSite) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "Peca=" + peca; else var sURL = urlSite + "&Peca=" + peca; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); //se der erro descomentar estas linhas para ver o erro //document.open() //document.write(aux) if (aux != "" && aux != 0) { mArray = aux.toString().split("|;|"); for (j = 1; j <= mArray.length; j++) { opt = "new Option" + "('"+ mArray[j-1].toString() +"','"+ mArray[j-1].toString() +"')"; Select.options[j] = eval(opt); Select.options[j].id = mArray[j-1].toString(); } } } //Função para importar dados para construir select function SPW_ExportCotas(Form,peca,ISelect,urlSite,LoteFab) { var Select = eval("document." + Form + "." + ISelect); urlSite = urlSite.toString(); var ultmChar = urlSite.charAt(urlSite.length-1); if (navigator.appName == "Microsoft Internet Explorer"){ var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); }else{ var oXMLHTTP = new XMLHttpRequest(); } if (ultmChar == "&" || ultmChar == "?") var sURL = urlSite + "Peca=" + peca + "&LoteFab=" + LoteFab; else var sURL = urlSite + "&Peca=" + peca + "&LoteFab=" + LoteFab; oXMLHTTP.open("POST",sURL,false); oXMLHTTP.send(''); var mArray = new Array(); var mArrayId = new Array(); var j = 0; var aux = ""; aux = oXMLHTTP.responseText; aux = SPW_HTMLDecode(aux); //se der erro descomentar estas linhas para ver o erro //document.open() //document.write(aux) if (aux != "" && aux != 0) { mArray = aux.toString().split("|;|"); for (j = 1; j <= mArray.length; j++) { mArrayId = mArray[j-1].toString().split("|"); if (eval("document." + Form + ".NumPeca").value == "") { eval("document." + Form + ".NumPeca").value = mArrayId[2]; } opt = "new Option" + "('"+ mArrayId[1].toString() +"','"+ mArrayId[0] +"')"; Select.options[j] = eval(opt); Select.options[j].id = mArray[j-1].toString(); mArrayId = ""; } } } //Faz o check/unched para todos os checks de um form //que tenham no id "i_chkUnic" //onclick="JavaScript:SPW_CheckAll('frmAdi')" function SPW_CheckAll(oForm) { //crio o objecto oForm var oForm = eval("document." + oForm); //verifico se o elemento checkAll está checked ou unchecked if (oForm('i_chkAll')) var tocheck = oForm('i_chkAll').checked //buscar numero de checks "i_chkUnic" if (oForm('i_chkUnic')) var len = oForm.i_chkUnic.length //se o len != undefined : //1º verifico se existe o objecto i_chkUnic //2º check unicamnete um if (!Number(len)){ if (oForm('i_chkUnic')) oForm('i_chkUnic').checked = tocheck; } //se existirem mais de 500 elementos no form //pergunto se pretende mesmo assim checkar //ou check unicamente 500 if (len > 500) { var msg= "Devido à existência de muitos registos a operação que escolheu poderá demorar algum tempo." msg += "\nDeseja continuar?" if (!confirm(msg)){ oForm('i_chkAll').checked = !tocheck; return; } } //percorro todos os elementos do form //verifico se são os que me interessão(checks) //se forem então igualo o seu valor de check ao do check all for (i=0; i "012" function SPW_LeftPad(theItem,minSize,thePad) { newItem = new String(theItem); while (newItem.length < minSize) { newItem = thePad + newItem; } return newItem; } //funções para determinar o X e Y de um elemento, funciona em IE e FireFox function SPW_GetAbsX(elt) { return (elt.x) ? elt.x : SPW_GetAbsPos(elt,"Left");} function SPW_GetAbsY(elt) { return (elt.y) ? elt.y : SPW_GetAbsPos(elt,"Top");} function SPW_GetAbsPos(elt,which) { iPos = 0; while (elt != null) { iPos += elt["offset" + which]; elt = elt.offsetParent; } return iPos; } function SPW_GetDocumentWidth() { if (document.body.scrollWidth) return document.body.scrollWidth; var w = document.documentElement.offsetWidth; if (window.scrollMaxX) w += window.scrollMaxX; return w; } function SPW_GetDocumentHeight() { if (document.body.scrollHeight) return document.body.scrollHeight; return document.documentElement.offsetHeight; } // ********************************************************************* // esconde um div function SPW_HideDiv(divID) { var div = document.getElementById(divID); if (div) div.style.display= "none"; } // mostra um div function SPW_ShowDiv(divID) { var div = document.getElementById(divID); if (div) div.style.display= "block"; } // Permite preencher inputs do form e de seguida fazer o submit function SPW_SubmitForm(eElemsID,eElemsValue,frmID,action,reset) { var _frmElem = document.getElementById(frmID); if (_frmElem) { if (reset) { _frmElem.reset(); } if (eElemsID != null) { for (var i = 0; i < eElemsID.length; i++) { var _eElem = document.getElementById(eElemsID[i]); if (_eElem) { if (_eElem.type == 'select-one') { _eElem.value = eElemsValue[i]; if (_eElem.value == ''){ opt = "new Option" + "('"+ _eElem.options[0].text + "','" + eElemsValue[i] +"')"; _eElem.options[0] = eval(opt); _eElem.selectedIndex = 0; //alert(_eElem.options[0].value); } } else { _eElem.value = eElemsValue[i]; //alert(_eElem.name + " . " + _eElem.value); } } } } if (action != "" && action != undefined) { _frmElem.action = action; } _frmElem.submit(); } }