﻿
function $(id) { return document.getElementById(id); }

//------------------------------------------------ 校验 ------------------------------------------------------//
//验证字符串是否是正整数
function VerifyNumber(value) {
    if (/^[1-9]\d*$/.test(value)) {
        return true;
    }
    else {
        return false;
    }
}


//比较日期大小，如果DateOne 大于 DateTwo 返回true
 function compareDate(DateOne, DateTwo) {



            var OneMonth = DateOne.substring(5, DateOne.lastIndexOf("-"));
            var OneDay = DateOne.substring(DateOne.length, DateOne.lastIndexOf("-") + 1);
            var OneYear = DateOne.substring(0, DateOne.indexOf("-"));

            var TwoMonth = DateTwo.substring(5, DateTwo.lastIndexOf("-"));
            var TwoDay = DateTwo.substring(DateTwo.length, DateTwo.lastIndexOf("-") + 1);
            var TwoYear = DateTwo.substring(0, DateTwo.indexOf("-"));

            if (Date.parse(OneMonth + "/" + OneDay + "/" + OneYear) >
Date.parse(TwoMonth + "/" + TwoDay + "/" + TwoYear)) {
                return true;
            }
            else {
                return false;
            }

        }


//---------------------------------------------- 校验 end -----------------------------------------------------//

//----------------------------------------------Url encoding --------------------------------------------------//

function UrlEncode(str) {
    var ret = "";
    var strSpecial = "!\"#$%&'()*+,/:;<=>?[]^`{|}~%";
    for (var i = 0; i < str.length; i++) {
        var chr = str.charAt(i);
        var c = str2asc(chr);
        tt += chr + ":" + c + "n";
        if (parseInt("0x" + c) > 0x7f) {
            ret += "%" + c.slice(0, 2) + "%" + c.slice(-2);
        } else {
            if (chr == " ")
                ret += "+";
            else if (strSpecial.indexOf(chr) != -1)
                ret += "%" + c.toString(16);
            else
                ret += chr;
        }
    }
    return ret;
}

function UrlDecode(str) {
    var ret = "";
    for (var i = 0; i < str.length; i++) {
        var chr = str.charAt(i);
        if (chr == "+") {
            ret += " ";
        } else if (chr == "%") {
            var asc = str.substring(i + 1, i + 3);
            if (parseInt("0x" + asc) > 0x7f) {
                ret += asc2str(parseInt("0x" + asc + str.substring(i + 4, i + 6)));
                i += 5;
            } else {
                ret += asc2str(parseInt("0x" + asc));
                i += 2;
            }
        } else {
            ret += chr;
        }
    }
    return ret;
}
//-------------------------------------------Url encoding end -------------------------------------------------//

//------------------------------------------------ String -----------------------------------------------------//

String.prototype.endWith = function(str) {
    if (str == null || str == "" || this.length == 0 || str.length > this.length)
        return false;
    if (this.substring(this.length - str.length) == str)
        return true;
    else
        return false;
    return true;
}

String.prototype.startWith = function(str) {
    if (str == null || str == "" || this.length == 0 || str.length > this.length)
        return false;
    if (this.substr(0, str.length) == str)
        return true;
    else
        return false;
    return true;
}

String.prototype.trim = function() {
    return this.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
}

//--------------------------------------------- window onload -------------------------------------------------//
function addLoadEvent(func) {
    var oldonload = window.onload;
    if (typeof window.onload != 'function') {
        window.onload = func;
    } else {
        window.onload = function() {
            oldonload();
            func();
        }
    }
}

function load() {
    //tab切换
    if (document.getElementById('gallery')) {
        var e, i = 0;
        while (e = document.getElementById('gallery').getElementsByTagName('DIV')[i++]) {
            if (e.className == 'on' || e.className == 'off') {
                e.onclick = function() {
                    var getEls = document.getElementsByTagName('DIV');
                    for (var z = 0; z < getEls.length; z++) {
                        getEls[z].className = getEls[z].className.replace('show', 'hide');
                        getEls[z].className = getEls[z].className.replace('on', 'off');
                    }
                    this.className = 'on';
                    var max = this.getAttribute('title');
                    document.getElementById(max).className = "show";

                    if (document.getElementById("ctl00_ContentMain_hf1") != null) {
                        document.getElementById("ctl00_ContentMain_hf1").value = max;
                    }
                }
            }
        }
    }

    //input变色
    var inputs = document.all.tags("INPUT");
    for (var i = 0; i < inputs.length; i++) {
        if (inputs[i].type == "text" || inputs[i].type == "password") {
            if (inputs[i].className == "input_out") {
                inputs[i].onfocus = function() { this.className = 'input_on'; };
                inputs[i].onblur = function() { this.className = 'input_off'; };
            }
        }
        else if (inputs[i].type == "button" || inputs[i].type == "submit") {
            if (inputs[i].className == "btn02") {
                //                inputs[i].onmousemove = function() { this.className = 'btn04'; };
                //                inputs[i].onmouseout = function() { this.className = 'btn02'; };

            }
        }
    }

    inputs = document.all.tags("TEXTAREA");
    for (var i = 0; i < inputs.length; i++) {
        if (inputs[i].className == "input_out") {
            inputs[i].onfocus = function() { this.className = 'input_on'; };
            inputs[i].onblur = function() { this.className = 'input_off'; };

        }
    }
}

addLoadEvent(load);
//------------------------------------------- window onload end -----------------------------------------------//

//------------------------------------------- document onkeydown ----------------------------------------------//
function AddDocumentOnkeydown(func) {
    var oldkeydown = document.onkeydown;

    if (typeof document.onkeydown != 'function') {
        document.onkeydown = func;
    } else {
        document.onkeydown = function() {
            oldkeydown();
            func();
        }
    }
}

function EnterChangeFocus() {
    AddDocumentOnkeydown(EnterChangeFocusFunc);
}

function NoBackspace() {
    AddDocumentOnkeydown(NoBackspaceFunc);
}

function EnterChangeFocusFunc() {
    if (event && event.srcElement) {
        srcEle = event.srcElement;
        if (srcEle.type) {
            if ((event.keyCode || event.charCode) == 13 && (srcEle.type.toUpperCase() == 'TEXT' || srcEle.type.toUpperCase() == 'SELECT-ONE' || srcEle.type.toUpperCase() == "PASSWORD")) {
                event.keyCode = event.charCode = 9;
            }
        }
    }
}

function NoBackspaceFunc() {
    if (event.keyCode == 8) {
        event.keyCode = 0;
        event.returnvalue = false;
    }
}

//------------------------------------------document onkeydown end --------------------------------------------//


//--------------------------------------------- table color ---------------------------------------------------//

function addClass(element, value) {
    if (!element.className) {
        element.className = value;
    } else {
        if (element.className != "manager_tabbg") {
            newClassName = element.className;
            newClassName += " ";
            newClassName += value;
            element.className = newClassName;
        }
    }
}

function stripeTables() {
    var tables = document.getElementsByTagName("table");
    for (var m = 0; m < tables.length; m++) {
        if (tables[m].className == "pickme") {
            var tbodies = tables[m].getElementsByTagName("tbody");
            for (var i = 0; i < tbodies.length; i++) {
                var odd = true;
                var rows = tbodies[i].getElementsByTagName("tr");
                for (var j = 0; j < rows.length; j++) {
                    if (odd == false) {
                        odd = true;
                    } else {
                        addClass(rows[j], "odd");
                        odd = false;
                    }
                }
            }
        }
    }
}
function highlightRows() {

    if (!document.getElementsByTagName) return false;
    var tables = document.getElementsByTagName("table");
    for (var m = 0; m < tables.length; m++) {
        if (tables[m].className == "pickme") {
            var tbodies = tables[m].getElementsByTagName("tbody");
            for (var j = 0; j < tbodies.length; j++) {
                var rows = tbodies[j].getElementsByTagName("tr");
                for (var i = 0; i < rows.length; i++) {
                    rows[i].oldClassName = rows[i].className
                    rows[i].onmouseover = function() {
                        if (this.className.indexOf("selected") == -1)
                            addClass(this, "highlight");
                    }
                    rows[i].onmouseout = function() {
                        if (this.className.indexOf("selected") == -1)
                            this.className = this.oldClassName
                    }
                }
            }
        }
    }
}
function selectRowCheckbox(row) {
    var checkbox = row.getElementsByTagName("input")[0];
    if (checkbox.checked == true) {
        checkbox.checked = false;
    } else
        if (checkbox.checked == false) {
        checkbox.checked = true;
    }
}

addLoadEvent(stripeTables);
addLoadEvent(highlightRows);
//---------------------------------------------- table color end -----------------------------------------------//


//---------------------------------------------- 取request参数 -------------------------------------------------//
function Request(paras) {
    var url = location.href;
    var paraString = url.substring(url.indexOf("?") + 1, url.length).split("&");
    var paraObj = {}
    for (i = 0; j = paraString[i]; i++) {
        paraObj[j.substring(0, j.indexOf("=")).toLowerCase()] = j.substring(j.indexOf("=") + 1, j.length);
    }
    var returnValue = paraObj[paras.toLowerCase()];
    if (typeof (returnValue) == "undefined") {
        return "";
    } else {
        return returnValue;
    }
}
//---------------------------------------------- request参数 end -----------------------------------------------//

//-------------------------------------------------- Cookie ----------------------------------------------------//
function SetCookie(name, value)//两个参数，一个是cookie的名子，一个是值
{
    //    var Days = 30; //此 cookie 将被保存 30 天
    //    var exp  = new Date();    //new Date("December 31, 9998");
    //    exp.setTime(exp.getTime() + Days*24*60*60*1000);
    document.cookie = name + "=" + escape(value) + ";";
}
function GetCookie(name)//取cookies函数        
{
    var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
    if (arr != null) return unescape(arr[2]); return null;

}
function DelCookie(name)//删除cookie
{
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval = GetCookie(name);
    if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
}
//-------------------------------------------------- End Cookie ------------------------------------------------//


//-------------------------------------------------- CompareDate ----------------------------------------------------//

/**
* 比较两个日期的大小。
* 参数形式必须形如：yyyy-MM-dd或者yyyy/MM/dd。
* 当第一个日期大于第二个日期时返回 1，
* 当第一个日期小于第二个日期时返回 -1，
* 当第一个日期等于第二个日期时返回 0。
*
* @param date1 要比较的第一个日期
* @param date2 要比较的第二个日期
*/
function CompareDate(date1, date2) {

    // 2011-08-09 16:20:30
    // 2011-08-09
    // var _date1 = date1.split(/(-|:|(\u0020+))/g);
    // var _date2 = date2.split(/(-|:|(\u0020+))/g);         
    
    var _date1 = new Date(date1.replace(/-/g, "\/"));
    var _date2 = new Date(date2.replace(/-/g, "\/"));

    if (_date1 > _date2)
        return 1;
    else if (_date1 < _date2)
        return -1;
    else
        return 0;
}

//-------------------------------------------------- End CompareDate ------------------------------------------------//
