﻿function T2MInit() {

    // Preload Button Overs
    var ImageArray = new Array('ButtonSendOver.gif', 'ButtonCancelOver.gif', 'ButtonCloseOver.gif', 'ButtonHelpOver.gif', 'ButtonSkipOver.gif', 'ButtonNextOver.gif', 'ButtonBackOver.gif', 'ButtonNextAOver.gif');
    O3_PreloadImgs(ImageArray, '../_mona_img/Buttons/');

    // Commons
    ImageArray = new Array('CloseXOver.gif')
    O3_PreloadImgs(ImageArray, '../_common_img/Buttons/');

    // FloatDivs Backgrounds
    ImageArray = new Array('AlertFloatBack.gif', 'AlertFloatBackSmall.gif', 'FloatDivBackLarge.gif', 'FloatDivBackMed.gif','QuestionOver.gif')
    O3_PreloadImgs(ImageArray, '../_mona_img/Graphics/');
    
    
    O3_SetOpacity('div_DisabledPage', 0);

    // Default the focus
    document.getElementById("MobileNumber").focus();

        // If the Skinned Mobile Number is not supplied then get the stored Value from the cookie
    if (SkinnedMN == "" || FNIError == "" ) {
        var lMobile = new String;
        lMobile = getCookie("Passport");

        if (lMobile.length == 0) {
            ShowPage('FloatStart');
            //return;
        }
        else {
            document.getElementById("MobileNumber").value = lMobile;
            // We've got the Mobile... focus on the password			
            document.getElementById("Password").focus();
        }
    }



    // Set the current country
    // If the Skinned Country ID is not supplied then get the stored Value from the cookie
    if (SkinnedCID == "") {
        var CountryID = getCookie("CountryID");
        var CountryDesc = getCookie("CountryDesc");

        if (CountryID == "")
            SetCountryCode("AU", "Australia");
        else
            SetCountryCode(CountryID, CountryDesc);
    

    }else
    

    Page_Disable(false);

// Determine if we have come here from an error page
    if (FNIError != "") {
        // JS must be ok so hide the default
        document.getElementById('div_FloatErrorDefault').style.display = 'none';

        switch (SendStatus) {
            case 'PASS':
                  ShowPage('FloatMissingPassport');
                // Now lie about the active page... this will make the FloatMissingPassport page the pesudo active page until it is closed
                ActivePage = '';
                document.getElementById("MobileReturn").select();
                document.getElementById("MobileReturn").focus();
                break
            case 'DISABLED':
                ShowPage('FloatDisabled');
                break
            case 'LOCKED':
                ShowPage('FloatLocked');
                break

            default:
                ShowPage('FloatErrorDefault');
                    break
        }
    }
}



function SetCountry(xiCountry, xiAlt) {
  
    SetCountryCode(xiCountry, xiAlt);
  
    if (ActivePage != "")
        HidePage(ActivePage);

}

function SetCountryCode(xiCountry, xiAlt) {
    document.getElementById("CountryID").value = xiCountry;
    document.getElementById("CountryDesc").value = xiAlt;

    // Now change the flag
    document.getElementById("Flag").src = "../_T2M_img/Graphics/Flags/flag_" + xiCountry + ".gif";
    document.getElementById("Flag").alt = xiAlt;
    // Update the Return Page as well
    document.getElementById("FlagReturn").src = "../_T2M_img/Graphics/Flags/flag_" + xiCountry + ".gif";
    document.getElementById("FlagReturn").alt = xiAlt;

  }

function MessageLength(xiPremium) {
    var CharacterCount = 0;
    var MessageCount = 0;
    // Get the length of the message;
    CharacterCount = document.getElementById('Message').value.replace(/\r/g, '').length;

    // Now add in the count for the mandatory $Msg tag
    if (xiPremium)
        CharacterCount = CharacterCount + 5;

    if (CharacterCount > 160) {
        MessageCount = Math.floor(CharacterCount / 153);
        document.getElementById('div_MsgCount').style.display = '';
        document.getElementById('MsgCount').value = MessageCount + ' Msgs';
        document.getElementById('MsgLength').value = (CharacterCount - MessageCount * 153) + ' Chars';
    }
    else {
        document.getElementById('div_MsgCount').style.display = 'none';
        document.getElementById('MsgLength').value = (CharacterCount) + ' Chars';
    }
    
}


function CopyDetails() {
    HidePage('FloatMissingPassport');
    // Copy the details from the UNK cells before submit
    document.getElementById("MobileNumber").value = document.getElementById("MobileReturn").value;
    document.getElementById("Password").value = document.getElementById("PasswordReturn").value;

}

function Page_SubmitFormNoVal(xiForm, xiButtonVal, xiValueField, xiValue) {
    Page_Disable(true);

    // write the cookies
    setCookie('Passport', document.getElementById("MobileNumber").value, 365)
    setCookie('CountryID', document.getElementById("CountryID").value, 365)

    O3_SubmitFormNoVal(xiForm, xiButtonVal, xiValueField, xiValue);
    Page_Disable(false);

    return false;
}

function Page_SubmitForm(xiForm, xiButtonVal, xiValueField, xiValue, xiPremium) {
    // Check the Password has been populated
    var PassString
    var MobileNumber;
    var CharacterCount;
    var MsgMax=160;

    // Check to see if the FloatMissing Passport is active
    if (document.getElementById('div_FloatMissingPassport').style.display == '')
        CopyDetails();

    Page_Disable(true);

    // Strip any spaces and put it back
    MobileNumber = document.getElementById("MobileNumber").value.replace(/ /g, '');
    document.getElementById("MobileNumber").value = MobileNumber;

    if (!MobileNumber) {
        document.getElementById("MobileNumber").style.backgroundColor = "#FFCC66"
        ShowPage('FloatNumber');
        Page_Disable(false);
        return false;
    }
    else {
        document.getElementById("MobileNumber").style.backgroundColor = "#F0F8FF";
    }

    PassString = document.getElementById("Password").value;
    if (!PassString) {
        document.getElementById("Password").style.backgroundColor = "#FFCC66";
        ShowPage('FloatPassword');
        Page_Disable(false);
        return false;
    }
    else
        document.getElementById("Password").style.backgroundColor = "#F0F8FF";

    // Check that the Phone Number is valid via a regex
    phoneRe = /^((\+\d{1,3}( )?((\d{9})|(\d{3}( )?\d{3}( )?\d{3})))|(\d{2,3}( )?((\d{9})|(\d{3}( )?\d{3}( )?\d{3})))|([0]?\d{9}))$/

    if (!phoneRe.test(MobileNumber)) {
        document.getElementById("MobileNumber").style.backgroundColor = "#FFCC66"
        ShowPage('FloatBadNumber');
        Page_Disable(false);
        return false;
    } else
        document.getElementById("MobileNumber").style.backgroundColor = "#F0F8FF";

    CharacterCount = document.getElementById('Message').value.length;

    // Reduce MsgMax for Premium MSG for $Msg tag
    if (xiPremium)
        MsgMax=155
    
    if (CharacterCount > MsgMax) {
        ShowPage('MultipleMessages');
        Page_Disable(false);
        return false;
    }


    // Now write the cookies
    setCookie('Passport', MobileNumber, 365)
    setCookie('CountryID', document.getElementById("CountryID").value, 365)

    O3_SubmitFormNoVal(xiForm, xiButtonVal, xiValueField, xiValue);
    return false;
}

function Page_Disable(xi_Disabled) {
    //document.getElementById("Cmd_Send_img").disabled = xi_Disabled;
    document.getElementById("Cmd_Send_img2").disabled = xi_Disabled;
    //document.getElementById("Cmd_Cancel_img").disabled = xi_Disabled;
    document.getElementById("Cmd_Help_img").disabled = xi_Disabled;
    return true;
}

