/********************************* FUNCION TRIM EN JAVASCRIPT, TOMADA DE http://www.lawebdelprogramador.com/codigo/codigo.php?idp=178&id=45&texto=JavaScript *********************************/ function trim(str) { var i; try { if(str != null) { for(i=0; i=0; i=str.length-1) { if(str.charAt(i)== " ") str = str.substring(0,i); else break; } } else str = ""; return str; } catch(e) { try { return str; } catch(ex) { return ""; } } } /********************************* FUNCION TRIM EN JAVASCRIPT, TOMADA DE http://www.lawebdelprogramador.com/codigo/codigo.php?idp=178&id=45&texto=JavaScript *********************************/ function replaceAll(str, strtofind, strtoreplace) { var pos, found, str1, str2; if(trim(str) == "") return ""; else { found = true; while(found == true) { pos = str.indexOf(strtofind); if(pos >= 0) found = true; else found = false; if(found == true) { str1 = str.substring(0, pos); str2 = str.substring(pos + strtofind.length, str.length); str = str1 + strtoreplace + str2; } } return str; } } function strStartsWith(str, strtofind) { if(str.indexOf(strtofind) < 0) return false; else { if(str.indexOf(strtofind) == 0) return true; else return false; } } function strEndsWith(str, strtofind) { var lastc = ""; if(str.indexOf(strtofind) < 0) return false; else { lastc = str.substr(str.length - 1, 1); if(lastc == strtofind) return true; else return false; } } function focustoprompt() { try { document.getElementById("alertify-text").focus(); } catch(e) { } try { document.getElementById("alertify-dropdown").focus(); } catch(e) { } } //thanks to https://stackoverflow.com/questions/1336585/howto-place-cursor-at-beginning-of-textarea function startinprompt() { try { document.getElementById("alertify-text").setSelectionRange(0, 0); } catch(e) { } } //thanks to https://stackoverflow.com/questions/4276754/is-it-possible-to-remove-the-focus-from-a-text-input-when-a-page-loads function removefocusfromprompt() { try { document.getElementById("alertify-text").blur(); } catch(e) { } try { document.getElementById("alertify-dropdown").blur(); } catch(e) { } } function existsaccents(stream) { var found = false; if(trim(stream) == "") return false; else { if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; if(trim(stream).indexOf("�") >= 0) found = true; return found; } } function loginaction() { if(trim(document.login.username.value) == "" || trim(document.login.password.value) == "") alertify.alert("Debe ingresar usuario y contraseña para continuar..."); else { document.login.username.value = trim(replaceAll(document.login.username.value, '\"', "")); document.login.password.value = trim(replaceAll(document.login.password.value, '\"', "")); document.login.username.value = trim(replaceAll(document.login.username.value, "'", "")); document.login.password.value = trim(replaceAll(document.login.password.value, "'", "")); document.login.submit(); } } function gotomenu(level, userspath) { if(level > 0) document.location.href = trim(userspath) + "choose-level.php?time=1778045911"; else document.location.href = trim(userspath) + "normal-user.php?time=1778045911"; } function addgroup() { setTimeout("focustoprompt();", 1500); alertify.prompt("Ingrese nombre del grupo de artículos:", function (e, str) { if (e) { if(trim(str) == "") alertify.alert("Debe ingresar un nombre de grupo de artículos..."); else document.getElementById("ifrmitems").src = "../orders/insertgroup.php?name=" + trim(str) + "&time=1778045911"; } else { } }, ""); } function addunit() { setTimeout("focustoprompt();", 1500); alertify.prompt("Ingrese nombre de la unidad de artículos:", function (e, str) { if (e) { if(trim(str) == "") alertify.alert("Debe ingresar un nombre de unidad de artículos..."); else document.getElementById("ifrmitems").src = "../orders/insertunit.php?name=" + trim(str) + "&time=1778045911"; } else { } }, ""); } function addarticle() { location = "../orders/newarticle.php?time=1778045911"; } function adduser() { location = "../users/newuser.php?time=1778045911"; } function additem(orderid, username, concept) { var qty, item = document.items.items.options[document.items.items.selectedIndex].value; if(trim(item) == "") alertify.alert("Debe seleccionar un artículo de la lista..."); else { setTimeout("focustoprompt();", 1500); alertify.numbers("Ingrese cantidad:", function (e, str) { if (e) { if(trim(str) == "") alertify.alert("Ingrese cantidad numérica..."); else { if(isNaN(trim(str)) == true) alertify.alert("Ingrese cantidad numérica..."); else { qty = parseFloat(trim(str)); if(isNaN(trim(str)) == true) qty = "0" + trim(str); if(qty == 0) alertify.alert("Debe cantidad mayor a cero..."); else document.getElementById("ifrmitems").src = "../orders/savearticletoorder.php?conceptid=" + trim(item) + "&orderid=" + trim(orderid) + "&username=" + trim(username) + "&qty=" + trim(qty) + "&concept=" + trim(concept) + "&time=1778045911"; } } } else { } }, ""); } } //thanks to http://www.aspforums.net/Threads/116959/Get-value-of-Action-attribute-of-Form-inside-IFRAME-using-JavaScript/ //thanks to https://stackoverflow.com/questions/6134039/format-number-to-always-show-2-decimal-places function grantotalarticles() { var i, ifrm, totallist, grantotal = 0; try { ifrm = document.getElementById("ifrmitems"); totallist = ifrm.contentDocument.getElementById("items"); for(i = 0; i < totallist.elements.length; i++) if(trim(totallist[i].name).toLowerCase().indexOf("total") >= 0) grantotal = parseFloat(grantotal) + parseFloat(totallist[i].value); if(grantotal > 0) document.getElementById("grantotal").innerText = "$" + formatCurrency(parseFloat(grantotal).toFixed(2)); else document.getElementById("grantotal").innerText = "$0.00"; } catch(e) { } } function neworder(username) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); location = "../orders/neworder.php?time=1778045911" + trim(additionalparams); } function editorder(id, username) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); if(trim(id) == "") alertify.alert("Debe seleccionar una orden para editarla..."); else window.top.location = "editorder.php?id=" + escape(trim(id)) + "&time=1778045911" + trim(additionalparams); } function deleteorder(id, search, enabled, username) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); if(trim(id) == "") alertify.alert("Debe seleccionar una orden para borrarla..."); else { alertify.set({ labels: { ok : "Si", cancel : "No" } }); alertify.confirm("¿Está seguro de querer borrar la orden definitivamente?", function (e) { if(e) { window.top.location = "deleteorder.php?id=" + escape(trim(id)) + "&search=" + escape(search) + "&time=1778045911&enabled=" + enabled + trim(additionalparams); } else { } }); } } function restoreorder(id, search, enabled, username) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); if(trim(id) == "") alertify.alert("Debe seleccionar una orden para restaurarla..."); else { alertify.set({ labels: { ok : "Si", cancel : "No" } }); alertify.confirm("¿Está seguro de querer restaurar la orden?", function (e) { if(e) { window.top.location = "restoreorder.php?id=" + escape(trim(id)) + "&search=" + escape(search) + "&time=1778045911&enabled=" + enabled + trim(additionalparams); } else { } }); } } function trashorder(id, search, enabled, username) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); if(trim(id) == "") alertify.alert("Debe seleccionar una orden para enviarla a la papelera..."); else { alertify.set({ labels: { ok : "Si", cancel : "No" } }); alertify.confirm("¿Está seguro de querer enviar a la papelera la orden?", function (e) { if(e) { window.top.location = "trashorder.php?id=" + escape(trim(id)) + "&search=" + escape(search) + "&time=1778045911&enabled=" + enabled + trim(additionalparams); } else { } }); } } function saveorder(id, username) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); document.saveorder_.details.value = trim(replaceAll(document.saveorder_.details.value, '\"', "")); document.saveorder_.details.value = trim(replaceAll(document.saveorder_.details.value, "'", "")); if(trim(id) == "") alertify.alert("Debe seleccionar una orden para poder guardarla..."); else { alertify.set({ labels: { ok : "Si", cancel : "No" } }); alertify.confirm("¿Está seguro de querer guardar la orden?", function (e) { if(e) { document.saveorder_.submit(); } else { } }); } } function saveorder2(id, username, newloc) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); document.saveorder_.details.value = trim(replaceAll(document.saveorder_.details.value, '\"', "")); document.saveorder_.details.value = trim(replaceAll(document.saveorder_.details.value, "'", "")); if(trim(id) == "") alertify.alert("Debe seleccionar una orden para poder guardarla..."); else { alertify.set({ labels: { ok : "Si", cancel : "No" } }); alertify.confirm("¿Está seguro de querer guardar la orden?", function (e) { if(e) { document.saveorder_.submit(); } else { location = trim(newloc) + trim(additionalparams); } }); } } function sendorder(id, search, enabled, username) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); if(trim(id) == "") alertify.alert("Debe seleccionar una orden para enviarla..."); else window.top.location = "sendorder.php?id=" + escape(trim(id)) + "&search=" + escape(search) + "&time=1778045911&enabled=" + enabled + trim(additionalparams); } function vieworder(id, enabled, username) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); if(trim(id) == "") alertify.alert("Debe seleccionar una orden para visualizarla..."); else window.top.location = "prepare-download.php?id=" + escape(trim(id)) + "&time=1778045911&enabled=" + enabled + trim(additionalparams); } function duplicateorder(id, enabled, username) { var additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); if(trim(id) == "") alertify.alert("Debe seleccionar una orden para duplicarla..."); else { alertify.confirm("¿Está seguro de querer duplicar la orden?", function (e) { if(e) { window.top.location = "duplicateorder.php?order=" + trim(id) + "&time=1778045911" + trim(additionalparams); } else { } }); } } function saveprofile() { var email; document.profile.password.value = trim(replaceAll(document.profile.password.value, '\"', "")); document.profile.password.value = trim(replaceAll(document.profile.password.value, "'", "")); document.profile.fullname.value = trim(replaceAll(document.profile.fullname.value, '\"', "")); document.profile.fullname.value = trim(replaceAll(document.profile.fullname.value, "'", "")); document.profile.phone.value = trim(replaceAll(document.profile.phone.value, '\"', "")); document.profile.phone.value = trim(replaceAll(document.profile.phone.value, "'", "")); document.profile.email.value = trim(replaceAll(document.profile.email.value, '\"', "")); document.profile.email.value = trim(replaceAll(document.profile.email.value, "'", "")); document.profile.alias.value = trim(replaceAll(document.profile.alias.value, '\"', "")); document.profile.alias.value = trim(replaceAll(document.profile.alias.value, "'", "")); try { email = trim(document.profile.email.value); } catch(e) { email = ""; } if(trim(email) != "") { if(validateEmail(email) == false) { alertify.alert(" La dirección de correo electrónico no tiene un formato válido, se descartará..."); document.profile.email.value = ""; } } alertify.set({ labels: { ok : "Si", cancel : "No" } }); alertify.confirm("¿Está seguro de querer guardar cambios?", function (e) { if(e) { document.profile.submit(); } else { } }); } function closesession() { alertify.set({ labels: { ok : "Si", cancel : "No" } }); alertify.confirm("¿Está seguro de querer salir?", function (e) { if(e) { location = "../destroysession.php?time=1778045911"; } else { } }); } function gotofamily_() { var family; try { family = document.getElementById("families").value; } catch(e) { family = ""; } location = "adminarticles.php?family=" + trim(family) + "&time=1778045911"; } function gotopage(search, enabled, username, selectid, path) { var page, additionalparams = ""; if(trim(username) != "") additionalparams = "&username=" + unescape(username); try { page = parseInt(document.getElementById(trim(selectid)).value); } catch(e) { page = 1; } if(parseInt(page) <= 0) page = 1; location = trim(path) + "?search=" + trim(search) + "&enabled=" + enabled + "&time=1778045911&username=" + trim(username) + "&page=" + page + trim(additionalparams); } function gotopage2() { var page, family; try { page = parseInt(document.getElementById("pagetogo").value); } catch(e) { page = 1; } try { family = document.getElementById("families").value; } catch(e) { family = ""; } if(parseInt(page) <= 0) page = 1; location = "adminarticles.php?family=" + family + "&time=1778045911&page=" + page; } function getuserslist() { return "