var gConstMSG001 = "数字以外的文字不能输入";
var gConstMSG002 = " ";
var gConstMSG003 = "输入的文字有含有非法字符";
var gConstMSG004 = "输入的文字中存在非全角字符";
var gConstMSG005 = "-";
var gConstMSG006 = "邮件地址不正确，请再一次确认";
var gConstMSG007 = "邮编不正确";
var gConstMSG008 = "url不正确";
var logoUrl      = "http://www.loan163.com/"; //产品图片URL

var gClickOnOff  = "0";
//# ----------------------------
//# 焦点设置
//# ----------------------------
function setfocus(pObj){
	pObj.focus();
	if(pObj.type == "text" || pObj.type == "textarea"){;
		pObj.select();
	}
}
//# ----------------------------
//# 移动焦点
//# ----------------------------
function funcNextfocus(pObj) {
	if(event.keyCode==13){
		setfocus(pObj);
	}
}
//# ----------------------------
//# 未输入检查
//# ----------------------------
function funcNullCheck(pObj,pMsg,pFlg){
	var strbuff = pObj.value;		//# 取得值

	if(strbuff == null || strbuff == ""){
		if(pFlg){
			alert(pMsg + gConstMSG002);
			//# 焦点设定
			setfocus(pObj);
		}
		//# 返回值设定
		return false;
	}
	//# 返回值设定
	return true;
}

//# ----------------------------
//# 长度检查
//# ----------------------------
function funcLengthCheck(pObj,pMsg){

	var strbuff = pObj.value;		//# 取得文字数组
	var intlen  = pObj.maxLength;	//# 长度取得


	//# 比较指定长度
	if(strbuff.length > intlen){
		alert(pMsg);
		//# 设置焦点
		setfocus(pObj);
		//# 返回值设定
		return false;
	}
	//# 返回值设定
	return true;
}

function funcLengthCheckValue(vVal,vMaxLength,pMsg){
	
	var strbuff = vVal.value;		//# 取得对象
	var intlen  = vMaxLength;		//# 长度取得

	//# 比较指定长度
	if(strbuff.length > intlen){
		alert(pMsg);
		//# 设置焦点
		setfocus(vVal);
		//# 返回值设定
		return false;
	}
	//# 返回值设定
	return true;
}

//# ----------------------------
//# 比较最小长度
//# ----------------------------
function funcMinLengthCheckValue(vVal,vMinLength,pMsg){
	
	var strbuff = vVal.value;		//# 取得对象
	var intlen  = vMinLength;		//# 长度取得

	//# 比较指定长度
	if(strbuff.length < intlen){
		alert(pMsg);
		//# 设置焦点
		setfocus(vVal);
		//# 返回值设定
		return false;
	}
	//# 返回值设定
	return true;
}

//# ----------------------------
//# 数字检查
//# ----------------------------
function funcNumberCheck(pObj){
	//# 变量定义
	var number = pObj.value;		//# 取得输入文字

	//# 校验
	if(number.match(/[^0-9\-.]+/)){
		alert(gConstMSG001);
		//# 设置焦点
		setfocus(pObj);
		//# 返回值设定
		return false;
	}

	if(isNaN(number)){
		alert(gConstMSG001);
		//# 设置焦点
		setfocus(pObj);
		//# 返回值设定
		return false;
	}


	//# 返回值设定
	return true;
}

//# ----------------------------
//# 禁止文字输入检查
//# ----------------------------
function funcNgWord(pObj){
	//# 取得字符串
	var strbuff = pObj.value;

  //# 指定文字
	if(strbuff.match(/[^a-z0-9A-Z_-]+/)){
		alert(gConstMSG003);
		//# 设置焦点
		setfocus(pObj);
		//# 返回值设定
		return false;
	}
	//# 返回值设定
	return true;
}

function funcURL(pObj){
	//# 取得字符串
	var strbuff = pObj.value.toLowerCase();
    //# strbuff.match(/(http|ftp):\/\/.+/);
    //# 如果FTP就使用上面这个
	
	//# 指定文字
	if(!strbuff.match(/(http|https):\/\/.+/)){
		alert(gConstMSG008);
		//# 设置焦点
		setfocus(pObj);
		//# 返回值设定
		return false;
	}
	//# 返回值设定
	return true;
}
//# ----------------------------
//# 全角文字检查
//# ----------------------------
function funcZenkakuCheck(pObj){
	//# 变量定义
	var strBuff = pObj.value;
	var i;
	var strConvBuff;

	for(i=0;i<strBuff.length;i++){
		//# １文字取得(charCodeAt:那个文字的 Unicode )
		strConvBuff = strBuff.charCodeAt(i);
		//#  半角不允许
		if (strConvBuff < 256 || (strConvBuff >= 0xff61 && strConvBuff <= 0xff9f)) {
			alert(gConstMSG004);
			//# 设置焦点
			setfocus(pObj);
			//# 返回值设定
			return false;
		}
	}
	return true ;
}


//# ----------------------------
//# 邮件地址检查(简易)
//# ----------------------------
function funcMailFormatCheck(pObj){
	//# 变量设定
	var strBuff = pObj.value;

	//# 指定文字
	if(strBuff.match(/[^@\.a-z0-9A-Z_-]+/)){
		alert(gConstMSG003);
		//# 设置焦点
		setfocus(pObj);
		//# 返回值设定
		return false;
	}

	//# 邮件地址不正当的情况
	if(!strBuff.match(/.*@.*\..+/i)){
		alert(gConstMSG006);
		//# 设置焦点
		setfocus(pObj);
		//# 返回值设定
		return false;
	}
	//# 返回值设定
	return true;
}
//# ----------------------------
//# 邮编电话（未完成）
//# ----------------------------
function funcPostandTelCheck(pObj){
	//# 字符串取得
	var strbuff = pObj.value;

  //# 指定文字
	if(strbuff.match(/[^0-9\(\)\-]+/)){
		alert(gConstMSG003);
		//# 设置焦点
		setfocus(pObj);
		//# 返回值设定
		return false;
	}
	//# 返回值设定
	return true;
}
//# -------------------------------
//# 域输入可能文字种检查
//# ------------------------------
function funcdomainFormatCheck(pObj){
	//# 变量设定
	var strBuff = pObj;

	//# 指定文字
	if(strBuff.match(/[^\.a-z0-9A-Z-]+/)){
		alert(gConstMSG003);
		//# 返回值设定
		return false;
	}
	//# 返回值设定
	return true;
}
//# -------------------------------------
//# ＩＰ地址输入可能文字种检查
//# -------------------------------------
function funcIPFormatCheck(pObj){
	//# 变量设定
	var strBuff = pObj;

	//# 指定文字
	var flg = strBuff.match(/[^\.0-9]+/);
	switch(flg){
		case true:
			alert(gConstMSG003);
			//# 返回值设定
			return false;
			break;
		case false:
			//# 返回值设定
			return true;
			break;
	}

}
//# ----------------------------
//# 未输入内容(值版)
//# ----------------------------
function funcNullCheckValue(pObj,pMsg,pFlg){
	var strbuff = pObj;

	switch(strbuff){
		case null:
		case "":
			switch(pFlg){case true:alert(pMsg + gConstMSG002);break;}
			//# 返回值设定
			return false;
			break;
	}
	

	//# 返回值设定
	return true;
}
//# ----------------------------------
//# 数值检查(数值以外错误:价值)
//# ----------------------------------
function funcNumberCheckValue(pObj){
	//# 变量定义
	var number = pObj;		//# 输入字符串取得

	//# 非数字字符校验
//	if(number.match(/[^0-9]+/)){
	if(number.match(/[^0-9\-.]+/)){
		alert(gConstMSG001);
		//# 返回值设定
		return false;
	}

	if(isNaN(number)){
		alert(gConstMSG001);
		//# 返回值设定
		return false;
	}
	
	//# 返回值设定
	return true;


}

//# ----------------------------
//# 日期校验
//# ----------------------------
function funcDateCheck(vYear,vMonth,vDay) {
    listdayOfMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31, 29);

    mYear  = parseInt(vYear,10);
    mMonth = parseInt(vMonth,10);
	mDay   = parseInt(vDay,10);
	wMChk  = mMonth;

	var dateObj = new Date();
    var curYear = parseInt(dateObj.getYear(),10);

	// 年 范围验证
    if(mYear >  curYear) {
        alert("年份不能大于当前年份");
        return false;
    }

    // 月 范围验证
    if(!(mMonth >= 1 && mMonth <= 12)) {
        alert("月份输入错误");
        return false;
    }

    // 闰年判断
    if(!(mYear % 4) && mMonth == 2) {
        wMChk = 12;     // 闰年

        //if (!(!(wYear % 100) && (wYear % 400))) {
        if(!(mYear % 100)){
            if(mYear % 400){
                wMChk = 1;      
            }
        }
    }else{
        wMChk--;
    }

    //# 日期范围验证
    if(!(1 <= mDay && listdayOfMonth[wMChk] >= mDay)) {
        alert("日期输入错误");
        return false;
    }
    return true;
}


//# ----------------------------
//# pop up窗表示
//# ----------------------------
function funcModalModlessWindow(strName,vURL,vOption,vTYPE,vArg){
	if (vTYPE=="modal"){

		var mywin;
		mywin = window.showModalDialog(vURL?vURL:'about:blank',vArg,vOption);
		return mywin;

	}else{

		var mywin;
		mywin = window.open(vURL?vURL:'about:blank',strName?strName:'_blank',vOption)
		if ("undefined" != typeof(mywin)){
			return mywin;
		}
	}
}

//# grid 自动换行
function renderName(value, metadata, record){ 
	metadata.attr = 'style="white-space:normal;"'; 
	return value; 
} 

