/*
 * Header.js
 *
 */

// Global CookieJar
var gCookieJar = new CookieJar({
    expires:3600*24*365, // two weeks
    path: '/'
});

var gUserName = "";

// toggles remember me cookie
function shouldRememberMe(chkbox, userName){
    if (chkbox.checked){
        createRememberMeCookie(userName.value);
    }else{
        deleteRememberMeCookie();
    }
}

// checks to see if RememberMeCookie is set
// returns false if there's no cookieR
function checkRememberMeCookie(){
    var remeberMe = gCookieJar.get('RemeberMe');
    gUserName = (remeberMe == null) ? "" : remeberMe.name;
    return gUserName != "";
}

// creates a cookie with default settings
function createRememberMeCookie(userName){
    var user = {name: userName};
    var bRetVaule = gCookieJar.put('RemeberMe',  user);
    if(!bRetVaule){
        alert("Can not save 'UserName'!");
    }
}

// removes a cookie with default settings
function deleteRememberMeCookie(){
    gCookieJar.remove('RemeberMe');
}

function trim(stringToTrim) {
    return stringToTrim.replace(/^\s+|\s+$/g,"");
}

// Ajax login
var isBusy = false;
function doAjaxLogin(formToBeSubmitted){
    if(isBusy) return false;
    isBusy = true;

    // Added for Safari support
    if(Prototype.Browser.WebKit){
        var xmlhttp;
        if (window.XMLHttpRequest){
            xmlhttp=new XMLHttpRequest();
            xmlhttp.onreadystatechange=function(){
                if(xmlhttp.readyState==4){
                    formToBeSubmitted.submit();
                }
            }
            xmlhttp.open("GET","/content/login/login.jsf",false);
            xmlhttp.send(null);
        }else{
            alert('Something went wrong...');
        }
        isBusy = false;
    }else{
        new Ajax.Request("/gmx-promo/content/login/login.jsf",{
            method: "post",
            onComplete: function(req){
                if(req.responseText != null &&  req.responseText != ''){
                    var responseText =  req.responseText;
                    if(responseText.indexOf('challenge page in gmx-promo', 0) > 0 ){
                        formToBeSubmitted.submit();
                    }else if(responseText.indexOf('/gmx/content/landing_page/landing.jsf', 0) > 0 ){
                        document.open();
                        document.write(responseText);
                        document.close();
                    }
                }
                isBusy = false;
            },
            onFailure: function(transport){
                alert('Something went wrong...')
                isBusy = false;
            }
        });
    }
}