//#region EXTENSIONES jQuery.fn.disable = function () { /// /// inhabilita un control. Ejemplo: $("#IDControl").disable(); /// /// } jQuery.fn.enable = function () { /// /// habilita un control. Ejemplo: $("#IDControl").enable(); /// /// } jQuery.fn.reset = function () { /// /// limpia un formulario. Ejemplo= $("#IDForm").reset(); /// /// } jQuery.fn.EnableValidationToolTip = function () { /// /// habilita el tooltip para los controles requeridos contenido en el formulario /// /// } jQuery.fn.required = function () { /// /// coloca un control como requerido. Ejemplo= $("#IDControl").required(); /// /// } jQuery.fn.noRequired = function () { /// /// coloca un control como no requerido. Ejemplo= $("#IDControl").noRequired(); /// /// } jQuery.fn.validateElement = function (controlId) { /// /// verifica un objeto requerido. Ejemplo= $("#IDForm").validateElement("#IDControl"); /// Id del control /// /// } jQuery.fn.setByText = function (value) { /// /// coloca como seleccionado un item de la lista del un control tipo "select" por descripción. Ejemplo= $("#IDControl").setByText(); /// /// /// } jQuery.fn.addCustomRule = function (CustomValidation) { /// /// agrega una regla personalizada a un control en especifico. /// función que valida, correcto retorna un string en vácio y cuando no el mensaje /// /// } jQuery.fn.dateFormatNoTime = function (value, format) { /// /// formatea una fecha proveniente de del WebAPI o servicio a string sin las horas, minutos y segundos. Ejemplo= $("#IDControl").dateFormatNoTime(objeto.fecha,formato); /// fecha /// opcional. formato por defecto "DD-MMMM-YYYY" /// /// } jQuery.fn.dotNetFormat = function (formato) { /// /// lee el texto de un control y retorna un string en formato "MM-DD-YYYY" /// opcional. el formato por defecto es "DD-MMMM-YYYY" /// /// } jQuery.fn.Datepicker = function (params) { /// /// lee el texto de un control y retorna un objeto Date /// opcional. se definen sus propiedades yearRange y beforeShowDay /// /// } jQuery.fn.Grid = function (action, object, FunctionCallBack) { /// /// permite configurar, actualizar o recargar un control tipo Grid. Ejemplo $("#IDGrid").Grid('BuildGrid') /// acción disponibles "Get", "Set", "BuildGrid", "RenderGrid", "RowEvent", "Refresh", "Remove" o "setCustomSettings" /// opcional. Para la accion RenderGrid se requiere una lista de objetos, para las acciones RowEvent(IdTarget,data) y setCustomSettings(Settings) se requiere una función para manipular los Settings del Grid. Ejemplo $("#IDGrid").Grid('setCustomSettings',function(settings){return settings;}); /// opcional. función que activará una vez termine de cargar la tabla. Ejemplo $("#IDGrid").Grid('BuildGrid',function(){}); /// /// } jQuery.fn.ButtonSwitch = function (action, value) { /// /// permite leer, actualizar, inhabilitar o colocar como no requerido un control de tipo ButtonSwitch /// acción a ejecutar (set,get,disable o required) /// opcional. solo es requerido para el set, disable y required /// /// } jQuery.fn.CargarFirma = function (UserID) { /// /// coloca como firmado el control firma, para formularios donde ya el usuario firmó. Ejemplo= $("#divIDControlFramework").CargarFirma(); /// opcional. por defecto usa el UserID actual. /// /// } jQuery.fn.Catalogo = function (action, object) { /// /// permite habilitar un catalogo simple o multiple, colocarlo como requerido o limpiarlo. usar objeto div /// acciones disponible "show", "required", "clear" y "disable" /// /// /// } jQuery.fn.DropDownList = function (action, object) { /// /// permite cargar o cambiar los párametros de entrada del web api /// acciones disponible load, getselected, getall, setselected, remove, clear y add /// con las propiedades HttpPost, value, text y Data /// /// } jQuery.fn.Readonly = function (value) { /// /// coloca un control como solo lectura o viceversa /// valor booleano para el atributo readonly /// /// } jQuery.fn.TableInit = function (columnOrder, order, bPaginate, bFilter, bInfo, columnDefinition, data, ScrollX, bLengthMenu) { /// /// aplica las propiedades del plugin Jquery DataTable a un objeto tabla /// orden ascendente asc o descendente desc /// id de la columna para el reordenamiento /// permitir paginación /// permitir filtros /// permitir detalles /// objeto con la configuracion de las columnas /// lista de objetos /// opcional. habilitar el scroll en el eje X /// opcional. permite definir la cantidad mínima y máxima para filtrar la lista ejemplo: [5,25]. nota: los números desplegados será multiplos del valor mínimo. /// /// } //#endregion this.isMobile = { Android: function () { } , BlackBerry: function () { } , iOS: function () { } , Opera: function () { } , Windows: function () { } , any: function () { } } this.UltimusTask = function () { this.Incident = null; this.Process = null; this.Status = null; this.Version = null; this.User = null; this.UserFullName = null; this.UserEmail = null; this.Supervisor = null; this.SupervisorFullName = null; this.JobFunction = null; this.Step = null; this.TaskId = null; this.NodeVariablesList = new Array(); this.StartTime = null; this.EndTime = null; this.Memo = null; this.SubStatus = null; this.Priority = null; this.Summary = null; this.XmlData = null; } this.NodeVariables = function () { this.NodeName = null; this.NodeValue = null; this.NodeValues = null; } this.Ultimus = { // url del site formato: (protocolo/hostname/nameapplication/). Ejemplo: "http://localhost/test/" server: null // ID del catálogo a actual o a desplegar , SelectedCatalog: null // mensaje: "PROCESO COMPLETADO" , Message_Success: null // mensaje: "ADVERTENCIA DEL SISTEMA" , Message_Warning: null // mensaje: "INFORMACIÓN DEL SISTEMA" , Message_Info: null // mensaje: "ERROR INESPERADO" , Message_Error: null // mensaje: "Ha ocurrido un error inesperado. Vuelva a intentarlo mas tarde" , MessageFull_Error: null , GetControlsSettings: function (keyfiltro, keyformulario, form, DataModel) { /// /// Obtiene la configuración de los controles por filtro y formulario desde el BPMComplement /// nombre filtro en el BPMComplement /// nombre formulario en el BPMComplement /// ID objeto form de la vista /// si es true llamará al método getDataModel /// /// } , UpdateControlsSettings: function (keyfiltro, keyformulario, form, FunctionCallBack) { /// /// Obtiene la configuración de los controles por filtro y formulario desde el BPMComplement y llama una funcion especifica /// nombre filtro en el BPMComplement /// nombre formulario en el BPMComplement /// ID objeto form de la vista /// function que llamará una vez termine de cargar los settings /// /// } , getDataModel: function () { /// /// se activa una vez termina de cargar el método GetControlsSettings y su párametro DataModel sea igual a true. /// /// } , DataCatalogo: function (SelectedCatalog, data) { /// /// Evento que se activa al seleccionar un item de la lista del catálogo /// ID del catálogo /// objeto fila del DataTable /// /// } , CargarDataCatalogo: function (Direccion, filtro, n) { /// /// Carga el WebAPi y despliega el catálogo en cuestion /// Url del WebAPI, esta en los atributos del boton del catálogo. Ejemplo: $('#btnIDcatálogo').attr("Direccion_API"); /// opcional, se puede emitir un filtro para una busqueda más personalizada /// opcional, despúes del párametro filtro puede recibir n paraemtros que se incluirán dinamicamente en el request. para una lista larga de pármetros se recomienda usar un objeto compuesto. /// /// } , DisableCatalog: function (Id, disable) { /// /// Inhabilita o viceversa un catálogo /// Id del catálogo registrado en el BPMComplement /// /// /// } , BuildGrid: function (ModelTabla, model, FunctionCallBack) { /// /// Carga los datos del Grid desde el WebAPI /// propiedades y settings del Grid, estas se pueden obetener con el evento getSettingsGrid /// objeto que será enviado como parámetro al WebAPI /// opcional, una vez termine de cargar se llamará a esta funcion /// /// } , RenderGrid: function (ModelTabla) { /// /// renderiza o actualiza el Grid con los nuevos settings o datos seteados en (ModelTabla.GridSettings.data) /// propiedades y settings del Grid, estas se pueden obetener con el evento getSettingsGrid /// /// } , getSettingsGrid: function (ModelTabla) { /// /// se activa en por cada evento que ocurre en una fila del Grid /// propiedades y settings del Grid /// /// } , GridRowEvent: function (IDGrid, IDTarget, Data) { /// /// se activa en por cada evento que ocurre en una fila del Grid /// Id del Grid sobre cual ocurrió el evento /// Id del control dentro de la fila del Grid /// objeto fila con todas las propiedades del modelo /// /// } , setCustomSettingsDataGrid: function (IDGrid, Settings) { /// /// se activa justo antes de renderizar el Grid. esto permite agregar nuevos controles en las columnas y manipular la información antes de renderizar el Grid /// Id del Grid sobre cual ocurrió /// Configuración actual del Grid, la lista devuelta por el WebAPI se encuentra en la propiedad Settings.data /// /// } , swapDataTableRows: function (id, row1Index, row2Index) { /// /// intercambias dos filas de una misma tabla /// id de la tabla /// posición fila 1 /// posición fila 2 /// /// } , HeaderToggle: function () { /// /// permite colapsar o viceversa el menú de pantallas y el logo del formulario /// /// } , LoadMessage: function (Message) { /// /// despliega el toast de carga /// opcional. mensaje personalizado /// /// } , ENDREQUEST: function () { /// /// oculta el toast de carga /// /// } , IsNullOrEmpty: function (value) { /// /// verifica si un string es nulo o vacio o con espacios en blanco /// /// /// } , replaceAll: function (find, replace, str) { /// /// reemplaza un texto por otro en una cadena especifica /// texto a reemplazar /// texto nuevo /// cadena donde se realizará el reemplazo /// /// } , getUrlParameter: function (sParam) { /// /// lee un parametro especifico del request /// ID del parámetro /// /// } , UpdateRequestParam: function (param, value, url) { /// /// actualiza un parametro especifico del request y retorna la url para su redirección /// ID del parámetro /// valor nuevo /// opcional. url personalizado. si es nulo automáticamente por defecto usa el del request /// /// } , GetInternetExplorerVersion: function () { /// /// retorna la version de IE(..8,9,10,etc.), sino es IE devolverá -1 /// /// } , OmitirAcentos: function (text) { /// /// recorre una cadena y reemplaza las vocales acentuadas /// /// /// } , RedirectToAction: function (Controller, View, customUrl) { /// /// redirecciona a un controller y vista en especifico /// nombre del controlador /// nombre de la vista /// opcional, utiliza esta url como base para redireccionar /// /// } , GetDateFormatNoTime: function (value, format) { /// /// formatea una fecha proveniente de del WebAPI o servicio a string sin las horas, minutos y segundos. Ejemplo: GetDateFormatNoTime(objeto.fecha,formato); /// fecha /// opcional. formato por defecto "DD-MMMM-YYYY" /// /// } , CompleteTask: function (Task, FunctionCallBack) { /// /// completa una tarea de Ultimus /// objteto tarea, que permite enviar un summary o memo. por defecto ya carga cargado el UserID y el TaskID /// opcional. permite llamar una función personalizada al terminar de completar la tarea. /// /// } , GetTaskWithVariables: function (Task, FunctionCallBack) { /// /// obtiene una tarea en especifico y una lista de variables especifica /// objteto tarea, que permite definir en la propiedad NodeVariablesList que variables del mapa deseamos leer. por defecto ya carga cargado el UserID y el TaskID /// permite llamar una función personalizada al terminar de completar la carga de la tarea. /// /// } , IsMemberOfGroup: function (Group, FunctionCallBack, UserID) { /// /// permite verificar si el usuario actual o uno en especifico pertenece a un grupo del OrgChart. está función es sincrona. /// nombre del grupo en el OrgChar /// opcional. sirve para validar un usuario que no es el actual /// /// } , AjaxPostData: function (url, model, IsASync, CheckCodRespuesta, FunctionCallBack, minCallLevel, CustomMessageExitoso) { /// /// permite hacer una petición tipo POST con AJax a un WebAPI o Servicio /// ruta del WebAPI o Servicio. cuando es WebAPI debe concatenar la variable server+url del WebAPI /// objeto a enviar al servicio /// indica si la petición de Ajax es asincrona o no /// indica si emite mensaje de EXITOSO , ADVERTENCIA o ERROR según respuesta del servicio. /// opcional. funcion que activará una vez responda el servicio /// opcional. indica el nivel minimo para llamar a la función ya se a EXITOSO , ADVERTENCIA o ERROR. al ser null se asume como el nivel EXITOSO /// opcional. mensaje personalizado para respuesta EXITOSO /// /// } , AjaxGetData: function (url, IsASync, CheckCodRespuesta, FunctionCallBack, minCallLevel, CustomMessageExitoso) { /// /// permite hacer una petición tipo GET con AJax a un WebAPI o Servicio /// ruta del WebAPI o Servicio. cuando es WebAPI debe concatenar la variable server+url del WebAPI /// objeto a enviar al servicio /// indica si la petición de Ajax es asincrona o no /// indica si emite mensaje de EXITOSO , ADVERTENCIA o ERROR según respuesta del servicio. /// opcional. funcion que activará una vez responda el servicio /// opcional. indica el nivel minimo para llamar a la función ya se a EXITOSO , ADVERTENCIA o ERROR. al ser null se asume como el nivel EXITOSO /// opcional. mensaje personalizado para respuesta EXITOSO /// /// } , GetAge: function (fecha, formato) { /// /// calcula el total de años, meses y días, devuelve un objeto con las propiedades (Date, Years, Months, TotalMonths y TotalDays ) /// fecha /// formato de la fecha suministrada /// /// } , CustomNumberFormat: function (value, decimal_places, symbol, thousand_separator, decimal_separator) { /// /// permite personalizar el formato de un número /// valor a formatear /// número de digitos despues del punto /// opcional, simbolo personalizado, por ejemplo para monedas o porcentajes /// opcional, por defecto es una coma [,] /// opcional, por defecto es un punto [.] /// /// } , SetMaxCharacter: function (id, MaxLength) { /// /// define el limite de caracteres permitidos en una textbox /// id del control /// longitud máxima /// /// } , SetPopoverMaxCharacter: function (id, MaxLength) { /// /// define el limite de caracteres permitidos en una textbox y coloca un tooltip flotante indicando cuantos cáracteres restan /// id del control /// longitud máxima /// /// } , InitPopover: function (param) { /// /// agrega un tooltip personalizado a un control /// entre las propiedades de este control estan IdControl y Options. para la propiedad Options consultar la siguiente URL' http://v4-alpha.getbootstrap.com/components/popovers/' /// /// } , UpdateContentPopover: function (id, content) { /// /// actualiza el contenido de un tooltip personalizado /// id del control /// nuevo contenido /// /// } } intellisense.annotate(window, { // Clase Task con propiedades básicas de Utlimus UltimusTask: null // Clase Varaible de ultimus, para la propidad NodeVariablesList de la clase UltimusTask , NodeVariables: null // identifica si el formulario está siendo visualizado desde un dispositivo móvil" , isMobile: null // ULA Framework" , Ultimus: null }); intellisense.annotate(window, Ultimus);