/*
######################################################
#
# CHARACTER TRANSLATION
#
# Author:   Ulrich Wisser
#
# Copyright: 2005 Relevant Traffic AB
#
# $LastChangedBy: ulrich $
#
# $LastChangedDate: 2006-03-28 14:08:05 +0200 (ti, 28 mar 2006) $
#
#
# $Id: rt-tracking.js 454 2006-03-28 12:08:05Z ulrich $
######################################################
*/

function tr(text) {
    var rotated = "";
    for (var i = 0; i < text.length; i++) {
        /*
        tr/A-Z0-9a-z/5-9a-zA-Z0-4/

        character codes
           0-9   48 ..  57
           A-Z   65 ..  90
           a-z   97 .. 122

        translation
           A-E    5-9     65.. 69    53.. 57
           F-Z    a-u     70.. 90    97..117
           0-4    v-z     48.. 52   118..122
           5-9    A-E     53.. 57    65.. 69
           a-u    F-Z     97..117    70.. 90
           v-z    0-4    118..122    48.. 52
        */
        var c = text.charCodeAt(i);
        if      (c >=  65 && c <=  69) {  c = c - 12 }
        else if (c >=  70 && c <=  90) {  c = c + 27 }
        else if (c >=  48 && c <=  52) {  c = c + 70 }
        else if (c >=  53 && c <=  57) {  c = c + 12 }
        else if (c >=  97 && c <= 117) {  c = c - 27 }
        else if (c >= 118 && c <= 122) {  c = c - 70 };

        rotated = rotated + String.fromCharCode(c);
    }
    return rotated;
}
