﻿var ObjectType = {
    Gia: 1,
    DienTich: 2,
    DVTienTe: 3,
    DVTinh: 4
};
var ObjectID = {
    ThanhTienID: '',
    DVTinhID: '',
    DVTienTeID: ''
};

var gia = 0.0;
var dientich = 0.0;
var selDVTinh = document.getElementById(ObjectID.DVTinhID);

function TongGia(theObject)
{
    if (theObject.Type == ObjectType.Gia || theObject.Type == ObjectType.DienTich)
    {
        var num_str = theObject.CObject.value.replace(/\./gi, '');
        num_str = num_str.replace(',', '.');
        try
        {
            //var num = parseFloat(num_str);
            if (theObject.Type == ObjectType.Gia)
                gia = parseFloat(num_str);
            else dientich = parseFloat(num_str);

            if (gia == isNaN || dientich == isNaN)
                document.getElementById(ObjectID.ThanhTienID).innerHTML = "~";

            else
            {
                if (document.getElementById(ObjectID.DVTinhID).options[document.getElementById(ObjectID.DVTinhID).selectedIndex].value != 3)
                    document.getElementById(ObjectID.ThanhTienID).innerHTML = N2S(gia * dientich); // Chi nhan gia' voi' truong hop la met' vuong
                else document.getElementById(ObjectID.ThanhTienID).innerHTML = N2S(gia);
            } 
            //alert(document.getElementById('lbTongTien').innerText);
        }
        catch (err) { alert(err); }
        //else alert('Khong dung dinh dang so');
    }
    else if (theObject.Type == ObjectType.DVTienTe)
    {
        document.getElementById(ObjectID.DVTienTeID).innerHTML = theObject.CObject.options[theObject.CObject.selectedIndex].text;
    }
    else if(theObject.Type == ObjectType.DVTinh)
    { // Don vi tinh
        if (theObject.CObject.options[theObject.CObject.selectedIndex].value != 3)
        {
            document.getElementById(ObjectID.ThanhTienID).innerHTML = N2S(gia * dientich);
        }
        else document.getElementById(ObjectID.ThanhTienID).innerHTML = N2S(gia);
        //document.getElementById(ObjectID.DVTinhID).innerHTML = theObject.CObject.options[theObject.CObject.selectedIndex].text;
    }
}
function N2S(valueStr)
{
    var numStr = new String(valueStr);
    var culture = 'en-US';
    var len = 2;

    if (culture == 'vi-VN')
        numStr = numStr.replace(',', '.');

    var arrNum = numStr.split('.');
    var fixed = '';
    var prec = '';

    if (numStr.indexOf('e+') > -1 || numStr.indexOf('E+') > -1)
        prec = parseFloat(numStr);
    else {
        if (arrNum.length > 1) {
            prec = arrNum[0];
            fixed = arrNum[1];
        }
        else prec = arrNum;
    }

    var value = parseInt(prec);
    if (isNaN(value)) return 'NaN';

    if (value == 0) return '0';
    var strNum = '';
    while (value >= 1000) {
        var mod = value % 1000;
        if (mod < 100 && mod >= 10) mod = '0' + mod;
        else if (mod < 10) mod = '00' + mod;
        strNum = '.' + mod + strNum;
        value = Math.floor(value / 1000);
    }
    if (value != 0)
        strNum = value + strNum;

    if (fixed.length > 0) {
        if (len > 0)
            fixed = fixed.substr(0, len > fixed.length ? fixed.length : len);
        strNum = strNum + ',' + fixed;
    }
    return strNum;
}
function ChangeCurentGia(ctr_Select, lbl_ID, DVT_Truoc, Gia_Truoc) {

    var lbl_Gia = document.getElementById(lbl_ID);
    if (!ctr_Select || !lbl_Gia)
        return;
    var DVT_Sau = ctr_Select.options[ctr_Select.selectedIndex].value;
    //Chuyển kiểu số định dạng việt nam --> định dạng kiểu mỹ

    Gia_Truoc = Number(Gia_Truoc.replace(",", "."))
    if (Gia_Truoc > 0) {
        var Gia_Sau = ChangePrice(DVT_Truoc, DVT_Sau, Gia_Truoc);
        lbl_Gia.innerHTML = NummberVN(Gia_Sau) + '(';
    }
    else {
        lbl_Gia.innerHTML = NummberVN(Gia_Sau) + '(';
    }
    //alert(document.getElementById(lbl_ID).innerHTML);
}
//Hàm làm tròn
function RoundNummer(num_So, num_DoDaiThapPhan) {
    num_So = Number(num_So);
    var num_Temp = 1;
    for (var i = 0; i < num_DoDaiThapPhan; i++) {
        num_Temp *= 10;
    }
    return Math.round(num_So * num_Temp) / num_Temp;
}
//Chuyển kiểu sang định dạng số của việtnam VD:1,2000,333.00
function NummberVN(num_So) {

    var num_SoVN = "";
    //s = num_So;
    //Làm tròn số
    num_So = RoundNummer(num_So, 2);
    //Lấy phần nguyên
    var so_Nguyen = Math.floor(num_So);
    //Lấy phần dư (Phần thập phân)
    var So_Du = num_So - so_Nguyen;
    //Làm tròn số dư
    So_Du = RoundNummer(So_Du, 2);
    So_Du = So_Du * 100;
    So_Du = Math.round(So_Du);
    //Tạo mảng các chữ số thuộc phần nguyên
    var arr_s = (so_Nguyen + "").split("");

    var j = 1;
    for (var i = arr_s.length - 1; i >= 0; i--) {

        if (j == 4) {
            num_SoVN = arr_s[i] + "." + num_SoVN;
            j = 1;
        }
        else {
            num_SoVN = arr_s[i] + num_SoVN;
        }
        j++;
    }
    if (So_Du != 0) {
        num_SoVN = num_SoVN + "," + So_Du;
    }
    else {
        num_SoVN = num_SoVN + ",00";
    }
    return num_SoVN;
}
function ChangePrice(DVT_Truoc, DVT_Sau, Gia_Truoc) {

    if (!vGoldSjcSell || !vForexs || !vCosts)
        return Gia_Truoc;

    var GiaSJC = Number(vGoldSjcSell.replace(",", "")) * 1000;
    var GiaUSD = 0;
    var GiaVND_Truoc = 0;
    var Gia_Sau = 0;
    for (var i = 0; i < vForexs.length; i++) {
        if (vForexs[i].toUpperCase() == "USD") {
            GiaUSD = Number(vCosts[i]) * 1000;
            break;
        }
    }
    //Chuyển tiền trước về dạnh VND
    switch (DVT_Truoc.toUpperCase()) {
        case "USD":
            GiaVND_Truoc = Gia_Truoc * GiaUSD;
            break;
        case "VND":
            GiaVND_Truoc = Gia_Truoc;
            break;
        case "SJC":
            GiaVND_Truoc = Gia_Truoc * GiaSJC;
            break;
        default:
            GiaVND_Truoc = Gia_Truoc;
    }

    switch (DVT_Sau.toUpperCase()) {
        case "USD":
            Gia_Sau = GiaVND_Truoc / GiaUSD;
            break;
        case "VND":
            Gia_Sau = GiaVND_Truoc;
            break;
        case "SJC":
            Gia_Sau = GiaVND_Truoc / GiaSJC;
            break;
    }

    return RoundNummer(Gia_Sau, 2);
}
function RefreshCapcha(img_Load_ID, img_Cap_ID, w, h)
{
    var URL_Get = "../Capcha.ashx?W=" + w + "&H=" + h + "&time=" + (new Date()).getTime();
    var ctr_img_Capcha = document.getElementById(img_Cap_ID);
    var ctr_img_Load = document.getElementById(img_Load_ID);
    if (ctr_img_Load) {
        ctr_img_Load.src = "../Images/Icon/Wait.gif";
        ctr_img_Load.style.display = "inline";
    }
    if (ctr_img_Capcha) {
        ctr_img_Capcha.src = URL_Get;
    }
    return false;
}