//show picture
function pic_win(i){
	window.open("../show_pic.php?picture_name="+i,"",
		"menubar=no,top=0,left=0,width=500,height=500,scrollbars=yes,resizable=yes");
}
function pic_win2(i){
	window.open("./show_pic.php?picture_name="+i,"",
		"menubar=no,top=0,left=0,width=500,height=500,scrollbars=yes,resizable=yes");
}
function tr_onclick(a){
	eval(a).bgColor='#dddddd';
	var i=0;
	try{
		while(eval('tr'+i.toString())){
	
			if(eval(a).id != eval('tr'+i.toString()).id)
				eval('tr'+i.toString()).bgColor='#ffffff';
			i++;
		}
	}catch(e){}
}
function tr_onmouseover(a){
    a.style.cursor='default';
    if(a.bgColor!='#dddddd')
        a.bgColor='#ffffd7';
}
function tr_onmouseout(a){
    if(a.bgColor!='#dddddd')
        a.bgColor='#ffffff';
}

//数据校验
//key down function
function is_number(){
  var va=event.keyCode;
  //a = window.frm.interest_rate.value
  if(!((va > 47 && va <58) || (va > 95 && va < 106) || (va == 190) || (va == 110) || (va ==8) || (va == 46) || (va == 13) || (va == 9))){
        event.returnValue=0
        return false;
  }
}

//key down function
//正整数
function is_int(){
  var va=event.keyCode;
  //a = window.frm.interest_rate.value
  //event.srcElement.style.textAlign='right'
  if(!((va > 47 && va <58) || (va > 95 && va < 106) || (va == 110) || (va ==8) || (va == 46) || (va == 13) ||(va == 9))){
        event.returnValue=0
        return false;
  }
}

//校验是否由6位以内的数字组成 
//格式应为:6位以内数字
function isInteger(s) 
{ 
    var patrn=/^[0-9]{1,6}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}

//校验是否由6位以内的数字组成 
//价格应为:6位以内数字加2位以内小数
function isFloat(s) 
{ 
    if(isNaN(s)){
        //alert('not a number');
        return false;        
    }else{
        //alert('is a number');
        var patrn=/^([0-9]{1,6})(.{1}[0-9]{1,4}){0,1}$/;
        if (!patrn.exec(s)) return false 
        return true 
    }
}

//校验日期
//日期应为:"yyyy-mm-dd"且有效
function isDate(str){ 
    var pattern = /^((\d{4})|(\d{2}))-(\d{1,2})-(\d{1,2})$/g;
    if(!pattern.test(str))
        return false;
    var arrDate = str.split("-");
    if(parseInt(arrDate[0],10) < 100)
        arrDate[0] = 2000 + parseInt(arrDate[0],10) + "";
    var date =  new Date(arrDate[0],(parseInt(arrDate[1],10) -1)+"",arrDate[2]);
    if(date.getYear() == arrDate[0]
       && date.getMonth() == (parseInt(arrDate[1],10) -1)+""
       && date.getDate() == arrDate[2])
        return true;
    else
        return false;
} 

//校验登录名：只能输入5-15个以字母开头、可带数字、“_”、“.”的字串 
//格式应为:字母开头，5-15位
function isRegisterUserName(s) 
{ 
    var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,14}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}

//校验用户姓名：只能输入1-30个以字母开头的字串 
function isTrueName(s) 
{ 
    var patrn=/^[a-zA-Z]{1,30}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}

//校验密码：只能输入1-20个字母、数字、下划线 
//格式应为:1-20个字母、数字、下划线
function isPasswd(s) 
{ 
    var patrn=/^(\w){1,20}$/; 
    if (!patrn.exec(s)) return false 
    return true 
} 

//校验普通电话、传真号码：可以“+”开头，除数字外，可含有“-” 
//电话输入错误
function isTel(s) 
{ 
    //var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/; 
    var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; 
    if (!patrn.exec(s)) return false 
    return true 
} 

//校验手机号码：必须以数字开头，除数字外，可含有“-” 
//手机号码输入错误
function isMobil(s) 
{ 
    var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; 
    if (!patrn.exec(s)) return false 
    return true 
} 

//检验邮件格式
//邮件地址输入错误
function isEmail(strEmail) { 
	var myReg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/; 
	if(myReg.test(strEmail)) return true; 
	return false; 
} 

//校验邮政编码 
//邮政编码输入错误
function isPostalCode(s) 
{ 
    //var patrn=/^[a-zA-Z0-9]{3,12}$/; 
    var patrn=/^[a-zA-Z0-9 ]{3,12}$/; 
    if (!patrn.exec(s)) return false 
    return true 
} 

/*校验搜索关键字 
function isSearch(s) 
{ 
    var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;'\,.<>/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:;'\,.<>?]{0,19}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}*/

function isIP(s) //by zergling 
{ 
    var patrn=/^[0-9.]{1,20}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}

function toRst()
{
    frm.reset();
}

//---------------------data select----------------------
/*基本参数*/ 
var Frw=100; //日历宽度 
var Frh=140; //日历高度 
var Frs=1; //影子大小 
/*创建框架*/ 
//document.writeln('<div id=cc style="display:none; POSITION: absolute;width:180; height: 160;z-index:1000;"></div>');

document.writeln('<Div id="cc" scrolling="no" frameborder=0 style="border:0px solid #EEEEEE ;FONT-SIZE: 12px;position: absolute; width: '+Frw+'; height: '+Frh+'; z-index: 10; display: none"></Div>'); 

//---------------------data select----------------------
var h;
var w;
var l;
var t;
var topMar = -1;
var leftMar = -1;
var space = -1;
var isvisible;

var haveclick=0;
var The_Year,The_Day,The_Month;
var today;
var Firstday;
var eventInput;
var old_obj;
var dtObjHid = false;
today = new Date();
The_Year = today.getYear();
The_Month = today.getMonth() + 1;
The_Day = today.getDate();
Firstday = GetWeekday(The_Year,The_Month);
//ShowCalender(The_Year,The_Month,The_Day,Firstday);

function showdate(){
    vSrc = window.event.srcElement;
    if (haveclick == 0){
        haveclick=1;
        old_obj=vSrc;
    }else{
        if (old_obj != vSrc ) {
            old_obj=vSrc;
            cal_ShowElement();
            haveclick=1;
        }else{
            haveclick=0;
        }
    }
    
    if (haveclick==1) {
        /*显示的位置*/ 

        h = vSrc.offsetHeight;
        w = vSrc.offsetWidth;
        l = vSrc.offsetLeft + leftMar;
        t = vSrc.offsetTop + topMar + h + space;
        vParent = vSrc.offsetParent;
        while (vParent.tagName.toUpperCase() != "BODY")
        {
            l += vParent.offsetLeft;
            t += vParent.offsetTop;
            vParent = vParent.offsetParent;
        }
        
        cc.style.top = t;
        cc.style.left = l;
        
        eventInput = vSrc;

        cal_hideElementAll(cc);
        dateValue = vSrc.value;

        dt = dateValue.split("-");
        cc.style.display = "";
        if(dt.length==3){

            dy = parseInt(dt[0],10);
            dm = parseInt(dt[1],10);
            dd = parseInt(dt[2],10);
            if(!(dy>0 && dm>0 && dm<13 && dd>0 && dd<32)){
                dt = new Date();
                dy = dt.getYear();
                dm = dt.getMonth();
                dd = dt.getDate();
                dm++;
            }            
        }else{
            dt = new Date();
            dy = dt.getYear();
            dm = dt.getMonth();
            dd = dt.getDate();
            dm++;
        }
        fd = GetWeekday(dy,dm);
        ShowCalender(dy,dm,dd,fd);

    }else{
        displaynone();
    }
}

function displaynone(){    
    cc.style.display = "none";
    cal_ShowElement();        
    haveclick=0;
}

function checkDtObj(){
    if (dtObjHid){
        displaynone();        
    }
    dtObjHid=true;
}

function RunNian(The_Year)
{
    if ((The_Year%400==0) || ((The_Year%4==0) && (The_Year%100!=0)))
        return true;
    else
        return false;
}

function GetWeekday(The_Year,The_Month)
{
    dt  = new Date(The_Year, (The_Month-1), 1) ;
    return dt.getDay();
}

function chooseday(The_Year,The_Month,The_Day)
{
    var Firstday;
    var completely_date;
    if (The_Day!=0){
        completely_date = The_Year + "-" + The_Month + "-" + The_Day;
        eventInput.innerText = completely_date;
        eventInput.focus();
        displaynone();
    }
     //showdate 只是一个为了显示而采用的东西，
     //如果外部想引用这里的时间，可以通过使用 completely_date引用完整日期
     //也可以通过The_Year,The_Month,The_Day分别引用年，月，日
     //当进行月份和年份的选择时，认为没有选择完整的日期
    Firstday = GetWeekday(The_Year,The_Month);
    ShowCalender(The_Year,The_Month,The_Day,Firstday);
}

function nextmonth(The_Year,The_Month)
{
    if (The_Month==12)
        chooseday(The_Year+1,1,0);
    else
        chooseday(The_Year,The_Month+1,0);
}

function prevmonth(The_Year,The_Month)
{
    if (The_Month==1)
        chooseday(The_Year-1,12,0);
    else
        chooseday(The_Year,The_Month-1,0);
}

function prevyear(The_Year,The_Month)
{
    chooseday(The_Year-1,The_Month,0);
}

function nextyear(The_Year,The_Month)
{
    chooseday(The_Year+1,The_Month,0);
}

function forHtmlSpecialChars(str){ //将HTML中的特殊字符替换成代码 
   str=strReplace(str,"&","&amp;"); 
   str=strReplace(str,"\"","&quot;"); 
   str=strReplace(str,"<","&lt;"); 
   str=strReplace(str,">","&gt;"); 
   str=strReplace(str,"%20"," "); 
   return str; 
} 

function strReplace(str,str1,str2){ //将str中的所有str1替换城str2 
   while(str.search(str1) > -1) 
      str=str.replace(str1,str2); 
   return str; 
} 

function ShowCalender(The_Year,The_Month,The_Day,Firstday)
{
    //alert('show');
    var showstr;
    var Month_Day;
    var ShowMonth;
    var today;
    today = new Date();
     //Firstday = GetWeekday(The_Year,The_Month);
	switch (The_Month)
	{
		case 1 : ShowMonth = "January"; Month_Day = 31; break;
		case 2 :
			ShowMonth = "February";
			if (RunNian(The_Year))
				Month_Day = 29;
			else
				Month_Day = 28;
			break;
		case 3 : ShowMonth = "March"; Month_Day = 31; break;
		case 4 : ShowMonth = "April"; Month_Day = 30; break;
		case 5 : ShowMonth = "May"; Month_Day = 31; break;
		case 6 : ShowMonth = "June"; Month_Day = 30; break;
		case 7 : ShowMonth = "July"; Month_Day = 31; break;
		case 8 : ShowMonth = "August"; Month_Day = 31; break;
		case 9 : ShowMonth = "September"; Month_Day = 30; break;
		case 10 : ShowMonth = "October"; Month_Day = 31; break;
		case 11 : ShowMonth = "November"; Month_Day = 30; break;
		case 12 : ShowMonth = "December"; Month_Day = 31; break;
	}

	showstr = "";
	showstr = "<Table cellpadding=0 cellspacing=0 border=1 bordercolor=#999999 width=100 align=center valign=top>"; 
	showstr +=  "<tr bgcolor=#eeeeee><td width=0 style='cursor:hand' onclick=prevyear("+The_Year+"," + The_Month + ")>&lt;&lt;</td><td width=0>&nbsp;" + The_Year + "&nbsp;</td><td width=0 onclick=nextyear("+The_Year+","+The_Month+")  style='cursor:hand'>&gt;&gt;</td><td width=0 style='cursor:hand' onclick=prevmonth("+The_Year+","+The_Month+")>&lt;&lt;</td><td align=center>" + ShowMonth + "</td><td width=0 onclick=nextmonth("+The_Year+","+The_Month+")  style='cursor:hand'>&gt;&gt;</td></tr>";
	showstr +=  "<tr><td align=center width=100% colspan=6>";
	showstr +=  "<table cellpadding=0 cellspacing=0 border=1 bordercolor=#999999 width=100%>";
	showstr += "<Tr align=center bgcolor=#999999> ";
	showstr += "<td style='font-size:9px'>SUN</td>";
	showstr += "<td style='font-size:9px'>MON</td>";
	showstr += "<td style='font-size:9px'>TUE</td>";
	showstr += "<td style='font-size:9px'>WED</td>";
	showstr += "<td style='font-size:9px'>THU</td>";
	showstr += "<td style='font-size:9px'>FRI</td>";
	showstr += "<td style='font-size:9px'>SAT</td>";
	showstr += "</Tr><tr>";
 
    for (i=1; i<=Firstday; i++)
        showstr += "<Td align=center bgcolor=#CCCCCC>&nbsp;</Td>";

    for (i=1; i<=Month_Day; i++)
    {
        if ((The_Year==today.getYear()) && (The_Month==today.getMonth()+1) && (i==today.getDate()))
            bgColor = "#FFCCCC";
        else
            bgColor = "#CCCCCC";

        if (The_Day==i)
            bgColor = "#FFFFCC";

        showstr += "<td align=center bgcolor=" + bgColor + " style='cursor:hand' onclick=chooseday(" + The_Year + "," + The_Month + "," + i + ")>" + i + "</td>";
        Firstday = (Firstday + 1)%7;
        if ((Firstday==0) && (i!=Month_Day))
            showstr += "</tr><tr>";
    }

    if (Firstday!=0) 
    {
        for (i=Firstday; i<7; i++) 
            showstr += "<td align=center bgcolor=#CCCCCC>&nbsp;</td>";
        showstr += "</tr>";
    }

    showstr += "</tr></table></td></tr></table>";

    cc.innerHTML = showstr;
    dtObjHid = false;
    

}
////----------------end data select----------------------

//-------------------hide select obj------------------------
var HideElementTemp = new Array();

//点击菜单时，调用此的函数,菜单对象
function cal_hideElementAll(obj,loc_i){
    /*
    if (loc_i > 0) {
        obj.style.width=120;
        obj.style.height=loc_i*21;
    }else{
        obj.style.width=150;
        obj.style.height=150;
    }*/
    //cal_HideElement("IMG",obj);
    cal_HideElement("SELECT",obj,loc_i);
    //cal_HideElement("OBJECT",obj);
    cal_HideElement("IFRAME",obj,loc_i);
}

function cal_HideElement(strElementTagName,obj,loc_i){
    width_t =Frw;
    height_t=Frh;

    try{
        var showDivElement = obj;
        var calendarDiv = obj;

        var intDivLeft = l;
        var intDivTop = t;

        for(i=0;i<window.document.all.tags(strElementTagName).length; i++){
            var objTemp = window.document.all.tags(strElementTagName)[i];

            if(!objTemp||!objTemp.offsetParent)
                continue;
            var intObjLeft=cal_GetOffsetLeft(objTemp);
            var intObjTop=cal_GetOffsetTop(objTemp);

            if (strElementTagName == "IFRAME")
            {
                intObjTop = intObjTop - objTemp.clientHeight;

            }

            if( (intObjLeft+objTemp.clientWidth>intDivLeft)&&
            (intObjLeft<intDivLeft + width_t)&&    //calendarDiv.style.posWidth //200
            (intObjTop+objTemp.clientHeight>intDivTop)&&
            (intObjTop<intDivTop + height_t) ){        //calendarDiv.style.posHeight //150
                HideElementTemp[HideElementTemp.length]=objTemp;
                objTemp.style.visibility="hidden";
            }
        }
    }catch(e){
        alert(e.message)
    }
}

function cal_ShowElement(){
    var i;
    if(HideElementTemp){
        for(i=0;i<HideElementTemp.length; i++){
            var objTemp = HideElementTemp[i]
            if(!objTemp||!objTemp.offsetParent)
                continue;
            objTemp.style.visibility=''
        }
    }
    
    HideElementTemp=new Array();
}

function cal_GetOffsetLeft(src){

    var l1,vParent1;
    l1 = src.offsetLeft + leftMar;
    vParent1 = src.offsetParent;
    while (vParent1.tagName.toUpperCase() != "BODY")
    {
        l1 += vParent1.offsetLeft;
        vParent1 = vParent1.offsetParent;
    }
    return l1;
}

function cal_GetOffsetTop(src){
    var t1,vParent1;
    h1 = src.offsetHeight;
    t1 = src.offsetTop + topMar + h1 + space;
    vParent1 = src.offsetParent;
    while (vParent1.tagName.toUpperCase() != "BODY")
    {
        //l1 += vParent1.offsetLeft;
        t1 += vParent1.offsetTop;
        vParent1 = vParent1.offsetParent;
    }
    return t1;
}

//-------------------end hide select obj--------------------
document.onclick = checkDtObj; 
//----------------end data select----------------------

function openwindow( url, winName, width, height,menubar) 
{
    xposition=0; yposition=0;
    if ((parseInt(navigator.appVersion) >= 4 ))
    {
    xposition = (screen.width - width) / 2;
    yposition = (screen.height - height) / 2;
    }
    theproperty= "width=" + width + "," 
    + "height=" + height + "," 
    + "location=0," 
    + "menubar="+menubar+","
    + "resizable=1,"
    + "scrollbars=1,"
    + "status=0," 
    + "titlebar=0,"
    + "toolbar=0,"
    + "hotkeys=0,"
    + "screenx=" + xposition + "," //仅适用于Netscape
    + "screeny=" + yposition + "," //仅适用于Netscape
    + "left=" + xposition + "," //IE
    + "top=" + yposition; //IE 
    window.open( url,winName,theproperty );
}