tablesorter/dist/js/parsers/parser-date-range.min.js

18 lines
1.8 KiB
JavaScript
Raw Normal View History

/*! Parser: date ranges - updated 2/23/2015 (v2.21.0) */
2015-10-31 15:08:21 +00:00
/* Include the 'widget-filter-type-insideRange.js' to filter ranges */
/*jshint jquery:true */
2015-02-24 07:23:01 +00:00
!function(a){"use strict";var b={mdy:/(\d{1,2}[-\s]\d{1,2}[-\s]\d{4}(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?)/gi,dmy:/(\d{1,2}[-\s]\d{1,2}[-\s]\d{4}(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?)/gi,dmyreplace:/(\d{1,2})[-\s](\d{1,2})[-\s](\d{4})/,ymd:/(\d{4}[-\s]\d{1,2}[-\s]\d{1,2}(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?)/gi,ymdreplace:/(\d{4})[-\s](\d{1,2})[-\s](\d{1,2})/};/*! date-range MMDDYYYY */
2015-10-31 15:08:21 +00:00
/* (2/15/2000 - 5/18/2000) */
a.tablesorter.addParser({id:"date-range-mdy",is:function(){return!1},format:function(a){var c,d,e,f,g=[];
// work on dates, even if there is no range
if(d=a.replace(/\s+/g," ").replace(/[\/\-.,]/g,"-").match(b.mdy),f=d&&d.length){for(e=0;f>e;e++)c=new Date(d[e]),g.push(c instanceof Date&&isFinite(c)?c.getTime():d[e]);
// sort from min to max
return g.sort().join(" - ")}return a},type:"text"}),/*! date-range DDMMYYYY */
/* (15/2/2000 - 18/5/2000) */
a.tablesorter.addParser({id:"date-range-dmy",is:function(){return!1},format:function(a){var c,d,e,f,g=[];if(d=a.replace(/\s+/g," ").replace(/[\/\-.,]/g,"-").match(b.dmy),f=d&&d.length){for(e=0;f>e;e++)c=new Date((""+d[e]).replace(b.dmyreplace,"$2/$1/$3")),g.push(c instanceof Date&&isFinite(c)?c.getTime():d[e]);
// sort from min to max
return g.sort().join(" - ")}return a},type:"text"}),/*! date-range DDMMYYYY */
/* (2000/2/15 - 2000/5/18) */
a.tablesorter.addParser({id:"date-range-ymd",is:function(){return!1},format:function(a){var c,d,e,f,g=[];if(d=a.replace(/\s+/g," ").replace(/[\/\-.,]/g,"-").match(b.ymd),f=d&&d.length){for(e=0;f>e;e++)c=new Date((""+d[e]).replace(b.ymdreplace,"$2/$3/$1")),g.push(c instanceof Date&&isFinite(c)?c.getTime():d[e]);
// sort from min to max
return g.sort().join(" - ")}return a},type:"text"})}(jQuery);