let misfxlnk = []; let rowmodificado = 0; function inicializar () { // Html elements const mail = document.querySelector('#mail_manage'); const btn = document.querySelector('#btn_manage'); console.log(mail.value); // list to render // // btn button handler // btn.addEventListener('click', () => { let data = { a: mail.value }; fetch('mixfixlink', { method: "POST", body: JSON.stringify(data) }) .then(response => response.json()) .then(data => { misfxlnk = data; render(); }); }); function render() { var dom_menu_cabecera = document.getElementById("cabecera"); var dom_menu_edit = document.getElementById("div_menu"); var dom_tab_fxlnk = document.getElementById("divfxlnk"); var dom_edit = document.getElementById("editfxlnk"); var dom_del = document.getElementById("delfxlnk"); var dom_tit_tabla = document.getElementById("tittabla"); if (misfxlnk.length > 0) { //hago invisible la cabecera if (dom_menu_cabecera.style.display === "block") { dom_menu_cabecera.style.display = "none"; } //hago visible la barra menu de edición /* if (dom_menu_edit.style.display === "none") { dom_menu_edit.style.display = "block"; } */ //hago visible la tabla de los link y el titulo if (dom_tab_fxlnk.style.display === "none") { dom_tab_fxlnk.style.display = "block"; dom_tit_tabla.style.display = "block"; } //hago invisible div borrado if (dom_del.style.display === "block") { dom_del.style.display = "none"; } //hago invisible div edición if (dom_edit.style.display === "block") { dom_edit.style.display = "none"; } //cargo en el div el html con la tabla dom_tab_fxlnk.innerHTML = Convert_JsonToTable(misfxlnk, 'jsonTable', 'table'); //añado columna edición var tbl = document.getElementById('jsonTable'), // table reference i; var x = document.createElement("TH"); var t = document.createTextNode("editar"); x.appendChild(t); document.getElementById("tr_jsontable").appendChild(x); x = document.createElement("TH"); t = document.createTextNode("eliminar"); x.appendChild(t); document.getElementById("tr_jsontable").appendChild(x); // open loop for each row and append cell for (i = 0; i < tbl.rows.length; i++) { if (i==0){ //cabecera // createCell(tbl.rows[i].insertCell(tbl.rows[i].cells.length), 'editar', 'head-item mbr-fonts-style display-7'); }else{ createCell(tbl.rows[i].insertCell(tbl.rows[i].cells.length), '', 'body-item mbr-fonts-style display-7'); } } for (i = 0; i < tbl.rows.length; i++) { if (i==0){ //cabecera //createCell(tbl.rows[i].insertCell(tbl.rows[i].cells.length), 'eliminar', 'head-item mbr-fonts-style display-7'); }else{ createCell(tbl.rows[i].insertCell(tbl.rows[i].cells.length), '', 'body-item mbr-fonts-style display-7'); } } //añado columna edición /* var tbl = document.getElementById('jsonTable'), // table reference i; // open loop for each row and append cell for (i = 0; i < tbl.rows.length; i++) { if (i==0){ //cabecera createCell(tbl.rows[i].insertCell(tbl.rows[i].cells.length), 'borrar', 'col'); }else{ createCell(tbl.rows[i].insertCell(tbl.rows[i].cells.length), '🗑️', 'col',true,'borrar'+i); } } */ }else{ //hago invisible la barra menu de edición /* if (dom_menu_edit.style.display === "block") { dom_menu_edit.style.display = "none"; } */ //hago invisible la barra de los link if (dom_tab_fxlnk.style.display === "block") { dom_tab_fxlnk.style.display = "none"; dom_tit_tabla.style.display = "none"; } //hago invisible div borrado if (dom_del.style.display === "block") { dom_del.style.display = "none"; } //hago invisible div edición if (dom_edit.style.display === "block") { dom_edit.style.display = "none"; } alertify.alert("No existen fixlinks para el mail introducido"); } }; // Html elements const fxlnkedit = document.querySelector('#fxlnk_edit'); const claveedit = document.querySelector('#clave_edit'); const vinculoedit = document.querySelector('#vinculo_edit'); const btnconfirmedit = document.querySelector('#btn_confirm_edit'); // list to render let respedit = []; // // btn button handler // btnconfirmedit.addEventListener('click', () => { if (this.Validateurl(vinculoedit.value) == true) { let data = { a: fxlnkedit.value, b: claveedit.value, c:vinculoedit.value }; fetch('editfixlink', { method: "POST", body: JSON.stringify(data) }) .then(response => response.json()) .then(data => { respedit = data; if (respedit.element == 'Fixlink modificado'){ //modifico el objeto mixfxlnk y renderizo para actualizar los datos misfxlnk[rowmodificado].vinculo = vinculoedit.value; render(); } alertify.alert(respedit.element); }); } }); // Html elements const fxlnkdelete = document.querySelector('#fxlnk_delete'); const clavedelete = document.querySelector('#clave_delete'); const btnconfirmdelete = document.querySelector('#btn_confirm_delete'); // list to render let respsup = []; // // btn button handler // btnconfirmdelete.addEventListener('click', () => { let data = { a: fxlnkdelete.value, b: clavedelete.value }; fetch('deletefixlink', { method: "POST", body: JSON.stringify(data) }) .then(response => response.json()) .then(data => { respsup = data; if (respsup.element == 'Fixlink Borrado'){ //borro registro array local y renderizo var copyfxlnk = misfxlnk; copyfxlnk.splice(rowmodificado,1); render(); } alertify.alert(respsup.element); }); }); } // create DIV element and append to the table cell function createCell(cell, text, style) { var div = document.createElement('div'), // create DIV element txt = document.createTextNode(text); // create text node cell.innerHTML = text; //cell.appendChild(txt); // append text node to the DIV cell.setAttribute('class', style); // set DIV class attribute //cell.setAttribute('className', style); // set DIV class attribute for IE (?!) //if (boton == true) {cell.setAttribute('type', 'button')} //if (id != null) {cell.setAttribute('id', id)} /* var div = document.createElement('div'), // create DIV element txt = document.createTextNode(text); // create text node div.appendChild(txt); // append text node to the DIV div.setAttribute('class', style); // set DIV class attribute div.setAttribute('className', style); // set DIV class attribute for IE (?!) if (boton == true) {div.setAttribute('type', 'button')} if (id != null) {div.setAttribute('id', id)} cell.appendChild(div); // append DIV to the table cell */ } function deletetbl(row){ //hago visible bloque borrado e invisible bloque edit x = document.getElementById("delfxlnk"); if (x.style.display === "none") { x.style.display = "block"; } x = document.getElementById("editfxlnk"); if (x.style.display === "block") { x.style.display = "none"; } //relleno los datos document.getElementById('fxlnk_delete').value = misfxlnk[row-1].fixlink; document.getElementById('clave_delete').value = ""; document.getElementById('clave_delete').focus(); rowmodificado = row -1; } function edittbl(row){ //hago visible bloque edit e invisible bloque borrado x = document.getElementById("editfxlnk"); if (x.style.display === "none") { x.style.display = "block"; } x = document.getElementById("delfxlnk"); if (x.style.display === "block") { x.style.display = "none"; } //relleno los datos document.getElementById('fxlnk_edit').value = misfxlnk[row -1].fixlink; document.getElementById('vinculo_edit').value = misfxlnk[row -1].vinculo; document.getElementById('vinculo_edit').focus(); document.getElementById('clave_edit').value = ""; rowmodificado = row -1; } function iniciarecupera() { // Html elements const mailrecupera = document.querySelector('#mail_recupera'); const btnrecupera = document.querySelector('#btn_recupera'); // // btn button handler // btnrecupera.addEventListener('click', () => { let data = { a: mailrecupera.value }; fetch('recuperaclave', { method: "POST", body: JSON.stringify(data) }) .then(response => response.json()) .then(data => { respuesta = data; alertify.alert(respuesta.element); }); }); } //handler botones edición y borrado para hacer visible div /* const btnedit = this.document.querySelector('#btn_edit'); const btndelete = this.document.querySelector('#btn_delete'); btnedit.addEventListener('click', () =>{ x = document.getElementById("editfxlnk"); if (x.style.display === "none") { x.style.display = "block"; } x = document.getElementById("delfxlnk"); if (x.style.display === "block") { x.style.display = "none"; } }); btndelete.addEventListener('click', () =>{ x = document.getElementById("delfxlnk"); if (x.style.display === "none") { x.style.display = "block"; } x = document.getElementById("editfxlnk"); if (x.style.display === "block") { x.style.display = "none"; } }); */