/*! tablesorter CSS Sticky Headers widget - updated 2/9/2015 (v2.19.1) * Requires a modern browser, tablesorter v2.8+ */ !function(a){"use strict";var b=a.tablesorter;b.addWidget({id:"cssStickyHeaders",priority:10,options:{cssStickyHeaders_offset:0,cssStickyHeaders_addCaption:!1,cssStickyHeaders_attachTo:null,cssStickyHeaders_filteredToTop:!0},init:function(c,d,e,f){var g,h,i,j=e.$table,k=a(f.cssStickyHeaders_attachTo),l="ActiveXObject"in window,m=e.namespace+"cssstickyheader ",n=j.children("thead"),o=j.children("caption"),p=k.length?k:a(window),q=j.parent().closest("table."+b.css.table),r=q.length&&b.hasWidget(q[0],"cssStickyHeaders")?q.children("thead"):[],s=parseInt(j.css("border-top-width"),10)||0,t=f.cssStickyHeaders_addCaption,u=!1,v=!1,w=function(a,b){var c=0===b?"":"translate(0px,"+b+"px)";a.css({transform:c,"-ms-transform":c,"-webkit-transform":c})};o.length&&(g=j.height(),o.hide(),v=j.height()===g,o.show(),h=j.offset().top,w(o,20),u=j.offset().top!==h,w(o,0)),p.unbind(a.trim("scroll resize ".split(" ").join(m))).bind(a.trim("scroll resize ".split(" ").join(m)),function(){f=e.widgetOptions,u&&(w(o,0),i=j.offset().top);var a=k.length?k.offset().top:p.scrollTop(),b=(o.outerHeight(!0)||0)+(parseInt(j.css("padding-top"),10)||0)+(parseInt(j.css("border-spacing"),10)||0),c=j.height()+(v&&f.cssStickyHeaders_addCaption?b:0)-n.height()-(j.children("tfoot").height()||0)-(f.cssStickyHeaders_addCaption?b:v?0:b),d=r.length?r.height():0,g=r.length?l?q.data("cssStickyHeaderBottom")+d:r.offset().top+d-p.scrollTop():0,h=u?i:j.offset().top,m=v?h-(f.cssStickyHeaders_addCaption?b:0):h,x=a-m+g+s+(f.cssStickyHeaders_offset||0)-(f.cssStickyHeaders_addCaption?v?b:0:b),y=x>0&&c>=x?x:0,z=l?n.children().children():n;l&&e.$table.data("cssStickyHeaderBottom",(r.length?d:0)-(f.cssStickyHeaders_addCaption?b:0)),f.cssStickyHeaders_addCaption&&(z=z.add(o)),t!==f.cssStickyHeaders_addCaption&&(t=f.cssStickyHeaders_addCaption,t||w(o,0)),w(z,y)}),j.unbind(a.trim("filterEnd"+m)).bind(a.trim("filterEnd"+m),function(){f.cssStickyHeaders_filteredToTop&&window.scrollTo(0,j.position().top)})},remove:function(b,c,d,e){if(!e){var f=c.namespace+"cssstickyheader ";a(window).unbind(a.trim("scroll resize ".split(" ").join(f))),c.$table.unbind(a.trim("filterEnd scroll resize ".split(" ").join(f))).add(c.$table.children("thead").children().children()).children("thead, caption").css({transform:"","-ms-transform":"","-webkit-transform":""})}}})}(jQuery);