/*
  tools by Bobby Luo
  v0.1
*/
function HashMap()
{
    /** Map 大小 **/
    var size = 0;
    /** 對象 **/
    var entry = new Object();

    /** 存 **/
    this.put = function (key , value)
    {
        if(!this.containsKey(key))
        {
            size ++ ;
        }
        entry[key] = value;
    }

    /** 取 **/
    this.get = function (key)
    {
        return this.containsKey(key) ? entry[key] : null;
    }

    /** 删除 **/
    this.remove = function ( key )
    {
        if( this.containsKey(key) && ( delete entry[key] ) )
        {
            size --;
        }
    }

    /** 是否包含 Key **/
    this.containsKey = function ( key )
    {
        return (key in entry);
    }

    /** 是否包含 Value **/
    this.containsValue = function ( value )
    {
        for(var prop in entry)
        {
            if(entry[prop] == value)
            {
                return true;
            }
        }
        return false;
    }

    /** 所有 Value **/
    this.values = function ()
    {
        var values = new Array();
        for(var prop in entry)
        {
            values.push(entry[prop]);
        }
        return values;
    }

    /** 所有 Key **/
    this.keys = function ()
    {
        var keys = new Array();
        for(var prop in entry)
        {
            keys.push(prop);
        }
        return keys;
    }

    /** Map Size **/
    this.size = function ()
    {
        return size;
    }

    /* 清空 */
    this.clear = function ()
    {
        size = 0;
        entry = new Object();
    }
}


function reload() {
    window.location.reload();
}

function back(thhistory) {
    window.history.go(thhistory);
}

function redirect(thURL) {
    window.location.href=thURL;
}

function cashvalue_numbers_submit(piece) {

    var input_error = false;

    var hm = new HashMap();

    keepCashList();
    var countNum=0;
    var sunpiece=0;
    var cashs={};
    var doubleKey=false;
    var doubleKeyMessage="";
    for (var i = 0; i < cash.size(); i++) {
        var temp=cash.get(i);
        cashs[i]=temp;
        var cash_number=temp['ticket_number'];
        cash_number=trim(cash_number);
        if (hm.containsKey(cash_number)==false) {
            hm.put(cash_number, '');
        } else {
            doubleKeyMessage+=cash_number+"重覆\r\n";
            doubleKey=true;
        }
        if (cash_number!='') {
            if(temp['a']==true){
                sunpiece+=0.5;
            }
            if(temp['b']==true){
                sunpiece+=0.5;
            }
            countNum++;
        }
    }

    if (countNum==0) {
        alert ("請輸入住宿券編號！");
        return;
    }
    if (doubleKey) {
        alert ("住宿券編號重覆！\r\n"+doubleKeyMessage);
        return;
    }
    if (sunpiece<piece) {
        alert ("住宿券不足"+(piece-sunpiece)+"張！");
        return;
    }
    var obj={};
    obj['piece']=piece;
    obj['cash']=cashs;
    var element = document.getElementById('ticket');
    requestJSONXML('cash_ajax.php',obj,update_cashvalue,element);
}

function update_cashvalue(items, elements) {
    cash.removeAll();
    if (items['pass']==true) {
        for(var i=0;i<items['cash'].length;i++){
            cash.add(items['cash'][i]);
        }
        showCashList(true);
        document.PForm.action = 'cashvalue_sure.php';
        document.PForm.submit();
    } else {
        alert('票券已使用或錯誤！請重新輸入！');
        for (var i=0;i<items['cash'].length;i++) {
            cash.add(items['cash'][i]);
        }
        if (items['cash'].length==0) {
            var temp={};
            temp['ticket_number']='';
            temp['a']=false;
            temp['b']=false;
            temp['checkeda']=false;
            temp['checkedb']=false;
            cash.add(temp);
        }
        showCashList(true);
    }
}

function password_submit() {
    document.PForm.action = 'password_make.php';
    document.PForm.submit();
}

function calendar_submit() {
    document.PForm.action = 'calendar_make.php';
    document.PForm.submit();
}

function cancel_submit() {
    document.PForm.action = 'cancel_pop_make.php';
    document.PForm.submit();
}

function payment_submit() {
    document.PForm.action = 'hotel_payment_2.php';
    document.PForm.submit();
}

function customization_submit() {
    document.PForm.action = 'customization_make.php';
    document.PForm.submit();
}

function member_submit() {
    document.mainAddForm.action = 'member_data_make.php';
    document.mainAddForm.submit();
}

function b2binvite_new_submit() {
    document.PForm.action = 'member_b2binvite_new_make.php';
    document.PForm.submit();
}

function b2binvite_old_submit() {
    document.PForm2.action = 'member_b2binvite_old_make.php';
    document.PForm2.submit();
}

function register_enterprise_submit() {
    document.mainAddForm.action = 'register_enterprise_make.php';
    document.mainAddForm.submit();
}

function ticket_submit() {
    var radiobutton = document.getElementById("radiobutton");
    if (radiobutton.checked == true) {
        top.location.href='search_list_ticket.php';
    } else alert("請點選同意上述的使用聲明！");
}

function cashvalue_submit() {
    var radiobutton = document.getElementById("radiobutton");
    if (radiobutton.checked == true) {
        top.location.href='search_list_cashvalue.php';
    } else alert("請點選同意上述的使用聲明！");
}

function promotion_submit() {
    var radiobutton = document.getElementById("radiobutton");
    if (radiobutton.checked == true) {
        top.location.href='search_list_promotion.php';
    } else alert("請點選同意上述的使用聲明！");
}

function card_submit() {
    var radiobutton = document.getElementById("radiobutton");
    if (radiobutton.checked == true) {
        top.location.href='search_list_card.php';
    } else alert("請點選同意上述的使用聲明！");
}

function cashvalue_payment_submit() {
    var payment1 = document.getElementById("payment1");
    var payment2 = document.getElementById("payment2");
    if (payment1.checked == false && payment2.checked == false) {
        alert("請點選支付訂房保證金的付款方式！");
    } else {
        document.PForm.action = 'hotel_payment.php';
        document.PForm.submit();
    }
}

function coupon_payment_submit() {
    var payment1 = document.getElementById("payment1");
    var payment2 = document.getElementById("payment2");
    if (payment1.checked == false && payment2.checked == false && payment3.checked == false) {
        alert("請點選支付訂房保證金的付款方式！");
    } else {
        document.PForm.action = 'hotel_payment.php';
        document.PForm.submit();
    }
}

function trim(strvalue){
    return strvalue.replace(/^[\s\xA0]+/, "").replace(/[\s\xA0]+$/, "");
}

function coupon_numbers_submit(piece) {
    var input_error = false;
    var hm = new HashMap();
    keepTicketList();
    var countNum=0;
    var sunpiece=0;
    var tickets={};
    var doubleKey=false;
    var doubleKeyMessage="";
    for (var i = 0; i < ticket.size(); i++) {
        var temp=ticket.get(i);
        tickets[i]=temp;
        var ticket_number=temp['ticket_number'];
        ticket_number=trim(ticket_number);
        if (hm.containsKey(ticket_number)==false) {
            hm.put(ticket_number, '');
        } else {
            doubleKeyMessage+=ticket_number+"重覆\r\n";
            doubleKey=true;
        }

        if (ticket_number!='') {
            if(temp['a']==true){
                sunpiece+=0.5;
            }
            if(temp['b']==true){
                sunpiece+=0.5;
            }
            countNum++;
        }
    }
    if (countNum==0){
        alert ("請輸入住宿券編號！");
        return;
    }
    if(doubleKey){
        alert ("住宿券編號重覆！\r\n"+doubleKeyMessage);
        return;
    }
    if(sunpiece<piece){
        alert ("住宿券不足"+(piece-sunpiece)+"張！");
        return;
    }
    var obj={};
    obj['piece']=piece;
    obj['tickets']=tickets;
    var element = document.getElementById('ticket');
    requestJSONXML('coupon_ajax.php',obj,update_coupon,element);
}

function update_coupon(items, elements){
    ticket.removeAll();
    if (items['pass']==true) {
        for(var i=0;i<items['tickets'].length;i++){
            ticket.add(items['tickets'][i]);
        }
        showTicketList(true);
        document.PForm.action = 'coupon_sure.php';
        document.PForm.submit();
    } else {
        alert('票券已使用或錯誤！請重新輸入！');
        for(var i=0;i<items['tickets'].length;i++){
            ticket.add(items['tickets'][i]);
        }
        if(items['tickets'].length==0){
            var temp={};
            temp['ticket_number']='';
            temp['a']=false;
            temp['b']=false;
            temp['checkeda']=false;
            temp['checkedb']=false;
            ticket.add(temp);
        }
        showTicketList(true);
    }
}

function hiddenID(thID) {
    $("#"+thID).hide();
}

function showID(thID) {
    var options = {};
    if (!$("#"+thID).is(":visible")) $("#"+thID).show('blind',options,500);
}
function IEshowOrderID(thID) {

    var IEorderID = document.getElementById('order_'+thID);
    var IEorderinfoID = document.getElementById('orderinfo_'+thID);
    if (IEorderinfoID.style.display == 'none') {
        IEorderID.style.display ="none";
        IEorderinfoID.style.display ="block";
    } else if (IEorderID.style.display == 'none') {
        IEorderID.style.display ="block";
        IEorderinfoID.style.display ="none";
    }
}

function showOrderID(thID) {
    if (navigator.appName == 'Microsoft Internet Explorer') {
        var IEorderID = document.getElementById('order_'+thID);
        var IEorderinfoID = document.getElementById('orderinfo_'+thID);
        if (IEorderinfoID.style.display == 'none') {
            IEorderID.style.display ="none";
            IEorderinfoID.style.display ="block";
        } else if (IEorderID.style.display == 'none') {
            IEorderID.style.display ="block";
            IEorderinfoID.style.display ="none";
        }
    }else{
        var orderID = 'order_'+thID;
        var orderinfoID = 'orderinfo_'+thID;
        var options = {};
        if(!$("#"+orderinfoID).is(":visible")){
            hiddenID(orderID);
            if(!$("#"+orderinfoID).is(":visible"))
                $("#"+orderinfoID).show('blind',options,500);
        } else if(!$("#"+orderID).is(":visible")){
            hiddenID(orderinfoID);
            if(!$("#"+orderID).is(":visible"))
                $("#"+orderID).show('blind',options,500);

        }
    }
}

function select_date(thDate,thPrice,thPriceID) {
    var select_date = document.getElementById("start_date");
    var price_id = document.getElementById("price_id");
    var price = document.getElementById("price");
    select_date.value = thDate;
    price_id.value = thPriceID;
    price.value = thPrice;
}

/* open and hidden switch for ID */
function dSWID(thID) {
    var dsID = document.getElementById(thID);
    if (dsID.style.display == 'none' || dsID.style.display == null) {
        showID(thID);
    } else {
        hiddenID(thID);
    }
}

function switchID(thID) {
    var hotel_product02 = document.getElementById('hotel_packages');
    var package_div = hotel_product02.getElementsByTagName('div');
    var options = {};
    for (var i = 0; i < package_div.length; i++) {
        package_id = package_div[i].id;
        if (package_id.length>0 ) {
            if (package_id == thID){
                if(!$("#"+thID).is(":visible"))
                    $("#"+thID).show('blind',options,500);//
            } else{
                $("#"+package_id).fadeOut();
            }
        }
    }
}

function switchIDticket(thID) {
    var hotel_product02 = document.getElementById('hotel_product02');
    var package_div = hotel_product02.getElementsByTagName('div');
    for (var i = 0; i < package_div.length; i++) {
        package_id = package_div[i].id;
        if (package_id.length>0 ) {
            if (package_id == thID) showID(thID);
            else hiddenID(package_id);
        }
    }
}

function lightbox_end_reload() {
    $('bottomNavClose').observe('click', function(event){
        window.location.reload();
    });
}

function change_room(thPackage,thBed,thPrice) {
    var bed = document.getElementById("bed");
    var package_id = document.getElementById("package_id");
    var fixed_price = document.getElementById("fixed_price");
    bed.value = thBed;
    package_id.value = thPackage;
    fixed_price.value = thPrice;
    document.PForm.action = 'calendar.php';
    document.PForm.submit();
}

function delete_submember(thMemberID) {
    var elements = document.getElementById('carea2');
    var beturl = 'ajax_delete_submember.php';
    if (thMemberID == '') return false;
    else var postObject	= {
        'member_id':thMemberID
    };
    if (confirm('請問您確定移除您廠商底下此一子會員?')) requestJSONXML(beturl, postObject, reload, elements);
    else return false;
}

function clear_session(thHotelID,thSession,thKind) {
    var elements = document.getElementById('PForm');
    var beturl = 'ajax_clear_session.php';
    if ( thHotelID == '' && thSession == '' ) return false;
    else var postObject	= {
        'hotel_id':thHotelID,
        'session':thSession,
        'kind':thKind
    };
    if (confirm('請問您確定移除此筆子訂單嗎?')) requestJSONXML(beturl, postObject, reload, elements);
    else return false;
}

function clear_extra_session(thHotelID,thSession,thExtra,thKind) {
    var elements = document.getElementById('PForm');
    var beturl = 'ajax_clear_extra_session.php';
    if ( thHotelID == '' && thSession == '' ) return false;
    else var postObject	= {
        'hotel_id':thHotelID,
        'session':thSession,
        'extra':thExtra,
        'kind':thKind
    };
    requestJSONXML(beturl, postObject, reload, elements);
}

var ticket = new ArrayList();
var cash = new ArrayList();
function toLoadCash(){
    var temp={};
    temp['ticket_number']='';
    temp['a']=false;
    temp['b']=false;
    temp['checkeda']=false;
    temp['checkedb']=false;
    cash.add(temp);
    showCashList(false);
}

function cashAdd(){
    keepCashList();
    var temp={};
    temp['ticket_number']='';
    temp['a']=false;
    temp['b']=false;
    temp['checkeda']=false;
    temp['checkedb']=false;
    cash.add(temp);
    showCashList(false);
}

function keepCashList(){
    for(var i=0;i<cash.size();i++){
        var temp=cash.get(i);
        if (document.getElementById('ticket_'+i)!=null){
            temp['ticket_number'] = document.getElementById('ticket_'+i).value;
        }
        if (document.getElementById('checkbox_a_'+i).value=="-A") temp['a'] = true;
        else temp['a'] = false;
        if (document.getElementById('checkbox_b_'+i).value=="-B") temp['b'] = true;
        else temp['b'] = false;
    }
}

function showCashList(checked) {
    var elements=document.getElementById("ticket");
    var str='';
    for(var i=0;i < cash.size();i++){
        var temp=cash.get(i);
        str+='<table width="590" border="0" cellspacing="0" cellpadding="0">';
        str+='<tr>';
        str+='<input name="ticket[]" id="ticket[]" value="'+i+'" type="hidden">';
        str+='<td align="right" valign="middle"  class="pink_td01" style="background-color:#E6F4F7;">第'+(i+1)+'組編號：</td>';
        str+='<td align="left" valign="middle" class="white_td01">';
        str+='<div>';
        str+='<ul>';
        str+='<li><input id="ticket_'+i+'" name="ticket_'+i+'" value="'+temp['ticket_number']+'" type="text" class="n_input02" size="20"  onkeyup="value=value.replace(/[-]/g,\'\')"></li>';
        str+='<li><input type="hidden" id="checkbox_a_'+i+'" name="checkbox_a_'+i+'" value="-A" class="input_c01" disable '+(temp['a']?'checked':'checked')+'></li>';
        str+='<li><input type="hidden" id="checkbox_b_'+i+'" name="checkbox_b_'+i+'" value="-B" class="input_c01" disable '+(temp['b']?'checked':'checked')+'></li>';
        str+='<li><div class="addnew_but" onclick="cashAdd();"></div></li>';
        str+='</ul>';
        str+='</div>';
        str+='</td>';
        str+='<tr>';
        str+='</table>';
    }
    elements.innerHTML=str;
}

function toLoad(){
    var temp={};
    temp['ticket_number']='';
    temp['a']=false;
    temp['b']=false;
    temp['checkeda']=false;
    temp['checkedb']=false;
    ticket.add(temp);
    showTicketList(false);
}

function ticketAdd(){
    keepTicketList();
    var temp={};
    temp['ticket_number']='';
    temp['a']=false;
    temp['b']=false;
    temp['checkeda']=false;
    temp['checkedb']=false;
    ticket.add(temp);
    showTicketList(false);
}

function keepTicketList(){
    for(var i=0;i<ticket.size();i++){
        var temp=ticket.get(i);
        if (document.getElementById('ticket_'+i)!=null){
            temp['ticket_number'] = document.getElementById('ticket_'+i).value;
        }
        if (document.getElementById('checkbox_a_'+i).value=="-A") temp['a'] = true;
        else temp['a'] = false;
        if (document.getElementById('checkbox_b_'+i).value=="-B") temp['b'] = true;
        else temp['b'] = false;
    }
}

function showTicketList(checked) {
    var elements=document.getElementById("ticket");
    var str='';
    for(var i=0;i < ticket.size();i++){ 	
        var temp=ticket.get(i);
        str+='<table width="590" border="0" cellspacing="0" cellpadding="0">';
        str+='<tr>';
        str+='<input name="ticket[]" id="ticket[]" value="'+i+'" type="hidden">';
        str+='<td align="right" valign="middle"  class="pink_td01" style="background-color:#E6F4F7;">第'+(i+1)+'組編號：</td>';
        str+='<td align="left" valign="middle" class="white_td01">';
        str+='<div>';
        str+='<ul>';
        str+='<li><input id="ticket_'+i+'" name="ticket_'+i+'" value="'+temp['ticket_number']+'" type="text" class="n_input02" size="20"  onkeyup="value=value.replace(/[-]/g,\'\')"></li>';
        str+='<li><input type="hidden" id="checkbox_a_'+i+'" name="checkbox_a_'+i+'" value="-A" class="input_c01" '+(temp['a']?'checked':'checked')+'></li>';
        str+='<li><input type="hidden" id="checkbox_b_'+i+'" name="checkbox_b_'+i+'" value="-B" class="input_c01" '+(temp['b']?'checked':'checked')+'></li>';
        str+='<li><div class="addnew_but" onclick="ticketAdd();"></div></li>';
        str+='</ul>';
        str+='</div>';
        str+='</td>';
        str+='<tr>';
        str+='</table>';
    }
    elements.innerHTML=str;
}

function changeLang(thlang) {
    var value = YAHOO.util.Cookie.get("lang");
    if (thlang != value) {
        if (document.domain == "www.vip666.com.tw") {
            YAHOO.util.Cookie.remove("lang", {
                domain: "www.vip666.com.tw"
            });
            YAHOO.util.Cookie.set("lang", thlang, {
                path: "/",							//all pages
                domain: "www.vip666.com.tw"			//any subdomain of new.vip666.com.tw
            });
            window.location.reload();
        }
        if (document.domain == "demo.vip666.com.tw") {
            YAHOO.util.Cookie.remove("lang", {
                domain: "demo.vip666.com.tw"
            });
            YAHOO.util.Cookie.set("lang", thlang, {
                path: "/",							//all pages
                domain: "demo.vip666.com.tw"	//any subdomain of office.hotel-world.com.tw
            });
            window.location.reload();
        } else {
            YAHOO.util.Cookie.remove("lang", {
                domain: "office.hotel-world.com.tw"
            });
            YAHOO.util.Cookie.set("lang", thlang, {
                path: "/",							//all pages
                domain: "office.hotel-world.com.tw"	//any subdomain of office.hotel-world.com.tw
            });
            window.location.reload();
        }
    }
}

function mail_submit() {
    var tel = document.getElementById('tel');
    var name = document.getElementById('name');
    var mail = document.getElementById('mail');
    var title = document.getElementById('title');
    var content = document.getElementById('question_content');
    var botcode = document.getElementById('botcode');
    if (name.value == '') {
        alert("您尚未輸入您的姓名！");
    } else if (mail.value == ''){
        alert("您尚未輸入您的聯絡信箱！");
    } else if (tel.value == ''){
        alert("您尚未輸入您的聯絡電話！");
    } else if (title.value == ''){
        alert("您尚未輸入您的問題標題！");
    } else if (content.value == ''){
        alert("您尚未輸入您的問題內容！");
    } else if (botcode.value == ''){
        alert("您尚未輸入驗證碼！");
    } else {
        document.PForm.action = 'service_mail_make.php';
        document.PForm.submit();
    }
}

function check_search() {
    var beturl = 'ajax_search.php';
    //    var thInYear = document.mainAddForm.inYear.value;
    //    var thInMonth = document.mainAddForm.inMonth.value;
    //    var thInDay = document.mainAddForm.inDay.value;
    //    var thOutYear = document.mainAddForm.outYear.value;
    //    var thOutMonth = document.mainAddForm.outMonth.value;
    //    var thOutDay = document.mainAddForm.outDay.value;
    var thInDate=document.getElementById('in_date').value;
    var thOutDate=document.getElementById('out_date').value;
    var elements = document.getElementById('mainAddForm');
    var thBed = document.mainAddForm.bed[document.mainAddForm.bed.selectedIndex].value;
    var thCity = document.mainAddForm.thCity[document.mainAddForm.thCity.selectedIndex].value;
    var thArea = document.mainAddForm.thArea[document.mainAddForm.thArea.selectedIndex].value;
    var thType = document.mainAddForm.hotel_type[document.mainAddForm.hotel_type.selectedIndex].value;
    var thHotelID = document.mainAddForm.hotel_list[document.mainAddForm.hotel_list.selectedIndex].value;
    if (thCity == -1 && thHotelID == -1) {
        alert("請選擇欲入住飯店之地點！");
        document.mainAddForm.action = 'index.php';
    } else {
        var postObject	= {
            'bed':thBed,
            'city':thCity,
            'area':thArea,
            'type':thType,
            'hotel_id':thHotelID,
            'in_date':thInDate,
            'out_date':thOutDate
        //            'inYear':thInYear,
        //            'inMonth':thInMonth,
        //            'inDay':thInDay,
        //            'outYear':thOutYear,
        //            'outMonth':thOutMonth,
        //            'outDay':thOutDay
        };
        requestJSONXML(beturl, postObject, search_submit, elements);
    }
}

function search_submit(items, elements) {
    window.location.href='search_list.php';
}

function check_search_enterprise() {
    var beturl = 'ajax_search.php';
    //    var thInYear = document.mainAddForm.inYear.value;
    //    var thInMonth = document.mainAddForm.inMonth.value;
    //    var thInDay = document.mainAddForm.inDay.value;
    //    var thOutYear = document.mainAddForm.outYear.value;
    //    var thOutMonth = document.mainAddForm.outMonth.value;
    //    var thOutDay = document.mainAddForm.outDay.value;
    var thInDate=document.getElementById('in_date').value;
    var thOutDate=document.getElementById('out_date').value;
    var elements = document.getElementById('mainAddForm');
    var thBed = document.mainAddForm.bed[document.mainAddForm.bed.selectedIndex].value;
    var thCity = document.mainAddForm.thCity[document.mainAddForm.thCity.selectedIndex].value;
    var thArea = document.mainAddForm.thArea[document.mainAddForm.thArea.selectedIndex].value;
    var thType = document.mainAddForm.hotel_type[document.mainAddForm.hotel_type.selectedIndex].value;
    var thHotelID = document.mainAddForm.hotel_list[document.mainAddForm.hotel_list.selectedIndex].value;
    if (thCity == -1 && thHotelID == -1) {
        alert("請選擇欲入住飯店之地點！");
        document.mainAddForm.action = 'index.php';
    } else {
        var postObject	= {
            'bed':thBed,
            'city':thCity,
            'area':thArea,
            'type':thType,
            'hotel_id':thHotelID,
            'in_date':thInDate,
            'out_date':thOutDate
        //            'inYear':thInYear,
        //            'inMonth':thInMonth,
        //            'inDay':thInDay,
        //            'outYear':thOutYear,
        //            'outMonth':thOutMonth,
        //            'outDay':thOutDay
        };
        requestJSONXML(beturl, postObject, search_enterprise_submit, elements);
    }
}

function search_enterprise_submit(items, elements) {
    window.location.href='search_list_enterprise.php';
}

function buycar_check() {
    var elements = document.getElementById('OredrForm');
    var thID = document.OredrForm.id.value;
    var thType = document.OredrForm.type.value;
    var thKind = document.OredrForm.kind.value;
    var thHotelID = document.OredrForm.hotel_id.value;
    var thCheck = document.OredrForm.checkbox.checked;
    if (thCheck == true) {
        var beturl = 'ajax_buycar.php';
        if (thID == '' && thHotelID == '') return false;
        else if (thType == 'calendar') {
            var postObject	= {
                'url':'calendar.php?kind='+thKind+'&package_id='+thID,
                'hotel_id':thHotelID,
                'kind':thKind
            };
        } else {
            if (thType == 'generally') {
                if (thKind == 'domestic') var postObject = {
                    'url':'hotel_products.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
                else if (thKind == 'enterprise') var postObject	= {
                    'url':'hotel_products_'+thKind+'.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
            } else if (thType == 'project') {
                if (thKind == 'domestic') var postObject = {
                    'url':'hotel_special.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
                else if (thKind == 'enterprise') var postObject = {
                    'url':'hotel_special_'+thKind+'.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
            }
        }
        requestJSONXML(beturl, postObject, buycar_submit, elements);
    } else alert('請確認是否已勾選我同意訂購條款！');
}

function mybuycar_check(thHotelID, thKind, thCoupon) {
    var elements = document.getElementById('PForm');
    var beturl = 'ajax_buycar.php';
    var postObject	= {
        'hotel_id':thHotelID,
        'url':'shoppingcart.php',
        'kind':thKind,
        'coupon':thCoupon
    };
    requestJSONXML(beturl, postObject, buycar_submit, elements);
}

function buycar_submit(items, elements) {
    if (items == "ticket") window.location.href='hotel_buylist_ticket.php';
    else if (items == "cashvalue") window.location.href='hotel_buylist_cashvalue.php';
    else window.location.href='hotel_buylist.php';
}

function buycar_ticket_check() {
    var elements = document.getElementById('OredrForm');
    var thID = document.OredrForm.id.value;
    var thType = document.OredrForm.type.value;
    var thKind = document.OredrForm.kind.value;
    var thHotelID = document.OredrForm.hotel_id.value;
    var thCheck = document.OredrForm.checkbox.checked;
    if (thCheck == true) {
        var beturl = 'ajax_buycar.php';
        if (thID == '' && thHotelID == '') return false;
        else if (thType == 'calendar') var postObject = {
            'url':'calendar.php?kind='+thKind+'&package_id='+thID,
            'hotel_id':thHotelID,
            'kind':thKind
        };
        else var postObject	= {
            'url':'hotel_products_ticket.php?package_id='+thID,
            'hotel_id':thHotelID,
            'kind':thKind
        };
        requestJSONXML(beturl, postObject, buycar_ticket_submit, elements);
    } else alert('請確認是否已勾選我同意訂購條款！');
}

function buycar_ticket_submit(items, elements) {
    window.location.href='hotel_buylist_ticket.php';
}

function buycar_promotion_check() {
    var elements = document.getElementById('OredrForm');
    var thID = document.OredrForm.id.value;
    var thType = document.OredrForm.type.value;
    var thKind = document.OredrForm.kind.value;
    var thHotelID = document.OredrForm.hotel_id.value;
    var thCheck = document.OredrForm.checkbox.checked;
    if (thCheck == true) {
        var beturl = 'ajax_buycar.php';
        if (thID == '' && thHotelID == '') return false;
        else if (thType == 'calendar') var postObject = {
            'url':'calendar.php?kind='+thKind+'&package_id='+thID,
            'hotel_id':thHotelID,
            'kind':thKind
        };
        else var postObject	= {
            'url':'hotel_products_promotion.php?package_id='+thID,
            'hotel_id':thHotelID,
            'kind':thKind
        };
        requestJSONXML(beturl, postObject, buycar_promotion_submit, elements);
    } else alert('請確認是否已勾選我同意訂購條款！');
}

function buycar_promotion_submit(items, elements) {
    window.location.href='hotel_buylist_promotion.php';
}

function buycar_cashvalue_check() {
    var elements = document.getElementById('OredrForm');
    var thID = document.OredrForm.id.value;
    var thType = document.OredrForm.type.value;
    var thKind = document.OredrForm.kind.value;
    var thHotelID = document.OredrForm.hotel_id.value;
    var thCheck = document.OredrForm.checkbox.checked;
    if (thCheck == true) {
        var beturl = 'ajax_buycar.php';
        if (thID == '' && thHotelID == '') return false;
        else if (thType == 'calendar') var postObject = {
            'url':'calendar.php?kind='+thKind+'&package_id='+thID,
            'hotel_id':thHotelID,
            'kind':thKind
        };
        else {
            if (thType == 'generally') {
                if (thKind == 'domestic') var postObject = {
                    'url':'hotel_products.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
                else if (thKind == 'enterprise') var postObject	= {
                    'url':'hotel_products_'+thKind+'.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
            } else if (thType == 'project') {
                if (thKind == 'domestic') var postObject = {
                    'url':'hotel_special.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
                else if (thKind == 'enterprise') var postObject = {
                    'url':'hotel_special_'+thKind+'.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
            }
        }
        requestJSONXML(beturl, postObject, buycar_cashvalue_submit, elements);
    } else alert('請確認是否已勾選我同意訂購條款！');
}

function buycar_cashvalue_submit(items, elements) {
    window.location.href='hotel_buylist_cashvalue.php';
}

function buycar_card_check() {
    var elements = document.getElementById('OredrForm');
    var thID = document.OredrForm.id.value;
    var thType = document.OredrForm.type.value;
    var thKind = document.OredrForm.kind.value;
    var thHotelID = document.OredrForm.hotel_id.value;
    var thCheck = document.OredrForm.checkbox.checked;
    if (thCheck == true) {
        var beturl = 'ajax_buycar.php';
        if (thID == '' && thHotelID == '') return false;
        else if (thType == 'calendar') var postObject = {
            'url':'calendar.php?kind='+thKind+'&package_id='+thID,
            'hotel_id':thHotelID,
            'kind':thKind
        };
        else {
            if (thType == 'generally') {
                if (thKind == 'domestic') var postObject = {
                    'url':'hotel_products.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
                else if (thKind == 'enterprise') var postObject	= {
                    'url':'hotel_products_'+thKind+'.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
            } else if (thType == 'project') {
                if (thKind == 'domestic') var postObject = {
                    'url':'hotel_special.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
                else if (thKind == 'enterprise') var postObject = {
                    'url':'hotel_special_'+thKind+'.php?package_id='+thID,
                    'hotel_id':thHotelID,
                    'kind':thKind
                };
            }
        }
        requestJSONXML(beturl, postObject, buycar_card_submit, elements);
    } else alert('請確認是否已勾選我同意訂購條款！');
}

function buycar_card_submit(items, elements) {
    window.location.href='hotel_buylist_card.php';
}

function wait_submit() {
    var receipt_type_value
    var id = document.getElementById('id');
    var day = document.getElementById('day');
    var name = document.getElementById('name');
    var year = document.getElementById('year');
    var month = document.getElementById('month');
    var email = document.getElementById('email');
    var phone = document.getElementById('phone');
    var mobile = document.getElementById('mobile');
    var address = document.getElementById('address');
    var zipcode = document.getElementById('zipcode');
    var password = document.getElementById('password');
    var password2 = document.getElementById('password2');
    var receipt = document.getElementById('receipt_type');
    var phone_code = document.getElementById('phone_code');
	
    if (email.value == '') {
        alert("您尚未輸入您的E-MAIL帳號！");
    } else if (password.value == '') {
        alert("您尚未輸入您的密碼！");
    } else if (password2.value == '') {
        alert("您尚未輸入確認密碼！");
    } else if (name.value == '') {
        alert("您尚未輸入您的姓名！");
    } else if (id.value == '') {
        alert("您尚未輸入您的身分證字號！");
    } else if (year.value == '') {
        alert("您尚未輸入您生日的年份！");
    } else if (month.value == '') {
        alert("您尚未輸入您生日的月份！");
    } else if (day.value == '') {
        alert("您尚未輸入您生日的日！");
    } else if (phone_code.value == '') {
        alert("您尚未輸入您的聯絡電話區碼！");
    } else if (phone.value == '') {
        alert("您尚未輸入您的聯絡電話！");
    } else if (mobile.value == '') {
        alert("您尚未輸入您的行動電話！");
    } else if (address.value == '') {
        alert("您尚未輸入您的聯絡地址！");
    } else if (zipcode.value == '') {
        alert("您尚未輸入您的聯絡地址之郵遞區號！");
    } else {
        document.PForm.action = 'hotel_payment.php';
        document.PForm.submit();
    }
}

function order_submit() {
    var receipt_type_value
    var id = document.getElementById('id');
    var day = document.getElementById('day');
    var name = document.getElementById('name');
    var year = document.getElementById('year');
    var month = document.getElementById('month');
    var email = document.getElementById('email');
    var phone = document.getElementById('phone');
    var mobile = document.getElementById('mobile');
    var payment = document.getElementById('payment');
    var address = document.getElementById('address');
    var zipcode = document.getElementById('zipcode');
    var password = document.getElementById('password');
    var password2 = document.getElementById('password2');
    var receipt = document.getElementById('receipt_type');
    var phone_code = document.getElementById('phone_code');
    var receipt_type = receipt.getElementsByTagName('input');
    var receipt_address = document.getElementById('receipt_address');
    var receipt_gains_ground = document.getElementById('receipt_gains_ground');
    for (var i = 0; i < receipt_type.length; i++) {
        if (receipt_type[i].checked == true) receipt_type_value = receipt_type[i].getAttribute("value");
    }
	
    if (email.value == '') alert("您尚未輸入您的E-MAIL帳號！");
    else if (password.value == '') alert("您尚未輸入您的密碼！");
    else if (password2.value == '') alert("您尚未輸入確認密碼！");
    else if (name.value == '') alert("您尚未輸入您的姓名！");
    else if (id.value == '') alert("您尚未輸入您的身分證字號！");
    else if (year.value == '') alert("您尚未輸入您生日的年份！");
    else if (month.value == '') alert("您尚未輸入您生日的月份！");
    else if (day.value == '') alert("您尚未輸入您生日的日！");
    else if (phone_code.value == '') alert("您尚未輸入您的聯絡電話區碼！");
    else if (phone.value == '') alert("您尚未輸入您的聯絡電話！");
    else if (mobile.value == '') alert("您尚未輸入您的行動電話！");
    else if (payment.value == '') alert("請選擇付款方式！");
    else if (zipcode.value == '') alert("請輸入郵遞區號！");
    else if (address.value == '') alert("請輸入聯絡地址！");
    else {
        document.PForm.action = 'hotel_payment.php';
        document.PForm.submit();
    }
}

function coupon_submit(piece) {
	var countNum = 0;
	var sunpiece = 0;
	var ticket_length = 0;
	var doubleKey = false;
	var hm = new HashMap();
    var doubleKeyMessage = "";
    var id = document.getElementById('id');
    var day = document.getElementById('day');
    var name = document.getElementById('name');
    var year = document.getElementById('year');
    var month = document.getElementById('month');
    var email = document.getElementById('email');
    var phone = document.getElementById('phone');
    var mobile = document.getElementById('mobile');
    var address = document.getElementById('address');
    var zipcode = document.getElementById('zipcode');
    var password = document.getElementById('password');
    var password2 = document.getElementById('password2');
    var receipt = document.getElementById('receipt_type');
    var phone_code = document.getElementById('phone_code');
    var receipt_type = receipt.getElementsByTagName('input');
    var receipt_address = document.getElementById('receipt_address');
    var receipt_gains_ground = document.getElementById('receipt_gains_ground');
    var use_ab = document.getElementById('use_ab').value;
	ticket_length = $("input[name='ticket[]']").length;

    for (var i = 0; i < receipt_type.length; i++) {
        if (receipt_type[i].checked == true) receipt_type_value = receipt_type[i].getAttribute("value");
    }
    
    for (var i = 0; i < ticket_length; i++) {
        if ($("input[name='ticket_"+i+"']").val()!='') {
        	if (use_ab == "T") {
        		var check_a = document.getElementById('checkbox_a_'+i).checked;
        		var check_b = document.getElementById('checkbox_b_'+i).checked;
        		if(check_a == true){
	                sunpiece+=0.5;
	            }
	            if(check_b == true){
	                sunpiece+=0.5;
	            }
        	} else {
	        	if($("input[name='checkbox_a_"+i+"']").val() == "A"){
	                sunpiece+=0.5;
	            }
	            if($("input[name='checkbox_b_"+i+"']").val() == "B"){
	                sunpiece+=0.5;
	            }
        	}
            countNum++;
        }
        var ticket_number=$("input[name='ticket_"+i+"']").val();
        if (ticket_number != "") {
	        ticket_number=trim(ticket_number);
	        if (hm.containsKey(ticket_number)==false) {
	            hm.put(ticket_number, '');
	        } else {
	            doubleKeyMessage+=ticket_number+"重覆\r\n";
	            doubleKey=true;
	        }
    	}
    }
    
    if (use_ab == "T") ticket_length = ticket_length/2;
    
    if (countNum < ticket_length){
        alert ("請輸入住宿券編號！");
        return;
    }
    
    if(doubleKey){
        alert ("住宿券編號重覆！\r\n"+doubleKeyMessage);
        return;
    }
    
    if(sunpiece < piece){
        alert ("住宿券不足"+(piece-sunpiece)+"張！");
        return;
    }
	
    if (email.value == '') alert("您尚未輸入您的E-MAIL帳號！");
    else if (password.value == '') alert("您尚未輸入您的密碼！");
    else if (password2.value == '') alert("您尚未輸入確認密碼！");
    else if (name.value == '') alert("您尚未輸入您的姓名！");
    else if (id.value == '') alert("您尚未輸入您的身分證字號！");
    else if (year.value == '') alert("您尚未輸入您生日的年份！");
    else if (month.value == '') alert("您尚未輸入您生日的月份！");
    else if (day.value == '') alert("您尚未輸入您生日的日！");
    else if (phone_code.value == '') alert("您尚未輸入您的聯絡電話區碼！");
    else if (phone.value == '') alert("您尚未輸入您的聯絡電話！");
    else if (mobile.value == '') alert("您尚未輸入您的行動電話！");
    else {
        document.PForm.action = 'coupon_sure.php';
        document.PForm.submit();
    }
}

function check_ticket(ele,number,order_number) {
	var obj={};
	var new_number = order_number+1;
	var use_ab = document.getElementById('use_ab').value;
	var ticket_last = document.getElementById('ticket_temp_'+new_number).value;
	obj['use_ab'] = use_ab;
    obj['ticket'] = $(ele).val();
    obj['ticket_last'] = ticket_last;
    obj['order_number'] = order_number;
    var element = document.getElementById('message_'+number);
    requestJSONXML('ajax_ticket.php',obj,ticket_message,element);
}

function ticket_message(items, elements){
	var ticket_value;
	var ticket = document.getElementById('ticket_temp_'+items.order_number);
	$(elements).html("");
	if (items.pass == false) { 
		elements.style.color = "red";
	} else {
		elements.style.color = "green";
		ticket_value = ticket.value+items.ticket+',';
		ticket.value = ticket_value;
	}
	elements.appendChild(document.createTextNode(items.message));
}

function check_ticket_cashvalue(ele,number,order_number) {
	var obj={};
	var new_number = order_number+1;
	var self_id = 'ticket_'+number;
	var use_ab = document.getElementById('use_ab').value;
	var ticket_last = document.getElementById('ticket_temp_'+new_number).value;
	obj['check'] = "F";
	obj['checked'] = 'no';
	obj['use_ab'] = use_ab;
	obj['number'] = number;
	obj['self_id'] = self_id;
    obj['ticket'] = $(ele).val();
    obj['ticket_last'] = ticket_last;
    obj['order_number'] = order_number;
    var element = document.getElementById('message_'+number);
    requestJSONXML('ajax_ticket_cashvalue.php',obj,ticket_cashvalue_message,element);
}

function ticket_cashvalue_message(items, elements){
	$(elements).html("");
	var number = 0;
	var coupon_value;
	var ticket_value;
	var total_price_value;
	var coupon = document.getElementById('coupon');
	var coupon_int = parseInt($(coupon).html());
	var use_ab = document.getElementById('use_ab').value;
	var ticket_length = $("input[name='ticket[]']").length;
	var total_price = document.getElementById('total_price');
	var total_price_int = parseInt($(total_price).html());
	var total_price_hidden = document.getElementById('total_price_hidden');
	var total_price_hidden_int = parseInt($(total_price_hidden).val());
	var ticket = document.getElementById('ticket_temp_'+items.order_number);
	if (items.pass == false) elements.style.color = "red";
	else {
		elements.style.color = "green";
		ticket_value = ticket.value+items.ticket+',';
		ticket.value = ticket_value;
	}
	elements.appendChild(document.createTextNode(items.message));
	if (use_ab == "F") {
		if (items.pass == true && items.coupon_value > 0) {
			document.getElementById('right_'+items.number).value = 1;
			for (var i = 0; i < ticket_length; i++) {
				if (document.getElementById('right_'+i).value == '1') number += 1;	
			}
			if (number > 0) {
				$(coupon).html("");
				$(total_price).html("");
				coupon_value = number * parseInt(items.coupon_value);
				total_price_value = parseInt(total_price_hidden_int) - number * parseInt(items.coupon_value);
				coupon.appendChild(document.createTextNode(coupon_value));
				total_price.appendChild(document.createTextNode(total_price_value));
			}
		} else {
			if (document.getElementById('right_'+items.number).value == '1') {
				document.getElementById('right_'+items.number).value = '';
				for (var i = 0; i < ticket_length; i++) {
					if (document.getElementById('right_'+i).value == '1') number += 1;	
				}
				$(coupon).html("");
				$(total_price).html("");
				if (number > 0) {
					coupon_value = number * parseInt(items.coupon_value);
					total_price_value = parseInt(total_price_hidden_int) - number * parseInt(items.coupon_value);
					coupon.appendChild(document.createTextNode(coupon_value));
					total_price.appendChild(document.createTextNode(total_price_value));
				} else {
					coupon.appendChild(document.createTextNode(''));
					total_price.appendChild(document.createTextNode(total_price_hidden_int));
				}
			} else document.getElementById('right_'+items.number).value = '';


		}
	} else if (use_ab == "T" && items.pass == true && items.coupon_value > 0) {
		if (items.checked == true) {
			if (items.pass == true && items.coupon_value > 0) {
				if (items.check == "A") document.getElementById('right_'+items.number+"_a").value = 1;
				else document.getElementById('right_'+items.number+"_b").value = 1;
				for (var i = 0; i < ticket_length; i++) {
					if (document.getElementById('right_'+i+"_a").value == '1') number += 1;	
				}
				for (var i = 0; i < ticket_length; i++) {
					if (document.getElementById('right_'+i+"_b").value == '1') number += 1;	
				}
				if (number > 0) {
					$(coupon).html("");
					$(total_price).html("");
					coupon_value = number * parseInt(items.coupon_value);
					total_price_value = parseInt(total_price_hidden_int) - number * parseInt(items.coupon_value);
					coupon.appendChild(document.createTextNode(coupon_value));
					total_price.appendChild(document.createTextNode(total_price_value));
				}
			}
		} else if (items.checked != 'no') {
			if (items.check == "A") document.getElementById('right_'+items.number+"_a").value = '';
			else document.getElementById('right_'+items.number+"_b").value = '';
			for (var i = 0; i < ticket_length; i++) {
				if (document.getElementById('right_'+i+"_a").value == '1') number += 1;	
			}
			for (var i = 0; i < ticket_length; i++) {
				if (document.getElementById('right_'+i+"_b").value == '1') number += 1;	
			}
			$(coupon).html("");
			$(total_price).html("");
			if (number > 0) {
				coupon_value = number * parseInt(items.coupon_value);
				total_price_value = parseInt(total_price_hidden_int) - number * parseInt(items.coupon_value);
				coupon.appendChild(document.createTextNode(coupon_value));
				total_price.appendChild(document.createTextNode(total_price_value));
			} else {
				coupon.appendChild(document.createTextNode(''));
				total_price.appendChild(document.createTextNode(total_price_hidden_int));
			}
			$(elements).html("");
		}
	} else if (use_ab == "T" && items.checked == true && items.coupon_value > 0) {
		document.getElementById(items.self_id).checked = false;
	} else if (use_ab == "T" && items.checked == false && items.coupon_value > 0){
		$(elements).html("");
	}
}

function coupon_cashvalue_submit(piece) {
	var countNum = 0;
	var sunpiece = 0;
	var ticket_length = 0;
	var doubleKey = false;
	var hm = new HashMap();
    var doubleKeyMessage = "";
    var id = document.getElementById('id');
    var day = document.getElementById('day');
    var name = document.getElementById('name');
    var year = document.getElementById('year');
    var month = document.getElementById('month');
    var email = document.getElementById('email');
    var phone = document.getElementById('phone');
    var mobile = document.getElementById('mobile');
    var address = document.getElementById('address');
    var zipcode = document.getElementById('zipcode');
    var password = document.getElementById('password');
    var password2 = document.getElementById('password2');
    var receipt = document.getElementById('receipt_type');
    var phone_code = document.getElementById('phone_code');
    var receipt_type = receipt.getElementsByTagName('input');
    var receipt_address = document.getElementById('receipt_address');
    var receipt_gains_ground = document.getElementById('receipt_gains_ground');
    var use_ab = document.getElementById('use_ab').value;
	ticket_length = $("input[name='ticket[]']").length;

    for (var i = 0; i < receipt_type.length; i++) {
        if (receipt_type[i].checked == true) receipt_type_value = receipt_type[i].getAttribute("value");
    }
    
    for (var i = 0; i < ticket_length; i++) {
        if ($("input[name='ticket_"+i+"']").val()!='') {
        	if (use_ab == "T") {
        		var check_a = document.getElementById('checkbox_a_'+i).checked;
        		var check_b = document.getElementById('checkbox_b_'+i).checked;
        		if(check_a == true){
	                sunpiece+=0.5;
	            }
	            if(check_b == true){
	                sunpiece+=0.5;
	            }
        	} else {
	        	if($("input[name='checkbox_a_"+i+"']").val() == "A"){
	                sunpiece+=0.5;
	            }
	            if($("input[name='checkbox_b_"+i+"']").val() == "B"){
	                sunpiece+=0.5;
	            }
        	}
            countNum++;
        }
        var ticket_number=$("input[name='ticket_"+i+"']").val();
        if (ticket_number != "") {
	        ticket_number=trim(ticket_number);
	        if (hm.containsKey(ticket_number)==false) {
	            hm.put(ticket_number, '');
	        } else {
	            doubleKeyMessage+=ticket_number+"重覆\r\n";
	            doubleKey=true;
	        }
    	}
    }
    
    if (use_ab == "T") ticket_length = ticket_length/2;
    
    if(doubleKey){
        alert ("住宿券編號重覆！\r\n"+doubleKeyMessage);
        return;
    }
    
    if(sunpiece < piece){
        alert ("住宿券不足"+(piece-sunpiece)+"張！");
        return;
    }
	
    if (email.value == '') alert("您尚未輸入您的E-MAIL帳號！");
    else if (password.value == '') alert("您尚未輸入您的密碼！");
    else if (password2.value == '') alert("您尚未輸入確認密碼！");
    else if (name.value == '') alert("您尚未輸入您的姓名！");
    else if (id.value == '') alert("您尚未輸入您的身分證字號！");
    else if (year.value == '') alert("您尚未輸入您生日的年份！");
    else if (month.value == '') alert("您尚未輸入您生日的月份！");
    else if (day.value == '') alert("您尚未輸入您生日的日！");
    else if (phone_code.value == '') alert("您尚未輸入您的聯絡電話區碼！");
    else if (phone.value == '') alert("您尚未輸入您的聯絡電話！");
    else if (mobile.value == '') alert("您尚未輸入您的行動電話！");
    else {
        document.PForm.action = 'cashvalue_sure.php';
        document.PForm.submit();
    }
}

function cashvalue_buylist_submit() {
    var receipt_type_value
    var id = document.getElementById('id');
    var day = document.getElementById('day');
    var name = document.getElementById('name');
    var year = document.getElementById('year');
    var month = document.getElementById('month');
    var email = document.getElementById('email');
    var phone = document.getElementById('phone');
    var mobile = document.getElementById('mobile');
    var address = document.getElementById('address');
    var zipcode = document.getElementById('zipcode');
    var password = document.getElementById('password');
    var password2 = document.getElementById('password2');
    var receipt = document.getElementById('receipt_type');
    var phone_code = document.getElementById('phone_code');
    var receipt_type = receipt.getElementsByTagName('input');
    var receipt_address = document.getElementById('receipt_address');
    var receipt_gains_ground = document.getElementById('receipt_gains_ground');
    for (var i = 0; i < receipt_type.length; i++) {
        if (receipt_type[i].checked == true) receipt_type_value = receipt_type[i].getAttribute("value");
    }
	
    if (email.value == '') alert("您尚未輸入您的E-MAIL帳號！");
    else if (password.value == '') alert("您尚未輸入您的密碼！");
    else if (password2.value == '') alert("您尚未輸入確認密碼！");
    else if (name.value == '') alert("您尚未輸入您的姓名！");
    else if (id.value == '') alert("您尚未輸入您的身分證字號！");
    else if (year.value == '') alert("您尚未輸入您生日的年份！");
    else if (month.value == '') alert("您尚未輸入您生日的月份！");
    else if (day.value == '') alert("您尚未輸入您生日的日！");
    else if (phone_code.value == '') alert("您尚未輸入您的聯絡電話區碼！");
    else if (phone.value == '') alert("您尚未輸入您的聯絡電話！");
    else if (mobile.value == '') alert("您尚未輸入您的行動電話！");
    else {
        document.PForm.action = 'cashvalue_numbers.php';
        document.PForm.submit();
    }
}

function MM_findObj(n, d) { //v4.01
    var p,i,x;
    if (!d) d=document;
    if ((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document;
        n=n.substring(0,p);
    }
    if (!(x=d[n])&&d.all) x=d.all[n];
    for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
    if (!x && d.getElementById) x=d.getElementById(n);
    return x;
}

function MM_showHideLayers() { //v6.0
    var i,p,v,obj,args=MM_showHideLayers.arguments;
    for (i=0; i<(args.length-2); i+=3)
        if ((obj=MM_findObj(args[i]))!=null) {
            v=args[i+2];
            if (obj.style) {
                obj=obj.style;
                v=(v=='show')?'visible':(v=='hide')?'hidden':v;
            }
            obj.visibility=v;
        }
}

/* farmer address and zip start */
var a = new Array(27)
a[1]=new Array("中正區","大同區","中山區","松山區","大安區","萬華區","信義區","士林區","北投區","內湖區","南港區","文山區")
a[2]=new Array("萬里鄉","金山鄉","板橋市","汐止市","深坑鄉","石碇鄉","瑞芳鎮","平溪鄉","雙溪鄉","貢寮鄉","新店市","坪林鄉","烏來鄉","永和市","中和市","土城市","三峽鎮","樹林市","鶯歌鎮","三重市","新莊市","泰山鄉","林口鄉","蘆洲市","五股鄉","八里鄉","淡水鎮","三芝鄉","石門鄉")
a[3]=new Array("仁愛區","信義區","中正區","中山區","安樂區","暖暖區","七堵區")
a[4]=new Array("宜蘭市","頭城鎮","礁溪鄉","壯圍鄉","員山鄉","羅東鎮","三星鄉","大同鄉","五結鄉","冬山鄉","蘇澳鎮","南澳鄉")
a[5]=new Array("中壢市","平鎮市","龍潭鄉","楊梅鎮","新屋鄉","觀音鄉","桃園市","龜山鄉","八德市","大溪鎮","復興鄉","大園鄉","蘆竹鄉")
a[6]=new Array("竹北市","湖口鄉","新豐鄉","關西鎮","芎林鄉","寶山鄉","竹東鎮","五峰鄉","橫山鄉","尖石鄉","北埔鄉","峨眉鄉")
a[7]=new Array("東區","北區","香山區")
a[8]=new Array("竹南鎮","頭份鎮","三灣鄉","南庄鄉","獅潭鄉","後龍鎮","通宵鎮","苑裡鎮","苗粟市","造橋鄉","頭屋鄉","公館鄉","大湖鄉","泰安鄉","銅羅鄉","三義鄉","西湖鄉","卓蘭鎮")
a[9]=new Array("太平市","大理市","霧峰鄉","烏日鄉","豐原市","后里鄉","石崗鄉","東勢鎮","和平鄉","新社鄉","潭子鄉","大雅鄉","神崗鄉","大肚鄉","沙鹿鎮","龍井鄉","梧棲鎮","清水鎮","大甲鎮","外埔鄉","大安鄉")
a[10]=new Array("中區","東區","南區","西區","北區","北屯區","西屯區","南屯區")
a[11]=new Array("彰化市","芬園鄉","花壇鄉","秀水鄉","鹿港鎮","福興鄉","線西鄉","和美鎮","伸港鄉","員林鎮","社頭鄉","永靖鄉","埔心鄉","溪湖鎮","大村鄉","埔鹽鄉","田中鎮","北斗鎮","田尾鄉","埤頭鄉","溪洲鄉","竹塘鄉","二林鎮","大城鄉","芳苑鄉","二水鄉")
a[12]=new Array("南投市","中寮市","草屯鎮","國姓鄉","埔里鎮","仁愛鄉","名間鄉","集集鎮","水里鄉","信義鄉","竹山鎮","鹿谷鄉")
a[13]=new Array("斗南鎮","大埤鄉","虎尾鎮","土庫鎮","褒忠鄉","東勢鄉","臺西鄉","崙背鄉","麥寮鄉","斗六市","林內鄉","古坑鄉","莿桐鄉","西螺鎮","二崙鄉","北港鎮","水林鄉","口湖鄉","四湖鄉","元長鄉")
a[14]=new Array("番路鄉","梅山鄉","竹崎鄉","阿里山鄉","中埔鄉","水上鄉","鹿草鄉","太保市","朴子市","東石鄉","六石鄉","新港鄉","民雄鄉","大林鎮","溪口鄉","義竹鄉","布袋鎮")
a[15]=new Array("東區","西區")
a[16]=new Array("永康市","歸仁鄉","新化鎮","左鎮鄉","玉井鄉","楠西鄉","南化鄉","仁德鄉","關廟鄉","龍崎鄉","官田鄉","麻豆鎮","佳里鎮","西港鄉","七股鄉","將軍鄉","學甲鎮","北門鄉","新營市","後壁鄉","白河鎮","東山鄉","六甲鄉","下營鄉","柳營鄉","鹽水鎮","善化鎮","大內鄉","山上鄉","新市鄉","安定鄉")
a[17]=new Array("中區","東區","南區","西區","北區","安平區","安南區")
a[18]=new Array("仁武鄉","大社鄉","岡山鎮","路竹鄉","阿蓮鄉","田寮鄉","燕巢鄉","橋頭鎮","梓官鄉","彌陀鄉","永安鄉","湖內鄉","鳳山市","大寮鄉","林園鄉","鳥松鄉","大樹鄉","旗山鄉","美濃鎮","六龜鄉","內門鄉","杉林鄉","甲先鄉","桃源鄉","三民鄉","茂林鄉","茄萣鄉")
a[19]=new Array("新興區","前金區","苓雅區","鹽埕區","鼓山區","旗津區","前鎮區","三民區","楠梓區","小港區","左營區")
a[20]=new Array("屏東市","三門地鄉","霧臺鄉","瑪家鄉","九如鄉","里港鄉","高樹鄉","鹽埔鄉","長治鄉","麟洛鄉","竹田鄉","內埔鄉","萬丹鄉","潮洲鄉","泰武鄉","來義鄉","萬巒鄉","崁頂鄉","新埤鄉","南州鄉","林邊鄉","東港鎮","硫球鄉","佳冬鄉","新園鄉","枋寮鄉","枋山鄉","春日鄉","獅子鄉","車城鄉","牧丹鄉","恆春鄉","滿州鄉")
a[21]=new Array("台東市","線島鄉","蘭嶼鄉","延平鄉","卑南鄉","鹿野鄉","關山鎮","海瑞鄉","池上鄉","東河鄉","成功鎮","長演鄉","太麻里鄉","金峰鄉","大武鄉","達仁鄉")
a[22]=new Array("花蓮市","新城鄉","秀林鄉","吉安鄉","壽豐鄉","鳳林鄉","光復鄉","豐濱鄉","瑞穗鄉","萬榮鄉","玉里鎮","卓溪鄉","富里鄉")
a[23]=new Array("馬公市","西嶼鄉","望安鄉","七美鄉","白沙鄉","湖西鄉")
a[24]=new Array("南竿鄉","北竿鄉","莒光鄉","東引鄉")
a[25]=new Array("金沙鎮","金湖鎮","金寧鄉","金城鎮","烈嶼鄉","烏坵鄉")
a[26]=new Array("釣魚台列嶼","東沙","南沙")

var area = new Array(27)
area[1]=new Array("100","103","104","105","106","108","110","111","112","114","115","116")
area[2]=new Array("207","208","220","221","222","223","224","226","227","228","231","232","233","234","235","236","237","238","239","241","242","243","244","247","248","249","251","252","253")
area[3]=new Array("200","201","202","203","204","205","206")
area[4]=new Array("260","261","262","263","264","265","266","267","268","269","270","272")
area[5]=new Array("320","321","325","326","327","328","330","333","334","335","336","337","338")
area[6]=new Array("302","303","304","306","307","308","310","311","312","313","314","315")
area[7]=new Array("300","300","300")
area[8]=new Array("350","351","352","353","354","356","357","358","360","361","362","363","364","365","366","367","368","369")
area[9]=new Array("411","412","413","414","420","421","422","423","424","426","427","428","429","432","433","434","435","436","437","438","439")
area[10]=new Array("400","401","402","403","404","406","407","408")
area[11]=new Array("500","502","503","504","505","506","507","508","509","510","511","512","513","514","515","516","520","521","522","523","524","525","526","527","528","530")
area[12]=new Array("540","541","542","544","545","546","551","552","553","555","556","557","558")
area[13]=new Array("630","631","632","633","634","635","636","637","638","640","643","646","647","648","649","651","652","653","654","655")
area[14]=new Array("602","603","604","605","606","608","611","612","613","614","615","616","621","622","623","624","625")
area[15]=new Array("600","600")
area[16]=new Array("710","711","712","713","714","715","716","717","718","719","720","721","722","723","724","725","726","727","730","731","732","733","734","735","736","737","741","742","743","744","745")
area[17]=new Array("700","701","702","703","704","708","709")
area[18]=new Array("814","815","820","821","822","823","824","825","826","827","828","829","830","831","832","833","840","842","843","844","845","846","847","848","849","851","852")
area[19]=new Array("800","801","802","803","804","805","806","807","811","812","813")
area[20]=new Array("900","901","902","903","904","905","906","907","908","909","911","912","913","920","921","922","923","924","925","926","927","928","929","931","932","940","941","942","943","944","945","946","947")
area[21]=new Array("950","951","952","953","954","955","956","957","958","959","961","962","963","964","965","966")
area[22]=new Array("970","971","972","973","974","975","976","977","978","979","981","982","983")
area[23]=new Array("880","881","882","883","884","885")
area[24]=new Array("209","210","211","212")
area[25]=new Array("890","891","892","893","894","896")
area[26]=new Array("290","817","819")
//var fm = document.insertForm;
function createOption(item) {
    var fm = document.mainAddForm;
    if (fm.thCity.selectedIndex != 0){
        city = item;
        for (var j=0;j < a[item].length;j++){
            var option = new Option(a[item][j]);
            var num = fm.thArea.options.length;
            fm.thArea.options[num] = option;
        }
    }
}
function deleteAllOptions() {
    var fm = document.mainAddForm;
    if (fm.thCity.selectedIndex != 0){
        var item = fm.thArea.options.length;
        for (var i=item-1; i >= 0; i--){
            fm.thArea.options[1] = null;
        }
    }
}
function writeOut(selectedIndex) {
    var fm = document.mainAddForm;
    if (fm.thArea.selectedIndex != 0){
        fm.thPostcode.value = area[city][selectedIndex-1];
    }
}
/* farmer address and zip end */

function createHotel() {
    var thCity		= document.getElementById('thCity');
    var thArea		= document.getElementById('thArea');
    var elements	= document.getElementById('search');
    var postObject	= {
        'action':'選出飯店',
        'thCity':thCity.value,
        'thArea':thArea.value
    };
    requestJSONXML("change_hotel.php", postObject, doResponse, elements);
}

function loadHotel() {
    var elements = document.getElementById('mainAddForm');
    var thCity = document.mainAddForm.thCity[document.mainAddForm.thCity.selectedIndex].value;
    var thArea = document.mainAddForm.thArea[document.mainAddForm.thArea.selectedIndex].value;
    var beturl = 'ajax_load_hotel.php';
    if ( thCity == '' && thArea == '' ) return false;
    else if ( thCity != '' && thArea == '' ) var postObject	= {
        'city':thCity
    };
    else if ( thCity == '' && thArea != '' ) var postObject	= {
        'area':thArea
    };
    else var postObject	= {
        'city':thCity,
        'area':thArea
    };
    requestJSONXML(beturl, postObject, doResult, elements);
}

function doResult(items, elements) {
    // 移除選項
    for(i = document.mainAddForm.hotel_list.length; i > -1; i--){
        document.mainAddForm.hotel_list.options[i] = null;
    }
    for(i = document.mainAddForm.hotel_type.length; i > -1; i--){
        document.mainAddForm.hotel_type.options[i] = null;
    }
    for(i = document.mainAddForm.bed.length; i > -1; i--){
        document.mainAddForm.bed.options[i] = null;
    }
    
    if ( items.hotel.length > 0 ) {
        document.mainAddForm.hotel_list.options[0] = new Option('找到'+items.hotel.length+'間符合條件的飯店', '-1');
        for ( var i=0; i<items.hotel.length; i++ ) {
            var objOption = new Option('‧'+items.hotel[i].name, items.hotel[i].hotelID);
            document.mainAddForm.hotel_list.options[i+1] = objOption;
        }
    } else {
        document.mainAddForm.hotel_list.options[0] = new Option('沒有找到符合條件的飯店', '');
    }
    
    if ( items.type.length > 0 ) {
        document.mainAddForm.hotel_type.options[0] = new Option('找到'+items.type.length+'種飯店型態', '');
        for ( var i=0; i<items.type.length; i++ ) {
            var objOption = new Option('‧'+items.type[i].item, items.type[i].settingID);
            document.mainAddForm.hotel_type.options[i+1] = objOption;
        }
    } else {
        document.mainAddForm.hotel_type.options[0] = new Option('沒有符合飯店型態', '');
    }
    
    if ( items.bed.length > 0 ) {
        document.mainAddForm.bed.options[0] = new Option('找到'+items.bed.length+'種飯店床型', '');
        for ( var i=0; i<items.bed.length; i++ ) {
            var objOption = new Option('‧'+items.bed[i].item, items.bed[i].settingID);
            document.mainAddForm.bed.options[i+1] = objOption;
        }
    } else {
        document.mainAddForm.bed.options[0] = new Option('沒有符合的飯店床型', '');
    }
}

function loadHotel_type() {
    var elements = document.getElementById('mainAddForm');
    var thCity = document.mainAddForm.thCity[document.mainAddForm.thCity.selectedIndex].value;
    var thArea = document.mainAddForm.thArea[document.mainAddForm.thArea.selectedIndex].value;
    var thType = document.mainAddForm.hotel_type[document.mainAddForm.hotel_type.selectedIndex].value;
    var beturl = 'ajax_load_hotel_type.php';
    if ( thCity == '' && thArea == '' ) var postObject	= {
        'type':thType
    };
    else if ( thCity != '' && thArea == '' ) var postObject	= {
        'type':thType,
        'city':thCity
    };
    else if ( thCity == '' && thArea != '' ) var postObject	= {
        'type':thType,
        'area':thArea
    };
    else var postObject	= {
        'type':thType,
        'city':thCity,
        'area':thArea
    };
    requestJSONXML(beturl, postObject, typeResult, elements);
}

function typeResult(items, elements) {
    // 移除選項
    for(i = document.mainAddForm.hotel_list.length; i > -1; i--){
        document.mainAddForm.hotel_list.options[i] = null;
    }
    for(i = document.mainAddForm.bed.length; i > -1; i--){
        document.mainAddForm.bed.options[i] = null;
    }
    
    if ( items.hotel.length > 0 ) {
        document.mainAddForm.hotel_list.options[0] = new Option('找到'+items.hotel.length+'間符合條件的飯店', '');
        for ( var i=0; i<items.hotel.length; i++ ) {
            var objOption = new Option('‧'+items.hotel[i].name, items.hotel[i].hotelID);
            document.mainAddForm.hotel_list.options[i+1] = objOption;
        }
    } else {
        document.mainAddForm.hotel_list.options[0] = new Option('沒有找到符合條件的飯店', '');
    }
    
    if ( items.bed.length > 0 ) {
        document.mainAddForm.bed.options[0] = new Option('找到'+items.bed.length+'種飯店床型', '');
        for ( var i=0; i<items.bed.length; i++ ) {
            var objOption = new Option('‧'+items.bed[i].item, items.bed[i].settingID);
            document.mainAddForm.bed.options[i+1] = objOption;
        }
    } else {
        document.mainAddForm.bed.options[0] = new Option('沒有符合的飯店床型', '');
    }
}

function loadHotel_bed() {
    var elements = document.getElementById('mainAddForm');
    var thCity = document.mainAddForm.thCity[document.mainAddForm.thCity.selectedIndex].value;
    var thArea = document.mainAddForm.thArea[document.mainAddForm.thArea.selectedIndex].value;
    var thBed = document.mainAddForm.bed[document.mainAddForm.bed.selectedIndex].value;
    var beturl = 'ajax_load_hotel_bed.php';
    if ( thCity == '' && thArea == '' ) return false;
    else if ( thCity != '' && thArea == '' ) var postObject	= {
        'bed':thBed,
        'city':thCity
    };
    else if ( thCity == '' && thArea != '' ) var postObject	= {
        'bed':thBed,
        'area':thArea
    };
    else var postObject	= {
        'bed':thBed,
        'city':thCity,
        'area':thArea
    };
    requestJSONXML(beturl, postObject, bedResult, elements);
}

function bedResult(items, elements) {
    // 移除選項
    for(i = document.mainAddForm.hotel_list.length; i > -1; i--){
        document.mainAddForm.hotel_list.options[i] = null;
    }
    for(i = document.mainAddForm.hotel_type.length; i > -1; i--){
        document.mainAddForm.hotel_type.options[i] = null;
    }
    
    if ( items.hotel.length > 0 ) {
        document.mainAddForm.hotel_list.options[0] = new Option('找到'+items.hotel.length+'間符合條件的飯店', '');
        for ( var i=0; i<items.hotel.length; i++ ) {
            var objOption = new Option('‧'+items.hotel[i].name, items.hotel[i].hotelID);
            document.mainAddForm.hotel_list.options[i+1] = objOption;
        }
    } else {
        document.mainAddForm.hotel_list.options[0] = new Option('沒有找到符合條件的飯店', '');
    }
    
    if ( items.type.length > 0 ) {
        document.mainAddForm.hotel_type.options[0] = new Option('找到'+items.type.length+'種飯店型態', '');
        for ( var i=0; i<items.type.length; i++ ) {
            var objOption = new Option('‧'+items.type[i].item, items.type[i].settingID);
            document.mainAddForm.hotel_type.options[i+1] = objOption;
        }
    } else {
        document.mainAddForm.hotel_type.options[0] = new Option('沒有符合飯店型態', '');
    }
}

function loadHotel_product() {
    var elements = document.getElementById('mainAddForm');
    var thCity = document.mainAddForm.thCity[document.mainAddForm.thCity.selectedIndex].value;
    if ( thCity == '') {
        return false;
    } else {
        var postObject	= {
            'city':thCity
        };
        var beturl = 'ajax_load_hotel.php';
    }
    requestJSONXML(beturl, postObject, productResult, elements);
}

function loadHotel_product_enterprice() {
    var elements = document.getElementById('mainAddForm');
    var thCity = document.mainAddForm.thCity[document.mainAddForm.thCity.selectedIndex].value;
    if ( thCity == '') {
        return false;
    } else {
        var postObject	= {
            'city':thCity
        };
        var beturl = 'ajax_load_hotel_enterprise.php';
    }
    requestJSONXML(beturl, postObject, productResult, elements);
}

function productResult(items, elements) {
    // 移除選項
    for(i = document.mainAddForm.hotel_id.length; i > -1; i--){
        document.mainAddForm.hotel_id.options[i] = null;
    }
    
    if ( items.hotel.length > 0 ) {
        document.mainAddForm.hotel_id.options[0] = new Option('找到'+items.hotel.length+'間符合條件的飯店', '-1');
        for ( var i=0; i<items.hotel.length; i++ ) {
            var objOption = new Option('‧'+items.hotel[i].name, items.hotel[i].hotelID);
            document.mainAddForm.hotel_id.options[i+1] = objOption;
        }
    } else {
        document.mainAddForm.hotel_id.options[0] = new Option('沒有找到符合條件的飯店', '');
    }
}

// 2009-12-29 added by David Pai
// BEGIN
function isNumeric(strvalue) {
    var isCorrect = true;
    if ( strvalue.length > 0 ) {
        for (var i=0; i<strvalue.length; i++) {
            var c = strvalue.charAt(i);
            if ("0123456789".indexOf(c,0) < 0) {
                isCorrect = false;
            }
        }
    } else {
        isCorrect = false;
    }
    return isCorrect;
}

// inputValue 輸入的數值
// sortOrder 第幾個商品的輸入欄位
function caculateReward(inputObject, sortOrder) {
    if ( inputObject.value != '' && !isNumeric(inputObject.value) ) {
        alert('請輸入數字');
        inputObject.value = '';
        return;
    }
	
    var inputValue = isNumeric(inputObject.value) ? parseInt(inputObject.value) : 0;
    // 輸入的數值*100 = 這個商品實際欲折抵的紅利點數
    var useReward = inputValue * 100;
    // 這個商品的使用折抵上限
    var useLimit = parseInt(document.getElementById('use_limit_'+sortOrder).innerHTML);
    // 會員目前擁有的紅利總數
    var memberOwnReward = parseInt(document.getElementById('member_own_reward').innerHTML);
    // 其他商品實際欲折抵之紅利點數的總和
    var i = 1;
    var otherUseReward = 0;
    while ( document.getElementById('use_reward_'+i) ) {
        var otherInputValue = isNumeric(document.getElementById('use_reward_'+i).value) ? parseInt(document.getElementById('use_reward_'+i).value) * 100 : 0;
        if ( i != sortOrder ) {
            otherUseReward += otherInputValue;
        }
        i++;
    }

    if ( useReward > useLimit ) {
        alert('您輸入的數額已超過本商品可使用上限');
        inputObject.value = parseInt(useLimit / 100);
        useReward = useLimit;
    }

    if ( (useReward + otherUseReward) > memberOwnReward ) {
        alert('您擁有的紅利已不足折抵');
        inputObject.value = parseInt((memberOwnReward - otherUseReward) / 100);
        useReward = (memberOwnReward - otherUseReward);
    }
	document.getElementById('real_use_reward_'+sortOrder).value = useReward;
    document.getElementById('this_order_use_reward').innerHTML = otherUseReward + useReward;    
}
// END
