summaryrefslogtreecommitdiff
path: root/sitestatic/jquery.tablesorter-2.7.min.js
diff options
context:
space:
mode:
Diffstat (limited to 'sitestatic/jquery.tablesorter-2.7.min.js')
-rw-r--r--sitestatic/jquery.tablesorter-2.7.min.js58
1 files changed, 56 insertions, 2 deletions
diff --git a/sitestatic/jquery.tablesorter-2.7.min.js b/sitestatic/jquery.tablesorter-2.7.min.js
index cf5e3068..eff1e09f 100644
--- a/sitestatic/jquery.tablesorter-2.7.min.js
+++ b/sitestatic/jquery.tablesorter-2.7.min.js
@@ -1,5 +1,59 @@
/*!
-* TableSorter 2.7 min - Client-side table sorting with ease!
+* TableSorter 2.7 - Client-side table sorting with ease!
+* @requires jQuery v1.2.6+
+*
* Copyright (c) 2007 Christian Bach
+* Examples and docs at: http://tablesorter.com
+* Dual licensed under the MIT and GPL licenses:
+* http://www.opensource.org/licenses/mit-license.php
+* http://www.gnu.org/licenses/gpl.html
+*
+* @type jQuery
+* @name tablesorter
+* @cat Plugins/Tablesorter
+* @author Christian Bach/christian.bach@polyester.se
+* @contributor Rob Garrison/https://github.com/Mottie/tablesorter
*/
-!function(g){g.extend({tablesorter:new function(){function d(c){"undefined"!==typeof console&&"undefined"!==typeof console.log?console.log(c):alert(c)}function v(c,b){d(c+" ("+((new Date).getTime()-b.getTime())+"ms)")}function p(c,b,a){if(!b)return"";var f=c.config,h=f.textExtraction,e="",e="simple"===h?f.supportsTextContent?b.textContent:g(b).text():"function"===typeof h?h(b,c,a):"object"===typeof h&&h.hasOwnProperty(a)?h[a](b,c,a):f.supportsTextContent?b.textContent:g(b).text();return g.trim(e)} function k(c){var b=c.config,a=g(c.tBodies).filter(":not(."+b.cssInfoBlock+")"),f,h,s,j,m,l,n="";if(0===a.length)return b.debug?d("*Empty table!* Not building a parser cache"):"";a=a[0].rows;if(a[0]){f=[];h=a[0].cells.length;for(s=0;s<h;s++){j=b.$headers.filter(":not([colspan])");j=j.add(b.$headers.filter('[colspan="1"]')).filter('[data-column="'+s+'"]:last');m=b.headers[s];l=e.getParserById(e.getData(j,m,"sorter"));b.empties[s]=e.getData(j,m,"empty")||b.emptyTo||(b.emptyToBottom?"bottom":"top"); b.strings[s]=e.getData(j,m,"string")||b.stringTo||"max";if(!l)a:{j=c;m=a;l=-1;for(var v=s,r=void 0,t=e.parsers.length,y=!1,q="",r=!0;""===q&&r;)l++,m[l]?(y=m[l].cells[v],q=p(j,y,v),j.config.debug&&d("Checking if value was empty on row "+l+", column: "+v+": "+q)):r=!1;for(r=1;r<t;r++)if(e.parsers[r].is(q,j,y)){l=e.parsers[r];break a}l=e.parsers[0]}b.debug&&(n+="column:"+s+"; parser:"+l.id+"; string:"+b.strings[s]+"; empty: "+b.empties[s]+"\n");f.push(l)}}b.debug&&d(n);return f}function q(c){var b= c.tBodies,a=c.config,f,h,s=a.parsers,j,m,l,n,k,r,q,y=[];a.cache={};if(!s)return a.debug?d("*Empty table!* Not building a cache"):"";a.debug&&(q=new Date);a.showProcessing&&e.isProcessing(c,!0);for(n=0;n<b.length;n++)if(a.cache[n]={row:[],normalized:[]},!g(b[n]).hasClass(a.cssInfoBlock)){f=b[n]&&b[n].rows.length||0;h=b[n].rows[0]&&b[n].rows[0].cells.length||0;for(m=0;m<f;++m)if(k=g(b[n].rows[m]),r=[],k.hasClass(a.cssChildRow))a.cache[n].row[a.cache[n].row.length-1]=a.cache[n].row[a.cache[n].row.length- 1].add(k);else{a.cache[n].row.push(k);for(l=0;l<h;++l)if(j=p(c,k[0].cells[l],l),j=s[l].format(j,c,k[0].cells[l],l),r.push(j),"numeric"===(s[l].type||"").toLowerCase())y[l]=Math.max(Math.abs(j),y[l]||0);r.push(a.cache[n].normalized.length);a.cache[n].normalized.push(r)}a.cache[n].colMax=y}a.showProcessing&&e.isProcessing(c);a.debug&&v("Building cache for "+f+" rows",q)}function t(c,b){var a=c.config,f=c.tBodies,h=[],d=a.cache,j,m,l,n,k,r,p,q,t,u,x;if(d[0]){a.debug&&(x=new Date);for(q=0;q<f.length;q++)if(j= g(f[q]),!j.hasClass(a.cssInfoBlock)){k=e.processTbody(c,j,!0);j=d[q].row;m=d[q].normalized;n=(l=m.length)?m[0].length-1:0;for(r=0;r<l;r++)if(u=m[r][n],h.push(j[u]),!a.appender||!a.removeRows){t=j[u].length;for(p=0;p<t;p++)k.append(j[u][p])}e.processTbody(c,k,!1)}a.appender&&a.appender(c,h);a.debug&&v("Rebuilt table",x);b||e.applyWidget(c);g(c).trigger("sortEnd",c)}}function C(c){var b,a,f,h=c.config,e=h.sortList,d=[h.cssAsc,h.cssDesc],m=g(c).find("tfoot tr").children().removeClass(d.join(" "));h.$headers.removeClass(d.join(" ")); f=e.length;for(b=0;b<f;b++)if(2!==e[b][1]&&(c=h.$headers.not(".sorter-false").filter('[data-column="'+e[b][0]+'"]'+(1===f?":last":"")),c.length))for(a=0;a<c.length;a++)c[a].sortDisabled||(c.eq(a).addClass(d[e[b][1]]),m.length&&m.filter('[data-column="'+e[b][0]+'"]').eq(a).addClass(d[e[b][1]]))}function E(c){var b=0,a=c.config,f=a.sortList,h=f.length,e=c.tBodies.length,d,m,l,n,k,r,p,q,t;if(!a.serverSideSorting&&a.cache[0]){a.debug&&(d=new Date);for(l=0;l<e;l++)k=a.cache[l].colMax,t=(r=a.cache[l].normalized)&& r[0]?r[0].length-1:0,r.sort(function(e,d){for(m=0;m<h;m++){n=f[m][0];q=f[m][1];p=/n/i.test(a.parsers&&a.parsers[n]?a.parsers[n].type||"":"")?"Numeric":"Text";p+=0===q?"":"Desc";/Numeric/.test(p)&&a.strings[n]&&(b="boolean"===typeof a.string[a.strings[n]]?(0===q?1:-1)*(a.string[a.strings[n]]?-1:1):a.strings[n]?a.string[a.strings[n]]||0:0);var j=g.tablesorter["sort"+p](c,e[n],d[n],n,k[n],b);if(j)return j}return e[t]-d[t]});a.debug&&v("Sorting on "+f.toString()+" and dir "+q+" time",d)}}function D(c, b){c.trigger("updateComplete");"function"===typeof b&&b(c[0])}function F(c,b,a){!1!==b?c.trigger("sorton",[c[0].config.sortList,function(){D(c,a)}]):D(c,a)}var e=this;e.version="2.7";e.parsers=[];e.widgets=[];e.defaults={theme:"default",widthFixed:!1,showProcessing:!1,headerTemplate:"{content}",onRenderTemplate:null,onRenderHeader:null,cancelSelection:!0,dateFormat:"mmddyyyy",sortMultiSortKey:"shiftKey",sortResetKey:"ctrlKey",usNumberFormat:!0,delayInit:!1,serverSideSorting:!1,headers:{},ignoreCase:!0, sortForce:null,sortList:[],sortAppend:null,sortInitialOrder:"asc",sortLocaleCompare:!1,sortReset:!1,sortRestart:!1,emptyTo:"bottom",stringTo:"max",textExtraction:"simple",textSorter:null,widgets:[],widgetOptions:{zebra:["even","odd"]},initWidgets:!0,initialized:null,tableClass:"tablesorter",cssAsc:"tablesorter-headerAsc",cssChildRow:"tablesorter-childRow",cssDesc:"tablesorter-headerDesc",cssHeader:"tablesorter-header",cssHeaderRow:"tablesorter-headerRow",cssIcon:"tablesorter-icon",cssInfoBlock:"tablesorter-infoOnly", cssProcessing:"tablesorter-processing",selectorHeaders:"> thead th, > thead td",selectorSort:"th, td",selectorRemove:".remove-me",debug:!1,headerList:[],empties:{},strings:{},parsers:[]};e.benchmark=v;e.construct=function(c){return this.each(function(){if(!this.tHead||0===this.tBodies.length||!0===this.hasInitialized)return this.config.debug?d("stopping initialization! No thead, tbody or tablesorter has already been initialized"):"";var b=g(this),a,f,h,s="",j,m,l,n,D=g.metadata;this.hasInitialized= !1;this.config={};a=g.extend(!0,this.config,e.defaults,c);g.data(this,"tablesorter",a);a.debug&&g.data(this,"startoveralltimer",new Date);a.supportsTextContent="x"===g("<span>x</span>")[0].textContent;a.supportsDataObject=1.4<=parseFloat(g.fn.jquery);a.string={max:1,min:-1,"max+":1,"max-":-1,zero:0,none:0,"null":0,top:!0,bottom:!1};/tablesorter\-/.test(b.attr("class"))||(s=""!==a.theme?" tablesorter-"+a.theme:"");b.addClass(a.tableClass+s);var r=[],P={},y=g(this).find("thead:eq(0), tfoot").children("tr"), I,J,x,z,N,B,K,Q,R,G;for(I=0;I<y.length;I++){N=y[I].cells;for(J=0;J<N.length;J++){z=N[J];B=z.parentNode.rowIndex;K=B+"-"+z.cellIndex;Q=z.rowSpan||1;R=z.colSpan||1;"undefined"===typeof r[B]&&(r[B]=[]);for(x=0;x<r[B].length+1;x++)if("undefined"===typeof r[B][x]){G=x;break}P[K]=G;g(z).attr({"data-column":G});for(x=B;x<B+Q;x++){"undefined"===typeof r[x]&&(r[x]=[]);K=r[x];for(z=G;z<G+R;z++)K[z]="x"}}}var L,A,O,S,M,H,T,w=this.config;w.headerList=[];w.headerContent=[];w.debug&&(T=new Date);S=w.cssIcon?'<i class="'+ w.cssIcon+'"></i>':"";r=g(this).find(w.selectorHeaders).each(function(a){A=g(this);L=w.headers[a];w.headerContent[a]=this.innerHTML;M=w.headerTemplate.replace(/\{content\}/g,this.innerHTML).replace(/\{icon\}/g,S);w.onRenderTemplate&&(O=w.onRenderTemplate.apply(A,[a,M]))&&"string"===typeof O&&(M=O);this.innerHTML='<div class="tablesorter-header-inner">'+M+"</div>";w.onRenderHeader&&w.onRenderHeader.apply(A,[a]);this.column=P[this.parentNode.rowIndex+"-"+this.cellIndex];var b=e.getData(A,L,"sortInitialOrder")|| w.sortInitialOrder;this.order=/^d/i.test(b)||1===b?[1,0,2]:[0,1,2];this.count=-1;"false"===e.getData(A,L,"sorter")?(this.sortDisabled=!0,A.addClass("sorter-false")):A.removeClass("sorter-false");this.lockedOrder=!1;H=e.getData(A,L,"lockedOrder")||!1;"undefined"!==typeof H&&!1!==H&&(this.order=this.lockedOrder=/^d/i.test(H)||1===H?[1,1,1]:[0,0,0]);A.addClass((this.sortDisabled?"sorter-false ":" ")+w.cssHeader);w.headerList[a]=this;A.parent().addClass(w.cssHeaderRow)});this.config.debug&&(v("Built headers:", T),d(r));a.$headers=r;a.parsers=k(this);a.delayInit||q(this);a.$headers.find("*").andSelf().filter(a.selectorSort).unbind("mousedown.tablesorter mouseup.tablesorter").bind("mousedown.tablesorter mouseup.tablesorter",function(c,d){var k=(this.tagName.match("TH|TD")?g(this):g(this).parents("th, td").filter(":last"))[0];if(1!==(c.which||c.button))return!1;if("mousedown"===c.type)return n=(new Date).getTime(),"INPUT"===c.target.tagName?"":!a.cancelSelection;if(!0!==d&&250<(new Date).getTime()-n)return!1; a.delayInit&&!a.cache&&q(b[0]);if(!k.sortDisabled){b.trigger("sortStart",b[0]);s=!c[a.sortMultiSortKey];k.count=c[a.sortResetKey]?2:(k.count+1)%(a.sortReset?3:2);a.sortRestart&&(f=k,a.$headers.each(function(){if(this!==f&&(s||!g(this).is("."+a.cssDesc+",."+a.cssAsc)))this.count=-1}));f=k.column;if(s){a.sortList=[];if(null!==a.sortForce){j=a.sortForce;for(h=0;h<j.length;h++)j[h][0]!==f&&a.sortList.push(j[h])}l=k.order[k.count];if(2>l&&(a.sortList.push([f,l]),1<k.colSpan))for(h=1;h<k.colSpan;h++)a.sortList.push([f+ h,l])}else if(a.sortAppend&&1<a.sortList.length&&e.isValueInArray(a.sortAppend[0][0],a.sortList)&&a.sortList.pop(),e.isValueInArray(f,a.sortList))for(h=0;h<a.sortList.length;h++)m=a.sortList[h],l=a.headerList[m[0]],m[0]===f&&(m[1]=l.order[l.count],2===m[1]&&(a.sortList.splice(h,1),l.count=-1));else if(l=k.order[k.count],2>l&&(a.sortList.push([f,l]),1<k.colSpan))for(h=1;h<k.colSpan;h++)a.sortList.push([f+h,l]);if(null!==a.sortAppend){j=a.sortAppend;for(h=0;h<j.length;h++)j[h][0]!==f&&a.sortList.push(j[h])}b.trigger("sortBegin", b[0]);setTimeout(function(){C(b[0]);E(b[0]);t(b[0])},1)}});a.cancelSelection&&a.$headers.each(function(){this.onselectstart=function(){return!1}});b.unbind("sortReset update updateCell addRows sorton appendCache applyWidgetId applyWidgets refreshWidgets destroy mouseup mouseleave").bind("sortReset",function(){a.sortList=[];C(this);E(this);t(this)}).bind("update",function(c,f,h){g(a.selectorRemove,this).remove();a.parsers=k(this);q(this);F(b,f,h)}).bind("updateCell",function(c,f,h,e){var d,j,s;d=g(this).find("tbody"); c=d.index(g(f).parents("tbody").filter(":last"));var k=g(f).parents("tr").filter(":last");f=g(f)[0];d.length&&0<=c&&(j=d.eq(c).find("tr").index(k),s=f.cellIndex,d=this.config.cache[c].normalized[j].length-1,this.config.cache[c].row[this.config.cache[c].normalized[j][d]]=k,this.config.cache[c].normalized[j][s]=a.parsers[s].format(p(this,f,s),this,f,s),F(b,h,e))}).bind("addRows",function(c,f,e,d){var j=f.filter("tr").length,s=[],l=f[0].cells.length,m=g(this).find("tbody").index(f.closest("tbody")); a.parsers||(a.parsers=k(this));for(c=0;c<j;c++){for(h=0;h<l;h++)s[h]=a.parsers[h].format(p(this,f[c].cells[h],h),this,f[c].cells[h],h);s.push(a.cache[m].row.length);a.cache[m].row.push([f[c]]);a.cache[m].normalized.push(s);s=[]}F(b,e,d)}).bind("sorton",function(a,b,c,f){g(this).trigger("sortStart",this);var h,e,d,j=this.config;a=b||j.sortList;j.sortList=[];g.each(a,function(a,b){h=[parseInt(b[0],10),parseInt(b[1],10)];if(d=j.headerList[h[0]])j.sortList.push(h),e=g.inArray(h[1],d.order),d.count=0<= e?e:h[1]%(j.sortReset?3:2)});C(this);E(this);t(this,f);"function"===typeof c&&c(this)}).bind("appendCache",function(a,b,c){t(this,c);"function"===typeof b&&b(this)}).bind("applyWidgetId",function(b,c){e.getWidgetById(c).format(this,a,a.widgetOptions)}).bind("applyWidgets",function(a,b){e.applyWidget(this,b)}).bind("refreshWidgets",function(a,b,c){e.refreshWidgets(this,b,c)}).bind("destroy",function(a,b,c){e.destroy(this,b,c)});a.supportsDataObject&&"undefined"!==typeof b.data().sortlist?a.sortList= b.data().sortlist:D&&(b.metadata()&&b.metadata().sortlist)&&(a.sortList=b.metadata().sortlist);e.applyWidget(this,!0);0<a.sortList.length?b.trigger("sorton",[a.sortList,{},!a.initWidgets]):a.initWidgets&&e.applyWidget(this);if(this.config.widthFixed&&0===g(this).find("colgroup").length){var U=g("<colgroup>"),V=g(this).width();g("tr:first td",this.tBodies[0]).each(function(){U.append(g("<col>").css("width",parseInt(1E3*(g(this).width()/V),10)/10+"%"))});g(this).prepend(U)}a.showProcessing&&b.unbind("sortBegin sortEnd").bind("sortBegin sortEnd", function(a){e.isProcessing(b[0],"sortBegin"===a.type)});this.hasInitialized=!0;a.debug&&e.benchmark("Overall initialization time",g.data(this,"startoveralltimer"));b.trigger("tablesorter-initialized",this);"function"===typeof a.initialized&&a.initialized(this)})};e.isProcessing=function(c,b,a){var f=c.config;c=a||g(c).find("."+f.cssHeader);b?(0<f.sortList.length&&(c=c.filter(function(){return this.sortDisabled?!1:e.isValueInArray(parseFloat(g(this).attr("data-column")),f.sortList)})),c.addClass(f.cssProcessing)): c.removeClass(f.cssProcessing)};e.processTbody=function(c,b,a){if(a)return b.before('<span class="tablesorter-savemyplace"/>'),c=g.fn.detach?b.detach():b.remove();c=g(c).find("span.tablesorter-savemyplace");b.insertAfter(c);c.remove()};e.clearTableBody=function(c){g(c.tBodies).filter(":not(."+c.config.cssInfoBlock+")").empty()};e.destroy=function(c,b,a){var f=g(c),h=c.config,d=f.find("thead:first");c.hasInitialized=!1;d.find("tr:not(."+h.cssHeaderRow+")").remove();d.find(".tablesorter-resizer").remove(); e.refreshWidgets(c,!0,!0);f.removeData("tablesorter").unbind("sortReset update updateCell addRows sorton appendCache applyWidgetId applyWidgets refreshWidgets destroy mouseup mouseleave").find("."+h.cssHeader).unbind("click mousedown mousemove mouseup").removeClass(h.cssHeader+" "+h.cssAsc+" "+h.cssDesc).find(".tablesorter-header-inner").each(function(){""!==h.cssIcon&&g(this).find("."+h.cssIcon).remove();g(this).replaceWith(g(this).contents())});!1!==b&&f.removeClass(h.tableClass);"function"===typeof a&& a(c)};e.regex=[/(^-?[0-9]+(\.?[0-9]*)[df]?e?[0-9]?$|^0x[0-9a-f]+$|[0-9]+)/gi,/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,/^0x[0-9a-f]+$/i];e.sortText=function(c,b,a,f){if(b===a)return 0;var h=c.config,d=h.string[h.empties[f]||h.emptyTo],j=e.regex;if(""===b&&0!==d)return"boolean"===typeof d?d?-1:1:-d||-1;if(""===a&&0!==d)return"boolean"===typeof d?d?1:-1:d||1;if("function"===typeof h.textSorter)return h.textSorter(b,a,c,f);c=b.replace(j[0], "\\0$1\\0").replace(/\\0$/,"").replace(/^\\0/,"").split("\\0");f=a.replace(j[0],"\\0$1\\0").replace(/\\0$/,"").replace(/^\\0/,"").split("\\0");b=parseInt(b.match(j[2]),16)||1!==c.length&&b.match(j[1])&&Date.parse(b);if(a=parseInt(a.match(j[2]),16)||b&&a.match(j[1])&&Date.parse(a)||null){if(b<a)return-1;if(b>a)return 1}h=Math.max(c.length,f.length);for(b=0;b<h;b++){a=isNaN(c[b])?c[b]||0:parseFloat(c[b])||0;j=isNaN(f[b])?f[b]||0:parseFloat(f[b])||0;if(isNaN(a)!==isNaN(j))return isNaN(a)?1:-1;typeof a!== typeof j&&(a+="",j+="");if(a<j)return-1;if(a>j)return 1}return 0};e.sortTextDesc=function(c,b,a,f){if(b===a)return 0;var d=c.config,g=d.string[d.empties[f]||d.emptyTo];return""===b&&0!==g?"boolean"===typeof g?g?-1:1:g||1:""===a&&0!==g?"boolean"===typeof g?g?1:-1:-g||-1:"function"===typeof d.textSorter?d.textSorter(a,b,c,f):e.sortText(c,a,b)};e.getTextValue=function(c,b,a){if(b){var f=c.length,d=b+a;for(b=0;b<f;b++)d+=c.charCodeAt(b);return a*d}return 0};e.sortNumeric=function(c,b,a,f,d,g){if(b=== a)return 0;c=c.config;f=c.string[c.empties[f]||c.emptyTo];if(""===b&&0!==f)return"boolean"===typeof f?f?-1:1:-f||-1;if(""===a&&0!==f)return"boolean"===typeof f?f?1:-1:f||1;isNaN(b)&&(b=e.getTextValue(b,d,g));isNaN(a)&&(a=e.getTextValue(a,d,g));return b-a};e.sortNumericDesc=function(c,b,a,f,d,g){if(b===a)return 0;c=c.config;f=c.string[c.empties[f]||c.emptyTo];if(""===b&&0!==f)return"boolean"===typeof f?f?-1:1:f||1;if(""===a&&0!==f)return"boolean"===typeof f?f?1:-1:-f||-1;isNaN(b)&&(b=e.getTextValue(b, d,g));isNaN(a)&&(a=e.getTextValue(a,d,g));return a-b};e.characterEquivalents={a:"\u00e1\u00e0\u00e2\u00e3\u00e4\u0105\u00e5",A:"\u00c1\u00c0\u00c2\u00c3\u00c4\u0104\u00c5",c:"\u00e7\u0107\u010d",C:"\u00c7\u0106\u010c",e:"\u00e9\u00e8\u00ea\u00eb\u011b\u0119",E:"\u00c9\u00c8\u00ca\u00cb\u011a\u0118",i:"\u00ed\u00ec\u0130\u00ee\u00ef\u0131",I:"\u00cd\u00cc\u0130\u00ce\u00cf",o:"\u00f3\u00f2\u00f4\u00f5\u00f6",O:"\u00d3\u00d2\u00d4\u00d5\u00d6",ss:"\u00df",SS:"\u1e9e",u:"\u00fa\u00f9\u00fb\u00fc\u016f", U:"\u00da\u00d9\u00db\u00dc\u016e"};e.replaceAccents=function(c){var b,a="[",d=e.characterEquivalents;if(!e.characterRegex){e.characterRegexArray={};for(b in d)"string"===typeof b&&(a+=d[b],e.characterRegexArray[b]=RegExp("["+d[b]+"]","g"));e.characterRegex=RegExp(a+"]")}if(e.characterRegex.test(c))for(b in d)"string"===typeof b&&(c=c.replace(e.characterRegexArray[b],b));return c};e.isValueInArray=function(c,b){var a,d=b.length;for(a=0;a<d;a++)if(b[a][0]===c)return!0;return!1};e.addParser=function(c){var b, a=e.parsers.length,d=!0;for(b=0;b<a;b++)e.parsers[b].id.toLowerCase()===c.id.toLowerCase()&&(d=!1);d&&e.parsers.push(c)};e.getParserById=function(c){var b,a=e.parsers.length;for(b=0;b<a;b++)if(e.parsers[b].id.toLowerCase()===c.toString().toLowerCase())return e.parsers[b];return!1};e.addWidget=function(c){e.widgets.push(c)};e.getWidgetById=function(c){var b,a,d=e.widgets.length;for(b=0;b<d;b++)if((a=e.widgets[b])&&a.hasOwnProperty("id")&&a.id.toLowerCase()===c.toLowerCase())return a};e.applyWidget= function(c,b){var a=c.config,d=a.widgetOptions,h=a.widgets.sort().reverse(),k,j,m,l=h.length;j=g.inArray("zebra",a.widgets);0<=j&&(a.widgets.splice(j,1),a.widgets.push("zebra"));a.debug&&(k=new Date);for(j=0;j<l;j++)(m=e.getWidgetById(h[j]))&&(!0===b&&m.hasOwnProperty("init")?m.init(c,m,a,d):!b&&m.hasOwnProperty("format")&&m.format(c,a,d));a.debug&&v("Completed "+(!0===b?"initializing":"applying")+" widgets",k)};e.refreshWidgets=function(c,b,a){var f,h=c.config,k=h.widgets,j=e.widgets,m=j.length; for(f=0;f<m;f++)if(j[f]&&j[f].id&&(b||0>g.inArray(j[f].id,k)))h.debug&&d("Refeshing widgets: Removing "+j[f].id),j[f].hasOwnProperty("remove")&&j[f].remove(c,h,h.widgetOptions);!0!==a&&e.applyWidget(c,b)};e.getData=function(c,b,a){var d="";c=g(c);var e,k;if(!c.length)return"";e=g.metadata?c.metadata():!1;k=" "+(c.attr("class")||"");"undefined"!==typeof c.data(a)||"undefined"!==typeof c.data(a.toLowerCase())?d+=c.data(a)||c.data(a.toLowerCase()):e&&"undefined"!==typeof e[a]?d+=e[a]:b&&"undefined"!== typeof b[a]?d+=b[a]:" "!==k&&k.match(" "+a+"-")&&(d=k.match(RegExp(" "+a+"-(\\w+)"))[1]||"");return g.trim(d)};e.formatFloat=function(c,b){if("string"!==typeof c||""===c)return c;var a;c=(b&&b.config?!1!==b.config.usNumberFormat:"undefined"!==typeof b?b:1)?c.replace(/,/g,""):c.replace(/[\s|\.]/g,"").replace(/,/g,".");/^\s*\([.\d]+\)/.test(c)&&(c=c.replace(/^\s*\(/,"-").replace(/\)/,""));a=parseFloat(c);return isNaN(a)?g.trim(c):a};e.isDigit=function(c){return isNaN(c)?/^[\-+(]?\d+[)]?$/.test(c.toString().replace(/[,.'"\s]/g, "")):!0}}});var k=g.tablesorter;g.fn.extend({tablesorter:k.construct});k.addParser({id:"text",is:function(){return!0},format:function(d,v){var p=v.config;d=g.trim(p.ignoreCase?d.toLocaleLowerCase():d);return p.sortLocaleCompare?k.replaceAccents(d):d},type:"text"});k.addParser({id:"currency",is:function(d){return/^\(?\d+[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]|[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]\d+\)?$/.test(d)},format:function(d,g){return k.formatFloat(d.replace(/[^\w,. \-()]/g,""),g)},type:"numeric"}); k.addParser({id:"ipAddress",is:function(d){return/^\d{1,3}[\.]\d{1,3}[\.]\d{1,3}[\.]\d{1,3}$/.test(d)},format:function(d,g){var p,u=d.split("."),q="",t=u.length;for(p=0;p<t;p++)q+=("00"+u[p]).slice(-3);return k.formatFloat(q,g)},type:"numeric"});k.addParser({id:"url",is:function(d){return/^(https?|ftp|file):\/\//.test(d)},format:function(d){return g.trim(d.replace(/(https?|ftp|file):\/\//,""))},type:"text"});k.addParser({id:"isoDate",is:function(d){return/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/.test(d)}, format:function(d,g){return k.formatFloat(""!==d?(new Date(d.replace(/-/g,"/"))).getTime()||"":"",g)},type:"numeric"});k.addParser({id:"percent",is:function(d){return/(\d\s?%|%\s?\d)/.test(d)},format:function(d,g){return k.formatFloat(d.replace(/%/g,""),g)},type:"numeric"});k.addParser({id:"usLongDate",is:function(d){return/^[A-Z]{3,10}\.?\s+\d{1,2},?\s+(\d{4})(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?$/i.test(d)},format:function(d,g){return k.formatFloat((new Date(d.replace(/(\S)([AP]M)$/i,"$1 $2"))).getTime()|| "",g)},type:"numeric"});k.addParser({id:"shortDate",is:function(d){return/^(\d{1,2}|\d{4})[\/\-\,\.\s+]\d{1,2}[\/\-\.\,\s+](\d{1,2}|\d{4})$/.test(d)},format:function(d,g,p,u){p=g.config;var q=p.headerList[u],t=q.shortDateFormat;"undefined"===typeof t&&(t=q.shortDateFormat=k.getData(q,p.headers[u],"dateFormat")||p.dateFormat);d=d.replace(/\s+/g," ").replace(/[\-|\.|\,]/g,"/");"mmddyyyy"===t?d=d.replace(/(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/,"$3/$1/$2"):"ddmmyyyy"===t?d=d.replace(/(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/, "$3/$2/$1"):"yyyymmdd"===t&&(d=d.replace(/(\d{4})[\/\s](\d{1,2})[\/\s](\d{1,2})/,"$1/$2/$3"));return k.formatFloat((new Date(d)).getTime()||"",g)},type:"numeric"});k.addParser({id:"time",is:function(d){return/^(([0-2]?\d:[0-5]\d)|([0-1]?\d:[0-5]\d\s?([AP]M)))$/i.test(d)},format:function(d,g){return k.formatFloat((new Date("2000/01/01 "+d.replace(/(\S)([AP]M)$/i,"$1 $2"))).getTime()||"",g)},type:"numeric"});k.addParser({id:"digit",is:function(d){return k.isDigit(d)},format:function(d,g){return k.formatFloat(d.replace(/[^\w,. \-()]/g, ""),g)},type:"numeric"});k.addParser({id:"metadata",is:function(){return!1},format:function(d,k,p){d=k.config;d=!d.parserMetadataName?"sortValue":d.parserMetadataName;return g(p).metadata()[d]},type:"numeric"});k.addWidget({id:"zebra",format:function(d,v,p){var u,q,t,C,E,D,F=RegExp(v.cssChildRow,"i"),e=g(d).children("tbody:not(."+v.cssInfoBlock+")");v.debug&&(E=new Date);for(d=0;d<e.length;d++)u=g(e[d]),D=u.children("tr").length,1<D&&(t=0,u=u.children("tr:visible"),u.each(function(){q=g(this);F.test(this.className)|| t++;C=0===t%2;q.removeClass(p.zebra[C?1:0]).addClass(p.zebra[C?0:1])}));v.debug&&k.benchmark("Applying Zebra widget",E)},remove:function(d,k){var p,u,q=g(d).children("tbody:not(."+k.cssInfoBlock+")"),t=(k.widgetOptions.zebra||["even","odd"]).join(" ");for(p=0;p<q.length;p++)u=g.tablesorter.processTbody(d,g(q[p]),!0),u.children().removeClass(t),g.tablesorter.processTbody(d,u,!1)}})}(jQuery);
+!function(l){l.extend({tablesorter:new function(){function e(b){"undefined"!==typeof console&&"undefined"!==typeof console.log?console.log(b):alert(b)}function q(b,c){e(b+" ("+((new Date).getTime()-c.getTime())+"ms)")}function k(b,c,a){if(!c)return"";var d=b.config,g=d.textExtraction,m="",m="simple"===g?d.supportsTextContent?c.textContent:l(c).text():"function"===typeof g?g(c,b,a):"object"===typeof g&&g.hasOwnProperty(a)?g[a](c,b,a):d.supportsTextContent?c.textContent:l(c).text();return l.trim(m)}
+function r(b){var c=b.config,a=l(b.tBodies).filter(":not(."+c.cssInfoBlock+")"),d,g,m,h,w,n,p="";if(0===a.length)return c.debug?e("*Empty table!* Not building a parser cache"):"";a=a[0].rows;if(a[0])for(d=[],g=a[0].cells.length,m=0;m<g;m++){h=c.$headers.filter(":not([colspan])");h=h.add(c.$headers.filter('[colspan="1"]')).filter('[data-column="'+m+'"]:last');w=c.headers[m];n=f.getParserById(f.getData(h,w,"sorter"));c.empties[m]=f.getData(h,w,"empty")||c.emptyTo||(c.emptyToBottom?"bottom":"top");c.strings[m]=
+f.getData(h,w,"string")||c.stringTo||"max";if(!n)a:{h=b;w=a;n=-1;for(var q=m,t=void 0,u=f.parsers.length,v=!1,r="",t=!0;""===r&&t;)n++,w[n]?(v=w[n].cells[q],r=k(h,v,q),h.config.debug&&e("Checking if value was empty on row "+n+", column: "+q+": "+r)):t=!1;for(t=1;t<u;t++)if(f.parsers[t].is(r,h,v)){n=f.parsers[t];break a}n=f.parsers[0]}c.debug&&(p+="column:"+m+"; parser:"+n.id+"; string:"+c.strings[m]+"; empty: "+c.empties[m]+"\n");d.push(n)}c.debug&&e(p);return d}function x(b){var c=b.tBodies,a=b.config,
+d,g,m=a.parsers,h,w,n,p,z,t,u,v=[];a.cache={};if(!m)return a.debug?e("*Empty table!* Not building a cache"):"";a.debug&&(u=new Date);a.showProcessing&&f.isProcessing(b,!0);for(p=0;p<c.length;p++)if(a.cache[p]={row:[],normalized:[]},!l(c[p]).hasClass(a.cssInfoBlock)){d=c[p]&&c[p].rows.length||0;g=c[p].rows[0]&&c[p].rows[0].cells.length||0;for(w=0;w<d;++w)if(z=l(c[p].rows[w]),t=[],z.hasClass(a.cssChildRow))a.cache[p].row[a.cache[p].row.length-1]=a.cache[p].row[a.cache[p].row.length-1].add(z);else{a.cache[p].row.push(z);
+for(n=0;n<g;++n)h=k(b,z[0].cells[n],n),h=m[n].format(h,b,z[0].cells[n],n),t.push(h),"numeric"===(m[n].type||"").toLowerCase()&&(v[n]=Math.max(Math.abs(h),v[n]||0));t.push(a.cache[p].normalized.length);a.cache[p].normalized.push(t)}a.cache[p].colMax=v}a.showProcessing&&f.isProcessing(b);a.debug&&q("Building cache for "+d+" rows",u)}function y(b,c){var a=b.config,d=b.tBodies,g=[],m=a.cache,h,e,n,p,z,t,u,v,k,r,s;if(m[0]){a.debug&&(s=new Date);for(v=0;v<d.length;v++)if(h=l(d[v]),!h.hasClass(a.cssInfoBlock)){z=
+f.processTbody(b,h,!0);h=m[v].row;e=m[v].normalized;p=(n=e.length)?e[0].length-1:0;for(t=0;t<n;t++)if(r=e[t][p],g.push(h[r]),!a.appender||!a.removeRows)for(k=h[r].length,u=0;u<k;u++)z.append(h[r][u]);f.processTbody(b,z,!1)}a.appender&&a.appender(b,g);a.debug&&q("Rebuilt table",s);c||f.applyWidget(b);l(b).trigger("sortEnd",b)}}function B(b){var c=[],a={};b=l(b).find("thead:eq(0), tfoot").children("tr");var d,g,m,h,e,f,p,q,t,u;for(d=0;d<b.length;d++)for(e=b[d].cells,g=0;g<e.length;g++){h=e[g];f=h.parentNode.rowIndex;
+p=f+"-"+h.cellIndex;q=h.rowSpan||1;t=h.colSpan||1;"undefined"===typeof c[f]&&(c[f]=[]);for(m=0;m<c[f].length+1;m++)if("undefined"===typeof c[f][m]){u=m;break}a[p]=u;l(h).attr({"data-column":u});for(m=f;m<f+q;m++)for("undefined"===typeof c[m]&&(c[m]=[]),p=c[m],h=u;h<u+t;h++)p[h]="x"}return a}function C(b){var c=B(b),a,d,g,m,h,w,n,p,k=b.config;k.headerList=[];k.headerContent=[];k.debug&&(n=new Date);m=k.cssIcon?'<i class="'+k.cssIcon+'"></i>':"";p=l(b).find(k.selectorHeaders).each(function(b){d=l(this);
+a=k.headers[b];k.headerContent[b]=this.innerHTML;h=k.headerTemplate.replace(/\{content\}/g,this.innerHTML).replace(/\{icon\}/g,m);k.onRenderTemplate&&(g=k.onRenderTemplate.apply(d,[b,h]))&&"string"===typeof g&&(h=g);this.innerHTML='<div class="tablesorter-header-inner">'+h+"</div>";k.onRenderHeader&&k.onRenderHeader.apply(d,[b]);this.column=c[this.parentNode.rowIndex+"-"+this.cellIndex];var e=f.getData(d,a,"sortInitialOrder")||k.sortInitialOrder;this.order=/^d/i.test(e)||1===e?[1,0,2]:[0,1,2];this.count=
+-1;"false"===f.getData(d,a,"sorter")?(this.sortDisabled=!0,d.addClass("sorter-false")):d.removeClass("sorter-false");this.lockedOrder=!1;w=f.getData(d,a,"lockedOrder")||!1;"undefined"!==typeof w&&!1!==w&&(this.order=this.lockedOrder=/^d/i.test(w)||1===w?[1,1,1]:[0,0,0]);d.addClass((this.sortDisabled?"sorter-false ":" ")+k.cssHeader);k.headerList[b]=this;d.parent().addClass(k.cssHeaderRow)});b.config.debug&&(q("Built headers:",n),e(p));return p}function A(b){var c,a,d,g=b.config,m=g.sortList,f=[g.cssAsc,
+g.cssDesc],e=l(b).find("tfoot tr").children().removeClass(f.join(" "));g.$headers.removeClass(f.join(" "));d=m.length;for(c=0;c<d;c++)if(2!==m[c][1]&&(b=g.$headers.not(".sorter-false").filter('[data-column="'+m[c][0]+'"]'+(1===d?":last":"")),b.length))for(a=0;a<b.length;a++)b[a].sortDisabled||(b.eq(a).addClass(f[m[c][1]]),e.length&&e.filter('[data-column="'+m[c][0]+'"]').eq(a).addClass(f[m[c][1]]))}function E(b){if(b.config.widthFixed&&0===l(b).find("colgroup").length){var c=l("<colgroup>"),a=l(b).width();
+l("tr:first td",b.tBodies[0]).each(function(){c.append(l("<col>").css("width",parseInt(1E3*(l(this).width()/a),10)/10+"%"))});l(b).prepend(c)}}function D(b,c){var a,d,g,f=b.config,e=c||f.sortList;f.sortList=[];l.each(e,function(c,b){a=[parseInt(b[0],10),parseInt(b[1],10)];if(g=f.headerList[a[0]])f.sortList.push(a),d=l.inArray(a[1],g.order),g.count=0<=d?d:a[1]%(f.sortReset?3:2)})}function F(b){var c=0,a=b.config,d=a.sortList,g=d.length,f=b.tBodies.length,e,k,n,p,r,t,u,v,s;if(!a.serverSideSorting&&
+a.cache[0]){a.debug&&(e=new Date);for(n=0;n<f;n++)r=a.cache[n].colMax,s=(t=a.cache[n].normalized)&&t[0]?t[0].length-1:0,t.sort(function(f,e){for(k=0;k<g;k++){p=d[k][0];v=d[k][1];u=/n/i.test(a.parsers&&a.parsers[p]?a.parsers[p].type||"":"")?"Numeric":"Text";u+=0===v?"":"Desc";/Numeric/.test(u)&&a.strings[p]&&(c="boolean"===typeof a.string[a.strings[p]]?(0===v?1:-1)*(a.string[a.strings[p]]?-1:1):a.strings[p]?a.string[a.strings[p]]||0:0);var m=l.tablesorter["sort"+u](b,f[p],e[p],p,r[p],c);if(m)return m}return f[s]-
+e[s]});a.debug&&q("Sorting on "+d.toString()+" and dir "+v+" time",e)}}function H(b,c){b.trigger("updateComplete");"function"===typeof c&&c(b[0])}function G(b,c,a){!1!==c?b.trigger("sorton",[b[0].config.sortList,function(){H(b,a)}]):H(b,a)}var f=this;f.version="2.7";f.parsers=[];f.widgets=[];f.defaults={theme:"default",widthFixed:!1,showProcessing:!1,headerTemplate:"{content}",onRenderTemplate:null,onRenderHeader:null,cancelSelection:!0,dateFormat:"mmddyyyy",sortMultiSortKey:"shiftKey",sortResetKey:"ctrlKey",
+usNumberFormat:!0,delayInit:!1,serverSideSorting:!1,headers:{},ignoreCase:!0,sortForce:null,sortList:[],sortAppend:null,sortInitialOrder:"asc",sortLocaleCompare:!1,sortReset:!1,sortRestart:!1,emptyTo:"bottom",stringTo:"max",textExtraction:"simple",textSorter:null,widgets:[],widgetOptions:{zebra:["even","odd"]},initWidgets:!0,initialized:null,tableClass:"tablesorter",cssAsc:"tablesorter-headerAsc",cssChildRow:"tablesorter-childRow",cssDesc:"tablesorter-headerDesc",cssHeader:"tablesorter-header",cssHeaderRow:"tablesorter-headerRow",
+cssIcon:"tablesorter-icon",cssInfoBlock:"tablesorter-infoOnly",cssProcessing:"tablesorter-processing",selectorHeaders:"> thead th, > thead td",selectorSort:"th, td",selectorRemove:".remove-me",debug:!1,headerList:[],empties:{},strings:{},parsers:[]};f.benchmark=q;f.construct=function(b){return this.each(function(){if(!this.tHead||0===this.tBodies.length||!0===this.hasInitialized)return this.config.debug?e("stopping initialization! No thead, tbody or tablesorter has already been initialized"):"";var c=
+l(this),a,d,g,m="",h,q,n,p,z=l.metadata;this.hasInitialized=!1;this.config={};a=l.extend(!0,this.config,f.defaults,b);l.data(this,"tablesorter",a);a.debug&&l.data(this,"startoveralltimer",new Date);a.supportsTextContent="x"===l("<span>x</span>")[0].textContent;a.supportsDataObject=1.4<=parseFloat(l.fn.jquery);a.string={max:1,min:-1,"max+":1,"max-":-1,zero:0,none:0,"null":0,top:!0,bottom:!1};/tablesorter\-/.test(c.attr("class"))||(m=""!==a.theme?" tablesorter-"+a.theme:"");c.addClass(a.tableClass+
+m);a.$headers=C(this);a.parsers=r(this);a.delayInit||x(this);a.$headers.find("*").andSelf().filter(a.selectorSort).unbind("mousedown.tablesorter mouseup.tablesorter").bind("mousedown.tablesorter mouseup.tablesorter",function(b,e){var k=(this.tagName.match("TH|TD")?l(this):l(this).parents("th, td").filter(":last"))[0];if(1!==(b.which||b.button))return!1;if("mousedown"===b.type)return p=(new Date).getTime(),"INPUT"===b.target.tagName?"":!a.cancelSelection;if(!0!==e&&250<(new Date).getTime()-p)return!1;
+a.delayInit&&!a.cache&&x(c[0]);if(!k.sortDisabled){c.trigger("sortStart",c[0]);m=!b[a.sortMultiSortKey];k.count=b[a.sortResetKey]?2:(k.count+1)%(a.sortReset?3:2);a.sortRestart&&(d=k,a.$headers.each(function(){this===d||!m&&l(this).is("."+a.cssDesc+",."+a.cssAsc)||(this.count=-1)}));d=k.column;if(m){a.sortList=[];if(null!==a.sortForce)for(h=a.sortForce,g=0;g<h.length;g++)h[g][0]!==d&&a.sortList.push(h[g]);n=k.order[k.count];if(2>n&&(a.sortList.push([d,n]),1<k.colSpan))for(g=1;g<k.colSpan;g++)a.sortList.push([d+
+g,n])}else if(a.sortAppend&&1<a.sortList.length&&f.isValueInArray(a.sortAppend[0][0],a.sortList)&&a.sortList.pop(),f.isValueInArray(d,a.sortList))for(g=0;g<a.sortList.length;g++)q=a.sortList[g],n=a.headerList[q[0]],q[0]===d&&(q[1]=n.order[n.count],2===q[1]&&(a.sortList.splice(g,1),n.count=-1));else if(n=k.order[k.count],2>n&&(a.sortList.push([d,n]),1<k.colSpan))for(g=1;g<k.colSpan;g++)a.sortList.push([d+g,n]);if(null!==a.sortAppend)for(h=a.sortAppend,g=0;g<h.length;g++)h[g][0]!==d&&a.sortList.push(h[g]);
+c.trigger("sortBegin",c[0]);setTimeout(function(){A(c[0]);F(c[0]);y(c[0])},1)}});a.cancelSelection&&a.$headers.each(function(){this.onselectstart=function(){return!1}});c.unbind("sortReset update updateCell addRows sorton appendCache applyWidgetId applyWidgets refreshWidgets destroy mouseup mouseleave").bind("sortReset",function(){a.sortList=[];A(this);F(this);y(this)}).bind("update",function(b,d,g){l(a.selectorRemove,this).remove();a.parsers=r(this);x(this);G(c,d,g)}).bind("updateCell",function(b,
+d,g,f){var e,m,h;e=l(this).find("tbody");b=e.index(l(d).parents("tbody").filter(":last"));var q=l(d).parents("tr").filter(":last");d=l(d)[0];e.length&&0<=b&&(m=e.eq(b).find("tr").index(q),h=d.cellIndex,e=this.config.cache[b].normalized[m].length-1,this.config.cache[b].row[this.config.cache[b].normalized[m][e]]=q,this.config.cache[b].normalized[m][h]=a.parsers[h].format(k(this,d,h),this,d,h),G(c,g,f))}).bind("addRows",function(b,d,e,f){var m=d.filter("tr").length,h=[],q=d[0].cells.length,n=l(this).find("tbody").index(d.closest("tbody"));
+a.parsers||(a.parsers=r(this));for(b=0;b<m;b++){for(g=0;g<q;g++)h[g]=a.parsers[g].format(k(this,d[b].cells[g],g),this,d[b].cells[g],g);h.push(a.cache[n].row.length);a.cache[n].row.push([d[b]]);a.cache[n].normalized.push(h);h=[]}G(c,e,f)}).bind("sorton",function(a,b,c,d){l(this).trigger("sortStart",this);D(this,b);A(this);F(this);y(this,d);"function"===typeof c&&c(this)}).bind("appendCache",function(a,b,c){y(this,c);"function"===typeof b&&b(this)}).bind("applyWidgetId",function(b,c){f.getWidgetById(c).format(this,
+a,a.widgetOptions)}).bind("applyWidgets",function(a,b){f.applyWidget(this,b)}).bind("refreshWidgets",function(a,b,c){f.refreshWidgets(this,b,c)}).bind("destroy",function(a,b,c){f.destroy(this,b,c)});a.supportsDataObject&&"undefined"!==typeof c.data().sortlist?a.sortList=c.data().sortlist:z&&(c.metadata()&&c.metadata().sortlist)&&(a.sortList=c.metadata().sortlist);f.applyWidget(this,!0);0<a.sortList.length?c.trigger("sorton",[a.sortList,{},!a.initWidgets]):a.initWidgets&&f.applyWidget(this);E(this);
+a.showProcessing&&c.unbind("sortBegin sortEnd").bind("sortBegin sortEnd",function(a){f.isProcessing(c[0],"sortBegin"===a.type)});this.hasInitialized=!0;a.debug&&f.benchmark("Overall initialization time",l.data(this,"startoveralltimer"));c.trigger("tablesorter-initialized",this);"function"===typeof a.initialized&&a.initialized(this)})};f.isProcessing=function(b,c,a){var d=b.config;b=a||l(b).find("."+d.cssHeader);c?(0<d.sortList.length&&(b=b.filter(function(){return this.sortDisabled?!1:f.isValueInArray(parseFloat(l(this).attr("data-column")),
+d.sortList)})),b.addClass(d.cssProcessing)):b.removeClass(d.cssProcessing)};f.processTbody=function(b,c,a){if(a)return c.before('<span class="tablesorter-savemyplace"/>'),b=l.fn.detach?c.detach():c.remove();b=l(b).find("span.tablesorter-savemyplace");c.insertAfter(b);b.remove()};f.clearTableBody=function(b){l(b.tBodies).filter(":not(."+b.config.cssInfoBlock+")").empty()};f.destroy=function(b,c,a){var d=l(b),g=b.config,e=d.find("thead:first");b.hasInitialized=!1;e.find("tr:not(."+g.cssHeaderRow+")").remove();
+e.find(".tablesorter-resizer").remove();f.refreshWidgets(b,!0,!0);d.removeData("tablesorter").unbind("sortReset update updateCell addRows sorton appendCache applyWidgetId applyWidgets refreshWidgets destroy mouseup mouseleave").find("."+g.cssHeader).unbind("click mousedown mousemove mouseup").removeClass(g.cssHeader+" "+g.cssAsc+" "+g.cssDesc).find(".tablesorter-header-inner").each(function(){""!==g.cssIcon&&l(this).find("."+g.cssIcon).remove();l(this).replaceWith(l(this).contents())});!1!==c&&d.removeClass(g.tableClass);
+"function"===typeof a&&a(b)};f.regex=[/(^-?[0-9]+(\.?[0-9]*)[df]?e?[0-9]?$|^0x[0-9a-f]+$|[0-9]+)/gi,/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,/^0x[0-9a-f]+$/i];f.sortText=function(b,c,a,d){if(c===a)return 0;var g=b.config,e=g.string[g.empties[d]||g.emptyTo],h=f.regex;if(""===c&&0!==e)return"boolean"===typeof e?e?-1:1:-e||-1;if(""===a&&0!==e)return"boolean"===typeof e?e?1:-1:e||1;if("function"===typeof g.textSorter)return g.textSorter(c,
+a,b,d);b=c.replace(h[0],"\\0$1\\0").replace(/\\0$/,"").replace(/^\\0/,"").split("\\0");d=a.replace(h[0],"\\0$1\\0").replace(/\\0$/,"").replace(/^\\0/,"").split("\\0");c=parseInt(c.match(h[2]),16)||1!==b.length&&c.match(h[1])&&Date.parse(c);if(a=parseInt(a.match(h[2]),16)||c&&a.match(h[1])&&Date.parse(a)||null){if(c<a)return-1;if(c>a)return 1}g=Math.max(b.length,d.length);for(c=0;c<g;c++){a=isNaN(b[c])?b[c]||0:parseFloat(b[c])||0;h=isNaN(d[c])?d[c]||0:parseFloat(d[c])||0;if(isNaN(a)!==isNaN(h))return isNaN(a)?
+1:-1;typeof a!==typeof h&&(a+="",h+="");if(a<h)return-1;if(a>h)return 1}return 0};f.sortTextDesc=function(b,c,a,d){if(c===a)return 0;var e=b.config,m=e.string[e.empties[d]||e.emptyTo];return""===c&&0!==m?"boolean"===typeof m?m?-1:1:m||1:""===a&&0!==m?"boolean"===typeof m?m?1:-1:-m||-1:"function"===typeof e.textSorter?e.textSorter(a,c,b,d):f.sortText(b,a,c)};f.getTextValue=function(b,c,a){if(c){var d=b.length,e=c+a;for(c=0;c<d;c++)e+=b.charCodeAt(c);return a*e}return 0};f.sortNumeric=function(b,c,
+a,d,e,m){if(c===a)return 0;b=b.config;d=b.string[b.empties[d]||b.emptyTo];if(""===c&&0!==d)return"boolean"===typeof d?d?-1:1:-d||-1;if(""===a&&0!==d)return"boolean"===typeof d?d?1:-1:d||1;isNaN(c)&&(c=f.getTextValue(c,e,m));isNaN(a)&&(a=f.getTextValue(a,e,m));return c-a};f.sortNumericDesc=function(b,c,a,d,e,m){if(c===a)return 0;b=b.config;d=b.string[b.empties[d]||b.emptyTo];if(""===c&&0!==d)return"boolean"===typeof d?d?-1:1:d||1;if(""===a&&0!==d)return"boolean"===typeof d?d?1:-1:-d||-1;isNaN(c)&&
+(c=f.getTextValue(c,e,m));isNaN(a)&&(a=f.getTextValue(a,e,m));return a-c};f.characterEquivalents={a:"\u00e1\u00e0\u00e2\u00e3\u00e4\u0105\u00e5",A:"\u00c1\u00c0\u00c2\u00c3\u00c4\u0104\u00c5",c:"\u00e7\u0107\u010d",C:"\u00c7\u0106\u010c",e:"\u00e9\u00e8\u00ea\u00eb\u011b\u0119",E:"\u00c9\u00c8\u00ca\u00cb\u011a\u0118",i:"\u00ed\u00ec\u0130\u00ee\u00ef\u0131",I:"\u00cd\u00cc\u0130\u00ce\u00cf",o:"\u00f3\u00f2\u00f4\u00f5\u00f6",O:"\u00d3\u00d2\u00d4\u00d5\u00d6",ss:"\u00df",SS:"\u1e9e",u:"\u00fa\u00f9\u00fb\u00fc\u016f",
+U:"\u00da\u00d9\u00db\u00dc\u016e"};f.replaceAccents=function(b){var c,a="[",d=f.characterEquivalents;if(!f.characterRegex){f.characterRegexArray={};for(c in d)"string"===typeof c&&(a+=d[c],f.characterRegexArray[c]=RegExp("["+d[c]+"]","g"));f.characterRegex=RegExp(a+"]")}if(f.characterRegex.test(b))for(c in d)"string"===typeof c&&(b=b.replace(f.characterRegexArray[c],c));return b};f.isValueInArray=function(b,c){var a,d=c.length;for(a=0;a<d;a++)if(c[a][0]===b)return!0;return!1};f.addParser=function(b){var c,
+a=f.parsers.length,d=!0;for(c=0;c<a;c++)f.parsers[c].id.toLowerCase()===b.id.toLowerCase()&&(d=!1);d&&f.parsers.push(b)};f.getParserById=function(b){var c,a=f.parsers.length;for(c=0;c<a;c++)if(f.parsers[c].id.toLowerCase()===b.toString().toLowerCase())return f.parsers[c];return!1};f.addWidget=function(b){f.widgets.push(b)};f.getWidgetById=function(b){var c,a,d=f.widgets.length;for(c=0;c<d;c++)if((a=f.widgets[c])&&a.hasOwnProperty("id")&&a.id.toLowerCase()===b.toLowerCase())return a};f.applyWidget=
+function(b,c){var a=b.config,d=a.widgetOptions,e=a.widgets.sort().reverse(),m,h,k,n=e.length;h=l.inArray("zebra",a.widgets);0<=h&&(a.widgets.splice(h,1),a.widgets.push("zebra"));a.debug&&(m=new Date);for(h=0;h<n;h++)(k=f.getWidgetById(e[h]))&&(!0===c&&k.hasOwnProperty("init")?k.init(b,k,a,d):!c&&k.hasOwnProperty("format")&&k.format(b,a,d));a.debug&&q("Completed "+(!0===c?"initializing":"applying")+" widgets",m)};f.refreshWidgets=function(b,c,a){var d,g=b.config,m=g.widgets,h=f.widgets,k=h.length;
+for(d=0;d<k;d++)h[d]&&(h[d].id&&(c||0>l.inArray(h[d].id,m)))&&(g.debug&&e("Refeshing widgets: Removing "+h[d].id),h[d].hasOwnProperty("remove")&&h[d].remove(b,g,g.widgetOptions));!0!==a&&f.applyWidget(b,c)};f.getData=function(b,c,a){var d="";b=l(b);var e,f;if(!b.length)return"";e=l.metadata?b.metadata():!1;f=" "+(b.attr("class")||"");"undefined"!==typeof b.data(a)||"undefined"!==typeof b.data(a.toLowerCase())?d+=b.data(a)||b.data(a.toLowerCase()):e&&"undefined"!==typeof e[a]?d+=e[a]:c&&"undefined"!==
+typeof c[a]?d+=c[a]:" "!==f&&f.match(" "+a+"-")&&(d=f.match(RegExp(" "+a+"-(\\w+)"))[1]||"");return l.trim(d)};f.formatFloat=function(b,c){if("string"!==typeof b||""===b)return b;var a;b=(c&&c.config?!1!==c.config.usNumberFormat:"undefined"!==typeof c?c:1)?b.replace(/,/g,""):b.replace(/[\s|\.]/g,"").replace(/,/g,".");/^\s*\([.\d]+\)/.test(b)&&(b=b.replace(/^\s*\(/,"-").replace(/\)/,""));a=parseFloat(b);return isNaN(a)?l.trim(b):a};f.isDigit=function(b){return isNaN(b)?/^[\-+(]?\d+[)]?$/.test(b.toString().replace(/[,.'"\s]/g,
+"")):!0}}});var k=l.tablesorter;l.fn.extend({tablesorter:k.construct});k.addParser({id:"text",is:function(e,k,l){return!0},format:function(e,q,s,r){q=q.config;e=l.trim(q.ignoreCase?e.toLocaleLowerCase():e);return q.sortLocaleCompare?k.replaceAccents(e):e},type:"text"});k.addParser({id:"currency",is:function(e){return/^\(?\d+[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]|[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]\d+\)?$/.test(e)},format:function(e,l){return k.formatFloat(e.replace(/[^\w,. \-()]/g,""),l)},type:"numeric"});
+k.addParser({id:"ipAddress",is:function(e){return/^\d{1,3}[\.]\d{1,3}[\.]\d{1,3}[\.]\d{1,3}$/.test(e)},format:function(e,l){var s,r=e.split("."),x="",y=r.length;for(s=0;s<y;s++)x+=("00"+r[s]).slice(-3);return k.formatFloat(x,l)},type:"numeric"});k.addParser({id:"url",is:function(e){return/^(https?|ftp|file):\/\//.test(e)},format:function(e){return l.trim(e.replace(/(https?|ftp|file):\/\//,""))},type:"text"});k.addParser({id:"isoDate",is:function(e){return/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/.test(e)},
+format:function(e,l){return k.formatFloat(""!==e?(new Date(e.replace(/-/g,"/"))).getTime()||"":"",l)},type:"numeric"});k.addParser({id:"percent",is:function(e){return/(\d\s?%|%\s?\d)/.test(e)},format:function(e,l){return k.formatFloat(e.replace(/%/g,""),l)},type:"numeric"});k.addParser({id:"usLongDate",is:function(e){return/^[A-Z]{3,10}\.?\s+\d{1,2},?\s+(\d{4})(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?$/i.test(e)},format:function(e,l){return k.formatFloat((new Date(e.replace(/(\S)([AP]M)$/i,"$1 $2"))).getTime()||
+"",l)},type:"numeric"});k.addParser({id:"shortDate",is:function(e){return/^(\d{1,2}|\d{4})[\/\-\,\.\s+]\d{1,2}[\/\-\.\,\s+](\d{1,2}|\d{4})$/.test(e)},format:function(e,l,s,r){s=l.config;var x=s.headerList[r],y=x.shortDateFormat;"undefined"===typeof y&&(y=x.shortDateFormat=k.getData(x,s.headers[r],"dateFormat")||s.dateFormat);e=e.replace(/\s+/g," ").replace(/[\-|\.|\,]/g,"/");"mmddyyyy"===y?e=e.replace(/(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/,"$3/$1/$2"):"ddmmyyyy"===y?e=e.replace(/(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/,
+"$3/$2/$1"):"yyyymmdd"===y&&(e=e.replace(/(\d{4})[\/\s](\d{1,2})[\/\s](\d{1,2})/,"$1/$2/$3"));return k.formatFloat((new Date(e)).getTime()||"",l)},type:"numeric"});k.addParser({id:"time",is:function(e){return/^(([0-2]?\d:[0-5]\d)|([0-1]?\d:[0-5]\d\s?([AP]M)))$/i.test(e)},format:function(e,l){return k.formatFloat((new Date("2000/01/01 "+e.replace(/(\S)([AP]M)$/i,"$1 $2"))).getTime()||"",l)},type:"numeric"});k.addParser({id:"digit",is:function(e){return k.isDigit(e)},format:function(e,l){return k.formatFloat(e.replace(/[^\w,. \-()]/g,
+""),l)},type:"numeric"});k.addParser({id:"metadata",is:function(e){return!1},format:function(e,k,s){e=k.config;e=e.parserMetadataName?e.parserMetadataName:"sortValue";return l(s).metadata()[e]},type:"numeric"});k.addWidget({id:"zebra",format:function(e,q,s){var r,x,y,B,C,A,E=RegExp(q.cssChildRow,"i"),D=l(e).children("tbody:not(."+q.cssInfoBlock+")");q.debug&&(C=new Date);for(e=0;e<D.length;e++)r=l(D[e]),A=r.children("tr").length,1<A&&(y=0,r=r.children("tr:visible"),r.each(function(){x=l(this);E.test(this.className)||
+y++;B=0===y%2;x.removeClass(s.zebra[B?1:0]).addClass(s.zebra[B?0:1])}));q.debug&&k.benchmark("Applying Zebra widget",C)},remove:function(e,k,s){var r;s=l(e).children("tbody:not(."+k.cssInfoBlock+")");var x=(k.widgetOptions.zebra||["even","odd"]).join(" ");for(k=0;k<s.length;k++)r=l.tablesorter.processTbody(e,l(s[k]),!0),r.children().removeClass(x),l.tablesorter.processTbody(e,r,!1)}})}(jQuery);