/** * jPList - jQuery Data Grid Controls 5.2.0.16 - http://jplist.com * Copyright 2016 Miriam Zusin */ (function() { var e = function(a, b) { var c, d; c = a.$control.attr("data-path"); d = b ? a.$control.attr("value") || "" : a.$control.val(); c = new jQuery.fn.jplist.controls.TextboxDTO(c,d,a.params.ignore,a.params.mode,a.params.not,a.params.and,a.params.or); return new jQuery.fn.jplist.StatusDTO(a.name,a.action,a.type,c,a.inStorage,a.inAnimation,a.isAnimateToTop,a.inDeepLinking) } , g = function(a) { a.params.typingStart && a.params.typingEnd && (a.params.isTyping ? window.clearTimeout(a.params.typingHandler) : (a.params.isTyping = !0, a.params.typingStart()), a.params.typingHandler = window.setTimeout(function() { a.params.isTyping = !1; a.params.typingEnd() }, a.params.typingDelay)) } , f = function(a) { var b = e(a, !1); a.observer.trigger(a.observer.events.knownStatusesChanged, [[b]]) } , h = function(a) { if (a.params.$button && 0 < a.params.$button.length) a.params.$button.on("click", function(b) { b.preventDefault(); f(a); var currentdate = new Date(); var hours = currentdate.getHours(); var minutes = currentdate.getMinutes(); var ampm = hours >= 12 ? 'pm' : 'am'; hours = hours % 12; hours = hours ? hours : 12; // the hour '0' should be '12' minutes = minutes < 10 ? '0'+minutes : minutes; var strTime = hours + ':' + minutes + ' ' + ampm; var datetime = (currentdate.getMonth()+1) + "/" + currentdate.getDate() + "/" + currentdate.getFullYear() + " @ " + strTime; // + currentdate.getSeconds(); $('.resultDate').html(datetime); $('.search-result-header').show(); $('.search-result-count').show(); $('.jplist-reset-btn').show(); $('html, body').animate({ scrollTop: ($('.search-result-header').offset().top) },500); return !1 }); else a.$control.on(a.params.eventName, function() { f(a); g(a) }); if (0 < a.params.$clear.length) a.params.$clear.on("click", function(b) { b.preventDefault(); a.$control.val(""); f(a) }) } , d = function(a) { a.params = { path: a.$control.attr("data-path"), dataButton: a.$control.attr("data-button"), eventName: a.$control.attr("data-event-name") || "keyup", $button: null, $clear: a.$control.next('[data-type="clear"]'), ignore: a.$control.attr("data-ignore"), mode: a.$control.attr("data-mode") || "contains", typingDelay: Number(a.$control.attr("data-typing-delay")) || 400, isTyping: !1, typingHandler: null, typingStart: null, typingEnd: null }; "advanced" === a.params.mode ? (a.params.or = jQuery.fn.jplist.ControlFactory.getProp(a.$control, "or"), a.params.and = jQuery.fn.jplist.ControlFactory.getProp(a.$control, "and"), a.params.not = jQuery.fn.jplist.ControlFactory.getProp(a.$control, "not")) : a.params.ignore = a.params.ignore || "[~!@#$%^&*()+=`'\"/\\_]+"; var b = a.$control.attr("data-typing-start") , c = a.$control.attr("data-typing-end"); jQuery.isFunction(jQuery.fn.jplist.settings[b]) && (a.params.typingStart = jQuery.fn.jplist.settings[b]); jQuery.isFunction(jQuery.fn.jplist.settings[c]) && (a.params.typingEnd = jQuery.fn.jplist.settings[c]); a.$control.val(a.$control.attr("value") || ""); a.params.dataButton && (a.params.$button = jQuery(a.params.dataButton)); h(a); return jQuery.extend(this, a) }; d.prototype.getStatus = function(a) { return e(this, a) } ; d.prototype.getDeepLink = function() { var a = "", b; this.inDeepLinking && (b = e(this, !1), b.data && "" !== jQuery.trim(b.data.value) && (a = this.name + this.options.delimiter0 + "value=" + b.data.value)); return a } ; d.prototype.getStatusByDeepLink = function(a, b) { var c = null; this.inDeepLinking && (c = e(this, !0), c.data && "value" === a && (c.data.value = b)); return c } ; d.prototype.getPaths = function(a) { var b; b = new jQuery.fn.jplist.PathModel(this.params.path,null); a.push(b) } ; d.prototype.setStatus = function(a, b) { a.data && (a.data.value || (a.data.value = ""), this.$control.val() !== a.data.value && this.$control.val(a.data.value)) } ; jQuery.fn.jplist.controls.Textbox = function(a) { return new d(a) } ; jQuery.fn.jplist.controlTypes.textbox = { className: "Textbox", options: {} }; } )(); (function() { jQuery.fn.jplist.controls.TextboxDTO = function(e, g, f, h, d, a, b) { return { path: e, ignore: f, value: g, mode: h, not: d, and: a, or: b, filterType: "TextFilter" } } } )();