/* for lint: */
/*global window ActiveXObject*/

function XHR(){
    var XHRModes=["Msxml2.XMLHTTP", "Microsoft.XMLHTTP"];
    if (window.ActiveXObject){
        for (var i = 0; i < XHRModes.length; i++){
            try{
                return new ActiveXObject(XHRModes[i]);
            }
            catch(e){
                //do nothing
            }
        }
    }else if (window.XMLHttpRequest){
        return new XMLHttpRequest();
    }else{
        return false;
    }
}

var loader, messageTextarea, sendButton;
var sendMessage;

var pageInit = function(){
    sendButton = document.getElementById("sendButton");
    loader = document.getElementById("loader");
    messageTextarea = document.getElementById("messageText");

    document.getElementById("useAnEmail").href = "ma" + "ilto:edu" + "ard@bar" + "eev.ru";

    document.getElementById("dropMsgDoItNow").onclick = function(){
        setStateForm();
        document.getElementById("messageBlock").style.display = "block";
        messageTextarea.focus();
        
        return false;
    };
    
    sendButton.onclick = sendMessage;
};

var setStateForm = function(){
    loader.className = "hidden";
    messageTextarea.style.display = "block";
    sendButton.style.display = "block";
};

var setStateSending = function(){
    loader.className = "loading";
    messageTextarea.style.display = "none";
    sendButton.style.display = "none";
};

var setStateSuccess = function(){
    setTimeout(function(){loader.className = "success";}, 300);
    
};

var setStateFail = function(){
    loader.className = "fail";
};

var sendMessage = function(){
    var messageText = messageTextarea.value;
    
    if (messageText.length === 0){
        return false;
    }
    
    var xhr = new XHR();
    
    xhr.onreadystatechange = function(){
        if(xhr.readyState == 4){
            if(xhr.status == 200){
                setStateSuccess();
            }else{
                setStateFail();
            }
        }
    };
    
    xhr.open("POST", "messageReceiver.php", true);
    setStateSending();
    //xhr.send(messageText);
    xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xhr.send("messageText=" + encodeURIComponent(messageText));
    
    return false;
};

if (window.addEventListener){
    window.addEventListener("load", pageInit, false);
}else if(window.attachEvent){
    window.attachEvent("onload", pageInit);
}else{
    window.onload = pageInit;
}

