diff --git a/build/selenium/chromedriver b/build/selenium/chromedriver new file mode 100755 index 0000000..93c906e Binary files /dev/null and b/build/selenium/chromedriver differ diff --git a/dist/jplist.core.min.css b/dist/jplist.core.min.css new file mode 100644 index 0000000..8bce0a9 --- /dev/null +++ b/dist/jplist.core.min.css @@ -0,0 +1 @@ +.lato{font-family:Lato,sans-serif}.jplist-hidden{display:none}.jplist-sticky{position:fixed;width:100%;left:0;top:0;z-index:1000;background:#f1f1f1;padding-bottom:5px}.sticky-demo .panel>.center{max-width:100%}.sticky-demo .jplist-sticky>.center{max-width:95%}.no-cssgradients .jplist-panel button:hover{background:#f4f4f4}.jplist-panel{color:#27252a}.jplist-panel button{float:left;height:30px;box-shadow:0 0 1px #fff;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;border:1px solid #dbdbdb;border-radius:3px;text-shadow:1px 1px 1px #fff;color:#27252a;background:#fff;background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(100%,#efefef));background:-webkit-linear-gradient(top,#fff 0,#efefef 100%);background:linear-gradient(to bottom,#fff 0,#efefef 100%);margin:10px 10px 0 0}.jplist-panel button:hover{color:#0381bb;background:#f2f2f2;background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fafafa),color-stop(100%,#ededed));background:-webkit-linear-gradient(top,#fafafa 0,#ededed 100%);background:linear-gradient(to bottom,#fafafa 0,#ededed 100%)}.jplist-panel button.jplist-disabled{background:#e3e3e3;color:#6c6c6c;cursor:default}.jplist-panel button.jplist-selected{color:#f03800}.jplist-panel input[type=text]{float:left;height:30px;box-shadow:0 0 1px #fff;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;border:1px solid #dbdbdb;border-radius:3px;text-shadow:1px 1px 1px #fff;color:#27252a;width:150px;text-indent:5px;background:#fff}.jplist-panel input[type=checkbox],.jplist-panel input[type=radio]{float:left;display:inline-block;height:30px;background:#fff;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;color:#27252a}.jplist-panel label{float:left;height:30px;line-height:30px;padding:0 5px;display:inline-block;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;color:#27252a;cursor:pointer}.jplist-panel input.jplist-no-right-border{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.jplist-icon{float:left;height:30px;box-shadow:0 0 1px #fff;background:#fff;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;border:1px solid #dbdbdb;border-radius:3px;text-shadow:1px 1px 1px #fff;color:#27252a;display:inline-block;line-height:30px;padding:0 10px;border-right:0}.jplist-icon:hover{color:#0381bb}.jplist-label{float:left;height:30px;box-shadow:0 0 1px #fff;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;border:1px solid #dbdbdb;border-radius:3px;text-shadow:1px 1px 1px #fff;color:#27252a;line-height:30px;padding:0 10px;margin:10px 10px 0 0;background:#fff;background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(100%,#efefef));background:-webkit-linear-gradient(top,#fff 0,#efefef 100%);background:linear-gradient(to bottom,#fff 0,#efefef 100%)}.jplist-clear{color:#666;cursor:pointer;float:left;height:30px;line-height:27px;padding:0 4px;background:#fff;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;border:1px solid #dbdbdb;border-left:0;border-radius:0 3px 3px 0;text-shadow:1px 1px 1px #fff}.jplist-clear:hover{color:#444}.jplist-selected{color:#CA3F1A}.jplist-box{float:left;height:30px;margin:10px 10px 0 0}@media only screen and (max-width:600px){.jplist-panel{display:none}}.jplist-drop-down{float:left;height:30px;box-shadow:0 0 1px #fff;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;border:1px solid #dbdbdb;border-radius:3px;text-shadow:1px 1px 1px #fff;color:#27252a;width:150px;background:#fff;background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(100%,#efefef));background:-webkit-linear-gradient(top,#fff 0,#efefef 100%);background:linear-gradient(to bottom,#fff 0,#efefef 100%);margin:10px 10px 0 0;position:relative}.jplist-drop-down .jplist-dd-panel{float:left;width:150px;height:30px;line-height:30px;overflow:hidden;text-indent:10px;cursor:pointer}.jplist-drop-down .jplist-dd-panel:after{content:'\25BC';color:#111;display:inline-block;position:absolute;right:10px;z-index:1000}.jplist-drop-down ul{-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;border:1px solid #dbdbdb;border-radius:0 0 3px 3px;position:relative;top:0;z-index:1000;width:148px;display:none;overflow:hidden;background:#fff;list-style:none;margin:0;padding:0;box-shadow:0 3px 6px #bbb}.jplist-drop-down ul li{width:100%;float:left;height:30px;line-height:30px;text-indent:10px;cursor:pointer}.jplist-drop-down ul li:hover{background-color:#ececec}.jplist-drop-down:hover .jplist-dd-panel{color:#0381bb}.jplist-drop-down:hover .jplist-dd-panel:after{color:#0381bb}.jplist-select{height:30px;box-shadow:0 0 1px #fff;background:#fff;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;border:1px solid #dbdbdb;border-radius:3px;text-shadow:1px 1px 1px #fff;color:#27252a;float:left;margin:10px 10px 0 0;padding:5px;text-shadow:none}.jplist-ios-button{display:none}@media only screen and (max-width:600px){.jplist-ios-button{display:block;width:100%;text-align:center;cursor:pointer;font-size:15px;line-height:30px;float:left;height:30px;box-shadow:0 0 1px #fff;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;border:1px solid #dbdbdb;border-radius:3px;text-shadow:1px 1px 1px #fff;color:#27252a;background:#fff;background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(100%,#efefef));background:-webkit-linear-gradient(top,#fff 0,#efefef 100%);background:linear-gradient(to bottom,#fff 0,#efefef 100%)}.jplist-ios-button:hover{background:#f2f2f2;background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fafafa),color-stop(100%,#ededed));background:-webkit-linear-gradient(top,#fafafa 0,#ededed 100%);background:linear-gradient(to bottom,#fafafa 0,#ededed 100%)}.jplist-ios-show{display:block}} \ No newline at end of file diff --git a/dist/js/jplist.core.min.js b/dist/js/jplist.core.min.js index 9d6b470..d0470f9 100644 --- a/dist/js/jplist.core.min.js +++ b/dist/js/jplist.core.min.js @@ -1,61 +1,60 @@ /** -* jPList - jQuery Data Grid Controls 5.2.0.279 - http://jplist.com +* jPList - jQuery Data Grid Controls 5.2.0.281 - http://jplist.com * Copyright 2016 Miriam Zusin */ -(function(){var d=function(a,b){var c,e;if(a&&a.controller&&a.controller.collection){c=a.controller.collection.dataitems.length;jQuery.isNumeric(b.index)&&0<=b.index&&b.index<=a.controller.collection.dataitems.length&&(c=Number(b.index));b.$item&&a.controller.collection.addDataItem(b.$item,a.controller.collection.paths,c);if(b.$items)if(e=b.$items,jQuery.isArray(e))for(var d=e.length-1;0<=d;d--)a.controller.collection.addDataItem(e[d],a.controller.collection.paths,c);else e=e.find(a.options.itemPath).addBack(a.options.itemPath), -jQuery(e.get().reverse()).each(function(){a.controller.collection.addDataItem(jQuery(this),a.controller.collection.paths,c)});a.observer.trigger(a.observer.events.unknownStatusesChanged,[!1])}},b=function(a,b){var c;a&&a.controller&&a.controller.collection&&(b.$item&&(a.controller.collection.delDataitem(b.$item),b.$item.remove()),b.$items&&(c=b.$items,jQuery.isArray(b.$items)&&(c=jQuery(b.$items).map(function(){return this.toArray()})),a.controller.collection.delDataitems(c),c.remove()),a.observer.trigger(a.observer.events.unknownStatusesChanged, -[!1]))},c=function(a,c,e){switch(c){case "add":d(a,e);break;case "del":b(a,e);break;case "empty":a&&a.controller&&a.controller.collection&&(a.controller.collection.empty(),a.observer.trigger(a.observer.events.unknownStatusesChanged,[!1]));break;case "getDataItems":c=null;if(a.options&&a.options.dataSource)switch(a.options.dataSource.type){case "html":a.controller&&a.controller.collection&&(c=a.controller.collection.dataitems);break;case "server":a.controller&&a.controller.model&&a.controller.model.dataItem&& -(c=a.controller.model.dataItem)}return c;case "addControl":a&&a.panel&&a.controller&&(a.panel.addControl(e.$control),a.controller.addPaths(a.panel.paths))}},a=function(a){a.observer.on(a.observer.events.knownStatusesChanged,function(b,c){var e;if(c&&(a.history.addStatuses(c),(e=a.panel.mergeStatuses(c))&&0b.options.historyLength&&b.statusesQueue.shift()};jQuery.fn.jplist.History=function(b,c,a){this.options=c;this.observer=a;this.$root=b;this.statusesQueue=[];this.listStatusesQueue=[]};jQuery.fn.jplist.History.prototype.addStatus=function(b){d(this,b)};jQuery.fn.jplist.History.prototype.addStatuses=function(b){for(var c=0;c -this.options.historyLength&&this.listStatusesQueue.shift()};jQuery.fn.jplist.History.prototype.popList=function(){var b=null;0this.options.historyLength&&this.statusesQueue.shift()};jQuery.fn.jplist.History.prototype.getLastStatus=function(){var c=null;0this.options.historyLength&&this.listStatusesQueue.shift()};jQuery.fn.jplist.History.prototype.popList=function(){var c=null;0b-1&&(d=0);this.currentPage=d;this.start=this.currentPage*this.itemsOnPage;d=this.itemsNumber;b=this.start+this.itemsOnPage;b>d&&(b=d);this.end=b;d=this.currentPage;this.prevPage=0>=d?0:d-1;d=this.currentPage;b= -this.pagesNumber;this.nextPage=0===b?0:d>=b-1?b-1:d+1}})();(function(){jQuery.fn.jplist.PaginationGoogleService=function(d,b,c){c=Number(c);isNaN(c)&&(c=0);c=this.itemsNumber=c;jQuery.isNumeric(b)?(b=Number(b),isNaN(b)&&(b=c)):b=c;this.itemsOnPage=b;b=(b=this.itemsOnPage)?Math.ceil(this.itemsNumber/b):0;b=this.pagesNumber=b;d=Number(d);isNaN(d)&&(d=0);d>b-1&&(d=0);this.currentPage=d;this.start=this.currentPage*this.itemsOnPage;d=this.itemsNumber;b=this.start+this.itemsOnPage;b>d&&(b=d);this.end=b;d=this.currentPage;this.prevPage=0>=d?0:d-1;d=this.currentPage; -b=this.pagesNumber;this.nextPage=0===b?0:d>=b-1?b-1:d+1}})();(function(){jQuery.fn.jplist.FiltersService.dateFilter=function(d,b,c,a,e,h){for(var g,f,k=[],l=0;l=n&&q<=p&&l.push(m)); -return l}})();(function(){jQuery.fn.jplist.FiltersService.pagerFilter=function(d,b){return b.slice(d.start,d.end)}})();(function(){jQuery.fn.jplist.FiltersService.pathFilter=function(d,b){for(var c,a,e=[],h=0;h=d.length)return b;for(e=0;ec&&(l=!1),jQuery.isNumeric(h)&&a>h&&(l=!1),l&&g.push(f)));return g}})();(function(){var d=function(b,a,e,h){var g;if(e=d.length)return e;k=new jQuery.fn.jplist.PathModel(c,null);for(var n=0;n=a.length)return c;for(e=0;ee?1:-1:ad?1:-1:e"),{});d=new jQuery.fn.jplist.Dataitems(c,d,a);d.sort([b]);return"html"===g?d.dataviewToString():d.dataviewToJqueryObject()}})();(function(){var d=function(b,a){var e=null;if("{month}"==b){a=a.toLowerCase();if("january"===a||"jan"===a||"jan."===a)e=0;if("february"===a||"feb"===a||"feb."===a)e=1;if("march"===a||"mar"===a||"mar."===a)e=2;if("april"==a||"apr"===a||"apr."===a)e=3;"may"===a&&(e=4);if("july"==a||"jun"===a||"jun."===a)e=5;if("april"===a||"jul"===a||"jul."===a)e=6;if("august"===a||"aug"===a||"aug."===a)e=7;if("september"===a||"sep"===a||"sep."===a)e=8;if("october"===a||"oct"===a||"oct."===a)e=9;if("november"===a|| -"nov"===a||"nov."===a)e=10;if("december"===a||"dec"===a||"dec."===a)e=11;null===e&&(e=parseInt(a,10),isNaN(e)||e--)}else e=parseInt(a,10);return e},b=function(b,a){var e,d=null;e=b.replace(/{year}|{month}|{day}|{hour}|{min}|{sec}/g,".*");(e=(new RegExp(e,"g")).exec(a))&&1"+d;a+=""}return a};jQuery.fn.jplist.HelperService.removeCharacters=function(b,a){return b?b.replace(new RegExp(a,"ig"),"").toLowerCase():""};jQuery.fn.jplist.HelperService.formatDateTime=function(c,a){var e,h,g,f,k,l;a=a.replace(/\./g,"\\.");a=a.replace(/\(/g,"\\(");a=a.replace(/\)/g,"\\)");a=a.replace(/\[/g,"\\[");a=a.replace(/\]/g,"\\]");e=a.replace("{year}","(.*)");(h=b(e,c))&&(h=d("{year}", -h));e=a.replace("{day}","(.*)");(f=b(e,c))&&(f=d("{day}",f));e=a.replace("{month}","(.*)");(g=b(e,c))&&(g=d("{month}",g));e=a.replace("{hour}","(.*)");(k=b(e,c))&&(k=d("{hour}",k));e=a.replace("{min}","(.*)");(l=b(e,c))&&(l=d("{min}",l));e=a.replace("{sec}","(.*)");(e=b(e,c))&&(e=d("{sec}",e));if(!h||isNaN(h))h=1900;if(!g||isNaN(g))g=0;if(!f||isNaN(f))f=1;if(!k||isNaN(k))k=0;if(!l||isNaN(l))l=0;if(!e||isNaN(e))e=0;return new Date(h,g,f,k,l,e)}})();(function(){jQuery.fn.jplist.DeepLinksService={};jQuery.fn.jplist.DeepLinksService.getUrlParams=function(d){var b=[],c,a=[],e,b=window.decodeURIComponent(jQuery.trim(window.location.hash.replace(d.hashStart,"")));if(d.deepLinking&&""!==jQuery.trim(b))for(var b=b.split(d.delimiter1),h=0;h=d.length||0>=g.length?(b.$noResults.removeClass("jplist-hidden"),b.$itemsBox.addClass("jplist-hidden"),jQuery.isFunction(b.redrawCallback)&&b.redrawCallback(c,g,a)):(b.$noResults.addClass("jplist-hidden"),b.$itemsBox.removeClass("jplist-hidden"),b.effect&&jQuery.fn.jplist.animation?(e&&!e.inAnimation&&(f=!0),e=f?k:b.options,jQuery.fn.jplist.animation.drawItems(e, -b.$itemsBox,d,g,b.effect,function(){jQuery.isFunction(b.redrawCallback)&&b.redrawCallback(c,g,a)},b.observer)):(d.detach(),b.$itemsBox.append(g),jQuery.isFunction(b.redrawCallback)&&b.redrawCallback(c,g,a)));return g};jQuery.fn.jplist.DOMView=function(b,c,a,e,d,g,f){this.options=c;this.$root=b;this.observer=a;this.redrawCallback=g;this.effect=f;this.$itemsBox=b.find(e).eq(0);this.$noResults=b.find(d)};jQuery.fn.jplist.DOMView.prototype.render=function(b,c,a){return d(this,b,c,a)}})();(function(){jQuery.fn.jplist.DOMController=function(d,b,c,a){this.observer=c;this.$root=d;this.listView=new jQuery.fn.jplist.DOMView(d,b,c,b.itemsBox,b.noResults,b.redrawCallback,b.effect);d=b.itemPath;b=this.$root.find(b.itemsBox).eq(0).find(d);this.collection=new jQuery.fn.jplist.Dataitems(this.observer,b,a)};jQuery.fn.jplist.DOMController.prototype.renderStatuses=function(d,b){var c;this.collection&&(this.collection.applyStatuses(d),c=this.listView.render(this.collection,d,b));return c};jQuery.fn.jplist.DOMController.prototype.addPaths= -function(d){this.collection.addPaths(d)}})();(function(){jQuery.fn.jplist.ItemControlFactory=function(d,b,c,a){this.options=d;this.observer=b;this.history=c;this.$root=a};jQuery.fn.jplist.ItemControlFactory.prototype.create=function(d){var b=null,c,a,e=null,h=null;c=d.attr("data-control-type");a={};jQuery.fn.jplist.itemControlTypes[c]&&(a=jQuery.extend(!0,{},a,jQuery.fn.jplist.itemControlTypes[c]));this.options.itemControlTypes&&this.options.itemControlTypes[c]&&(a=jQuery.extend(!0,{},a,this.options.itemControlTypes[c]));a&&(a.className&&(e= -jQuery.fn.jplist.itemControls[a.className]),a.options&&(h=a.options));c={type:c,itemControlType:a,controlTypeClass:e,controlOptions:h};c=jQuery.extend(!0,c,{$control:d,history:this.history,observer:this.observer,options:this.options,$root:this.$root});c.controlTypeClass&&jQuery.isFunction(c.controlTypeClass)&&(b=new c.controlTypeClass(c));return b}})();(function(){var d=function(b,c){c&&0c?a.addClass("jplist-sticky"):a.removeClass("jplist-sticky"))},b=function(a,b){b.each(function(){var a=jQuery(this),b=a.offset().top;a.data("top",b);d(a)});jQuery(window).scroll(function(){b.each(function(){d(jQuery(this))})})},c=function(b){var c=[];if("cookies"===b.options.storage||"localstorage"===b.options.storage&&jQuery.fn.jplist.LocalStorageService.supported())if("cookies"===b.options.storage&& +this.dataview[b],e+=a.html;return e}})();(function(){jQuery.fn.jplist.PaginationService=function(c,b,d){d=Number(d);isNaN(d)&&(d=0);d=this.itemsNumber=d;jQuery.isNumeric(b)?(b=Number(b),isNaN(b)&&(b=d)):b=d;this.itemsOnPage=b;b=(b=this.itemsOnPage)?Math.ceil(this.itemsNumber/b):0;b=this.pagesNumber=b;c=Number(c);isNaN(c)&&(c=0);c>b-1&&(c=0);this.currentPage=c;this.start=this.currentPage*this.itemsOnPage;c=this.itemsNumber;b=this.start+this.itemsOnPage;b>c&&(b=c);this.end=b;c=this.currentPage;this.prevPage=0>=c?0:c-1;c=this.currentPage;b= +this.pagesNumber;this.nextPage=0===b?0:c>=b-1?b-1:c+1}})();(function(){jQuery.fn.jplist.PaginationGoogleService=function(c,b,d){d=Number(d);isNaN(d)&&(d=0);d=this.itemsNumber=d;jQuery.isNumeric(b)?(b=Number(b),isNaN(b)&&(b=d)):b=d;this.itemsOnPage=b;b=(b=this.itemsOnPage)?Math.ceil(this.itemsNumber/b):0;b=this.pagesNumber=b;c=Number(c);isNaN(c)&&(c=0);c>b-1&&(c=0);this.currentPage=c;this.start=this.currentPage*this.itemsOnPage;c=this.itemsNumber;b=this.start+this.itemsOnPage;b>c&&(b=c);this.end=b;c=this.currentPage;this.prevPage=0>=c?0:c-1;c=this.currentPage; +b=this.pagesNumber;this.nextPage=0===b?0:c>=b-1?b-1:c+1}})();(function(){jQuery.fn.jplist.FiltersService.dateFilter=function(c,b,d,a,e,h){for(var g,f,k=[],l=0;l=n&&q<=p&&l.push(m)); +return l}})();(function(){jQuery.fn.jplist.FiltersService.pagerFilter=function(c,b){return b.slice(c.start,c.end)}})();(function(){jQuery.fn.jplist.FiltersService.pathFilter=function(c,b){for(var d,a,e=[],h=0;h=c.length)return b;for(e=0;ed&&(l=!1),jQuery.isNumeric(h)&&a>h&&(l=!1),l&&g.push(f)));return g}})();(function(){var c=function(b,a,e,h){var g;if(e=c.length)return e;k=new jQuery.fn.jplist.PathModel(d,null);for(var n=0;n=a.length)return d;for(e=0;ee?1:-1:ac?1:-1:e"),{});c=new jQuery.fn.jplist.Dataitems(d,c,a);c.sort([b]);return"html"===g?c.dataviewToString():c.dataviewToJqueryObject()}})();(function(){var c=function(b,a){var e=null;if("{month}"==b){a=a.toLowerCase();if("january"===a||"jan"===a||"jan."===a)e=0;if("february"===a||"feb"===a||"feb."===a)e=1;if("march"===a||"mar"===a||"mar."===a)e=2;if("april"==a||"apr"===a||"apr."===a)e=3;"may"===a&&(e=4);if("july"==a||"jun"===a||"jun."===a)e=5;if("april"===a||"jul"===a||"jul."===a)e=6;if("august"===a||"aug"===a||"aug."===a)e=7;if("september"===a||"sep"===a||"sep."===a)e=8;if("october"===a||"oct"===a||"oct."===a)e=9;if("november"===a|| +"nov"===a||"nov."===a)e=10;if("december"===a||"dec"===a||"dec."===a)e=11;null===e&&(e=parseInt(a,10),isNaN(e)||e--)}else e=parseInt(a,10);return e},b=function(b,a){var e,c=null;e=b.replace(/{year}|{month}|{day}|{hour}|{min}|{sec}/g,".*");(e=(new RegExp(e,"g")).exec(a))&&1"+c;a+=""}return a};jQuery.fn.jplist.HelperService.removeCharacters=function(b,a){return b?b.replace(new RegExp(a,"ig"),"").toLowerCase():""};jQuery.fn.jplist.HelperService.formatDateTime=function(d,a){var e,h,g,f,k,l;a=a.replace(/\./g,"\\.");a=a.replace(/\(/g,"\\(");a=a.replace(/\)/g,"\\)");a=a.replace(/\[/g,"\\[");a=a.replace(/\]/g,"\\]");e=a.replace("{year}","(.*)");(h=b(e,d))&&(h=c("{year}", +h));e=a.replace("{day}","(.*)");(f=b(e,d))&&(f=c("{day}",f));e=a.replace("{month}","(.*)");(g=b(e,d))&&(g=c("{month}",g));e=a.replace("{hour}","(.*)");(k=b(e,d))&&(k=c("{hour}",k));e=a.replace("{min}","(.*)");(l=b(e,d))&&(l=c("{min}",l));e=a.replace("{sec}","(.*)");(e=b(e,d))&&(e=c("{sec}",e));if(!h||isNaN(h))h=1900;if(!g||isNaN(g))g=0;if(!f||isNaN(f))f=1;if(!k||isNaN(k))k=0;if(!l||isNaN(l))l=0;if(!e||isNaN(e))e=0;return new Date(h,g,f,k,l,e)}})();(function(){jQuery.fn.jplist.DeepLinksService={};jQuery.fn.jplist.DeepLinksService.getUrlParams=function(c){var b=[],d,a=[],e,b=window.decodeURIComponent(jQuery.trim(window.location.hash.replace(c.hashStart,"")));if(c.deepLinking&&""!==jQuery.trim(b))for(var b=b.split(c.delimiter1),h=0;h=h.length||0>=g.length?(b.$noResults.removeClass("jplist-hidden"),b.$itemsBox.addClass("jplist-hidden"),jQuery.isFunction(b.redrawCallback)&&b.redrawCallback(c,g,a)):(b.$noResults.addClass("jplist-hidden"),b.$itemsBox.removeClass("jplist-hidden"),b.effect&&jQuery.fn.jplist.animation?(e&&!e.inAnimation&&(f=!0),e=f?k:b.options,jQuery.fn.jplist.animation.drawItems(e, +b.$itemsBox,h,g,b.effect,function(){jQuery.isFunction(b.redrawCallback)&&b.redrawCallback(c,g,a)},b.observer)):(h.detach(),b.$itemsBox.append(g),jQuery.isFunction(b.redrawCallback)&&b.redrawCallback(c,g,a)));return g};jQuery.fn.jplist.DOMView=function(b,c,a,e,h,g,f){this.options=c;this.$root=b;this.observer=a;this.redrawCallback=g;this.effect=f;this.$itemsBox=b.find(e).eq(0);this.$noResults=b.find(h)};jQuery.fn.jplist.DOMView.prototype.render=function(b,d,a){return c(this,b,d,a)}})();(function(){jQuery.fn.jplist.DOMController=function(c,b,d,a){this.observer=d;this.$root=c;this.listView=new jQuery.fn.jplist.DOMView(c,b,d,b.itemsBox,b.noResults,b.redrawCallback,b.effect);c=b.itemPath;b=this.$root.find(b.itemsBox).eq(0).find(c);this.collection=new jQuery.fn.jplist.Dataitems(this.observer,b,a)};jQuery.fn.jplist.DOMController.prototype.renderStatuses=function(c,b){var d;this.collection&&(this.collection.applyStatuses(c),d=this.listView.render(this.collection,c,b));return d};jQuery.fn.jplist.DOMController.prototype.addPaths= +function(c){this.collection.addPaths(c)}})();(function(){jQuery.fn.jplist.ItemControlFactory=function(c,b,d,a){this.options=c;this.observer=b;this.history=d;this.$root=a};jQuery.fn.jplist.ItemControlFactory.prototype.create=function(c){var b=null,d,a,e=null,h=null;d=c.attr("data-control-type");a={};jQuery.fn.jplist.itemControlTypes[d]&&(a=jQuery.extend(!0,{},a,jQuery.fn.jplist.itemControlTypes[d]));this.options.itemControlTypes&&this.options.itemControlTypes[d]&&(a=jQuery.extend(!0,{},a,this.options.itemControlTypes[d]));a&&(a.className&&(e= +jQuery.fn.jplist.itemControls[a.className]),a.options&&(h=a.options));d={type:d,itemControlType:a,controlTypeClass:e,controlOptions:h};d=jQuery.extend(!0,d,{$control:c,history:this.history,observer:this.observer,options:this.options,$root:this.$root});d.controlTypeClass&&jQuery.isFunction(d.controlTypeClass)&&(b=new d.controlTypeClass(d));return b}})();(function(){var c=function(b,c){c&&0c?a.addClass("jplist-sticky"):a.removeClass("jplist-sticky"))},b=function(a,b){b.each(function(){var a=jQuery(this),b=a.offset().top;a.data("top",b);c(a)});jQuery(window).scroll(function(){b.each(function(){c(jQuery(this))})})},d=function(b){var c=[];if("cookies"===b.options.storage||"localstorage"===b.options.storage&&jQuery.fn.jplist.LocalStorageService.supported())if("cookies"===b.options.storage&& (c=jQuery.fn.jplist.CookiesService.restoreCookies(b.options.storageName)),"localstorage"===b.options.storage&&jQuery.fn.jplist.LocalStorageService.supported()&&(c=jQuery.fn.jplist.LocalStorageService.restore(b.options.storageName)),0=a.length?c(this):this.controls.setDeepLinks(a,this.observer)};jQuery.fn.jplist.PanelController.prototype.setStatusesFromStorage=function(){c(this)};jQuery.fn.jplist.PanelController.prototype.setStatuses=function(a){this.controls.setStatuses(a, -!1);this.history.addList(a)};jQuery.fn.jplist.PanelController.prototype.getStatuses=function(a){return this.controls.getStatuses(a)};jQuery.fn.jplist.PanelController.prototype.mergeStatuses=function(a){return this.controls.merge(!1,a)};jQuery.fn.jplist.PanelController.prototype.statusesChangedByDeepLinks=function(a,b){this.controls&&this.controls.statusesChangedByDeepLinks(b)};jQuery.fn.jplist.PanelController.prototype.getDeepLinksURLPerControls=function(){return this.controls.getDeepLinksUrl(this.options.delimiter1)}})();(function(){jQuery.fn.jplist.ControlFactory=function(d,b,c,a){this.options=d;this.observer=b;this.history=c;this.$root=a};jQuery.fn.jplist.ControlFactory.prototype.create=function(d,b){var c=null,a,e,h,g,f,k,l,m;a=d.attr("data-control-type");f=g=h=!0;k=!1;m=l=null;(e=d.attr("data-control-deep-link"))&&"false"===e.toString()&&(h=!1);(e=d.attr("data-control-storage"))&&"false"===e.toString()&&(g=!1);(e=d.attr("data-control-animation"))&&"false"===e.toString()&&(f=!1);(e=d.attr("data-control-animate-to-top"))&& -"true"===e.toString()&&(k=!0);e={};jQuery.fn.jplist.controlTypes[a]&&(e=jQuery.extend(!0,{},e,jQuery.fn.jplist.controlTypes[a]));this.options.controlTypes&&this.options.controlTypes[a]&&(e=jQuery.extend(!0,{},e,this.options.controlTypes[a]));e&&(e.className&&(l=jQuery.fn.jplist.controls[e.className]),e.options&&(m=e.options));a={type:a,action:d.attr("data-control-action"),name:d.attr("data-control-name"),inDeepLinking:h,inStorage:g,inAnimation:f,isAnimateToTop:k,controlType:e,controlTypeClass:l,controlOptions:m, -paths:[]};a=jQuery.extend(!0,a,{$control:d,history:this.history,observer:this.observer,options:this.options,$root:this.$root,controlsCollection:b});a.controlTypeClass&&jQuery.isFunction(a.controlTypeClass)&&(c=new a.controlTypeClass(a));return c};jQuery.fn.jplist.ControlFactory.prototype.getStatus=function(d){return null};jQuery.fn.jplist.ControlFactory.prototype.setStatus=function(d,b){};jQuery.fn.jplist.ControlFactory.prototype.getDeepLink=function(){return""};jQuery.fn.jplist.ControlFactory.prototype.getStatusByDeepLink= -function(d,b){return null};jQuery.fn.jplist.ControlFactory.prototype.getPaths=function(d){return[]};jQuery.fn.jplist.ControlFactory.prototype.setByDeepLink=function(d){};jQuery.fn.jplist.ControlFactory.getProp=function(d,b){var c=[],a=new RegExp("^"+b+"[0-9]*$");$.each(d.data(),function(b,d){a.test(b)&&c.push(d)});return 0==c.length?"":1==c.length?c[0]:c};jQuery.fn.jplist.ControlFactory.getPropPath=function(d,b){var c="";if(jQuery.isArray(d))for(var a=0;a=a.length?d(this):this.controls.setDeepLinks(a,this.observer)};jQuery.fn.jplist.PanelController.prototype.setStatusesFromStorage=function(){d(this)};jQuery.fn.jplist.PanelController.prototype.setStatuses=function(a){this.history.addStatuses(a); +this.controls.setStatuses(a,!1);this.history.addList(a)};jQuery.fn.jplist.PanelController.prototype.getStatuses=function(a){return this.controls.getStatuses(a)};jQuery.fn.jplist.PanelController.prototype.mergeStatuses=function(a){return this.controls.merge(!1,a)};jQuery.fn.jplist.PanelController.prototype.statusesChangedByDeepLinks=function(a,b){this.controls&&this.controls.statusesChangedByDeepLinks(b)};jQuery.fn.jplist.PanelController.prototype.getDeepLinksURLPerControls=function(){return this.controls.getDeepLinksUrl(this.options.delimiter1)}})();(function(){jQuery.fn.jplist.ControlFactory=function(c,b,d,a){this.options=c;this.observer=b;this.history=d;this.$root=a};jQuery.fn.jplist.ControlFactory.prototype.create=function(c,b){var d=null,a,e,h,g,f,k,l,m;a=c.attr("data-control-type");f=g=h=!0;k=!1;m=l=null;(e=c.attr("data-control-deep-link"))&&"false"===e.toString()&&(h=!1);(e=c.attr("data-control-storage"))&&"false"===e.toString()&&(g=!1);(e=c.attr("data-control-animation"))&&"false"===e.toString()&&(f=!1);(e=c.attr("data-control-animate-to-top"))&& +"true"===e.toString()&&(k=!0);e={};jQuery.fn.jplist.controlTypes[a]&&(e=jQuery.extend(!0,{},e,jQuery.fn.jplist.controlTypes[a]));this.options.controlTypes&&this.options.controlTypes[a]&&(e=jQuery.extend(!0,{},e,this.options.controlTypes[a]));e&&(e.className&&(l=jQuery.fn.jplist.controls[e.className]),e.options&&(m=e.options));a={type:a,action:c.attr("data-control-action"),name:c.attr("data-control-name"),inDeepLinking:h,inStorage:g,inAnimation:f,isAnimateToTop:k,controlType:e,controlTypeClass:l,controlOptions:m, +paths:[]};a=jQuery.extend(!0,a,{$control:c,history:this.history,observer:this.observer,options:this.options,$root:this.$root,controlsCollection:b});a.controlTypeClass&&jQuery.isFunction(a.controlTypeClass)&&(d=new a.controlTypeClass(a));return d};jQuery.fn.jplist.ControlFactory.prototype.getStatus=function(c){return null};jQuery.fn.jplist.ControlFactory.prototype.setStatus=function(c,b){};jQuery.fn.jplist.ControlFactory.prototype.getDeepLink=function(){return""};jQuery.fn.jplist.ControlFactory.prototype.getStatusByDeepLink= +function(c,b){return null};jQuery.fn.jplist.ControlFactory.prototype.getPaths=function(c){return[]};jQuery.fn.jplist.ControlFactory.prototype.setByDeepLink=function(c){};jQuery.fn.jplist.ControlFactory.getProp=function(c,b){var d=[],a=new RegExp("^"+b+"[0-9]*$");$.each(c.data(),function(b,c){a.test(b)&&d.push(c)});return 0==d.length?"":1==d.length?d[0]:d};jQuery.fn.jplist.ControlFactory.getPropPath=function(c,b){var d="";if(jQuery.isArray(c))for(var a=0;a=a.$control.find(".jplist-dd-panel").length&&a.$control.prepend('
'+ -c.text()+"
");b(a);return jQuery.extend(this,a)};jQuery.fn.jplist.DropdownControl=function(a,b,d,g){return new c(a,b,d,g)}})();(function(){jQuery.fn.jplist.Storage=function(d,b,c){this.storageType=d;this.storageName=b;this.cookiesExpiration=c;this.isStorageEnabled="cookies"===d||"localstorage"===d&&jQuery.fn.jplist.LocalStorageService.supported()};jQuery.fn.jplist.Storage.prototype.save=function(d){var b=[],c;if(d&&this.isStorageEnabled){for(var a=0;a=a.$control.find(".jplist-dd-panel").length&&a.$control.prepend('
'+ +c.text()+"
");b(a);return jQuery.extend(this,a)};jQuery.fn.jplist.DropdownControl=function(a,b,c,g){return new d(a,b,c,g)}})();(function(){jQuery.fn.jplist.Storage=function(c,b,d){this.storageType=c;this.storageName=b;this.cookiesExpiration=d;this.isStorageEnabled="cookies"===c||"localstorage"===c&&jQuery.fn.jplist.LocalStorageService.supported()};jQuery.fn.jplist.Storage.prototype.save=function(c){var b=[],d;if(c&&this.isStorageEnabled){for(var a=0;a=d.length&&(d=a.$control.find("li:eq(0)"))):d=a.$control.find(".active");d=d.find("span");d=new jQuery.fn.jplist.controls.DropdownFilterDTO(d.attr("data-path"),d.attr("data-type"));return d=new jQuery.fn.jplist.StatusDTO(a.name,a.action,a.type,d,a.inStorage,a.inAnimation,a.isAnimateToTop,a.inDeepLinking)},h=function(a,b){var d,c,e;a.$control.find("span").each(function(){d=jQuery(this).attr("data-path"); -c=jQuery(this).attr("data-type");d&&""!==jQuery.trim(d)&&(e=new jQuery.fn.jplist.PathModel(d,c),b.push(e))})},g=function(a,b){var d;d=a.$control.find("li");d.removeClass("active");if(!b||0>=b.length)b=d.eq(0);0=d.length&&(d=a.$control.find("li:eq(0)"))):d=a.$control.find(".active");d=d.find("span");d=new jQuery.fn.jplist.controls.DropdownFilterDTO(d.attr("data-path"),d.attr("data-type"));return d=new jQuery.fn.jplist.StatusDTO(a.name,a.action,a.type,d,a.inStorage,a.inAnimation,a.isAnimateToTop,a.inDeepLinking)},g=function(a,b){var d,c,e;a.$control.find("span").each(function(){d=jQuery(this).attr("data-path"); +c=jQuery(this).attr("data-type");d&&""!==jQuery.trim(d)&&(e=new jQuery.fn.jplist.PathModel(d,c),b.push(e))})},h=function(a,b){var d;d=a.$control.find("li");d.removeClass("active");if(!b||0>=b.length)b=d.eq(0);0=b.length&&(b=c.$control.find("option").eq(0))):b=c.$control.find("option:selected");b=new jQuery.fn.jplist.controls.DropdownFilterDTO(b.attr("data-path"),b.attr("data-type"));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){var b,d,e;c.$control.find("option").each(function(){b=jQuery(this).attr("data-path"); -d=jQuery(this).attr("data-type");b&&(e=new jQuery.fn.jplist.PathModel(b,d),a.push(e))})},g=function(c){c.$control.change(function(){var a,b,d;a=e(c,!1);b=jQuery(this).find("option:selected");d=b.attr("data-path");b=b.attr("data-number");d?(a.data.path=d,a.data.type=jQuery(this).attr("data-type"),a.data.order=jQuery(this).attr("data-order")):b&&(a.data.number=b);c.observer.trigger(c.observer.events.knownStatusesChanged,[[a]])})},f=function(c){g(c);return jQuery.extend(this,c)};f.prototype.getStatus= -function(c){return e(this,c)};f.prototype.getDeepLink=function(){var c="",a;this.inDeepLinking&&(a=e(this,!1),a.data&&a.data.path&&(c=this.name+this.options.delimiter0+"path="+a.data.path));return c};f.prototype.getStatusByDeepLink=function(c,a){var b=null;this.inDeepLinking&&(b=e(this,!0),b.data&&"path"===c&&b.data.path&&(b.data.path=a));return b};f.prototype.getPaths=function(c){h(this,c)};f.prototype.setStatus=function(c,a){var b;(b=this.$control.find('option[data-path="'+c.data.path+'"]'))&&0< -b.length&&(b.get(0).selected=!0)};jQuery.fn.jplist.controls.FilterSelect=function(c){return new f(c)};jQuery.fn.jplist.controlTypes["filter-select"]={className:"FilterSelect",options:{}}})();(function(){var e=function(a,b){var d;d=b.find("option[checked]");0>=d.length&&(d=b.find("option").eq(0));return d},h=function(a){a.params.$dropdowns.each(function(){var b=jQuery(this),b=e(a,b);0<=b.length&&b.prop("selected",!0)})},g=function(a,b){var d=[],c;c=null;a.params.$dropdowns.each(function(){var c=jQuery(this),f="";b?(c=e(a,c),0=b.length&&(b=c.$control.find("option").eq(0))):b=c.$control.find("option:selected");b=new jQuery.fn.jplist.controls.DropdownFilterDTO(b.attr("data-path"),b.attr("data-type"));return b=new jQuery.fn.jplist.StatusDTO(c.name,c.action,c.type,b,c.inStorage,c.inAnimation,c.isAnimateToTop,c.inDeepLinking)},g=function(c,a){var b,d,e;c.$control.find("option").each(function(){b=jQuery(this).attr("data-path"); +d=jQuery(this).attr("data-type");b&&(e=new jQuery.fn.jplist.PathModel(b,d),a.push(e))})},h=function(c){c.$control.change(function(){var a,b,d;a=e(c,!1);b=jQuery(this).find("option:selected");d=b.attr("data-path");b=b.attr("data-number");d?(a.data.path=d,a.data.type=jQuery(this).attr("data-type"),a.data.order=jQuery(this).attr("data-order")):b&&(a.data.number=b);c.observer.trigger(c.observer.events.knownStatusesChanged,[[a]])})},f=function(c){h(c);return jQuery.extend(this,c)};f.prototype.getStatus= +function(c){return e(this,c)};f.prototype.getDeepLink=function(){var c="",a;this.inDeepLinking&&(a=e(this,!1),a.data&&a.data.path&&(c=this.name+this.options.delimiter0+"path="+a.data.path));return c};f.prototype.getStatusByDeepLink=function(c,a){var b=null;this.inDeepLinking&&(b=e(this,!0),b.data&&"path"===c&&b.data.path&&(b.data.path=a));return b};f.prototype.getPaths=function(c){g(this,c)};f.prototype.setStatus=function(c,a){var b;(b=this.$control.find('option[data-path="'+c.data.path+'"]'))&&0< +b.length&&(b.get(0).selected=!0)};jQuery.fn.jplist.controls.FilterSelect=function(c){return new f(c)};jQuery.fn.jplist.controlTypes["filter-select"]={className:"FilterSelect",options:{}}})();(function(){var e=function(a,b){var d;d=b.find("option[checked]");0>=d.length&&(d=b.find("option").eq(0));return d},g=function(a){a.params.$dropdowns.each(function(){var b=jQuery(this),b=e(a,b);0<=b.length&&b.prop("selected",!0)})},h=function(a,b){var d=[],c;c=null;a.params.$dropdowns.each(function(){var c=jQuery(this),f="";b?(c=e(a,c),0=a.history.statusesQueue.length?a.$control.addClass("jplist-disabled"):a.$control.removeClass("jplist-disabled")},e=function(a){a.observer.on(a.observer.events.unknownStatusesChanged,function(){d(a)});a.observer.on(a.observer.events.knownStatusesChanged,function(){d(a)});a.$control.on("click",function(){var b,c,f;a.history.popStatus();a.history.popList();b=a.history.getLastStatus();if(f=a.history.getLastList()||[],b){for(var g=0;g=a.history.statusesQueue.length?a.$control.addClass("jplist-disabled"):a.$control.removeClass("jplist-disabled")},d=function(a){a.observer.on(a.observer.events.unknownStatusesChanged,function(){c(a)});a.observer.on(a.observer.events.knownStatusesChanged,function(){c(a)});a.$control.on("click",function(){var b;a.history.popList();b=a.history.getLastList()||[];a.observer.one(a.observer.events.statusesAppliedToList,function(){a.history.popList()}); +b?a.observer.trigger(a.observer.events.knownStatusesChanged,[b]):a.observer.trigger(a.observer.events.unknownStatusesChanged,[!0]);c(a)})},b=function(a){c(a);d(a);return jQuery.extend(this,a)};jQuery.fn.jplist.controls.BackButton=function(a){return new b(a)};jQuery.fn.jplist.controlTypes["back-button"]={className:"BackButton",options:{}}})();(function(){var c=function(b){b.$control.on("click",function(){b.observer.trigger(b.observer.events.unknownStatusesChanged,[!0])})},d=function(b){c(b);return jQuery.extend(this,b)};jQuery.fn.jplist.controls.Reset=function(b){return new d(b)};jQuery.fn.jplist.controlTypes.reset={className:"Reset",options:{}}})(); diff --git a/dist/js/jplist.jquery-ui-bundle.min.js b/dist/js/jplist.jquery-ui-bundle.min.js index a70a6d9..a729f27 100644 --- a/dist/js/jplist.jquery-ui-bundle.min.js +++ b/dist/js/jplist.jquery-ui-bundle.min.js @@ -1,22 +1,22 @@ /** -* jPList - jQuery Data Grid Controls 5.2.0.10 - http://jplist.com +* 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(d){var a={};d.params.$prev.off("change").change(function(){var a;""===jQuery.trim(jQuery(this).val())&&(a=g(d,!1),d.history.addStatus(a),d.observer.trigger(d.observer.events.knownStatusesChanged,[[a]]))});d.params.$next.off("change").change(function(){var a;""===jQuery.trim(jQuery(this).val())&&(a=g(d,!1),d.history.addStatus(a),d.observer.trigger(d.observer.events.knownStatusesChanged,[[a]]))});a.onSelect=function(a,b){var c=g(d,!1);d.history.addStatus(c);d.observer.trigger(d.observer.events.knownStatusesChanged, -[[c]])};d.params.datepickerFunc(d.params.$prev,a);d.params.datepickerFunc(d.params.$next,a);(a=d.params.$prev.attr("value"))&&d.params.$prev.datepicker("setDate",a);(a=d.params.$next.attr("value"))&&d.params.$next.datepicker("setDate",a)},g=function(d,a){var b=null,c=b=b=null,e;e=d.$control.attr("data-path").toString();a?(b=d.params.defaultPrev,c=d.params.defaultNext):(b=d.params.$prev.datepicker("getDate"),c=d.params.$next.datepicker("getDate"));b=new jQuery.fn.jplist.controls.DatePickerRangeFilterDTO(e, -d.params.dateTimeFormat,b,c);return b=new jQuery.fn.jplist.StatusDTO(d.name,d.action,d.type,b,d.inStorage,d.inAnimation,d.isAnimateToTop,d.inDeepLinking)},h=function(a,b,c){a=c.split(a.options.delimiter2);3===a.length&&(b.data.prev_year=a[0],b.data.prev_month=a[1],b.data.prev_day=a[2])},f=function(a,b,c){a=c.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])},c=function(a,b){var c=null;b&&(c="today"===b?new Date:jQuery.fn.jplist.HelperService.formatDateTime(b,a.params.dateTimeFormat));return c},b=function(d){d.params={datepickerFunc:function(){},$prev:d.$control.find('[data-type="prev"]'),$next:d.$control.find('[data-type="next"]'),dateTimeFormat:d.$control.attr("data-datetime-format").toString()};d.params.defaultPrev=d.params.$prev.datepicker("getDate");d.params.defaultPrev||(d.params.defaultPrev= -c(d,d.params.$prev.attr("value")));d.params.defaultNext=d.params.$next.datepicker("getDate");d.params.defaultNext||(d.params.defaultNext=c(d,d.params.$next.attr("value")));a(d);e(d);return jQuery.extend(this,d)};b.prototype.getStatus=function(a){return g(this,a)};b.prototype.getDeepLink=function(){var a="",b,c,e;this.inDeepLinking&&(b=g(this,!1),b.data&&(c=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),c||e))&&(a+=this.name+this.options.delimiter0,c&&(a+="prev"),e&&(c&&(a+=this.options.delimiter2),a+="next"),a+="=",c&&(a+=b.data.prev_year+this.options.delimiter2+b.data.prev_month+this.options.delimiter2+b.data.prev_day),e&&(c&&(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 c=null,e; -if(this.inDeepLinking&&(c=g(this,!0),delete c.data.next_year,delete c.data.next_month,delete c.data.next_day,delete c.data.prev_year,delete c.data.prev_month,delete c.data.prev_day,c.data))switch(a){case "prev":h(this,c,b);break;case "next":f(this,c,b);break;case "prev~next":e=b.split(this.options.delimiter3),2===e.length&&(h(this,c,e[0]),f(this,c,e[1]))}return c};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 c;jQuery.isNumeric(a.data.prev_year)&&jQuery.isNumeric(a.data.prev_month)&&jQuery.isNumeric(a.data.prev_day)?(c=new Date(a.data.prev_year,a.data.prev_month,a.data.prev_day),this.params.$prev.datepicker("setDate",c)):this.params.$prev.val("");jQuery.isNumeric(a.data.next_year)&&jQuery.isNumeric(a.data.next_month)&&jQuery.isNumeric(a.data.next_day)?(c=new Date(a.data.next_year,a.data.next_month,a.data.next_day),this.params.$next.datepicker("setDate", -c)):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 c={};a.$control.off("change").on("change",function(){var b;""===jQuery.trim(jQuery(this).val())&&(b=g(a,!1),a.history.addStatus(b),a.observer.trigger(a.observer.events.knownStatusesChanged,[[b]]))});c.onSelect=function(b,c){a.history.addStatus(g(a,!1));a.observer.trigger(a.observer.events.knownStatusesChanged,[[g(a,!1)]])};a.params.datepickerFunc(a.$control,c)},g=function(a,c){var b=null,b=b=null;c||(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 c=a.$control.attr("data-datepicker-func");jQuery.isFunction(jQuery.fn.jplist.settings[c])&&(a.params.datepickerFunc=jQuery.fn.jplist.settings[c])},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="",c;this.inDeepLinking&&(c=g(this,!1),c.data&&jQuery.isNumeric(c.data.year)&&jQuery.isNumeric(c.data.month)&&jQuery.isNumeric(c.data.day)&&(a+=this.name+this.options.delimiter0+"date="+c.data.year+this.options.delimiter2+c.data.month+this.options.delimiter2+c.data.day));return a};f.prototype.getStatusByDeepLink=function(a,c){var b=null,d;this.inDeepLinking&&(b=g(this,!0),b.data&&"date"===a&&(d=c.split(this.options.delimiter2), -3===d.length&&(b.data.year=d[0],b.data.month=d[1],b.data.day=d[2])));return b};f.prototype.getPaths=function(a){var c;this.params.dataPath&&(c=new jQuery.fn.jplist.PathModel(this.params.dataPath,"datetime"),a.push(c))};f.prototype.setStatus=function(a,c){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,c){var b=null,d,e,f,b=a.params.$uiSlider.slider("option","min");d=a.params.$uiSlider.slider("option","max");c?(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,d,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(c,b){var d=e(a,!1);a.history.addStatus(d);a.observer.trigger(a.observer.events.knownStatusesChanged,[[d]])})},h=function(a){var c=a.$control.attr("data-slider-func"),b=a.$control.attr("data-setvalues-func");jQuery.isFunction(jQuery.fn.jplist.settings[c])&&(a.params.uiSliderFunc=jQuery.fn.jplist.settings[c]);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,d){},uiSetValuesFunc:function(a,b,d){},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="",c;this.inDeepLinking&&(c=e(this,!1),c.data&&jQuery.isNumeric(c.data.prev)&&jQuery.isNumeric(c.data.next)&&(a=this.name+this.options.delimiter0+"prev"+this.options.delimiter2+"next="+c.data.prev+this.options.delimiter2+c.data.next));return a};f.prototype.getStatusByDeepLink=function(a,c){var b=null,d;this.inDeepLinking&&(b=e(this,!0),b.data&&a==="prev"+this.options.delimiter2+ -"next"&&(d=c.split(this.options.delimiter2),2===d.length&&(b.data.prev=d[0],b.data.next=d[1])));return b};f.prototype.getPaths=function(a){var c;this.params.dataPath&&(c=new jQuery.fn.jplist.PathModel(this.params.dataPath,"number"),a.push(c))};f.prototype.setStatus=function(a,c){var b,d;jQuery.isNumeric(a.data.prev)&&jQuery.isNumeric(a.data.next)&&(b=Number(a.data.prev),d=Number(a.data.next),isNaN(b)||isNaN(d)||(this.params.$uiSlider.slider("values",0)!=b&&this.params.$uiSlider.slider("values",0, -b),this.params.$uiSlider.slider("values",1)!=d&&this.params.$uiSlider.slider("values",1,d)));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:{}}})(); +(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:{}}})(); diff --git a/dist/js/jplist.list-grid-view.min.js b/dist/js/jplist.list-grid-view.min.js index 54460c2..d2af271 100644 --- a/dist/js/jplist.list-grid-view.min.js +++ b/dist/js/jplist.list-grid-view.min.js @@ -1,8 +1,8 @@ /** -* jPList - jQuery Data Grid Controls 5.2.0.5 - http://jplist.com +* jPList - jQuery Data Grid Controls 5.2.0.6 - http://jplist.com * Copyright 2016 Miriam Zusin */ -(function(){var d=function(a,b){var c;c=null;c=a.params.defaultView;c=b?a.params.defaultView:a.params.currentView;c=new jQuery.fn.jplist.controls.ViewsDTO(c);return c=new jQuery.fn.jplist.StatusDTO(a.name,a.action,a.type,c,a.inStorage,a.inAnimation,a.isAnimateToTop,a.inDeepLinking)},f=function(a){a.params.$buttons.on("click",function(){var b=jQuery(this).attr("data-type");a.$root.removeClass(a.params.types.join(" ")).addClass(b);a.params.currentView=b;a.history.addStatus(d(a,!1));a.observer.trigger(a.observer.events.unknownStatusesChanged, +(function(){var d=function(a,b){var c;c=null;c=a.params.defaultView;c=b?a.params.defaultView:a.params.currentView;c=new jQuery.fn.jplist.controls.ViewsDTO(c);return c=new jQuery.fn.jplist.StatusDTO(a.name,a.action,a.type,c,a.inStorage,a.inAnimation,a.isAnimateToTop,a.inDeepLinking)},f=function(a){a.params.$buttons.on("click",function(){var b=jQuery(this).attr("data-type");a.$root.removeClass(a.params.types.join(" ")).addClass(b);a.params.currentView=b;a.observer.trigger(a.observer.events.unknownStatusesChanged, [!1])})},e=function(a){a.params={$buttons:a.$control.find("[data-type]"),defaultView:a.$control.attr("data-default")||"list-view",currentView:a.$control.attr("data-default")||"list-view",types:[]};0 0){ diff --git a/src/core/diagrams/.~lock.flow.odg# b/src/core/diagrams/.~lock.flow.odg# new file mode 100644 index 0000000..ba57554 --- /dev/null +++ b/src/core/diagrams/.~lock.flow.odg# @@ -0,0 +1 @@ +Miriam Zusin,miriam,miriamz-yosmbp.waves.com,09.10.2016 18:11,file:///Users/miriam/Library/Application%20Support/OpenOffice/4; \ No newline at end of file diff --git a/src/core/diagrams/flow.odg b/src/core/diagrams/flow.odg index 9ce341a..4e30988 100644 Binary files a/src/core/diagrams/flow.odg and b/src/core/diagrams/flow.odg differ diff --git a/src/core/js/app.js b/src/core/js/app.js index d61a1fe..7392a97 100644 --- a/src/core/js/app.js +++ b/src/core/js/app.js @@ -276,9 +276,6 @@ if(statusesToMerge){ - //update history - context.history.addStatuses(statusesToMerge); - mergedStatuses = context.panel.mergeStatuses(statusesToMerge); if(mergedStatuses && mergedStatuses.length > 0){ diff --git a/src/core/js/app/history.js b/src/core/js/app/history.js index 2dc5971..b9b7b31 100644 --- a/src/core/js/app/history.js +++ b/src/core/js/app/history.js @@ -19,24 +19,40 @@ return lastStatus; }; - + /** - * add status to the history + * get last list of statuses from the history * @param {Object} context - * @param {jQuery.fn.jplist.StatusDTO} status + * @return {Array.} list */ - var addStatus = function(context, status){ - - //add status to the end - context.statusesQueue.push(status); + var getLastList = function(context){ - if(context.statusesQueue.length > context.options.historyLength){ - - //remove a status from the beginning of the queue - context.statusesQueue.shift(); - } + var lastList = null; + + if(context.listStatusesQueue.length > 0){ + lastList = context.listStatusesQueue[context.listStatusesQueue.length - 1]; + } + + return lastList; }; + /** + * add status to the history + * @param {Object} context + * @param {jQuery.fn.jplist.StatusDTO} status + */ + var addStatus = function(context, status){ + + //add status to the end + context.statusesQueue.push(status); + + if(context.statusesQueue.length > context.options.historyLength){ + + //remove a status from the beginning of the queue + context.statusesQueue.shift(); + } + }; + /** * add statuses to the history * @param {Object} context @@ -48,45 +64,9 @@ addStatus(context, statuses[i]); } }; - - /** - * remove the last status from the history and return it - * @param {Object} context - * @return {jQuery.fn.jplist.StatusDTO} status - */ - var popStatus = function(context){ - - var status = null; - - if(context.statusesQueue.length > 0){ - - //remove a status from the end of the queue and return it - status = context.statusesQueue.pop(); - } - return status; - }; - - //List Status - - /** - * get last list of statuses from the history - * @param {Object} context - * @return {Array.} list - */ - var getLastList = function(context){ - - var lastList = null; - - if(context.listStatusesQueue.length > 0){ - lastList = context.listStatusesQueue[context.listStatusesQueue.length - 1]; - } - - return lastList; - }; - - /** - * add list statuses to the history + /** + * add list of statuses to the history * @param {Object} context * @param {Array.} list */ @@ -135,14 +115,6 @@ this.$root = $root; this.statusesQueue = []; this.listStatusesQueue = []; - }; - - /** - * add status to the history - * @param {jQuery.fn.jplist.StatusDTO} status - */ - jQuery.fn.jplist.History.prototype.addStatus = function(status){ - addStatus(this, status); }; /** @@ -161,14 +133,6 @@ return getLastStatus(this); }; - /** - * remove last status from the history - * @return {jQuery.fn.jplist.StatusDTO} status - */ - jQuery.fn.jplist.History.prototype.popStatus = function(){ - return popStatus(this); - }; - /** * get last list of statuses from the history * @return {Array.} list diff --git a/src/core/js/config.json b/src/core/js/config.json index 36a0d7d..e8a1a67 100644 --- a/src/core/js/config.json +++ b/src/core/js/config.json @@ -45,5 +45,5 @@ "externs": [ "build/closure/google-closure-compiler/externs/jquery-1.7.externs.js" ], - "version": 279 + "version": 281 } \ No newline at end of file diff --git a/src/core/js/ui/panel/panel-controller.js b/src/core/js/ui/panel/panel-controller.js index e319a85..b26caad 100644 --- a/src/core/js/ui/panel/panel-controller.js +++ b/src/core/js/ui/panel/panel-controller.js @@ -141,6 +141,9 @@ var NOT_RESTORED_FROM_COOKIES = false; + //update history + context.history.addStatuses(statusesArray); + //set statuses context.controls.setStatuses(statusesArray, NOT_RESTORED_FROM_COOKIES);