$(document).ready(function () {
    // 登入API訊息傳送
	var form = document.forms.namedItem("logininfo");


	form.addEventListener('submit', function (ev) {
		var oOutput = document.getElementById("login-message"),
			oData = new FormData(form);
		var oReq = new XMLHttpRequest();
		oReq.open("POST", "/api/web/login.php", true);
		oReq.onload = function (oEvent) {
			var reData = JSON.parse(oEvent.currentTarget.responseText);
			oOutput.innerHTML = reData.message;
			if (oReq.status == 200 && reData.status == true) {
				if (reData.helloData) {
					localStorage.setItem('login', JSON.stringify(reData.helloData));
				}
				location.reload();
			}
		};
		oReq.send(oData);
		ev.preventDefault();
        
	}, false);

	const marquee = document.querySelector('.marquee ul');

	if(marquee != null){
		marquee.addEventListener('mouseenter', function() {
			marquee.style.animationPlayState = 'paused';
		});
	
		marquee.addEventListener('mouseleave', function() {
			marquee.style.animationPlayState = 'running';
		});
	
	}

	$('#session_select').on('change',function(){
		setCookie('session',$(this).val(),1);
		$current_url = window.location.href;
		window.location.href = $current_url.split('?')[0];
	});

	$('#district_select').on('change',function(){
		window.location.href = window.location.href.split('?')[0] + "?district=" + $(this).val();
	});

	$('#committee_select').on('change',function(){
		window.location.href = window.location.href.split('?')[0] + "?committee=" + $(this).val();
	});

});

// 取得全域路徑
var URL_PATH = urlpathREQUEST();

// 取得全域路徑
function urlpathREQUEST() {
	var urlpath;

	$.ajax({
		url: '/api/web/api_urlpath.php',
		data: { 'api_url_path': 1 },
		type: 'POST',
		async: false,
		dataType: 'JSON',
		success: function (json) {
			urlpath = json;
		},
		error: function (xhr) {
			console.log(xhr);
		}
	});

	return urlpath;
}

// 教育1999

function reset(){
	let fields = [
		$('input[name="user_name"]'),
        $('input[name="email"]'),
		$('input[name="user_phone"]'),
		$('input[name="title"]'),
		$('textarea[name="content"]'),
	];

	fields.forEach((element) => {
		element.val('');
	});

}

function sendEmail(){
	let fields = {
		"user_name" : $('input[name="user_name"]'),
        "email" : $('input[name="email"]'),
		"user_phone" : $('input[name="user_phone"]'),
		"title" : $('input[name="title"]'),
		"content" : $('textarea[name="content"]'),
	};

	let result = checkForm(fields);
	if(result){
		let post_data = {
			'action' : 'send_email',
			'data' : {
				'user_name' : $('input[name="user_name"]').val(),
				'email' : $('input[name="email"]').val(),
				"user_phone" : $('input[name="user_phone"]').val(),
				"title" : $('input[name="title"]').val(),
				"content" : $('textarea[name="content"]').val(),
			}
		};
		
		$.ajax({
			method: "POST",
			url: "parent_1999",
			data: post_data,
			success: function(response_data){
				response_data = JSON.parse(response_data);
	
				if(response_data.message == 'success'){
					alert('送件成功！');
					window.location.href = "/";

				}else{
					console.log(response_data.message);
				}
			}
		});
	}
}

function ads_redirect(item, url){
	if(url != ''){
		let ad_id = $(item).parent().find("input[name='ad_id']").val();

		let post_data = {
			'action' : 'ads_click',
			'ad_id' : ad_id
		};

		$.ajax({
			method: "POST",
			url: "api/web/api_ads_action",
			data: post_data,
			success: function(response_data){
				response_data = JSON.parse(response_data);
	
				if(response_data.success == 'success'){
					window.open(url, '_blank');
				}else{
					console.log(response_data.message);
				}
			}
		});
	}
}


function loginCancel() {
	$('#login-back').fadeOut();
}

function getCookie(cname) {
	let name = cname + "=";
	let decodedCookie = decodeURIComponent(document.cookie);
	let ca = decodedCookie.split(';');
	for(let i = 0; i <ca.length; i++) {
		let c = ca[i];
		while (c.charAt(0) == ' ') {
			c = c.substring(1);
		}
		if (c.indexOf(name) == 0) {
			return c.substring(name.length, c.length);
		}
	}
	return "";
}

function setCookie(cname, cvalue, exdays) {
	const d = new Date();
	d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
	let expires = "expires="+d.toUTCString();
	document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}

var err_msg = getCookie('err_msg');

if(err_msg != ''){
	alert(err_msg);
	setCookie('err_msg','',1);
}

// 檢查表單必填欄位函式
function checkForm(dataObj) {

	// 檢查商品內容資料
	var dataStatus;		// 商品內容狀態變數
	var dataUndone = 0;

	for (var key in dataObj) {
		// 判斷欄位值是否為空值
        // console.log(dataObj[key]);
		// console.log(dataObj[key].val());
		if (dataObj[key].val() == '') {
			// 尚未填寫的欄位變更背景色作提示
			dataObj[key].css({ 'background-color': '#F3AFAF' });
			// 計算尚未填寫的欄位數量
			dataUndone += 1;
		}else if(!formatCheck(key,dataObj[key].val())){
			dataObj[key].siblings(".err_msg").show();
			dataUndone += 1;
		}

		// 當未填寫欄位觸發輸入事件背景色恢復默認
		dataObj[key].keyup(function () {
			$(this).css({ 'background-color': '#FFFFFF' });
			$(this).siblings(".err_msg").hide();
		});
	}

	// 判斷 「尚未填寫的欄位」 數量 (等於0代表全部欄位已填寫)

	if (dataUndone == 0) {
		// 填寫完畢 狀態設置 true
		dataStatus = true;
	} else {
		// 未填寫完畢 狀態設置 false
		dataStatus = false;
	}

	// -----------------------------------------------------------------

	// 判斷檢查狀態並回傳 true 或者 false
	if (dataStatus) {
		return true;
	} else {
		return false;
	}

}

function formatCheck(key,value){
	let emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
	let phoneRegex = /^09\d{2}-\d{3}-\d{3}$/;
	if(key.indexOf('email') != -1){
		return emailRegex.test(value);
	}else if(key.indexOf('phone') != -1){
		return phoneRegex.test(value);
	}

	return true;
}

