function getElementsByClassName(node, classname) {
var a = [];
var re = new RegExp('(^| )' + classname + '( |$)');
var els = node.getElementsByTagName("*");
for (var i = 0, j = els.length; i < j; i++)
if (re.test(els[i].className))
a.push(els[i]);
return a;
}
//Fun��o pra o menu
function mostra_menu(id) {
itens = getElementsByClassName(document, 'subitens_show');
var i;
for (i = 0; i < itens.length; i++) {
itens[i].className = 'subitens';
}
document.getElementById(id).className = 'subitens_show';
}
//Fun��o utilizada para validar o form de pesquisa
function checa_dado(form) {
tamanho = form.Dado.value.length;
if (tamanho < 3) {
alert("Digite no m�nimo 3 d�gitos.");
return false;
}
return true;
}
//Funcao responsavel por abrir um link numa janela a parte sem barras nem cabecalhos
function abre_link(link, altura, largura) {
w = window.open(link, "", "scrollbars=yes,width=" + altura + ",height=" + largura + ",left=" + (screen.width - largura) / 2 + ",top=" + (screen.height - altura) / 2);
w.focus();
return false;
}
// funcao mostra/oculta tabela
function visit(id) {
if (document.getElementById(id).style.display = "none") {
document.getElementById(id).style.display = "table";
} else {
document.getElementById(id).style.display = "none";
}
}
function limitText(limitField, limitCount, limitNum) {
if (limitField.value.length > limitNum) {
limitField.value = limitField.value.substring(0, limitNum);
} else {
limitCount.value = limitNum - limitField.value.length;
}
}
//Funcao responsavel por validar antes de submeter se periodos dos comboboxes sao os mesmos
function valida_periodos(passo, frm) {
if (frm.periodo.value == -1){
alert('É obrigatoria a seleção de um período');
return false;
}
if (passo == 2){
if (document.frmexporta_dados.periodo.value != document.frmcarrega_dados.periodo.value){
return confirm("O período selecionado para o procedimento de *Carregar* é diferente do período que foi selecionado para o procedimento de *Exportar*. \nTem certeza que deseja prosseguir?");
}
}
if (passo == 3){
if (document.frmcarrega_dados.periodo.value != document.frmprocessa_retorno.periodo.value){
return confirm("O período selecionado para o procedimento de *Processar* é diferente do período que foi selecionado para o procedimento de *Carregar*. \nTem certeza que deseja prosseguir?");
}
}
if (passo == 4){
if (document.frmprocessa_retorno.periodo.value != document.frmbloqueiolimite.periodo.value){
return confirm("O período selecionado para o procedimento de *Bloquear Contratos* é diferente do período que foi selecionado para o procedimento de *Processar*. \nTem certeza que deseja prosseguir?");
}
}
return true;
}
// Funcao responsavel por validar a logica do gerador de codigo do orgao
function onChangeLogicaOrgao(frm, opcao, txtFuncao, txtParametro){
if (opcao != 3){
frm.geracao_codigo_orgao_gerador.value = '';
frm.geracao_codigo_orgao_gerador.disabled = true;
} else {
frm.geracao_codigo_orgao_gerador.value = txtFuncao+'('+txtParametro+')';
frm.geracao_codigo_orgao_gerador.disabled = false;
}
}
function playCaptcha(event) {
event.preventDefault();
window.playCaptchaTocando = window.playCaptchaTocando || false;
if (window.playCaptchaTocando) {
return;
}
var audio = new Audio('captcha_audio.php');
audio.addEventListener('ended', function() {
window.playCaptchaTocando = false;
});
window.playCaptchaTocando = true;
audio.play();
}
function altoContraste(ativo) {
if (!ativo) {
document.querySelector('html').style.filter = 'invert(1) grayscale(0.95)';
sessionStorage.setItem("contraste", "true");
} else {
document.querySelector('html').style.filter = 'invert(0) grayscale(0)';
sessionStorage.setItem("contraste", "false");
}
}
function verificaAltoContraste() {
if(typeof(sessionStorage) == 'undefined') {
return;
}
if (sessionStorage.getItem("contraste") === 'true') {
document.querySelector('html').style.filter = 'invert(1) grayscale(0.95)';
sessionStorage.setItem("contraste", "true");
} else {
document.querySelector('html').style.filter = 'invert(0) grayscale(0)';
sessionStorage.setItem("contraste", "false");
}
}
function exibeAjuda(event, self) {
event.preventDefault();
var objetoDescricao = self.getAttribute('data-objeto-descricao');
carrega_para_destino(
'objeto_modulo_ajuda_xhr.php?opcao=exibir_ajuda'
+ '&objeto_descricao=' + objetoDescricao,
'ajuda_ajax'
);
}
function removeAjuda(event) {
event.preventDefault();
document.getElementById('ajuda_ajax').innerHTML = '';
}
function preenche_motivo(el) {
document.getElementById('obs_bloqueio').value = el.value;
}
function carregaCss(href) {
var stylesheet = document.createElement('link');
stylesheet.href = href;
stylesheet.rel = 'stylesheet';
stylesheet.media = 'only x';
stylesheet.onload = function() {stylesheet.media = 'all'}
document.getElementsByTagName('head')[0].appendChild(stylesheet);
}
function carregaScript(script, callback){
var s = document.createElement("script");
s.src = script;
document.body.appendChild(s);
return s;
}
function carregaSummernote(id, toolbar, value){
var renderizar = function(id, toolbar, value) {
$(id).summernote({
lang: 'pt_BR',
placeholder: '',
height: 250,
toolbar: toolbar
});
$(id).summernote('code', value);
};
if (typeof(window.summernoteCarregado) != 'undefined'
&& window.summernoteCarregado) {
renderizar(id, toolbar,value);
return;
}
carregaCss('summernote.css');
var summernoteJs = carregaScript('scripts/summernote.js')
summernoteJs.onload = function(){
var sumernoteJsLiguna = carregaScript("scripts/summernote-pt_BR.js");
sumernoteJsLiguna.onload = function() {
renderizar(id, toolbar,value);
window.summernoteCarregado = true;
}
};
}
runAltoContraste = true;
if(navigator.userLanguage !== "undefined" && navigator.systemLanguage !== "undefined" && navigator.userAgent.match(/trident/i)) {
} else {
(function() {
verificaAltoContraste();
})();
}
function map_select(input, target) {
let d_target = document.querySelectorAll(target);
d_target.forEach(function (el) {
let opts = [...el.getElementsByTagName("option")].map(function (e) {
return [e.value, e.text];
});
let rxp = new RegExp(input.value, 'i');
let optlist = el.querySelector(".users-select");
optlist.innerHTML = '';
opts.forEach(function (opt) {
let element_opt = document.createElement("option");
element_opt.setAttribute("value", opt[0]);
element_opt.text = opt[1];
if (rxp.test(opt[1])){
optlist.append(
element_opt
);
} else {
element_opt.classList.add("hidden")
optlist.append(
element_opt
);
}
});
})
}
function click_select(select, target, set_selected = null) {
let d_target = select.querySelectorAll(`option:checked`);
let opts_select = [...select.getElementsByTagName("option")].map(function (e) {
return [e.value, e.text];
});
let el_target = document.querySelectorAll(target)[0];
let opts_target = [...el_target.getElementsByTagName("option")].map(function (e) {
return [e.value, e.text];
});
d_target.forEach((el) => {
el.remove();
let key = el_target.getElementsByTagName("input").length;
let value_el = document.createElement("input");
value_el.setAttribute("value", el.value);
value_el.setAttribute("name", `usuarios[${key}]`);
value_el.style.display = "none";
let text_el = document.createElement("span");
text_el.textContent = el.text;
text_el.classList.add("usuario_postos_nome");
let icon_el = document.createElement("img");
icon_el.setAttribute("src", "imagens/x.gif");
icon_el.setAttribute("title", "Excluir");
let link_el = document.createElement("a");
link_el.setAttribute("href", "javascript://");
link_el.setAttribute("data-key", key);
link_el.setAttribute("onclick", "remove_usuario_postos(this, '.users-select')");
link_el.append(icon_el);
let content_el = document.createElement("div");
content_el.setAttribute("data-key", key);
content_el.append(value_el);
content_el.append(text_el);
content_el.append(link_el);
document.querySelector(target).append(content_el)
})
}
function remove_usuario_postos(self, target) {
let key = self.getAttribute("data-key");
let content_box = document.querySelectorAll(`div[data-key='${key}']`)
let d_target = document.querySelectorAll(target);
content_box.forEach((el) => {
let value = el.querySelector("input").value;
let nome = el.querySelector(".usuario_postos_nome").textContent;
let opt = document.createElement("option");
opt.value = value;
opt.text = nome;
d_target.forEach((tar) => { tar.append(opt) });
el.remove();
map_select(document.querySelector(".search-user"), '.usuarios_postos');
})
}