var formObjectFocused = false;
function isEmptyField(formObjectName){
var empty = false;
var formObject = document.getElementById(formObjectName);
clearError(formObjectName);
if(formObject && !formObject.disabled){
if(formObject.value==""){
empty=true;
showError(formObjectName, "Este campo es obligatorio.");
setFocus(formObject);
}
}
return empty;
}
function isEmptyDate(formObjectName){
var empty = false;
var day = document.getElementById(formObjectName+"Day");
var month = document.getElementById(formObjectName+"Month");
var year = document.getElementById(formObjectName+"Year");
clearError(formObjectName);
if(day.value=="" || month.value=="" || year.value==""){
empty=true;
showError(formObjectName, "Este campo es obligatorio.");
setFocus(day);
}
return empty;
}
function isEmptyURL(formObjectName){
var empty = false;
var formObject = document.getElementById(formObjectName);
clearError(formObjectName);
if(formObject && !formObject.disabled){
if(formObject.value=="" || formObject.value=="http://"){
empty=true;
showError(formObjectName, "Este campo es obligatorio.");
setFocus(formObject);
}
}
return empty;
}
function setFocus(formObject){
if(!formObjectFocused){
formObject.focus();
formObjectFocused = true;
}
}
function showError(formObjectName, text){
var formObject = document.getElementById(formObjectName+"Error");
if(formObject) formObject.innerHTML=text;
var formObject = document.getElementById(formObjectName+"Label");
if(formObject){
var className = formObject.className;
if(text==""){
if(className.indexOf("Error")>0){
formObject.className = className.split("Error")[0];
}
}else{
if(className.indexOf("Error")==-1){
formObject.className = className+"Error";
}
}
}
}
function clearError(formObjectName){
showError(formObjectName, "");
}
function checkTelephone(formObjectName){
var ok = true;
var formObject = document.getElementById(formObjectName);
if(!formObject.disabled){
var value = formObject.value;
if(value!=""){
formObject.value = clearSpaces(value);
value = formObject.value;
if(value.indexOf("+")==0){
value = value.substr(1);
}
if(isNaN(value) || value.length<9){
showError(formObjectName, "Teléfono incorrecto.");
setFocus(formObject);
ok=false;
}else{
clearError(formObjectName);
}
}
}
return ok;
}
function checkEmail(formObjectName){
var ok = true;
var formObject = document.getElementById(formObjectName);
if(!formObject.disabled){
var value = formObject.value;
if(value!=""){
var a = value.indexOf("@");
var p = value.indexOf(".", a);
if(a>-1 && p>-1){
clearError(formObjectName);
}else{
showError(formObjectName, "Email incorrecto.");
setFocus(formObject);
ok=false;
}
}
return ok;
}
}
function checkNumber(formObjectName){
var ok = true;
var formObject = document.getElementById(formObjectName);
if(!formObject.disabled){
var value = formObject.value;
if(value!=""){
value = value.replace(",", ".");
formObject.value = value;
if(isNaN(value)){
showError(formObjectName, "Número incorrecto.");
setFocus(formObject);
ok=false;
}else{
clearError(formObjectName);
}
}
}
return ok;
}
function checkIGTZ(formObjectName){
var ok = checkNumber(formObjectName);
if(ok){
var formObject = document.getElementById(formObjectName);
if(!formObject.disabled){
var value = formObject.value;
if(value!=""){
if(value.indexOf(".") >=0){
valueSP = value.split(".");
value = valueSP[0];
}
formObject.value = value;
if(isNaN(value) || value < 1){
showError(formObjectName, "Ha de ser un número mayor de cero.");
setFocus(formObject);
ok=false;
}else{
clearError(formObjectName);
}
}
}
}
return ok;
}
function validatePassword(formObjectName){
var ok = true;
var password1 = document.getElementById(formObjectName);
var password2 = document.getElementById(formObjectName+"Bis");
clearError(formObjectName+"Bis");
if(password1.value != password2.value){
ok=false;
setFocus(formObject);
showError(formObjectName+"Bis", "Las dos contraseñas no coinciden.");
}
return ok;
}
function clearSpaces(string){
while (string.indexOf(" ")>-1){
string = string.replace(" ", "");
}
return string;
}
//PRE: UTC in seconds
function UTCtoString(UTC){
var months = ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"];
var date = new Date(UTC*1000);
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var string = d+" de "+months[m]+" del "+y;
return string;
}
function callbackSelect(xmlhttp){
var elements = xmlhttp.responseXML.getElementsByTagName("data");
//Con los cambios de CHARSETs en IE hubo problemas con el XML. Por eso
//compruebo antes la longitud
if(elements.length > 0){
var fieldId = elements[0].getAttribute("fieldId");
var defaultValue = xmlhttp.responseXML.getElementsByTagName("data")[0].getAttribute("defaultValue");
var selectElement = document.getElementById(fieldId);
var options = xmlhttp.responseXML.getElementsByTagName("option");
if(options.length==0){
selectElement.disabled = false;
}else{
for(i=0; i< options.length; i++){
var id = options[i].getAttribute("id");
var label = decodeURI(options[i].getAttribute("label"));
var info = options[i].getAttribute("info");
var info2 = options[i].getAttribute("info2");
var currentId = selectElement.options.length;
selectElement.options[currentId] = new Option(label, id);
if(defaultValue==id) {
selectElement.selectedIndex = currentId;
}else{
if(options.length == 1){
selectElement.selectedIndex = currentId;
if(selectElement.onchange) selectElement.onchange();
}
}
//Esto lo puse para Logistus
//pero deberia borrarlo o hacerlo dinamico
/*if(info!=null){
var option = selectElement.options[currentId];
var newAttr = document.createAttribute("info");
newAttr.nodeValue = info;
option.setAttributeNode(newAttr);
}
if(info2!=null){
var option = selectElement.options[currentId];
var newAttr = document.createAttribute("info2");
newAttr.nodeValue = info2;
option.setAttributeNode(newAttr);
}*/
//---
}
selectElement.disabled = false;
}
}
}
function getSelectText(id){
var select = document.getElementById(id);
var option = select.options[select.selectedIndex];
return option.text;
}
//Obligatorio implementar deleteAttachCallback para ejecutar algo una vez llamado a Ajax
//Obligatorio la funcion deleteAttach dentro del servlet del proyecto
//La funcion 'deleteAttach' se ha de implementar en el servlet del proyecto
function deleteAttachAJAX(id, isNew){
if(confirm("Realmente lo desea eliminar?")){
var urlServlet = "http://www.iedbarcelona.es/servlet.php";
var paramsGET = "?func=deleteAttach&id="+id+"&isNew="+isNew;
callAjax(deleteAttachCallback, paramsGET, urlServlet);
}
}
//Borra las filas de una tabla
function emptyTable(tableName){
var table = document.getElementById(tableName);
while(table.rows.length > 0){
table.deleteRow(0);
}
}
//tagName corresponde a lo que se genere en el engineServlet: image - documento
function refreshAttachGridTable(xmlhttp, tagName){
var cols = 4;
var currentCol = 0;
var tableName = "attachGridTable";
var table = document.getElementById(tableName);
if(table){
emptyTable(tableName);
var oRow = null;
var attachments = xmlhttp.responseXML.getElementsByTagName(tagName);
for(i=0; i< attachments.length; i++){
var attach = attachments[i];
var id = attach.getAttribute("id");
var href = attach.getAttribute("href");
var fileSrc = attach.getAttribute("fileSrc");
currentCol++;
if(currentCol>=cols || oRow==null){
var oRow = table.insertRow(table.rows.length);
currentCol = 0;
}
var oCell = oRow.insertCell(oRow.cells.length);
oCell.align = "center";
var innerHTMLCode ="";
innerHTMLCode+="";
innerHTMLCode+="
";
innerHTMLCode+="Eliminar";
oCell.innerHTML = innerHTMLCode;
}
}
}
function refreshAttachListTable(xmlhttp, tagName){
var tableName = "attachlistTable";
var table = document.getElementById(tableName);
if(table){
emptyTable(tableName);
var classA = true;
var attachments = xmlhttp.responseXML.getElementsByTagName(tagName);
for(i=0; i< attachments.length; i++){
var attach = attachments[i];
var id = attach.getAttribute("id");
var ico = attach.getAttribute("ico");
var name = attach.getAttribute("name");
var oRow = table.insertRow(table.rows.length);
oRow.id = "trattach"+id;
if(classA) var className = "listsRowA";
else var className = "listsRowB";
oRow.className = className;
var innerHTMLCode = '

| ';
if(type==1){
innerHTMLCode+='';
}else {
innerHTMLCode+='';
innerHTMLCode+=' '; innerHTMLCode+="Eliminar"; innerHTMLCode+=' |