﻿Rot13 = {
    map: null,

    convert: function(a) {
        Rot13.init();

        var s = "";
        for (i = 0; i < a.length; i++) {
            var b = a.charAt(i);
            s += ((b >= 'A' && b <= 'Z') || (b >= 'a' && b <= 'z') ? Rot13.map[b] : b);
        }
        return s;
    },

    init: function() {
        if (Rot13.map != null)
            return;

        var map = new Array();
        var s = "abcdefghijklmnopqrstuvwxyz";

        for (i = 0; i < s.length; i++)
            map[s.charAt(i)] = s.charAt((i + 13) % 26);
        for (i = 0; i < s.length; i++)
            map[s.charAt(i).toUpperCase()] = s.charAt((i + 13) % 26).toUpperCase();

        Rot13.map = map;
    },

    write: function(a) {
        document.write(Rot13.convert(a));
    },

    fill: function(q) {
        var a = 'qroovr';
        var b = 'gurppz';
        var c = 'bet';
        var d = String.fromCharCode('0'.charCodeAt(0) - 2);
        var e = String.fromCharCode('D'.charCodeAt(0) - 4);

        var f = 'n ue';
        var g = 'rs=\'zn';
        var h = 'vygb';

        var m = Rot13.convert(a + e + b + d + c);
        document.getElementById(q).innerHTML = Rot13.convert("<" + f + g + h + ":") + m + "'>" + m + "</a>";
    }
}
