String.prototype.ltrim = function() { return this.replace(/^\s+/, ''); };
String.prototype.rtrim = function() { return this.replace(/\s+$/, ''); };
String.prototype.trim = function() { return this.ltrim().rtrim(); };


function init()
{
	// $('home-pane').innerHTML = $('menu').innerHTML;
	document.getElementById('home-pane').innerHTML = document.getElementById('menu').innerHTML;

	var url = 'login.php?'+ new Date().valueOf();
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
	statusstr = x.transport.responseText;
	isLogin = (statusstr == 'welcome');
	
	MM_preloadImages('img/b-1_over.gif','img/b-2_over.gif','img/b-3_over.gif','img/b-4_over.gif','img/b-5_over.gif','img/b-6_over.gif','img/b-7_over.gif','img/left_next.gif','img/right_next.gif','img/left_next_over.gif','img/right_next_over.gif', 'img/2008-07-23_201215.gif', 'img/product_right_bg.gif', 'img/cart-button02.gif');
	

	if ( m = document.location.href.match(/DestConfirm=([^&^#]+)&?/) )
	{
		DestConfirm = m[1];
	}

	if ( m = document.location.href.match(/load=([^&^#]+)&?/) )
	{
		switch ( m[1] )
		{
			case 'login_html' :
				load_html(isLogin?'login_ok.php':'login.html');
				break;
		
			case 'Festival_html' :
				load_html('Festival.php');
				break;

			case 'Festival_note_html' :
				newsid = url_field('newsid');
				load_html('Festival-note.php?newsid='+newsid);
				break;

			case 'maps_html' :
				load_html('maps.php');
				break;

			case 'qa_html' :
				load_html('qa.php');
				break;

			case 'guestbook_php' :
				load_html('guestbook.php');
				break;

			case 'member_add_html' :
				load_html('member_add.html');
				break;

			case 'forget_password_html' :
				load_html('forget_password.html');
				break;

			case 'product' :
				s2menuid = url_field('s2menuid');
				loadProduct(s2menuid);
				break;

			default :
				// alert(m);
				break;
		}
	}

	window.setTimeout('fnToggle();', 1000);
	window.setTimeout('preload_ProductImg();', 2000);
}

function url_field(field)
{
	if ( m = document.location.href.match(new RegExp('[?&]'+field+'=([^&#]*)')) )
	{
		return m[1];
	}
	return false;
}

/*
var isMSIE6 = navigator.userAgent.match('MSIE 6');
function  org_secBoard(n)
{
	for(i=0;i<secTable.cells.length;i++)
	secTable.cells[i].className="sec1";
	secTable.cells[n].className="sec2";
	for(i=0;i<mainTable.tBodies.length;i++)
	mainTable.tBodies[i].style.display="none";
	mainTable.tBodies[n].style.display="block";
}
*/
function  secBoard(n)
{
	secTableObj = $('secTable');
	mainTableObj = $('mainTable');
	for(i=0;i<secTableObj.rows[0].cells.length;i++) secTableObj.rows[0].cells[i].className='sec1';
	secTableObj.rows[0].cells[n].className = 'sec2';
	for(i=0;i<mainTableObj.tBodies.length;i++) mainTableObj.tBodies[i].style.display='none';
	mainTableObj.tBodies[n].style.display = 'block';
}


function loadMenu(mid)
{
	var obj = $('floatMenu');
	if ( typeof(mid) == 'undefined' )
		obj.innerHTML = $('menu').innerHTML;
	else
		obj.innerHTML = $('menu_'+mid).innerHTML;
	$('home-pane').innerHTML = '';
	moveXto ('home-pane', 'floatMenu', 218, 0 );
	return false;
}


function loadS3Menu(mid)
{
	return;
	/*
	url = 'SubMenu.php?mid=' + mid + '&' + new Date().valueOf();
	new Ajax.Updater('floatMenu', url, {method: 'get', asynchronous: false} );
	$('home-pane').innerHTML = '';
	moveXto ('home-pane', 'floatMenu', 218, 0 );
	return false;
	*/
	var obj = $('floatMenu');
	if ( typeof(mid) == 'undefined' )
		obj.innerHTML = $('menu').innerHTML;
	else
		obj.innerHTML = $('s3menu_'+mid).innerHTML;
	$('home-pane').innerHTML = '';
	moveXto ('home-pane', 'floatMenu', 218, 0 );
	return false;

}


function loadS4Menu(mid)
{
	var obj = $('floatMenu');
	if ( typeof(mid) == 'undefined' )
		obj.innerHTML = $('menu').innerHTML;
	else
		obj.innerHTML = $('s4menu_'+mid).innerHTML;
	$('home-pane').innerHTML = '';
	moveXto ('home-pane', 'floatMenu', 218, 0 );
	return false;

}



function loadProduct( s2menuid )
{
	i_ProductImg = 0;
	ProdImg_s2menuid = s2menuid;
	if ( ToggleThread ) window.clearTimeout(ToggleThread);
	// $('floatProdcut').innerHTML = $('ProductInfo').innerHTML;
	var url = './Product.php?s2menuid=' + s2menuid + '&'+ new Date().valueOf();
	new Ajax.Updater('ProductInfo', url, {method: 'get', asynchronous: false} );
	// moveXto ('floatProdcut', 'ProductInfo', -635, 0 )
	// loadMenu();
	ret_url = url;
	return false;
}



function loadSubProduct( s4menuid )
{
	i_ProductImg = 0;
	// ProdImg_s2menuid = s2menuid;
	if ( ToggleThread ) window.clearTimeout(ToggleThread);
	// $('floatProdcut').innerHTML = $('ProductInfo').innerHTML;
	var url = './Product.php?s4menuid=' + s4menuid + '&'+ new Date().valueOf();
	new Ajax.Updater('ProductInfo', url, {method: 'get', asynchronous: false} );
	// moveXto ('floatProdcut', 'ProductInfo', -635, 0 )
	// loadMenu();
	ret_url = url;
	return false;
}

var moveXtoStack = new Object();
function moveXto ( did, mid, fx, x )
{
	var obj = $(mid);
	if ( typeof(x) == 'undefined' )
	{
		x = moveXtoStack[mid];
	}
	else 
	{
		moveXtoStack[mid] = x;
	}

	nx = parseInt(obj.offsetLeft);
	if ( nx == x ) 
	{
		d_obj = $(did);
		d_obj.innerHTML = obj.innerHTML;
		obj.style.left = fx;
		obj.innerHTML = '';
		return;
	}
	d = Math.floor((x - nx) / 3);
	dx = d ? nx + d : x;
	obj.style.left = dx;
	window.setTimeout("moveXto('" + did + "','" + mid + "'," + fx + ");", 50);
}


var DestConfirm = null;
var s2id, s4id, obj_update_shopping_cart;

function setDestConfirm(str)
{
	jQuery('#DestConfirmLayer').hide();
	jQuery('#ReadOnlyLayer').hide();
	DestConfirm = str;
	if ( !isLogin )
	{
		load_html('login.html');
		return;
	}

/*
1	台灣
2	中國
3	日本
*/
	var area_id;
	switch ( str )
	{
		case '台灣' :
			area_id = 1;
			break;
		default :
		case '大陸' :
			area_id = 17; // 17 預設香港 // 2
			break;
		case '日本' :
			area_id = 3;
			break;
	}
	new Ajax.Request('cart.php?AREAID='+area_id, {method: 'get', asynchronous: false});

	if ( is_internal )
	{
		if ( DestConfirm != '台灣' )
		{
			var x = new Ajax.Request('convProd.php?internal='+is_internal+'&s2menuid='+s2id, {method: 'get', asynchronous: false} );
			s2id = x.transport.responseText.evalJSON();
			if ( s2id )
			{
				document.location.href = '?internal=0&DestConfirm='+encodeURIComponent(DestConfirm)+'&load=product&s2menuid='+ s2id;
			}
			else
			{
				document.location.href = '?internal=0&DestConfirm='+encodeURIComponent(DestConfirm);
			}
		}
		else
		{
			if ( obj_update_shopping_cart == null ) put2cart( s2id, s4id );
			else {
				update_shopping_cart ( obj_update_shopping_cart, s2id, 0, 0, s4id, false );
				update_shopping_cart_obj = null;
			}
		}
	}
	else
	{
		if ( DestConfirm == '台灣' )
		{
			var x = new Ajax.Request('convProd.php?internal='+is_internal+'&s2menuid='+s2id, {method: 'get', asynchronous: false} );
			s2id = x.transport.responseText.evalJSON();
			if ( s2id )
			{
				document.location.href = '?internal=1&DestConfirm='+encodeURIComponent(DestConfirm)+'&load=product&s2menuid='+ s2id;
			}
			else
			{
				document.location.href = '?internal=1&DestConfirm='+encodeURIComponent(DestConfirm);
			}
		}
		else
		{
			if ( obj_update_shopping_cart == null ) put2cart( s2id, s4id );
			else {
				update_shopping_cart ( obj_update_shopping_cart, s2id, 0, 0, s4id, false );
				update_shopping_cart_obj = null;
			}
		}
	}
}

function put2cart ( s2menuid, s4menuid )
{
	s2id = s2menuid;
	s4id = s4menuid;
	if ( DestConfirm == null )
	{
		jQuery('#ReadOnlyLayer').show();
		jQuery('#DestConfirmLayer').show('slow');
		return;
	}

	qty = 1;
	var url = "cart.php?o=put2cart&s2menuid=" + s2menuid + "&qty=" + qty + '&internal=' + is_internal;
	if ( ct )
	{
		url+= '&Country=' + encodeURIComponent(ct);
	}

	if ( se_State )
	{
		url+= '&State=' + encodeURIComponent(se_State)+ '&StateArea=' + encodeURIComponent(se_StateArea);
	}
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );

	if ( x.transport.getResponseHeader('Content-Type').match('html') )
	{
		container = $('ProductInfo').offsetLeft == 0 ? 'ProductInfo' : 'floatProdcut';
		$(container).innerHTML = x.transport.responseText; // ProductInfo
	}
	else
	{
		
	}

}


function deleteCart ( s2menuid )
{
	var url = "cart.php?o=delete&s2menuid=" + s2menuid + '&internal=' + is_internal;
	if ( ct )
	{
		url+= '&Country=' + encodeURIComponent(ct);
	}

	if ( se_State )
	{
		url+= '&State=' + encodeURIComponent(se_State)+ '&StateArea=' + encodeURIComponent(se_StateArea);
	}
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );

	if ( x.transport.getResponseHeader('Content-Type').match('html') )
	{
		container = $('ProductInfo').offsetLeft == 0 ? 'ProductInfo' : 'floatProdcut';
		$(container).innerHTML = x.transport.responseText; // ProductInfo
	}
	else
	{
		
	}

}


function list_cart (  )
{
	var url = "cart.php?internal=" + is_internal;
	if ( ct )
	{
		url+= '&Country=' + encodeURIComponent(ct);
	}

	if ( se_State )
	{
		url+= '&State=' + encodeURIComponent(se_State)+ '&StateArea=' + encodeURIComponent(se_StateArea);
	}

	url+= '&' + new Date().valueOf();
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );

	if ( x.transport.getResponseHeader('Content-Type').match('html') )
	{
		container = $('ProductInfo').offsetLeft == 0 ? 'ProductInfo' : 'floatProdcut';
		$(container).innerHTML = x.transport.responseText; // ProductInfo
	}
	else
	{
		
	}

}


function update_shopping_cart ( obj, s2menuid, ismulti, s3menuid, s4menuid, reflash )
{
	if ( DestConfirm == null )
	{
		s2id = s2menuid;
		s4id = s4menuid;
		obj_update_shopping_cart = obj;
		jQuery('#ReadOnlyLayer').show();
		jQuery('#DestConfirmLayer').show('slow');
		return;
	}

	if ( typeof(reflash) == 'undefined' )
	{
		reflash = true;
	}

	var o = $('Country');
	if ( o == null ) // 國內
	{
		ct = '台灣';
		var State_str = '';
		var StateArea_str = '';
	}
	else
	{
		ct = o.options[o.selectedIndex].text;
		o = $('State');
		var State_str = o.options[o.selectedIndex].text;
		var StateArea_str = o.options[o.selectedIndex].value;
	}

	qty = obj.type=='text' ? obj.value : obj.options[obj.selectedIndex].text;
	var url = "cart.php?o=update&s2menuid=" + s2menuid + "&qty=" + qty 
			+ '&ismulti=' + ismulti + '&s4menuid=' + s4menuid + '&internal=' + is_internal
			+ "&Country=" + encodeURIComponent(ct)
			+ '&State=' +encodeURIComponent(State_str) + '&StateArea=' + encodeURIComponent(StateArea_str);
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );

	if ( reflash && x.transport.getResponseHeader('Content-Type').match('html') )
	{
		container = $('ProductInfo').offsetLeft == 0 ? 'ProductInfo' : 'floatProdcut';
		$(container).innerHTML = x.transport.responseText; // ProductInfo
		check_cart_picknum();
	}
	/*
	if ( !reflash ) 
	{
		new Ajax.Request('cart.php', {method: 'get', asynchronous: false} );
	}
	*/
}

function check_cart_picknum()
{
	var url = "cart.php?o=check_cart_picknum&internal=" + is_internal + '&' + new Date().valueOf();
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
	data = x.transport.responseText.evalJSON();
	/*
	cf = document.cert;
	for ( i in cf )
	{
		if ( m = cf[i].name.match(/^qty([0-9]+)_([0-9]+)/) )
		{
		}
	}
	*/
}


var order_skip_day;
function checkout()
{
	if ( busy ) return false;
	busy = true;

	var q = 0;

	if ( typeof(document.cartlist)!='undefined' && document.cartlist.item_num.value <= 0 )
	{
		alert('您沒有選購任何商品!');
		busy = false;
		return false;
	}
	
	var url = "cart.php?o=check_cart_picknum&" + new Date().valueOf() + '&internal=' + is_internal;
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
	data = x.transport.responseText.evalJSON();

	if ( data.length )
	{
		// alert
		var msg = '';
		for ( var i=0 ; i<data.length ; ++i )
		{
			msg+= data[i][1] + ' ' + data[i][3] + ' 可選' + data[i][5] + '件，已選' + data[i][4] + "件\n";
		}
		alert(msg);
		busy = false;
		return false;
	}

	var url = "cart.php?o=pick_shopping_cart_to_order&" + new Date().valueOf() + '&internal=' + is_internal;
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
	flag = parseInt(x.transport.responseText);
	// console.log(flag);
	if ( flag )
	{
		load_html('checkout.php');
	}
	checkout_thesame_reciver();

	var url = 'checkout.php?o=order_skip_day';
	var w;
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
	order_skip_day = x.transport.responseText.evalJSON();
	order_skip_day[2]={};
	if ( is_internal )
	{
		for ( var i=0 ; i<order_skip_day[0].length ; ++i)
		{
			w = (order_skip_day[0][i]+1)%7;
			order_skip_day[2][w] = order_skip_day[1][order_skip_day[0][i]];
			order_skip_day[0][i] = w;
		}
	}
	else
	{
		// 國際
	}
	busy = false;
	return false;
}

function load_html ( file )
{
	var o = $('CalendarSelectorLayer_cd');
	if ( o != null ) cs.CSL.style.display = 'none';

	if ( file.indexOf('?') != -1 ) file+= '&' + new Date().valueOf();
	else file+= '?' + new Date().valueOf();

	//container = $('ProductInfo').offsetLeft == 0 ? 'ProductInfo' : 'floatProdcut';
	container = 'ProductInfo';
	var x = new Ajax.Updater(container, file, {method: 'get', asynchronous: false} );
	return false;
}

var ret_url = './?';

var isLogin = false;
function login (  )
{
	var postbody = '';
	var err = '';
	with ( document.member )
	{
		if ( account.value.trim() == '' )
		{
			err+= " 請輸入 帳號\n";
		}
		if ( password.value.trim() == '' )
		{
			err+= " 請輸入 密碼\n";
		}

		if ( err )
		{
			alert("資料輸入不完整\n" + err);
			return false;
		}

		postbody+= 'account=' + encodeURIComponent(account.value.trim());
		postbody+= '&password=' + encodeURIComponent(password.value.trim());

	}

	var url = 'login.php';
	var x = new Ajax.Request(url, {method: 'post', asynchronous: false, postBody: postbody} );
	statusstr = x.transport.responseText;
	switch ( statusstr )
	{
		case 'welcome' :
			load_html('login_ok.php');
			isLogin = true;
			break;
		case 'unknowUser' :
			alert('查無此帳號!');
			break;
		default:
		case 'faild' :
			alert('密碼輸入錯誤!');
			break;
	
	}
}

function logout (  )
{
	isLogin = false;
	var url = 'login.php?logout';
	var x = new Ajax.Request(url, {method: 'get'} );
	load_html('login.html');
}


function join_member (  )
{
	var postbody = '';
	var err = '';
	with ( document.member )
	{
		/*
		if ( email.value.trim() != '' && !email.value.match(/^[^\s]+@[^\s]+\.[^\s]+$/) )
		{
			err+= " 請輸入 E-mail\n";
		}
		*/
		if ( password.value.trim() == '' )
		{
			err+= " 請輸入 密碼\n";
		}
		else
		{
			if ( password.value.length < 5 )
			{
				err+= " 密碼太短\n";
			}
			if ( password.value != password2.value )
			{
				err+= " 兩次 密碼 輸入不一致\n";
			}
		}
		if ( name.value.trim() == '' )
		{
			err+= " 請輸入 姓名\n";
		}
		if ( birthday.value.trim() == '' )
		{
			err+= " 請輸入 生日\n";
		}
		if ( (sex[0].checked | sex[1].checked) == false )
		{
			err+= " 請選擇 性別\n";
		}
		if ( tel.value.trim() == '' )
		{
			err+= " 請輸入 連絡電話\n";
		}
		if ( mobile.value.trim() == '' )
		{
			err+= " 請輸入 行動電話\n";
		}
		if ( address.value.trim() == '' )
		{
			err+= " 請輸入 住址\n";
		}

		if ( err )
		{
			alert("資料輸入不完整\n" + err);
			return;
		}

		postbody+= 'email=' + encodeURIComponent(email.value.trim());
		postbody+= '&password=' + encodeURIComponent(password.value.trim());
		postbody+= '&name=' + encodeURIComponent(name.value.trim());
		postbody+= '&birthday=' + encodeURIComponent(birthday.value.trim());
		postbody+= '&sex=' + (sex[0].checked ? sex[0].value : sex[1].value);
		postbody+= '&tel=' + encodeURIComponent(tel.value.trim());
		postbody+= '&mobile=' + encodeURIComponent(mobile.value.trim());
		postbody+= '&state=' + encodeURIComponent(state.value);
		postbody+= '&zipzone=' + encodeURIComponent(zipzone.value);
		postbody+= '&county=' + encodeURIComponent(county.value);
		postbody+= '&village=' + encodeURIComponent(village.value);
		postbody+= '&address=' + encodeURIComponent(address.value.trim());
		postbody+= '&is_epaper=' + (is_epaper.checked ? is_epaper[0].value : is_epaper[1].value);

	}

	var url = 'join_member.php';
	var x = new Ajax.Request(url, {method: 'post', asynchronous: false, postBody: postbody} );
	statusstr = x.transport.responseText;
	if ( statusstr.match('welcome') )
	{
		load_html('member_add_ok.html');
	}
	else if ( statusstr.match('email exists') )
	{
		alert('E-mail 已存在系統內');
	}
	else
	{
		window.status = statusstr;
		alert('失敗!');
	}
}


function join_member_parseAddress()
{
	with ( document.member )
	{
		if ( /*zipzone.value == '' &&*/ typeof(ZIP3) != 'undefined' )
		{
			var addr = county.value;
			addr+= village.value;
			addr+= address.value;

			var zip3 = new ZIP3();
			var zip = zip3.parseAddress(addr);
			if ( zip != false )
			{
				zipzone.value = zip
			}
		}
	}
}


function forget_password (  )
{
	var url = 'forget_password.php';
	var email = $('forget_password_email').value.trim();
	var postbody = 'email=' + encodeURIComponent(email);
	var x = new Ajax.Request(url, {method: 'post', asynchronous: false, postBody: postbody} );
	statustr = x.transport.responseText;
	if ( statustr == 'reset' )
	{
		load_html('forget_password_ok.html');
		$('forget_password_email_span').innerHTML = email;
	}
	else
	{
		alert('查無此帳號!');
	}
	return false;
}

var ProductImg;
var i_ProductImg;
var ProdImg_s2menuid;
function scroll_ProdImg(d, s2menuid)
{
	if ( s2menuid.length )
	{
		ProdImg_s2menuid = s2menuid;
	}

	try
	{
		var img = ProductImgs[ProdImg_s2menuid];
		ary_len = img.length - 1;
		if ( ary_len > 0 )
		{
			i_ProductImg = Math.abs(i_ProductImg + d) % ary_len;
			ProductImg.src = img[i_ProductImg+1];
		}
	}
	catch ( e )
	{
	}

}


var ProductImgs;
function preload_ProductImg()
{
	var url = './Product.php?ProdImg&'+ new Date().valueOf();
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
	ProductImgs = x.transport.responseText.evalJSON();

	var imgsrc, k = 0;
	var pl_img = new Image;
	var len = 0;
	for ( i in ProductImgs )
	{
		var imgsi = ProductImgs[i];
		// len = imgsi.length >> 1;
		// ++len;
		for ( j=1 ; j<imgsi.length ; ++j )
		{
			imgsrc = '../Upload/' + imgsi[0] + '/' + imgsi[j];
			imgsi[j] = imgsrc;
			// pl_img.src = imgsrc;
			if ( j <= len )
			{
				new Image().src = imgsrc;
			}
		}
	}

}

var pleaseResetPassword = false;
function saveMemberInfo()
{
	var postbody = '';
	var err = '';
	with ( document.MemberInfo )
	{
		if ( email.value.trim() == '' )
		{
			err+= " 請輸入 E-mail\n";
		}

		if ( pleaseResetPassword || password.value.trim() != '' )
		{
			if ( pleaseResetPassword )
			{
				err+= " 請輸入密碼確認\n";
			}
			else if ( password.value.length < 5 )
			{
				err+= " 密碼太短\n";
				password2.value = '';
			}
			if ( password.value != password2.value )
			{
				err+= " 兩次 密碼 輸入不一致\n";
				password2.value = '';
			}
		}

		if ( username.value.trim() == '' )
		{
			err+= " 請輸入 姓名\n";
		}
		if ( birthday.value.trim() == '' )
		{
			err+= " 請輸入 生日\n";
		}
		if ( (sex[0].checked | sex[1].checked) == false )
		{
			err+= " 請選擇 性別\n";
		}
		if ( tel.value.trim() == '' )
		{
			err+= " 請輸入 連絡電話\n";
		}
		if ( mobile.value.trim() == '' )
		{
			err+= " 請輸入 行動電話\n";
		}
		if ( address.value.trim() == '' )
		{
			err+= " 請輸入 住址\n";
		}

		if ( err )
		{
			alert("資料輸入不完整\n" + err);
			return false;
		}
		postbody+= 'name=' + encodeURIComponent(username.value);
		postbody+= '&sex=' + (sex[0].checked ? sex[0].value : sex[1].value);
		postbody+= '&birthday=' + encodeURIComponent(birthday.value);
		postbody+= '&email=' + encodeURIComponent(email.value);
		postbody+= '&state=' + encodeURIComponent(state.value);
		postbody+= '&zipzone=' + encodeURIComponent(zipzone.value);
		postbody+= '&county=' + encodeURIComponent(county.value);
		postbody+= '&village=' + encodeURIComponent(village.value);
		postbody+= '&address=' + encodeURIComponent(address.value);
		postbody+= '&tel=' + encodeURIComponent(tel.value);
		postbody+= '&mobile=' + encodeURIComponent(mobile.value);
		if ( password2.value )
		{
			postbody+= '&password=' + encodeURIComponent(password2.value);
		}
		if ( !user_id.readOnly )
		{
			postbody+= '&user_id=' + encodeURIComponent(user_id.value);
			user_id.readOnly = true;
		}
	}
	var url = 'login_ok.php?o=updateMemberInfo';
	var x = new Ajax.Request(url, {method: 'post', asynchronous: false, postBody: postbody} );
	statusstr = x.transport.responseText;
	if ( statusstr.match('OK') )
	{
		alert('儲存成功!');
		pleaseResetPassword = false;
	}
	else if ( statusstr.match('email exists') )
	{
		alert('失敗! E-mail 已存在系統內');
	}
	else if ( statusstr.match('user_id exists') )
	{
		document.MemberInfo.user_id.readOnly = false;
		alert('失敗! 帳號 已存在系統內');
	}
	else
	{
		window.status = statusstr;
		alert('失敗!');
	}
}


function callback_shopping_cart()
{
	return list_cart();
}


function checkout_store(obj)
{
	if ( obj.checked )
	{
		var cf = document.checkout_form;
		for ( var i = 0 ; i < cf.store.length ; ++i )
		{
			if ( cf.store[i] != obj )
			{
				cf.store[i].checked = false;
			}
		}
		cf.arrive_time[0].checked = false; 
		cf.arrive_time[1].checked = false; 
	}
}



function checkout_arrive_time(obj)
{
	if ( obj.checked )
	{
		var cf = document.checkout_form;
		for ( var i = 0 ; i < cf.store.length ; ++i )
		{
			cf.store[i].checked = false;
		}
	}
}


function checkout_thesame_reciver(sel)
{
	with ( document.checkout_form )
	{
		switch ( sel )
		{
			case '1' :
				invoice_not_theSame.value = '1';
				company_no.value = '';
				invoice_reciver.value = '';
				invoice_address.value = '';
				invoice_postcode.value = '';
				company_no.disabled = true;
				invoice_reciver.disabled = true;
				invoice_address.disabled = true;
				invoice_postcode.disabled = true;
				break;
			default:
			case '2' :
				invoice_not_theSame.value = '2';
				invoice_reciver.value = '';
				invoice_address.value = '';
				invoice_postcode.value = '';
	
				company_no.disabled = false;
				invoice_reciver.disabled = true;
				invoice_address.disabled = true;
				invoice_postcode.disabled = true;
				break;
			case '3' :
				invoice_not_theSame.value = '3';
				invoice_reciver.value = '';
				invoice_address.value = '';
				invoice_postcode.value = '';
				company_no.disabled = false;
				invoice_reciver.disabled = false;
				invoice_address.disabled = false;
				invoice_postcode.disabled = false;
				break;
		
		}
//		if ( the_same_reciver.checked ) // 另寄如下
//		{
//			invoice_reciver.disabled = false;
//			invoice_address.disabled = false;
//			invoice_postcode.disabled = false;
//		}
//		else // 同收貨地址
//		{
//			/*
//			invoice_reciver.value = reciver.value;
//			invoice_address.value = address.value;
//			invoice_postcode.value = postcode.value;
//			*/
//			invoice_reciver.value = '';
//			invoice_address.value = '';
//			invoice_postcode.value = '';
//
//			invoice_reciver.disabled = true;
//			invoice_address.disabled = true;
//			invoice_postcode.disabled = true;
//		}
	}
}


function checkout_not_thesame_reciver()
{
	document.checkout_form.the_same_reciver.checked = false;
}

var money_amount;
// var checkoutForm;
function checkout_paymethod()
{
	// reciver', 'address', 'tel', 'invoice_reciver', 'invoice_address', 'company_no', 'carryDate', 'store', 'arrive_time', 'memo', 'card_content
	var postbody;
	with ( document.checkout_form )
	{

		var err = '';
		if ( reciver.value.strip() == '' )
		{
			err+= "收件人 未輸入!\n";
		}
		if ( tel.value.strip() == '' )
		{
			err+= "電話 未輸入!\n";
		}
		if ( address.value.strip() == '' )
		{
			err+= "手機號碼 未輸入!\n";
		}
		if ( arrival_date.value.strip() == '' )
		{
			err+= "送達日期 未輸入!\n";
		}
		if ( postcode.value.strip() == '' )
		{
			err+= "郵遞區號 未輸入!\n";
		}
		if ( invoice_not_theSame.value=='3' )
		{
			if ( invoice_reciver.value.trim() == '' ) // invoice_name
			{
				err+= "發票收件人 未輸入\n";
			}
			if ( invoice_postcode.value.trim() == '' )
			{
				err+= "發票郵遞區號 未輸入\n";
			}
			if ( invoice_address.value.trim() == '' )
			{
				err+= "發票寄送地址 未輸入\n";
			}
		}

		var carry = false;
		for ( var i=0 ; i <arrive_time.length ; ++i )
		{
			if ( arrive_time[i].checked )
			{
				carry = true;
				break;
			}
		}
		if ( ! carry )
		{
			for ( var i=0 ; i <store.length ; ++i )
			{
				if ( store[i].checked )
				{
					carry = true;
					break;
				}
			}
		}

		if ( is_internal && !carry )
		{
			err+= "取貨方式 未選擇\n";
		}
		
		
		if ( err )
		{
			alert(err);
			return;
		}


		postbody = 'reciver=' + encodeURIComponent(reciver.value);
		postbody+= '&appellation=' + encodeURIComponent(appellation[0].checked?appellation[0].value:appellation[1].value);
		postbody+= '&tel=' + encodeURIComponent(tel.value);
		postbody+= '&mobile=' + encodeURIComponent(mobile.value);
		postbody+= '&address=' + encodeURIComponent(address.value);
		postbody+= '&invoice_reciver=' + encodeURIComponent(invoice_reciver.value);
		postbody+= '&invoice_postcode=' + encodeURIComponent(invoice_postcode.value);
		postbody+= '&invoice_address=' + encodeURIComponent(invoice_address.value);
		postbody+= '&invoice_type=' + encodeURIComponent(the_same_reciver.value);
		postbody+= '&company_no=' + encodeURIComponent(company_no.value);
		postbody+= '&arrival_date=' + encodeURIComponent(arrival_date.value);
		postbody+= '&postcode=' + encodeURIComponent(postcode.value);

		var storeid = 0;
		for ( var i=0 ; i < store.length ; ++i )
		{
			if ( store[i].checked )
			{
				storeid = store[i].value;
				postbody+= '&store=' + encodeURIComponent(storeid);
				break;
			}
		}

		var art_str = '';
		if ( arrive_time[0].checked ) art_str+= arrive_time[0].value + ' ';
		if ( arrive_time[1].checked ) art_str+= arrive_time[1].value + ' ';
		postbody+= '&arrive_time=' + encodeURIComponent(art_str);

		postbody+= '&memo=' + encodeURIComponent(memo.value);
		try
		{
			postbody+= '&card_content=' + encodeURIComponent(card_content.value);
		}
		catch ( e ) { }
	}

	var url = 'checkout.php?o=checkout&' + new Date().valueOf();
	var x = new Ajax.Request(url, {method: 'post', asynchronous: false, postBody: postbody} );
	statusstr = x.transport.responseText;
	if ( statusstr.match(/^[1-9]/) )
	{
		/*
		if ( storeid ) // 有選取貨門市
		{
			postbody = 'pay_method=5'; // 自取
			var url = 'checkout.php?o=pay_method';
			var x = new Ajax.Request(url, {method: 'post', asynchronous: false, postBody: postbody} );
			//statusstr = x.transport.responseText;
			load_html('order_check.php');
		}
		else 
		{	
			return load_html('catch.php');
		}
		*/
		return load_html('catch.php');
	}
	else
	{
		alert('儲存失敗！請稍候再試！');
	}
	return false;
}


function check_card_content_length ( obj )
{
	if ( obj.value.length > 50 )
	{
		alert('彌月卡片內容 字數限50字');
		obj.value = obj.value.substr(0,50);
	}
}


function update_pay_method()
{
	var flag = 0;
	with ( document.pay_method_form )
	{
		var i = pay_method.length;
		if ( typeof ( i ) == 'undefined' )
		{
			if ( pay_method.checked )
			{
				flag = pay_method.value;
			}
		}
		else
		{
			while ( i-- )
			{
				if ( pay_method[i].checked )
				{
					flag = pay_method[i].value;
					break;
				}
			}
		}
	}
	
	if ( flag == 0 )
	{
		alert('請選擇付款方式!');
		return;
	}
	postbody = 'pay_method=' + flag;
	var url = 'checkout.php?o=pay_method';
	var x = new Ajax.Request(url, {method: 'post', asynchronous: false, postBody: postbody} );
	statusstr = x.transport.responseText;
	if ( statusstr.match(/^0/) )
	{
		alert('儲存失敗！請稍候再試！');
		return false;
	}

	load_html('order_check.php');

	return false;
}

var busy = false;
function order_confirm(pay_method)
{
	if ( busy ) return;
	busy = true;
	switch ( pay_method )
	{
		case 1 :
			load_html('ATM.php');
			break;

		case 3 : // Credit Card
			load_html('Credit.php');
			window.setTimeout("document.location.href = 'Credit.php?goEZPOS';", 1000);
			break;

		case 4 :
			load_html('COD.php');
			break;

		case 5 :
			document.location.href = '.';
			alert('感謝您的訂購!');
			break;

	}
	busy = false;
	return false;
}


function digital(num, len)
{
	num = num.toString();
	while ( num.length < len )
	{
		num = '0' + num;
	}
	return num;
}


function datestr(time)
{
	if ( typeof(time) == 'undefined' )
	{
		time = new Date();
	}

	var year = time.getYear();
	if ( year < 1970 )
	{
		year += 1900;
	}
	var str = year + '-';
	str+= digital(time.getMonth() + 1, 2) + '-';
	str+= digital(time.getDate(), 2) + ' ';
	str+= digital(time.getHours(), 2) + ':';
	str+= digital(time.getMinutes(), 2) + ':';
	str+= digital(time.getSeconds(), 2);
	return str;
}


function gen_arrival_limit_date()
{
	var limit = new Date();

	if ( limit.getHours() >= 18 )
	{
		limit.setDate(limit.getDate()+1);
	}

	
	var need_days;
	switch ( ct )
	{
		default :
		case 'Taiwan' :
		case '台灣' : need_days = 3; break;
		case 'Japan' : 
		case '日本' : need_days = 7; break;
		case 'China' : 
		case '中國' : need_days = 7; break;
	}

	limit.setDate(limit.getDate()+need_days);

	var loop;
	do
	{
		loop = false;
		w = limit.getDay();
		for ( var i=0 ; i<order_skip_day[0].length ; ++i )
		{
			if ( order_skip_day[0][i] == w )
			{
				limit.setDate(limit.getDate()+1);
				loop = true;
				break;
			}
		}
		
	}
	while ( loop );
	return limit;
}

var is_internal = 1;

if ( document.location.href.match(/internal=0/) )
{
	is_internal = 0;
}
else
{
	// DestConfirm = '台灣';
}

var week_day = ['日', '一', '二', '三', '四', '五', '六'];
function check_arrival_date ( o )
{
	var year = new Date().getYear();
	if ( year < 1970 )
	{
		year += 1900;
	}

	var limit = gen_arrival_limit_date();
	var str = datestr(limit).substr(0, 10);

	var uDate;
	if ( m = o.value.match(/([0-9]{4,4}).([0-9]{1,2}).([0-9]{1,2})/) )
	{
		uDate = new Date(m[1], m[2]-1, m[3]);
		o.value = datestr(uDate).substr(0, 10);
	}
	else 
	{
		alert('日期格式錯誤! 正確格式為 YYYY-MM-DD');
		o.value = str;
		return false;
	}

	if ( o.value < str )
	{
		alert('最早配達日為 ' + str);
		o.value = str;
		return false;
	}

	w = uDate.getDay();
	for ( var i=0 ; i<order_skip_day[0].length ; ++i )
	{
		if ( order_skip_day[0][i] == w )
		{
			var pstr = '';
			var plist = order_skip_day[2][w];
			for (var i=0 ; i<plist.length ; ++i )
			{
				pstr+= plist[i][0] + "\n";
			}
			alert('下列商品' + o.value + "預定額滿，請選擇其他配達日期\n\n" + pstr);
			o.value = str;
			return false;
		}
	}

	return true;
}


function fixNaN ( v )
{
	v = parseInt(v);
	if ( isNaN(v) )
	{
		v = 0;
	}
	return v;
}

var friend_page = 0;
function loadFriends(page)
{
	if ( typeof(page) == 'undefined' ) page = friend_page;
	if ( $('MemberFriends').innerHTML.length < 10 )
	{
		$('MemberFriends').innerHTML = '讀取中...';
	}
	friend_page = page = fixNaN(page);
	url = 'MemberFriend.php?p=' + page + '&' + new Date().valueOf();
	var x = new Ajax.Updater('MemberFriends', url, {method: 'get'/*, asynchronous: false*/} );
}


function MemberFriend_parseAddress()
{
	with ( document.newMemFriend )
	{
		if ( /*zipzone.value == '' &&*/ typeof(ZIP3) != 'undefined' )
		{
			var addr = county.value;
			addr+= village.value;
			addr+= address.value;

			var zip3 = new ZIP3();
			var zip = zip3.parseAddress(addr);
			if ( zip != false )
			{
				zipzone.value = zip
			}
		}
	}
}


function newFriend()
{
	url = 'MemberFriend.php?o=new&p=' + friend_page + '&' + new Date().valueOf();
	// name zipzone county village address tel mobile birthday
	var postbody;
	with ( document.newMemFriend )
	{
		if ( f_name.value.length == 0 ) return;
		postbody = 'name=' + encodeURIComponent(f_name.value);
		postbody+= '&tel=' + encodeURIComponent(tel.value);
		postbody+= '&mobile=' + encodeURIComponent(mobile.value);
		postbody+= '&birthday=' + encodeURIComponent(birthday.value);
		postbody+= '&zipzone=' + encodeURIComponent(zipzone.value);
		postbody+= '&county=' + encodeURIComponent(county.value);
		postbody+= '&village=' + encodeURIComponent(village.value);
		postbody+= '&address=' + encodeURIComponent(address.value);
		postbody+= '&friend_no=' + encodeURIComponent(friend_no.value);
		postbody+= '&state=' + encodeURIComponent(state.value);
		friend_no.value = '';
		f_name.value = '';
		tel.value = '';
		mobile.value = '';
		birthday.value = '';
		zipzone.value = '';
		county.value = '';
		village.value = '';
		address.value = '';
		friend_no.value = '';
		state.value = '';
	}
	var x = new Ajax.Updater('MemberFriends', url, {method: 'post', asynchronous: false, postBody: postbody} );
}


function getFriend(friend_no)
{
	var url = 'MemberFriend.php?o=get&friend_no=' + friend_no;
	var x = new Ajax.Request( url, {method: 'get', asynchronous: false} );
	data = x.transport.responseText.evalJSON();
	with ( document.newMemFriend )
	{
		f_name.value = data.name;
		tel.value = data.tel;
		mobile.value = data.mobile;
		birthday.value = data.birthday;
		zipzone.value = data.zipzone;
		county.value = data.county;
		village.value = data.village;
		address.value = data.address;
		friend_no.value = data.friend_no;
		state.value = data.state;
	}
}


function del_Friend ( friend_no )
{
	if ( window.confirm('確定要刪除？') )
	{
		url = 'MemberFriend.php?o=del&p=' + friend_page + '&friend_no=' + friend_no + '&' + new Date().valueOf();
		var x = new Ajax.Updater('MemberFriends', url, {method: 'get', asynchronous: false} );
	}
}

var order_page = 0;
function loadMemberOrders(page)
{
	if ( typeof(page) == 'undefined' ) page = order_page;
	if ( $('MemberOrderList') == null ) load_html(isLogin?'login_ok.php':'login.html');
	if ( $('MemberOrderList').innerHTML.length < 10 )
	{
		$('MemberOrderList').innerHTML = '讀取中...';
	}
	friend_page = page = fixNaN(page);
	url = 'MemberOrder.php?p=' + page + '&' + new Date().valueOf();
	var x = new Ajax.Updater('MemberOrderList', url, {method: 'get'/*, asynchronous: false*/} );
}


function load_order_checklist ( OrderID )
{
	url = 'order_checklist.php?OrderID=' + OrderID + '&' + new Date().valueOf();
	var x = new Ajax.Updater('MemberOrders', url, {method: 'get'/*, asynchronous: false*/} );
}

function loadeCardArea(page)
{
	if ( typeof(page) == 'undefined' ) page = 0;
	if ( $('MemberOrderList').innerHTML.length < 10 )
	{
		$('MemberOrderList').innerHTML = '讀取中...';
	}
	friend_page = page = fixNaN(page);
	url = 'eCard.php?p=' + page + '&' + new Date().valueOf();
	var x = new Ajax.Updater('eCardArea', url, {method: 'get'/*, asynchronous: false*/} );
}

var cardID;
function new_eCard()
{
	var postbody;
	// var cardID = null;
	with ( document.eCard )
	{
		for (var i=0 ; i<card.length ; ++i )
		{
			if ( card[i].checked )
			{
				cardID = card[i].value;
				break;
			}
		}

		if ( cardID == null )
		{
			alert('請選擇一張卡片!');
			return;
		}
		postbody = 'card=' + encodeURIComponent(cardID);
		postbody+= '&sender_mail=' + encodeURIComponent(sender_mail.value);
		postbody+= '&sender_name=' + encodeURIComponent(sender_name.value);
		postbody+= '&receiver_mail=' + encodeURIComponent(receiver_mail.value);
		postbody+= '&receiver_name=' + encodeURIComponent(receiver_name.value);
		postbody+= '&content=' + encodeURIComponent(content.value);

		var x = new Ajax.Request('eCard.php?o=new', {method: 'post', asynchronous: false, postBody: postbody} );
		
		receiver_mail.value = '';
		receiver_name.value = '';
		alert('稍後將排程為您寄出電子卡片');
	}
}

var eCard_page = 0;
function load_eCard(page)
{
	if ( typeof(page) == 'undefined' ) page = eCard_page;
	if ( $('eCardArea').innerHTML.length < 10 )
	{
		$('eCardArea').innerHTML = '讀取中...';
	}
	url = 'eCard.php?p=' + page + '&' + new Date().valueOf();
	var x = new Ajax.Updater('eCardArea', url, {method: 'get'/*, asynchronous: false*/} );

}



var userFriend_data;
function listMemberFriend()
{
	var url = "checkout.php?o=listMemberFriend";
	var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
	userFriend_data = x.transport.responseText.evalJSON();

	var mt = $('FriendListTable');
	while ( mt.rows.length > 1 )
	{
		mt.deleteRow(mt.rows.length - 1);
	}

	var tr, td;
	// user_no name county tel mobile
	for (var i = 0 ; i < userFriend_data.length ; ++i )
	{
		tr = mt.insertRow(-1);
		tr.insertCell(-1).innerHTML = '<span onclick=load_uf2o('+i+'); style="cursor: pointer;">' + userFriend_data[i].name + '</span>';
		tr.insertCell(-1).innerHTML = userFriend_data[i].birthday;
		tr.insertCell(-1).innerHTML = userFriend_data[i].county;
		tr.insertCell(-1).innerHTML = userFriend_data[i].tel;
		tr.insertCell(-1).innerHTML = userFriend_data[i].mobile;
	}

	// $('MemberListDiv').style.diaply = 'block';
	jQuery('#FriendListDiv').show("slow");
}


function load_uf2o(friend_index)
{
	jQuery('#FriendListDiv').hide("slow");
	with ( document.checkout_form )
	{
		reciver.value = userFriend_data[friend_index].name;
		tel.value = userFriend_data[friend_index].tel;
		mobile.value = userFriend_data[friend_index].mobile;
		postcode.value = userFriend_data[friend_index].zipzone;
		address.value = userFriend_data[friend_index].county + userFriend_data[friend_index].village + userFriend_data[friend_index].address;
		appellation[userFriend_data[friend_index].sex].checked = true;
	}

	checkout_thesame_reciver();
}



var cs;
function checkout_initCalendar()
{
	var limit = gen_arrival_limit_date();
	limit_year = limit.getYear();
	if ( limit_year < 1970 )
	{
		limit_year += 1900;
	}

	if ( typeof(cs) == 'undefined' )
	{
		var ed_Date = new Date();
		ed_Date.setMonth(ed_Date.getMonth()+6);
		cs = new CalendarSelector('cs', datestr().substr(0,10), datestr(ed_Date).substr(0,10)); // , order_skip_day
		cs.CSL.style.position = 'absolute';
		cs.CSL.style.top = '270';
		cs.CSL.style.left = '410';
		cs.CSL.style.zIndex = 600;
		cs.CSL.style.backgroundColor = '#625642';
		// cs.CST.style.color = '#FFFFFF';
		cs.setYear(limit_year);
		cs.setMonth(limit.getMonth());
		cs.setDate(limit.getDate());
		cs.callback = checkout_Calendar_callback;
		cs.drow();
	}
	else
	{
		var ard = $('arrival_date').value;
		cs.setYear(ard.substr(0,4));
		cs.setMonth(ard.substr(5,2)-1);
		cs.setDate(ard.substr(8,2));
		cs.CSL.style.display = ( navigator.appName == 'Netscape' ) ? 'inherit' : 'inline';
	}
}

function checkout_Calendar_callback()
{
	$('arrival_date').value = cs.toString();
	check_arrival_date(document.checkout_form.arrival_date);
}


function clearSELECT(obj)
{
	var i = obj.options.length;
	while ( i-- ) obj.options[i] = null;
}

var ct;
function ship_area_country(o)
{
	ct = o.options[o.selectedIndex].text;

	if ( ct == '日本' )
	{
		is_internal = 0;
		/*
		var url = "cart.php?Country=" + encodeURIComponent(o.options[o.selectedIndex].text) + '&internal=0';
		var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
		if ( x.transport.getResponseHeader('Content-Type').match('html') )
		{
			container = $('ProductInfo').offsetLeft == 0 ? 'ProductInfo' : 'floatProdcut';
			$(container).innerHTML = x.transport.responseText; // ProductInfo
		}
		else
		{
			
		}
		return;
		*/
	}
	else if ( ct == '中國' )
	{
		is_internal = 0;
	}
	else if ( ct == '台灣' ) 
	{
		is_internal = 1;
	}

		var url = "cart.php?Country=" + encodeURIComponent(ct) + '&internal=' + is_internal;
		var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
		if ( x.transport.getResponseHeader('Content-Type').match('html') )
		{
			container = $('ProductInfo').offsetLeft == 0 ? 'ProductInfo' : 'floatProdcut';
			$(container).innerHTML = x.transport.responseText; // ProductInfo
			// if ( ct == '中國' ) $('State').selectedIndex = 1;
		}
		else
		{
			
		}

	/*
	clearSELECT($('Village'));
	clearSELECT($('County'));
	var url = 'cart.php?o=ship_area_country&Country=' + encodeURIComponent(ct) +  '&internal=' + is_internal;
	var x = new Ajax.Request( url, {method: 'get', asynchronous: false} );
	try
	{
		obj = $('State');
		clearSELECT(obj);

		var data = x.transport.responseText.evalJSON();
		if (data.length == 0 )
		{
			// 
			return;
		}

		obj.options[0] = new Option('','');
		var l = data.length;
		for (i=0; i<l; ++i )
		{
			obj.options[i+1] = new Option(data[i][0], data[i][1]);
		}
		
	}
	catch (e)
	{
	}
	*/
}


var se_State, se_StateArea;
function ship_area_state(o)
{
	clearSELECT($('Village'));
	var co = $('Country');
	ct = co.options[co.selectedIndex].text;

	if ( ct == '中國' && o.selectedIndex>0 )
	{
		se_State = o.options[o.selectedIndex].text;
		se_StateArea = o.options[o.selectedIndex].value;
		var url = "cart.php?Country=" + encodeURIComponent($('Country').value) + '&State=' +encodeURIComponent(se_State)+ '&StateArea=' + encodeURIComponent(se_StateArea) + '&internal=' + is_internal;
		var x = new Ajax.Request(url, {method: 'get', asynchronous: false} );
		if ( x.transport.getResponseHeader('Content-Type').match('html') )
		{
			container = $('ProductInfo').offsetLeft == 0 ? 'ProductInfo' : 'floatProdcut';
			$(container).innerHTML = x.transport.responseText; // ProductInfo
		}
		else
		{
		}
		return;
	}

	var url = 'cart.php?o=ship_area_state&Country=' + encodeURIComponent($('Country').value) + '&State=' +encodeURIComponent(o.options[o.selectedIndex].text)+ '&StateArea=' + encodeURIComponent(o.options[o.selectedIndex].value) + '&internal=' + is_internal;
	var x = new Ajax.Request( url, {method: 'get', asynchronous: false} );
	try
	{
		obj = $('County');
		clearSELECT(obj);

		var data = x.transport.responseText.evalJSON();
		if (data.length == 0 )
		{
			// 
			return;
		}

		obj.options[0] = new Option('','');
		var l = data.length;
		for (i=0; i<l; ++i )
		{
			obj.options[i+1] = new Option(data[i], data[i]);
		}
		
	}
	catch (e)
	{
	}

}


function ship_area_county(o)
{
	var url = 'cart.php?o=ship_area_county&Country=' + encodeURIComponent($('Country').value)
		+ '&State=' +encodeURIComponent($('State').options[$('State').selectedIndex].text)+ '&StateArea=' + encodeURIComponent($('State').options[$('State').selectedIndex].value)
		+ '&County=' + encodeURIComponent(o.value) + '&internal=' + is_internal;
	var x = new Ajax.Request( url, {method: 'get', asynchronous: false} );
	try
	{
		obj = $('Village');
		clearSELECT(obj);

		var data = x.transport.responseText.evalJSON();
		if (data.length == 0 )
		{
			// 
			return;
		}

		obj.options[0] = new Option('','');
		var l = data.length;
		for (i=0; i<l; ++i )
		{
			obj.options[i+1] = new Option(data[i], data[i]);
		}
		
	}
	catch (e)
	{
	}

}


function ship_area_village(o)
{
}



function changeAreaID(obj)
{
	var AreaID = obj.options[obj.selectedIndex].value;
	var url = 'cart.php?AREAID=' + encodeURIComponent(AreaID)
	var x = new Ajax.Request( url, {method: 'get', asynchronous: false} );
	container = $('ProductInfo').offsetLeft == 0 ? 'ProductInfo' : 'floatProdcut';
	$(container).innerHTML = x.transport.responseText; // ProductInfo

	if ( is_internal )
	{
		if ( AreaID != 1 ) // DestConfirm != '台灣'
		{
			document.location.href = '?internal=0';
		}
	}
	else
	{
		if ( AreaID == 1 ) // DestConfirm == '台灣'
		{
			document.location.href = '?internal=1&DestConfirm='+encodeURIComponent(DestConfirm);
		}
	}
}



jQuery.noConflict();

