parent
9d01843142
commit
fbc05c74e8
@ -0,0 +1,51 @@
|
|||||||
|
/**
|
||||||
|
* This plug-in provides the ability to sort columns that contains time
|
||||||
|
* information in the most common formats used. It will automatically detect
|
||||||
|
* those date types.
|
||||||
|
*
|
||||||
|
* @name Time (dd/mm/YY)
|
||||||
|
* @summary Sort Times in the formats: `hh:mm, hh:mm:ss, hh:mm tt, hh:mm:ss tt`
|
||||||
|
* e.g. '22:50, 22:50:40, 10:50 pm, 10:50:40 pm'
|
||||||
|
* am and pm are not case sensitive. white space is not compulsory
|
||||||
|
* @author David Stoneham
|
||||||
|
*
|
||||||
|
* @example
|
||||||
|
* $('#example').dataTable( {
|
||||||
|
* columnDefs: [
|
||||||
|
* { type: 'time-uni', targets: 0 }
|
||||||
|
* ]
|
||||||
|
* } );
|
||||||
|
*/
|
||||||
|
|
||||||
|
jQuery.extend(jQuery.fn.dataTableExt.oSort, {
|
||||||
|
"time-uni-pre": function (a) {
|
||||||
|
var uniTime;
|
||||||
|
|
||||||
|
if (a.toLowerCase().indexOf("am") > -1 || (a.toLowerCase().indexOf("pm") > -1 && Number(a.split(":")[0]) === 12)) {
|
||||||
|
uniTime = a.toLowerCase().split("pm")[0].split("am")[0];
|
||||||
|
while (uniTime.indexOf(":") > -1) {
|
||||||
|
uniTime = uniTime.replace(":", "");
|
||||||
|
}
|
||||||
|
} else if (a.toLowerCase().indexOf("pm") > -1 || (a.toLowerCase().indexOf("am") > -1 && Number(a.split(":")[0]) === 12)) {
|
||||||
|
uniTime = Number(a.split(":")[0]) + 12;
|
||||||
|
var leftTime = a.toLowerCase().split("pm")[0].split("am")[0].split(":");
|
||||||
|
for (var i = 1; i < leftTime.length; i++) {
|
||||||
|
uniTime = uniTime + leftTime[i].trim().toString();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
uniTime = a.replace(":", "");
|
||||||
|
while (uniTime.indexOf(":") > -1) {
|
||||||
|
uniTime = uniTime.replace(":", "");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Number(uniTime);
|
||||||
|
},
|
||||||
|
|
||||||
|
"time-uni-asc": function (a, b) {
|
||||||
|
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
|
||||||
|
},
|
||||||
|
|
||||||
|
"time-uni-desc": function (a, b) {
|
||||||
|
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
|
||||||
|
}
|
||||||
|
});
|
Loading…
Reference in new issue