[dev] [commit] r1069 - phplib wwwbase/js

automailer at dexonline.ro automailer at dexonline.ro
Mon Jan 27 12:50:38 EET 2014


Author: cata
Date: Mon Jan 27 12:50:38 2014
New Revision: 1069

Log:
Better sorting of non-Romanian characters in the JS tablesorter.

Modified:
   phplib/SmartyWrap.php
   wwwbase/js/tablesorter.dev.js

Modified: phplib/SmartyWrap.php
==============================================================================
--- phplib/SmartyWrap.php	Tue Jan 21 19:20:10 2014	(r1068)
+++ phplib/SmartyWrap.php	Mon Jan 27 12:50:38 2014	(r1069)
@@ -189,7 +189,7 @@
       case 'jqTableDnd':       self::$jsFiles[6] = 'jquery.tablednd.0.7.min.js?v=1'; break;
       case 'tablesorter':
         self::$jsFiles[7] = 'jquery.tablesorter.min.js?v=4';
-        self::$jsFiles[8] = 'tablesorter.dev.js?v=2';
+        self::$jsFiles[8] = 'tablesorter.dev.js?v=3';
         break;
       case 'pager':            self::$jsFiles[9] = 'jquery.tablesorter.pager.js'; break;
       case 'elfinder':         self::$jsFiles[10] = 'elfinder.min.js?v=1'; break; 

Modified: wwwbase/js/tablesorter.dev.js
==============================================================================
--- wwwbase/js/tablesorter.dev.js	Tue Jan 21 19:20:10 2014	(r1068)
+++ wwwbase/js/tablesorter.dev.js	Mon Jan 27 12:50:38 2014	(r1069)
@@ -1,6 +1,7 @@
 /* Functions on top of the jQuery tablesorter plugin */
 
 var order = 'aăâbcdefghiîjklmnopqrsștțuvwxyz';
+var equiv = [ 'åàáäçêèéìíïôòóöûùúü', 'aaaaceeeiiioooouuuu' ];
 
 /* Sortable tables imported from MediaWiki have the "sortable" class. Make them sortable here too. */
 function tablesorterMediaWikiInit() {
@@ -26,7 +27,15 @@
   var result = '';
   for (var i = 0; i < s.length; i++) {
     var c = s.charAt(i);
-    var pos = order.indexOf(c);
+
+    // Canonicalize some characters: 'é' is the same as 'e' etc.
+    var pos = equiv[0].indexOf(c);
+    if (pos != -1) {
+      c = equiv[1].charAt(pos);
+    }
+
+    // Now look it up: 'ă' is NOT the same as 'a' etc.
+    pos = order.indexOf(c);
     if (pos != -1) {
       result += String.fromCharCode(pos + 60);
     }


More information about the Dev mailing list