2 * Ext JS Library 2.2.1
\r
3 * Copyright(c) 2006-2009, Ext JS, LLC.
\r
4 * licensing@extjs.com
\r
6 * http://extjs.com/license
\r
11 * @class Ext.data.SortTypes
\r
13 * Defines the default sorting (casting?) comparison functions used when sorting data.
\r
15 Ext.data.SortTypes = {
\r
17 * Default sort that does nothing
\r
18 * @param {Mixed} s The value being converted
\r
19 * @return {Mixed} The comparison value
\r
26 * The regular expression used to strip tags
\r
30 stripTagsRE : /<\/?[^>]+>/gi,
\r
33 * Strips all HTML tags to sort on text only
\r
34 * @param {Mixed} s The value being converted
\r
35 * @return {String} The comparison value
\r
37 asText : function(s){
\r
38 return String(s).replace(this.stripTagsRE, "");
\r
42 * Strips all HTML tags to sort on text only - Case insensitive
\r
43 * @param {Mixed} s The value being converted
\r
44 * @return {String} The comparison value
\r
46 asUCText : function(s){
\r
47 return String(s).toUpperCase().replace(this.stripTagsRE, "");
\r
51 * Case insensitive string
\r
52 * @param {Mixed} s The value being converted
\r
53 * @return {String} The comparison value
\r
55 asUCString : function(s) {
\r
56 return String(s).toUpperCase();
\r
61 * @param {Mixed} s The value being converted
\r
62 * @return {Number} The comparison value
\r
64 asDate : function(s) {
\r
71 return Date.parse(String(s));
\r
76 * @param {Mixed} s The value being converted
\r
77 * @return {Float} The comparison value
\r
79 asFloat : function(s) {
\r
80 var val = parseFloat(String(s).replace(/,/g, ""));
\r
81 if(isNaN(val)) val = 0;
\r
87 * @param {Mixed} s The value being converted
\r
88 * @return {Number} The comparison value
\r
90 asInt : function(s) {
\r
91 var val = parseInt(String(s).replace(/,/g, ""));
\r
92 if(isNaN(val)) val = 0;
\r