$( document ).ready(function() { handleMessages(); }); function handleMessages(messagesBoxId, alertMessages){ if(typeof _disableMessagesHandle !== 'undefined' && _disableMessagesHandle) return; else if(typeof _userMessages !== 'undefined') { var c = _userMessages; var errorDiv = getErrorDiv(messagesBoxId); var infoDiv = getInfoDiv(messagesBoxId); var warningDiv = getWarningDiv(messagesBoxId); var errors = ""; var infos = ""; var warnings = ""; var boxMessages = ""; var boxMessagesInfo = ""; var boxMessagesWarning = ""; var boxMessagesError = ""; var serverData = "
  • "; for(var k in c) { var elem = c[k]; if(checkEmpty(elem.fieldPath)) { if(elem.severity=='ERROR') { boxMessagesError += "
  • "+elem.messageText+"
  • "; errors += serverData + elem.messageText + ""; } else if(elem.severity=='WARNING') { boxMessagesWarning += "
  • "+elem.messageText+"
  • "; warnings += serverData + elem.messageText + ""; } else { boxMessagesInfo += "
  • "+elem.messageText+"
  • "; infos += serverData + elem.messageText + ""; } } else { if(elem.severity=='ERROR') { if(elem.fieldPath!=null && elem.fieldPath!='') { errors += serverData + addHref(elem.fieldPath, elem.messageText, 'alert-elem') + ""; getNameOrId(elem.fieldPath, "error"); } else { errors += serverData + elem.messageText + ""; } } else if(elem.severity=='WARNING') { if(elem.fieldPath!=null && elem.fieldPath!='') { getNameOrId(elem.fieldPath, "warning"); warnings += serverData + addHref(elem.fieldPath, elem.messageText, 'warn-elem') + ""; } else { warnings += serverData + elem.messageText + ""; } } else { infos += serverData + elem.messageText + ""; } } } showMessage(errors, errorDiv); showMessage(infos, infoDiv); showMessage(warnings, warningDiv); if(boxMessagesInfo!='' || boxMessagesWarning!='' || boxMessagesError!='') { // Order List boxMessages = boxMessagesError + boxMessagesInfo + boxMessagesWarning; var className = ""; if (!(alertMessages === "false")) { if (boxMessagesError != '') { className = "sad"; } else if (boxMessagesWarning == '') { className = "happy"; } } if(typeof _customizeServerMessagesBox === 'function') { _customizeServerMessagesBox("", className); } else { if (!(alertMessages === "false")) { callAllertDialog("", null, null, className); } } } } } function addHref(field, value, cssClass) { if(field.indexOf(".") != -1) { field = field.substring(field.lastIndexOf(".")+1); } return ""+value+""; } /** * Controlla se la variabile field รจ un name o un id * * @param field * @param severity */ function getNameOrId(field, severity) { var splittedField = field.split("."); var fieldId = field; if(splittedField.length > 1) { // NAME if($("input[name='"+field+"']").length > 0) { $("input[name='"+field+"']").addClass(severity); return; } fieldId = splittedField[splittedField.length-1]; } // ID if($('#' + fieldId).length > 0) $('#' + fieldId).addClass(severity); else console.log('### No selector found for field -> ' + field + " ###"); } function showMessage(elem, elemDiv) { if(elem!="" && elemDiv!=null) { $(elemDiv).append(elem).closest("div").show(); } } function getWarningDiv(messagesBoxId) { var id = messagesBoxId != null ? (messagesBoxId + 'Ul_warn'): 'warnmessages'; if(document.getElementById(id)!=null) { return document.getElementById(id); } else { // TODO return null; } } function getInfoDiv(messagesBoxId) { var id = messagesBoxId != null ? (messagesBoxId + 'Ul_info'): 'infomessages'; if(document.getElementById(id)!=null) { return document.getElementById(id); } else { // TODO return null; } } function getErrorDiv(messagesBoxId) { var id = messagesBoxId != null ? (messagesBoxId + 'Ul') : 'alertboxUl'; if(document.getElementById(id)!=null) { return document.getElementById(id); } else { // TODO return null; } } function checkEmpty(elem) { if(elem!=null && elem!='') return false; return true; }