jquery-tablesorter 1.0.5 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/README.markdown +48 -31
  2. data/Rakefile +56 -1
  3. data/lib/jquery-tablesorter/version.rb +1 -1
  4. data/vendor/assets/images/jquery-tablesorter/addons/{icons → pager/icons}/first.png +0 -0
  5. data/vendor/assets/images/jquery-tablesorter/addons/{icons → pager/icons}/last.png +0 -0
  6. data/vendor/assets/images/jquery-tablesorter/addons/pager/icons/loading.gif +0 -0
  7. data/vendor/assets/images/jquery-tablesorter/addons/{icons → pager/icons}/next.png +0 -0
  8. data/vendor/assets/images/jquery-tablesorter/addons/{icons → pager/icons}/prev.png +0 -0
  9. data/vendor/assets/images/jquery-tablesorter/black-asc.gif +0 -0
  10. data/vendor/assets/images/jquery-tablesorter/black-desc.gif +0 -0
  11. data/vendor/assets/images/jquery-tablesorter/black-unsorted.gif +0 -0
  12. data/vendor/assets/images/jquery-tablesorter/dropbox-asc1.png +0 -0
  13. data/vendor/assets/images/jquery-tablesorter/dropbox-asc2.png +0 -0
  14. data/vendor/assets/images/jquery-tablesorter/dropbox-desc1.png +0 -0
  15. data/vendor/assets/images/jquery-tablesorter/dropbox-desc2.png +0 -0
  16. data/vendor/assets/images/jquery-tablesorter/green-asc.png +0 -0
  17. data/vendor/assets/images/jquery-tablesorter/green-desc.png +0 -0
  18. data/vendor/assets/images/jquery-tablesorter/green-header.png +0 -0
  19. data/vendor/assets/images/jquery-tablesorter/green-unsorted.png +0 -0
  20. data/vendor/assets/images/jquery-tablesorter/ice-asc.gif +0 -0
  21. data/vendor/assets/images/jquery-tablesorter/ice-desc.gif +0 -0
  22. data/vendor/assets/images/jquery-tablesorter/ice-unsorted.gif +0 -0
  23. data/vendor/assets/images/jquery-tablesorter/white-asc.gif +0 -0
  24. data/vendor/assets/images/jquery-tablesorter/white-desc.gif +0 -0
  25. data/vendor/assets/images/jquery-tablesorter/white-unsorted.gif +0 -0
  26. data/vendor/assets/javascripts/jquery-tablesorter.js +3 -1
  27. data/vendor/assets/javascripts/jquery-tablesorter/addons/{jquery.tablesorter.pager.js → pager/jquery.tablesorter.pager.js} +507 -419
  28. data/vendor/assets/javascripts/jquery-tablesorter/jquery.metadata.js +53 -85
  29. data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.js +465 -314
  30. data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.min.js +6 -0
  31. data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets.js +618 -267
  32. data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets.min.js +12 -0
  33. data/vendor/assets/stylesheets/jquery-tablesorter/addons/{jquery.tablesorter.pager.css → pager/jquery.tablesorter.pager.css} +15 -14
  34. data/vendor/assets/stylesheets/jquery-tablesorter/theme.black-ice.css +161 -0
  35. data/vendor/assets/stylesheets/jquery-tablesorter/theme.blue.css +196 -0
  36. data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap.css +118 -0
  37. data/vendor/assets/stylesheets/jquery-tablesorter/theme.dark.css +162 -0
  38. data/vendor/assets/stylesheets/jquery-tablesorter/theme.default.css +164 -0
  39. data/vendor/assets/stylesheets/jquery-tablesorter/theme.dropbox.css +175 -0
  40. data/vendor/assets/stylesheets/jquery-tablesorter/theme.green.css +174 -0
  41. data/vendor/assets/stylesheets/jquery-tablesorter/theme.grey.css +217 -0
  42. data/vendor/assets/stylesheets/jquery-tablesorter/theme.ice.css +164 -0
  43. data/vendor/assets/stylesheets/jquery-tablesorter/theme.jui.css +128 -0
  44. metadata +44 -14
  45. data/lib/tasks/jquery-tablesorter_tasks.rake +0 -39
  46. data/vendor/assets/images/jquery-tablesorter/addons/icons/loading.gif +0 -0
  47. data/vendor/assets/stylesheets/jquery-tablesorter/blue.css +0 -3
  48. data/vendor/assets/stylesheets/jquery-tablesorter/blue/style.css +0 -128
  49. data/vendor/assets/stylesheets/jquery-tablesorter/ui.css +0 -4
  50. data/vendor/assets/stylesheets/jquery-tablesorter/ui/style.css +0 -67
@@ -0,0 +1,12 @@
1
+ /*! tableSorter 2.4+ widgets - updated 10/17/2012 */
2
+ ;(function(a){
3
+ a.tablesorter=a.tablesorter||{};
4
+ a.tablesorter.themes={bootstrap:{table:"table table-bordered table-striped",header:"bootstrap-header",icons:"",sortNone:"bootstrap-icon-unsorted",sortAsc:"icon-chevron-up",sortDesc:"icon-chevron-down",active:"",hover:"",filterRow:"",even:"",odd:""},jui:{table:"ui-widget ui-widget-content ui-corner-all",header:"ui-widget-header ui-corner-all ui-state-default",icons:"ui-icon",sortNone:"ui-icon-carat-2-n-s",sortAsc:"ui-icon-carat-1-n",sortDesc:"ui-icon-carat-1-s", active:"ui-state-active",hover:"ui-state-hover",filterRow:"",even:"ui-widget-content",odd:"ui-state-default"}};
5
+ a.tablesorter.storage=function(e,b,c){var d,i=!1;d={};var f=e.id||a(".tablesorter").index(a(e)),g=window.location.pathname;try{i=!!localStorage.getItem}catch(m){}a.parseJSON&&(i?d=a.parseJSON(localStorage[b])||{}:(d=document.cookie.split(/[;\s|=]/),e=a.inArray(b,d)+1,d=0!==e?a.parseJSON(d[e])||{}:{}));if(c&&JSON&&JSON.hasOwnProperty("stringify")){if(!d[g]||!d[g][f])d[g]||(d[g]={});d[g][f]= c;i?localStorage[b]=JSON.stringify(d):(e=new Date,e.setTime(e.getTime()+31536E6),document.cookie=b+"="+JSON.stringify(d).replace(/\"/g,'"')+"; expires="+e.toGMTString()+"; path=/")}else return d&&d.hasOwnProperty(g)&&d[g].hasOwnProperty(f)?d[g][f]:{}};
6
+ a.tablesorter.addWidget({id:"uitheme",format:function(e){var b,c,d,i,f=a(e),g=e.config,m=g.widgetOptions,n="object"===typeof m.uitheme?"jui":m.uitheme||"jui",h="object"===typeof m.uitheme&&!Object.prototype.toString.call(m.uitheme).test("Array")?m.uitheme: a.tablesorter.themes[a.tablesorter.themes.hasOwnProperty(n)?n:"jui"],l=a(g.headerList),p="tr."+(m.stickyHeaders||"tablesorter-stickyHeader"),q=h.sortNone+" "+h.sortDesc+" "+h.sortAsc;g.debug&&(b=new Date);if(!f.hasClass("tablesorter-"+n)||g.theme===n||!e.hasInitialized)""!==h.even&&(m.zebra[0]+=" "+h.even),""!==h.odd&&(m.zebra[1]+=" "+h.odd),f.removeClass(""===g.theme?"":"tablesorter-"+g.theme).addClass("tablesorter-"+n+" "+h.table),g.theme="",l.addClass(h.header).filter(":not(.sorter-false)").hover(function(){a(this).addClass(h.hover)}, function(){a(this).removeClass(h.hover)}),l.find(".tablesorter-wrapper").length||l.wrapInner('<div class="tablesorter-wrapper" style="position:relative;height:100%;width:100%"></div>'),g.cssIcon&&l.find("."+g.cssIcon).addClass(h.icons),f.hasClass("hasFilters")&&l.find(".tablesorter-filter-row").addClass(h.filterRow);a.each(l,function(b){d=a(this);i=g.cssIcon?d.find("."+g.cssIcon):d;this.sortDisabled?(d.removeClass(q),i.removeClass(q+" tablesorter-icon "+h.icons)):(f.hasClass("hasStickyHeaders")&& f.find(p).find("th").eq(b).add(d),c=d.hasClass(g.cssAsc)?h.sortDesc:d.hasClass(g.cssDesc)?h.sortAsc:d.hasClass(g.cssHeader)?h.sortNone:"",d[c===h.sortNone?"removeClass":"addClass"](h.active),i.removeClass(q).addClass(c))});g.debug&&a.tablesorter.benchmark("Applying "+n+" theme",b)},remove:function(e,b,c){var e=a(e),d="object"===typeof c.uitheme?"jui":c.uitheme||"jui",c="object"===typeof c.uitheme?c.uitheme:a.tablesorter.themes[a.tablesorter.themes.hasOwnProperty(d)?d:"jui"],i=e.children("thead").children(), f=c.sortNone+" "+c.sortDesc+" "+c.sortAsc;e.removeClass("tablesorter-"+d+" "+c.table).find(b.cssHeader).removeClass(c.header);i.unbind("mouseenter mouseleave").removeClass(c.hover+" "+f+" "+c.active).find(".tablesorter-filter-row").removeClass(c.filterRow);i.find(".tablesorter-icon").removeClass(c.icons)}});
7
+ a.tablesorter.addWidget({id:"columns",format:function(e){var b,c,d,i,f,g,m,n,h,l=a(e),p=e.config,q=p.widgetOptions,s=l.children("tbody:not(."+p.cssInfoBlock+")"),u=p.sortList,v=u.length,k=["primary", "secondary","tertiary"],k=p.widgetColumns&&p.widgetColumns.hasOwnProperty("css")?p.widgetColumns.css||k:q&&q.hasOwnProperty("columns")?q.columns||k:k;g=k.length-1;m=k.join(" ");p.debug&&(f=new Date);for(h=0;h<s.length;h++)b=a.tablesorter.processTbody(e,a(s[h]),!0),c=b.children("tr"),c.each(function(){i=a(this);if("none"!==this.style.display&&(d=i.children().removeClass(m),u&&u[0]&&(d.eq(u[0][0]).addClass(k[0]),1<v)))for(n=1;n<v;n++)d.eq(u[n][0]).addClass(k[n]||k[g])}),a.tablesorter.processTbody(e, b,!1);c=!1!==q.columns_thead?"thead tr":"";!1!==q.columns_tfoot&&(c+=(""===c?"":",")+"tfoot tr");if(c.length&&(i=l.find(c).children().removeClass(m),u&&u[0]&&(i.filter('[data-column="'+u[0][0]+'"]').addClass(k[0]),1<v)))for(n=1;n<v;n++)i.filter('[data-column="'+u[n][0]+'"]').addClass(k[n]||k[g]);p.debug&&a.tablesorter.benchmark("Applying Columns widget",f)},remove:function(e,b){var c,d,i=a(e).children("tbody:not(."+b.cssInfoBlock+")"),f=(b.widgetOptions.columns||["primary","secondary","tertiary"]).join(" "); for(c=0;c<i.length;c++)d=a.tablesorter.processTbody(e,a(i[c]),!0),d.children("tr").each(function(){a(this).children().removeClass(f)}),a.tablesorter.processTbody(e,d,!1)}});
8
+ a.tablesorter.addWidget({id:"filter",format:function(e){if(e.config.parsers&&!a(e).hasClass("hasFilters")){var b,c,d,i,f,g,m,n,h,l,p,q,s,u,v,k,x,F="",z=a.tablesorter,r=e.config,A=a(r.headerList),j=r.widgetOptions,y=j.filter_cssFilter||"tablesorter-filter",t=a(e).addClass("hasFilters"),D=t.children("tbody:not(."+r.cssInfoBlock+ ")"),E=r.parsers.length,B=[/^\/((?:\\\/|[^\/])+)\/([mig]{0,3})?$/,RegExp(r.cssChildRow),/undefined|number/,/(^[\"|\'|=])|([\"|\'|=]$)/,/[\"\'=]/g,/[^\w,. \-()]/g,/[<>=]/g],L=A.map(function(b){return z.getData?"parsed"===z.getData(A.filter('[data-column="'+b+'"]:last'),r.headers[b],"filter"):a(this).hasClass("filter-parsed")}).get(),G,H,C=function(b){var d=a.isArray(b),e=t.find("thead").eq(0).children("tr").find("select."+y+", input."+y),c=d?b:e.map(function(){return a(this).val()||""}).get(),f=(c|| []).join("");d&&e.each(function(c,d){a(d).val(b[c]||"")});!0===j.filter_hideFilters&&t.find(".tablesorter-filter-row").trigger(""===f?"mouseleave":"mouseenter");if(!(F===f&&!1!==b))if(t.trigger("filterStart",[c]),r.showProcessing)setTimeout(function(){I(b,c,f);return!1},30);else return I(b,c,f),!1},I=function(g,i,h){var l,p,s,q,x,w,y;r.debug&&(y=new Date);for(d=0;d<D.length;d++){g=a.tablesorter.processTbody(e,a(D[d]),!0);l=g.children("tr");x=l.length;if(""===h)l.show().removeClass("filtered");else for(c= 0;c<x;c++)if(!B[1].test(l[c].className)){q=!0;s=l.eq(c).nextUntil("tr:not(."+r.cssChildRow+")");k=s.length&&(j&&j.hasOwnProperty("filter_childRows")&&"undefined"!==typeof j.filter_childRows?j.filter_childRows:1)?s.text():"";k=j.filter_ignoreCase?k.toLocaleLowerCase():k;p=l.eq(c).children("td");for(b=0;b<E;b++)if(i[b]){m=j.filter_useParsedData||L[b]?r.cache[d].normalized[c][b]:a.trim(p.eq(b).text());n=!B[2].test(typeof m)&&j.filter_ignoreCase?m.toLocaleLowerCase():m;w=q;f=j.filter_ignoreCase?i[b].toLocaleLowerCase(): i[b];if(j.filter_functions&&j.filter_functions[b])!0===j.filter_functions[b]?w=A.filter('[data-column="'+b+'"]:last').hasClass("filter-match")?0<=n.search(f):i[b]===m:"function"===typeof j.filter_functions[b]?w=j.filter_functions[b](m,r.cache[d].normalized[c][b],i[b],b):"function"===typeof j.filter_functions[b][i[b]]&&(w=j.filter_functions[b][i[b]](m,r.cache[d].normalized[c][b],i[b],b));else if(B[0].test(f)){u=B[0].exec(f);try{w=RegExp(u[1],u[2]).test(n)}catch(C){w=!1}}else B[3].test(f)&&n===f.replace(B[4], "")?w=!0:/^\!/.test(f)?(f=f.replace("!",""),v=n.search(a.trim(f)),w=""===f?!0:!(j.filter_startsWith?0===v:0<=v)):/^[<>]=?/.test(f)?(u=isNaN(n)?a.tablesorter.formatFloat(n.replace(B[5],""),e):a.tablesorter.formatFloat(n,e),v=a.tablesorter.formatFloat(f.replace(B[5],"").replace(B[6],""),e),/>/.test(f)&&(w=/>=/.test(f)?u>=v:u>v),/</.test(f)&&(w=/<=/.test(f)?u<=v:u<v)):/[\?|\*]/.test(f)?w=RegExp(f.replace(/\?/g,"\\S{1}").replace(/\*/g,"\\S*")).test(n):(m=(n+k).indexOf(f),w=!j.filter_startsWith&&0<=m|| j.filter_startsWith&&0===m);q=w?q?!0:!1:!1}l[c].style.display=q?"":"none";l.eq(c)[q?"removeClass":"addClass"]("filtered");if(s.length)s[q?"show":"hide"]()}a.tablesorter.processTbody(e,g,!1)}F=h;r.debug&&z.benchmark("Completed filter widget search",y);t.trigger("applyWidgets");t.trigger("filterEnd")},J=function(b,f){var g,h=[],b=parseInt(b,10);g='<option value="">'+(A.filter('[data-column="'+b+'"]:last').attr("data-placeholder")||"")+"</option>";for(d=0;d<D.length;d++){i=r.cache[d].row.length;for(c= 0;c<i;c++)j.filter_useParsedData?h.push(""+r.cache[d].normalized[c][b]):(k=r.cache[d].row[c][0].cells[b])&&h.push(r.supportsTextContent?k.textContent:a(k).text())}h=a.grep(h,function(b,c){return a.inArray(b,h)===c});h=z.sortText?h.sort(function(a,c){return z.sortText(e,a,c,b)}):h.sort(!0);for(d=0;d<h.length;d++)g+='<option value="'+h[d]+'">'+h[d]+"</option>";t.find("thead").find("select."+y+'[data-column="'+b+'"]')[f?"html":"append"](g)},K=function(a){for(b=0;b<E;b++)k=A.filter('[data-column="'+b+ '"]:last'),k.hasClass("filter-select")&&(!k.hasClass("filter-false")&&!(j.filter_functions&&!0===j.filter_functions[b]))&&(j.filter_functions||(j.filter_functions={}),j.filter_functions[b]=!0,J(b,a))};r.debug&&(G=new Date);j.filter_ignoreCase=!1!==j.filter_ignoreCase;j.filter_useParsedData=!0===j.filter_useParsedData;if(!1!==j.filter_columnFilters&&A.filter(".filter-false").length!==A.length){k='<tr class="tablesorter-filter-row">';for(b=0;b<E;b++)s=!1,s=A.filter('[data-column="'+b+'"]:last'),g=j.filter_functions&& j.filter_functions[b]&&"function"!==typeof j.filter_functions[b]||s.hasClass("filter-select"),k+="<td>",k=g?k+('<select data-column="'+b+'" class="'+y):k+('<input type="search" placeholder="'+(s.attr("data-placeholder")||"")+'" data-column="'+b+'" class="'+y),s=z.getData?"false"===z.getData(s[0],r.headers[b],"filter"):r.headers[b]&&r.headers[b].hasOwnProperty("filter")&&!1===r.headers[b].filter||s.hasClass("filter-false"),k+=s?' disabled" disabled':'"',k+=(g?"></select>":">")+"</td>";t.find("thead").eq(0).append(k+= "</tr>")}t.bind(["addRows","updateCell","update","appendCache","search"].join(".tsfilter "),function(a,b){"search"!==a.type&&K(!0);C("search"===a.type?b:"");return!1}).find("input."+y).bind("keyup search",function(a,b){if(!(32>a.which&&8!==a.which||37<=a.which&&40>=a.which)){if("undefined"!==typeof b)return C(b),!1;clearTimeout(H);H=setTimeout(function(){C()},j.filter_searchDelay||300)}});j.filter_reset&&a(j.filter_reset).length&&a(j.filter_reset).bind("click",function(){t.find("."+y).val("");C(); return!1});if(j.filter_functions)for(x in j.filter_functions)if(j.filter_functions.hasOwnProperty(x)&&"string"===typeof x)if(k=A.filter('[data-column="'+x+'"]:last'),g="",!0===j.filter_functions[x]&&!k.hasClass("filter-false"))J(x);else if("string"===typeof x&&!k.hasClass("filter-false")){for(l in j.filter_functions[x])"string"===typeof l&&(g+=""===g?'<option value="">'+(k.attr("data-placeholder")||"")+"</option>":"",g+='<option value="'+l+'">'+l+"</option>");t.find("thead").find("select."+y+'[data-column="'+ x+'"]').append(g)}K();t.find("select."+y).bind("change search",function(){C()});!0===j.filter_hideFilters&&t.find(".tablesorter-filter-row").addClass("hideme").bind("mouseenter mouseleave",function(b){var c;p=a(this);clearTimeout(h);h=setTimeout(function(){/enter|over/.test(b.type)?p.removeClass("hideme"):a(document.activeElement).closest("tr")[0]!==p[0]&&(c=t.find("."+(j.filter_cssFilter||"tablesorter-filter")).map(function(){return a(this).val()||""}).get().join(""),""===c&&p.addClass("hideme"))}, 200)}).find("input, select").bind("focus blur",function(b){q=a(this).closest("tr");clearTimeout(h);h=setTimeout(function(){if(""===t.find("."+(j.filter_cssFilter||"tablesorter-filter")).map(function(){return a(this).val()||""}).get().join(""))q["focus"===b.type?"removeClass":"addClass"]("hideme")},200)});r.showProcessing&&t.bind("filterStart filterEnd",function(b,c){var d=c?t.find("."+r.cssHeader).filter("[data-column]").filter(function(){return""!==c[a(this).data("column")]}):"";z.isProcessing(t[0], "filterStart"===b.type,c?d:"")});r.debug&&z.benchmark("Applying Filter widget",G);t.trigger("filterInit")}},remove:function(e,b,c){var d,i;d=a(e);b=d.children("tbody:not(."+b.cssInfoBlock+")");d.removeClass("hasFilters").unbind(["addRows","updateCell","update","appendCache","search"].join(".tsfilter")).find(".tablesorter-filter-row").remove();for(d=0;d<b.length;d++)i=a.tablesorter.processTbody(e,a(b[d]),!0),i.children().removeClass("filtered").show(),a.tablesorter.processTbody(e,i,!1);c.filterreset&& a(c.filter_reset).unbind("click")}});
9
+ a.tablesorter.addWidget({id:"stickyHeaders",format:function(e){if(!a(e).hasClass("hasStickyHeaders")){var b=a(e).addClass("hasStickyHeaders"),c=e.config,d=c.widgetOptions,i=a(window),f=a(e).children("thead:first"),g=f.children("tr:not(.sticky-false)").children(),e=d.stickyHeaders||"tablesorter-stickyHeader",m=g.eq(0),n=b.find("tfoot"),h=f.clone().addClass(e).css({width:f.outerWidth(!0),position:"fixed",margin:0,top:0,visibility:"hidden",zIndex:1}),l=h.find("tr").children(), p="",q=0,s=function(){var c=navigator.userAgent;q=0;"collapse"!==b.css("border-collapse")&&!/webkit/i.test(c)&&(q=/msie/i.test(c)?parseInt(f.css("padding-left"),10):parseInt(b.css("border-spacing"),10));h.css({left:f.offset().left-i.scrollLeft()-q,width:f.outerWidth()});l.each(function(b){b=g.eq(b);a(this).css({width:b.width(),height:b.height()})}).find(".tablesorter-header-inner").each(function(b){b=g.eq(b).find(".tablesorter-header-inner").width();a(this).width(b)})};h.find("tr.sticky-false").remove(); l.find(".tablesorter-resizer").remove();b.bind("sortEnd.tsSticky",function(){g.each(function(b){b=l.eq(b);b.attr("class",a(this).attr("class"));c.cssIcon&&b.find("."+c.cssIcon).attr("class",a(this).find("."+c.cssIcon).attr("class"))})}).bind("pagerComplete.tsSticky",function(){s()});g.find("*").andSelf().filter(c.selectorSort).each(function(b){var c=a(this);l.eq(b).bind("mouseup",function(b){c.trigger(b,!0)}).bind("mousedown",function(){this.onselectstart=function(){return!1};return!1})});f.after(h); i.bind("scroll.tsSticky",function(){var a=m.offset(),c=i.scrollTop(),d=b.height()-(m.height()+(n.height()||0)),a=c>a.top&&c<a.top+d?"visible":"hidden";h.css({left:f.offset().left-i.scrollLeft()-q,visibility:a});a!==p&&(s(),p=a)}).bind("resize.tsSticky",function(){s()})}},remove:function(e,b,c){e=a(e);c=c.stickyHeaders||"tablesorter-stickyHeader";e.removeClass("hasStickyHeaders").unbind("sortEnd.tsSticky pagerComplete.tsSticky").find("."+c).remove();a(window).unbind("scroll.tsSticky resize.tsSticky")}});
10
+ a.tablesorter.addWidget({id:"resizable",format:function(e){if(!a(e).hasClass("hasResizable")){a(e).addClass("hasResizable");var b,c,d,i,f,g=a(e),m=e.config,n=m.widgetOptions,h=0,l=null,p=null,q=function(){h=0;l=p=null;a(window).trigger("resize")};if(d=a.tablesorter.storage&&!1!==n.resizable?a.tablesorter.storage(e,"tablesorter-resizable"):{})for(c in d)!isNaN(c)&&c<m.headerList.length&&a(m.headerList[c]).width(d[c]);g.children("thead:first").find("tr").each(function(){i=a(this).children();a(this).find(".tablesorter-wrapper").length|| i.wrapInner('<div class="tablesorter-wrapper" style="position:relative;height:100%;width:100%"></div>');i=i.slice(0,-1);f=f?f.add(i):i});f.each(function(){b=a(this);c=parseInt(b.css("padding-right"),10)+8;b.find(".tablesorter-wrapper").append('<div class="tablesorter-resizer" style="cursor:w-resize;position:absolute;height:100%;width:16px;right:-'+c+'px;top:0;z-index:1;"></div>')}).bind("mousemove.tsresize",function(a){if(0!==h&&l){var b=a.pageX-h;l.width(l.width()+b);p.width(p.width()-b);h=a.pageX}}).bind("mouseup.tsresize", function(){a.tablesorter.storage&&l&&(d[l.index()]=l.width(),d[p.index()]=p.width(),!1!==n.resizable&&a.tablesorter.storage(e,"tablesorter-resizable",d));q()}).find(".tablesorter-resizer").bind("mousedown",function(b){l=a(b.target).parents("th:last");p=l.next();h=b.pageX});g.find("thead:first").bind("mouseup.tsresize mouseleave.tsresize",function(){q()}).bind("contextmenu.tsresize",function(){a.tablesorter.resizableReset(e);var b=a.isEmptyObject?a.isEmptyObject(d):d==={};d={};return b})}},remove:function(e){a(e).removeClass("hasResizable").find("thead").unbind("mouseup.tsresize mouseleave.tsresize contextmenu.tsresize").find("tr").children().unbind("mousemove.tsresize mouseup.tsresize").find(".tablesorter-wrapper").each(function(){a(this).find(".tablesorter-resizer").remove(); a(this).replaceWith(a(this).contents())});a.tablesorter.resizableReset(e)}});a.tablesorter.resizableReset=function(e){a(e.config.headerList).width("auto");a.tablesorter.storage(e,"tablesorter-resizable",{})};
11
+ a.tablesorter.addWidget({id:"saveSort",init:function(a,b){b.format(a,!0)},format:function(e,b){var c,d,i=e.config;c=!1!==i.widgetOptions.saveSort;var f={sortList:i.sortList};i.debug&&(d=new Date);a(e).hasClass("hasSaveSort")?c&&(e.hasInitialized&&a.tablesorter.storage)&&(a.tablesorter.storage(e, "tablesorter-savesort",f),i.debug&&a.tablesorter.benchmark("saveSort widget: Saving last sort: "+i.sortList,d)):(a(e).addClass("hasSaveSort"),f="",a.tablesorter.storage&&(f=(c=a.tablesorter.storage(e,"tablesorter-savesort"))&&c.hasOwnProperty("sortList")&&a.isArray(c.sortList)?c.sortList:"",i.debug&&a.tablesorter.benchmark('saveSort: Last sort loaded: "'+f+'"',d)),b&&f&&0<f.length?i.sortList=f:e.hasInitialized&&(f&&0<f.length)&&a(e).trigger("sorton",[f]))},remove:function(e){a.tablesorter.storage(e, "tablesorter-savesort","")}})
12
+ })(jQuery);
@@ -1,41 +1,42 @@
1
1
  /* pager wrapper, div */
2
- .pager {
2
+ .tablesorter-pager {
3
3
  padding: 5px;
4
4
  }
5
5
  /* pager wrapper, in thead/tfoot */
6
- td.pager {
6
+ td.tablesorter-pager {
7
7
  background-color: #e6eeee;
8
+ margin: 0; /* needed for bootstrap .pager gets a 18px bottom margin */
8
9
  }
9
10
  /* pager navigation arrows */
10
- .pager img {
11
+ .tablesorter-pager img {
11
12
  vertical-align: middle;
12
13
  margin-right: 2px;
13
14
  cursor: pointer;
14
15
  }
16
+
15
17
  /* pager output text */
16
- .pager .pagedisplay {
17
- font-size: 11px;
18
+ .tablesorter-pager .pagedisplay {
18
19
  padding: 0 5px 0 5px;
19
- width: 50px;
20
+ width: auto;
21
+ white-space: nowrap;
20
22
  text-align: center;
21
23
  }
22
24
 
23
- /*** loading ajax indeterminate progress indicator ***/
24
- #tablesorterPagerLoading {
25
- background: rgba(255,255,255,0.8) url(/assets/jquery-tablesorter/addons/icons/loading.gif) center center no-repeat;
26
- position: absolute;
27
- z-index: 1000;
25
+ /* pager element reset (needed for bootstrap) */
26
+ .tablesorter-pager select {
27
+ margin: 0;
28
+ padding: 0;
28
29
  }
29
30
 
30
31
  /*** css used when "updateArrows" option is true ***/
31
32
  /* the pager itself gets a disabled class when the number of rows is less than the size */
32
- .pager.disabled {
33
+ .tablesorter-pager.disabled {
33
34
  display: none;
34
35
  }
35
36
  /* hide or fade out pager arrows when the first or last row is visible */
36
- .pager img.disabled {
37
+ .tablesorter-pager .disabled {
37
38
  /* visibility: hidden */
38
39
  opacity: 0.5;
39
40
  filter: alpha(opacity=50);
40
41
  cursor: default;
41
- }
42
+ }
@@ -0,0 +1,161 @@
1
+ /*************
2
+ Black Ice Theme (by thezoggy)
3
+ *************/
4
+ /* overall */
5
+ .tablesorter-blackice {
6
+ width: 100%;
7
+ margin-right: auto;
8
+ margin-left: auto;
9
+ font: 11px/18px Arial, Sans-serif;
10
+ text-align: left;
11
+ background-color: #000;
12
+ border-collapse: collapse;
13
+ border-spacing: 0;
14
+ }
15
+
16
+ /* header */
17
+ .tablesorter-blackice th,
18
+ .tablesorter-blackice thead td {
19
+ padding: 4px;
20
+ font: bold 13px/20px Arial, Sans-serif;
21
+ color: #e5e5e5;
22
+ text-align: left;
23
+ text-shadow: 0 1px 0 rgba(0, 0, 0, 0.7);
24
+ background-color: #111;
25
+ border: 1px solid #232323;
26
+ }
27
+ .tablesorter-blackice .header,
28
+ .tablesorter-blackice .tablesorter-header {
29
+ padding: 4px 20px 4px 4px;
30
+ cursor: pointer;
31
+ background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAAP///////yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
32
+ background-position: center right;
33
+ background-repeat: no-repeat;
34
+ }
35
+ .tablesorter-blackice th.headerSortUp,
36
+ .tablesorter-blackice th.tablesorter-headerSortUp {
37
+ color: #fff;
38
+ background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
39
+ }
40
+ .tablesorter-blackice th.headerSortDown,
41
+ .tablesorter-blackice th.tablesorter-headerSortDown {
42
+ color: #fff;
43
+ background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
44
+ }
45
+
46
+ /* tfoot */
47
+ .tablesorter-blackice tfoot .tablesorter-headerSortUp,
48
+ .tablesorter-blackice tfoot .tablesorter-headerSortDown {
49
+ /* remove sort arrows from footer */
50
+ background-image: url();
51
+ }
52
+
53
+ /* tbody */
54
+ .tablesorter-blackice td {
55
+ padding: 4px;
56
+ color: #ccc;
57
+ vertical-align: top;
58
+ background-color: #333;
59
+ border: 1px solid #232323;
60
+ }
61
+
62
+ /* hovered row colors */
63
+ .tablesorter-blackice tbody > tr:hover > td,
64
+ .tablesorter-blackice tbody > tr.even:hover > td,
65
+ .tablesorter-blackice tbody > tr.odd:hover > td {
66
+ background: #000;
67
+ }
68
+
69
+ /* table processing indicator */
70
+ .tablesorter-blackice .tablesorter-processing {
71
+ background-position: center center !important;
72
+ background-repeat: no-repeat !important;
73
+ /* background-image: url(../addons/pager/icons/loading.gif) !important; */
74
+ background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
75
+ }
76
+
77
+ /* Zebra Widget - row alternating colors */
78
+ .tablesorter-blackice tr.odd td {
79
+ background-color: #333;
80
+ }
81
+ .tablesorter-blackice tr.even td {
82
+ background-color: #393939;
83
+ }
84
+
85
+ /* Column Widget - column sort colors */
86
+ .tablesorter-blackice td.primary,
87
+ .tablesorter-blackice tr.odd td.primary {
88
+ background-color: #2f3a40;
89
+ }
90
+ .tablesorter-blackice tr.even td.primary {
91
+ background-color: #3f4a50;
92
+ }
93
+ .tablesorter-blackice td.secondary,
94
+ .tablesorter-blackice tr.odd td.secondary {
95
+ background-color: #3f4a50;
96
+ }
97
+ .tablesorter-blackice tr.even td.secondary {
98
+ background-color: #4f5a60;
99
+ }
100
+ .tablesorter-blackice td.tertiary,
101
+ .tablesorter-blackice tr.odd td.tertiary {
102
+ background-color: #4f5a60;
103
+ }
104
+ .tablesorter-blackice tr.even td.tertiary {
105
+ background-color: #5a646b;
106
+ }
107
+
108
+ /* filter widget */
109
+ .tablesorter-blackice .tablesorter-filter-row td {
110
+ background: #222;
111
+ line-height: normal;
112
+ text-align: center; /* center the input */
113
+ -webkit-transition: line-height 0.1s ease;
114
+ -moz-transition: line-height 0.1s ease;
115
+ -o-transition: line-height 0.1s ease;
116
+ transition: line-height 0.1s ease;
117
+ }
118
+ /* optional disabled input styling */
119
+ .tablesorter-blackice .tablesorter-filter-row .disabled {
120
+ opacity: 0.5;
121
+ filter: alpha(opacity=50);
122
+ cursor: not-allowed;
123
+ }
124
+ /* hidden filter row */
125
+ .tablesorter-blackice .tablesorter-filter-row.hideme td {
126
+ /*** *********************************************** ***/
127
+ /*** change this padding to modify the thickness ***/
128
+ /*** of the closed filter row (height = padding x 2) ***/
129
+ padding: 2px;
130
+ /*** *********************************************** ***/
131
+ margin: 0;
132
+ line-height: 0;
133
+ cursor: pointer;
134
+ }
135
+ .tablesorter-blackice .tablesorter-filter-row.hideme .tablesorter-filter {
136
+ height: 1px;
137
+ min-height: 0;
138
+ border: 0;
139
+ padding: 0;
140
+ margin: 0;
141
+ /* don't use visibility: hidden because it disables tabbing */
142
+ opacity: 0;
143
+ filter: alpha(opacity=0);
144
+ }
145
+ /* filters */
146
+ .tablesorter-blackice .tablesorter-filter {
147
+ width: 98%;
148
+ height: inherit;
149
+ margin: 0;
150
+ padding: 4px;
151
+ background-color: #fff;
152
+ border: 1px solid #bbb;
153
+ color: #333;
154
+ -webkit-box-sizing: border-box;
155
+ -moz-box-sizing: border-box;
156
+ box-sizing: border-box;
157
+ -webkit-transition: height 0.1s ease;
158
+ -moz-transition: height 0.1s ease;
159
+ -o-transition: height 0.1s ease;
160
+ transition: height 0.1s ease;
161
+ }
@@ -0,0 +1,196 @@
1
+ /*************
2
+ Blue Theme
3
+ *************/
4
+ /* overall */
5
+ .tablesorter-blue {
6
+ width: 100%;
7
+ background-color: #fff;
8
+ margin: 10px 0 15px;
9
+ text-align: left;
10
+ border-spacing: 0;
11
+ border: #cdcdcd 1px solid;
12
+ border-width: 1px 0 0 1px;
13
+ }
14
+ .tablesorter-blue th,
15
+ .tablesorter-blue td {
16
+ border: #cdcdcd 1px solid;
17
+ border-width: 0 1px 1px 0;
18
+ }
19
+
20
+ /* header */
21
+ .tablesorter-blue th,
22
+ .tablesorter-blue thead td {
23
+ font: bold 12px/18px Arial, Sans-serif;
24
+ color: #000;
25
+ background-color: #99bfe6;
26
+ border-collapse: collapse;
27
+ padding: 4px;
28
+ text-shadow: 0 1px 0 rgba(204, 204, 204, 0.7);
29
+ }
30
+ .tablesorter-blue tbody td,
31
+ .tablesorter-blue tfoot th,
32
+ .tablesorter-blue tfoot td {
33
+ padding: 4px;
34
+ vertical-align: top;
35
+ }
36
+ .tablesorter-blue .header,
37
+ .tablesorter-blue .tablesorter-header {
38
+ /* black (unsorted) double arrow */
39
+ background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
40
+ /* white (unsorted) double arrow */
41
+ /* background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAAP///////yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==); */
42
+ /* image */
43
+ /* background-image: url(/assets/jquery-tablesorter/black-unsorted.gif); */
44
+ background-repeat: no-repeat;
45
+ background-position: center right;
46
+ padding: 4px 18px 4px 4px;
47
+ white-space: normal;
48
+ cursor: pointer;
49
+ }
50
+ .tablesorter-blue .headerSortUp,
51
+ .tablesorter-blue .tablesorter-headerSortUp {
52
+ background-color: #9fbfdf;
53
+ /* black asc arrow */
54
+ background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
55
+ /* white asc arrow */
56
+ /* background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7); */
57
+ /* image */
58
+ /* background-image: url(/assets/jquery-tablesorter/black-asc.gif); */
59
+ }
60
+ .tablesorter-blue .headerSortDown,
61
+ .tablesorter-blue .tablesorter-headerSortDown {
62
+ background-color: #8cb3d9;
63
+ /* black desc arrow */
64
+ background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
65
+ /* white desc arrow */
66
+ /* background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7); */
67
+ /* image */
68
+ /* background-image: url(/assets/jquery-tablesorter/black-desc.gif); */
69
+ }
70
+
71
+ /* tfoot */
72
+ .tablesorter-blue tfoot .tablesorter-headerSortUp,
73
+ .tablesorter-blue tfoot .tablesorter-headerSortDown {
74
+ /* remove sort arrows from footer */
75
+ background-image: url();
76
+ }
77
+
78
+ /* tbody */
79
+ .tablesorter-blue td {
80
+ color: #3d3d3d;
81
+ background-color: #fff;
82
+ padding: 4px;
83
+ vertical-align: top;
84
+ }
85
+
86
+ /* hovered row colors
87
+ you'll need to add additional lines for
88
+ rows with more than 2 child rows
89
+ */
90
+ .tablesorter-blue tbody > tr:hover > td,
91
+ .tablesorter-blue tbody > tr:hover + tr.tablesorter-childRow > td,
92
+ .tablesorter-blue tbody > tr:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td,
93
+ .tablesorter-blue tbody > tr.even:hover > td,
94
+ .tablesorter-blue tbody > tr.even:hover + tr.tablesorter-childRow > td,
95
+ .tablesorter-blue tbody > tr.even:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
96
+ background: #d9d9d9;
97
+ }
98
+ .tablesorter-blue tbody > tr.odd:hover > td,
99
+ .tablesorter-blue tbody > tr.odd:hover + tr.tablesorter-childRow > td,
100
+ .tablesorter-blue tbody > tr.odd:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
101
+ background: #bfbfbf;
102
+ }
103
+
104
+ /* table processing indicator */
105
+ .tablesorter-blue .tablesorter-processing {
106
+ background-position: center center !important;
107
+ background-repeat: no-repeat !important;
108
+ /* background-image: url(../addons/pager/icons/loading.gif) !important; */
109
+ background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
110
+ }
111
+
112
+ /* Zebra Widget - row alternating colors */
113
+ .tablesorter-blue tbody tr.odd td {
114
+ background-color: #ebf2fa;
115
+ }
116
+ .tablesorter-blue tbody tr.even td {
117
+ background-color: #fff;
118
+ }
119
+
120
+ /* Column Widget - column sort colors */
121
+ .tablesorter-blue td.primary,
122
+ .tablesorter-blue tr.odd td.primary {
123
+ background-color: #99b3e6;
124
+ }
125
+ .tablesorter-blue tr.even td.primary {
126
+ background-color: #c2d1f0;
127
+ }
128
+ .tablesorter-blue td.secondary,
129
+ .tablesorter-blue tr.odd td.secondary {
130
+ background-color: #c2d1f0;
131
+ }
132
+ .tablesorter-blue tr.even td.secondary {
133
+ background-color: #d6e0f5;
134
+ }
135
+ .tablesorter-blue td.tertiary,
136
+ .tablesorter-blue tr.odd td.tertiary {
137
+ background-color: #d6e0f5;
138
+ }
139
+ .tablesorter-blue tr.even td.tertiary {
140
+ background-color: #ebf0fa;
141
+ }
142
+
143
+ /* filter widget */
144
+ .tablesorter-blue .tablesorter-filter-row td {
145
+ background: #eee;
146
+ line-height: normal;
147
+ text-align: center; /* center the input */
148
+ -webkit-transition: line-height 0.1s ease;
149
+ -moz-transition: line-height 0.1s ease;
150
+ -o-transition: line-height 0.1s ease;
151
+ transition: line-height 0.1s ease;
152
+ }
153
+ /* optional disabled input styling */
154
+ .tablesorter-blue .tablesorter-filter-row .disabled {
155
+ opacity: 0.5;
156
+ filter: alpha(opacity=50);
157
+ cursor: not-allowed;
158
+ }
159
+ /* hidden filter row */
160
+ .tablesorter-blue .tablesorter-filter-row.hideme td {
161
+ /*** *********************************************** ***/
162
+ /*** change this padding to modify the thickness ***/
163
+ /*** of the closed filter row (height = padding x 2) ***/
164
+ padding: 2px;
165
+ /*** *********************************************** ***/
166
+ margin: 0;
167
+ line-height: 0;
168
+ cursor: pointer;
169
+ }
170
+ .tablesorter-blue .tablesorter-filter-row.hideme .tablesorter-filter {
171
+ height: 1px;
172
+ min-height: 0;
173
+ border: 0;
174
+ padding: 0;
175
+ margin: 0;
176
+ /* don't use visibility: hidden because it disables tabbing */
177
+ opacity: 0;
178
+ filter: alpha(opacity=0);
179
+ }
180
+ /* filters */
181
+ .tablesorter-blue .tablesorter-filter {
182
+ width: 98%;
183
+ height: inherit;
184
+ margin: 0;
185
+ padding: 4px;
186
+ background-color: #fff;
187
+ border: 1px solid #bbb;
188
+ color: #333;
189
+ -webkit-box-sizing: border-box;
190
+ -moz-box-sizing: border-box;
191
+ box-sizing: border-box;
192
+ -webkit-transition: height 0.1s ease;
193
+ -moz-transition: height 0.1s ease;
194
+ -o-transition: height 0.1s ease;
195
+ transition: height 0.1s ease;
196
+ }
@@ -0,0 +1,118 @@
1
+ /*************
2
+ Bootstrap theme
3
+ *************/
4
+ /* jQuery Bootstrap Theme */
5
+ .tablesorter-bootstrap {
6
+ width: 100%;
7
+ }
8
+ .tablesorter-bootstrap .tablesorter-header {
9
+ font: bold 14px/20px Arial, Sans-serif;
10
+ position: relative;
11
+ padding: 8px;
12
+ margin: 0 0 18px;
13
+ list-style: none;
14
+ background-color: #FBFBFB;
15
+ background-image: -moz-linear-gradient(top, white, #efefef);
16
+ background-image: -ms-linear-gradient(top, white, #efefef);
17
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(white), to(#efefef));
18
+ background-image: -webkit-linear-gradient(top, white, #efefef);
19
+ background-image: -o-linear-gradient(top, white, #efefef);
20
+ background-image: linear-gradient(top, white, #efefef);
21
+ background-repeat: repeat-x;
22
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#efefef', GradientType=0);
23
+ -webkit-box-shadow: inset 0 1px 0 white;
24
+ -moz-box-shadow: inset 0 1px 0 #ffffff;
25
+ box-shadow: inset 0 1px 0 white;
26
+ }
27
+
28
+ .tablesorter-bootstrap .tablesorter-header-inner {
29
+ position: relative;
30
+ padding: 4px 18px 4px 4px;
31
+ }
32
+
33
+ /* bootstrap uses <i> for icons */
34
+ .tablesorter-bootstrap .tablesorter-header i {
35
+ position: absolute;
36
+ right: 2px;
37
+ top: 50%;
38
+ margin-top: -7px; /* half the icon height; older IE doesn't like this */
39
+ width: 14px;
40
+ height: 14px;
41
+ background-repeat: no-repeat;
42
+ line-height: 14px;
43
+ display: inline-block;
44
+ }
45
+ .tablesorter-bootstrap .bootstrap-icon-unsorted {
46
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOCAYAAAD5YeaVAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAWVJREFUeNqUUL9Lw2AUTGP8mqGlpBQkNeCSRcckEBcHq1jImMElToKuDvpHFMGhU0BQcHBwLji6CE1B4uB/INQsDi4d2jQ/fPeZxo764OV6915f7lLJ81xot9tCURXqdVEUr7IsO6ffH9Q5BlEUCaLwWxWqTcbYnaIoh0Dw4gAvcWlxq1qt9hqNxg6hUGAP+uIPUrGs0qXLer2+v/pTX6QpxLtkc2U2m53ACb8sSdIDXerSEms2m6+DweAICA4d89KGbduf9MpEVdXQ9/2LVqv1CASHjjn3iq/x1xKFfxQPqGnada1W86bT6SiO42OS3qk3KPStLMvbk8nkfjwen/LLuq6blFymMB0KdUPSGhAcOualjX6/f0bCiC7NaWGPQr0BwaFjzn0gYJqmLAiCA8/zni3LmhuGkQPBoWPOPwQeaPIqD4fDruu6L6Zp5kBw6IudchmdJAkLw3DXcZwnIPjy/FuAAQCiqqWWCAFKcwAAAABJRU5ErkJggg==);
47
+ }
48
+
49
+ /* since bootstrap (table-striped) uses nth-child(), we just use this to add a zebra stripe color */
50
+ .tablesorter-bootstrap tr.odd td {
51
+ background-color: #f9f9f9;
52
+ }
53
+ .tablesorter-bootstrap tbody > .odd:hover > td,
54
+ .tablesorter-bootstrap tbody > .even:hover > td {
55
+ background-color: #f5f5f5;
56
+ }
57
+ .tablesorter-bootstrap tr.even td {
58
+ background-color: #fff;
59
+ }
60
+
61
+ /* processing icon */
62
+ .tablesorter-bootstrap .tablesorter-processing {
63
+ background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=');
64
+ position: absolute;
65
+ z-index: 1000;
66
+ }
67
+
68
+ /* filter widget */
69
+ .tablesorter-bootstrap .tablesorter-filter-row .tablesorter-filter {
70
+ width: 98%;
71
+ height: inherit;
72
+ margin: 0 auto;
73
+ padding: 4px 6px;
74
+ background-color: #fff;
75
+ color: #333;
76
+ -webkit-box-sizing: border-box;
77
+ -moz-box-sizing: border-box;
78
+ box-sizing: border-box;
79
+ -webkit-transition: height 0.1s ease;
80
+ -moz-transition: height 0.1s ease;
81
+ -o-transition: height 0.1s ease;
82
+ transition: height 0.1s ease;
83
+ }
84
+ .tablesorter-bootstrap .tablesorter-filter-row td {
85
+ background: #eee;
86
+ line-height: normal;
87
+ text-align: center;
88
+ padding: 4px 6px;
89
+ vertical-align: middle;
90
+ -webkit-transition: line-height 0.1s ease;
91
+ -moz-transition: line-height 0.1s ease;
92
+ -o-transition: line-height 0.1s ease;
93
+ transition: line-height 0.1s ease;
94
+ }
95
+ /* hidden filter row */
96
+ .tablesorter-bootstrap .tablesorter-filter-row.hideme td {
97
+ padding: 2px; /* change this to modify the thickness of the closed border row */
98
+ margin: 0;
99
+ line-height: 0;
100
+ }
101
+ .tablesorter-bootstrap .tablesorter-filter-row.hideme .tablesorter-filter {
102
+ height: 1px;
103
+ min-height: 0;
104
+ border: 0;
105
+ padding: 0;
106
+ margin: 0;
107
+ /* don't use visibility: hidden because it disables tabbing */
108
+ opacity: 0;
109
+ filter: alpha(opacity=0);
110
+ }
111
+
112
+ /* pager plugin */
113
+ .tablesorter-bootstrap .tablesorter-pager select {
114
+ padding: 4px 6px;
115
+ }
116
+ .tablesorter-bootstrap .tablesorter-pager .pagedisplay {
117
+ border: 0;
118
+ }