/** * jPList - jQuery Data Grid Controls 5.2.0.11 - http://jplist.com * Copyright 2016 Miriam Zusin */ (function(){jQuery.fn.jplist.controls.DatePickerRangeFilterDTO=function(e,g,h,f){e={path:e,format:g,filterType:"dateRange",prev_year:"",prev_month:"",prev_day:"",next_year:"",next_month:"",next_day:""};h&&(e.prev_year=h.getFullYear(),e.prev_month=h.getMonth(),e.prev_day=h.getDate());f&&(e.next_year=f.getFullYear(),e.next_month=f.getMonth(),e.next_day=f.getDate());return e}})();(function(){var e=function(c){var a={};c.params.$prev.off("change").change(function(){var a;""===jQuery.trim(jQuery(this).val())&&(a=g(c,!1),c.observer.trigger(c.observer.events.knownStatusesChanged,[[a]]))});c.params.$next.off("change").change(function(){var a;""===jQuery.trim(jQuery(this).val())&&(a=g(c,!1),c.observer.trigger(c.observer.events.knownStatusesChanged,[[a]]))});a.onSelect=function(a,b){var d=g(c,!1);c.observer.trigger(c.observer.events.knownStatusesChanged,[[d]])};c.params.datepickerFunc(c.params.$prev, a);c.params.datepickerFunc(c.params.$next,a);(a=c.params.$prev.attr("value"))&&c.params.$prev.datepicker("setDate",a);(a=c.params.$next.attr("value"))&&c.params.$next.datepicker("setDate",a)},g=function(c,a){var b=null,d=b=b=null,e;e=c.$control.attr("data-path").toString();a?(b=c.params.defaultPrev,d=c.params.defaultNext):(b=c.params.$prev.datepicker("getDate"),d=c.params.$next.datepicker("getDate"));b=new jQuery.fn.jplist.controls.DatePickerRangeFilterDTO(e,c.params.dateTimeFormat,b,d);return b= new jQuery.fn.jplist.StatusDTO(c.name,c.action,c.type,b,c.inStorage,c.inAnimation,c.isAnimateToTop,c.inDeepLinking)},h=function(c,a,b){c=b.split(c.options.delimiter2);3===c.length&&(a.data.prev_year=c[0],a.data.prev_month=c[1],a.data.prev_day=c[2])},f=function(a,b,d){a=d.split(a.options.delimiter2);3===a.length&&(b.data.next_year=a[0],b.data.next_month=a[1],b.data.next_day=a[2])},a=function(a){var b=a.$control.attr("data-datepicker-func");jQuery.isFunction(jQuery.fn.jplist.settings[b])&&(a.params.datepickerFunc= jQuery.fn.jplist.settings[b])},d=function(a,b){var d=null;b&&(d="today"===b?new Date:jQuery.fn.jplist.HelperService.formatDateTime(b,a.params.dateTimeFormat));return d},b=function(c){c.params={datepickerFunc:function(){},$prev:c.$control.find('[data-type="prev"]'),$next:c.$control.find('[data-type="next"]'),dateTimeFormat:c.$control.attr("data-datetime-format").toString()};c.params.defaultPrev=c.params.$prev.datepicker("getDate");c.params.defaultPrev||(c.params.defaultPrev=d(c,c.params.$prev.attr("value"))); c.params.defaultNext=c.params.$next.datepicker("getDate");c.params.defaultNext||(c.params.defaultNext=d(c,c.params.$next.attr("value")));a(c);e(c);return jQuery.extend(this,c)};b.prototype.getStatus=function(a){return g(this,a)};b.prototype.getDeepLink=function(){var a="",b,d,e;this.inDeepLinking&&(b=g(this,!1),b.data&&(d=jQuery.isNumeric(b.data.prev_year)&&jQuery.isNumeric(b.data.prev_month)&&jQuery.isNumeric(b.data.prev_day),e=jQuery.isNumeric(b.data.next_year)&&jQuery.isNumeric(b.data.next_month)&& jQuery.isNumeric(b.data.next_day),d||e))&&(a+=this.name+this.options.delimiter0,d&&(a+="prev"),e&&(d&&(a+=this.options.delimiter2),a+="next"),a+="=",d&&(a+=b.data.prev_year+this.options.delimiter2+b.data.prev_month+this.options.delimiter2+b.data.prev_day),e&&(d&&(a+=this.options.delimiter3),a+=b.data.next_year+this.options.delimiter2+b.data.next_month+this.options.delimiter2+b.data.next_day));return a};b.prototype.getStatusByDeepLink=function(a,b){var d=null,e;if(this.inDeepLinking&&(d=g(this,!0), delete d.data.next_year,delete d.data.next_month,delete d.data.next_day,delete d.data.prev_year,delete d.data.prev_month,delete d.data.prev_day,d.data))switch(a){case "prev":h(this,d,b);break;case "next":f(this,d,b);break;case "prev~next":e=b.split(this.options.delimiter3),2===e.length&&(h(this,d,e[0]),f(this,d,e[1]))}return d};b.prototype.getPaths=function(a){var b;if(b=this.$control.attr("data-path").toString())b=new jQuery.fn.jplist.PathModel(b,"datetime"),a.push(b)};b.prototype.setStatus=function(a, b){var d;jQuery.isNumeric(a.data.prev_year)&&jQuery.isNumeric(a.data.prev_month)&&jQuery.isNumeric(a.data.prev_day)?(d=new Date(a.data.prev_year,a.data.prev_month,a.data.prev_day),this.params.$prev.datepicker("setDate",d)):this.params.$prev.val("");jQuery.isNumeric(a.data.next_year)&&jQuery.isNumeric(a.data.next_month)&&jQuery.isNumeric(a.data.next_day)?(d=new Date(a.data.next_year,a.data.next_month,a.data.next_day),this.params.$next.datepicker("setDate",d)):this.params.$next.val("")};jQuery.fn.jplist.controls.DatePickerRangeFilter= function(a){return new b(a)};jQuery.fn.jplist.controlTypes["date-picker-range-filter"]={className:"DatePickerRangeFilter",options:{}}})();(function(){jQuery.fn.jplist.controls.DatePickerFilterDTO=function(e,g,h){e={path:e,format:g,filterType:"date",year:"",month:"",day:""};h&&(e.year=h.getFullYear(),e.month=h.getMonth(),e.day=h.getDate());return e}})();(function(){var e=function(a){var d={};a.$control.off("change").on("change",function(){var b;""===jQuery.trim(jQuery(this).val())&&(b=g(a,!1),a.observer.trigger(a.observer.events.knownStatusesChanged,[[b]]))});d.onSelect=function(b,c){a.observer.trigger(a.observer.events.knownStatusesChanged,[[g(a,!1)]])};a.params.datepickerFunc(a.$control,d)},g=function(a,d){var b=null,b=b=null;d||(b=a.$control.datepicker("getDate"));b=new jQuery.fn.jplist.controls.DatePickerFilterDTO(a.params.dataPath,a.params.dateTimeFormat, b);return b=new jQuery.fn.jplist.StatusDTO(a.name,a.action,a.type,b,a.inStorage,a.inAnimation,a.isAnimateToTop,a.inDeepLinking)},h=function(a){var d=a.$control.attr("data-datepicker-func");jQuery.isFunction(jQuery.fn.jplist.settings[d])&&(a.params.datepickerFunc=jQuery.fn.jplist.settings[d])},f=function(a){a.params={datepickerFunc:function(){},dataPath:a.$control.attr("data-path"),dateTimeFormat:a.$control.attr("data-datetime-format")};h(a);e(a);return jQuery.extend(this,a)};f.prototype.getStatus= function(a){return g(this,a)};f.prototype.getDeepLink=function(){var a="",d;this.inDeepLinking&&(d=g(this,!1),d.data&&jQuery.isNumeric(d.data.year)&&jQuery.isNumeric(d.data.month)&&jQuery.isNumeric(d.data.day)&&(a+=this.name+this.options.delimiter0+"date="+d.data.year+this.options.delimiter2+d.data.month+this.options.delimiter2+d.data.day));return a};f.prototype.getStatusByDeepLink=function(a,d){var b=null,c;this.inDeepLinking&&(b=g(this,!0),b.data&&"date"===a&&(c=d.split(this.options.delimiter2), 3===c.length&&(b.data.year=c[0],b.data.month=c[1],b.data.day=c[2])));return b};f.prototype.getPaths=function(a){var d;this.params.dataPath&&(d=new jQuery.fn.jplist.PathModel(this.params.dataPath,"datetime"),a.push(d))};f.prototype.setStatus=function(a,d){var b;jQuery.isNumeric(a.data.year)&&jQuery.isNumeric(a.data.month)&&jQuery.isNumeric(a.data.day)?(b=new Date(a.data.year,a.data.month,a.data.day),this.$control.datepicker("setDate",b)):this.$control.val("")};jQuery.fn.jplist.controls.DatePickerFilter= function(a){return new f(a)};jQuery.fn.jplist.controlTypes["date-picker-filter"]={className:"DatePickerFilter",options:{}}})();(function(){jQuery.fn.jplist.controls.RangeSliderDTO=function(e,g,h,f,a){return{path:e,type:"number",filterType:"range",min:g,max:h,prev:f,next:a}}})();(function(){var e=function(a,d){var b=null,c,e,f,b=a.params.$uiSlider.slider("option","min");c=a.params.$uiSlider.slider("option","max");d?(e=a.params.defaultPrev,f=a.params.defaultNext):(e=a.params.$uiSlider.slider("values",0),f=a.params.$uiSlider.slider("values",1));b=new jQuery.fn.jplist.controls.RangeSliderDTO(a.params.dataPath,b,c,e,f);return b=new jQuery.fn.jplist.StatusDTO(a.name,a.action,a.type,b,a.inStorage,a.inAnimation,a.isAnimateToTop,a.inDeepLinking)},g=function(a){a.params.$uiSlider.on("slidechange", function(d,b){var c=e(a,!1);a.observer.trigger(a.observer.events.knownStatusesChanged,[[c]])})},h=function(a){var d=a.$control.attr("data-slider-func"),b=a.$control.attr("data-setvalues-func");jQuery.isFunction(jQuery.fn.jplist.settings[d])&&(a.params.uiSliderFunc=jQuery.fn.jplist.settings[d]);jQuery.isFunction(jQuery.fn.jplist.settings[b])&&(a.params.uiSetValuesFunc=jQuery.fn.jplist.settings[b])},f=function(a){a.params={$uiSlider:a.$control.find('[data-type="ui-slider"]'),$prev:a.$control.find('[data-type="prev-value"]'), $next:a.$control.find('[data-type="next-value"]'),uiSliderFunc:function(a,b,c){},uiSetValuesFunc:function(a,b,c){},controlOptions:a.controlOptions,dataPath:a.$control.attr("data-path")};h(a);a.params.uiSliderFunc(a.params.$uiSlider,a.params.$prev,a.params.$next);a.params.uiSetValuesFunc(a.params.$uiSlider,a.params.$prev,a.params.$next);a.params.defaultPrev=a.params.$uiSlider.slider("values",0);a.params.defaultNext=a.params.$uiSlider.slider("values",1);g(a);return jQuery.extend(this,a)};f.prototype.getStatus= function(a){return e(this,a)};f.prototype.getDeepLink=function(){var a="",d;this.inDeepLinking&&(d=e(this,!1),d.data&&jQuery.isNumeric(d.data.prev)&&jQuery.isNumeric(d.data.next)&&(a=this.name+this.options.delimiter0+"prev"+this.options.delimiter2+"next="+d.data.prev+this.options.delimiter2+d.data.next));return a};f.prototype.getStatusByDeepLink=function(a,d){var b=null,c;this.inDeepLinking&&(b=e(this,!0),b.data&&a==="prev"+this.options.delimiter2+"next"&&(c=d.split(this.options.delimiter2),2===c.length&& (b.data.prev=c[0],b.data.next=c[1])));return b};f.prototype.getPaths=function(a){var d;this.params.dataPath&&(d=new jQuery.fn.jplist.PathModel(this.params.dataPath,"number"),a.push(d))};f.prototype.setStatus=function(a,d){var b,c;jQuery.isNumeric(a.data.prev)&&jQuery.isNumeric(a.data.next)&&(b=Number(a.data.prev),c=Number(a.data.next),isNaN(b)||isNaN(c)||(this.params.$uiSlider.slider("values",0)!=b&&this.params.$uiSlider.slider("values",0,b),this.params.$uiSlider.slider("values",1)!=c&&this.params.$uiSlider.slider("values", 1,c)));this.params.controlOptions&&this.params.uiSetValuesFunc(this.params.$uiSlider,this.params.$prev,this.params.$next)};jQuery.fn.jplist.controls.RangeSlider=function(a){return new f(a)};jQuery.fn.jplist.controlTypes["range-slider"]={className:"RangeSlider",options:{}}})();