﻿// JScript 檔

//************************Aeper 20071204 GV裡的日期下拉選框**********************//
//add by livia. 2007/12/04. 年、月、日 三個下拉選單的連動控制.
var ML=new Array(31,28,31,30,31,30,31,31,30,31,30,31);    
function length(Y,M)
{
    if((M==2)&&(Y%4==0)&&(Y%100!=0||Y%400==0)) return 29;
    else return ML[(M+11)%12];
}

//年的select的onchange事件,如果所選擇年是當年，控制月份的最大值顯示當月。
function onYearGV(obj)
{
    var dt=new Date();
    var oY=dt.getFullYear();//當前年
    var oM=dt.getMonth()+1;//當前月
    var oD=dt.getDate();//當前日
    var idYear ="ctl00_ContentPlaceHolder1_selYear";
    var idMonth ="ctl00_ContentPlaceHolder1_selMonth";
    var idDay ="ctl00_ContentPlaceHolder1_selDay";
    var objYear = document.getElementById(idYear);
    var objMonth = document.getElementById(idMonth);
    var objDay = document.getElementById(idDay);

    var Y = objYear.options.length;
    var M = objMonth.options.length;
    var LY = objYear.selectedIndex + 1;
    var DL = objDay.options.length;
    
    var SY=objYear.selectedIndex;
    var SM=objMonth.selectedIndex+1;
    var LEN=length(parseInt(objYear.options[0].value)+SY,SM);
    var i = 1;
       
    if(LY==Y && oM<M)
    {
        for(i;i<=(M-oM);i++)
        {
            objMonth.removeChild(objMonth.options[M-i]);    
        }
        if(SM>oM)
        {
            SM=oM;
        }
    }
    else if (M<12)
    {
        for(i;i<=(12-M);i++)
        {
            var varItem = new Option(AddZero(M+i));
            objMonth.options.add(varItem);
        }
    }
    var i=1;
    if(LEN>DL)
    {
        for(i;i<=(LEN-DL);i++)
        {
            var varItem = new Option(AddZero(DL+i));
            objDay.options.add(varItem);
        }        
    }
    else if(LEN<DL)
    {
        for(i=1;i<=(DL-LEN);i++)
        {
            objDay.removeChild(objDay.options[DL-i]); 
        }
    }
    DL=objDay.options.length;
    var i=0;
    //當選擇當年時，那麼月份的最大值為當前月，日的最大值為當前日。
    SM=objMonth.selectedIndex+1;
    if(Y==LY && SM==oM && oD<DL)
    {
        for(i=1;i<=(DL-oD);i++)
        {
            objDay.removeChild(objDay.options[DL-i]); 
        }
    }
}
//月的select的onchange事件。如果所選擇年是當年及所選擇的月為當月，控制日的最大值顯示到今天。
function getChangeDate()
{
    var idYear ="ctl00_ContentPlaceHolder1_selYear";
    var idMonth ="ctl00_ContentPlaceHolder1_selMonth";
    var idDay ="ctl00_ContentPlaceHolder1_selDay";
    var dt=new Date();
    var oY=dt.getFullYear();//當前年
    var oM=dt.getMonth()+1;//當前月
    var oD=dt.getDate();//當前日
    var objYear = document.getElementById(idYear);
    var objMonth = document.getElementById(idMonth);
    var objDay = document.getElementById(idDay);
    var LY=objYear.options.length;    
    var Y=objYear.selectedIndex;
    var M=objMonth.selectedIndex+1;
    var DL=objDay.options.length;
    var LEN=length(parseInt(objYear.options[0].value)+Y,M);
    var i=1;
    if(LEN>DL)
    {
        for(i;i<=(LEN-DL);i++)
        {
            var varItem = new Option(AddZero(DL+i));
            objDay.options.add(varItem);
        }        
    }
    else if(LEN<DL)
    {
        for(i=1;i<=(DL-LEN);i++)
        {
            objDay.removeChild(objDay.options[DL-i]);
        }
    }
    DL=objDay.options.length;
    var i=0;
    //當選擇當年時，那麼月份的最大值為當前月，日的最大值為當前日。
    M=objMonth.selectedIndex+1;
    if((Y+1)==LY && M==oM && oD<DL)
    {
        for(i=1;i<=(DL-oD);i++)
        {
            objDay.removeChild(objDay.options[DL-i]); 
        }
    }
}

//為個位時，在前面加“0”
function AddZero(obj)
{
    if(obj<10)
    {
        obj="0"+obj;
    }
    return obj;
}

//填寫好帳號資料后,下一步
function ToPageNext()
{
    //出生地不能為空
     var ChooseAreaB_Area=document.getElementById("ctl00_ContentPlaceHolder1_ChooseAreaB_lbxArea");
     var ChooseAreaB_Country=document.getElementById("ctl00_ContentPlaceHolder1_ChooseAreaB_lbxAreaA");
     var ChooseAreaB_Province=document.getElementById("ctl00_ContentPlaceHolder1_ChooseAreaB_lbxAreaAA");
     var ChooseAreaB_City=document.getElementById("ctl00_ContentPlaceHolder1_ChooseAreaB_lbxAreaAAA");
   
    if((ChooseAreaB_Area.selectedIndex==-1) || (ChooseAreaB_Country.selectedIndex==-1) || (ChooseAreaB_Province.selectedIndex==-1) || (ChooseAreaB_City.selectedIndex==-1)  )
    {
     
        ShowError("000203","");//出生地未填寫完整,請點選所有選項;
        return false;
    }   
    
    //居住地不能為空
     var ChooseAreaR_Area=document.getElementById("ctl00_ContentPlaceHolder1_ChooseAreaR_lbxArea");
     var ChooseAreaR_Country=document.getElementById("ctl00_ContentPlaceHolder1_ChooseAreaR_lbxAreaA");
     var ChooseAreaR_Province=document.getElementById("ctl00_ContentPlaceHolder1_ChooseAreaR_lbxAreaAA");
     var ChooseAreaR_City=document.getElementById("ctl00_ContentPlaceHolder1_ChooseAreaR_lbxAreaAAA");
   
    if((ChooseAreaR_Area.selectedIndex==-1) || (ChooseAreaR_Country.selectedIndex==-1) || (ChooseAreaR_Province.selectedIndex==-1) || (ChooseAreaR_City.selectedIndex==-1)  )
    {
     
          ShowError("000204","");//居住地未填寫完整,請點選所有選項;
        return false;
    }   


    //賬戶不能為空
    var objMemberID=document.getElementById("ctl00_ContentPlaceHolder1_txtMemberID");
    if(trimSpace(objMemberID.value).length==0)
    {
        ShowError("000014","");//“登入帳號”欄位未輸入資料!;
        return false;
    }    
    if(!IDonlyInt()) return false;  //防止非法ID被保存
    //密碼的格式   
    var objMemberPWD=document.getElementById("ctl00_ContentPlaceHolder1_txtMemberPWD");  
    var objhd_Modify=document.getElementById("ctl00_ContentPlaceHolder1_hd_Modify");    //隱藏文本框-保存修改狀態
    if(objhd_Modify.value!="IsModify") //是修改狀態，輸入密碼的文本框可以為空
    {
        //密碼不能為空
        if(trimSpace(objMemberPWD.value).length==0) 
        {
            ShowError("000077","");//“登入密碼”欄位未輸入資料!
		    return false; 
        }
    }
	if(!CheckPassWord(objMemberPWD)) return false;	//長度為6-14。密碼不能純數字或純字母   
    if(trimSpace(objMemberPWD.value) == trimSpace(objMemberID.value)) 
    { 
        ShowError("000028","");//對不起，賬戶與密碼不能相同
        return false;
    }
    var objPWDSure=document.getElementById("ctl00_ContentPlaceHolder1_txtMemberPWDSure");
    if(trimSpace(objMemberPWD.value) != objPWDSure.value || objMemberPWD.value.length!=objPWDSure.value.length)
    {
        ShowError("000030","");//請確認您兩次輸入的密碼一致
        return false;
    }
    //姓名不能為空
    var objRealName=document.getElementById("ctl00_ContentPlaceHolder1_txtRealName");
    if(trimSpace(objRealName.value).length == 0) {    ShowError("000015","");return false;   }//“姓名”欄位未輸入資料!
    //昵稱不能為空
    var objNickName=document.getElementById("ctl00_ContentPlaceHolder1_txtNickName");
    if(trimSpace(objNickName.value).length == 0) {    ShowError("000033","");return false;   } //“昵稱”欄位未輸入資料!    
    if(!CheckNickName()) return false;
    //需選擇性別   
    var objMale = document.getElementById("ctl00_ContentPlaceHolder1_rdoMale");
    var objFemale = document.getElementById("ctl00_ContentPlaceHolder1_rdoFemale");
    if(objMale.checked == false &&  objFemale.checked==false) {   ShowError("000034","");return false;   } //“性別”欄位未選擇!        
    //聯絡電話不能為空,并且只能是數字。
    var objTEL=document.getElementById("ctl00_ContentPlaceHolder1_txtTEL");
    if(objTEL.value.length == 0) {    ShowError("000039","");return false;   } //“聯絡電話”欄位未輸入資料!
    for(var i=0;i<objTEL.value.length;i++)
    {  
        var strTELValue=objTEL.value.charAt(i)  
        if((strTELValue < "0" || strTELValue >"9")) {   ShowError("000040","");return false;  }//聯絡電話只能輸入數字
    }     
    //聯絡信箱不能為空,并且格式符合
    var objEmail=document.getElementById("ctl00_ContentPlaceHolder1_txtEmail");
    if(trimSpace(objEmail.value).length == 0) {    ShowError("000041","");return false;   }//“聯絡信箱”欄位未輸入資料!
    if(!checkEmail(objEmail)) return false; //防止保存非法Email           
    //驗證碼不能為空
    if(objhd_Modify.value!="IsModify") //是修改狀態，輸入密碼的文本框可以為空
    {
    //alert("ggg");
        var objValidationCode=document.getElementById("ctl00_ContentPlaceHolder1_txtValidationCode");
        if(objValidationCode.value.length == 0) 
        {
            ShowError("000047",""); //“驗證碼”欄位未輸入資料!  
            return false;   
        }
    }
}

//作用：計算一個對象的值的長度，中文占２個長度
function bitLenght(obj)
{
	var intlen;
	intlen=0;
	for(var i=0; i<obj.value.length; i++)
	{
		if(obj.value.charCodeAt(i)>255)
		{
				intlen=intlen+2;
		}
		else
		{
			intlen++;
		}
	}
	return intlen;	
}

//姓名 不能輸入句號下劃線減號之外的符號，不能輸入數字
function CheckStr(obj)
{
  obj.value = obj.value.replace(/[0-9#!"$%&'()*+'/:;<=>?@[\]^`{|}~ ·～！@#￥%……&×（）——+|『』’‘：《》？，。、；“”【】=、]/g,''); 
}
    
//取得當前瀏覽器支持的XMLHTTP對象   
function GetXmlHttpRequest() 
{  
    var request=null;   
  if(window.XMLHttpRequest)
    {
        request = new XMLHttpRequest(  );
    } 
    else if (window.ActiveXObject)
    {
        request=new ActiveXObject("Msxml2.XMLHTTP");
        if (! request)
        {
            request=new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return request;
}
//取得當前瀏覽器支持的XMLHTTP對象   
var xmlhttp = GetXmlHttpRequest();
function handleResponse()
{
    if(xmlhttp.readyState == 4)
    {
        if(xmlhttp.status == 200)
        {
            var strMember=xmlhttp.responseText; 
            if(strMember!=null)
            {
              var arrays=strMember.split('■');
              if(arrays!=null && arrays.length>0)
              {
                if(arrays[1]=='Exist')
                {
                  ShowError("000051","");//帳號重複
                }
                else
                {
                  ShowOk('000027',"");//此帳號可以使用！
                }
              }
            }
        }
    }
}
//無刷新檢測ID是否重復
function RegId()
{
  if(!IDonlyInt()) return false;  //防止非法ID被保存
  var txtMemberID = document.getElementById("ctl00_ContentPlaceHolder1_txtMemberID");
  var sMemberID=txtMemberID.value;
   if(sMemberID.trim()!="")
   {
        var weburl = document.forms[0].action+"?sMember_ID="+escape(sMemberID);
        xmlhttp = GetXmlHttpRequest();
        xmlhttp.onreadystatechange=handleResponse;
        xmlhttp.open("Post",weburl,true);
        xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");  
        xmlhttp.send(""); 
        
   }
   return false;
}

//昵稱格式
function CheckNickName()
{   
    var objNickName=document.getElementById("ctl00_ContentPlaceHolder1_txtNickName");
    var s_NickNameLength = bitLenght(objNickName);
    if(s_NickNameLength > 12)
    {
        ShowError("000055","");//只能輸入6個中文字元或12個英文字元昵稱
        return false;
    }
    return true;
}//登陸ID格式限制function IDonlyInt() 
{
    var objID=document.getElementById("ctl00_ContentPlaceHolder1_txtMemberID");
	var strID=trimSpace(objID.value);	
	if(strID=="") return true;	
	var objRe =/^[a-zA-Z]{1}[0-9a-zA-Z_]{1,12}[0-9a-zA-Z]{1}$/;
	//判斷只能輸入數字、字母、下劃線。長度為6-14
	if(objRe.test(strID))
	{
		return true;
	}
	else
	{
		ShowError("000052","");//“賬戶”欄位格式錯誤, 請檢查修改所輸入資料!
		return false;
	}	
	return true;
}

//密碼格式限制
function CheckPassWord(obj) 
{
    var objMemberPWD=obj;   
    //長度為6-14。密碼不能純數字或純字母
	var strMemberPWD=trimSpace(objMemberPWD.value);	
	if(strMemberPWD=="") return true;	
	var objRe =/^[0-9]{6,14}$/;
	var objRe1 =/^[a-zA-Z]{6,14}$/;
	var objRe2 =/^[0-9a-zA-Z]{6,14}$/;
	if(objRe.test(strMemberPWD) || objRe1.test(strMemberPWD))
	{
	    ShowError("000029","");//“密碼”欄位格式錯誤, 請檢查修改所輸入資料!
		return false;
	}
	if(!objRe2.test(strMemberPWD))
	{
	    ShowError("000029","");//“密碼”欄位格式錯誤, 請檢查修改所輸入資料!
		return false;
	}
	return true;
}