﻿function lostPasswordPopUp() {
    if (document.getElementById("lostPasswordPopUp")) return;

    var url = "data/GetContent.aspx";
    var sendData = "verb=forgotpasswordpopup";
    sendData += "&theme=" + top.MainThemeID;
    sendData += "&language=" + top.MainLanguage;

    AJAXPost(url, "lostPasswordPopUp_ready", sendData);
}

function lostPasswordPopUp_ready(responseText) {
    if (document.getElementById("lostPasswordPopUp")) return;

    var headerText = "Forgot Password";
    var closeLinkText = "Close";
    var instructionsText = "Nickname or Email Address";
    var loadingText = "Attempting to locate account...";
    var successText = "Password recovery email sent.";
    var noUserNameText = "You must provide a user name.";
    var noUserNameFoundText = "No user by that username found.";
    var noEmailFoundText = "Unable to send recovery email, no email address found.";

    if (responseText && responseText != "") {
        var parsedResponse = responseText.split("|--|");

        headerText = parsedResponse[0];
        closeLinkText = parsedResponse[1];
        instructionsText = parsedResponse[2];

        loadingText = parsedResponse[3];
        successText = parsedResponse[4];
        noUserNameText = parsedResponse[5];
        noUserNameFoundText = parsedResponse[6];
        noEmailFoundText = parsedResponse[7];
    }

    var container = document.createElement("div");
    container.style.position = "absolute";
    container.id = "lostPasswordPopUp";
    container.style.zIndex = "5000";
    main = createTable(260);
    container.appendChild(main);
    main.createRows(1, 2);
    main.className = "ReferenceDialog";

    container.loadingText = loadingText;
    container.successText = successText;
    container.noUserNameText = noUserNameText;
    container.noUserNameFoundText = noUserNameFoundText;
    container.noEmailFoundText = noEmailFoundText;

    main.rowArray[0].cellArray[0].className = "TACContentDivHeader";
    main.rowArray[0].cellArray[0].style.padding = "10px";
    main.rowArray[0].cellArray[0].innerHTML = headerText;

    var close = createAnchor(closeLinkText);

    close.onclick = function() {
        destroyObject(container);
    }

    main.rowArray[0].cellArray[1].style.padding = "10px";
    main.rowArray[0].cellArray[1].style.textAlign = "right";
    main.rowArray[0].cellArray[1].appendChild(close);

    var uneRow = main.createRow(1);
    uneRow.cellArray[0].colSpan = "2";
    uneRow.cellArray[0].style.paddingBottom = "5px";
    uneRow.cellArray[0].style.textAlign = "center";
    //uneRow.cellArray[0].innerHTML = instructionsText;

    var tbRow = main.createRow(1);
    tbRow.cellArray[0].colSpan = "2";
    tbRow.cellArray[0].style.width = "260px";
    tbRow.style.height = "30px";
    tbRow.style.align = "left";

    //tbRow.cellArray[0].style.textAlign = "center";
    tbRow.cellArray[0].style.paddingLeft = "28px";
    tbRow.cellArray[0].style.cellPadding = "0px";
    tbRow.cellArray[0].style.cellSpacing = "0px";

    var txtTable = document.createElement("table");
    txtTable.style.width = "200px";
    txtTable.cellPadding = 0;
    txtTable.cellSpacing = 0;
    txtTable.border = 0; 
    txtTable.style.align = "center";

    var txtTableRow = document.createElement("tr");
    txtTableRow.style.width = "200px";
    txtTableRow.style.height = "30px";
    txtTableRow.style.padding = "0px";

    var txtBkgdLeft = document.createElement("td");
    var txtBkgdCenter = document.createElement("td");
    var txt = document.createElement("input");
    var txtBkgdRight = document.createElement("td");

    txt.id = "lostPasswordPopUp_UserName";
    txt.type = "text";
    txt.style.width = "186px";
    txt.style.paddingTop = "8px";
    //txt.className = "TextFields150px";
    txt.className = "LoginTextBox";
    txt.value = "Nickname or Email Address";
    txt.defaultValue = "Nickname or Email Address";

    txt.onfocus = function () {
        if (txt.value == "Nickname or Email Address") {
            txt.value = "";
        }
        else if (txt.value != "") {
            //Do Nothing
        }
    }

    txt.onblur = function () {
        if (txt.value != "") {
            //Do Nothing
        }
        else {
            txt.value = "Nickname or Email Address";
        }
    }

    SI.src("login_field_cornerLeft.png", txtBkgdLeft, SiteImagesType.BaseSiteColorShade);
    SI.src("login_field_middleBck.png", txtBkgdCenter, SiteImagesType.BaseSiteColorShade);
    SI.src("login_field_cornerRight.png", txtBkgdRight, SiteImagesType.BaseSiteColorShade);

    txtBkgdLeft.style.width = "7px";
    txtBkgdCenter.style.width = "186px";
    txtBkgdRight.style.width = "7px";

    txtBkgdCenter.appendChild(txt);

    txtTable.appendChild(txtTableRow);

    txtTableRow.appendChild(txtBkgdLeft);
    txtTableRow.appendChild(txtBkgdCenter);
    txtTableRow.appendChild(txtBkgdRight);

    tbRow.cellArray[0].appendChild(txtTable);
    //tbRow.cellArray[0].appendChild(txtBkgdLeft);
    //tbRow.cellArray[0].appendChild(txtBkgdCenter);
    ////tbRow.cellArray[0].appendChild(txt);
    //tbRow.cellArray[0].appendChild(txtBkgdRight);

    //main.appendChild(tbRow);
    
    txt.onkeypress = function() {
        return action_onkeypress(this, "recoverPassword()");
    }

    var statusRow = main.createRow(1);
    statusRow.cellArray[0].style.height = "20px";
    statusRow.cellArray[0].className = "OrangeText";
    statusRow.cellArray[0].style.textAlign = "center";
    statusRow.cellArray[0].id = "lostPasswordPopUp_status"
    statusRow.cellArray[0].colSpan = "2";

    var sRow = main.createRow(1);
    sRow.cellArray[0].colSpan = "2";
    sRow.cellArray[0].style.paddingBottom = "10px";
    sRow.cellArray[0].style.textAlign = "center";

    var submit = document.createElement("img");

    submit.onclick = function () {
        if (txt.value == "Nickname or Email Address") {
            statusRow.cellArray[0].innerHTML = "Enter a Valid Nickname or Email Address";
        }
        else {
            recoverPassword();
        }      
    }

    submit.onmouseover = function() {
        image_onmouseover(this);
    }

    SI.src("btForms_Submit.png", submit, SiteImagesType.BaseColorShadeLanguage);
    sRow.cellArray[0].appendChild(submit);


    document.body.appendChild(container);

    var ah = document.getElementById("Default_Header_MainTable");

    //    if (DetermineBrowser() == Browsers.IE)
    DockToObject(container, ah, "center", "top", "center", 0, 10);
    //    else {
    //        CenterFloatingObject(container);
    //        container.style.top = "10px";
    //    }

    if (parseInt(container.style.top) < 10)
        container.style.top = "10px";
}

function recoverPassword() {
    var lostPasswordPopUp = document.getElementById("lostPasswordPopUp");
    var txt = document.getElementById("lostPasswordPopUp_UserName");
    var status = document.getElementById("lostPasswordPopUp_status");

    if (lostPasswordPopUp && txt && status) {
        status.innerHTML = lostPasswordPopUp.loadingText;

        var url = top.document.getElementById("websiteURL").value + "/data/PasswordReset.aspx";
        var sendData = "username=" + txt.value;
        sendData += "&theme=" + top.MainThemeID;
        sendData += "&language=" + top.MainLanguage;

        AJAXPost(url, "recoverPassword_ready", sendData);
    }
}

function recoverPassword_ready(responseText) {
    if (responseText && responseText != "") {
        var lostPasswordPopUp = document.getElementById("lostPasswordPopUp");
        var txt = document.getElementById("lostPasswordPopUp_UserName");
        var status = document.getElementById("lostPasswordPopUp_status");

        if (lostPasswordPopUp && txt && status) {
            var code = parseInt(responseText)

            switch (code) {
                case 1:
                    status.innerHTML = lostPasswordPopUp.successText;
                    break;
                case -1:
                    status.innerHTML = lostPasswordPopUp.noUserNameText;
                    break;
                case -2:
                    status.innerHTML = lostPasswordPopUp.noUserNameFoundText;
                    break;
                case -3:
                    status.innerHTML = lostPasswordPopUp.noEmailFoundText;
                    break;
            }
        }
    }
}
