﻿Validate = WEBClass.create();
Validate.prototype = {
    initialize: function() {
    },
    //验证是否符合E-MAIL格式
    isEMail: function(EMail) {
        return this.checkMatch(EMail, /^([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/gi);
    },
    //验证是否符合电话格式(包括手机,座机)
    isPhone: function(Phone) {
        return this.checkMatch(Phone, /((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)/gi);
    },
    //验证是否符合电话格式(手机)
    isMobilePhone: function(phone) { return this.checkMatch(phone, /^1[358]\d{9}$/gi); },
    //验证是否符合电话格式(座机)
    isTel: function(phone) { return this.checkMatch(phone, /^\d{3,4}\-\d{7,8}(\-\d*)*$/gi); },
    //验证是否符合身份证号码格式
    isIDCardNum: function(IDCardNum) { return this.checkMatch(IDCardNum, /^(\d{14}|\d{17})(\d|[xX])$/gi); },
    //验证是否符合网址格式
    //isURL: function(URL) { return this.checkMatch(URL, /^http[s]{0,1}:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^\"\"])*$/gi); },
    isURL: function(URL) { return this.checkMatch(URL, /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^\"\"])*$/gi); },
    isChannelURL: function(URL) { return this.checkMatch(URL, /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^\"\"])*\/$/gi); },
    Domain: function(URL) { return this.checkMatch(URL, /^[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^\"\"])*[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*$/gi) && !(this.checkMatch(URL, /^(http:\/\/www\.)|^(www\.)/gi)); },
    //验证用户名
    checkUserName: function(userName) { return this.checkMatch(userName, /^[a-zA-Z_0-9]{3,50}$/gi); },
    //验证密码
    checkPassword: function(password) { return this.checkMatch(password, /^[a-zA-Z0-9!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\:\;\<\=\>\?\@\[\\\]\^\_]{6,16}$/i); },
    //验证数字与字母
    checkNumbersletters: function(Numbersletters) { return this.checkMatch(Numbersletters, /^[A-Za-z0-9]+$/gi); },
    checkMatch: function(str, reg) {
        var match = str.match(new RegExp(reg));
        return match == null ? false : true;
    },
    //验证qq号码
    isQQ: function(qq) { return this.checkMatch(qq, /^\s*[0-9]{5,10}\s*$/); },
    //验证是否为危险字符
    isBadChar: function(Char) { return this.checkMatch(Char, /\<\w+.*\>/g); },
    //验证数字
    checkNum: function(Num) { return this.checkMatch(Num, /^[0-9]+$/gi); },
    //验证开始时间是否早于结束时间(可以相等)
    DateTimeSameValidate: function(StartTime, EndTime) {
        if (StartTime != "") {
            var Start = new Date(StartTime.replace(/-/g, '/'));
        }
        else {
            var Start = new Date();
        }
        var End = new Date(EndTime.replace(/-/g, '/'));
        if (Start - End > 0) {
            return false;
        }
        else {
            return true;
        }
    },
    //银行账号
    card: function(cardStr) { return this.checkMatch(cardStr, /^\d{16}$|^\d{19}$/gi); }
//    card: function(cardStr) {return this.checkMatch(cardStr, /^\d{19}$/gi); }
}

var validate = new Validate();
