﻿	// JavaScript Document
<!--

function submitForm(){ // begin

obj = document.theForm; // document variable

comment = obj.comment.value;
surname_tc = obj.surname_tc.value;
surname_en = obj.surname_en.value;
phone = obj.phone.value;
email = obj.email.value;
flat = obj.flat.value;
bldg = obj.bldg.value;
street = obj.street.value;
district = obj.district.value;
media = obj.media.value;

errCntr=0;
popmsg = "";


//check salutation selection
if ( !isCheckedRadio(obj.salut) ){ 
	errCntr++;
	putArrow('err_salut');
	popmsg += "* 請選擇稱呼\n";
	} else { 
	noArrow('err_salut');
}

//check comment
if (comment==""){
	errCntr++;	
	putArrow('err_comment');
	popmsg += "* 請輸入你的意見\n";
	}else{
	noArrow('err_comment');	
}


//check surname_tc
if (surname_tc=="" && surname_en==""){
	errCntr++;	
	putArrow('err_surname');
	popmsg += "* 必須填寫姓氏\n";
	}else{
	checkChars(obj.surname_tc, 'err_surname');
	checkChars(obj.forename_tc, 'err_surname');
	checkChars(obj.surname_en, 'err_surname');
	checkChars(obj.forename_en, 'err_surname');
}

//check gender selection
if ( !isCheckedRadio(obj.gender) ){ 
	errCntr++;
	putArrow('err_gender');
	popmsg += "* 請選擇性別\n";
	} else { 
	noArrow('err_gender');
}

//check age selection
if ( !isCheckedRadio(obj.age) ){ 
	errCntr++;
	putArrow('err_age');
	popmsg += "* 請選擇年齡組別\n"
	} else { 
	noArrow('err_age');
}



//check phone
if (phone==""){ 
	errCntr++; 
	putArrow('err_phone');
	popmsg += "* 請輸入電話號碼\n";
	} else {	
		
		if (document.theForm.phone.value.length<8){
		errCntr++;
		putArrow('err_phone');
		popmsg += "* 電話號碼必須為八位數字\n";
		}
		
		for (var x = 0; x < document.theForm.phone.value.length; x++){
  		if (isNaN(phone.charAt(x))) {		
		errCntr++;
		putArrow('err_phone');
		popmsg += "* 電話號碼不正確\n";
		break;
		}else{
		noArrow('err_phone')
		}
		
				
	}
}

//check email
if (email==""){	
	errCntr ++; putArrow('err_email') 
	popmsg += "* 請輸入電郵地址\n";
	}else if (emailCheck(email)==false) { 
		errCntr ++; 
		popmsg += "* 請輸入正確電郵地址\n"; 
		}else
		{ 	}

//check flat
if (flat==""){ 
	errCntr++; 
	putArrow('err_flat')
	popmsg += "* 請輸入室/單位號碼\n";
	}else{	
	checkChars(obj.flat,'err_flat'); 
	}

//check bldg
if (bldg==""){ 
	errCntr++; 
	putArrow('err_bldg')
	popmsg += "* 請輸入大廈名稱\n";
	}else{	
	checkChars(obj.flat,'err_bldg'); 
	}
	
//check street
if (street==""){ 
	errCntr++; putArrow('err_street')
	popmsg += "* 請輸入街道名稱\n";
	}else{ 
	checkChars(obj.street,'err_street'); 
	}

//check district
if (district==""){ 
	errCntr++; 
	putArrow('err_district')
	popmsg += "* 請選擇地區\n";
	}else{ 
	noArrow('err_district'); 
	}
	
//check media 
if (media==""){ 
	errCntr++; 
	putArrow('err_media');
	popmsg += "* 請選擇首選聯絡方法\n";
	}else{ 
	noArrow('err_media'); 
	}	

// checking usage checkboxes			
	//loop all checkbox 
		for (i=1; i<=7; i++){				
			var have_choice =0;
	  		obj6 = eval('obj6=obj.u_' + i +'.checked');			
			if (obj6==true){ have_choice++; break;} }
	//end loop		
	
		if (have_choice==0) { 
		putArrow('err_usage');
		errCntr++;
		popmsg += "* 隱形眼鏡的使用經驗? \n"; 
		} else {  
		noArrow('err_usage');
		}																		
// 

// if checkbox usage u_4 is checked

if (obj.u_4.checked==true){
	if (obj.u_4_text.value==""){	
	putArrow('err_usage');
	errCntr++;
	popmsg += "* 請註明每月即棄隱形眼鏡品牌\n"; 
	}else
	{ 	}
	
	if (obj.u_4_text.value=="Others" && obj.u_4_others.value==""){	
	putArrow('err_usage');
	errCntr++;
	popmsg += "* 請註明其他即棄隱形眼鏡品牌\n"; 
	}else
	{ 	}
	
} 

// if checkbox usage u_5 is checked

if (obj.u_5.checked==true){
	if (obj.u_5_text.value==""){	
	putArrow('err_usage');
	errCntr++;
	popmsg += "* 請註明兩星期即棄隱形眼鏡品牌\n"; 
	}else
	{ 	}
	
	if (obj.u_5_text.value=="Others" && obj.u_5_others.value==""){	
	putArrow('err_usage');
	errCntr++;
	popmsg += "* 請註明其他即棄隱形眼鏡品牌\n"; 
	}else
	{ 	}
	
}

// if checkbox usage u_6 is checked

if (obj.u_6.checked==true){
	if (obj.u_6_text.value==""){	
	putArrow('err_usage');
	errCntr++;
	popmsg += "* 請註明每日即棄隱形眼鏡品牌\n"; 
	}else
	{ 	}
	
	if (obj.u_6_text.value=="Others" && obj.u_6_others.value==""){	
	putArrow('err_usage');
	errCntr++;
	popmsg += "* 請註明其他即棄隱形眼鏡品牌\n"; 
	}else
	{ 	}
	
	
}
// if checkbox usage u_7 is checked

if (obj.u_7.checked==true){
	if (obj.u_7_text.value==""){	
	putArrow('err_usage');
	errCntr++;
	popmsg += "* 請註明其他即棄隱形眼鏡品牌\n"; 
	}else
	{ 	}
		
}



// checking vision checkboxes			
	//loop all checkbox 
		for (i=1; i<=6; i++){		
			var have_choice =0;
	  		objv = eval('objv=obj.v_' + i +'.checked');
			if (objv==true){ have_choice++; break;} }
	//end loop			
		if (have_choice==0) { 
		putArrow('err_vision');
		errCntr++;
		popmsg += "* 有任何視覺問題嗎? \n"; 
		} else { 
		noArrow('err_vision');
		}																		
// 

// if checkbox vision v_2 is checked

if (obj.v_2.checked==true){
	if (obj.v_2_text.value==""){	
	putArrow('err_v_2');
	putArrow('err_vision');
	errCntr++;
	popmsg += "* 近視 -> 請註明度數 \n"; 
	}else
	{ 
	noArrow('err_v_2');
	}
}


// if checkbox vision v_3 is checked

if (obj.v_3.checked==true){
	if (obj.v_3_text.value==""){	
	putArrow('err_v_3');
	putArrow('err_vision');
	errCntr++;
	popmsg += "* 遠視 -> 請註明度數\n"; 
	}else
	{ 
	noArrow('err_v_3');
	}
}

// if checkbox vision v_4 is checked

if (obj.v_4.checked==true){
	if (obj.v_4_text.value==""){	
	putArrow('err_v_4');
	putArrow('err_vision');
	errCntr++;
	popmsg += "* 散光 -> 請註明度數\n"; 
	}else
	{ 
	noArrow('err_v_4');
	}
}

// if checkbox vision v_5 is checked

if (obj.v_5.checked==true){
	if (obj.v_5_text.value==""){	
	putArrow('err_v_5');
	putArrow('err_vision');
	errCntr++;
	popmsg += "* 老花 -> 請註明度數\n"; 
	}else
	{ 
	noArrow('err_v_5');
	}
}


// if checkbox vision v_6 is checked

if (obj.v_6.checked==true){
	if (obj.v_6_text.value==""){	
	putArrow('err_v_6');
	putArrow('err_vision');
	errCntr++;
	popmsg += "* 其他 -> 請列明\n"; 
	}else
	{ 
	noArrow('err_v_6');
	}
}



if (!obj.terms.checked){
errCntr++;
putArrow('err_terms');
popmsg += "* 必須接受條款\n";
}else{
noArrow('err_terms');

}

//Count Errors display error message
if (errCntr>0){
document.getElementById('err_msgs').style.display="block";
document.getElementById('err_msgs').innerHTML = '<font color=red>Error︰有些項目未正確填妥，請留意以上項目&nbsp;&nbsp;<img src=images/error_arrow.gif align=absmiddle></font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>';
if (popmsg!=""){alert("請修改以下項目\n\n"+popmsg);	}
return false;
}else{
obj.submit();
return true;
}


} // end submitForm()


function submitForm2(){ // begin

obj2 = document.theForm2; // document variable

comment2 = obj2.comment2.value;
email2 = obj2.email2.value;

errCntr2=0;
popmsg2 = "";

//check email
if (email2==""){	
	errCntr2 ++; 
	putArrow('err_email') 
	popmsg2 += "* 請輸入電郵地址\n"; 
	}else if ( !isValidEmailAddress(obj2.email2) ) { 
		errCntr2 ++; 
		putArrow('err_email') 
		popmsg2 += "* 請輸入正確電郵地址\n"; 
		}


//check comment
if (comment2==""){
	errCntr2++;	
	putArrow('err_comment');
	popmsg2 += "* 請輸入你的意見\n";
	}else{
	noArrow('err_comment');	
}


//Count Errors display error message
if (errCntr2>0){
if (popmsg2!=""){alert("請修改以下項目\n\n"+popmsg2);	}
return false;
}else{
obj2.submit();
return true;
}


}


// usage extra functions

function selectNone_u(){
	for (i=2; i<=7; i++){
	newu = 'u_'+i;	
	document.getElementById(newu).checked=false;
	noArrow('err_usage');	
	}
	for (i=4; i<=7; i++){
	textVal = 'u_'+i+'_text';
	document.getElementById(textVal).value="";
	}
}	  

function removeNone_u(){ 
document.getElementById('u_1').checked=false; 
noArrow('err_usage');
}

function selectU4text(){
if (document.getElementById('u_4_text').value=="Others"){
	document.getElementById('u_4_others').style.display="block";	
	document.getElementById('u_4').checked=true; 
	document.getElementById('u_1').checked=false; 
	noArrow('err_usage');
}else{
	document.getElementById('u_4_others').style.display="none";
	document.getElementById('u_4').checked=true; 
	document.getElementById('u_1').checked=false; 
	noArrow('err_usage');	
	}

}



function selectU5text(){
if (document.getElementById('u_5_text').value=="Others"){
	document.getElementById('u_5_others').style.display="block";	
	document.getElementById('u_5').checked=true; 
	document.getElementById('u_1').checked=false; 
	noArrow('err_usage');
}else{
	document.getElementById('u_5_others').style.display="none";
	document.getElementById('u_5').checked=true; 
	document.getElementById('u_1').checked=false; 
	noArrow('err_usage');
	
	}


}

function selectU6text(){
if (document.getElementById('u_6_text').value=="Others"){
	document.getElementById('u_6_others').style.display="block";	
	document.getElementById('u_6').checked=true; 
	document.getElementById('u_1').checked=false; 
	noArrow('err_usage');
}else{
	document.getElementById('u_6_others').style.display="none";
	document.getElementById('u_6').checked=true; 
	document.getElementById('u_1').checked=false; 
	noArrow('err_usage');
	
	}
	
}

function selectU7text(){ 	
	document.getElementById('u_7').checked=true; 
	document.getElementById('u_1').checked=false; 
	noArrow('err_usage');
}

// Vision extra functions

function selectNone_v(){
	for (i=2; i<=6; i++){
	newv = 'v_'+i;	
	document.getElementById(newv).checked=false;
	
	textv = 'v_'+i+'_text';
	document.getElementById(textv).value="";
	
	noArrow('err_v_'+i);
		
	}
	noArrow('err_vision');
	
}	


function removeVision(id){ 
document.getElementById(id+'_text').value=""; 
noArrow('err_'+id);
}

function checkVision(id){ 	
document.getElementById(id).checked=true; 
document.getElementById('v_1').checked=false; 
noArrow('err_vision');
}



// arrow functions

function putArrow(objId){
document.getElementById(objId).className='putArrow';
}

function noArrow(objId){
document.getElementById(objId).className='noArrow';
}

// checking illegal characters

function checkChars(newobj, objId){		
	var invChars = "!@#$%^&*+=-[]\\\';{}|\":<>?";
	for (var i = 0; i < newobj.value.length; i++){
		if (invChars.indexOf(newobj.value.charAt(i)) != -1){  					
		errCntr++;
		putArrow(objId);			
		popmsg +="不允許無效的字符 [" + newobj.value+"]\n";
		break;		
		}else{
		noArrow(objId);
		}						
	}
}

function checkChars2(newobj, objId){		
	var invChars = "!@#$%^&*+=-[]\\\'.,;/{}|\":<>?";
	for (var i = 0; i < newobj.value.length; i++){
		if (invChars.indexOf(newobj.value.charAt(i)) != -1){  					
		errCntr++;
		putArrow(objId);
		popmsg +="不允許無效的字符 [" + newobj.value+"]\n";
		break;		
		}else{
		noArrow(objId);
		}						
	}
}

function checkChars3(newobj, objId){		
	var invChars = "!@#$%^&*()+=[]\\\',;/{}|\":<>?";
	for (var i = 0; i < newobj.value.length; i++){
		if (invChars.indexOf(newobj.value.charAt(i)) != -1){  					
		errCntr++;
		putArrow(objId);			
		popmsg +="不允許無效的字符 [" + newobj.value+"]\n";
		break;		
		}else{
		noArrow(objId);
		}						
	}
}

function checkChars4(newobj, objId){		
	var invChars = "!#$%^&*+=-[]\\\',;/{}|\":<>?";
	for (var i = 0; i < newobj.value.length; i++){
		if (invChars.indexOf(newobj.value.charAt(i)) != -1){  					
		errCntr++;
		putArrow(objId);
		popmsg +="不允許無效的字符 [" + newobj.value+"]\n";
		break;		
		}else{
		noArrow(objId);
		}						
	}
}


function checkCharsEmail(newobj, objId){		
	var invChars = "!#$%^&*+=[]\\\',;/{}|\":<>?";
	for (var i = 0; i < newobj.value.length; i++){
		if (invChars.indexOf(newobj.value.charAt(i)) != -1){  					
		errCntr++;
		putArrow(objId);
		popmsg +="請輸入正確的電郵地址 [" + newobj.value+"]\n";
		break;		
		}else{
		noArrow(objId);
		}						
	}
}



function isValidEmailAddress(obj) {
		re = /^\S*\@\S*\.\S*$/;
		return re.test(obj.value);
	}

function isCheckedRadio(obj) {
		var isCheck = false;
		if (obj.length) {
			for (i=0;i<obj.length;i++) {
				if (obj[i].checked) {
					isCheck = true;
				}
			}
		} else {
			if (obj.checked) {
				isCheck = true;
			}
		}

		if (!isCheck) {
			return false;
		}
		return true;
	}
	

function emailCheck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false
		 }

 		 return true					
	}


function submitotherForm(){ // begin

obj = document.otherForm; // document variable

fname = obj.fname.value;
email = obj.email.value;

popmsg = "";


//check name
if (fname==""){
	popmsg += "* 必須填寫姓氏\n";
}

//check email
if (email==""){	
	popmsg += "* 請輸入電郵地址\n";
	}
else if (emailCheck(email)==false) { 
		popmsg += "* 請輸入正確電郵地址\n"; 
	}
else
	{ 	}

// check terms
if (!obj.terms.checked)
	{
	popmsg += "* 必須接受條款\n";
	}
else
	{  }

if (popmsg!=""){
	alert("請修改以下項目\n\n"+popmsg); 
	return false;
	}
else{
	obj.submit();
	return true;
	}

}// end submitotherform()




//-->