/* reg_tw.html */

var name_flag = false;
var account_flag = false;
var pwd_flag = false;
var re_pwd_flag = false;
var email_flag = false;
var dob_flag = false;
var gender_flag = false;
var identity_flag = false;
var checkbox_flag = false;

var gender_value = '';
var sb_program = 'NOT_INSERT';

$(document).ready(function() {
	/*// 取得今年年份
	var this_year = (new Date()).getFullYear();

	// 產生年月日選單
	$('#year').html('<option value="">----</option>');
	for(var year=1911; year<=this_year; year++) {
		$('#year').append('<option value="' + year + '">' + year + '</option>');
	}

	$('#month').html('<option value="">--</option>');
	for(var month=1; month<=12; month++) {
		$('#month').append('<option value="' + month + '">' + month + '</option>');
	}

	$('#date').html('<option value="">--</option>');
	for(var date=1; date<=31; date++) {
		$('#date').append('<option value="' + date + '">' + date + '</option>');
	}*/

	// 檢查name欄位
	$('#name').blur(function() {
		if ($('#name').val() == '') {
			$('#name_msg').addClass('msg').text('請填寫姓名。').show();
			name_flag = false;
		}
		else {
		  var check_re = /[\w!'\(\)\*\-\.~]/; //不會被編碼的字元
      var check_name_str = $('#name').val();
      var check_name_j = 0; //不會被encodeURIComponent編碼的字元數*2
      for(var check_name_i = 0; check_name_i < check_name_str.length; check_name_i++){
        if(check_re.test(check_name_str.charAt(check_name_i))){
          check_name_j += 2; //計算有多少個字不會被編碼
        }
      }
      check_name_str_length = (encodeURIComponent(check_name_str).length + check_name_j) / 3;
      //alert(check_name_str_length);

			if ($('#name').val().length < 2) {
				$('#name_msg').addClass('msg').text('太短了！請輸入2至15個中文字。').show();
				name_flag = false;
			}
			else if (check_name_str_length > 45) {
				$('#name_msg').addClass('msg').text('太長了！請輸入2至15個中文字。').show();
				name_flag = false;
			}
			else {
				$('#name_msg').removeClass().addClass('tMS02').text('(請輸入2~15個中文字)').show();
				name_flag = true;
			}
		}
	});

	// 檢查account欄位
	$('#account').blur(function() {
		if ($('#account').val() == '') {
			$('#account_msg').addClass('msg').text('請填寫登入帳號。').show();
			account_flag = false;
		}
		else {
			var accountReg = /^[a-zA-Z0-9]+$/;
			if ($('#account').val().length < 3) {
				$('#account_msg').addClass('msg').text('太短了！請輸入3至12個字元。').show();
				account_flag = false;
			}
			else if ($('#account').val().length > 12) {
				$('#account_msg').addClass('msg').text('太長了！請輸入3至12個字元。').show();
				account_flag = false;
			}
			else if (!accountReg.test($('#account').val())) {
				$('#account_msg').addClass('msg').text('請輸入英文字元或數字，勿使用其他符號或空白鍵。').show();
				account_flag = false;
			}
			else {
				$.ajaxSetup({ cache: false });
				$.post(
					'php/check_register.php',
					{'account': $('#account').val()},
					function(data) {
						if (data[0].account_check == 'ACCOUNT_ERROR') {
							$('#account_msg').addClass('msg').text('此帳號已被使用，請重新填寫。').show();
							account_flag = false;
						}
						else if (data[0].account_check == 'ACCOUNT_OK') {
							$('#account_msg').removeClass().addClass('tMS02').text('(請輸入3~12個字元，不可使用符號)').show();
							account_flag = true;
						}
					},
					'json'
				);
			}
		}
	});

	// 檢查pwd欄位
	$('#pwd').blur(function() {
		if ($('#pwd').val() == '') {
			$('#pwd_msg').addClass('msg').text('請設定一組密碼。').show();
			pwd_flag = false;
		}
		else {
			var pwdReg = /^[a-zA-Z0-9]+$/;
			if ($('#pwd').val().length < 3) {
				$('#pwd_msg').addClass('msg').text('太短了！請輸入3至18個字元。').show();
				pwd_flag = false;
			}
			else if ($('#pwd').val().length > 18) {
				$('#pwd_msg').addClass('msg').text('太長了！請輸入3至18個字元。').show();
				pwd_flag = false;
			}
			else if (!pwdReg.test($('#pwd').val())) {
				$('#pwd_msg').addClass('msg').text('請輸入英文字元或數字，勿使用其他符號或空白鍵。').show();
				pwd_flag = false;
			}
			else {
				$('#pwd_msg').removeClass().addClass('tMS02').text('(請輸入3~18個字元，不可使用符號)').show();
				pwd_flag = true;
			}
		}
	});

	// 檢查re_pwd欄位
	$('#re_pwd').blur(function() {
		if ($('#re_pwd').val() == '') {
			$('#re_pwd_msg').addClass('msg').text('請再一次確認密碼。').show();
			re_pwd_flag = false;
		}
		else {
			if ($('#pwd').val() != $('#re_pwd').val()) {
				$('#re_pwd_msg').addClass('msg').text('密碼不相符，請重新輸入。').show();
				re_pwd_flag = false;
				$('#pwd').val('');
				$('#re_pwd').val('');
			}
			else {
				$('#re_pwd_msg').removeClass().addClass('tMS02').text('(請輸入3~18個字元，不可使用符號)').show();
				re_pwd_flag = true;
			}
		}
	});

	// 檢查email欄位
	$('#email').blur(function() {
		if ($('#email').val() == '') {
			$('#email_msg').addClass('msg').text('請填寫電子郵件帳號。').show();
			email_flag = false;
		}
		else {
			//var emailReg = /^[\w\-\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z\.]{2,6}$/;
			var emailReg = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
			if (!emailReg.test($('#email').val())) {
				$('#email_msg').addClass('msg').text('格式有誤！請重新填寫。').show();
				email_flag = false;
			}
			else {
				$('#email_msg').hide();
				email_flag = true;
			}
		}
	});

	// 點擊submit送出表單
	$('form').submit(function() {
		$(':input').trigger('blur');

		// 年月日選取其中一欄，另二欄皆須選取
		if ($('#year').val() != '' && $('#month').val() != '' && $('#date').val() != '') {
			$('#dob_msg').hide();
			dob_flag = true;
		}
		else {
			$('#dob_msg').addClass('msg').text('請選擇您的生日。').show();
			dob_flag = false;
		}

		// 性別選取
		if ($(':radio:checked').val() == 'male') {
			gender_value = 'male';
			$('#gender_msg').hide();
			gender_flag = true;
		}
		else if ($(':radio:checked').val() == 'female') {
			gender_value = 'female';
			$('#gender_msg').hide();
			gender_flag = true;
		}
		else {
			$('#gender_msg').addClass('msg').text('請選擇您的性別。').show();
			gender_flag = false;
		}

		// 檢查identify欄位
		if ($('#identity').val() == '') {
			$('#identity_msg').addClass('msg').text('請選擇登入身份。').show();
			identity_flag = false;
		}
		else {
			$('#identity_msg').hide();
			identity_flag = true;
		}



		// 20100901 追加 Policy勾選欄
    // 檢查有無勾選 Policy 同意條款
		if ($(':checkbox:eq(0)').attr('checked') == false) {
			$('#checkbox_msg0').addClass('msg').text('請勾選同意付款政策。').show();
			checkbox_flag0 = false;
		}
		else {
			$('#checkbox_msg0').hide();
			checkbox_flag0 = true;
		}



		// 檢查有無勾選使用者同意條款
		if ($(':checkbox:eq(1)').attr('checked') == false) {
			$('#checkbox_msg1').addClass('msg').text('請勾選同意使用者條款。').show();
			checkbox_flag1 = false;
		}
		else {
			$('#checkbox_msg1').hide();
			checkbox_flag1 = true;
		}

		return false;
	}).ajaxStop(function() {
		if (name_flag && account_flag && pwd_flag && re_pwd_flag && email_flag && dob_flag && gender_flag && identity_flag && checkbox_flag0 && checkbox_flag1) {
			$.ajaxSetup({ cache: false });
			$.post(
				'php/check_register.php',
				{'name': $('#name').val(), 'account': $('#account').val(), 'pwd': hex_sha1($('#pwd').val()), 're_pwd': hex_sha1($('#re_pwd').val()), 'email': $('#email').val(), 'year': $('#year').val(), 'month': $('#month').val(), 'date': $('#date').val(), 'gender': gender_value, 'identity': $('#identity').val(), 'sb_program': sb_program, 'amazon_account': '', 'SNnumber': ''},
				function(data) {
					// PHP檢查account欄位
					/*if (data[0].account_check == 'ACCOUNT_ERROR') {
						$('#account_msg').addClass('msg').text('此帳號已被使用，請重新填寫。').show();
						account_flag = false;
					}
					else if (data[0].account_check == 'ACCOUNT_OK') {
						$('#account_msg').removeClass().addClass('tMS02').text('(請輸入3~12個字元，不可使用符號)').show();
						account_flag = true;
					}*/

					if (data[0].result == 'CHECK_OK') {
          	// 檢查有無勾選訂閱電子報
          	if ($('#epaper').attr('checked') == true) {
          		epaper_value = '1';
          	}
          	else {
          		epaper_value = '0';
            }

						$.ajax({
							url: 'php/insert_register.php',
							type: 'POST',
							cache: false,
							data: {'name': $('#name').val(), 'account': $('#account').val(), 'pwd': hex_sha1($('#pwd').val()), 'email': $('#email').val(), 'year': $('#year').val(), 'month': $('#month').val(), 'date': $('#date').val(), 'gender': gender_value, 'identity': $('#identity').val(), 'sb_program': sb_program, 'amazon_account': '', 'SNnumber': '', 'receive_epaper': epaper_value},
							success: function(data) {
								if (data == 'INSERT_OK') {
									$('.con_center:eq(0)').hide();
									$('.con_center:eq(1)').show();
								}
							}
						});
					}
				},
				'json'
			);
		}
	});

	$(':reset').click(function() {
		$('.msg').hide();
		$('#name_msg').removeClass().addClass('tMS02').text('(請輸入2~30個字元)').show();
		$('#account_msg').removeClass().addClass('tMS02').text('(請輸入3~12個字元，不可使用符號)').show();
		$('#pwd_msg').removeClass().addClass('tMS02').text('(請輸入3~18個字元，不可使用符號)').show();
		$('#re_pwd_msg').removeClass().addClass('tMS02').text('(請輸入3~18個字元，不可使用符號)').show();
	});

});

