﻿function check_telephonenumber ( number,str ){
    var error = false;
    if(number.length<8)	
	{return str+"不滿八個字\n";}
    		   for( idx = 0 ; idx < number.length ; idx++ ) {
        			if( !( ( number.charAt(idx) >= '0' && number.charAt(idx) <= '9' ) || ( number.charAt(idx) == '-' ) ) ) 
					{error = true;
    	     		 break;
			    	}
				}   
    if( error == true )
        return str+"只能是數字及'-'等符號,其他的符號都不能使用 !\n";
    return "";
}

//*************************************檢查手機號碼************************************
function check_mobilephone (number)
{ 
     var error = false;
    if(number.length<10)	
	{
		return "您的行動電話不滿10個字耶!\n";
	}
    
	for( idx = 0 ; idx < number.length ; idx++ ) {
    	  if( !( ( number.charAt(idx) >= '0' && number.charAt(idx) <= '9' ) || ( number.charAt(idx) == '-' ) ) ) {
        	 return "您的行動電話只能是數字及'-'等符號, 其他的符號都不能使用 !\n";
    	     break;
	      }
    }
   	if(number.charAt(0)!='0' || number.charAt(1)!='9')
	{
		return "您的行動電話有誤!\n"
	}	
	return "";
}

//********************檢查EMAIL****************************************************************
function check_email ( email ){
   var len = email.length;
   var ck =0; 
 
   for(var i=0;i<len;i++)   {  
   		var c= email.charAt(i);
     		 if(!((c>="A"&&c<="Z")||(c>="a"&&c<="z")||(c>="0"&&c<="9")||(c=="-")||(c=="_")||(c==".")||(c=="@")))
		         return "您的『電子郵件地址』只能是數字,英文字母及'-','_'等符號,其他的符號都不能使用 !\n";
   }
     if((email.indexOf("@")==-1)||(email.indexOf("@")==0)||(email.indexOf("@")==(len-1)))
      return "您的『電子郵件地址』不合法 !\n";
   if((email.indexOf("@")!=-1)&&(email.substring(email.indexOf("@")+1,len).indexOf("@")!=-1))
      return "您的『電子郵件地址』不合法 !\n";
   if((email.indexOf(".")==-1)||(email.indexOf(".")==0)||(email.lastIndexOf(".")==(len-1)))
      return "您的『電子郵件地址』不完全 !\n";
   return "";
}

//***************************檢查身份證號碼**********************************************
function check_id_num(id){
     var myid = id;
     myid = myid.toUpperCase();
    // id.value = myid;
     if(myid.length>10)
        return "您的「身分證字號」超過10個字 !\n";
     if(myid.length<10)
        return "您的「身分證字號」不滿10個字 !\n";
     var c = myid.charAt(0);
     if(c<"A" || c> "Z")
        return "您的「身分證字號」第一碼必須是大寫的英文字母 !\n";
     c = myid.charAt(1);
     if(c!="1" && c!="2")
        return "您的「身分證字號」第二碼有問題 !\n";
     for(i=1;i<10;i++)
        if(isNaN(parseFloat(myid.charAt(i))))
           return "您的「身分證字號」第二到十碼有問題 !\n";
     var alph = new Array("A","B","C","D","E","F","G","H","J","K","L","M","N","P","Q","R","S","T","U","V","X","Y","W","Z","I","O");
     var num  = new Array("10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35");
     var n=0;
     for(i=0;i<alph.length;i++)
       if(myid.charAt(0)==alph[i])
          n=i;
     var tot1 = parseFloat(num[n].charAt(0)) + (parseFloat(num[n].charAt(1)) * 9);
     var tot2 = 0;
     for(i=1;i<myid.length-1;i++)
		    tot2 = tot2 + parseFloat(myid.charAt(i))*(9-i);
     var tot3 = parseFloat(myid.charAt(9));
     var tot4 = tot1 + tot2 + tot3;
     if((tot4 % 10)!=0)	 {
        return "您的「「身分證字號」」有問題 !\n";
	}else{
	 return '';
	 }
   }

//**************************************chek radio*****************************
function check_radio ( radio_name, str )
{
    var error = true;
    for( i=0; i < radio_name.length; i++ )
        if( radio_name[i].checked == true ) {
            error = false;
            break;
        }
    if( error == true )
        return str + "必須選擇 !\n";
    return "";
}

//**************************************check_char()****************************
//**************************************normal text*****************************
function isString(elm, prompt_str)
{ var ii=0;
  if (!elm.value)
  {  return false;  }
  else
  {  for (i = 0;i < elm.value.length; i ++) 
     {  if ((elm.value.charAt(i) != prompt_str)&&(elm.value.charAt(i) != " ")&&(elm.value.charCodeAt(i) != 10)&&(elm.value.charCodeAt(i) != 13)) 
        {  ii=1;
       
        }
     }
     if (ii==0)
     {  return false;  }
  
     if (ii==1) 
     {  return true;   }
  }   
}	
//******************************************************************************
//**************************************open new window*************************
function openwin(url,vwidth,vheight,myesno,dyesno,syesno,ryesno,lyesno,tyesno,styesno,windowname){
	if(myesno=='')
		myesno=='no';
	if(dyesno=='')
		dyesno=='no';
	if(syesno=='')
		syesno=='no';
	if(ryesno=='')
		ryesno='no';
	if(lyesno=='')
		lyesno=='no';
	if(tyesno=='')
		tyesno='no';
	if(styesno)
		styesno='no';
	window.open(url,windowname,"width="+vwidth+",height="+vheight+",menubar="+myesno+",dependent="+dyesno+",scrollbars="+syesno+",resizable="+ryesno+",location="+lyesno+",toolbar="+tyesno+",status="+styesno+"");
}


//****

function checked(name,FORM){
  count = FORM.elements.length;
  var checked = 0;
  for(i=0;i<count;i++){
    if(FORM.elements[i].name == name && FORM.elements[i].checked){
       checked ++;
    } 
  } 
  return checked;
}


///從右進來的視窗
function right_in_window(filename) {	
	winname = "newwin" ;
	standardfeatures = "status=0,toolbar=0,scrollbars=1" ;
	featurestr = standardfeatures + ",width=" + 500 + ",height=" + 375 +",left ="+ 1200+",top ="+ 100;
	newwin= top.open(filename,winname , featurestr)	;
}   

//把身分證第一個字成為大寫字母
function uppercase(obj) 
{
	obj.value = obj.value.toUpperCase();
}

//單純檢查數字(會回傳'純'數字字串）
function checkNum(str){	
		//var str="1b3-54*2哈59";
		var ch="";
		var idx=0;
		for( idx = 0 ; idx < str.length ; idx++ ) {
        		if( ( ( str.charAt(idx) >= '0' && str.charAt(idx) <= '9' )))
				{					
	   	     		ch+=str.charAt(idx);
		    	}
		}   
		return(ch);
}

//單純檢查數字(會回傳'純'數字字串）,另一種更簡單的方法
function get_num(str){
	re = /[^0-9]/g;
	//str = "Johw12n劃1Smith3";
	newstr = str.replace(re,"");
	return newstr;
}

//無邊視窗

function (popUpURL){
	splashWin = window.open("",'x','fullscreen=1,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=auto,resizable=0');
	splashWin.focus();
	splashWin.location=popUpURL;
}
           

function chk_text(t_name,t_word){
	
	t_name.value = t_name.value.replace(/^\s*/,"");
    t_name.value = t_name.value.replace(/\s*$/,"");
	if(t_name.value==''){
		alert('請輸入'+t_word+'!\n');
		t_name.focus();
		return true;
	}
	return false;
}

function not_word(str){
	if(str.match(/[\W]/i)){
   		return true;
	}
	return false;
}

 function strlens(text){
    var len =0,i=0;
    text = text.replace(/^\s*/,"");
    text = text.replace(/\s*$/,"");
    for(var i=0;i< text.length;i++){
      len += (text.charCodeAt(i) > 255)?2:1;
    }
    return len;
  }
  
function check_uid(uid){
    uid = uid.toUpperCase();
    if(!uid.match(/^[A-Z]\d{9}$/)) return alert("身份證格式不正確！");
    if(uid.charAt(1)!="1" && uid.charAt(1)!="2")	return alert("身份證格式不正確！");
    if(uid == "A123456789") return alert("請輸入正確身份證字號！");
    var eng2num = new Array(1,10,19,28,37,46,55,64,39,73,82,2,11,20,48,29,38,47,56,65,74,83,21,3,12,30);
    var uidsum = eng2num[uid.charCodeAt(0) - 65];
    for(var i=1;i<10;i++) uidsum += parseInt(uid.charAt(i))*((9-i)?(9-i):1);
    if(uidsum%10) return alert("您的身份證字號有誤,請查看一下!!\n");
    return uid;
  }

function chkbox(f,start,stop,jump){
	
	var i,j=0;
	for(i=start ;i<stop ; i+=jump){
		if(f.elements[i].checked==true){
			j++;
		}
	}
	return j;
}

function disable(f,x,start,stop,jump){
	
	for(i=start ;i<stop ; i+=jump){
			f.elements[i].disabled=x;
	}
	if(x){
		for(i=start ;i<stop ; i+=jump){
			f.elements[i].checked=false;
		}
	}
}  
