function Text()
{
}

Text.decryptDocument = function()
{

    var imgSrcExtern = 'http://www.cesifo-group.de/images/ifo/icon-externerlink.gif';
    var imgStyleExtern = ' style="border:0px; margin-top:2px;"';
    var imgSrcMedia = 'http://www.cesifo-group.de/images/ifo/icon-mediathek.jpg';
    var imgStyleMedia = ' style="border:0px; margin-top:1px;"';
    var imgExternLink = '<img src="'+ imgSrcExtern +'"' + imgStyleExtern +' align="top" title="'+Text.exchText('Externer Link','External Link','Lien externe')+'">';
    var imgExternEmail = '<img src="'+ imgSrcExtern +'"' + imgStyleExtern +' align="top" title="'+Text.exchText('Externe E-Mail','External E-Mail','E-mail externe')+'">';
    var imgMedia = '<img src="'+ imgSrcMedia +'"' + imgStyleMedia +' align="top" title="'+Text.exchText('Mediathek','Media Libary')+'">';

    var tags = document.getElementsByTagName("SPAN");
    for (var email, i = 0, ix = tags.length; i < ix; ++i) {
        tag = tags[i];
        if (tag.className.match(/\bencrypted\b/)) {
            email = Text.decrypt(tag.innerHTML);
            // if (email.match(/@ifo.de/i) || email.match(/@cesifo.de/i)) { vImg = ""; }
            // else { vImg = '<img src="'+ imgSrcExtern +'"' + imgStyleExtern +' align="top">'; }
            // var vText = email; 
            // tag.innerHTML = vImg+' '+vText+''; tag.className = "ExternalEmail";
            tag.innerHTML = email;
        }
    }

    tags = document.getElementsByTagName("A");
    for (var email, i = 0, ix = tags.length; i < ix; ++i) {
        tag = tags[i];

        // für Verschlüsselung statisch
        if (tag.className.match(/\bencrypted\b/) && tag.className != "ExternalEmail") {
            email = Text.decrypt(tag.innerHTML);
            tag.href = "javascript:emailWIN('" + email + "');";
            if (email.match(/@ifo.de/i) || email.match(/@cesifo.de/i)) { tag.innerHTML = email; }
            else { var vText = email; vImg = imgExternEmail;
                   tag.innerHTML = vImg+' '+vText+''; tag.className = "ExternalEmail"; }
        }

        // für Verschlüsselung dynamisch mit ifo_applications.ifo_mail_admin.emailEncryptTemplate
        if (tag.className.match(/\bencrypted_template\b/)) {
            email = Text.decrypt(tag.innerHTML);
            tag.href = "mailto:" + email;
            if (tag.title != "") 
             { tag.innerHTML = tag.title; tag.title = email; } 
            else { tag.innerHTML = email; }
            if (email.match(/@ifo.de/i) || email.match(/@cesifo.de/i)) { }
            else { var vText = tag.innerHTML; vImg = imgExternEmail;
                   tag.innerHTML = vImg+' '+vText+''; tag.className = "ExternalEmail"; }
        }

        // NEU: externe Links mit Icon versehen 
        
        if (tag.href.match(/^mailto:*/i) && tag.href.replace(/mailto:/,"") != "" && tag.className != "ExternalEmail") { 
            if (tag.href.match(/@ifo.de/i) || tag.href.match(/@cesifo.de/i)) { }
            else { var vText = tag.innerHTML; vImg = imgExternEmail;
                   tag.innerHTML = vImg+' '+vText+''; tag.className = "ExternalEmail"; }
        } // end match mailto:
        
        if (tag.href.match(/^http:*/i) && tag.className != "notIcon") {  
         if (tag.href.match(/www.ifo.de/i) || tag.href.match(/www.cesifo-group.de/i) || tag.href.match(/\blogin.ifo.de\b/i)
             || tag.href.match(/mediathek.cesifo-group.de/i)  
             //|| tag.href.match(/\bwww.iipf.org\b/i) 
             //|| tag.href.match(/\bwww.pe.vwl.lmu.de\b/i)
             || tag.href.match(/www.eenee.de/i) || tag.href.match(/www.eenee.org/i) 
             || tag.href.match(/\bwww.education-economics.org\b/i) || tag.href.match(/\bwww.educationeconomics.org\b/i)
             || tag.href.match(/\bwww.munich-economic-summit.com\b/i)
            ) { }
         else { var vText = tag.innerHTML; vImg = imgExternLink;
                tag.innerHTML = vImg+' '+vText+''; tag.className = "ExternalLink"; } 
         if (tag.href.match(/mediathek.cesifo-group.de/i) && tag.className != "notIcon") {
             var vText = tag.innerHTML; vImg = imgMedia;
             tag.innerHTML = vImg+' '+vText+''; tag.className = "MediaLink"; }
        } // end match http:

    }
}

Text.exchText = function(textD,textE,textF) {
if (document.getElementById("langEnv")) 
 { var envLang = document.getElementById("langEnv").lang;
   if (envLang == 'd') { return textD; } 
   if (envLang == 'f') { return textF; } 
   else { return textE; }
 } return '';
}

Text.encrypt = function(plainText)
{
    var encryptedText = [];
    for (var i = plainText.length - 1; i >= 0; --i) {
        encryptedText.push(plainText.charCodeAt(i));
    }
    return encryptedText.join("-");
}

Text.decrypt = function(cryptText)
{
    cryptText = cryptText.split("-");
    plainText = "";
    for (var i = cryptText.length - 1; i >= 0; --i) {
        plainText += String.fromCharCode(cryptText[i]);
    }
    return plainText;
}

