﻿function RefreshImage(ele) {
    //var objImage = document.images[valImageId];
    if (ele == undefined) {
        return;
    }
    var now = new Date();
    ele.src = ele.src.split('?')[0] + '?x=' + now.toUTCString();
}

String.prototype.trim = function() {
    return this.replace(/(^\s*)|(\s*$)/gi, "");
}

function chk_only_char2(ctrlnm) {
    if (ctrlnm.value.match(/[^a-zA-Z0-9_]/)) {
        return false;
    }
    return true;
}

function chk_only_char3(ctrlnm) {
    if (ctrlnm.value.match(/[^a-zA-Z0-9_,.\'\? ]/)) {
        return false;
    }
    return true;
}

function ConfirmRegist(form) {
    var message = "";
    var form = document.joinform;

    errorImage = "url(/images/er_bg.gif)";
    //User ID =====================================
    if (form.userId.value.trim() == "") {
        message = message + "- User ID field cannot be left blank.\n";
        document.getElementById('userId_td').style.backgroundImage = errorImage;
    } else {
        if (chk_only_char2(form.userId) == false) {
            message = message + "- User ID may consist of any letter or number combination in addition to underscores.\n";
            document.getElementById('userId_td').style.backgroundImage = errorImage;
        } else {
            document.getElementById('userId_td').style.backgroundImage = "";
        }
    }

    //Password ===================================
    if (form.userpwd.value.trim() == "") {
        message = message + "- Password field cannot be left blank.\n";
        document.getElementById('userpwd_td').style.backgroundImage = errorImage;
    } else {
        if (form.userpwd.value.length < 6) {
            message = message + "- Password length cannot be less than 6 characters.\n";
            document.getElementById('userpwd_td').style.backgroundImage = errorImage;
        } else {
            document.getElementById('userpwd_td').style.backgroundImage = "";
        }
    }

    //Repassword ===================================
    if (form.reuserpwd.value.trim() == "") {
        message = message + "- Re-type Password field cannot be left blank.\n";
        document.getElementById('reuserpwd_td').style.backgroundImage = errorImage;
    } else {
        if (form.userpwd.value != form.reuserpwd.value) {
            message = message + "- Passwords do not match.\n";
            document.getElementById('reuserpwd_td').style.backgroundImage = errorImage;
        } else {
            document.getElementById('reuserpwd_td').style.backgroundImage = "";
        }
    }

    //Email =========================================
    if (form.email.value.trim() == "") {
        message = message + "- E-mail field cannot be left blank.\n";
        document.getElementById('email_td').style.backgroundImage = errorImage;
    } else {
        if (chk_char_email_a(form.email) == false) {
            message = message + "- E-mail address is not valid.\n";
            document.getElementById('email_td').style.backgroundImage = errorImage;
        } else {
            document.getElementById('email_td').style.backgroundImage = "";
        }
    }

    //Referral ID ===================================
    if (form.Games.value.trim() == "asdastory") {
        if (form.referralid != null) {
            if (form.userId.value.trim() != "" && form.referralid.value.trim() != "") {
                if (form.userId.value == form.referralid.value) {
                    message = message + "- Referral ID cannot be same to User ID.\n";
                    document.getElementById('txt_referralid').className = "textbox_error";
                }
            }
        }
    }

    //VCode =========================================
    if (form.vcode.value.trim() == "") {
        message = message + "- Verification field cannot be left blank.\n";
        document.getElementById('vcode_td').style.backgroundImage = errorImage;
    } else {
        document.getElementById('vcode_td').style.backgroundImage = "";
    }

    if (message.length > 0) {
        PrintErrorMessage2(message);
    } else {
        CheckEmailAvailableNVCode2(form.userId.value.trim(), form.email.value.trim(), form.vcode.value.trim())
    }
}

function ResetPassword() {
    document.joinform.userpwd.value = "";
    document.joinform.reuserpwd.value = "";
    document.getElementById('userpwd_td').style.backgroundImage = errorImage;
    document.getElementById('reuserpwd_td').style.backgroundImage = errorImage;
}

function ConfirmRegist2(form) {
    var message = "";
    var form = document.joinform;

    //User ID =====================================
    if (form.userId.value.trim() == "") {
        message = message + "- User ID field cannot be left blank.\n";
        document.getElementById('txt_userId').className = "textbox_error";
    } else {
        if (chk_only_char2(form.userId) == false) {
            message = message + "- User ID may consist of any letter or number combination in addition to underscores.\n";
            document.getElementById('txt_userId').className = "textbox_error";
        } else {
            document.getElementById('txt_userId').className = "textbox_basic";
        }
    }

    //Password ===================================
    if (form.userpwd.value.trim() == "") {
        message = message + "- Password field cannot be left blank.\n";
        document.getElementById('txt_userpwd').className = "textbox_error";
    } else {
        if (form.userpwd.value.length < 6) {
            message = message + "- Password length cannot be less than 6 characters.\n";
            document.getElementById('txt_userpwd').className = "textbox_error";
        } else {
            document.getElementById('txt_userpwd').className = "textbox_basic";
        }
    }

    //Repassword ===================================
    if (form.reuserpwd.value.trim() == "") {
        message = message + "- Re-type Password field cannot be left blank.\n";
        document.getElementById('txt_reuserpwd').className = "textbox_error";
    } else {
        if (form.userpwd.value != form.reuserpwd.value) {
            message = message + "- Passwords do not match.\n";
            document.getElementById('txt_reuserpwd').className = "textbox_error";
        } else {
            document.getElementById('txt_reuserpwd').className = "textbox_basic";
        }
    }

    //Email =========================================
    if (form.email.value.trim() == "") {
        message = message + "- E-mail field cannot be left blank.\n";
        document.getElementById('txt_email').className = "textbox_error";
    } else {
        if (chk_char_email_a(form.email) == false) {
            message = message + "- E-mail address is not valid.\n";
            document.getElementById('txt_email').className = "textbox_error";
        } else {
            document.getElementById('txt_email').className = "textbox_basic";
        }
    }

    //Referral ID ===================================
    if (form.Games.value.trim() == "asdastory") {
        if (form.referralid != null) {
            if (form.userId.value.trim() != "" && form.referralid.value.trim() != "") {
                if (form.userId.value == form.referralid.value) {
                    message = message + "- Referral ID cannot be same to User ID.\n";
                    document.getElementById('txt_referralid').className = "textbox_error";
                }
            }
        }
    }

    //VCode =========================================
    if (form.vcode.value.trim() == "") {
        message = message + "- Verification field cannot be left blank.\n";
        document.getElementById('txt_vcode').className = "textbox_error";
    } else {
        document.getElementById('txt_vcode').className = "textbox_basic";
    }

    if (message.length > 0) {
        PrintErrorMessage(message);
    } else {
        CheckEmailAvailableNVCode(form.userId.value.trim(), form.email.value.trim(), form.vcode.value.trim())
    }
}

var chkXHR = null;
function CheckEmailAvailableNVCode(userid, email, vcode) {
    var message = "";

    if (!chkXHR) {
        chkXHR = zXmlHttp.createRequest();
    } else if (chkXHR.readyState != 0) {
        chkXHR.abort();
    }

    url = "/account/CheckSingupDataAvailability.asp?userid=" + userid + "&email=" + email + "&vcode=" + vcode;
    chkXHR.open("get", url, true);
    chkXHR.onreadystatechange = function() {
        if (chkXHR.readyState == 4) {
            if (chkXHR.status == 200) {
                var aData = chkXHR.responseText;
                aDataArr = aData.split("|");
                if (aDataArr[0] < 0) {
                    alert("System Error.\nPlease try it again.");
                } else {
                    if (aDataArr[0] == "0" || aDataArr[1] == "0" || aDataArr[2] == "0") {
                        if (aDataArr[0] == "0") {
                            message = message + "- User ID is not available.\n";
                            document.getElementById('txt_userId').className = "textbox_error";
                        } else {
                            document.getElementById('txt_userId').className = "textbox_basic";
                        }
                        
                        if (aDataArr[1] == "0") {
                            message = message + "- Email address is not available.\n";
                            document.getElementById('txt_email').className = "textbox_error";
                        } else {
                            document.getElementById('txt_email').className = "textbox_basic";
                        }

                        if (aDataArr[2] == "0") {
                            message = message + "- Verification code is not valid\n";
                            document.getElementById('txt_vcode').className = "textbox_error";
                        } else {
                            document.getElementById('txt_vcode').className = "textbox_basic";
                        }

                        PrintErrorMessage(message);
                    } else {
                        document.joinform.submit();
                    }
                }
            }
        }
    };

    chkXHR.send(null);
}

var chkXHR2 = null;
function CheckEmailAvailableNVCode2(userid, email, vcode) {
    var message = "";
    var errorImage = "url(/images/er_bg.gif)";

    if (!chkXHR2) {
        chkXHR2 = zXmlHttp.createRequest();
    } else if (chkXHR2.readyState != 0) {
        chkXHR2.abort();
    }

    url = "/account/CheckSingupDataAvailability.asp?userid=" + userid + "&email=" + email + "&vcode=" + vcode;
    chkXHR2.open("get", url, true);
    chkXHR2.onreadystatechange = function() {
        if (chkXHR2.readyState == 4) {
            if (chkXHR2.status == 200) {
                var aData = chkXHR2.responseText;
                aDataArr = aData.split("|");
                if (aDataArr[0] < 0) {
                    alert("System Error.\nPlease try it again.");
                } else {
                    if (aDataArr[0] == "0" || aDataArr[1] == "0" || aDataArr[2] == "0") {
                        if (aDataArr[0] == "0") {
                            message = message + "- User ID is not available.\n";
                            document.getElementById('userId_td').style.backgroundImage = errorImage;
                        } else {
                            document.getElementById('userId_td').style.backgroundImage = "";
                        }

                        if (aDataArr[1] == "0") {
                            message = message + "- Email address is not available.\n";
                            document.getElementById('email_td').style.backgroundImage = errorImage;
                        } else {
                            document.getElementById('email_td').style.backgroundImage = "";
                        }

                        if (aDataArr[2] == "0") {
                            message = message + "- Verification code is not valid\n";
                            document.getElementById('vcode_td').style.backgroundImage = errorImage;
                        } else {
                            document.getElementById('vcode_td').style.backgroundImage = "";
                        }

                        PrintErrorMessage2(message);
                    } else {
                        document.joinform.submit();
                    }
                }
            }
        }
    };

    chkXHR2.send(null);
}

function PrintErrorMessage(message) {
    alert(message);
    ResetPassword2();
}

function PrintErrorMessage2(message) {
    errorDiv = document.getElementById("errorMessage");
    errorDiv.innerHTML = "<font color='#fa5f00'>" + message + "</font>";
    errorDiv.style.display = "block";
    ResetPassword();
}

function ResetPassword2() {
    document.joinform.userpwd.value = "";
    document.joinform.reuserpwd.value = "";
    document.getElementById('txt_userpwd').className = "textbox_error";
    document.getElementById('txt_reuserpwd').className = "textbox_error";
}

function loadNewVideo(id, startSeconds) {
    ytplayer = document.getElementById("myytplayer");
    if (ytplayer) {
        ytplayer.loadVideoById(id, parseInt(startSeconds));
    }
}

function cueNewVideo(id, startSeconds) {
    ytplayer = document.getElementById("myytplayer");
    if (ytplayer) {
        ytplayer.cueVideoById(id, startSeconds);
    }
}

function ChangeMovieClip(num) {
    if (num == 1) {
        document.getElementById("mlbmovietap01").src = "/images/m_tab01_ov.gif";
        document.getElementById("mlbmovietap02").src = "/images/m_tab02.gif";
        //loadNewVideo("wVGxlbeNjgs", 0);
        cueNewVideo("wVGxlbeNjgs", 0);
    } else {
        document.getElementById("mlbmovietap01").src = "/images/m_tab01.gif";
        document.getElementById("mlbmovietap02").src = "/images/m_tab02_ov.gif";
        //loadNewVideo("2H20-GKwc-E", 0);
        cueNewVideo("2H20-GKwc-E", 0);
    }
}


