//var _navua = navigator.userAgent.toLowerCase();
//IsIE = /msie/.test(_navua);
//IsIE6 = /msie 6.0/.test(_navua);
//IsIE7 = /msie 7.0/.test(_navua);
//IsFF = /firefox/.test(_navua);
//IsSafari = /version.*safari/.test(_navua);
//IsChrome = /chrome/.test(_navua);
//function testf(a) {
//    alert(a);
//}

//////////////////////// called by htmlhelper
function FreshThickBoxParent()
{
    window.location = ThickBoxParentUrl;
}
function FreshParent(ParentUrl)
{
    window.location = window.location;
}

if (jQuery.prompt != null) {
    window.alert = function(msgContent) {
        jQuery.prompt(msgContent,
        {
            buttons: { Ok: true },
            prefix: 'cleanblue',
            opacity: 0.1,
            show: 'slideDown'
        });
    }
} 



/////////////////////////////////////////////

/////////////jQuery Impromptu
function ImpromtAlert(msgContent)
{
    jQuery.prompt(msgContent,
        {
            buttons: { Ok: true },
            prefix: 'cleanblue',
            opacity: 0.1 ,
            show: 'slideDown'
        });

}

function ImpromtConfirm(msgContent, CallbackFuntion)
{
    jQuery.prompt(msgContent,
        {
            callback: CallbackFuntion,
            buttons: { Yes: true, No: false },
            prefix: 'cleanblue',
            opacity: 0.1,
            show: 'slideDown'
        });

}

function ImpromtDeleteList(CallbackFuntion)
{
    var hasChecked = false;
    jQuery("input:checkbox").each(function() { if (this.checked == true) hasChecked = true; });
    if (hasChecked == false) {

        ImpromtAlert("Please select item to delete first.");
        return false;
    }
    ImpromtConfirm("Do you want to delete?", CallbackFuntion)

}


 
///////////////////////////


/*
$(function()
{
    var selectedColor = "#e4efd7";
    var mouseOverColor = "#FEFCE0";
    var oldTrColor = "";
    var selectedRowIndex = 0;

    $(".tblList tr").each(function(i)
    {

        if (i % 2 == 0) {
            $(this).css("background-color", "#F5F5F5");
        } else {
            $(this).css("background-color", "#FFFFFF");
        }

        $(this).mouseover(function(i)
        {
            if ($(this).css("background-color") == selectedColor) {
                $(this).css("background-color", selectedColor);
            } else {
                oldTrColor = $(this).css("background-color");
                $(this).css("background-color", mouseOverColor);
            }
        }).mouseout(function(i)
        {
            if ($(this).css("background-color") == selectedColor) {
                $(this).css("background-color", selectedColor);
            } else {
                SetAltRowColor(this);
            }
        }).click(function(i)
        {
            if ($(this).css("background-color") == selectedColor) {
                SetAltRowColor(this);
            } else {
                $(this).css("background-color", selectedColor);
            }
        });
    });
});
*/

function FilltblList(id) {
    var selectedColor = "#e4efd7";
    var mouseOverColor = "#FEFCE0";
    var oldTrColor = "";
    var selectedRowIndex = 0;

    jQuery("#" + id + " tr").each(function(i) {

        if (i % 2 == 0) {
            jQuery(this).css("background-color", "#F5F5F5");
        } else {
        jQuery(this).css("background-color", "#FFFFFF");
        }

        jQuery(this).mouseover(function(i) {
        if (jQuery(this).css("background-color") == selectedColor) {
            jQuery(this).css("background-color", selectedColor);
            } else {
            oldTrColor = jQuery(this).css("background-color");
                jQuery(this).css("background-color", mouseOverColor);
            }
        }).mouseout(function(i) {
        if (jQuery(this).css("background-color") == selectedColor) {
            jQuery(this).css("background-color", selectedColor);
            } else {
                SetAltRowColor(this);
            }
        }).click(function(i) {
        if (jQuery(this).css("background-color") == selectedColor) {
                SetAltRowColor(this);
            } else {
            jQuery(this).css("background-color", selectedColor);
            }
        });
    });
}


function SetAltRowColor(Obj)
{
    selectedRowIndex = $(".tblList tr").index(Obj);

    if (selectedRowIndex % 2 == 0) {
        jQuery(Obj).css("background-color", "#F5F5F5");
    } else {
    jQuery(Obj).css("background-color", "#FFFFFF");
    }
}




function Trim(source)
{
    return source.replace(/(^\s*)|(\s*$)/g, "");
}

function LTrim(source)
{
    return source.replace(/(^\s*)/g, "");
}

function RTrim(source)
{
    return source.replace(/(\s*$)/g, "");
}
function IsEmail(source)
{
    var reg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
    return reg.test(source);
}

function $V(ctlID)
{
    var ret;

    var ctl = document.getElementById(ctlID);
    switch (ctl.type) {
        case "text":
            ret = ctl.value;
            break;
        case "textarea":
            ret = ctl.value;
            break;
        case "select-one":
            ret = ctl.options[ctl.selectedIndex].value;
            break;
        case "checkbox":
            ret = ctl.checked;
            break;
        case "radio":
            ret = ctl.checked;
            break;
        default:
            ret = null;
            break;
    }

    return ret;
}

function $F(id)
{
    return document.getElementById(id);
}

function SetMaxLength(ctl, len)
{
    var v = ctl.value;
    if (v.length > len) {
        ctl.value = v.substring(0, len);
    }
}

function FormatPhone(sender)
{
    var phone = sender;
    var digits = phone.value.replace(/[^0-9-]/ig, '');

    if (digits.length > 15)
        digits = digits.substring(0, 15);

//    if (digits.length > 6) {
//        phone.value = digits.substring(0, 3) + '-' + digits.substring(3, 6) + '-' + digits.substring(6, digits.length);
//    }
//    else if (digits.length > 3) {
//        phone.value = digits.substring(0, 3) + '-' + digits.substring(3, digits.length);
//    }
//    else {
//        phone.value = digits;
    //    }
    phone.value = digits;
}

function FormatInt(sender)
{
    if (sender.value == "")
        sender.value = 0;
    else
        sender.value = sender.value.replace(/[^0-9]/ig, '');

    if (sender.value.length > 1) {
        sender.value = sender.value.replace(/^0/ig, '');
    }
}

function InputCharInt(sender) {

    sender.value = sender.value.replace(/[\W]/g, '')
}

function InputInt(sender)
{
    sender.value = sender.value.replace(/[^0-9]/ig, '');
}
//function FormatDouble(sender)
//{

//    if (!/^\d*(\.\d*)?$/.test(sender.value)) {
//        sender.value = sender.value.substr(0, sender.value.length - 1);
//    }


//}

function FormatDouble(sender, e,decimalNumber) {
    //var v = sender.value.replace(/[^0-9.]/ig, '');
    var n = /[^0-9.]/;
    if (e != undefined) {
//        alert(e);
        var keycode = KeyInput(e);
        if (keycode != 37 && keycode != 39) {
            if (n.test(sender.value)) {
                sender.value = sender.value.replace(/[^0-9.]/ig, '');
                return;
            }
        }
    }
    if (decimalNumber == undefined) {
        var   re=/^\d*(\.\d*)?$/;
    }
    else {
        eval("var   re=/^\\d*(\\.\\d{0," + decimalNumber.toString() + "})?$/");
    }

    if (!re.test(sender.value)) {
        sender.value = sender.value.substr(0, sender.value.length - 1);
    }
}



function KeyInput(evt) {
    if (window.event) // IE
    {
        return evt.keyCode;
    }
    else if (evt.which) // FF NE
    {
        return evt.which;
    }
}


function FormatCreditCardNo(sender)
{
    sender.value = sender.value.replace(/[^0-9]/ig, '');

    if (sender.value.length > 18)
        sender.value = sender.value.substring(0, 18);
}

function FormatSecurityCode(sender)
{
    sender.value = sender.value.replace(/[^0-9]/ig, '');

 
    if (sender.value.length > 4)
        sender.value = sender.value.substring(0, 4);
}


function FormatZipCode(sender)
{
    var target = sender;
    var z = target.value.replace(/[^0-9a-z-]/ig, '');

    if (z.length > 10)
        z = z.substring(0, 10);

    target.value = z;
}

function FormatMoney(sender)
{
    var v = sender.value;
    if (v.indexOf(".") > -1) {
        v = v.substr(0, v.indexOf("."));
    }

    v = v.replace(/[^0-9]/ig, '');

    var output = "";
    var flag = 0;
    for (var i = v.length - 1; i >= 0; i--) {
        output = v.charAt(i) + output;
        flag = flag + 1;
        if (flag == 3 && i != 0) {
            output = "," + output;
            flag = 0;
        }
    }
    if (output.length > 1) {

        if (output.charAt(0) == 0) {
            output = output.substring(1);
        }
    }
    if (parseInt(output) == 0) output = "0";


    if (output == "")
        sender.value = "";
    else
        sender.value = "$" + output;


}

function regInput(obj, reg, inputStr)
{
    var docSel = document.selection.createRange();
    if (docSel.parentElement().tagName != "INPUT")
        return false;
    oSel = docSel.duplicate();
    oSel.text = "";
    var srcRange = obj.createTextRange();
    oSel.setEndPoint("StartToStart", srcRange);
    var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length);
    return reg.test(str);
}

function OpenWin(url, w, h)
{
    if (w == null) {
        w = 800;
    }
    if (h == null) {
        h = 600;
    }
    var top = (window.screen.availHeight - 30 - h) / 2;
    var left = (window.screen.availWidth - 10 - w) / 2;
    window.open(url, "", "height=" + h + ",width=" + w + ",top=" + top + ",left=" + left + ",toolbar=no,menubar=no,scrollbars=yes,resizable=yes,location=no,status=yes");
}

function openWinModel(url, args, w, h)
{
    if (w == null || h == null) {
        w = 800;
        h = 600;
    }
    if (args == null) {
        args = window;
    }

    var top = (window.screen.availHeight - 30 - h) / 2;
    var left = (window.screen.availWidth - 10 - w) / 2;
    var t = new Date().getTime().toString();
    if (url.indexOf("?") > -1) {
        url = url + "&t=" + t;
    }
    else {
        url = url + "?t=" + t;
    }
    var ret = window.showModalDialog(url, args, "dialogHeight:" + h + "px;dialogWidth:" + w + "px;dialogTop:" + top + "px;dialogLeft:" + left + "px;toolbar:no;menubar:no;scrollbars:no;resizable:yes;location:no;status:no;");
    return ret;
}

function TextBoxEnter(txtID, buttonID, func)
{
    var sender;
    if (txtID != null)
        sender = document.getElementById(txtID)
    else
        sender = document.body;

    sender.onkeypress = function(e)
    {
        if (event.keyCode == 13) {
            event.keyCode = 9;
            event.returnValue = false;
            if (func != null) {
                if (func() == false) return;
            }

            if (GetBrowseType() == "FF") {
                var tmpEvent = document.createEvent("MouseEvents");
                tmpEvent.initEvent("click", true, true);
                document.getElementById(buttonID).dispatchEvent(tmpEvent);
            }
            else {
                document.getElementById(buttonID).click();
            }
        }
    }
}


function GetBrowseType()
{
    if (window.ActiveXObject)
        return "IE";
    else if (document.getBoxObjectFor)
        return "FF";
    else if (window.MessageEvent && !document.getBoxObjectFor)
        return "CHROME";
    else if (window.opera)
        return "OPERA";
    else if (window.openDatabase)
        return "SAFARI";

    return "";
}
function OpenBigImage(img)
{
    var imgUrl = $F(img).src;
    //nick 去掉aspx扩展名
    OpenWin('/Public/ViewBigPicture?View=2&Image=' + imgUrl, 840, 600)
//    OpenWin('/Public/ViewBigPicture.aspx?View=2&Image=' + imgUrl, 840, 600)
}



function chkAllSelected(obj)
{
    if (obj.checked == true) {
        jQuery("input:checkbox").each(function() { this.checked = true; });
    }
    else {
        jQuery("input:checkbox").each(function() { this.checked = false; });
    }
}


function chkAllSelectedPart(obj, part)
{
    jQuery("#" + part + ">:checkbox").attr("checked", obj.checked);
}


function ConfirmDelete()
{

    return confirm("Do you want to delete?");
}


function ConfirmDeleteList()
{
    var hasChecked = false;
    jQuery("input:checkbox").each(function() { if (this.checked == true) hasChecked = true; });
    if (hasChecked == false) {

        alert("Please select item to delete first.");
        return false;
    }

    var confirmDelete = confirm("Do you want to delete?");
    if (confirmDelete == false) {
        return false;
    }


    return true;
}



function CurentTime()
{
    var now = new Date();
    var hh = now.getHours();
    var mm = now.getMinutes();
    var ss = now.getTime() % 60000;
    ss = (ss - (ss % 1000)) / 1000;
    var clock = now.getMonth() + '/' + now.getDate() + '/' + now.getFullYear() + ' ' + hh + ':';
    if (mm < 10) clock += '0';
    clock += mm + ':';
    if (ss < 10) clock += '0';
    clock += ss;
    return (clock);
}

Array.prototype.iremove = function(index) {/*remove elem[index] ^_^By Neowang*/
    if ((isNaN(index) || index > this.length) && (this.length)) { return -1; }
    for (var i = 0, n = 0; i < this.length; i++) {
        if (this[i] != this[index]) {
            this[n++] = this[i];
        }
    }
    this.length -= 1;
}
Array.prototype.kremove = function(keyword) {/*remove elem[ * ]=keyword ^_^By Neowang*/
    if (isNaN(keyword) && (this.length)) { return false; }
    for (var i = 0, n = 0; i < this.length; i++) {
        if (this[i] != keyword) {
            this[n++] = this[i];
        }
    }
    this.length = n;
}
Array.prototype.getIndex = function(keyword) {/*get index elem[?]=keyword ^_^By Neowang*/
    if (isNaN(keyword) && this.length) { return -1; }
    for (var i = 0; i < this.length; i++) {
        if (this[i] == keyword) {
            return i;
        }
    }
    return -1;
}


function setSubmitButton(formID, buttonID)
{
    jQuery("#" + formID).submit(function()
    {
        if (jQuery("#" + formID).valid())
        {
            jQuery("#" + buttonID).attr("disabled", true);
            jQuery("#" + buttonID).val("Waiting");
            jQuery("#" + buttonID).css("cursor", "default");
         }

    });
}

function setPostButton(formID, buttonID)
{
    jQuery("#" + formID).submit(function()
    {
        jQuery("#" + buttonID).attr("disabled", true);
        jQuery("#" + buttonID).val("Waiting");
        jQuery("#" + buttonID).css("cursor", "default");
 
    });
}

function setWaitButton(buttonID, btnText) {
    if (btnText == undefined) {
        btnText = "Waiting";
    }
    jQuery("#" + buttonID).attr("disabled", true);
    jQuery("#" + buttonID).val(btnText);
    jQuery("#" + buttonID).css("cursor", "default");
}
function resetWaitButton(buttonID, btnText) {
    if (btnText == undefined) {
        btnText = "Submit";
    }
    jQuery("#" + buttonID).attr("disabled", false);
    jQuery("#" + buttonID).val(btnText);
    jQuery("#" + buttonID).css("cursor", "pointer");

}

function resetSubmitButton(buttonID,btnText)
{

    jQuery("#" + buttonID).attr("disabled", false);
    jQuery("#" + buttonID).val(btnText);
    jQuery("#" + buttonID).css("cursor", "pointer");

}


function setMainareaHeight(id, id2) {
    try {
        $("#" + id).height(17);
        var mainHeight = $("#main").height();

        try {
            try {
                var h2 = $("#" + id2).height();

                if (mainHeight < h2) {
                    var hadd = h2 - mainHeight;
                    $("#" + id).height($("#" + id).height() + hadd);
                }
            }
            catch (err3) {
            }

            var windowHeight = $(window).height();

            var bodyHeigth = $("body").height();
            if (bodyHeigth < windowHeight) {
                var hadd = windowHeight - bodyHeigth;
                $("#" + id).height($("#" + id).height() + hadd);
            }
        }
        catch (err) {
        }
    } catch (err1) {
    }
}

function checkMail(str) {
    var mailArray;
    var patterns = /^[\w\d-.]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;

    mailArray = str.split(",");
    for (i = 0; i < mailArray.length; i++) {
        if (patterns.test(mailArray[i]))//邮件地址符合
        {
            return true;
        }
        else   //邮件地址不符合
        {
            return false;
        }
    }
}
