Czech

Sort locale aware sorting for Czech.

  • Author:

This plug-in provides locale aware sorting for Czech.

Plug-in code

$.extend( $.fn.dataTableExt.oSort, {
   "czech-pre": function ( a ) {
        var special_letters = {
            "A": "Aa", "a": "aa", "Á": "Ab", "á": "ab",
            "C": "Ca", "c": "ca", "Č": "Cb", "č": "cb",
            "D": "Da", "d": "da", "Ď": "db", "ď": "db",
            "E": "Ea", "e": "ea", "É": "eb", "é": "eb", "Ě": "Ec", "ě": "ec",
            "I": "Ia", "i": "ia", "Í": "Ib", "í": "ib",
            "N": "Na", "n": "na", "Ň": "Nb", "ň": "nb",
            "O": "Oa", "o": "oa", "Ó": "Ob", "ó": "ob",
            "R": "Ra", "r": "ra", "Ř": "Rb", "ř": "rb",
            "S": "Sa", "s": "sa", "Š": "Sb", "š": "šb",
            "T": "Ta", "t": "ta", "Ť": "Tb", "ť": "tb",
            "U": "Ua", "u": "ua", "Ú": "Ub", "ú": "ub", "Ů": "Uc", "ů": "uc",
            "Y": "Ya", "y": "ya", "Ý": "Yb", "ý": "yb",
            "Z": "Za", "z": "za", "Ž": "Zb", "ž": "zb"
        };
        for (var val in special_letters)
            a = a.split(val).join(special_letters[val]).toLowerCase();
        return a;
    },

    "czech-asc": function ( a, b ) {
        return ((a < b) ? -1 : ((a > b) ? 1 : 0));
    },

    "czech-desc": function ( a, b ) {
        return ((a < b) ? 1 : ((a > b) ? -1 : 0));
    }
} );

CDN

This plug-in is available on the DataTables CDN:

JS

Note that if you are using multiple plug-ins, it is beneficial in terms of performance to combine the plug-ins into a single file and host it on your own server, rather than making multiple requests to the DataTables CDN.

Version control

If you have any ideas for how this plug-in can be improved, or spot anything that is in error, it is available on GitHub and pull requests are very welcome!

Example

$('#example').dataTable( {
     columnDefs: [
       { type: 'czech', targets: 0 }
     ]
  } );