﻿function preloadImages()
{
  if(document.images)
  {
    if(!document.imageArray) document.imageArray = new Array();
    var i,j = document.imageArray.length, args = preloadImages.arguments;
    for(i=0; i<args.length; i++)
    {
      if (args[i].indexOf("#")!=0)
      {
        document.imageArray[j] = new Image;
        document.imageArray[j++].src = args[i];
      }
    }
  }
}

function ValidateEmail(i)
{
	if (i == '') return true;
    var emailReg=/^([a-zA-Z0-9_\-\.\+]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
    return emailReg.test(i);
}
function ValidatePCode(i)
{
	var patrn=/^[1-9]\d{5}$/;
	return patrn.test(i);
}

//检测非负数(包括小数)
function ValidatePNum(i)
{
	var patrn=/^\d+(\.\d+)?$/;
	return patrn.test(i);
}

//检测电话
function ValidateTel(i)
{
	var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){3,12})+$/;
	return patrn.test(i)
}

function ValidateDate( psValue )
{
    if(psValue != "")
    {
        psValue = psValue.replace("-", "/");
        psValue = psValue.replace("-", "/");
        psValue = psValue.replace(".", "/");
        psValue = psValue.replace(".", "/");
        psValue = psValue.replace("/0", "/");
        psValue = psValue.replace("/0", "/");
        
        var psValueArray = psValue.split("/");
        if (psValueArray[0].length !=4)
        {
            return false
        }
                    
        var oDate = new Date(psValue);
        
        var strYear = new String(oDate.getFullYear());
        var strMonth = new String(oDate.getMonth() + 1);
        var strDay = new String(oDate.getDate());

        var strTestDate = strYear + "/" + strMonth + "/" + strDay;
        return psValue == strTestDate;
    }
    else
    {
        return true;
    }
}

function DateCompare(d1,d2)
{
	var d1arr = d1.split('-');
	var d2arr = d2.split('-');
	var dd1 = new Date(d1arr[0],d1arr[1],d1arr[2]);  
	var dd2 = new Date(d2arr[0],d2arr[1],d2arr[2]);  
	return (dd2.getTime() - dd1.getTime())/1000;
}

//对于单个对象的XML，返回其名为nname结点的值
function NodeValue(xmlNode, nname)
{
	var nv;
	var node=xmlNode.getElementsByTagName(nname)[0]; 
	if (node.firstChild)
		nv=node.firstChild.nodeValue;
	else
		nv = "";
	return nv;
}

//选择所有项 formID-表单名称 chkAllID-全选框 chkName-复选框组名称开头相同部分
function selectFormAll(formID,chkAllID,chkName)
{
    var theBox=$(chkAllID);
    xState=theBox.checked;
    
   // var num = 0;

    for (i= 0; i < $(formID).length; i++)
    {
        var it = document.forms[0].elements[i];
        if(it.name.indexOf(chkName) == 0)
        {
            if(it.checked!=xState)
                it.checked = xState;
          //  if (it.checked) num ++;
        }
    }
}

//选择所有项 chkAllID-全选框 chkName-复选框组名称
function selectAll(chkAllID,chkName)
{
    var theBox=$(chkAllID);
    xState=theBox.checked;
    
	var chkArr = document.getElementsByName(chkName);
    for (i= 0; i < chkArr.length; i++)
    {
        var it = chkArr[i];
        if(it.checked!=xState)
             it.checked = xState;
    }
}

//字符串去两端空格
function trim(str) 
{
	return (str + '').replace(/(\s+)$/g, '').replace(/^\s+/g, '');
}

//运行代码
function runCode(obj) 
{
    var winname = window.open('', "_blank", '');
    winname.document.open('text/html', 'replace');
	winname.opener = null; // 防止代码对调用页面修改
    winname.document.write(obj.value);
    winname.document.close();
}

//代码另存为
function saveCode(obj) 
{
	var winname = window.open('', '_blank', 'top=10000');
	winname.document.open('text/html', 'replace');
	winname.document.write(obj.value);
	winname.document.execCommand('saveas','','code.htm');
	winname.close();
}

//将日期转换成yyyy-mm-dd字符串
function ymdStr(date, separtor)
{
    var y = date.getFullYear();
    var m = date.getMonth()+1;
    var d = date.getDate();
    m = m<=9?'0'+m:m;
    d = d<=9?'0'+d:d;
    return y + separtor + m + separtor + d;  
}

//当操作日期为空时自动用当前日期填充
function fillWithDateNow(o)
{
    var date = new Date(); 
    if (o.value=='') o.value = ymdStr(date,"-");
}

//表单错误检查
//div - 检查错误后显示的div 
//chk = 错误检查条件
//switchMore = 当有隐藏的表单项时将其显示
function chkError(div, chk)
{
	if (!chk)
	{
		try
		{
			$($(div).id.replace("chk","")).focus();
		}
		catch (e)
		{
			if (typeof(switchMore) != "undefined" ) switchMore();
		}
		$(div).style.display = "";
		$($(div).id.replace("chk","")).focus();
	}
	else
	{
		$(div).style.display = "none";
	}
	return chk;
}

var badname = 2;
//注册名检查通用方法 UID-用户名控件的ID chkRobot-检查是否机器注册, chkUrl-检查页地址
function chkName(UID, chkRobot, chkUrl)
{
	if (!chkUrl) chkUrl = '../chkName.asp';
	if ($(UID))
	{
		new Ajax.Request(
		chkUrl,
		{
			onSuccess: function(transport)
			{
				var d = $('chk' + UID);
				badname = parseInt(transport.responseText);
				switch (badname)
				{
					case 0: 
						d.innerHTML = '该用户名可以注册！';
						return;
					case 1: 
						d.innerHTML = '该用户名已被占用，请试试别的名字。';
						break;
					case 2: 
						d.innerHTML = '该用户名长度不符合要求，或有非法字符。';
						 break;
					case 3: 
						d.innerHTML = '请输入用户名。';
						 break;
					default: '发生了异常';
				}
				if (badname)
				{
					$(UID).focus();
					$(UID).select();
				}
			},
			onFailure: function()
			{ 
				alert('检查程序出错...');
			},
			method:"get",
			parameters:{'un':$F(UID),'chk':(chkRobot? 1:0)}
		}
		); 
	}
	else 
	{
		badname = 0;
	}
}


