﻿var strOriginalFormAction = '';

function doCTSearch() {
	var tmpVal = document.getElementById('txtCTSearch').value;
	if (tmpVal.length < 2) {
		alert('字數請輸入超過兩個字!');
		return false;
	}
	//obj.href = encodeURI('/TC/search_result.aspx?SS=' + tmpVal);
	document.location.href = encodeURI('/TC/search_result.aspx?SS=' + tmpVal);
	return true;
}

var http_request;
function XMLHTTP() {
	http_request = false;
	if (window.XMLHttpRequest) {  //Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) {  //IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) { }
		}
	}
}

function CheckEmail() {
	var objForm = document.forms[0];
	if (!isFilled(objForm.txtEmail))
		return warning(objForm.txtEmail, '請輸入Email！');
	if (!isEMail(objForm.txtEmail))
		return warning(objForm.txtEmail, '請輸入正確Email！');
	OrderEDM(objForm.txtEmail.value);
}

function OrderEDM(strEmail) {
	XMLHTTP();
	var strLC = GetLC();
	var strUrl = '/Common/CheckEmail.ashx';
	var strParam = 'E=' + strEmail + '&L=' + strLC;
	if (http_request) {
		http_request.open('POST', strUrl, true);
		http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		http_request.send(strParam);

		http_request.onreadystatechange = function() {
			if (http_request.readyState == 4 && http_request.status == 200) {
				var strResult = http_request.responseText;
				switch (strResult) {
					case 'Order':
						if (confirm('是否訂閱電子報？')) {
							ProcessEDM(strEmail, strLC);
						}
						break;
					case 'UnOrder':
						if (confirm('是否退訂電子報？')) {
							ProcessEDM(strEmail, strLC);
						}
						break;
					default:
						alert('系統忙碌中！請稍後再試！');
						break;
				}
			}
		}
	}
}

function ProcessEDM(strEmail, strLC) {
	XMLHTTP();	
	var strUrl = '/Common/ProcessEDM.ashx';
	var strParam = 'E=' + strEmail + '&L=' + strLC;
	if (http_request) {
		http_request.open('POST', strUrl, true);
		http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		http_request.send(strParam);

		http_request.onreadystatechange = function() {
		    if (http_request.readyState == 4 && http_request.status == 200) {
		        var strResult = http_request.responseText;
		        switch (strResult) {
		            case 'OrderOK':
		                alert('謝謝您訂閱雅筑電子報！ 我們將不定時提供最新的產品資訊與優惠活動，讓您輕鬆擁有美麗人生！');
		                document.getElementById('txtEmail').value = '';
		                break;
		            case 'UnOrderOK':
		                alert('您已成功取消電子報訂閱，謝謝！');
		                document.getElementById('txtEmail').value = '';
		                break;
		            default:
		                alert('系統忙碌中！請稍後再試！');
		                break;
		        }
		    }
		}
	}
}

function GetLC() {
	var strDomain = document.domain;
	var strLocation = document.location.toString();
	var strLC;

	String.prototype.ReplaceAll = function(strFind, strReplace) {
		raRegExp = new RegExp(strFind, "g");
		return this.replace(raRegExp, strReplace)
	}

	strLocation = strLocation.ReplaceAll('http://' + strDomain, '');
	LC = strLocation.substring(1, 3).toUpperCase();
	return LC;
}  	

function isEMail(elm) {
	elm.value = trim(elm.value);
	var strReg = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
	if (elm.value.search(strReg) == -1) {
		return false;
	} else {
		return true;
	}
}

function isFilled(elm) {
	elm.value = trim(elm.value);
	if (elm.value.length == 0 || elm.value == null) {
		return false;
	} else {
		return true;
	}
}

function trim(strValue) {
	strValue = strValue.replace(/^\s*/, '').replace(/\s*$/, '');
	return strValue;
}

function warning(objField, WarningString) {
	alert(WarningString);
	if (objField.type) {
		objField.focus();
	} else {
		objField[0].focus();
	}
	return false;
}		

