
function createDateSelOpt(year_element,month_element,day_element){
	
	var time = new Date();
	
	var month_txt = new Array('January','February','March','April','May','June','July','August','September','October','November','December');
	
	// Create years
	if(!year_element.value){
		start_year = time.getFullYear()-88;
		for (i=0; i<80; i++){
			year_element.options[i] = new Option(start_year+i,start_year+i);
		}
		year_element.options.selectedIndex = 63;
	}
	
	// Create months
	if(!month_element.value){
		for (i=0; i<12; i++){
			month_element.options[i] = new Option(month_txt[i],i+1);
		}
	}
	
	// Check total days of month
	if(year_element.value%4==0 && month_element.value==2){
		var total_day = 29;
	}else if(month_element.value==2){
		var total_day = 28;
	}else if(/^[0123578]+/.test(month_element.value) && month_element.value!=11){
		var total_day = 31;
	}else{
		var total_day = 30;
	}
	
	// Set reselect
	var tmp_sel = day_element.options.selectedIndex;
	if(day_element.options.selectedIndex>total_day-1){
		tmp_sel = total_day-1;
	}else if(day_element.options.selectedIndex==-1){
		tmp_sel = 0;
	}
	
	// Create days
	for(i=0;i<30;i++){
		day_element.options[i]=null;
	}
	for (i=0; i <total_day ; i++){
		day_element.options[i] = new Option(i+1,i+1);
	}
	
	// Reselect
	day_element.options.selectedIndex = tmp_sel;
	   
}



function checkForm(form){
	
	var total_error = 0;
	
	resetFeedback('login_name');
	if(!checkLogin(form.login_name.value)){
		errorFeedback('login_name','必須為5個或以上英文/數字');
		total_error++;
	}
	
	resetFeedback('login_password');
	if(!checkLogin(form.login_password.value)){
		errorFeedback('login_password','必須為5個或以上英文/數字');
		total_error++;
	}
	
	resetFeedback('login_password_again');
	if(!checkLogin(form.login_password_again.value)){
		errorFeedback('login_password_again','請填寫登入密碼(確認)');
		total_error++;
	}
	
	if(form.login_password.value!=form.login_password_again.value){
		errorFeedback('login_password_again','密碼不一至');
		total_error++;
	}
	
	resetFeedback('sex');
	if(form.male.checked==false && form.female.checked==false){
		errorFeedback('sex','請選擇性別');
		total_error++;
	}
	
	resetFeedback('full_name');
	if(!checkName(form.full_name.value)){
		errorFeedback('full_name','姓名需為全英文');
		total_error++;
	}
	
	resetFeedback('cid');
	if(!checkNumber(form.cid.value)){
		errorFeedback('cid','必須為4個數字');
		total_error++;
	}
	
	resetFeedback('mobile');
	if(!checkMobile(form.mobile.value)){
		errorFeedback('mobile','請正確填寫, 如: 91234567');
		total_error++;
	}
	
	resetFeedback('email');
	if(!checkMail(form.email.value)){
		errorFeedback('email','請正確填寫, 如: name@example.com');
		total_error++;
	}
	
	resetFeedback('job');
	if(!form.job.value){
		errorFeedback('job','請選擇職業');
		total_error++;
	}
	
	resetFeedback('job_o');
	if(form.job.value=='other' && !checkEng(form.job_o.value)){
		errorFeedback('job_o','如選擇其他職業,必需以英文說明');
		total_error++;
	}
	
	resetFeedback('address_room');
	if(!checkEng(form.address_room.value)){
		errorFeedback('address_room','請以英文填寫室/座/大廈');
		total_error++;
	}
	
	resetFeedback('address_street');
	if(!checkEng(form.address_street.value)){
		errorFeedback('address_street','請以英文填寫街道名');
		total_error++;
	}
	
	resetFeedback('district');
	if(form.country.value && !form.district.value){
		errorFeedback('district','請選擇地區');
		total_error++;
	}
	
	resetFeedback('country');
	if(!form.country.value){
		errorFeedback('country','請選擇國家');
		total_error++;
	}
	
	resetFeedback('income');
	if(!form.income.value){
		errorFeedback('income','請選擇收入');
		total_error++;
	}
	
	resetFeedback('house');
	if(!form.income.value){
		errorFeedback('house','請選擇居住狀況');
		total_error++;
	}
	
	resetFeedback('fee_skin');
	if(!form.fee_skin.value){
		errorFeedback('fee_skin','請選擇用於護膚花費');
		total_error++;
	}
	
	resetFeedback('fee_makeup');
	if(!form.fee_makeup.value){
		errorFeedback('fee_makeup','請選擇用於化妝花費');
		total_error++;
	}
	
	resetFeedback('fee_fashion');
	if(!form.fee_fashion.value){
		errorFeedback('fee_fashion','請選擇用於時裝花費');
		total_error++;
	}
	
	resetFeedback('fee_jewellery');
	if(!form.fee_jewellery.value){
		errorFeedback('fee_jewellery','請選擇用於飾物花費');
		total_error++;
	}
	
	resetFeedback('fee_play');
	if(!form.fee_play.value){
		errorFeedback('fee_play','請選擇用於玩樂花費');
		total_error++;
	}
	
	var total_check = 0;
	for (var i = 1; i <= form["listen_product[]"].length; i++) {
		if(form["listen_product["+i+"]"].checked==true){
			total_check++;	
		}
	}
	resetFeedback('listen_product');
	if(total_check<=0){
		errorFeedback('listen_product','請選擇最少一項感興趣的產品');
		total_error++;
	}
	
	if(total_error>0){
		alert("抱歉,你的資料發現了"+total_error+"處錯誤, 請按確定(OK)並依照指示填寫");
		return false;
	}
}

function errorFeedback(element,message) {
	document.getElementById('errmsg_'+element).innerHTML = message+'<br>';
	document.getElementById('errbor_'+element).className = "errbor";
}
function resetFeedback(element) {
	document.getElementById('errmsg_'+element).innerHTML = '';
	document.getElementById('errbor_'+element).className = "noerrbor";
}

// Check Unit

function checkEng(str){
	var re = /^[a-zA-Z0-9. ]/;
	if (!re.test(str) || !str) return false;
	return true;
}

function checkLogin(str){
	var re = /^[a-zA-Z0-9]{5,32}/;
	if (!re.test(str) || !str) return false;
	return true;
}

function checkName(str){
	var re = /^[a-zA-Z]+[ ]+[a-zA-Z ]{2,128}$/;
	if (!re.test(str) || !str) return false;
	return true;
}

function checkNumber(str){
	var re = /^[0-9\/]{4,16}/;
	if (!re.test(str) || !str) return false;
	return true;
}

function checkMail(str) {
	var re = /^[._a-zA-Z0-9]+@([_a-zA-Z0-9]+\.)+[a-zA-Z0-9]{2,3}$/;
	if (!re.test(str) || !str) return false;
	return true;
}

function checkMobile(str){
	var re = /^[689]+[0-9]{7}$/;
	if (!re.test(str)) return false;
	return true;
}

function jobChange(element,change_element){
	if(element.value=="other"){
		document.getElementById(change_element).style.display = "block";
	}else{
		document.getElementById(change_element).style.display = "none";
	}
}
