function sqlInjection(str){
	if(str.search(/\?|\%|select|insert|update|delete/i) != -1)
		return true;
	else
		return false;
}

function checkForm(form, startName, bouncedArray){
	var startIndex = getStartIndex(form, startName);
	var arrBounce = new Array(bouncedArray.length);

	for(var i = 0; i < arrBounce.length; i++){
		arrBounce[i] = bouncedArray[i] + startIndex;
	}
	
	
	for(var i = startIndex; i < form.elements.length; i++){
		var e = form.elements[i], bounce = false;
		
		if(sqlInjection(e.value) && (e.type == "text" || e.type == "textarea")){
			alert("請勿使用任何特殊符號或關鍵字，如\'");
			e.focus();

			return false;
		}

		for(var j = 0; j < arrBounce.length; j++){
			if(i == arrBounce[j])
				bounce = true;
		}

		if(!bounce){
			if(e.type == "text"){
				if(e.value == "" || e.value == null){
					alert("請填入所有必填欄位");
					e.focus();
				
					return false;
				}
		
				if(e.name == "email"){
					if(e.value.search(/[\w\-]+(\@)+[\w\-]+\.[\w\-]+/) == -1){
						alert("電子郵件地址格式錯誤");
						e.focus();
						
						return false;
					}
				}
				
				if(e.name == "companyGID" && (e.value.length != 8 || parseInt(e.value) == "NaN")){
					alert("統一編號格式不正確");
					e.focus();
					
					return false;
				}
				
				if(e.name == "userID"){
					var userID = /[a-zA-Z][12]\d{8}/;
					
					if(e.value.match(userID) == null || e.value.length != 10){
						alert("身份證字號格式不正確");
						e.focus();
						return false;
					}
				}
			}else if(e.type == "select-one"){
				if(e.selectedIndex == 0){
					alert("請選擇必填欄位");
					//alert(i);
					e.focus();
					
					return false;
				}
			}else if(e.type == "radio"){
				var radioChecked = false, arrRadio = eval("form." + e.name);
				
				for(var j = 0; j < arrRadio.length; j++){
					if(arrRadio[j].checked)
						radioChecked = true;
				}
				
				if(!radioChecked){
					alert("請選擇所有必填欄位");
					e.focus();
					  
					return false;
				}
			}else if(e.type == "password"){
				if(e.name == "pw"){
					var pattern1 = /[a-zA-Z]+/;
					var pattern2 = /\d+/;
					var val = e.value;
				
					if(val.match(pattern1) == null || val.match(pattern2) == null || val.length < 8){
						alert("密碼格式不式確");
						e.focus();
						return false;
					}
				}else{
					if(e.value == null || e.value == ""){
						alert("請輸入必填欄位");
						e.focus();
						return false;
					}
				}
			}else if(e.type == "textarea"){
				if(e.value == null || e.value == ""){
					alert("請輸入必填欄位");
					e.focus();
					return false;
				}
			}
		}
	}
	
	if(!doubleCheckPW(form)){
		alert("請在 \'密碼\' 及 \'確認密碼\' 欄位輸入相同密碼");
		form.pw.focus();
		return false;
	}
	
	return true;
}

function loopForm(form, startName, bouncedArray){
	var startIndex = getStartIndex(form, startName);
	var arrBounce = new Array(bouncedArray.length);

	
	for(var i = startIndex; i < form.elements.length; i++){
		var e = form.elements[i], bounce = false;
		
		alert(e.type);
	}
	
	return false;
}

function changeDistrict(e, form){
	form.address.value = e.value;
}

function clearField(e, defaultString){
	if(e.value == defaultString){
		e.value = "";
	}
}

function getStartIndex(form, objName){
	var startIndex = 0;
	
	for(var i = 0; i < form.elements.length; i++){
		var e = form.elements[i];
		
		if(e.name == objName){
			startIndex = i;
			break;
		}
	}
	
	return startIndex;
}

function doubleCheckPW(form){
	if(form.pw != null && form.pw2 != null){
		if(form.pw.value != form.pw2.value)
			return false;
		else
			return true;
	}else
		return true;
}

function show_frame(frame_name, frame_file){
	var my_frame = parent.document.getElementById(frame_name);
	
	my_frame.src = frame_file;
}

function format_gid(){
	var e = document.getElementById('user_id_full');
	var e_short = document.getElementById('userPID');
	var full_id = e.value;
	
	if(full_id.length == 10){
		//alert(full_id.substring(0, 1) + full_id.substring(5, 10));
		e_short.value = full_id.substring(0, 1) + full_id.substring(5, 10);
	}else{
		alert("請輸入完整身份證字號");
		e.focus();
		e_short.value = "";
	}
}