var xmlHttp = null;

function getXmlHttpObject() {
    var xmlHttpObject = null;
    try {
        // Firefox, Opera 8.0+, Safari...
        xmlHttpObject = new XMLHttpRequest();
    }
    catch (ex) {
        // Internet Explorer...
        try {
            xmlHttpObject = new ActiveXObject('Msxml2.XMLHTTP');
        }
        catch (ex) {
            xmlHttpObject = new ActiveXObject('Microsoft.XMLHTTP');
        }
    }

    return xmlHttpObject;
}

function UpdateIsSms() {
    var cbxIsSms;
    var c = new Array();
    c = document.getElementsByTagName('input');
    for (var i = 0; i < c.length; i++) {
        if (c[i].type == 'checkbox' && c[i].id == 'cbxIsSms') {
            if (c[i].checked == true)
                cbxIsSms = 1;
            else
                cbxIsSms = 0;
        }
    }

    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }

        var url = "/Ajax/AccountInformation.aspx?q=" + cbxIsSms;
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                if (cbxIsSms == '0')
                    alert('Dịch vụ nhận tin nhắn qua SMS đã TẮT');
                else
                    alert('Dịch vụ nhận tin nhắn qua SMS đã BẬT');
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
}

function CheckUsername(username) {
    var valueUsername = document.getElementById(username).value;

    var reg = /^[a-zA-Z0-9]{6,30}$/;
    if (!reg.test(valueUsername)) {
        alert('Tên tài khoản tối thiểu 6 và tối đa 30 ký tự, phải là dạng chữ số và chữ cái');
        return;
    }

    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }

        var url = "/Ajax/CheckUsername.aspx?q=" + encodeURIComponent(valueUsername);
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                alert(xmlHttp.responseText);
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
}

function CheckMobile(mobile) {
    var valueMobile = document.getElementById(mobile).value;

    var reg = /^[0-9]{10,11}$/;
    if (!reg.test(valueMobile)) {
        alert('Số điện thoại phải là chữ số, tối thiểu 10 số');
        return;
    }

    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }

        var url = "/Ajax/CheckMobile.aspx?q=" + valueMobile;
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                alert(xmlHttp.responseText);
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
}

function ChangePassword() {
    var txtPasswordOld = document.getElementById('txtPasswordOld');
    var txtPasswordNew = document.getElementById('txtPasswordNew');
    var txtPasswordNewAgain = document.getElementById('txtPasswordNewAgain');
    var txtCode = document.getElementById('txtCode');

    if (txtPasswordOld.value == '') {
        alert('Mật khẩu cũ không được để trống');
        txtPasswordOld.focus();
        return;
    }

    if (txtPasswordNew.value == '') {
        alert('Mật khẩu mới không được để trống');
        txtPasswordNew.focus();
        return;
    }

    if (txtPasswordOld.value == txtPasswordNew.value) {
        alert('Mật khẩu mới không được trùng với mật khẩu cũ');
        txtPasswordNew.focus();
        return;
    }

    if (txtPasswordNewAgain.value == '') {
        alert('Xác nhận mật khẩu mới không được để trống');
        txtPasswordNewAgain.focus();
        return;
    }

    if (txtPasswordNew.value != txtPasswordNewAgain.value) {
        alert('Xác nhận mật khẩu mới phải trùng mật khẩu mới');
        txtPasswordNewAgain.focus();
        return;
    }

    if (txtCode.value == '') {
        alert('Mã xác nhận không được để trống');
        txtCode.focus();
        return;
    }

    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }

        var url = "/Ajax/ChangePassword.aspx?c=" + txtCode.value + "&p1=" + txtPasswordOld.value + "&p2=" + txtPasswordNew.value;
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                alert(xmlHttp.responseText);
                if (xmlHttp.responseText.indexOf('Đã thay đổi mật khẩu thành công!') != -1) {
                    txtPasswordOld.value = '';
                    txtPasswordNew.value = '';
                    txtPasswordNewAgain.value = '';
                    txtCode.value = '';
                    window.setTimeout('var url = window.location.href; window.location.href = url', 0);
                }
                else if (xmlHttp.responseText.indexOf('Mã xác nhận nhập không chính xác.') != -1)
                    txtCode.focus();
                else if (xmlHttp.responseText.indexOf('Mật khẩu cũ nhập không chính xác.') != -1)
                    txtPasswordOld.focus();
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
}

var dtCh = "/";
var minYear = 1900;
var maxYear = 2100;

function isInteger(s) {
    var i;
    for (i = 0; i < s.length; i++) {
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag) {
    var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++) {
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary(year) {
    // February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ((!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28);
}
function DaysArray(n) {
    for (var i = 1; i <= n; i++) {
        this[i] = 31
        if (i == 4 || i == 6 || i == 9 || i == 11) { this[i] = 30 }
        if (i == 2) { this[i] = 29 }
    }
    return this
}

function isDate(dtStr) {
    var daysInMonth = DaysArray(12)
    var pos1 = dtStr.indexOf(dtCh)
    var pos2 = dtStr.indexOf(dtCh, pos1 + 1)
    var strMonth = dtStr.substring(pos1 + 1, pos2)
    var strDay = dtStr.substring(0, pos1)
    var strYear = dtStr.substring(pos2 + 1)
    strYr = strYear
    if (strDay.charAt(0) == "0" && strDay.length > 1) strDay = strDay.substring(1)
    if (strMonth.charAt(0) == "0" && strMonth.length > 1) strMonth = strMonth.substring(1)
    for (var i = 1; i <= 3; i++) {
        if (strYr.charAt(0) == "0" && strYr.length > 1) strYr = strYr.substring(1)
    }
    month = parseInt(strMonth)
    day = parseInt(strDay)
    year = parseInt(strYr)
    if (pos1 == -1 || pos2 == -1) {
        alert("Xin vui lòng nhập theo định dạng : ngày/tháng/năm")
        return false
    }
    if (strMonth.length < 1 || month < 1 || month > 12) {
        alert("Bạn đã nhập sai tháng. Xin vui lòng nhập lại tháng")
        return false
    }
    if (strDay.length < 1 || day < 1 || day > 31 || (month == 2 && day > daysInFebruary(year)) || day > daysInMonth[month]) {
        alert("Bạn đã nhập sai ngày. Xin vui lòng nhập lại ngày")
        return false
    }
    if (strYear.length != 4 || year == 0 || year < minYear || year > maxYear) {
        alert("Xin vui lòng nhập lại năm sinh ")
        return false
    }
    if (dtStr.indexOf(dtCh, pos2 + 1) != -1 || isInteger(stripCharsInBag(dtStr, dtCh)) == false) {
        alert("Please enter a valid date")
        return false
    }
    return true
}

function ValidateForm() {
    var dt = document.getElementById("txtBirthDay")
    if (isDate(dt.value) == false) {
        dt.focus()
        return false
    }
    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }
        var url = "/Ajax/AccountInformation.aspx?bday=" + dt.value;
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                alert('Đã cập nhật ngày sinh');
                window.setTimeout('var url = window.location.href; window.location.href = url', 0);
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
    return true
}

function UpdateBrithday() {
    var txtBirthday = document.getElementById("txtBirthDay")
    alert(txtBirthday);
    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }

        var url = "/Ajax/AccountInformation.aspx?bday=" + txtBirthday.value;
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                //divDominant.innerHTML = xmlHttp.responseText;
                alert('Đã cập nhật ngày sinh');
            }
            else {
                //divDominant.innerHTML = "<img src='/images/loading.gif' alt='' /> Đang tải dữ liệu";
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
 }

function Login() {
    var txtUsernameLogin = document.getElementById('txtUsernameLogin');
    var txtPasswordLogin = document.getElementById('txtPasswordLogin');

    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }

        var url = "/Ajax/Login.aspx?u=" + txtUsernameLogin.value + "&p=" + txtPasswordLogin.value;
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                if (xmlHttp.responseText.indexOf('Đăng nhập thành công.') != -1) {
                    window.setTimeout('var url = window.location.href; window.location.href = url', 0);
                }
                else if (xmlHttp.responseText.indexOf('Tên tài khoản hay mật khẩu nhập không đúng.') != -1) {
                    alert(xmlHttp.responseText);
                    txtUsernameLogin.focus();
                }
                else if (xmlHttp.responseText.indexOf('Tên tài khoản chưa được kích hoạt.') != -1) {
                    alert(xmlHttp.responseText);
                    txtUsernameLogin.focus();
                }
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
}

function Logout() {
    if (confirm("Bạn có chắc chắn muốn đăng xuất không?")) {
        try {
            xmlHttp = getXmlHttpObject();

            if (xmlHttp == null) {
                alert('Your browser does not support AJAX.');

                return;
            }

            var url = "/Ajax/Logout.aspx";
            xmlHttp.onreadystatechange = function() {
                if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                    if (xmlHttp.responseText.indexOf('Đăng xuất thành công.') != -1) {
                        window.setTimeout('var url = window.location.href; window.location.href = url', 0);
                    }
                }
            };
            xmlHttp.open("GET", url, true);
            xmlHttp.send(null);
        }
        catch (e) {
            alert('An error occured');
        }
    }
}

//validate number only
function validatenumber(str) {
    var strValidChars = "0123456789";
    var strChar;
    var blnResult = true;

    //  test strString consists of valid characters listed above
    for (i = 0; i < str.length && blnResult == true; i++) {
        strChar = str.charAt(i);
        if (strValidChars.indexOf(strChar) == -1) {
            return false;
        }
    }
    return true;

}

function GetDominant(currentPage) {
    var c = new Array();
    c = document.getElementsByTagName('input');

    var code = 'DG';
    var username = document.getElementById('sUsername').title;
    var phone = document.getElementById('sMobile').title;
    var session
    for (var i = 0; i < c.length; i++) {
        if (c[i].type == 'radio' && c[i].checked) {
            session = c[i].value;
        }
    }
    var ddlRecodPerPage = document.getElementById("ddlRecodPerPage");
    var perPage = ddlRecodPerPage.options[ddlRecodPerPage.selectedIndex].value;
    var divDominant = document.getElementById('divDominant');

    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }

        var url = "/Ajax/GetDominant.aspx?cpage=" + currentPage + "&ppage=" + perPage + "&code=" + code + "&session=" + session + "&phone=" + phone + "&username=" + username;
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                divDominant.innerHTML = xmlHttp.responseText;
            }
            else {
                divDominant.innerHTML = "<img src='/images/loading.gif' alt='' /> Đang tải dữ liệu";
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
}
function GetHistorySetPrice(currentPage) {
    var c = new Array();
    c = document.getElementsByTagName('input');

    var code = 'DG';
    var phone = document.getElementById('sMobile').title;
    var username = document.getElementById('sUsername').title;
    var ddlSession = document.getElementById("ddlSession");
    var session = ddlSession.options[ddlSession.selectedIndex].value;
    var ddlMonth = document.getElementById("ddlMonth");
    var month = ddlMonth.options[ddlMonth.selectedIndex].value;
    var ddlYear = document.getElementById("ddlYear");
    var year = ddlYear.options[ddlYear.selectedIndex].value;
    var ddlRecodPerPage = document.getElementById("ddlRecodPerPage");
    var perPage = ddlRecodPerPage.options[ddlRecodPerPage.selectedIndex].value;
    var divHistorySetPrice = document.getElementById('divHistorySetPrice');

    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }

        var url = "/Ajax/GetHistorySetPrice.aspx?cpage=" + currentPage + "&ppage=" + perPage + "&code=" + code + "&session=" + session + "&phone=" + phone + "&username=" + username + "&month=" + month + "&year=" + year;
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                divHistorySetPrice.innerHTML = xmlHttp.responseText;
            }
            else {
                divHistorySetPrice.innerHTML = "<img src='/images/loading.gif' alt='' /> Đang tải dữ liệu";
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
}
function GetHistoryLoadingPoint(currentPage) {
    var c = new Array();
    c = document.getElementsByTagName('input');

    var userid = document.getElementById('iUserID').title;
    var ddlMonth = document.getElementById("ddlMonth");
    var month = ddlMonth.options[ddlMonth.selectedIndex].value;
    var ddlYear = document.getElementById("ddlYear");
    var year = ddlYear.options[ddlYear.selectedIndex].value;
    var ddlRecodPerPage = document.getElementById("ddlRecodPerPage");
    var perPage = ddlRecodPerPage.options[ddlRecodPerPage.selectedIndex].value;
    var divHistoryLoadingPoint = document.getElementById('divHistoryLoadingPoint');

    try {
        xmlHttp = getXmlHttpObject();

        if (xmlHttp == null) {
            alert('Your browser does not support AJAX.');

            return;
        }

        var url = "/Ajax/GetHistoryLoadingPoint.aspx?cpage=" + currentPage + "&ppage=" + perPage + "&userid=" + userid + "&month=" + month + "&year=" + year;
        xmlHttp.onreadystatechange = function() {
            if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
                divHistoryLoadingPoint.innerHTML = xmlHttp.responseText;
            }
            else {
                divHistoryLoadingPoint.innerHTML = "<img src='/images/loading.gif' alt='' /> Đang tải dữ liệu";
            }
        };
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }
    catch (e) {
        alert('An error occured');
    }
}

