function dump_obj(obj){ var s = ''; for(var i in obj) s += i + '=' + obj[i] + '\n'; return s; } var tripass = {}; tripass.travel_id = 0; tripass.travel = null; tripass.favorites = {}; tripass.days = null; tripass.dg_list = {}; tripass.dg_active = ''; tripass.dg_start = -1; tripass.dg_end = -1; tripass.html = {}; tripass.msg = {}; tripass.gmap = null; tripass.marker = {}; tripass.favorites_select = 0; tripass.days_favs = null; tripass.day_active = 'travelinfo'; tripass.daybox_html = null; tripass.day_inc = -1; tripass.rdays = new Array(); tripass.m_pl = null; tripass.a_pl = null; tripass.n_pl = null; tripass.l1_pl = null; tripass.l2_pl = null; tripass.saving = false; tripass.viewmode = 'all'; tripass.save_timer = 0; tripass.msg['title'] = "景點家 :: 旅遊景點搜尋引擎"; tripass.msg['travel-checking'] = "正在檢查 shikoku 行程,請稍後..."; tripass.msg['travel-loading'] = "正在載入 shikoku 行程 : "; tripass.msg['travel-zero-favorites'] = "這個行程沒有收藏,無法安排行程。"; tripass.msg['travel-nonexists'] = "這個行程不存在。"; tripass.msg['travel-day-inital'] = "這個行程是空的,3 秒後轉回首頁
"; tripass.msg['layout-travel-status-publish'] = "公開"; tripass.msg['layout-travel-status-private'] = "私人"; tripass.msg['layout-travel-status-friend'] = "朋友"; tripass.msg['layout-day-unused-text'] = "未定"; tripass.msg['layout-day-text'] = "Day "; tripass.msg['layout-travel-active-noselect'] = "行程未選定"; tripass.msg['warning-need-select-day'] = "請先選擇行程日,再進行景點安排。"; tripass.msg['warning-need-delete-select-day'] = "請先欲刪除的行程日,再進行刪除。"; tripass.msg['warning-need-keep'] = "只剩下最後一個行程日,不能刪除。"; tripass.msg['warning-delete1'] = "這個行程日尚有 %fav_count 個安排好的景點\n確定要刪除嗎?"; tripass.msg['warning-delete2'] = "這個行程日沒有任何景點\n確定要刪除嗎?"; tripass.msg['warning-export-same-travel'] = "不能匯出到相同的行程中"; tripass.msg['message-exporting'] = "匯出中..."; tripass.msg['message-exported1'] = "成功匯出 %scene_count 景點,有 %scene_dup_count 景點因重複被捨棄,匯出完成"; tripass.msg['message-exported2'] = "全部共 %scene_dup_count 景點因重複被捨棄,匯出結束"; tripass.msg['scene-url'] = ".tripass.net/op/scene?sid="; tripass.html['travel-main'] = '
'; tripass.html['travel-checking'] = '
' + tripass.msg['travel-checking'] + '
'; tripass.html['travel-nonexists'] = '
' + tripass.msg['travel-nonexists'] + '
'; tripass.html['travel-zero-favorites'] = '
' + tripass.msg['travel-zero-favorites'] + '
'; tripass.html['travel-loading'] = '
' + tripass.msg['travel-loading'] + '
'; tripass.html['travel-day-inital'] = '
' + tripass.msg['travel-day-inital'] + '
'; tripass.html['layout'] = '\x3cdiv id\x3d\x22main\x22\x3e\n\t\t\x3cdiv id\x3d\x22head\x22\x3e\r\n\t\t\x3cdiv id\x3d\x22logo\x22\x3e\r\n\t\t\x3ca href\x3d\x22http://www.tripass.net/\x22 \x3e\x3cimg style\x3d\x22border:none;margin-top:22px;float:right;\x22 src\x3d\x22/res//images/plan.png\x22\x3e\x3c/a\x3e\r\n\t\t\x3c/div\x3e\r\n\t\t\x3cdiv id\x3d\x22linkbar\x22\x3e\r\n\t\t\t\x3cdiv id\x3d\x22registertitle\x22\x3e\x3cimg src\x3d\x22res/images/registertitle.png\x22\x3e\x3c/div\x3e\r\n\t\t\t\x3cdiv id\x3d\x22register\x22\x3e\t\t\t\r\n\t\t\t\x3cspan style\x3d\x22color:#FFF;\x22\x3e|\x3ca style\x3d\x22color:#FFF;\x22 href\x3d\x22/op/ktreview\x22\x3e註冊 / 加入會員\x3c/a\x3e\x3c/span\x3e\r\n\t\t\t\x3cspan id\x3d\x22login_text\x22 style\x3d\x22margin-left:10px;color:#FFF;\x22\x3e|\r\n\t\t\t\x3ca id\x3d\x22log_text\x22 style\x3d\x22color:#FFF;\x22 href\x3d\x22javascript:void(0);\x22 onclick\x3d\x22enable_login_form();\x22\x3e登入\x3c/a\x3e|\r\n\t\t\t\x3c/span\x3e\r\n\t\t\t\x3cscript\x3e\r\n\t\t\tfunction enable_login_form()\r\n\t\t\t{\r\n\t\t\t\t$(\x27#register\x27).hide();\t\t\t\t\r\n\t\t\t\t$(\x27#wrap_liginbar\x27).show();\r\n\t\t\t}\r\n\t\t\tfunction disable_login_form()\r\n\t\t\t{\r\n\t\t\t\t$(\x27#register\x27).show();\r\n\t\t\t\t$(\x27#wrap_liginbar\x27).hide();\r\n\t\t\t}\r\n\t\t\t\x3c/script\x3e\r\n\t\t\t\x3c/div\x3e\r\n\t\t\t\x3cdiv id\x3d\x22loginbar\x22 style\x3d\x22margin-top:0px;\x22\x3e\r\n\t\t\t\t\x3cdiv id\x3d\x22wrap_liginbar\x22 style\x3d\x22width:auto;float:right;display:none;\x22\x3e\r\n\t\t\t\t\t\x3cdiv style\x3d\x22color: rgb(153, 153, 153);\x22 class\x3d\x22float_left\x22 id\x3d\x22input_username\x22\x3e\r\n\t\t\t\t\t\t\x3cdiv class\x3d\x22float_left\x22 \x3e\x3cinput type\x3d\x22checkbox\x22 id\x3d\x22remember_password\x22/\x3e\x3c/div\x3e\r\n\t\t\t\t\t\t\x3cdiv class\x3d\x22float_left\x22 style\x3d\x22margin-top: 2px; color: #FFF;\x22 \x3e記住名稱\x3c/div\x3e\r\n\t\t\t\t\t\t\x3cdiv style\x3d\x22clear:both;\x22\x3e\x3cinput type\x3d\x22text\x22 value\x3d\x22\x22 id\x3d\x22username\x22 name\x3d\x22user_account\x22/\x3e\x3c/div\x3e\t\t\t\t\r\n\t\t\t\t\t\x3c/div\x3e\r\n\t\t\t\t\t\x3cdiv style\x3d\x22color: rgb(153, 153, 153);\x22 class\x3d\x22float_left\x22 id\x3d\x22input_password\x22\x3e\r\n\t\t\t\t\t\x3cdiv\x3e\x3cdiv style\x3d\x22padding-top: 1px; color: #FFF; margin-bottom: 2px;text-align:left;\x22 class\x3d\x22float_left\x22\x3e\x3ca href\x3d\x22/op/forgetpwd\x22\x3e忘記密碼\x3c/a\x3e\x3c/div\x3e\x3c/div\x3e\r\n\t\t\t\t\t\x3cdiv style\x3d\x22clear:both;_margin-top:3px;\x22\x3e\x3cinput type\x3d\x22password\x22 name\x3d\x22user_password\x22 id\x3d\x22password\x22/\x3e\x3c/div\x3e\t\t\t\t\r\n\t\t\t\t\t\x3c/div\x3e\r\n\t\t\t\t\t\x3cdiv class\x3d\x22float_left\x22 id\x3d\x22submit_button\x22\x3e\r\n\t\t\t\t\t\x3cspan\x3e\x3cinput type\x3d\x22button\x22 value\x3d\x22\x22 class\x3d\x22submit_login\x22 onclick\x3d\x22login();\x22/\x3e\x3c/span\x3e\r\n\t\t\t\t\t\x3c/div\x3e\r\n\t\t\t\t\t\x3cdiv class\x3d\x22float_left\x22 id\x3d\x22submit_button\x22\x3e\r\n\t\t\t\t\t\x3cspan\x3e\x3cinput type\x3d\x22button\x22 value\x3d\x22\x22 class\x3d\x22cancel_login\x22 onclick\x3d\x22disable_login_form(); \x22/\x3e\x3c/span\x3e\r\n\t\t\t\t\t\x3c/div\x3e\r\n\t\t\t\t\x3c/div\x3e\r\n\t\t\t\t\x3cscript\x3e\r\n\t\t\t\t$(\x27#password\x27).keypress(function(e){\r\n\t\t\t\t\tif(e.which \x3d\x3d 13)\r\n\t\t\t\t\tlogin();\r\n\t\t\t\t});\r\n\t\t\t\tfunction login()\r\n\t\t\t\t{\r\n\t\t\t\t\tvar user_account \x3d $(\x27input#username\x27).val();\r\n\t\t\t\t\tvar user_password \x3d $(\x27input#password\x27).val();\r\n\t\t\t\t\tmook_api({\r\n\t\t\t\t\tevent : function(event, datas){\r\n\t\t\t\t\t\tswitch(event)\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tcase \x27error\x27:\r\n\t\t\t\t\t\t\talert(\x27Error(\x27 + datas.code + \x27) : \x27 + datas.msg);\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tcase \x27success\x27:\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tlocation.reload();\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\top: \x27user_login\x27,\r\n\t\t\t\t\t\tuser_account:user_account,\r\n\t\t\t\t\t\tuser_password:user_password\r\n\t\t\t\t\t}\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t\tfunction cancellogin()\r\n\t\t\t\t{\r\n\t\t\t\t\t$(\x27#wrap_liginbar\x27).hide();\r\n\t\t\t\t\t$(\x27#searchbar_div_inc\x27).show();\r\n\t\t\t\t}\r\n\t\t\t\t\x3c/script\x3e\r\n\t\t\t\x3c/div\x3e\r\n\t\t\x3c/div\x3e\r\n\t\t\x3cdiv id\x3d\x22logo2\x22\x3e\x3ca href\x3d\x22http://www.tripass.net\x22\x3e\x3cimg style\x3d\x22border:none;\x22 src\x3d\x22res/images/litelogo.png\x22\x3e\x3c/a\x3e\x3c/div\x3e\r\n \t\x3c/div\x3e\n\t\x3cdiv style\x3d\x22text-align:right;border-top: 1px solid #28A7E1; height:3px; font-size:12px;margin-top: 2px; margin-bottom:5px;width: 982px;\x22\x3e\x3c/div\x3e\n\t\x3cdiv id\x3d\x22mytrip\x22 style\x3d\x22display:none;clear:both;height:25px;font-size:15px;color:#000;\x22 \x3e\n\t\t\x3cspan\x3e\x3cimg src\x3d\x22res/images/pink.png\x22\x3e\x3c/span\x3e\x3cspan class\x3d\x22p15\x22\x3e《\x3c/span\x3e\x3cspan id\x3d\x22nowtrip\x22 class\x3d\x22p15\x22\x3e\x3c/span\x3e\x3cspan class\x3d\x22p15\x22\x3e》\x3c/span\x3e\n\t\x3c/div\x3e\n\t\x3cdiv id\x3d\x22middle\x22 style\x3d\x22border:none;\x22\x3e\n\t\t\x3cdiv id\x3d\x22googlemap\x22\x3e\n\t\t\t\x3cdiv id\x3d\x22mapcas\x22\x3e\n\t\t\t\x3c/div\x3e\n\t\t\t\x3cdiv id\x3d\x22adwindow\x22\x3e\n\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22tip\x22\x3e\n\t\t\t\t\x3cdiv style\x3d\x22text-align:center;font-size:15px;font-weight:bold;padding-top:8px;\x22\x3e\x3c/div\x3e\n\t\t\t\t\x3cul class\x3d\x22p8\x22 style\x3d\x22text-align:center;\x22\x3e\n\t\t\t\t\t\x3cli\x3e\n\t\t\t\t\t\x3ca href\x3d\x22http://travel.mook.com.tw/book/bookinfo_529.htm\x22\x3e\x3cimg style\x3d\x22padding:5px;border:1px solid #aaa;\x22 src\x3d\x22/res/images/mookbook.jpg\x22\x3e\x3c/a\x3e\x3c/li\x3e\n\t\t\t\t\t\x3cli\x3e京阪神導覽書你只需這一本\x3cbr/\x3e不用再比了!超過1200個嶄新景點與店家訊息完全普查\x3c/li\x3e\n\t\t\t\t\x3c/ul\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\x3c/div\x3e\n\t\t\t\x3cdiv id\x3d\x22infowindow\x22 style\x3d\x22display:none\x22\x3e\n\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22scenename\x22\x3e\x3c/div\x3e\n\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22address\x22\x3e\x3c/div\x3e\n\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22infobox\x22\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22station\x22\x3e\n\t\t\t\t\x3cspan class\x3d\x22stationtxt\x22\x3e交通:\x3c/span\x3e\n\t\t\t\t\x3cspan class\x3d\x22stationbox\x22\x3e\x3c/span\x3e\n\t\t\t\t\x3cspan style\x3d\x22height:1px;\x22\x3e\x3c/span\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3cdiv id\x3d\x22dayinfo\x22 class\x3d\x22func\x22\x3e\n\t\t\t\t\t\x3cdiv class\x3d\x22fs12\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\x3cdiv id\x3d\x22day\x22 class\x3d\x22funcbox pt6\x22\x3eDay 1\x3c/div\x3e\n\t\t\t\t\t\x3cdiv id\x3d\x22morning\x22 class\x3d\x22funcbox mor-used\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\x3cdiv id\x3d\x22afternoon\x22 class\x3d\x22funcbox aft-unused\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\x3cdiv id\x3d\x22night\x22 class\x3d\x22funcbox eve-unused\x22\x3e\x3c/div\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\x3c/div\x3e\n\t\t\x3c/div\x3e\n\t\t\x3cdiv id\x3d\x22bar\x22 class\x3d\x22\x22 style\x3d\x22height:31px;width:980px;background:#28A7E1;overflow:hidden;\x22\x3e\n\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22selectbar\x22\x3e\n\t\t\t\t\t\x3cspan class\x3d\x22spantodiv\x22\x3e選擇行程日\x3c/span\x3e\n\t\t\t\t\t\x3cspan class\x3d\x22spantodiv\x22\x3e\n\t\t\t\t\t\x3cselect id\x3d\x22selectday\x22 class\x3d\x22selectday\x22\x3e\n\t\t\t\t\t\t\x3coption value\x3d\x22travelinfo\x22\x3e行程資訊\x3c/option\x3e\n\t\t\t\t\t\t\x3coption value\x3d\x22airinfo\x22\x3e航班資訊\x3c/option\x3e\n\t\t\t\t\t\x3c/select\x3e\n\t\t\t\t\t\x3c/span\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3cdiv id\x3d\x22view_bar\x22 class\x3d\x22viewbar\x22\x3e\n\t\t\t\t\x3cspan id\x3d\x22view_lodging\x22 class\x3d\x22v_lodging v_item\x22 title\x3d\x22檢視住宿訊息\x22\x3e\x3c/span\x3e\n\t\t\t\t\x3cspan id\x3d\x22view_meal\x22 class\x3d\x22v_meal v_item\x22 title\x3d\x22檢視三餐訊息\x22\x3e\x3c/span\x3e\n\t\t\t\t\x3cspan id\x3d\x22view_morning\x22 class\x3d\x22v_mor v_item\x22 title\x3d\x22檢視上午時段行程\x22\x3e\x3c/span\x3e\n\t\t\t\t\x3cspan id\x3d\x22view_afternoon\x22 class\x3d\x22v_aft v_item\x22 title\x3d\x22檢視下午時段行程\x22\x3e\x3c/span\x3e\n\t\t\t\t\x3cspan id\x3d\x22view_night\x22 class\x3d\x22v_eve v_item\x22 title\x3d\x22檢視晚上時段行程\x22\x3e\x3c/span\x3e\n\t\t\t\t\x3cspan id\x3d\x22view_all\x22 class\x3d\x22v_all v_item\x22 title\x3d\x22檢視完整行程\x22\x3e\x3c/span\x3e\n\t\t\t\t\x3cdiv id\x3d\x22travel_bar\x22 style\x3d\x22margin-left:10px;float:right;\x22\x3e\n\t\t\t\t\t\x3cdiv class\x3d\x22itemspan\x22 style\x3d\x22color:#FFF;float:left;height:19px;padding-top:5px;background:url(res/images/export-icon.png) no-repeat;padding-left:20px;\x22\x3e把本日行程匯入到:\x3c/div\x3e\n\t\t\t\t\t\x3cdiv style\x3d\x22border:1px solid #FFF;float:left;margin-top:2px;\x22\x3e\n\t\t\t\t\t\x3cdiv id\x3d\x22travel_active\x22 class\x3d\x22itemspan\x22 style\x3d\x22color:#FCCB35;float:left;margin:2px 5px 0px;\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\x3cdiv id\x3d\x22travel_active_select\x22 class\x3d\x22itemspan\x22 style\x3d\x22color:#FFF;cursor:pointer;background:url(res/images/sel.png) no-repeat;width:18px;height:18px;display:block;float:left;\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\x3cspan id\x3d\x22import_day\x22 class\x3d\x22exports\x22 title\x3d\x22匯入行程日\x22\x3e\x3c/span\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3cdiv id\x3d\x22initip\x22 style\x3d\x22float:right;margin-right:10px;padding:8px;color:#FFF;background:url(res/images/help.gif) no-repeat 0px 8px;padding-left:18px;\x22\x3e請先到左側選擇行程日,觀看分享者規劃的行程景點\x3c/div\x3e\n\t\t\x3c/div\x3e\n\t\t\x3cdiv id\x3d\x22schedule\x22 class\x3d\x22\x22\x3e\n\t\t\t\x3cdiv id\x3d\x22container\x22 class\x3d\x22container\x22 \x3e\n\t\t\t\t\x3cdiv id\x3d\x22tab_travel\x22 class\x3d\x22travelinfo\x22 style\x3d\x22display:none\x22\x3e\n\t\t\t\t\t\x3cdiv class\x3d\x22infoboxmain\x22 style\x3d\x22float:left;\x22\x3e\n\t\t\t\t\t\t\x3cdiv\x3e\n\t\t\t\t\t\t\t\x3cspan\x3e\x3cimg src\x3d\x22res/images/pink.png\x22\x3e\x3c/span\x3e\n\t\t\t\t\t\t\t\x3cspan class\x3d\x22p15\x22\x3e《\x3c/span\x3e\n\t\t\t\t\t\t\t\x3cspan id\x3d\x22name\x22 class\x3d\x22p15\x22\x3e\x3c/span\x3e\n\t\t\t\t\t\t\t\x3cspan class\x3d\x22p15\x22\x3e》\x3c/span\x3e\n\t\t\t\t\t\t\t\x3cspan class\x3d\x22p15\x22\x3e(\x3c/span\x3e\n\t\t\t\t\t\t\t\x3cspan id\x3d\x22status\x22 class\x3d\x22p15\x22\x3e\x3c/span\x3e\n\t\t\t\t\t\t\t\x3cspan class\x3d\x22p15\x22\x3e)\x3c/span\x3e\n\t\t\t\t\t\t\t\x3cspan class\x3d\x22p15\x22\x3e|\x3c/span\x3e\n\t\t\t\t\t\t\t\x3cspan id\x3d\x22desc\x22 class\x3d\x22p15\x22\x3e\x3c/span\x3e\n\t\t\t\t\t\t\t\x3cspan class\x3d\x22p15\x22\x3e|\x3c/span\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv style\x3d\x22font-size:15px;font-weight:bold;margin:10px 0px;padding-left:20px;\x22\x3e行程分享者個人資料\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv style\x3d\x22margin:10px 0px;\x22\x3e\n\t\t\t\t\t\t\t\x3cdiv style\x3d\x22margin:0px 10px;float:left;\x22\x3e\x3cimg style\x3d\x22padding:3px;border:1px solid #aaa;width:150px;height:150px;\x22 src\x3d\x22http://www.tripass.net/images/user4ad49e0f0c724\x22 title\x3d\x22頭像\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv style\x3d\x22float:left;\x22\x3e\n\t\t\t\t\t\t\t\t\x3cdiv style\x3d\x22margin:10px;\x22\x3e\x3cspan style\x3d\x22color:#28A7E1;\x22\x3e帳號:\x3c/span\x3e\x3cspan class\x3d\x22user_owneraccount\x22\x3eshikoku\x3c/span\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\x3cdiv style\x3d\x22margin:10px;\x22\x3e\x3cspan style\x3d\x22color:#28A7E1;\x22\x3e姓名:\x3c/span\x3e\x3cspan class\x3d\x22user_ownername\x22\x3eshikoku\x3c/span\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\x3cdiv style\x3d\x22margin:10px;\x22\x3e\x3cspan style\x3d\x22color:#28A7E1;\x22\x3e全部公開行程:\x3c/span\x3e\x3cspan class\x3d\x22user_tripassurl\x22\x3e\x3ca href\x3d\x22http://www.tripass.net/shikoku/travel\x22\x3ehttp://www.tripass.net/shikoku/travel\x3c/a\x3e\x3c/span\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\x3cdiv style\x3d\x22margin:10px;\x22\x3e\x3cspan style\x3d\x22color:#28A7E1;\x22\x3e部落格網址:\x3c/span\x3e\x3cspan class\x3d\x22user_blog\x22\x3e\x3ca href\x3d\x22http://tripass.pixnet.net/blog\x22 target\x3d\x22_blank\x22\x3ehttp://tripass.pixnet.net/blog\x3c/a\x3e\x3c/span\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\x3cdiv style\x3d\x22margin:10px;\x22\x3e\x3cspan style\x3d\x22color:#28A7E1;\x22\x3e社群工具網址:\x3c/span\x3e\x3cspan class\x3d\x22user_microblog\x22\x3e\x3ca href\x3d\x22www.facebook.com/tripass\x22 target\x3d\x22_blank\x22\x3ewww.facebook.com/tripass\x3c/a\x3e\x3c/span\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\x3cdiv style\x3d\x22margin:10px;\x22\x3e\x3cspan style\x3d\x22color:#28A7E1;\x22\x3e即時通訊帳號:\x3c/span\x3e\x3cspan class\x3d\x22user_im\x22\x3e\x3c/span\x3e\x3c/div\x3e\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\x3cdiv class\x3d\x22adblock\x22 style\x3d\x22float:right\x22\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22ad7_tripass\x22 class\x3d\x22ad\x22\x3e\n\t\t\t\t\t\t\x3ciframe src\x3d\x22/op/ad7\x22 width\x3d\x22300\x22 height\x3d\x22100\x22 marginwidth\x3d\x220\x22 #marginheight\x3d\x220\x22 scrolling\x3d\x22no\x22 frameborder\x3d\x220\x22 align\x3d\x22center\x22\x3e\x3c/iframe\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22ad8_tripass\x22 class\x3d\x22ad\x22\x3e\n\t\t\t\t\t\t\x3ciframe src\x3d\x22/op/ad8\x22 width\x3d\x22300\x22 height\x3d\x22100\x22 marginwidth\x3d\x220\x22 #marginheight\x3d\x220\x22 scrolling\x3d\x22no\x22 frameborder\x3d\x220\x22 align\x3d\x22center\x22\x3e\x3c/iframe\x3e\n\t\t\t\t\t\t\x3c/div\x3e\t\t\t\t\t\t\n\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3cdiv id\x3d\x22tab_flight\x22 class\x3d\x22flight\x22 style\x3d\x22display:none\x22\x3e\n\t\t\t\t\t\x3cdiv class\x3d\x22flightboxmain\x22 style\x3d\x22float:left;\x22\x3e\n\t\t\t\t\t\t\x3cdiv class\x3d\x22flighttitle\x22\x3e航班資訊\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv class\x3d\x22flightblock\x22\x3e\x3ctextarea class\x3d\x22mtextarea\x22 id\x3d\x22flight\x22 disabled\x3e\x3c/textarea\x3e\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv style\x3d\x22height:1px;clear:both;\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\x3cdiv class\x3d\x22adblock\x22 style\x3d\x22float:right\x22\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22ad5_tripass\x22 class\x3d\x22ad\x22\x3e\n\t\t\t\t\t\t\x3ciframe src\x3d\x22/op/ad5\x22 width\x3d\x22300\x22 height\x3d\x22100\x22 marginwidth\x3d\x220\x22 #marginheight\x3d\x220\x22 scrolling\x3d\x22no\x22 frameborder\x3d\x220\x22 align\x3d\x22center\x22\x3e\x3c/iframe\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22ad6_tripass\x22 class\x3d\x22ad\x22\x3e\n\t\t\t\t\t\t\x3ciframe src\x3d\x22/op/ad6\x22 width\x3d\x22300\x22 height\x3d\x22100\x22 marginwidth\x3d\x220\x22 #marginheight\x3d\x220\x22 scrolling\x3d\x22no\x22 frameborder\x3d\x220\x22 align\x3d\x22center\x22\x3e\x3c/iframe\x3e\n\t\t\t\t\t\t\x3c/div\x3e\t\t\t\t\t\t\n\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3cdiv id\x3d\x22tab_daybox\x22 class\x3d\x22daybox\x22 style\x3d\x22display:none\x22\x3e\t\t\t\t\t\n\t\t\t\t\t\x3cdiv class\x3d\x22dayboxmain\x22 style\x3d\x22float:left;\x22\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22meal_box\x22 class\x3d\x22meal breakfast\x22\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22mealtitle m\x22\x3e上午行程 MEMO\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22mealblock\x22\x3e\x3ctextarea class\x3d\x22mtextarea\x22 id\x3d\x22breakfast\x22 disabled\x3e\x3c/textarea\x3e\x3c/div\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22morning_box\x22 class\x3d\x22box morning\x22\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22boxtitle mortitle\x22\x3e\x3cimg src\x3d\x22res/images/mortitle.png\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22boxcontent\x22\x3e\n\t\t\t\t\t\t\t\t\x3cul id\x3d\x22day_morning\x22\x3e\n\t\t\t\t\t\t\t\t\t\x3cli id\x3d\x22\x22 class\x3d\x22d_li li_opened\x22 style\x3d\x22display:none\x22\x3e\n\t\t\t\t\t\t\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22basic\x22\x3e\n\t\t\t\t\t\t\t\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22lifl\x22\x3e\n\t\t\t\t\t\t\t\t\t\t\t\t\x3cspan class\x3d\x22priority\x22\x3e\x3c/span\x3e\n\t\t\t\t\t\t\t\t\t\t\t\t\x3cspan class\x3d\x22d_scenename\x22\x3e\x3c/span\x3e\n\t\t\t\t\t\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\t\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22lifr\x22\x3e\n\t\t\t\t\t\t\t\t\t\t\t\t\x3cspan id\x3d\x22cmd_expand\x22 class\x3d\x22opened d_icon\x22 title\x3d\x22展開\x22\x3e\x3c/span\x3e\n\t\t\t\t\t\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\t\t\t\t\x3cdiv id\x3d\x22\x22 class\x3d\x22extcontent\x22\x3e\n\t\t\t\t\t\t\t\t\t\t\t\x3cdiv class\x3d\x22ext_img\x22\x3e\x3cimg src\x3d\x22\x22 class\x3d\x22sceneimg\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\t\t\t\x3cdiv id\x3d\x22info\x22 class\x3d\x22ext_txt\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\t\t\t\x3cdiv class\x3d\x22ext\x22\x3e\x3cspan class\x3d\x22txt\x22\x3e地址:\x3c/span\x3e\x3cspan class\x3d\x22ext_address\x22\x3e\x3c/span\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\t\t\t\x3cdiv class\x3d\x22ext\x22\x3e\x3cspan class\x3d\x22txt\x22\x3e交通:\x3c/span\x3e\x3cspan class\x3d\x22ext_station\x22\x3e\x3c/span\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\t\t\t\x3cdiv class\x3d\x22ext\x22\x3e\x3cspan class\x3d\x22txt\x22\x3e網址:\x3c/span\x3e\x3cspan class\x3d\x22ext_url\x22\x3e\x3ca href\x3d\x22\x22\x3e\x3c/a\x3e\x3c/span\x3e\x3c/div\x3e\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\x3cdiv class\x3d\x22ext\x22\x3e\x3ca class\x3d\x22d_scenefullinfo txt\x22 href\x3d\x22\x22 style\x3d\x22text-decoration:underline;\x22 target\x3d\x22_blank\x22 title\x3d\x22觀看此景點完整資訊\x22\x3e觀看此景點完整資訊\x3c/a\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\t\t\t\x3c/li\x3e\n\t\t\t\t\t\t\t\t\x3c/ul\x3e\n\t\t\t\t\t\t\t\t\x3cdiv style\x3d\x22height:1px;clear:both;\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv style\x3d\x22height:1px;clear:both;\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22meal_box\x22 class\x3d\x22meal luncht\x22\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22mealtitle a\x22\x3e下午行程 MEMO\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22mealblock\x22\x3e\x3ctextarea class\x3d\x22mtextarea\x22 id\x3d\x22lunch\x22 disabled\x3e\x3c/textarea\x3e\x3c/div\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22afternoon_box\x22 class\x3d\x22box afternoon\x22\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22boxtitle afttitle\x22\x3e\x3cimg src\x3d\x22res/images/afttitle.png\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22boxcontent\x22\x3e\n\t\t\t\t\t\t\t\t\x3cul id\x3d\x22day_afternoon\x22\x3e\n\t\t\t\t\t\t\t\t\x3c/ul\x3e\n\t\t\t\t\t\t\t\t\x3cdiv style\x3d\x22height:1px;clear:both;\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv style\x3d\x22height:1px;clear:both;\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22meal_box\x22 class\x3d\x22meal dinner\x22\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22mealtitle n\x22\x3e晚上行程 MEMO\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22mealblock\x22\x3e\x3ctextarea class\x3d\x22mtextarea\x22 id\x3d\x22dinner\x22 disabled\x3e\x3c/textarea\x3e\x3c/div\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22night_box\x22 class\x3d\x22box night\x22\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22boxtitle nighttitle\x22\x3e\x3cimg src\x3d\x22res/images/nighttitle.png\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22boxcontent\x22\x3e\n\t\t\t\t\t\t\t\t\x3cul id\x3d\x22day_night\x22\x3e\n\t\t\t\t\t\t\t\t\x3c/ul\x3e\n\t\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv style\x3d\x22height:1px;clear:both;\x22\x3e\x3c/div\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22lodging_box\x22 class\x3d\x22meal\x22\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22lodgetitle\x22\x3e住宿安排\x3c/div\x3e\n\t\t\t\t\t\t\t\x3cdiv class\x3d\x22mealblock\x22\x3e\x3ctextarea class\x3d\x22mtextarea\x22 id\x3d\x22lodge\x22 disabled\x3e\x3c/textarea\x3e\x3c/div\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\x3cdiv class\x3d\x22adblock\x22 style\x3d\x22float:right\x22\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22ad1_tripass\x22 class\x3d\x22ad\x22\x3e\n\t\t\t\t\t\t\x3ciframe src\x3d\x22/op/ad1\x22 width\x3d\x22300\x22 height\x3d\x22100\x22 marginwidth\x3d\x220\x22 #marginheight\x3d\x220\x22 scrolling\x3d\x22no\x22 frameborder\x3d\x220\x22 align\x3d\x22center\x22\x3e\x3c/iframe\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22ad2_tripass\x22 class\x3d\x22ad\x22\x3e\n\t\t\t\t\t\t\x3ciframe src\x3d\x22/op/ad2\x22 width\x3d\x22300\x22 height\x3d\x22100\x22 marginwidth\x3d\x220\x22 #marginheight\x3d\x220\x22 scrolling\x3d\x22no\x22 frameborder\x3d\x220\x22 align\x3d\x22center\x22\x3e\x3c/iframe\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22ad3_tripass\x22 class\x3d\x22ad\x22\x3e\n\t\t\t\t\t\t\x3ciframe src\x3d\x22/op/ad3\x22 width\x3d\x22300\x22 height\x3d\x22100\x22 marginwidth\x3d\x220\x22 #marginheight\x3d\x220\x22 scrolling\x3d\x22no\x22 frameborder\x3d\x220\x22 align\x3d\x22center\x22\x3e\x3c/iframe\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\t\x3cdiv id\x3d\x22ad4_tripass\x22 class\x3d\x22ad\x22\x3e\n\t\t\t\t\t\t\x3ciframe src\x3d\x22/op/ad4\x22 width\x3d\x22300\x22 height\x3d\x22100\x22 marginwidth\x3d\x220\x22 #marginheight\x3d\x220\x22 scrolling\x3d\x22no\x22 frameborder\x3d\x220\x22 align\x3d\x22center\x22\x3e\x3c/iframe\x3e\n\t\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3cdiv style\x3d\x22height:1px;\x22\x3e\x3c/div\x3e\n\t\t\t\x3c/div\x3e\n\t\t\x3c/div\x3e\n\t\x3c/div\x3e\n\t\x3cdiv id\x3d\x22labelbg\x22\x3e\x3c/div\x3e\n\t\x3cdiv id\x3d\x22labeldiv\x22 style\x3d\x22opacity:100%;display:none;z-index:1000;overflow:auto;border:1px solid #999999;background-color:#FFF;padding:2px;\x22\x3e\n\t\t\x3cdiv id\x3d\x22labeldivtop\x22\x3e\n\t\t\t\t\x3cdiv style\x3d\x22width:20px;height:14px;margin-bottom:3px;float:right;\x22\x3e\n\t\t\t\t\t\x3cspan id\x3d\x22newlabelclose\x22 style\x3d\x22cursor:pointer;padding:0px 5px;color:#444;float:right;border:1px solid #C3D9FF ;margin-right:1px;\x22\x3ex\x3c/span\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3cdiv style\x3d\x22padding-bottom:2px;padding-left:5px;margin-bottom:3px;border-bottom:1px solid #ccc;color:blue;\x22\x3e\n\t\t\t\t\t\x3cdiv style\x3d\x22margin-right:5px;margin-bottom:3px;\x22\x3e\n\t\t\t\t\t\t\x3cinput id\x3d\x22inputlabelel\x22 type\x3d\x22text\x22 name\x3d\x22inputlabelel\x22 style\x3d\x22width:80px;\x22\x3e\n\t\t\t\t\t\t\x3cinput type\x3d\x22button\x22 id\x3d\x22inputsaveel\x22 value\x3d\x22新增\x22 style\x3d\x22width:40px;margin-left:5px;\x22\x3e\n\t\t\t\t\t\x3c/div\x3e\n\t\t\t\t\x3c/div\x3e\n\t\t\x3c/div\x3e\t\n\t\t\x3cdiv id\x3d\x22labelpanel\x22 style\x3d\x22opacity:100%;display:none;z-index:1000;overflow:auto;border:0px solid #999999;background-color:#FFF;padding:2px;\x22\x3e\x3c/div\x3e\n\t\x3c/div\x3e\n\t\x3cdiv id\x3d\x22inittip\x22 style\x3d\x22display:none;font-size:15px;text-align:center;color:#000;font-weight:bold;\x22\x3e\n\t\x3cp\x3e\x3c/p\x3e\n\t\x3cp class\x3d\x27cou\x27\x3e本行程目前共有 \x3cspan class\x3d\x22daycou\x22\x3e幾\x3c/span\x3e 個行程日,共有 \x3cspan class\x3d\x22scenecou\x22\x3e幾\x3c/span\x3e 個景點。\x3c/p\x3e\n\t\x3cp\x3e請在下方藍色工作列點選行程日開始瀏覽\x3cspan class\x3d\x22closex\x22 style\x3d\x22float:right;background:#FFF;cursor:pointer;margin-top:4px;\x22\x3e\x3cimg src\x3d\x22res/images/close.gif\x22\x3e\x3c/span\x3e\x3c/p\x3e\n\t\x3c/div\x3e\n\t\x3cdiv id\x3d\x22footer\x22\x3e\r\n\t\x3cdiv id\x3d\x22footer_left\x22\x3e\r\n\t\t\x3cdiv class\x3d\x22footeritem\x22\x3e | \x3ca href\x3d\x22http://www.tripass.net/op/aboutus\x22\x3e 關於我們 \x3c/a\x3e | \x3ca href\x3d\x22http://www.tripass.net/op/copyright\x22\x3e 著作權聲明 \x3c/a\x3e | \x3ca href\x3d\x22http://www.tripass.net/op/privacy\x22\x3e隱私權聲明\x3c/a\x3e| \x3ca href\x3d\x22mailto:service@tripass.net\x22\x3e 企業合作 \x3c/a\x3e | \x3ca href\x3d\x22http://www.tripass.net/op/usermanual_1\x22\x3e 使用手冊 \x3c/a\x3e |\x3c/div\x3e\r\n\t\x3c/div\x3e\r\n\t\x3cdiv class\x3d\x22footeritem\x22 id\x3d\x22footer_right\x22\x3e©2009 景點家 All Rights Reserved\x3c/div\x3e\r\n\x3c/div\x3e\r\n\x3cscript type\x3d\x22text/javascript\x22\x3e\r\n var _gaq \x3d _gaq || [];\r\n _gaq.push([\x27_setAccount\x27, \x27UA-9923970-1\x27]);\r\n _gaq.push([\x27_setDomainName\x27, \x27.tripass.net\x27]);\r\n _gaq.push([\x27_trackPageview\x27]);\r\n (function() {\r\n var ga \x3d document.createElement(\x27script\x27); ga.type \x3d \x27text/javascript\x27; ga.async \x3d true;\r\n ga.src \x3d (\x27https:\x27 \x3d\x3d document.location.protocol ? \x27https://ssl\x27 : \x27http://www\x27) + \x27.google-analytics.com/ga.js\x27;\r\n var s \x3d document.getElementsByTagName(\x27script\x27)[0]; s.parentNode.insertBefore(ga, s);\r\n })();\r\n\x3c/script\x3e\n\x3c/div\x3e\n\x3cscript\x3e\n$(document).ready(function(){\n\tif($(\x27#mytrip\x27).is(\x27:hidden\x27))\n\t{\n\t$(\x27#selectday\x27).change(function(){\n\t\tvar nowtrip \x3d $(\x27#tab_travel #name\x27).text();\n\t\t$(\x27#nowtrip\x27).text(nowtrip);\n\t\t$(\x27#mytrip\x27).fadeIn();\n\t});\n\t}\n\t$(\x27#inittip\x27).click(function(){\n\t\t$(\x22#labelbg\x22).css({\n\t\t\tbackground:\x27transparent\x27,\n\t\t\topacity:\x270.75\x27,\n\t\t\tfilter: \x27alpha(opacity\x3d75)\x27,\n\t\t\tleft: \x270px\x27,\n\t\t\ttop: \x270px\x27,\n\t\t\twidth: $(document).width() + \x27px\x27,\n\t\t\theight: $(document).height() + \x27px\x27\n\t\t});\n\t\tif($.browser.msie){\n\t\t\t$(\x22#labelbg\x22).css({position:\x27absolute\x27});\n\t\t} else {\n\t\t\t$(\x22#labelbg\x22).css({position:\x27fixed\x27});\n\t\t}\n\t\t$(\x22#labelbg\x22).show();\n\t\t$(\x22#labelbg\x22).click(function(){\n\t\t\t$(\x22#inittip\x22)\n\t\t\t\t.fadeOut();\n\t\t\t$(this).hide();\n\t\t});\n\t\tvar $labeldiv \x3d $(\x27#inittip\x27);\n\t\t$labeldiv.css({\n\t\t\toverflow: \x27hidden\x27,\n\t\t\tbackground: \x27#EAC61E\x27,\n\t\t\tfilter: \x27alpha(opacity\x3d75)\x27,\n\t\t\topacity: \x270.75\x27,\n\t\t\tborder:\x27solid 1px #444\x27,\n\t\t\theight: \x2775px\x27,\n\t\t\twidth: \x27600px\x27,\n\t\t\tleft: ($(\x27#main\x27).width()/2-300) + \x27px\x27,\n\t\t\ttop: ($(document).height()/2-25) + \x27px\x27\n\t\t});\n\t\tif($.browser.msie){\n\t\t\t$labeldiv.css({position:\x27absolute\x27});\n\t\t}else{\n\t\t\t$labeldiv.css({position:\x27absolute\x27});\n\t\t}\n\t\t$labeldiv.show();\n\t});\n\t$(\x27#inittip\x27).trigger(\x27click\x27);\n\t$(\x27.closex\x27).click(function(){\n\t\t$(\x22#labelbg\x22).trigger(\x27click\x27);\n\t});\n});\n\x3c/script\x3e'; tripass.html['layout-tab-district'] = '
'; tripass.html['layout-tab-scene'] = '
  • '; tripass.html['layout-infowin-image'] = ''; tripass.html['layout-select-day'] = ''; tripass.html['layout-travel-active-noselect'] = '' + tripass.msg['layout-travel-active-noselect'] + ''; tripass.html['layout-travel-active-select'] = '%travel_title'; tripass.html['message-exporting'] = '
    ' + tripass.msg['message-exporting'] + '
    '; tripass.html['url-maker-shadow1'] = "/res//images/mapicon/shadow.png"; tripass.html['url-maker-morning'] = "/res/images/mapicon/marker-m-%suffix.png"; tripass.html['url-maker-afternoon'] = "/res/images/mapicon/marker-a-%suffix.png"; tripass.html['url-maker-night'] = "/res/images/mapicon/marker-e-%suffix.png"; tripass.html['url-maker-district-used'] = "/res/images/mapicon/marker-g-%suffix.png"; tripass.html['url-maker-district-select'] = "/res/images/mapicon/marker-y.png"; tripass.html['url-maker-district-active'] = "/res/images/mapicon/marker-b.png"; document.title = tripass.msg['title']; tripass.add_favorites = function (favorites) { var favorites_id = favorites['travel_favorites_id']; this.favorites[favorites_id] = favorites; }; tripass.bind_favorites_scene = function (favorites_id, scene){ var scene_id = scene['scene_id']; this.favorites[favorites_id].scene = scene; this.cale_dg(favorites_id, scene['scene_district']); }; tripass.cale_dg = function (favorites_id, district){ if(typeof(this.dg_list[district]) == 'undefined') { this.dg_list[district] = {}; this.dg_list[district].select = false; this.dg_list[district].favorites = new Array(); this.dg_list[district].favorites.push(favorites_id); } else { this.dg_list[district].favorites.push(favorites_id); } }; tripass.each_district_group = function(callback){ if(typeof(callback) != 'function') return ; for(var dg_name in this.dg_list) { var dg_select = this.dg_list[dg_name].select; var dg_favorites_list = this.dg_list[dg_name].favorites; var dg_count = dg_favorites_list.length; callback(dg_name, dg_count, dg_select); } }; tripass.get_favorites = function(favorites_id){ return this.favorites[favorites_id]; }; tripass.get_favorites_scene = function(favorites_id){ return this.favorites[favorites_id].scene; }; tripass.each_favorites = function(callback){ if(typeof(callback) != 'function') return ; for(var favorites_id in this.favorites) { var favorites = this.favorites[favorites_id]; callback(favorites, favorites.scene); } }; tripass.each_dg_favorites = function(dg_name, callback){ if(typeof(callback) != 'function') return ; var dg_favorites_list = this.dg_list[dg_name].favorites; for(var i in dg_favorites_list) { var favorites_id = dg_favorites_list[i]; var favorites = this.favorites[favorites_id]; callback(favorites, favorites.scene); } }; tripass.get_dg_name_list = function(){ var dg_name_list = new Array(); for(var dg_name in this.dg_list) dg_name_list.push(dg_name); return dg_name_list; }; tripass.setup_daybox_html = function(){ var el = $('#day_morning'); tripass.daybox_html = el.html(); el.html(''); }; tripass.unbind_scene_to_day = function(favorites_id){ var favorites = tripass.favorites[favorites_id]; var prev_day_id = favorites['travel_day_id']; if(prev_day_id != 0) { var prev_index = tripass.get_day_number(prev_day_id); var prev_day = tripass.days_favs[prev_index]; var prev_status = favorites['travel_favorites_status']; if(prev_status == 'unused') { alert('error: favorites_id=' + favorites_id + ', day_id=' + prev_day_id + ', time:' + prev_status); return ; } var prev_day_time = prev_day[prev_status]; for(var i in prev_day_time) { var day_fav = prev_day_time[i]; if(day_fav['travel_favorites_id'] == favorites_id) { prev_day_time.splice(i, 1); break; } } if(tripass.day_active == prev_index) { $('#day_' + prev_status).find('li#' + favorites_id).remove(); } favorites['travel_day_id'] = 0; favorites['travel_favorites_status'] = 'unused'; tripass.map_make_marker(favorites_id); } else { favorites['travel_day_id'] = 0; favorites['travel_favorites_status'] = 'unused'; } tripass.build_day_fav_order(); }; tripass.bind_scene_to_day = function(favorites_id, time){ var current_index = parseInt(tripass.day_active); var favorites = tripass.favorites[favorites_id]; var day = tripass.days_favs[current_index]; favorites['travel_day_id'] = day['day_id']; favorites['travel_favorites_status'] = time; day[time].push(favorites); tripass.build_day_fav_order(); if(tripass.day_active == current_index) { tripass.make_day_fav(favorites); } }; tripass.make_day_fav = function(favorites) { var scene = favorites.scene; var favorites_id = favorites['travel_favorites_id']; var time = favorites['travel_favorites_status']; var letter = String.fromCharCode("a".charCodeAt(0) + parseInt(favorites['travel_favorites_order'])); var image = tripass.html['url-maker-' + time].replace('%suffix', letter); var dayinfo = $(tripass.daybox_html); dayinfo.attr('id', favorites_id); dayinfo.show(); dayinfo.find('.priority').css({backgroundImage: 'url(' + image + ')'}); dayinfo.find('.priority').data('favorites_id', favorites_id); dayinfo.find('.d_scenename').text(scene['scene_name']); var scene_country = scene['scene_country']; var country_link; switch(scene_country){ case '日本': country_link = 'http://www'; break; case '香港': country_link = 'http://hongkong'; break; case '澳門': country_link = 'http://macau'; break; case '泰國': country_link = 'http://thailand'; break; case '越南': country_link = 'http://vietnam'; break; case '中國': country_link = 'http://shanghai'; break; case '台灣': country_link = 'http://taiwan'; break; case '澳洲': country_link = 'http://australia'; break; } dayinfo.find('.d_scenefullinfo').attr('href', country_link+tripass.msg['scene-url']+scene['scene_id']); dayinfo.find('.sceneimg').attr('src', 'http://www.tripass.net/thumbs/' + favorites['image_uid']); dayinfo.find('#info').text(scene['scene_info']); dayinfo.find('.ext_address').text(scene['scene_address']); dayinfo.find('.ext_station').text(scene['scene_station']); dayinfo.find('.ext_url').text(scene['scene_url']); //dayinfo.find('.ext_nation').text(scene['scene_country']); // dayinfo.find('.ext_tags').text(scene['scene_station']); if (scene['scene_url']=='') dayinfo.find('.ext_url').parent().hide(); var sel = '#day_' + time; $(sel).append(dayinfo); dayinfo.find('#cmd_expand').data('time', time); dayinfo.find('#cmd_expand').data('favorites_id', favorites_id); dayinfo.find('#cmd_expand').click(function(){ var el = $(this); var time = el.data('time'); var favorites_id = el.data('favorites_id'); var sel = $('#day_' + time).find('li#' + favorites_id); sel.toggleClass('li_opened'); }); dayinfo.find('.priority').click(function(){ var el = $(this); var favorites_id = el.data('favorites_id'); tripass.favorites_select = favorites_id; tripass.show_scene_infowindow(); var marker = tripass.get_marker(favorites_id); tripass.gmap.setCenter(marker.getLatLng()); }); } tripass.build_day_fav_order = function(){ for(var i in tripass.days_favs) { var day_favs = tripass.days_favs[i]; for(var m in day_favs['morning']) { var favorites = day_favs['morning'][m]; favorites['travel_favorites_order'] = m; } for(var a in day_favs['afternoon']) { var favorites = day_favs['afternoon'][a]; favorites['travel_favorites_order'] = a; } for(var n in day_favs['night']) { var favorites = day_favs['night'][n]; favorites['travel_favorites_order'] = n; } } }; tripass.init_day_fav = function(){ //var el = $('#schedule'); /*Chris modified*/ var el = $('#bar'); el.find('#view_lodging').click(function(){ $('#lodging_box').show(); $('#tab_daybox #meal_box').hide(); $('#morning_box').hide(); $('#afternoon_box').hide(); $('#night_box').hide(); }); el.find('#view_meal').click(function(){ $('#lodging_box').hide(); $('#tab_daybox #meal_box').show(); $('#morning_box').hide(); $('#afternoon_box').hide(); $('#night_box').hide(); }); el.find('#view_morning').click(function(){ $('#lodging_box').hide(); $('#tab_daybox #meal_box').hide(); $('#morning_box').show(); $('#afternoon_box').hide(); $('#night_box').hide(); tripass.map_center_travel_pack('morning'); }); el.find('#view_afternoon').click(function(){ $('#lodging_box').hide(); $('#tab_daybox #meal_box').hide(); $('#morning_box').hide(); $('#afternoon_box').show(); $('#night_box').hide(); tripass.map_center_travel_pack('afternoon'); }); el.find('#view_night').click(function(){ $('#lodging_box').hide(); $('#tab_daybox #meal_box').hide(); $('#morning_box').hide(); $('#afternoon_box').hide(); $('#night_box').show(); tripass.map_center_travel_pack('night'); }); el.find('#view_all').click(function(){ $('#lodging_box').show(); $('#tab_daybox #meal_box').show(); $('#morning_box').show(); $('#afternoon_box').show(); $('#night_box').show(); tripass.map_center_travel_pack('all'); }); }; tripass.link_day_favorites = function(){ tripass.days_favs = new Array(); for(var index in tripass.days) { var day = tripass.days[index]; var day_id = day['travel_day_id']; var day_favs = { day_id: day_id, morning: new Array(), afternoon: new Array(), night: new Array() }; for(var favorites_id in tripass.favorites) { var favorites = tripass.favorites[favorites_id]; var travel_day_id = favorites['travel_day_id']; var status = favorites['travel_favorites_status']; if(travel_day_id == day_id && status!='unused') { day_favs[status].push(favorites); } } for(var status in day_favs) { var time = day_favs[status]; if(time instanceof Array) { time.sort(function(a, b){ /* if(a['travel_favorites_order'] == b['travel_favorites_order']) { var d1 = a['travel_favorites_times'].replace(/-/g, '/'); var d2 = b['travel_favorites_times'].replace(/-/g, '/'); return (Date.parse(d1) - Date.parse(d2)); } else if(a['travel_favorites_order'] == 0) { return 1; } else if(b['travel_favorites_order'] == 0) { return -1; } */ return (a['travel_favorites_order'] - b['travel_favorites_order']); }); } } tripass.days_favs.push(day_favs); } } tripass.get_day_number = function(travel_day_id) { for(var index in tripass.days) { if(travel_day_id == tripass.days[index]['travel_day_id']) return index; } return -1; } tripass.create_marker = function(type, suffix, latlng){ // var letter = String.fromCharCode("A".charCodeAt(0) + index); var icon = new GIcon(G_DEFAULT_ICON); if(type == 'district-select') { icon.image = tripass.html['url-maker-district-select']; icon.shadow = tripass.html['url-maker-shadow1']; icon.iconSize = new GSize(20, 34); icon.shadowSize = new GSize(37, 34); icon.iconAnchor = new GPoint(9, 34); icon.infoWindowAnchor = new GPoint(9, 2); } else if(type == 'district-active') { icon.image = tripass.html['url-maker-district-active']; icon.shadow = tripass.html['url-maker-shadow1']; icon.iconSize = new GSize(20, 34); icon.shadowSize = new GSize(37, 34); icon.iconAnchor = new GPoint(9, 34); icon.infoWindowAnchor = new GPoint(9, 2); } else if(type == 'district-used') { icon.image = tripass.html['url-maker-' + type].replace('%suffix', suffix); icon.shadow = tripass.html['url-maker-shadow1']; icon.iconSize = new GSize(20, 34); icon.shadowSize = new GSize(37, 34); icon.iconAnchor = new GPoint(9, 34); icon.infoWindowAnchor = new GPoint(9, 2); } else if(type == 'morning') { var letter = String.fromCharCode("a".charCodeAt(0) + parseInt(suffix)); icon.image = tripass.html['url-maker-' + type].replace('%suffix', letter); // icon.shadow = "/res/images/mapicon/shadow.png"; icon.iconSize = new GSize(32, 37); // icon.shadowSize = new GSize(37, 34); icon.iconAnchor = new GPoint(16, 37); icon.imageMap = [26,4,28,5,28,26,28,28,22,28,15,34,10,28,4,28,3,27,3,4,4,3]; icon.infoWindowAnchor = new GPoint(16, 2); } else if(type == 'afternoon') { var letter = String.fromCharCode("a".charCodeAt(0) + parseInt(suffix)); icon.image = tripass.html['url-maker-' + type].replace('%suffix', letter); // icon.shadow = "/res/images/mapicon/shadow.png"; icon.iconSize = new GSize(32, 37); // icon.shadowSize = new GSize(37, 34); icon.iconAnchor = new GPoint(16, 37); icon.imageMap = [26,4,28,5,28,26,28,28,22,28,15,34,10,28,4,28,3,27,3,4,4,3]; icon.infoWindowAnchor = new GPoint(16, 2); } else if(type == 'night') { var letter = String.fromCharCode("a".charCodeAt(0) + parseInt(suffix)); icon.image = tripass.html['url-maker-' + type].replace('%suffix', letter); // icon.shadow = "/res/images/mapicon/shadow.png"; icon.iconSize = new GSize(32, 37); // icon.shadowSize = new GSize(37, 34); icon.iconAnchor = new GPoint(16, 37); icon.imageMap = [26,4,28,5,28,26,28,28,22,28,15,34,10,28,4,28,3,27,3,4,4,3]; icon.infoWindowAnchor = new GPoint(16, 2); } var marker = new GMarker(latlng, { 'icon': icon }); return marker; }; tripass.get_marker = function(favorites_id){ return tripass.marker[favorites_id]; }; tripass.set_marker = function(favorites_id, marker){ if(typeof(tripass.marker[favorites_id]) != 'undefined') { tripass.gmap.removeOverlay(tripass.marker[favorites_id]); } tripass.marker[favorites_id] = marker; tripass.gmap.addOverlay(marker); }; tripass.remove_marker = function(favorites_id){ if(typeof(tripass.marker[favorites_id]) != 'undefiend') { tripass.gmap.removeOverlay(tripass.marker[favorites_id]); delete tripass.marker[favorites_id]; } }; tripass.remove_all_marker = function(){ for(var favorites_id in tripass.marker) delete tripass.marker[favorites_id]; tripass.marker = {}; tripass.gmap.clearOverlays(); }; tripass.show_favorites_day = function(){ var favorites = tripass.get_favorites(tripass.favorites_select); var travel_day_id = favorites['travel_day_id']; var dayinfo = $('#googlemap #infowindow #dayinfo'); dayinfo.find('#morning').removeClass('mor-used'); dayinfo.find('#morning').removeClass('mor-unused'); dayinfo.find('#afternoon').removeClass('aft-used'); dayinfo.find('#afternoon').removeClass('aft-unused'); dayinfo.find('#night').removeClass('eve-used'); dayinfo.find('#night').removeClass('eve-unused'); var time = favorites['travel_favorites_status']; if(time == 'morning') { dayinfo.find('#morning').addClass('mor-used'); dayinfo.find('#afternoon').addClass('aft-unused'); dayinfo.find('#night').addClass('eve-unused'); } else if(time == 'afternoon') { dayinfo.find('#morning').addClass('mor-unused'); dayinfo.find('#afternoon').addClass('aft-used'); dayinfo.find('#night').addClass('eve-unused'); } else if(time == 'night') { dayinfo.find('#morning').addClass('mor-unused'); dayinfo.find('#afternoon').addClass('aft-unused'); dayinfo.find('#night').addClass('eve-used'); } else { dayinfo.find('#morning').addClass('mor-unused'); dayinfo.find('#afternoon').addClass('aft-unused'); dayinfo.find('#night').addClass('eve-unused'); } if(travel_day_id == 0) { dayinfo.find('#day').text(tripass.msg['layout-day-unused-text']); } else { dayinfo.find('#day').text(tripass.msg['layout-day-text'] + (parseInt(tripass.get_day_number(travel_day_id))+1)); } }; tripass.show_scene_infowindow = function(){ if(tripass.favorites_select > 0) { var favorites = tripass.get_favorites(tripass.favorites_select); var scene = tripass.get_favorites_scene(tripass.favorites_select); $('#googlemap #adwindow').hide(); var el = $('#googlemap #infowindow'); el.show(); el.find('.scenename').text(scene['scene_name']); el.find('.address').text(scene['scene_address']); var scene_image = $(tripass.html['layout-infowin-image']); scene_image.attr('href', 'http://www.tripass.net/images/' + favorites['image_uid']); scene_image.find('.sceneimg').attr('src', 'http://www.tripass.net/thumbs/' + favorites['image_uid']); el.find('.infobox').html(scene_image); el.find('.infobox').append(scene['scene_info']); el.find('.stationbox').html(scene['scene_station']); $('.flyout').flyout(); tripass.show_favorites_day(); } }; tripass.init_select_day = function () { $('#selectday option').each(function(index){ var el = $(this); var v = el.val(); switch(v) { case 'travelinfo': var tab = $('#tab_travel'); tab.find('#name').text(tripass.travel['travel_title']); tab.find('#desc').text(tripass.travel['travel_description']); tab.find('#status').text(tripass.msg['layout-travel-status-' + tripass.travel['travel_status']]); break; case 'airinfo': el.select(function(){ $('#tab_travel').hide(); $('#tab_airinfo').show(); $('#tab_daybox').hide(); }); break; } }); $('#selectday').change(function(){ var v = $('#selectday option:selected').val(); tripass.exchange_day_info(v); tripass.day_active = v; tripass.build_active_day(); switch(v) { case 'travelinfo': $('#tab_travel').show(); $('#tab_flight').hide(); $('#tab_daybox').hide(); $('#view_bar').hide(); break; case 'airinfo': $('#tab_travel').hide(); $('#tab_flight').show(); $('#tab_daybox').hide(); $('#view_bar').hide(); break; default: $('#tab_travel').hide(); $('#tab_flight').hide(); $('#tab_daybox').show(); $('#view_bar').show(); tripass.map_center_travel_pack(tripass.viewmode); break; } }); $('#selectday option').each(function(){ var el = $(this); if(el.val() == tripass.day_active) el.attr('selected', true); else el.attr('selected', false); }); $('#selectday').change(); }; tripass.build_select_day = function (select_index) { $('#selectday option').each(function(index){ var el = $(this); var v = el.val(); if(v != 'travelinfo' && v != 'airinfo') { el.remove(); } }); for(var index in tripass.days_favs) { var selectday = $(tripass.html['layout-select-day']); selectday.val(index); selectday.text(tripass.msg['layout-day-text'] + (parseInt(index)+1)); $('#selectday').append(selectday); if(typeof(select_index) != 'undefined') { if(index == select_index) selectday.attr('selected', true); else selectday.attr('selected', false); } } }; tripass.fix_day_letter = function() { if(tripass.m_pl != null) { tripass.gmap.removeOverlay(tripass.m_pl); tripass.m_pl = null; } if(tripass.a_pl != null) { tripass.gmap.removeOverlay(tripass.a_pl); tripass.a_pl = null; } if(tripass.n_pl != null) { tripass.gmap.removeOverlay(tripass.n_pl); tripass.n_pl = null; } if(tripass.l1_pl != null) { tripass.gmap.removeOverlay(tripass.l1_pl); tripass.l1_pl = null; } if(tripass.l2_pl != null) { tripass.gmap.removeOverlay(tripass.l2_pl); tripass.l2_pl = null; } if(tripass.day_active == 'travelinfo' || tripass.day_active == 'airinfo') return ; var morning = new Array(); var afternoon = new Array(); var night = new Array(); var link1 = new Array(); var link2 = new Array(); $('#day_morning li').each(function(){ var el = $(this); var favorites_id = el.attr('id'); var order = tripass.favorites[favorites_id]['travel_favorites_order']; var letter = String.fromCharCode("a".charCodeAt(0) + parseInt(order)); var image = tripass.html['url-maker-morning'].replace('%suffix', letter); el.find('.priority').css({backgroundImage: 'url(' + image + ')'}); tripass.map_make_marker(favorites_id); var latlng = tripass.get_marker(favorites_id).getLatLng(); morning.push(latlng); }); $('#day_afternoon li').each(function(){ var el = $(this); var favorites_id = el.attr('id'); var order = tripass.favorites[favorites_id]['travel_favorites_order']; var letter = String.fromCharCode("a".charCodeAt(0) + parseInt(order)); var image = tripass.html['url-maker-afternoon'].replace('%suffix', letter); el.find('.priority').css({backgroundImage: 'url(' + image + ')'}); tripass.map_make_marker(favorites_id); var latlng = tripass.get_marker(favorites_id).getLatLng(); afternoon.push(latlng); }); $('#day_night li').each(function(){ var el = $(this); var favorites_id = el.attr('id'); var order = tripass.favorites[favorites_id]['travel_favorites_order']; var letter = String.fromCharCode("a".charCodeAt(0) + parseInt(order)); var image = tripass.html['url-maker-night'].replace('%suffix', letter); el.find('.priority').css({backgroundImage: 'url(' + image + ')'}); tripass.map_make_marker(favorites_id); var latlng = tripass.get_marker(favorites_id).getLatLng(); night.push(latlng); }); if(morning.length>0) { if(afternoon.length>0) { link1.push(morning[morning.length-1]); link1.push(afternoon[0]); if(night.length>0) { link2.push(afternoon[afternoon.length-1]); link2.push(night[0]); } } else if(night.length>0) { link1.push(morning[morning.length-1]); link1.push(night[0]); } } else if(afternoon.length>0) { if(night.length>0) { link1.push(afternoon[afternoon.length-1]); link1.push(night[0]); } } if(morning.length > 1) { tripass.m_pl = new GPolyline(morning, "#ED7835", 5); tripass.gmap.addOverlay(tripass.m_pl); } if(afternoon.length > 1) { tripass.a_pl = new GPolyline(afternoon, "#E04F9D", 5); tripass.gmap.addOverlay(tripass.a_pl); } if(night.length > 1) { tripass.n_pl = new GPolyline(night, "#494949", 5); tripass.gmap.addOverlay(tripass.n_pl); } if(link1.length > 1) { tripass.l1_pl = new GPolyline(link1, "#ff0000", 5); tripass.gmap.addOverlay(tripass.l1_pl); } if(link2.length > 1) { tripass.l2_pl = new GPolyline(link2, "#ff0000", 5); tripass.gmap.addOverlay(tripass.l2_pl); } }; tripass.map_make_marker = function(favorites_id){ var favorites = tripass.favorites[favorites_id]; var scene = favorites.scene; var latlng = new GLatLng(scene['scene_latitude'], scene['scene_longitude']); var day_index = parseInt(tripass.get_day_number(favorites['travel_day_id'])); var marktype = favorites['travel_favorites_status']; if(tripass.day_active == day_index) { order = favorites['travel_favorites_order']; if(marktype == 'unused') marktype = 'district-active'; } else { order = day_index+1; if(marktype == 'unused') { return ; } else { marktype = 'district-used'; } } var marker = tripass.create_marker(marktype, order, latlng); marker.favorites_id = favorites_id; GEvent.addListener(marker, "click", function(){ tripass.favorites_select = this.favorites_id; tripass.show_scene_infowindow(); }); tripass.set_marker(favorites_id, marker); }; tripass.map_build_selected_district_marker = function() { var bounds = new GLatLngBounds(); tripass.remove_all_marker(); tripass.each_district_group(function(dg_name, dg_count, dg_select){ tripass.each_dg_favorites(dg_name, function(favorites, scene){ if(favorites['travel_favorites_status'] != 'unused') tripass.map_make_marker(favorites['travel_favorites_id']); }); }); tripass.fix_day_letter(); } tripass.map_center_selected_district = function() { var bounds = new GLatLngBounds(); tripass.each_district_group(function(dg_name, dg_count, dg_select){ tripass.each_dg_favorites(dg_name, function(favorites, scene){ if(favorites['travel_favorites_status'] != 'unused') { var latlng = new GLatLng(scene['scene_latitude'], scene['scene_longitude']); bounds.extend(latlng); } }); }); var zoom = tripass.gmap.getBoundsZoomLevel(bounds); tripass.gmap.setCenter(bounds.getCenter(), zoom); } tripass.map_center_travel_pack = function(time) { tripass.viewmode = time; if(tripass.day_active == 'travelinfo' || tripass.day_active=='airinfo') return ; var day_index = tripass.day_active; var day = tripass.days_favs[day_index]; var day_favs_count = 0; if(time == 'all') day_favs_count = day['morning'].length + day['afternoon'].length + day['night'].length; else day_favs_count = day[time].length; if(day_favs_count == 0) return ; var bounds = new GLatLngBounds(); var day_id = day['day_id']; for(var index in tripass.favorites) { var favs = tripass.favorites[index]; if(favs['travel_day_id'] == day_id) { if(time == 'all' || time==favs['travel_favorites_status']) { var scene = favs.scene; var latlng = new GLatLng(scene['scene_latitude'], scene['scene_longitude']); bounds.extend(latlng); } } } var zoom = tripass.gmap.getBoundsZoomLevel(bounds); tripass.gmap.setCenter(bounds.getCenter(), zoom); } tripass.load_travel_days = function(){ mook_api({ 'event' : function(event, datas) { switch(event) { case 'error': alert('Error(' + datas.code + ') : ' + datas.msg); window.location.href='http://www.tripass.net/'; break; case 'success': tripass.days = datas.data; tripass.link_day_favorites(); break; } } },{ 'op': 'travel_day_list', 'travel_id': tripass.travel_id }); }; tripass.set_travel_active = function(travel_id){ mook_api({ event : function(event, datas){ switch(event) { case 'error': alert('Error(' + datas.code + ') : ' + datas.msg); break; case 'success': break; } } }, { op: 'travel_active', travel_id: travel_id } ); }; tripass.build_travel_list = function(){ $('#labelpanel').html(""); mook_api({ event : function(event, datas) { switch(event) { case 'error': alert('Error(' + datas.code + ') : ' + datas.msg); break; case 'success': var index; var $labelpanel= $('#labelpanel'); for(index=0;index < datas.data.length;index++) { var packli ='
  • '+datas.data[index]['travel_title']+'
  • '; var $packli=$(packli); $packli.click(function(){ var liel = $(this); var travel_id = liel.attr('id'); var travel_title = liel.text(); if(travel_id == 0) { html = tripass.html['layout-travel-active-noselect']; } else { html = tripass.html['layout-travel-active-select']; html = html.replace('%travel_id', travel_id); html = html.replace('%travel_title', travel_title); } $("#travel_bar #travel_active").each(function(index){ var el = $(this); el.data('travel_id', travel_id); el.html(html); }); tripass.set_travel_active(travel_id); $('#labelbg').hide(); $("#labeldiv").fadeOut(); }); $labelpanel.prepend($packli); } break; } } }, { op: 'travel_list' } ); }; tripass.init_travel_active_select = function(){ $("#labelbg").click(function(){ $("#labelpanel") .fadeOut() .html(""); $("#labeldiv") .fadeOut(); $(this).hide(); }); $('#newlabelclose').click(function(){ $("#labelbg").fadeOut(); $("#labelpanel").fadeOut(); $("#labeldiv").fadeOut(); $("#labelpanel").html(""); }); $('#travel_bar #travel_active_select').click(function(){ var $el = $(this).parent(); $("#labelbg").css({ background:'transparent', opacity:'0.75', filter: 'alpha(opacity=75)', left: '0px', top: '0px', width: $(document).width() + 'px', height: $(document).height() + 'px' }); if($.browser.msie){ $("#labelbg").css({position:'absolute'}); } else { $("#labelbg").css({position:'fixed'}); } $("#labelbg").show(); var offset = $el.offset(); var height = $el.height(); var $labeldiv = $("#labeldiv"); var $labelpanel = $("#labelpanel"); var $labeldivtop= $('#labeldivtop'); offset.left -= $(document).scrollLeft(); offset.top -= $(document).scrollTop(); $labeldiv.css({ overflow: 'hidden', background: '#FFFFFF', border:'solid 1px #aaa', height: '200px', width: '160px', left: offset.left + 'px', top: (offset.top+20) + 'px' }); if($.browser.msie){ $labeldiv.css({position:'absolute'}); }else{ $labeldiv.css({position:'fixed'}); } $labelpanel.css({ overflow: 'auto', background: '#FFFFFF', border:'solid 0px #C3D9FF', height: '160px', width: '155px' }); $labeldiv.show(); var $ulel = $(''); $labelpanel.html($ulel); tripass.build_travel_list(); $labelpanel.show(); $('.packli').hover( function(){ $(this).css({ background:'#049CD1', color:'#FFF' }); }, function(){ $(this).css({ background:'transparent', color:'#444' }); } ); $('#labeldiv').fadeIn(); var $inputlabelel = $('#inputlabelel'); var $inputsaveel = $('#inputsaveel'); $inputsaveel.click(function(){ var pack = $inputlabelel.val(); mook_api({ event : function(event, datas) { switch(event) { case 'error': alert('Error(' + datas.code + ') : ' + datas.msg); break; case 'success': tripass.build_travel_list(); $labelpanel.show(); $('.packli').hover( function(){ $(this).css({ background:'#049CD1', color:'#FFF' }); }, function(){ $(this).css({ background:'transparent', color:'#444' }); }); $('#labeldiv').fadeIn(); break; } } }, { op: 'travel_new', travel_type:'user', travel_status:'publish', travel_title:pack, travel_description:'' } ); }); }); }; tripass.init_travel_active = function(){ }; tripass.init_sys_menu = function(){ $('#import_day').click(function(){ tripass.import_travel(); }); var day_count = tripass.days.length; var active_scene_count = 0; for(var index in tripass.favorites) { var favs = tripass.favorites[index]; if(favs['travel_day_id'] != 0) active_scene_count++; } $('.daycou').text(day_count); $('.scenecou').text(active_scene_count); }; tripass.import_travel = function(){ if(tripass.saving == true) return ; tripass.saving = true; var top_message = $(tripass.html['message-exporting']); top_message.css({visibility: 'hidden'}); $('body').append(top_message); var css = { top: ($(window).height() - top_message.outerHeight(true) - 10) + 'px', left: ($(window).width() - top_message.outerWidth(true) - 20) + 'px', visibility: 'visible' }; top_message.css(css); var export_day_id = tripass.days[tripass.day_active]['travel_day_id']; var import_travel_id = $('#travel_bar #travel_active').data('travel_id'); var travel_title = $('#travel_bar #travel_active').data('travel_title'); if(tripass.travel_id == import_travel_id) { alert(tripass.msg['warning-export-same-travel']); return ; } // alert("travel_id=" + tripass.travel_id + " day=" + tripass.day_active + " travel_day_id=" + export_day_id + ", export to travel_id=" + import_travel_id ); mook_api({ event : function(event, datas) { switch(event) { case 'error': alert('Error(' + datas.code + ') : ' + datas.msg); top_message.fadeOut(500, function(){ top_message.remove(); tripass.saving = false; }); break; case 'success': var data = datas.data; if(data.clone == 'true') { var msg = tripass.msg['message-exported1']; msg = msg.replace('%scene_count' , data.scene_count); msg = msg.replace('%scene_dup_count' , data.scene_dup_count); alert(msg); } else { var msg = tripass.msg['message-exported2']; msg = msg.replace('%scene_dup_count' , data.scene_dup_count); alert(msg); } top_message.fadeOut(500, function(){ top_message.remove(); tripass.saving = false; }); break; } } }, { op: 'travel_export', export_travel_id: tripass.travel_id, export_day_id: export_day_id, import_travel_id: import_travel_id } ); }; tripass.exchange_day_info = function(new_day_index){ if(tripass.day_active != "travelinfo" && tripass.day_active != "airinfo") { var day_index = tripass.day_active; tripass.days[day_index]['travel_day_breakfast'] = $('#breakfast').val(); tripass.days[day_index]['travel_day_lunch'] = $('#lunch').val(); tripass.days[day_index]['travel_day_dinner'] = $('#dinner').val(); tripass.days[day_index]['travel_day_lodge'] = $('#lodge').val(); } if(new_day_index != "travelinfo" && new_day_index != "airinfo") { $('#breakfast').val(tripass.days[new_day_index]['travel_day_breakfast']); $('#lunch').val(tripass.days[new_day_index]['travel_day_lunch']); $('#dinner').val(tripass.days[new_day_index]['travel_day_dinner']); $('#lodge').val(tripass.days[new_day_index]['travel_day_lodge']); } if(tripass.day_active == "airinfo") { tripass.travel['travel_flight'] = $('#flight').text(); } if(new_day_index != "airinfo") { $('#flight').text(tripass.travel['travel_flight']); } }; tripass.build_active_day = function(){ if(tripass.day_active == "travelinfo" || tripass.day_active == "airinfo") { tripass.map_build_selected_district_marker(); return ; } var day_index = parseInt(tripass.day_active); var day = tripass.days[day_index]; $('#breakfast').val(day['travel_day_breakfast']); $('#lunch').val(day['travel_day_lunch']); $('#dinner').val(day['travel_day_dinner']); $('#lodge').val(day['travel_day_lodge']); var day_favs = tripass.days_favs[day_index]; for(var time in day_favs) { var favs = day_favs[time]; if(favs instanceof Array) { $('#day_' + time).html(''); for(var i in favs) { tripass.make_day_fav(favs[i]); } } } tripass.map_build_selected_district_marker(); }; tripass.google_analytics = function(){ }; tripass.build_edit_layout = function(){ $('#main').replaceWith(tripass.html['layout']); tripass.google_analytics(); tripass.setup_daybox_html(); tripass.init_day_fav(); tripass.init_sys_menu(); tripass.init_travel_active(); if (GBrowserIsCompatible()) { tripass.gmap = new GMap2(document.getElementById("mapcas")); tripass.gmap.addControl(new GLargeMapControl()); var dg_name_list = tripass.get_dg_name_list(); tripass.dg_active = dg_name_list[0]; tripass.dg_list[tripass.dg_active].select = true; tripass.init_select_day(); tripass.build_select_day(); tripass.map_build_selected_district_marker(); tripass.map_center_selected_district(); } } tripass.travel_loading = function(travel_id){ tripass.travel_id = travel_id; tripass.favorites_count = 0; $('body').prepend(tripass.html['travel-main']); $('#main').html(tripass.html['travel-checking']); mook_api({ 'event' : function(event, datas) { switch(event) { case 'error': alert('Error(' + datas.code + ') : ' + datas.msg); window.location.href='http://www.tripass.net/'; break; case 'success': tripass.travel = datas.data; break; } } },{ 'op': 'travel_info', 'travel_id': travel_id }); if(tripass.travel['travel_id'] != travel_id || tripass.travel['travel_status'] != 'publish') { main.html(tripass.html['travel-nonexists']); return false; } $('#main').html(tripass.html['travel-loading']); $('#travel_name').text(tripass.travel['travel_title']); var progress = $('.progess-inner'); progress.css({width: '0px'}); mook_api({ 'event' : function(event, datas) { switch(event) { case 'error': alert('Error(' + datas.code + ') : ' + datas.msg); window.location.href='http://www.tripass.net/'; break; case 'success': tripass.favorites_count = datas.data.length; for(var index in datas.data) tripass.add_favorites(datas.data[index]); break; } } },{ 'op': 'travel_favorites_list', 'travel_id': travel_id }); if(tripass.favorites_count == 0) { $('#main').html(tripass.html['travel-zero-favorites']); return false; } progress.css({width: '10%'}); var count = 0; for(var favorites_id in tripass.favorites) { count++; var favorites = tripass.favorites[favorites_id]; var scene_id = favorites['scene_id']; new mook_api({ event : function(event, datas) { switch(event) { case 'error': alert('Error(' + datas.code + ') : ' + datas.msg); window.location.href='http://www.tripass.net/'; break; case 'success': tripass.bind_favorites_scene(favorites_id, datas.data); var percent = 10+80*count/tripass.favorites_count; progress.css({width: percent + '%'}); break; } } },{ op: 'scene_info', scene_id: scene_id, language: 'tw' }); } tripass.load_travel_days(); progress.css({width: '100%'}); if(tripass.days.length == 0) { $('#main').html(tripass.html['travel-day-inital']); setTimeout("window.location.href='http://www.tripass.net/';", 3000); } else { tripass.build_edit_layout(); } return true; };