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;
};