diff DataTables-1.9.4/media/src/ext/ext.sorting.js @ 0:ac5f9272033b draft

first upload
author saskia-hiltemann
date Tue, 01 Jul 2014 11:42:23 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/DataTables-1.9.4/media/src/ext/ext.sorting.js	Tue Jul 01 11:42:23 2014 -0400
@@ -0,0 +1,86 @@
+
+$.extend( DataTable.ext.oSort, {
+	/*
+	 * text sorting
+	 */
+	"string-pre": function ( a )
+	{
+		if ( typeof a != 'string' ) {
+			a = (a !== null && a.toString) ? a.toString() : '';
+		}
+		return a.toLowerCase();
+	},
+
+	"string-asc": function ( x, y )
+	{
+		return ((x < y) ? -1 : ((x > y) ? 1 : 0));
+	},
+	
+	"string-desc": function ( x, y )
+	{
+		return ((x < y) ? 1 : ((x > y) ? -1 : 0));
+	},
+	
+	
+	/*
+	 * html sorting (ignore html tags)
+	 */
+	"html-pre": function ( a )
+	{
+		return a.replace( /<.*?>/g, "" ).toLowerCase();
+	},
+	
+	"html-asc": function ( x, y )
+	{
+		return ((x < y) ? -1 : ((x > y) ? 1 : 0));
+	},
+	
+	"html-desc": function ( x, y )
+	{
+		return ((x < y) ? 1 : ((x > y) ? -1 : 0));
+	},
+	
+	
+	/*
+	 * date sorting
+	 */
+	"date-pre": function ( a )
+	{
+		var x = Date.parse( a );
+		
+		if ( isNaN(x) || x==="" )
+		{
+			x = Date.parse( "01/01/1970 00:00:00" );
+		}
+		return x;
+	},
+
+	"date-asc": function ( x, y )
+	{
+		return x - y;
+	},
+	
+	"date-desc": function ( x, y )
+	{
+		return y - x;
+	},
+	
+	
+	/*
+	 * numerical sorting
+	 */
+	"numeric-pre": function ( a )
+	{
+		return (a=="-" || a==="") ? 0 : a*1;
+	},
+
+	"numeric-asc": function ( x, y )
+	{
+		return x - y;
+	},
+	
+	"numeric-desc": function ( x, y )
+	{
+		return y - x;
+	}
+} );