/**
 * Diese JavaScript Datei beinhaltet alle Basis Funktionen der community.
 * Autoren: Thorsten Schiffer, Kulasegaram Varunauthayan
 * Datum: 23.08.2007
 */
/**
 * Bereitstellung eines XMLHttpRequest Objektes
 *
 * Es wird je nach Browser ein entsprechendes XMLHttpRequest Objekt
 * zur&uuml;ckgeliefert, mit dem die sp&auml;tere Kommunikation
 * zum Server durchgef&uuml;hrt wird
 * @return {XMLHttpRequest} XMLHttpRequest Objekt
 */
function getTransporter(){
    if (window.ActiveXObject) {
        return new ActiveXObject('Microsoft.XMLHTTP');
    }
    else 
        if (window.XMLHttpRequest) {
            return new XMLHttpRequest();
        }
        else {
            return false;
        }
}

/**
 * Umwandlung von HTML Entities in Sonderzeichen
 * @return {String} Der umgewandelte String
 */
String.prototype.restoreEntities = function(){
    var ta = document.createElement("textarea");
    ta.innerHTML = this.replace(/</g, "&lt;").replace(/>/g, "&gt;");
    return ta.value;
}

function searchCity(words){
    var url = "/rss.php?url=" + escape("http://###XML_HOST###/extendedCitySearcher.php?product=community&words=" + escape(words));
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
    return eval('(' + transporter.responseText + ')');
}

function addKmi(content_id, content_type){

    url = "/dynamic/kmi.php?action=1&content=" + content_id + "&type=" + content_type;
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
}

function increaseKmi(content_id, content_type){
    url = "/dynamic/kmi.php?action=2&content=" + content_id + "&type=" + content_type;
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
}

function resetKmi(content_id, content_type){

    url = "/dynamic/kmi.php?action=3&content=" + content_id + "&type=" + content_type;
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
    
    url = "/dynamic/kmi.php?action=9&type=" + content_type;
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
    if (transporter.responseText == "0") {
        if (content_type == 0) {
            $("kmi_forum").remove();
        }
        else {
            $("kmi_blog").remove();
            
        }
    }
    else {
        if (content_type == 0) {
            $("kmiThread_" + content_id).remove();
        }
        else {
            $("kmiBlog_" + content_id).remove();
        }
        
    }
}

function setCookie(name, value, path, expires, domain, secure){
    
    var curCookie = name + "=" + escape(value) + (expires ? "; expires=" + expires.toGMTString() : "") + (path ? "; path=" + path : "") + (domain ? "; domain=" + domain : "") + (secure ? "; secure" : "");
    
	document.cookie = curCookie;
}

function getCookie(name){
    var dc = document.cookie;
    var prefix = name + "=";
   
	var begin = dc.indexOf("; " + prefix);
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0) {
            return null;
        }
    }
    else {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end == -1) {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}

function resetKmiByType(content_type){

    url = "/dynamic/kmi.php?action=8&type=" + content_type;
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
    
    if (content_type == 0) {
        $("kmi_forum").remove();
    }
    else {
        $("kmi_blog").remove();
    }
    
}

function removeKmi(content_id, content_type){

    url = "/dynamic/kmi.php?action=4&content=" + content_id + "&type=" + content_type;
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
    
    url = "/dynamic/kmi.php?action=7&type=" + content_type;
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
    if (transporter.responseText == "0") {
        if (content_type == 0) {
            $("kmi_forum").remove();
        }
        else {
            $("kmi_blog").remove();
            $("kmi_divider").remove();
        }
    }
    else {
        if (content_type == 0) {
            $("kmiThread_" + content_id).remove();
        }
        else {
            $("kmiBlog_" + content_id).remove();
        }
        
    }
    
    
}

function removeKmiByType(content_type){

    url = "/dynamic/kmi.php?action=5&type=" + content_type;
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
    
    if (content_type == 0) {
        $("kmi_forum").remove();
    }
    else {
        $("kmi_blog").remove();
        $("kmi_divider").remove();
    }
    if ($("kmi_forum") == undefined && $("kmi_blog") == undefined) {
        $("kmi").update("<br><br><br>Zurzeit verfolgst du keinen Blog oder Foren-Beitrag.");
    }
}

function toggleKmi(content_id, content_type){
    url = "/dynamic/kmi.php?action=6&content=" + content_id + "&type=" + content_type;
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
    toggle = transporter.responseText;
    var msg = "";
    if (toggle == 1) {
        if (content_type == 0) {
            msg = 'Du hast das Thema nun deiner Merkliste hinzugefügt.<br>Deine Merkliste findest du unter "<a href="/bearbeiten/activation.php?step=8">profil bearbeiten</a>" - "Abonnements".<br>Aktuelle Änderungen werden dir auf deiner persönlichen Seite unter "Deine Neuigkeiten" angezeigt.';
        }
        else {
        
            msg = 'Du hast das Blog nun deiner Merkliste hinzugefügt.<br>Deine Merkliste findest du unter "<a href="/bearbeiten/activation.php?step=8">profil bearbeiten</a>" - "Abonnements".<br>Aktuelle Änderungen werden dir auf deiner persönlichen Seite unter "Deine Neuigkeiten" angezeigt.';
        }
        showKmiConfirm(msg);
        return "&nbsp;aus&nbsp;Merkliste&nbsp;streichen";
    }
    else {
        return "&nbsp;merken";
    }
    
}


function searchCityTag(add){
    if (document.getElementById('cityTag' + add).value.toLowerCase() == 'deutschland') {
        //alert('Kein Ort gefunden!');
        return false;
    }
    document.getElementById('cityListDiv' + add).style.display = 'none';
    if (document.getElementById('cityZip' + add)) {
        var data = searchCity(document.getElementById('cityZip' + add).value + ' ' + document.getElementById('cityTag' + add).value);
    }
    else {
        var data = searchCity(document.getElementById('cityTag' + add).value);
    }
    if (!add) {
        document.getElementById('cityTag' + add).value = "";
    }
    if (data.items.length > 1) {
        document.getElementById('cityListDiv' + add).style.display = 'block';
        for (var i = 0; i < data.items.length; i++) {
            var city = new Option(data.items[i].title.restoreEntities(), data.items[i].akcom.regionkey, false, false);
            document.getElementById('cityList' + add).options[document.getElementById('cityList' + add).length] = city;
        }
        return "select";
    }
    else 
        if (data.items.length <= 0) {
            //alert('Kein Ort gefunden!');
            if (add) {
            //document.getElementById('cityTag'+add).style.backgroundColor = "#880000";
            }
            return false;
        }
        else {
            document.getElementById('cityKey' + add).value = data.items[0].akcom.regionkey;
            return true;
        }
}

function searchAddCityTag(){
    document.getElementById('cityListDiv').style.display = 'none';
    var data = searchCity(document.getElementById('cityTag').value);
    if (data.items.length > 1) {
        document.getElementById('cityListDiv').style.display = 'block';
        for (var i = 0; i < data.items.length; i++) {
            var city = new Option(data.items[i].title.restoreEntities(), data.items[i].akcom.regionkey, false, false);
            document.getElementById('cityList').options[document.getElementById('cityList').length] = city;
        }
        return false;
    }
    else 
        if (data.items.length <= 0) {
            alert('Kein Ort gefunden!');
            return false;
        }
        else {
            if (data.items[0].akcom.regionkey != '00000100') {
                setTagName(data.items[0].akcom.regionkey);
            }
            else {
                alert('Deutschland ist kein Städte-Tag!');
                return false;
            }
            return true;
        }
}

function searchUserCity(words){
    var data = searchCity(words);
    if (data.items.length > 1) {
        document.getElementById('citySearchDiv').style.display = 'none';
        document.getElementById('citySearchListDiv').style.display = 'block';
        for (var i = 0; i < data.items.length; i++) {
            var city = new Option(data.items[i].title.restoreEntities(), data.items[i].akcom.urlname, false, false);
            document.getElementById('citySearchList').options[document.getElementById('citySearchList').length] = city;
        }
        return false;
    }
    else 
        if (data.items.length <= 0) {
            writeOmnatureReport({
                name: omnatureType + '_' + omnatureChannel + '_' + 'Formular',
                level2: omnatureChannel,
                city: omnatureCity
            });
            alert('Kein Ort gefunden!');
            return false;
        }
        else {
            window.location.href = '/' + data.items[0].akcom.urlname;
            return false;
        }
    return false;
}

function popup_agb(){
    reloadIVW($('ivw'));
    NF = window.open("/deutschland/home?static=agb", "neu", "width=602,height=600,scrollbars=yes");
    NF.focus;
}

function popup_agb_entwurf(){
    NF = window.open("/deutschland/home?static=agb_entwurf", "agb_entwurf", "width=620,height=600,scrollbars=yes");
    NF.focus;
}

function popup_faq(){
    reloadIVW($('ivw'));
    NF = window.open("/deutschland/home?static=faq", "faq", "width=620,height=600,scrollbars=yes");
    NF.focus;
}

function popup_auskenner(){
    reloadIVW($('ivw'));
    NF = window.open("/deutschland/home?static=auskenner", "auskenner", "width=620,height=600,scrollbars=yes");
    NF.focus;
}

function popup_participance(){
    reloadIVW($('ivw'));
    NF = window.open("/deutschland/home?static=participance", "participance", "width=620,height=600,scrollbars=yes");
    NF.focus;
}

function popup_wm_gewinnspiel(){
    reloadIVW($('ivw'));
    NF = window.open("/deutschland/home?static=wm-gewinnspiel", "participance", "width=620,height=600,scrollbars=yes");
    NF.focus;
}

function popup_netiquette(){
    reloadIVW($('ivw'));
    NF = window.open("/deutschland/home?static=netiquette", "neu", "width=602,height=600,scrollbars=yes");
    NF.focus;
}

function popup_tour(){
    NF = window.open("/deutschland/home?static=tour", "tour", "width=820,height=680,scrollbars=no");
    NF.focus;
}

function checkBlackList(word){
    var transporter = getTransporter();
    transporter.open("GET", "/dynamic/blacklist.php?word=" + escape(word) + "&token=" + escape(userToken), false);
    transporter.send(null);
    return transporter.responseText;
}

function adtechLink(){
    document.getElementById("adtechTrack").src = "http://adserver.adtech.de/?adlink|3.0|681|1358605|1|16|AdId=2307221;BnId=1;link=";
}


/**
 * tracks links, downloads, ...
 * @param {Object} options The following properties are supported:
 * <ul>
 * <li>name {String} (mandatory) link or page name</li>
 * <li>ctrl {String} (optional) PI (page impression), N (navigation), A (action), S (exit), T (download), stop, play, pause, volume, forward, backward</li>
 * <li>type {String} (optional) C (click), F (flash), M (audio/video)</li>
 * <li>level2 {String} (optional) level2 id</li>
 * <li>url {String} (optional) URL</li>
 * <li>duration {Number} (optional) only for audio/video</li>
 * <li>player {String} (optional) only for audio/video</li>
 * <li>quality {String} (optional) only for audio/video</li>
 * <li>stream {String} (optional) only for audio/video</li>
 * </ul>
 */
function track(options){
    options = options ||
    {};

    
    if (!options.name) 
        return;
    if (options.link) {
        options.level2 = 0;
        options.name = options.product.replace(/\ /g, '_');

    }
    
    xt_med(options.type || 'C', options.level2 || xtn2, options.name.replace(/\ /g, '_'), (options.ctrl == 'PI') ? undefined : options.ctrl || 'N', options.url || options.duration, options.player, options.quality, options.stream);
    if (typeof(console) != 'undefined') 
        console.log('track(' + Object.toJSON(options) + ')');
}



function reloadIVW(id){
    if (id) {
        if (id.src.search(/d=/) != -1) {
            id.src = id.src.replace(/d=.*/, 'd=' + (Math.random() * 100000));
        }
        else {
            id.src = id.src + '?d=' + (Math.random() * 100000);
        }
    }

    //track({
    //    name: omnatureCity,
    //    level2: omnatureChannel
    //});
}

function showElement(id){
    reloadIVW($('ivw'));
    if (typeof(omnatureType) == "defined") {
        writeOmnatureReport({
            name: omnatureType + '_' + omnatureChannel + '_' + 'Formular',
            level2: omnatureChannel,
            city: omnatureCity
        });
    }
    if ($(id).style.display != 'none') {
        if (!id.match(/search/)) {
            Effect.BlindUp(id);
        }
    }
    else {
        if (id != 'comment' || (id == 'comment' && userToken)) {
            //Effect.BlindDown(id);
            $(id).style.display = 'block';
        }
    }
}

function showElementOnly(id){
    reloadIVW($('ivw'));
    if (typeof(omnatureType) == "defined") {
        writeOmnatureReport({
            name: omnatureType + '_' + omnatureChannel + '_' + 'Formular',
            level2: omnatureChannel,
            city: omnatureCity
        });
    }
    Effect.BlindDown(id);
}

function closeElement(id){
    reloadIVW($('ivw'));
    if (typeof(omnatureType) == "defined") {
        writeOmnatureReport({
            name: omnatureType + '_' + omnatureChannel + '_' + 'Formular',
            level2: omnatureChannel,
            city: omnatureCity
        });
    }
    if (document.getElementById(id)) {
        Effect.BlindUp(id);
    }
}

function cleanElement(id){
    document.getElementById(id).innerHTML = '';
}


function stateChanged(){
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
        ajax_started = 0;
        document.getElementById(glid).innerHTML = xmlHttp.responseText;
        init_tinyMCE();
    }
}

function GetXmlHttpObject(){
    var objXMLHttp = null
    if (window.XMLHttpRequest) {
        objXMLHttp = new XMLHttpRequest()
    }
    else 
        if (window.ActiveXObject) {
            objXMLHttp = new ActiveXObject("Microsoft.XMLHTTP")
        }
    return objXMLHttp
}

var ajax_started = 0;
var zindex = 1000;
var ajax_url = '';
function send_form_in_bg(url, id){
    reloadIVW($('ivw'));
    zindex = zindex + 1;
    
    if (ajax_started == 0) {
        glid = id;
        ajax_url = url;
        ajax_loading_container(glid);
        
        if (typeof(omnatureType) == "defined") {
            writeOmnatureReport({
                name: omnatureType + '_' + omnatureChannel + '_' + 'Formular',
                level2: omnatureChannel,
                city: omnatureCity
            });
        }
        
        ajax_started = 1;
        xmlHttp = GetXmlHttpObject()
        if (xmlHttp == null) {
            alert("Browser does not support HTTP Request")
            return
        }
        xmlHttp.onreadystatechange = stateChanged
        xmlHttp.open("GET", url, true)
        xmlHttp.send(null)
    }
}

function ajax_loading_container(divid){
    var loadElement = document.getElementById(divid);
    var heightElement = document.getElementById(divid).offsetHeight;
    var widthElement = document.getElementById(divid).offsetWidth;
    var posXElement = getPosX(document.getElementById(divid));
    var posYElement = getPosY(document.getElementById(divid));
    
    var ajax_wall = document.createElement('div');
    ajax_wall.innerHTML = '<div id="loadingScreen" style="color:#ffffff;background-color:#000000;opacity:.5;-moz-opacity:.5;filter:alpha(opacity=50);-khtml-opacity:.5;position:absolute;top:' + posYElement + 'px;left:' + posXElement + 'px;width:' + widthElement + 'px;height:' + heightElement + 'px;z-index:' + zindex + ';"><div style="text-align:center;margin-top:60px;"><img src="/pix/icons/loading.gif" /><br /><br /><br /><b style="font-size:14px;">Bitte warten...</b></div></div>';
    loadElement.appendChild(ajax_wall);
}

function send_form_for_security_code(url, id){
    var transporter = getTransporter();
    transporter.open("GET", url, false);
    transporter.send(null);
    return transporter.responseText;
}


function s_gi(value){
    var tl = null;
    this.tl = function(value, value, value){
    };
    return this;
}

var s_account = null;


function stateUpdated(){
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
        document.getElementById(glid).innerHTML = "";
        document.getElementById(glid).innerHTML = xmlHttp.responseText
        if (document.getElementById(glid).innerHTML != "") {
            init_tinyMCE();
            tiny_id = glid + '_id'
            tinyMCE.execCommand('mceAddControl', false, tiny_id);
        }
    }
}

function load_value_without_tiny(url, id){
    glid = id;
    xmlHttp = GetXmlHttpObject()
    if (xmlHttp == null) {
        alert("Browser does not support HTTP Request")
        return
    }
    xmlHttp.onreadystatechange = stateUpdatedWithoutTiny
    xmlHttp.open("GET", url, true)
    xmlHttp.send(null)
}

function stateUpdatedWithoutTiny(){
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
        document.getElementById(glid).innerHTML = "";
        document.getElementById(glid).innerHTML = xmlHttp.responseText
    }
}

function init_tinyMCE(){
    tinyMCE.init({
        mode: "textareas",
        theme: "advanced",
        language: "de",
        plugins: "emotions",
        theme_advanced_buttons1: "bold,italic,underline,separator,undo,redo,link,unlink,emotions,forecolor,image",
        theme_advanced_buttons2: "",
        theme_advanced_buttons3: "",
        theme_advanced_toolbar_location: "top",
        theme_advanced_toolbar_align: "left",
        theme_advanced_resize_horizontal: false,
        theme_advanced_resizing: false,
        extended_valid_elements: "a[name|href|target|title|onclick],img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name],hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]",
        force_br_newlines: true,
        forced_root_block: '', // Needed for 3.x        
        force_p_newlines: false,
        relative_urls: false,
        remove_script_host: true
    });
}

function getCheckedValue(radioObj){
    if (!radioObj) 
        return "";
    var radioLength = radioObj.length;
    if (radioLength == undefined) 
        if (radioObj.checked) 
            return radioObj.value;
        else 
            return "";
    for (var i = 0; i < radioLength; i++) {
        if (radioObj[i].checked) {
            return radioObj[i].value;
        }
    }
    return "";
}

function setCheckedValue(radioObj, newValue){
    if (!radioObj) 
        return;
    var radioLength = radioObj.length;
    if (radioLength == undefined) {
        radioObj.checked = (radioObj.value == newValue.toString());
        return;
    }
    for (var i = 0; i < radioLength; i++) {
        radioObj[i].checked = false;
        if (radioObj[i].value == newValue.toString()) {
            radioObj[i].checked = true;
        }
    }
}

function checkEmail(address){
    var blackDomains = new Array();
    blackDomains = ['mailinator2.com', 'mailinator.com', 'sogetthis.com', 'mailin8r.com', 'mailinator.net', 'spamherelots.com', 'thisisnotmyrealemail.com', 'trash-mail.com', 'spambog.com', 'spambog.de', 'discardmail.com', 'discardmail.de', 'emaildienst.de', 'mailtrash.net'];
    
    var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (filter.test(address)) {
        for (var i = 0; i < blackDomains.length; ++i) {
            if (address.search(blackDomains[i]) != -1) {
                return false;
            }
        }
        return true;
    }
    else {
        return false;
    }
}



function trim(str){
    return str.replace(/\s+$/, "");
}

// Absolute Position eines Objektes erhalten
function getPos(el){
    if (el) {
        for (var lx = 0, ly = 0; el != null; lx += el.offsetLeft, ly += el.offsetTop, el = el.offsetParent) 
            ;
        return new Array(lx, ly);
    }
    return false;
}

// Absolute X Position eines Objektes erhalten
function getPosX(el){
    if (el) {
        for (var lx = 0, ly = 0; el != null; lx += el.offsetLeft, ly += el.offsetTop, el = el.offsetParent) 
            ;
        return lx;
    }
    return false;
}

// Absolute Y Position eines Objektes erhalten
function getPosY(el){
    if (el) {
        for (var lx = 0, ly = 0; el != null; lx += el.offsetLeft, ly += el.offsetTop, el = el.offsetParent) 
            ;
        return ly;
    }
    return false;
}

function accFriendship(userId, friendId){
    var transporter = getTransporter();
    transporter.open("POST", "/dynamic/accFriendship.php", false);
    transporter.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    transporter.send("friendId=" + friendId + "&userId=" + userId);
    return true;
}

function writeOmnatureReport(option){
    track({
        name: option.name,
        level2: option.level2,
        ctrl: 'A'
    });
}

function saveVoteAndComment(url, id){
    cleanElement('error_display');
    var contentValue = tinyMCE.activeEditor.getContent();
    if (contentValue == '' || contentValue == null) {
        document.getElementById('error_display').innerHTML = 'Bitte ein Kommentar schreiben!';
    }
    else {
        var transporter = getTransporter();
        transporter.open("GET", url + "&comment=" + escape(contentValue), false);
        transporter.send(null);
        //send_form_in_bg(url+"&comment="+escape(contentValue), id);
        closeElement('vote');
        closeElement('vote_link');
        javascript: location.reload();
    }
    
}

function wink(sender_id, receiver_id){
    var transporter = getTransporter();
    transporter.open("GET", "/dynamic/wink.php?token=" + userToken + "&sender_id=" + sender_id + "&receiver_id=" + receiver_id, false);
    transporter.send(null);
    return (transporter.responseText == "0") ? true : false;
}

function deleteAllWinks(){
    var transporter = getTransporter();
    transporter.open("GET", "/dynamic/deleteAllWinks.php?token=" + userToken, false);
    transporter.send(null);
    document.getElementById('smileentries').style.display = 'none';
}

var tags = new Array();
function addMessageTo(value, showTagId, tagId, userId){
    if (value != "" && value.search(/\s/) && (!tags[value] || tags[value] != 0)) {
        tags[value] = 1;
        $(tagId).value += userId + ',';
        var idValue = value.replace(/ /g, '');
        var spanId = idValue;
        $(showTagId).innerHTML += '<span id="' + spanId + '" style="white-space:nowrap">' + value + '<a href="javascript://" onclick="deleteTo(\'' + userId + '\', \'' + showTagId + '\', \'' + tagId + '\', \'' + spanId + '\');"> <img src="/pix/delete.gif" border="0" alt="l&ouml;schen" /></a><br /></span>';
    }
}

function deleteTo(value, showTagId, tagId, spanId){
    document.getElementById(showTagId).removeChild(document.getElementById(spanId));
    $(tagId).value = $(tagId).value.replace(value + ',', '');
    tags[value] = 0;
}

function rand(n){
    return (Math.floor(Math.random() * n + 1));
}

function sendNewMailToUser(rec_user_id, rec_first_name, rec_last_name, rec_user_name, gender){
    reloadIVW($('ivw'));
    writeOmnatureReport({
        name: omnatureType + '_' + omnatureChannel + '_' + 'Formular',
        level2: omnatureChannel,
        city: omnatureCity
    });
    
    var transporter = getTransporter();
    transporter.open("POST", "/dynamic/user/isIgnoredUser_Ajax.php", false);
    transporter.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    transporter.send("token=" + escape(userToken) + "&receiver_id=" + rec_user_id);
    
    if (transporter.responseText != "0") {
        var genderText = 'ihr';
        if (gender == 'm') {
            genderText = 'ihm';
        }
        if (transporter.responseText == "1") {
            errorText = rec_first_name + " " + rec_last_name + " hat eingestellt, dass du " + genderText + " keine Nachrichten schicken kannst.";
        }
        else {
            errorText = "Du kannst keine Nachrichten an " + rec_first_name + " " + rec_last_name + " schreiben.";
        }
        Ext.MessageBox.show({
            title: 'Hinweis',
            msg: errorText,
            buttons: Ext.MessageBox.OK,
            animEl: 'mb9',
            modal: true,
            icon: Ext.MessageBox.INFO
        });
    }
    else {
        window.location.href = '/postfach?newmail=1&to=' + rec_user_name;
    }
}

function showKmiConfirm(msg){
    Ext.MessageBox.show({
        title: 'Hinweis',
        msg: msg,
        buttons: Ext.MessageBox.OK,
        animEl: 'mb9',
        modal: true,
        icon: Ext.MessageBox.INFO
    });
}

function unexpectedError(){
    alert('Es ist ein unerwartete Fehler aufgetreten, bitte laden Sie Ihre Seite neu!');
}

function checkExistEmail(email){
    var transporter = getTransporter();
    transporter.open("GET", "/dynamic/username.php?email=" + escape(email) + "&token=" + escape(userToken), false);
    transporter.send(null);
    return transporter.responseText;
}

