﻿/*library Using common*/
function Global() { }
/*kiểm tra mã số thuế có hợp lệ hay không*/
Global.prototype.checkMaSoThue = function (strMST) {
    strMST = strMST.substr(0, 10);
    if (!this.isNumber(strMST)) {
        return false;
    }
    else {
        var objArray = [31, 29, 23, 19, 17, 13, 7, 5, 3];
        var intTotal = 0;
        for (var i = 0; i < strMST.length - 1; i++) {
            intTotal += parseInt(strMST.substr(i, 1)) * objArray[i];
        }
        if (parseInt(strMST.substr(9, 1)) == (10 - intTotal % 11)) {
            return true;
        }
        else
            return false;
    }
}
/*kiểm tra 1 chuỗi có phải là số hay không*/
Global.prototype.isNumber = function (strNumber) {
    var regEx = new RegExp(/^ *[0-9]+ *$/);
    if (strNumber.length > 0 && regEx.test(strNumber.trim())) {
        return true;
    }
    else
        return false
}
Global.prototype.isMobile = function (strNumber) {
    var regEx = new RegExp(/^ *[0-9]+ *$/);
    if (strNumber.length > 9 && regEx.test(strNumber.trim())) {
        return true;
    }
    else
        return false
}
/*kiểm tra ràng buộc nhập liêu - nhận vào 1 hoặc 2 tham số đối số 1 là ID element, đối số 2 là chuỗi title của element*/
Global.prototype.requireInput = function () {
    if (arguments.length == 1 && $("#" + arguments[0]).length > 0)
        return $("#" + arguments[0]).val().toString().length > 0;
    else if (arguments.length == 2 && $("#" + arguments[0]).length > 0) {
        return ($("#" + arguments[0]).val().trim() != '' && $("#" + arguments[0]).val().trim() != arguments[1].trim());
    }
    else
        return false;
}
/*chuyển về định dạng tiền tệ */
Global.prototype.currencyToString = function (currency, char) {
    if (currency.length > 0) {
        var temp = currency.trim().length;
        var strResult = "";
        var temp1 = currency.trim();
        var temp3 = "";
        while (temp > 3) {
            temp1 = currency.trim().substring(0, temp - 3);
            var inttam = temp - 3;
            var temp2 = currency.trim().substring(inttam, temp);
            temp -= 3;
            var temp3 = strResult;
            strResult = char + temp2;
            strResult += temp3;
        }
        temp3 = strResult;
        strResult = temp1 + temp3;
        return strResult;
    }
    else
        return '';
}
/*kiểm tra chuỗi có phải là Email hay không */
Global.prototype.isEmail = function (IDctrl) {
    var regEx = new RegExp(/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/);
    if ($("#" + IDctrl).length > 0) {
        var str = $("#" + IDctrl).val();
        if (regEx.test(str.trim())) {
            return true;
        }
    }
    return false;
}
/*kiểm tra ràng buộc nhập liêu - truyền vào ID các element muốn kiểm tra */
Global.prototype.requireListInput = function () {
    for (var i = 0; i < arguments.length; i++) {
        if (!this.requireInput(arguments[i]))
            return false;
    }
    return true;
}
Global.prototype.focus = function (obj, temp) {
    if ($(obj).val().trim() == temp)
        $(obj).val('');
}
Global.prototype.blur = function (obj, temp) {
    if ($(obj).val().trim() == '')
        $(obj).val(temp);
}
Global.prototype.showPopup = function (obj) {
    $('body').append('<div id=\'bg-popup\'></div>');
    $(obj).fadeIn();
}
Global.prototype.closePopup = function (obj) {
    $(obj).fadeOut(function () {
        $('#bg-popup').fadeOut(function () {
            $('#bg-popup').remove();
        });
    });
}
function Cookie() {    
    Cookie.prototype.setCookie= function(key, value, expireminutes) {
        var exdate = new Date();
		var newtime = exdate.getTime() + (expireminutes * 60000);
		exdate = new Date(newtime);
        document.cookie = key + "=" + value + ((expireminutes == null) ? "" : "; expires=" + exdate.toUTCString());
    }
    Cookie.prototype.getCookie= function(key) {
        if (document.cookie.length > 0) {
            c_start = document.cookie.indexOf(key + "=");
            if (c_start != -1) {
                c_start = c_start + key.length + 1;
                c_end = document.cookie.indexOf(";", c_start);
                if (c_end == -1) c_end = document.cookie.length
                return document.cookie.substring(c_start, c_end);
            }
        } 
        return "";
    }
    Cookie.prototype.UpdateCookie= function(key, NewValue) {
        if (document.cookie.length > 0) {
            c_start = document.cookie.indexOf(key + "=");
            if (c_start != -1) {
                c_start = c_start + key.length + 1;
                c_end = document.cookie.indexOf(";", c_start);
                if (c_end == -1) c_end = document.cookie.length
                var value = document.cookie.substring(c_start, c_end);
                document.cookie.replace(value, NewValue);
                var CookieName = key + "=";
                var CookieAfter = document.cookie.substring(c_end, document.cookie.length);
                document.cookie = CookieName + NewValue + CookieAfter;
            }
        }
    }
    Cookie.prototype.clearCookie = function(key) {
        setCookie(key, "", -1);
    }
}
function Common() {
}
var objGlobal = function () { };
objGlobal.prototype = Global.prototype;
Common.prototype.Global = new objGlobal();
var objCookie = function () { };
objCookie.prototype = Cookie.prototype;
Common.prototype.Cookie =  new objCookie();

function JWeblib() {
}
var objCommon = function () { };
objCommon.prototype = Common.prototype;
JWeblib.prototype.common = new objCommon();
