All Downloads are FREE. Search and download functionalities are using the official Maven repository.

static.org.tinygroup.jqgrid.plugins.ui.multiselect.tiny.min.js Maven / Gradle / Ivy

The newest version!
(function(a){a.widget("ui.multiselect",{options:{sortable:true,searchable:true,doubleClickable:true,animated:"fast",show:"slideDown",hide:"slideUp",dividerLocation:0.6,availableFirst:false,nodeComparator:function(c,b){var e=c.text(),d=b.text();return e==d?0:(e
').insertAfter(this.element);this.count=0;this.selectedContainer=a('
').appendTo(this.container);this.availableContainer=a('
')[this.options.availableFirst?"prependTo":"appendTo"](this.container);this.selectedActions=a('
0 '+a.ui.multiselect.locale.itemsCount+''+a.ui.multiselect.locale.removeAll+"
").appendTo(this.selectedContainer);this.availableActions=a('").appendTo(this.availableContainer);this.selectedList=a('
').bind("selectstart",function(){return false}).appendTo(this.selectedContainer);this.availableList=a('
').bind("selectstart",function(){return false}).appendTo(this.availableContainer);var b=this;this.container.width(this.element.width()+1);this.selectedContainer.width(Math.floor(this.element.width()*this.options.dividerLocation));this.availableContainer.width(Math.floor(this.element.width()*(1-this.options.dividerLocation)));this.selectedList.height(Math.max(this.element.height()-this.selectedActions.height(),1));this.availableList.height(Math.max(this.element.height()-this.availableActions.height(),1));if(!this.options.animated){this.options.show="show";this.options.hide="hide"}this.useProp=!!a.fn.prop;this._populateLists(this.element.find("option"));if(this.options.sortable){this.selectedList.sortable({placeholder:"ui-state-highlight",axis:"y",update:function(c,d){b.selectedList.find("li").each(function(){if(a(this).data("optionLink")){a(this).data("optionLink").remove().appendTo(b.element)}})},receive:function(c,d){d.item.data("optionLink")[this.useProp?"prop":"attr"]("selected",true);b.count+=1;b._updateCount();b.selectedList.children(".ui-draggable").each(function(){a(this).removeClass("ui-draggable");a(this).data("optionLink",d.item.data("optionLink"));a(this).data("idx",d.item.data("idx"));b._applyItemState(a(this),true)});setTimeout(function(){d.item.remove()},1)}})}if(this.options.searchable){this._registerSearchEvents(this.availableContainer.find("input.search"))}else{a(".search").hide()}this.container.find(".remove-all").click(function(){b._populateLists(b.element.find("option").removeAttr("selected"));return false});this.container.find(".add-all").click(function(){var c=b.element.find("option").not(":selected");if(b.availableList.children("li:hidden").length>1){b.availableList.children("li").each(function(d){if(a(this).is(":visible")){a(c[d-1])[b.useProp?"prop":"attr"]("selected",true)}})}else{c[b.useProp?"prop":"attr"]("selected",true)}b._populateLists(b.element.find("option"));return false})},destroy:function(){this.element.show();this.container.remove();a.Widget.prototype.destroy.apply(this,arguments)},_populateLists:function(c){this.selectedList.children(".ui-element").remove();this.availableList.children(".ui-element").remove();this.count=0;var d=this;var b=a(c.map(function(e){var f=d._getOptionNode(this).appendTo(this.selected?d.selectedList:d.availableList).show();if(this.selected){d.count+=1}d._applyItemState(f,this.selected);f.data("idx",e);return f[0]}));this._updateCount();d._filter.apply(this.availableContainer.find("input.search"),[d.availableList])},_updateCount:function(){this.element.trigger("change");this.selectedContainer.find("span.count").text(this.count+" "+a.ui.multiselect.locale.itemsCount)},_getOptionNode:function(b){b=a(b);var c=a('
  • '+b.text()+'
  • ').hide();c.data("optionLink",b);return c},_cloneWithData:function(c){var b=c.clone(false,false);b.data("optionLink",c.data("optionLink"));b.data("idx",c.data("idx"));return b},_setSelected:function(k,e){k.data("optionLink")[this.useProp?"prop":"attr"]("selected",e);if(e){var d=this._cloneWithData(k);k[this.options.hide](this.options.animated,function(){a(this).remove()});d.appendTo(this.selectedList).hide()[this.options.show](this.options.animated);this._applyItemState(d,true);return d}else{var g=this.availableList.find("li"),b=this.options.nodeComparator;var h=null,f=k.data("idx"),j=b(k,a(g[f]));if(j){while(f>=0&&f0?f++:f--;if(j!=b(k,a(g[f]))){h=g[j>0?f:f+1];break}}}else{h=g[f]}var c=this._cloneWithData(k);h?c.insertBefore(a(h)):c.appendTo(this.availableList);k[this.options.hide](this.options.animated,function(){a(this).remove()});c.hide()[this.options.show](this.options.animated);this._applyItemState(c,false);return c}},_applyItemState:function(c,b){if(b){if(this.options.sortable){c.children("span").addClass("ui-icon-arrowthick-2-n-s").removeClass("ui-helper-hidden").addClass("ui-icon")}else{c.children("span").removeClass("ui-icon-arrowthick-2-n-s").addClass("ui-helper-hidden").removeClass("ui-icon")}c.find("a.action span").addClass("ui-icon-minus").removeClass("ui-icon-plus");this._registerRemoveEvents(c.find("a.action"))}else{c.children("span").removeClass("ui-icon-arrowthick-2-n-s").addClass("ui-helper-hidden").removeClass("ui-icon");c.find("a.action span").addClass("ui-icon-plus").removeClass("ui-icon-minus");this._registerAddEvents(c.find("a.action"))}this._registerDoubleClickEvents(c);this._registerHoverEvents(c)},_filter:function(f){var c=a(this);var e=f.children("li"),b=e.map(function(){return a(this).text().toLowerCase()});var d=a.trim(c.val().toLowerCase()),g=[];if(!d){e.show()}else{e.hide();b.each(function(h){if(this.indexOf(d)>-1){g.push(h)}});a.each(g,function(){a(e[this]).show()})}},_registerDoubleClickEvents:function(b){if(!this.options.doubleClickable){return}b.dblclick(function(c){if(a(c.target).closest(".action").length===0){b.find("a.action").click()}})},_registerHoverEvents:function(b){b.removeClass("ui-state-hover");b.mouseover(function(){a(this).addClass("ui-state-hover")});b.mouseout(function(){a(this).removeClass("ui-state-hover")})},_registerAddEvents:function(c){var b=this;c.click(function(){var d=b._setSelected(a(this).parent(),true);b.count+=1;b._updateCount();return false});if(this.options.sortable){c.each(function(){a(this).parent().draggable({connectToSortable:b.selectedList,helper:function(){var d=b._cloneWithData(a(this)).width(a(this).width()-50);d.width(a(this).width());return d},appendTo:b.container,containment:b.container,revert:"invalid"})})}},_registerRemoveEvents:function(c){var b=this;c.click(function(){b._setSelected(a(this).parent(),false);b.count-=1;b._updateCount();return false})},_registerSearchEvents:function(b){var c=this;b.focus(function(){a(this).addClass("ui-state-active")}).blur(function(){a(this).removeClass("ui-state-active")}).keypress(function(d){if(d.keyCode==13){return false}}).keyup(function(){c._filter.apply(this,[c.availableList])})}});a.extend(a.ui.multiselect,{locale:{addAll:"Add all",removeAll:"Remove all",itemsCount:"items selected"}})})(jQuery);




    © 2015 - 2025 Weber Informatics LLC | Privacy Policy