[jQuery] tablesorter plugin - filesize support

[jQuery] tablesorter plugin - filesize support


Hey all,
Just thought I'd give back to the community and offer up a simple
addition to the great tablesorter plugin by Christian Bach (http://
motherrussia.polyester.se).
I needed a simple sorter based on filesize, and it didn't quite work
with the generic sorter. Thanks to the great structure of his code,
it was a simple task.. easy as:
<code>
    $.tableSorter.parsers.filesize = {
     id: 'filesize',
     is: function(s) {
     return s.match( new RegExp( /[0-9]+(\.[0-9]+)?\ (KB|B|GB|MB|
TB)/ ) );
     },
     format: function(s) {
     var suf = s.match( new RegExp( /(KB|B|GB|MB|TB)$/ ) )[1];
     var num = parseFloat( s.match( new RegExp( /^[0-9]+(\.
[0-9]+)?/ ) )[0] );
     switch( suf ) {
     case 'B':
     return num;
     case 'KB':
     return num * 1024;
     case 'MB':
     return num * 1024 * 1024;
     case 'GB':
     return num * 1024 * 1024 * 1024;
     case 'TB':
     return num * 1024 * 1024 * 1024 * 1024;
     }
     },
     sorter: $.tableSorter.sorters.numeric
    };
/* dont forget to add it to the collection */
    $.tableSorter.analyzer.add($.tableSorter.parsers.filesize);
</code>