amtrak 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/.rubocop.yml +6 -0
- data/.travis.yml +5 -0
- data/Gemfile +3 -0
- data/README.markdown +3 -0
- data/Rakefile +23 -0
- data/amtrak.gemspec +29 -0
- data/lib/amtrak.rb +14 -0
- data/lib/amtrak/train_fetcher.rb +39 -0
- data/lib/amtrak/train_fetcher/main_page.rb +70 -0
- data/lib/amtrak/train_fetcher/train_page.rb +41 -0
- data/lib/amtrak/train_parser.rb +90 -0
- data/lib/amtrak/version.rb +6 -0
- data/spec/amtrak/train_fetcher/main_page_spec.rb +75 -0
- data/spec/amtrak/train_fetcher/train_page_spec.rb +37 -0
- data/spec/amtrak/train_fetcher_spec.rb +59 -0
- data/spec/amtrak/train_parser_spec.rb +230 -0
- data/spec/amtrak_spec.rb +243 -0
- data/spec/fixtures/html/pvd_to_bby.html +2401 -0
- data/spec/fixtures/vcr/Amtrak/_get/returns_a_list_of_train_times.yml +1469 -0
- data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/does_the_same_as_get.yml +1467 -0
- data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_invalid_train_stations/does_not_include_various_classes_and_includes_an_error.yml +843 -0
- data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_train_stations/includes_various_classes.yml +1467 -0
- data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_an_invalid_date_and_valid_train_stations/does_not_include_various_classes_and_includes_an_error.yml +838 -0
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_session_id/pulls_the_session_id_from_the_cookies.yml +1082 -0
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_1.yml +1076 -0
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_2.yml +1074 -0
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_only_one_page_exists_on_the_website/returns_1.yml +1082 -0
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_TrainPage/_get/when_it_works/includes_various_classes.yml +247 -0
- data/spec/spec_helper.rb +18 -0
- data/spec/support/vcr.rb +10 -0
- metadata +206 -0
@@ -0,0 +1,843 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: http://tickets.amtrak.com/itd/amtrak
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: _handler%3Damtrak.presentation.handler.request.rail.AmtrakRailTrainStatusSearchRequestHandler%2F_xpath%3D%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D=&%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtripRequirements%2FjourneyRequirements%5B1%5D%2FdepartDate.date=Thu%2C+Nov+27%2C+2014&requestor=amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler&xwdf_trainNumber=%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtripRequirements%2FjourneyRequirements%5B1%5D%2FsegmentRequirements%5B1%5D%2FserviceCode&wdf_trainNumber=optional&xwdf_SortBy=%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtripRequirements%2FjourneyRequirements%5B1%5D%2FdepartDate%2F%40radioSelect&wdf_SortBy=arrivalTime&xwdf_origin=%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtravelSelection%2FjourneySelection%5B1%5D%2FdepartLocation%2Fsearch&wdf_origin=askdf&xwdf_destination=%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtravelSelection%2FjourneySelection%5B1%5D%2FarriveLocation%2Fsearch&wdf_destination=bby
|
9
|
+
headers:
|
10
|
+
Content-Type:
|
11
|
+
- application/x-www-form-urlencoded
|
12
|
+
response:
|
13
|
+
status:
|
14
|
+
code: 200
|
15
|
+
message:
|
16
|
+
headers:
|
17
|
+
Content-Length:
|
18
|
+
- '71614'
|
19
|
+
Content-Type:
|
20
|
+
- text/html;charset=UTF-8
|
21
|
+
Set-Cookie:
|
22
|
+
- _op_aixPageId=a2_6476e0cc-b537-4377-88a3-4f612d5ec7e1; Path=/, TS81804f=ea98863c6f16dccfa3dbac5128e457796e848461bd21f3d55478c23a60ac0ec5e0ba11a5;
|
23
|
+
path=/; domain=.amtrak.com, TS3f5eae=e9576fb49b6db505e0a18ace458ec4616e848461bd21f3d55478c23a5f2a2d3e9745bf8f;
|
24
|
+
Path=/, JSESSIONID=0000Ard-cuNLUQCgKVpeVbhw6tT:186s69b0r; HTTPOnly; Path=/;
|
25
|
+
Domain=.amtrak.com; HttpOnly
|
26
|
+
X-powered-by:
|
27
|
+
- Servlet/3.0
|
28
|
+
Expires:
|
29
|
+
- Thu, 01 Dec 1994 16:00:00 GMT
|
30
|
+
Content-Language:
|
31
|
+
- en-US
|
32
|
+
X-frame-options:
|
33
|
+
- SAMEORIGIN
|
34
|
+
X-opnet-transaction-trace:
|
35
|
+
- a2_6476e0cc-b537-4377-88a3-4f612d5ec7e1
|
36
|
+
Date:
|
37
|
+
- Fri, 28 Nov 2014 18:43:07 GMT
|
38
|
+
Connection:
|
39
|
+
- keep-alive
|
40
|
+
body:
|
41
|
+
encoding: UTF-8
|
42
|
+
string: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\r\n\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n\r\n\r\n<!--\r\n\"Amtrak
|
43
|
+
Release 6.21.03a\"\r\n-->\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n\r\n\r\n<meta
|
44
|
+
content=\"IE=EmulateIE7\" http-equiv=\"X-UA-Compatible\" />\r\n\r\n\r\n\r\n\r\n<head
|
45
|
+
><title>Amtrak - Train Status - Details</title>\n<meta http-equiv=\"content-type\"
|
46
|
+
content=\"text/html; charset=UTF-8\" />\n<meta name=\"robots\" content=\"noindex,nofollow\"
|
47
|
+
/>\n<meta http-equiv=\"imagetoolbar\" content=\"no\" />\n<style type=\"text/css\">\n<!--\n@import
|
48
|
+
url(/css/amtrak.css);\n-->\n</style>\n\r\n<!-- IE8 renders as IE7 to spare
|
49
|
+
ourselves another column in the compatability matrix -->\r\n<style type=\"text/css\">\r\n<!--\r\n@import
|
50
|
+
url(/css/base.css);\r\n@import url(/css/base_screen.css);\r\n@import url(/css/basic_booking.css);\r\n@import
|
51
|
+
url(/css/special_booking.css);\r\n@import url(/css/basic_booking_screen.css);\r\n@import
|
52
|
+
url(/css/ib_misc.css);\r\n@import url(/css/popup.css);\r\n@import url(/css/profile.css);\r\n@import
|
53
|
+
url(/css/amtrak_autocomplete.css);\r\n-->\r\n</style>\r\n<!-- Diginet script(when
|
54
|
+
USE_ESI=true) introduces 'c_root' form and this is causing orange bar to display
|
55
|
+
on all pages.\r\nFollowing lines are added to get rid of the orange bar.-->\r\n<style
|
56
|
+
type=\"text/css\">\r\nform#c_root {\r\ndisplay: none;\r\n}\r\n</style>\r\n<link
|
57
|
+
href=\"/css/basic_booking_print.css\" rel=\"stylesheet\" type=\"text/css\"
|
58
|
+
media=\"print\" />\r\n<link href=\"/css/base_print.css\" rel=\"stylesheet\"
|
59
|
+
type=\"text/css\" media=\"print\" />\r\n<script type=\"text/javascript\">\r\nvar
|
60
|
+
_gaq = _gaq || [];\r\n_gaq.push(['_setAccount', 'UA-23218774-1']);\r\n_gaq.push(['_setDomainName',
|
61
|
+
'.amtrak.com']);\r\n_gaq.push(['_trackPageview']);\r\n(function() {\r\nvar
|
62
|
+
ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async
|
63
|
+
= true;\r\nga.src = ('https:' == document.location.protocol ? 'https://ssl'
|
64
|
+
: 'http://www') + '.google-analytics.com/ga.js';\r\nvar s = document.getElementsByTagName('script')[0];
|
65
|
+
s.parentNode.insertBefore(ga, s);\r\n})();\r\n</script>\r\n</head>\r\n\r\n\r\n<body
|
66
|
+
class=\"site\">\r\n\r\n<link href=\"/css/header.css\" rel=\"stylesheet\" type=\"text/css\"
|
67
|
+
/>\r\n<script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/prototype.js\"></script>\r\n<div
|
68
|
+
id=\"top_nav_wrapper\">\r\n<div id=\"top_nav_left_cover\"> </div>\r\n<div
|
69
|
+
id=\"top_navigation_body\"></div>\r\n</div>\r\n<script language=\"JavaScript\"
|
70
|
+
type=\"text/javascript\">\r\n<!--\r\nvar url = \"/\" + \"itd/amtrak\" + \"/DisplayCmsContent\";\r\nvar
|
71
|
+
functionName = 'topNavigation';\r\n\r\nnew Ajax.Request(url,\r\n{ method:
|
72
|
+
'post',\r\nparameters: {'functionName': functionName},\r\nonSuccess: function
|
73
|
+
(transport) {\r\nif(transport.responseText!='') {\r\n$('top_navigation_body').update(transport.responseText);\r\n}
|
74
|
+
else {\r\n$('top_nav_wrapper').hide();\r\n}\r\n},\r\nonFailure: function (transport)
|
75
|
+
{\r\n$('top_nav_wrapper').hide();\r\n}\r\n}\r\n);\r\n//-->\r\n</script>\r\n\r\n<script
|
76
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/prototype.js\"></script>\r\n<script
|
77
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/scriptaculous.js\"></script>\r\n<script
|
78
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/effects.js\"></script>\r\n<script
|
79
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/controls.js\"></script>\r\n<script
|
80
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/formutils.js\"></script>\r\n<script
|
81
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/popups.js\"></script>\r\n<script
|
82
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/profile_rewrite.js\"></script>\r\n<script
|
83
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/external/yui/2.7.0/yahoo-dom-event.js\"></script>\r\n<script
|
84
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/external/yui/2.7.0/calendar-min.js\"></script>\r\n<script
|
85
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/yuicalendar.js\"></script>\r\n<script
|
86
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/calendar_farefinder.js\"></script>\r\n<script
|
87
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/farefinderrequest.js\"></script>\r\n<script
|
88
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/header.js\"></script>\r\n<script
|
89
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/motionpoint/motionpoint.js\"></script>\r\n<script
|
90
|
+
type=\"text/javascript\">\r\n<!--\r\nvar pageName='amtrak/rail/trainstatus/trainstatusresponse.jsp';\r\n/*
|
91
|
+
if the subPageName has been defined use it to prefix the page name */\r\nif
|
92
|
+
(typeof subPageName != 'undefined'){\r\nvar path=pageName.substr(0,pageName.lastIndexOf(\"/\")+1);\r\nvar
|
93
|
+
page=pageName.substr(pageName.lastIndexOf(\"/\")+1);\r\npageName=path+subPageName+page;\r\n}\r\n//-->\r\n</script>\r\n<script
|
94
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/jquery-1.4.2.min.js\"></script>\r\n<script
|
95
|
+
type=\"text/javascript\">\r\njQuery.noConflict();\r\n</script>\r\n\r\n<div
|
96
|
+
id=\"outer_wrapper_confirmation\">\r\n<div id=\"top_level_wrapper_confirmation\">\r\n<div
|
97
|
+
id=\"lower_wrapper_confirmation\">\r\n<div style=\"position: relative;\"><div
|
98
|
+
id=\"shoulder\"> </div></div>\r\n<div id=\"top_bar\"> </div>\r\n\r\n<div
|
99
|
+
id=\"left_column_wrapper_confirmation\">\r\n\r\n\r\n<style type=\"text/css\">\r\n<!--\r\n@import
|
100
|
+
url(/css/base.css);\r\n-->\r\n</style>\r\n<script language=\"JavaScript\"
|
101
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/base.js\"></script>\r\n<script
|
102
|
+
language=\"JavaScript\" type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/basic_booking_left.js\"></script>\r\n<link
|
103
|
+
rel=\"stylesheet\" type=\"text/css\" href=\"/css/external/yui/2.7.0/calendar.css?nocache=v3_50_000\"
|
104
|
+
media=\"screen\" />\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\"/css/external/yui/2.7.0/container.css?nocache=v3_50_000\"
|
105
|
+
media=\"screen\" />\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\"/css/amtrak-calendar.css\"
|
106
|
+
media=\"screen\" />\r\n\r\n\r\n<div id=\"persistent_info_wrapper\">\r\n\r\n\r\n\r\n<ul
|
107
|
+
id=\"pi_actions_list\">\r\n<li><a href=\"javascript:LoginPopout.show()\">Login</a></li>\r\n<li><a
|
108
|
+
href=\"https://tickets.amtrak.com/itd/amtrak/Register\">Register</a></li>\r\n</ul>\r\n\r\n\r\n\r\n<script
|
109
|
+
type=\"text/javascript\">\r\ndocument.observe('dom:loaded', function() {\r\n$(\"login_popout\").hide();\r\n});\r\n</script>\r\n<div
|
110
|
+
class=\"popout\" id=\"login_popout\" style=\"display: block\">\r\n\r\n\r\n\r\n<style
|
111
|
+
type=\"text/css\">\r\n#loading {\r\nposition: fixed;\r\ntop: 30%;\r\nleft:
|
112
|
+
25%;\r\nbackground:url(/images/en/superpnr/image_loader_blue.gif) no-repeat
|
113
|
+
center #fff;\r\npadding:7px;\r\n}\r\n#overlay {\r\nbackground-color:#EEE;\r\n}\r\n.link_item
|
114
|
+
{\r\nfloat:left;\r\nwidth:65%;\r\n}\r\n</style>\r\n<style type=\"text/css\">\r\n.submit_image
|
115
|
+
{\r\nfloat:right;\r\nvertical-align:top;\r\nbackground-color: transparent;\r\nborder:
|
116
|
+
none;\r\nfont-size:1px;\r\nwidth: 70px;\r\nheight: 24px;\r\nbackground-image:
|
117
|
+
url(/images/en/btn_login.gif);\r\nbackground-repeat: no-repeat;\r\n}\r\n</style>\r\n<script>\r\nfunction
|
118
|
+
enterKeyPress(event) {\r\nif (Event.KEY_RETURN == event.keyCode) {\r\n// do
|
119
|
+
something usefull\r\nLoginPopout.doLogon();\r\nreturn false;\r\n}\r\nreturn
|
120
|
+
true;\r\n}\r\n</script>\r\n\r\n\r\n<div id=\"loading\"></div>\r\n<script>\r\n$('loading').hide();\r\n</script>\r\n<div
|
121
|
+
id=\"overlay\" style=\"background-color: white;\">\r\n<div class=\"popout_inner\"
|
122
|
+
id=\"login_popout_inner\">\r\n<a href=\"javascript:LoginPopout.hide()\" class=\"close_btn
|
123
|
+
button\"><img alt=\"X\" src=\"/images/en/btn_closeXorange.gif\" /></a>\r\n<div
|
124
|
+
id=\"login_form_header\"><h3 style=\"margin-top:0px;\">Log In to Amtrak.com</h3></div>\r\n\r\n<div
|
125
|
+
class=\"form_holder\" id=\"login_form_holder\">\r\n<form class=\"std_form
|
126
|
+
clearfix\" onsubmit=\"doRegularLogon(); return true;\" id=\"login_ajax_form\"
|
127
|
+
action=\"https://tickets.amtrak.com/itd/amtrak\" method=\"post\"><input type=\"hidden\"
|
128
|
+
name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
|
129
|
+
/>\r\n<div class=\"form_line\">\r\n<div class=\"form_label\"><label for=\"login_email_address\">E-Mail
|
130
|
+
Address</label></div>\r\n<div class=\"form_item\"><input type=\"hidden\" name=\"xwdf_username\"
|
131
|
+
value=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/userName\"
|
132
|
+
/><input class=\"text\" autocomplete=\"off\" type=\"text\" id=\"login_email_address\"
|
133
|
+
maxlength=\"64\" name=\"wdf_username\" /></div>\r\n</div>\r\n<div class=\"form_line\">\r\n<div
|
134
|
+
class=\"form_label\"><label for=\"login_password\">Password</label></div>\r\n<div
|
135
|
+
class=\"form_item\"><input type=\"hidden\" name=\"xwdf_password\" value=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/password\"
|
136
|
+
/><input class=\"text password\" type=\"password\" id=\"login_password\" maxlength=\"20\"
|
137
|
+
name=\"wdf_password\" /></div>\r\n</div>\r\n<div class=\"form_line\" id=\"login_go\">\r\n<div
|
138
|
+
class=\"link_item submit_item\">\r\n<a class=\"forgot_pass\" title=\"Click
|
139
|
+
here to request your Password\" href=\"javascript:fieldName='wdf_RequestUserID';
|
140
|
+
openRequestUserID();\">Forgot password?</a>\r\n</div>\r\n\r\n<input class=\"submit_image\"
|
141
|
+
type=\"submit\" name=\"_handler=amtrak.presentation.handler.request.profile.AmtrakProfileLogonRequestHandler/_xpath=/sessionWorkflow/userWorkflow/profileAccountRequirements\"
|
142
|
+
value=\"\" />\r\n</div>\r\n</form>\r\n</div>\r\n</div>\r\n<hr/>\r\n<div class=\"popout_inner\">\r\n<div><img
|
143
|
+
src=\"/images/en/linkaccounts_Popup.gif\" /></div>\r\n\r\n<h4 style=\"color:#1375B3\">Link
|
144
|
+
your Amtrak.com and Amtrak Guest Rewards accounts</h4>\r\n<p> Make your booking
|
145
|
+
experience even easier by linking your accounts - you'll be able to navigate
|
146
|
+
between both sites without having to log in twice.</p>\r\n</div>\r\n</div>\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<script
|
147
|
+
type=\"text/javascript\">\r\nareCookiesEnabled();\r\nfunction createCookie(name,
|
148
|
+
value, days) {\r\nvar expires;\r\nif (days) {\r\nvar date = new Date();\r\ndate.setTime(date.getTime()
|
149
|
+
+ (days * 24 * 60 * 60 * 1000));\r\nexpires = \"; expires=\" + date.toGMTString();\r\n}\r\nelse
|
150
|
+
expires = \"\";\r\ndocument.cookie = name + \"=\" + value + expires + \";
|
151
|
+
path=/\";\r\n}\r\nfunction readCookie(name) {\r\nvar nameEQ = name + \"=\";\r\nvar
|
152
|
+
ca = document.cookie.split(';');\r\nfor (var i = 0; i < ca.length; i++) {\r\nvar
|
153
|
+
c = ca[i];\r\nwhile (c.charAt(0) == ' ') c = c.substring(1, c.length);\r\nif
|
154
|
+
(c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);\r\n}\r\nreturn
|
155
|
+
null;\r\n}\r\nfunction eraseCookie(name) {\r\ncreateCookie(name, \"\", -1);\r\n}\r\nfunction
|
156
|
+
areCookiesEnabled() {\r\ncreateCookie(\"test\", \"Hello\", 1);\r\nif (readCookie(\"test\")
|
157
|
+
== null) {\r\n// No stored cookie, therefore client cannot (or will not) accept\r\n//
|
158
|
+
cookies - display error msg\r\nvar output = '<tr class=\"errorrow\">'\r\n+
|
159
|
+
'<td class=\"error\">'\r\n+ '<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\"
|
160
|
+
class=\"errorimagetable\">'\r\n+ '<tr class=\"errorimagerow\">'\r\n+ '<td
|
161
|
+
class=\"errorimagecell\">'\r\n+ '<img class=\"errorimage\" src=\"/images/en/warn.gif\"
|
162
|
+
/>'\r\n+ '</td>'\r\n+ '<td class=\"errortextcell\" >'\r\n+ '<span class=\"error\">'\r\n+
|
163
|
+
'Cookies Must Be Enabled: To use advanced features of Amtrak.com, your browser
|
164
|
+
must be capable of accepting session cookies. Please <a href=\"javascript:var
|
165
|
+
child=window.open(\\'http://www.amtrak.com/servlet/ContentServer?pagename=am/AM_Snippet_C/IBLegacy&help=cookies\\',\\'help\\',\\'directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1\\');child.focus();\">click
|
166
|
+
here</a> to learn more about how to accept cookies.'\r\n+ '</span></td></tr>'\r\n+
|
167
|
+
'</table>'\r\n+ '</td></tr>'\r\n+ '<tr><td> </td></tr>';\r\ndocument.write(output);\r\n}\r\neraseCookie(\"test\");\r\n}\r\n</script>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<!--[if
|
168
|
+
IE]>\r\n<script type=\"text/javascript\">\r\nfunction isCalendarEvent(e) {\r\nvar
|
169
|
+
element = Event.element(e);\r\nvar names = element.classNames();\r\nif (names.include('selector'))
|
170
|
+
{\r\nreturn true;\r\n}\r\nif (names.include('calnavright')) {\r\nreturn true;\r\n}\r\nif
|
171
|
+
(names.include('calnavleft')) {\r\nreturn true;\r\n}\r\nif (names.include('link-close'))
|
172
|
+
{\r\nreturn true;\r\n}\r\nreturn false;\r\n}\r\nfunction addFormSubmitEvent(form)
|
173
|
+
{\r\nform.onkeydown = function(e) {\r\ne = e || window.event;\r\nif (e.keyCode
|
174
|
+
== 13) {\r\n// If this is a Calendar return key entry then do not\r\n// call
|
175
|
+
form.submit()\r\nif (isCalendarEvent(e)) {\r\nreturn;\r\n}\r\nif (form.name
|
176
|
+
== 'ff_status_form') {\r\nif(CheckMandatoryTrainStatusFields(form)) {\r\nform.submit();\r\nreturn
|
177
|
+
true;\r\n}\r\nreturn false;\r\n}\r\nif (form.name == 'mytrip_acct') {\r\nif
|
178
|
+
(CheckMandatoryLoginFields(form)) {\r\nform.submit();\r\nreturn false;\r\n}\r\nreturn
|
179
|
+
true;\r\n}\r\nif (form.name == 'mytrip_res') {\r\nif (CheckMandatoryMyTripFields(form))
|
180
|
+
{\r\nform.submit();\r\nreturn false;\r\n}\r\nreturn true;\r\n}\r\nif (form.name
|
181
|
+
== 'ff_schedules_form') {\r\nif (CheckMandatoryScheduleFields(form)) {\r\nform.submit();\r\nreturn
|
182
|
+
false;\r\n}\r\nreturn true;\r\n}\r\n}\r\n};\r\n}\r\ndocument.observe('dom:loaded',
|
183
|
+
function() {\r\nvar forms = document.getElementsByTagName('form');\r\nfor
|
184
|
+
(var i=0;i < forms.length;i++) {\r\nif (forms[i].name == 'mytrip_res' || forms[i].name
|
185
|
+
== 'mytrip_acct' || forms[i].name == 'ff_schedules_form' || forms[i].name
|
186
|
+
== 'ff_status_form') {\r\naddFormSubmitEvent(forms[i]);\r\n}\r\n}\r\n});\r\n</script>\r\n<![endif]-->\r\n<!--
|
187
|
+
Begin HTML for Fare Finder -->\r\n<div id=\"farefinder\">\r\n<div id=\"ff_tabbar\">\r\n<div
|
188
|
+
class=\"active\" id=\"ff_tabbar_tickets\">Tickets<span onclick=\"compare_dates('wdfdate1');show_ff_tab('tickets');showHideRedeemTabBarSection('ff_sub_tabbar',
|
189
|
+
true);\"></span></div>\r\n<div id=\"ff_tabbar_status\">Status<span onclick=\"set_status_date('wdfdate10');show_ff_tab('status');\"></span></div>\r\n<div
|
190
|
+
id=\"ff_tabbar_schedules\">Schedules<span onclick=\"compare_dates('wdfdate5');show_ff_tab('schedules');\"></span></div>\r\n<div
|
191
|
+
id=\"ff_tabbar_mytrip\">My Trip<span onclick=\"show_ff_tab('mytrip');\"></span></div>\r\n</div>\r\n\r\n\r\n\r\n\r\n<div
|
192
|
+
id=\"ff_sub_tabbar\" class=\"show_section\">\r\n<div class=\"active\" id=\"ff_sub_tabbar_bookatrip\">Book<span
|
193
|
+
onclick=\"show_ff_sub_tab('bookatrip');\"></span></div>\r\n<div id=\"ff_sub_tabbar_redeem\">Redeem<span
|
194
|
+
onclick=\"show_ff_sub_tab('redeem');\"></span></div>\r\n<div id=\"ff_sub_tabbar_traveloptions\">Travel
|
195
|
+
Options<span onclick=\"show_ff_sub_tab('traveloptions');\"></span></div>\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
196
|
+
id=\"farefinder_tabbody_tickets\" class=\"farefinder_tabbody ff_active\">\r\n<div
|
197
|
+
id=\"ada_link\" class=\"subdiv\" >\r\n<label for=\"ff_ada_link\" ><a href=\"javascript:show_adainfo(this)\"
|
198
|
+
onclick=\"javascript:show_adainfo(this)\" >Passengers with a Disability</a></label>\r\n<div
|
199
|
+
id=\"ada_linktext\" class=\"ada_linktext\">\r\n<a class=\"button ada_infoclose\"
|
200
|
+
href=\"javascript:close_adainfo();\"><img src=\"/images/en/btn_closeWindow.png\"
|
201
|
+
alt=\"Close\" /></a>\r\n<p>To make a reservation for a passenger with a disability,
|
202
|
+
select Passenger with Disability (PWD) from the passenger type selection menu
|
203
|
+
\ below.</p>\r\n</div>\r\n<span id=\"ada_linktext_before\" ></span>\r\n<span
|
204
|
+
id=\"ada_linktext_after\" ></span>\r\n</div>\r\n<form name=\"form\" action=\"http://tickets.amtrak.com/itd/amtrak\"
|
205
|
+
method=\"post\"><input type=\"hidden\" name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailFareFinderPageHandler\"
|
206
|
+
/>\r\n<input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/@bookpath\"
|
207
|
+
value=\"farefamilies\" />\r\n<input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/@ff_tab_selected\"
|
208
|
+
value=\"bookatrip\" />\r\n<h2>Tickets</h2>\r\n\r\n<div id=\"ff_tickets_tt_cities_subdiv\"
|
209
|
+
class=\"subdiv level6\">\r\n<div id=\"tickets_trip_type\"><p>\r\n<input type=\"hidden\"
|
210
|
+
name=\"xwdf_TripType\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/tripType\"
|
211
|
+
/><input type=\"radio\" id=\"oneway\" name=\"wdf_TripType\" value=\"OneWay\"
|
212
|
+
onclick=\"javascript:blankReturnDate(false)\" /> <label for=\"oneway\">One-Way</label>\r\n<input
|
213
|
+
type=\"hidden\" name=\"xwdf_TripType\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/tripType\"
|
214
|
+
/><input type=\"radio\" id=\"return\" name=\"wdf_TripType\" value=\"Return\"
|
215
|
+
onclick=\"javascript:setReturnDate(false)\" /> <label for=\"return\">Round-Trip</label>\r\n<a
|
216
|
+
href=\"/itd/amtrak/ComplexRail\">Multi-City</a> ></p>\r\n</div>\r\n<div
|
217
|
+
id=\"tickets_dep_city\" class=\"ff_city_wrapper\">\r\n<label for=\"departs\">From</label>\r\n<input
|
218
|
+
type=\"hidden\" name=\"xwdf_origin\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/departLocation/search\"
|
219
|
+
/><input type=\"text\" autocomplete=\"off\" id=\"departs\" maxlength=\"150\"
|
220
|
+
name=\"wdf_origin\" value=\"askdf\" />\r\n<p><span class=\"find_a_station\"><a
|
221
|
+
title=\"Click for a list of stations.\" href=\"javascript:fieldName='departs';
|
222
|
+
openStationList();\">Find a Station</a></span></p>\r\n</div>\r\n<div id=\"tickets_arr_city\"
|
223
|
+
class=\"ff_city_wrapper level3\">\r\n<label for=\"arrives\">To</label>\r\n<input
|
224
|
+
type=\"hidden\" name=\"xwdf_destination\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/arriveLocation/search\"
|
225
|
+
/><input type=\"text\" autocomplete=\"off\" id=\"arrives\" maxlength=\"150\"
|
226
|
+
name=\"wdf_destination\" value=\"Boston - Back Bay, MA (BBY)\" />\r\n<p><span
|
227
|
+
class=\"find_a_station\"><a title=\"Click for a list of stations.\" href=\"javascript:fieldName='arrives';
|
228
|
+
openStationList();\">Find a Station</a></span></p>\r\n</div>\r\n<div id=\"autocomplete_availability_from\"
|
229
|
+
class=\"autocomplete level5\" style=\"display:none\"></div>\r\n<div id=\"autocomplete_availability_to\"
|
230
|
+
class=\"autocomplete level5\" style=\"display:none\"></div>\r\n</div>\r\n<div
|
231
|
+
id=\"ff_tickets_dep_ret_date_subdiv\" class=\"subdiv level3\" style=\"position:static;\">\r\n<div
|
232
|
+
id=\"tickets_dep_date_time\" class=\"level5\">\r\n<div class=\"ff_date_wrapper\">\r\n<label
|
233
|
+
for=\"tickets_dep_date\">Departs</label>\r\n\r\n\r\n<input class=\"wdfDate\"
|
234
|
+
type=\"text\" size=\"22\" id=\"wdfdate1\" maxlength=\"22\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate.date\"
|
235
|
+
value=\"Thu, Nov 27, 2014\" readonly=\"readonly\" /></div><div class=\"ff_time_wrapper\"><label
|
236
|
+
for=\"wdftime1\"><b>Time</b></label><select onfocus=\"updateTimeState()\"
|
237
|
+
onchange=\"timeChanged(1);updateDayDropDownListTrainStatusWithOffsets()\"
|
238
|
+
id=\"wdftime1\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departTime.hourmin\"><option
|
239
|
+
value=\"\">Anytime</option><option value=\"07:00\">Morning</option><option
|
240
|
+
value=\"14:00\">Afternoon</option><option value=\"19:00\">Evening</option><option
|
241
|
+
value=\"23:59\">Midnight</option><option value=\"01:00\">1 AM</option><option
|
242
|
+
value=\"02:00\">2 AM</option><option value=\"03:00\">3 AM</option><option
|
243
|
+
value=\"04:00\">4 AM</option><option value=\"05:00\">5 AM</option><option
|
244
|
+
value=\"06:00\">6 AM</option><option value=\"07:00\">7 AM</option><option
|
245
|
+
value=\"08:00\">8 AM</option><option value=\"09:00\">9 AM</option><option
|
246
|
+
value=\"10:00\">10 AM</option><option value=\"11:00\">11 AM</option><option
|
247
|
+
value=\"12:00\">Noon</option><option value=\"13:00\">1 PM</option><option
|
248
|
+
value=\"14:00\">2 PM</option><option value=\"15:00\">3 PM</option><option
|
249
|
+
value=\"16:00\">4 PM</option><option value=\"17:00\">5 PM</option><option
|
250
|
+
value=\"18:00\">6 PM</option><option value=\"19:00\">7 PM</option><option
|
251
|
+
value=\"20:00\">8 PM</option><option value=\"21:00\">9 PM</option><option
|
252
|
+
value=\"22:00\">10 PM</option><option value=\"23:00\">11 PM</option></select>\r\n\r\n</div>\r\n</div>\r\n\r\n\r\n<div
|
253
|
+
id=\"tickets_ret_date_time\" class=\"hide_section level4\">\r\n<div class=\"ff_date_wrapper\">\r\n\r\n<label
|
254
|
+
for=\"tickets_ret_date\">Returns</label>\r\n\r\n\r\n<input class=\"wdfDate\"
|
255
|
+
type=\"text\" size=\"22\" id=\"wdfdate2\" maxlength=\"22\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[2]/departDate.date\"
|
256
|
+
readonly=\"readonly\" /></div><div class=\"ff_time_wrapper\"><label for=\"wdftime2\"><b>Time</b></label><select
|
257
|
+
onfocus=\"updateTimeState()\" onchange=\"timeChanged(2);updateDayDropDownListTrainStatusWithOffsets()\"
|
258
|
+
id=\"wdftime2\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[2]/departTime.hourmin\"><option
|
259
|
+
value=\"\">Anytime</option><option value=\"07:00\">Morning</option><option
|
260
|
+
value=\"14:00\">Afternoon</option><option value=\"19:00\">Evening</option><option
|
261
|
+
value=\"23:59\">Midnight</option><option value=\"01:00\">1 AM</option><option
|
262
|
+
value=\"02:00\">2 AM</option><option value=\"03:00\">3 AM</option><option
|
263
|
+
value=\"04:00\">4 AM</option><option value=\"05:00\">5 AM</option><option
|
264
|
+
value=\"06:00\">6 AM</option><option value=\"07:00\">7 AM</option><option
|
265
|
+
value=\"08:00\">8 AM</option><option value=\"09:00\">9 AM</option><option
|
266
|
+
value=\"10:00\">10 AM</option><option value=\"11:00\">11 AM</option><option
|
267
|
+
value=\"12:00\">Noon</option><option value=\"13:00\">1 PM</option><option
|
268
|
+
value=\"14:00\">2 PM</option><option value=\"15:00\">3 PM</option><option
|
269
|
+
value=\"16:00\">4 PM</option><option value=\"17:00\">5 PM</option><option
|
270
|
+
value=\"18:00\">6 PM</option><option value=\"19:00\">7 PM</option><option
|
271
|
+
value=\"20:00\">8 PM</option><option value=\"21:00\">9 PM</option><option
|
272
|
+
value=\"22:00\">10 PM</option><option value=\"23:00\">11 PM</option></select>\r\n\r\n</div>\r\n</div>\r\n\r\n</div>\r\n<div
|
273
|
+
id=\"ff_tickets_passengers_subdiv\" class=\"subdiv level1\">\r\n<div id=\"tickets_passengers\">\r\n\r\n\r\n\r\n<div
|
274
|
+
id=\"ff_adults_wrapper\">\r\n<label style=\"line-height:1.1;\" for=\"ff_adults\"><a
|
275
|
+
href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&pass=Adult','pass','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\"
|
276
|
+
CLASS=\"smallblue\">Adults</a><br /> (13-61)</label>\r\n<select onchange=\"javascript:discounttype('adult')\"
|
277
|
+
id=\"oth_adults\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Adult']\"><option
|
278
|
+
value=\"0\">0</option><option value=\"1\" selected=\"selected\">1</option><option
|
279
|
+
value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option
|
280
|
+
value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option
|
281
|
+
value=\"8\">8</option></select>\r\n</div>\r\n<div id=\"ff_seniors_wrapper\">\r\n<label
|
282
|
+
style=\"line-height:1.1;\" for=\"ff_seniors\"><a href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&pass=Senior','pass','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\"
|
283
|
+
CLASS=\"smallblue\">Seniors</a><br /> (62+)</label>\r\n<select onchange=\"javascript:discounttype('senior')\"
|
284
|
+
id=\"oth_seniors\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Senior']\"><option
|
285
|
+
value=\"0\" selected=\"selected\">0</option><option value=\"1\">1</option><option
|
286
|
+
value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option
|
287
|
+
value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option
|
288
|
+
value=\"8\">8</option></select>\r\n</div>\r\n\r\n\r\n\r\n<div id=\"ff_kids_wrapper\">\r\n<label
|
289
|
+
style=\"line-height:1.1;\" for=\"ff_kids\"><a href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&pass=Child','pass','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\"
|
290
|
+
CLASS=\"smallblue\">Children</a><br /> (2-12)</label>\r\n<select onchange=\"showChildPopup(this.options[this.selectedIndex].value,
|
291
|
+
document.getElementById('oth_infants').options[document.getElementById('oth_infants').selectedIndex].value,
|
292
|
+
'oth_child_popup'),discounttype('child')\" id=\"oth_children\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Child']\"><option
|
293
|
+
value=\"0\" selected=\"selected\">0</option><option value=\"1\">1</option><option
|
294
|
+
value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option
|
295
|
+
value=\"5\">5</option></select>\r\n</div>\r\n<div id=\"ff_infants_wrapper\">\r\n<label
|
296
|
+
style=\"line-height:1.1;\" for=\"ff_infants\"><a href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&pass=Infant','pass','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\"
|
297
|
+
CLASS=\"smallblue\">Infants</a><br /> (under 2)</label>\r\n<select onchange=\"showChildPopup(this.options[this.selectedIndex].value,
|
298
|
+
document.getElementById('oth_children').options[document.getElementById('oth_children').selectedIndex].value,
|
299
|
+
'oth_child_popup'),discounttype('infant')\" id=\"oth_infants\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Infant']\"><option
|
300
|
+
value=\"0\" selected=\"selected\">0</option><option value=\"1\">1</option><option
|
301
|
+
value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option></select>\r\n</div>\r\n</div>\r\n<br>\r\n\r\n\r\n\r\n<div
|
302
|
+
id=\"oth_child_popup\" class=\"info_childpopup_ff hide_section\">Children
|
303
|
+
and infants must travel with an adult who is at least 18 years or older.</div>\r\n\r\n\r\n\r\n<div
|
304
|
+
class=\"subdiv unaccompaniedminor_link\"><a href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&ibsref=unaccompaniedMinor_FareFinder','ibsref','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\"
|
305
|
+
CLASS=\"smallblue\">Children 13-15 traveling alone</a></div>\r\n<style>\r\n.info_childpopup_ff
|
306
|
+
{\r\nmargin-bottom: 10px;\r\n}\r\n.unaccompaniedminor_link{\r\nfont-size:11px;\r\npadding-bottom:5px;\r\n}\r\n</style>\r\n\r\n</div>\r\n\r\n<div
|
307
|
+
id=\"ff_submit_button\" class=\"subdiv\">\r\n\r\n\r\n<input type=\"image\"
|
308
|
+
alt=\"Click to Find Tickets\" name=\"_handler=amtrak.presentation.handler.request.rail.farefamilies.AmtrakRailFareFamiliesSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
|
309
|
+
onclick=\"javascript:return ( preFareFinderSubmitActions('The following information
|
310
|
+
is needed to process your request:', 'Problem Pricing the Itinerary: Atlantic
|
311
|
+
City Express Service offers adult fares only for all passengers. Please modify
|
312
|
+
your selection to continue. \\n[Error ID: 1121S]'))\" src=\"/images/en/btn_ff_findTrains.gif\"
|
313
|
+
border=\"0\" />\r\n\r\n</div>\r\n\r\n<div id=\"ff_promocode\" class=\"subdiv
|
314
|
+
oth_promocode\">\r\n<input type=\"hidden\" name=\"xwdf_promoCode\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/couponRequirements/coupon/code\"
|
315
|
+
/><input onfocus=\"focuspromotext();\" type=\"text\" size=\"15\" id=\"ff_disc_promoCode\"
|
316
|
+
maxlength=\"10\" name=\"wdf_promoCode\" onblur=\"blurpromotext();\" />\r\n</div>\r\n<script>\r\nvar
|
317
|
+
promocode = 'Promo Code';\r\nfunction blurpromotext(){\r\nif(document.getElementById('ff_disc_promoCode').value
|
318
|
+
== '') {\r\ndocument.getElementById('ff_disc_promoCode').value = promocode;\r\n}\r\n}\r\nfunction
|
319
|
+
focuspromotext(){\r\nif(document.getElementById('ff_disc_promoCode').value
|
320
|
+
== promocode) {\r\ndocument.getElementById('ff_disc_promoCode').value = \"\";\r\n}\r\n}\r\n</script>\r\n<script
|
321
|
+
type=\"text/javascript\">\r\n//<![CDATA[\r\nElement.observe(window, 'load',
|
322
|
+
function(){\r\nif(document.getElementById('ff_disc_promoCode').value == '')
|
323
|
+
{\r\ndocument.getElementById('ff_disc_promoCode').value = promocode;\r\n}\r\n});\r\n//]]>\r\n</script>\r\n\r\n<div
|
324
|
+
class=\"clear_both\"></div>\r\n\r\n\r\n<div id=\"ff_disctype\" class=\"subdiv\"
|
325
|
+
>\r\n\r\n</div>\r\n<div id=\"discountsrules\" class=\"subdiv\"><a href=\"javascript:var
|
326
|
+
child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&ibsref=preffare','ibsref','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\"
|
327
|
+
CLASS=\"smallblue\">Passenger type/discount rules</a></div>\r\n\r\n\r\n<script
|
328
|
+
type=\"text/javascript\">\r\n//<![CDATA[\r\nElement.observe(window, 'load',
|
329
|
+
function(){\r\ndiscounttype(\"adult\");\r\njQuery(\"#adult_select0 option[value='Adult']\").attr(\"selected\",
|
330
|
+
\"selected\");\r\n});\r\n//]]>\r\n</script>\r\n\r\n\r\n\r\n\r\n\r\n</form>\r\n</div>\r\n<script>\r\nif(
|
331
|
+
$('ff_sub_tabbar_bookatrip').hasClassName(\"active\") ){\r\nshow_ff_sub_tab('bookatrip');\r\n}
|
332
|
+
else if( $('ff_sub_tabbar_redeem').hasClassName(\"active\") ){\r\nshow_ff_sub_tab('redeem');\r\n}\r\nfunction
|
333
|
+
discounttype(passtype) {\r\nvar totaladults = jQuery('#oth_adults').val();\r\nvar
|
334
|
+
totalseniors = jQuery('#oth_seniors').val();\r\nvar totalchilds = jQuery('#oth_children').val();\r\nvar
|
335
|
+
totalinfants = jQuery('#oth_infants').val();\r\nvar totaladperson = parseInt(totaladults)
|
336
|
+
+ parseInt(totalseniors) ;\r\nvar dischtml='';\r\nvar count=0;\r\nvar sencount
|
337
|
+
=0;\r\nvar adtcount= 0;\r\nvar j=0;\r\nvar k=0;\r\nif ( totaladperson != 0
|
338
|
+
){\r\nfor ( var i=0; i<totaladperson; i++) {\r\ncount++;\r\nvar adultopts=
|
339
|
+
\"<option value='Default'>Select</option><option value='Adult'>Adult</option><option
|
340
|
+
value='Senior'>Senior</option><option value='ADAPaxType_Adult'>Passenger with
|
341
|
+
Disability (PWD)</option><option value='ADAPaxType_Companion'>Companion (Book
|
342
|
+
with PWD)</option><option value='AAA Adult'>AAA Adult</option><option value='NARP'>NARP</option><option
|
343
|
+
value='Military'>Military Adult (Active)</option><option value='Veterans Advantage'>Veterans
|
344
|
+
Advantage</option><option value='Student Advantage'>Student Advantage</option><option
|
345
|
+
value='ISIC'>ISIC</option>\";\r\nvar senopts= \"<option value='Default'>Select</option><option
|
346
|
+
value='Adult'>Adult</option><option value='Senior' selected='selected'>Senior</option><option
|
347
|
+
value='ADAPaxType_Adult'>Passenger with Disability (PWD)</option><option value='ADAPaxType_Companion'>Companion
|
348
|
+
(Book with PWD)</option><option value='AAA Adult'>AAA Adult</option><option
|
349
|
+
value='NARP'>NARP</option><option value='Military'>Military Adult (Active)</option><option
|
350
|
+
value='Veterans Advantage'>Veterans Advantage</option><option value='Student
|
351
|
+
Advantage'>Student Advantage</option><option value='ISIC'>ISIC</option>\";\r\nvar
|
352
|
+
adtlabel=\"Adult\";\r\nif (jQuery('#adult_select'+i).val()) {\r\nvar curadtval
|
353
|
+
= \"value='\"+jQuery('#adult_select'+i).val()+\"'\";\r\nvar newadtval = \"value='\"+jQuery('#adult_select'+i).val()+\"'
|
354
|
+
selected='selected'\";\r\nif (curadtval == \"value='Senior'\" && sencount<totalseniors
|
355
|
+
){\r\nadtlabel = \"Senior\";\r\nsencount++;\r\nadultopts = adultopts.replace(curadtval,
|
356
|
+
newadtval);\r\n} else {\r\nif (curadtval == \"value='Senior'\" && sencount>=totalseniors
|
357
|
+
){\r\nif (j==0) {\r\nj=i;\r\n} else {\r\nj=j+1;\r\n}\r\nwhile (j<=totaladperson)
|
358
|
+
\ {\r\nif (jQuery('#adult_select'+(j+1)).val() != 'Senior') {\r\nvar ncuradtval
|
359
|
+
= \"value='\"+jQuery('#adult_select'+(j+1)).val()+\"'\";\r\nvar nnewadtval
|
360
|
+
= \"value='\"+jQuery('#adult_select'+(j+1)).val()+\"' selected='selected'\";\r\nadultopts
|
361
|
+
= adultopts.replace(ncuradtval, nnewadtval);\r\nbreak;\r\n}\r\nj++;\r\n}\r\n}
|
362
|
+
else {\r\nif (curadtval != \"value='Senior'\" && adtcount<totaladults ){\r\nadtcount++;\r\nadultopts
|
363
|
+
= adultopts.replace(curadtval, newadtval);\r\n} else {\r\nif (curadtval !=
|
364
|
+
\"value='Senior'\" && adtcount>=totaladults ){\r\nif (k==0) {\r\nk=i;\r\n}
|
365
|
+
else {\r\nk=k+1;\r\n}\r\nwhile (k<=totaladperson) {\r\nif (jQuery('#adult_select'+(k+1)).val()
|
366
|
+
== 'Senior') {\r\nvar ncuradtval = \"value='\"+jQuery('#adult_select'+(k+1)).val()+\"'\";\r\nvar
|
367
|
+
nnewadtval = \"value='\"+jQuery('#adult_select'+(k+1)).val()+\"' selected='selected'\";\r\nadultopts
|
368
|
+
= adultopts.replace(ncuradtval, nnewadtval);\r\nadtlabel = \"Senior\";\r\nbreak;\r\n}\r\nk++;\r\n}\r\n}
|
369
|
+
else {\r\nadultopts = adultopts.replace(curadtval, newadtval);\r\n}\r\n}\r\n}\r\n}\r\n}
|
370
|
+
else {\r\nif (passtype== 'senior' || passtype== 'Senior') {\r\nadultopts=senopts;\r\nadtlabel
|
371
|
+
=\"Senior\";\r\n}\r\n}\r\ndischtml += '<div id =\"pass'+count+'\" class=\"'+adtlabel+'\"><div
|
372
|
+
class=\"ff_disc_passenger\"><label id=\"label'+count+'\" for=\"disc_passenger'+count+'\">Passenger
|
373
|
+
#'+count+' ('+adtlabel+')</label><br/><input type=\"hidden\" value=\"/sessionWorkflow/productWorkflow[@product=\\'Rail\\']/tripRequirements/allJourneyRequirements/person['+count+']/personType\"
|
374
|
+
name=\"xwdf_person_type'+count+'\"><select onfocus=\"this.oldvalue = this.value;\"
|
375
|
+
\ onchange=\"totalpass(this,'+count+');this.oldvalue = this.value;\" name=\"wdf_person_type'+count+'\"
|
376
|
+
id=\"adult_select'+i+'\" class=\"disc_passenger_select\">'+adultopts+'</select></div></div>';\r\n}\r\n}\r\nif
|
377
|
+
( totalchilds != 0) {\r\nfor ( var i=0; i<totalchilds; i++) {\r\ncount++;\r\nvar
|
378
|
+
childopts= \"<option value='Default'>Select</option><option value='Child'>Child
|
379
|
+
(Ages 2-12)</option><option value='ADAPaxType_Child'>Passenger with Disability
|
380
|
+
(PWD)</option><option value='AAA Child'>AAA Child (Ages 2-12)</option><option
|
381
|
+
value='Military Child'>Military Child (Ages 2-12)</option>\";\r\nif (jQuery('#child_select'+i).val())
|
382
|
+
{\r\nvar curchival = \"value='\"+jQuery('#child_select'+i).val()+\"'\";\r\nvar
|
383
|
+
newchival = \"value='\"+jQuery('#child_select'+i).val()+\"' selected='selected'\";\r\nchildopts
|
384
|
+
= childopts.replace(curchival, newchival);\r\n}\r\ndischtml += '<div id =\"pass'+count+'\"
|
385
|
+
class=\"ff_disc_passenger\"><label for=\"disc_passenger'+count+'\">Passenger
|
386
|
+
#'+count+' (Child)</label><br/><input type=\"hidden\" value=\"/sessionWorkflow/productWorkflow[@product=\\'Rail\\']/tripRequirements/allJourneyRequirements/person['+count+']/personType\"
|
387
|
+
name=\"xwdf_person_type'+count+'\"><select name=\"wdf_person_type'+count+'\"
|
388
|
+
id=\"child_select'+i+'\" class=\"disc_passenger_select\">'+childopts+'</select></div>';\r\n}\r\n}\r\nif
|
389
|
+
( totalinfants != 0 ) {\r\nfor ( var i=0; i<totalinfants; i++) {\r\ncount++;\r\ndischtml
|
390
|
+
+= '<div id =\"pass'+count+'\" class=\"ff_disc_passenger\"><label for=\"disc_passenger'+count+'\">Passenger
|
391
|
+
#'+count+' (Infant)</label><br/><p>Infant (Under age 2)</p><input type=\"hidden\"
|
392
|
+
value=\"Infant\" name=\"/sessionWorkflow/productWorkflow[@product=\\'Rail\\']/tripRequirements/allJourneyRequirements/person['+count+']/personType\"></div>';\r\n}\r\n}\r\ndocument.getElementById('ff_disctype').innerHTML
|
393
|
+
= dischtml;\r\nif ( count != 0) {\r\ndocument.getElementById(\"ff_disctype\"
|
394
|
+
).style.display = 'block';\r\n} else {\r\ndocument.getElementById(\"ff_disctype\"
|
395
|
+
).style.display = 'none';\r\n}\r\n}\r\nfunction validatePassDiscountSelect(){\r\nvar
|
396
|
+
totaladults = jQuery('#oth_adults').val();\r\nvar totalseniors = jQuery('#oth_seniors').val();\r\nvar
|
397
|
+
totaladperson = parseInt(totaladults) + parseInt(totalseniors) ;\r\nvar totalchilds
|
398
|
+
= jQuery('#oth_children').val();\r\nvar errorMsg = \"\";\r\nif ( totaladperson
|
399
|
+
!= 0 ){\r\nfor (i = 0; i < totaladperson; i++) {\r\nif (jQuery('#adult_select'+i).val()
|
400
|
+
== 'Default') {\r\nerrorMsg = 'Please make sure you have selected a passenger
|
401
|
+
type for all of the members in your traveling party.';\r\n}\r\n}\r\n}\r\nif
|
402
|
+
( totalchilds != 0 ){\r\nfor (i = 0; i < totalchilds; i++) {\r\nif (jQuery('#child_select'+i).val()
|
403
|
+
== 'Default') {\r\nerrorMsg = 'Please make sure you have selected a passenger
|
404
|
+
type for all of the members in your traveling party.';\r\n}\r\n}\r\n}\r\nif
|
405
|
+
(errorMsg!=\"\"){\r\nalert(errorMsg);\r\nreturn false;\r\n} else {\r\nreturn
|
406
|
+
true;\r\n}\r\n}\r\nfunction totalpass(id, ct) {\r\nvar oldvalue = id.oldvalue;\r\nvar
|
407
|
+
newvalue = id.value;\r\nvar newlabel = \"label\"+ct;\r\nif (oldvalue == 'Senior'
|
408
|
+
|| newvalue == 'Senior') {\r\nif (oldvalue == 'Senior' && newvalue != 'Senior')
|
409
|
+
{\r\nvar tadt = parseInt(document.getElementById(\"oth_adults\").value);\r\nvar
|
410
|
+
tsen = parseInt(document.getElementById(\"oth_seniors\").value);\r\ntadt +=
|
411
|
+
1;\r\ntsen -= 1;\r\ndocument.getElementById(\"oth_adults\").value = tadt;\r\ndocument.getElementById(\"oth_seniors\").value
|
412
|
+
= tsen;\r\nvar res = document.getElementById(newlabel).innerHTML.replace(\"Senior\",\"Adult\");\r\ndocument.getElementById(newlabel).innerHTML
|
413
|
+
=res;\r\n} else {\r\nif (newvalue == 'Senior' && oldvalue != 'Senior') {\r\nvar
|
414
|
+
tadt = parseInt(document.getElementById(\"oth_adults\").value);\r\nvar tsen
|
415
|
+
= parseInt(document.getElementById(\"oth_seniors\").value);\r\ntadt -= 1;\r\ntsen
|
416
|
+
+= 1;\r\ndocument.getElementById(\"oth_adults\").value = tadt;\r\ndocument.getElementById(\"oth_seniors\").value
|
417
|
+
= tsen;\r\nvar res = document.getElementById(newlabel).innerHTML.replace(\"Adult\",\"Senior\");\r\ndocument.getElementById(newlabel).innerHTML
|
418
|
+
=res;\r\n}\r\n}\r\n}\r\n}\r\nfunction show_adainfo(faq)\r\n{\r\nif (document.getElementById(\"ada_linktext\")
|
419
|
+
!= undefined)\r\ndocument.getElementById(\"ada_linktext\").style.display =
|
420
|
+
'block';\r\ndocument.getElementById(\"ada_linktext_before\").style.display
|
421
|
+
= 'block';\r\ndocument.getElementById(\"ada_linktext_after\").style.display
|
422
|
+
= 'block';\r\n}\r\nfunction close_adainfo()\r\n{\r\nif (document.getElementById(\"ada_linktext\")
|
423
|
+
!= undefined)\r\ndocument.getElementById(\"ada_linktext\").style.display =
|
424
|
+
'none';\r\ndocument.getElementById(\"ada_linktext_before\").style.display
|
425
|
+
= 'none';\r\ndocument.getElementById(\"ada_linktext_after\").style.display
|
426
|
+
= 'none';\r\n}\r\nfunction closeAlertBox() {\r\nvar $j = jQuery.noConflict();\r\n$j(\".ui-dialog-content\").dialog(\"close\");\r\n}\r\n</script>\r\n<style>\r\n.disc_passenger_select
|
427
|
+
{\r\nmargin-top:2px;\r\nmargin-left:0px;\r\n}\r\n</style>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
428
|
+
id=\"farefinder_tabbody_redeem\" class=\"farefinder_tabbody\">\r\n<h2>Redeem
|
429
|
+
Points</h2>\r\n<form name=\"ff_redeem_form\" action=\"https://tickets.amtrak.com/itd/amtrak\"
|
430
|
+
method=\"post\"><input type=\"hidden\" name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.redeem.PresAmtrakRailRedeemFindATicketReqsPageHandler\"
|
431
|
+
/>\r\n<div id=\"ff_redeem_step_1\" class=\"subdiv\">\r\n<div id=\"ff_member_wrapper\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
432
|
+
class=\"form_line_wrapper first\">\r\n<label for=\"ff_membernumber\">Member
|
433
|
+
Number</label>\r\n<span class=\"form_entry\">\r\n<input type=\"text\" id=\"ff_membernumber\"
|
434
|
+
maxlength=\"10\" name=\"/sessionWorkflow/profileWorkflow/schemeAccount/membershipNumber\"
|
435
|
+
/>\r\n</span>\r\n</div>\r\n<div class=\"form_line_wrapper\">\r\n<label for=\"ff_memberpassword\">Member
|
436
|
+
Password</label>\r\n<span class=\"form_entry\">\r\n<input type=\"password\"
|
437
|
+
id=\"ff_memberpassword\" maxlength=\"29\" name=\"/sessionWorkflow/profileWorkflow/schemeAccount/@password\"
|
438
|
+
/>\r\n</span>\r\n</div>\r\n<br class=\"clear_both\" />\r\n\r\n\r\n\r\n</div>\r\n</div>\r\n<div
|
439
|
+
id=\"ff_tickets_redeem_cities_subdiv\" class=\"subdiv\">\r\n\r\n<div id=\"tickets_dep_city\"
|
440
|
+
class=\"ff_city_wrapper\">\r\n<input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate/@radioSelect\"
|
441
|
+
value=\"arrivalTime\" />\r\n<input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/@bookpath\"
|
442
|
+
value=\"redeem\" />\r\n<label for=\"agrdeparts\">From</label>\r\n<input type=\"hidden\"
|
443
|
+
name=\"xwdf_origin\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/departLocation/search\"
|
444
|
+
/><input class=\"text\" type=\"text\" id=\"agrdeparts\" name=\"wdf_origin\"
|
445
|
+
value=\"askdf\" />\r\n<p><span class=\"find_a_station\"><a title=\"Click for
|
446
|
+
a list of stations.\" href=\"javascript:fieldName='agrdeparts'; openStationList();\">Find
|
447
|
+
a Station</a></span></p>\r\n</div>\r\n<div id=\"tickets_arr_city\" class=\"ff_city_wrapper
|
448
|
+
level3\">\r\n<label for=\"agrarrives\">To</label>\r\n<input type=\"hidden\"
|
449
|
+
name=\"xwdf_destination\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/arriveLocation/search\"
|
450
|
+
/><input class=\"text\" type=\"text\" id=\"agrarrives\" name=\"wdf_destination\"
|
451
|
+
value=\"Boston - Back Bay, MA (BBY)\" />\r\n<p><span class=\"find_a_station\"><a
|
452
|
+
title=\"Click for a list of stations.\" href=\"javascript:fieldName='agrarrives';
|
453
|
+
openStationList();\">Find a Station</a></span></p>\r\n</div>\r\n<div id=\"redeem_from_auto\"
|
454
|
+
class=\"autocomplete level5\" style=\"display:none\"></div>\r\n<div id=\"redeem_to_auto\"
|
455
|
+
class=\"autocomplete level5\" style=\"display:none\"></div>\r\n\r\n</div>\r\n<div
|
456
|
+
id=\"ff_redeem_dep_date_subdiv\" class=\"subdiv\">\r\n<div id=\"redeem_dep_date_time\">\r\n<div
|
457
|
+
class=\"ff_date_wrapper\">\r\n<label for=\"wdfdate15\">Departs</label>\r\n\r\n\r\n<input
|
458
|
+
class=\"wdfDate\" type=\"text\" size=\"22\" id=\"wdfdate15\" maxlength=\"22\"
|
459
|
+
name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate.date\"
|
460
|
+
value=\"Thu, Nov 27, 2014\" readonly=\"readonly\" /></div><div class=\"ff_time_wrapper\"><label
|
461
|
+
for=\"wdftimenull\"><b>Time</b></label><select onfocus=\"updateTimeState()\"
|
462
|
+
onchange=\"timeChanged(15);updateDayDropDownListTrainStatusWithOffsets()\"
|
463
|
+
id=\"wdftime15\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departTime.hourmin\"><option
|
464
|
+
value=\"\">Anytime</option><option value=\"07:00\">Morning</option><option
|
465
|
+
value=\"14:00\">Afternoon</option><option value=\"19:00\">Evening</option><option
|
466
|
+
value=\"23:59\">Midnight</option><option value=\"01:00\">1 AM</option><option
|
467
|
+
value=\"02:00\">2 AM</option><option value=\"03:00\">3 AM</option><option
|
468
|
+
value=\"04:00\">4 AM</option><option value=\"05:00\">5 AM</option><option
|
469
|
+
value=\"06:00\">6 AM</option><option value=\"07:00\">7 AM</option><option
|
470
|
+
value=\"08:00\">8 AM</option><option value=\"09:00\">9 AM</option><option
|
471
|
+
value=\"10:00\">10 AM</option><option value=\"11:00\">11 AM</option><option
|
472
|
+
value=\"12:00\">Noon</option><option value=\"13:00\">1 PM</option><option
|
473
|
+
value=\"14:00\">2 PM</option><option value=\"15:00\">3 PM</option><option
|
474
|
+
value=\"16:00\">4 PM</option><option value=\"17:00\">5 PM</option><option
|
475
|
+
value=\"18:00\">6 PM</option><option value=\"19:00\">7 PM</option><option
|
476
|
+
value=\"20:00\">8 PM</option><option value=\"21:00\">9 PM</option><option
|
477
|
+
value=\"22:00\">10 PM</option><option value=\"23:00\">11 PM</option></select>\r\n\r\n</div>\r\n</div>\r\n</div>\r\n<div
|
478
|
+
id=\"ff_redeem_passengers_subdiv\" class=\"subdiv\">\r\n<div id=\"redeem_passengers\">\r\n<div
|
479
|
+
id=\"ff_submit_button\">\r\n<input type=\"image\" alt=\"Click to Find Tickets\"
|
480
|
+
name=\"_handler=amtrak.presentation.handler.request.rail.redeem.PresAmtrakRailRedeemSearchRequestHandler\"
|
481
|
+
onclick=\"javascript:return preRedeemSubmitActions('The following information
|
482
|
+
is needed to process your request:')\" src=\"/images/en/btn_ff_findTrains.gif\"
|
483
|
+
border=\"0\" />\r\n</div>\r\n<div id=\"passenger_wrapper\">\r\n<label for=\"redeemadults\">Passengers</label><br>
|
484
|
+
(Max. of 8)\r\n</div>\r\n<div id=\"ff_redeem_passenger_select_wrapper\">\r\n<select
|
485
|
+
id=\"redeemadults\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Adult']\"><option
|
486
|
+
value=\"1\" selected=\"selected\">1</option><option value=\"2\">2</option><option
|
487
|
+
value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option
|
488
|
+
value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option></select>\r\n</div>\r\n</div>\r\n<br/>\r\n<p><a
|
489
|
+
href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&help=agrFindTicket','help','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\"
|
490
|
+
\ CLASS=\"smallblue\">Learn more</a> about redeeming points online for Amtrak
|
491
|
+
travel.</p>\r\n</div>\r\n<br class=\"clear_both\" />\r\n</form>\r\n</div>\r\n<script
|
492
|
+
language=\"JavaScript\" type=\"text/javascript\">\r\n<!--\r\nif( $('ff_sub_tabbar_bookatrip').hasClassName(\"active\")
|
493
|
+
){\r\nshow_ff_sub_tab('bookatrip');\r\n} else if( $('ff_sub_tabbar_redeem').hasClassName(\"active\")
|
494
|
+
){\r\nshow_ff_sub_tab('redeem');\r\n}\r\n//-->\r\n</script>\r\n\r\n\r\n\r\n<div
|
495
|
+
id=\"farefinder_tabbody_traveloptions\" class=\"farefinder_tabbody\">\r\n<div
|
496
|
+
class=\"cmstraveloptions\" id=\"cmstraveloptions\">\r\n<p><a class=\"button\"
|
497
|
+
href=\"/rail-deals-every-week-25-off-amtrak-fares-across-the-us\"> \r\n\r\n<img
|
498
|
+
src='http://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fgif&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288596252&ssbinary=true'
|
499
|
+
alt='Start Saving with SmartFares - New Deals Every Week'></img>\r\n\r\n</a><br
|
500
|
+
/>\r\n<a class=\"button\" href=\"http://tickets.amtrak.com/itd/amtrak/autotrain\">
|
501
|
+
\r\n\r\n<img src='http://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fgif&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288596551&ssbinary=true'
|
502
|
+
alt='Make a Reservation on the Auto Train'></img>\r\n\r\n</a><br />\r\n<a
|
503
|
+
class=\"button\" href=\"http://tickets.amtrak.com/itd/amtrak/multiride\">
|
504
|
+
\r\n\r\n<img src='http://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fgif&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288591884&ssbinary=true'
|
505
|
+
alt='Buy Multi-Ride Tickets'></img>\r\n\r\n</a><br />\r\n<a class=\"button\"
|
506
|
+
href=\"http://tickets.amtrak.com/itd/amtrak/selectpass\"> \r\n\r\n<img src='http://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fgif&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288591915&ssbinary=true'
|
507
|
+
alt='Buy a USA Rail Pass'></img>\r\n\r\n</a><br />\r\n<a class=\"button\"
|
508
|
+
href=\"/hotels-cars-travel-insurance-and-more\"> \r\n\r\n<img src='http://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fgif&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288591946&ssbinary=true'
|
509
|
+
alt='Complete Your Trip with Hotels, Cars, Travel Insurance and More'></img>\r\n\r\n</a><br
|
510
|
+
/>\r\n<a class=\"button\" href=\"http://tickets.amtrak.com/itd/amtrak/grouptravel\">
|
511
|
+
\r\n\r\n<img src='http://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fgif&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288591983&ssbinary=true'
|
512
|
+
alt='Make a Group Travel Request'></img>\r\n\r\n</a></p>\r\n</div>\r\n</div>\r\n\r\n<div
|
513
|
+
id=\"farefinder_tabbody_status\" class=\"farefinder_tabbody\">\r\n\r\n<form
|
514
|
+
onsubmit=\"javascript:return CheckMandatoryTrainStatusFields(this)\" name=\"ff_status_form\"
|
515
|
+
action=\"http://tickets.amtrak.com/itd/amtrak\" method=\"post\"><input type=\"hidden\"
|
516
|
+
name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
|
517
|
+
/>\r\n<h2>Status</h2>\r\n<div id=\"ff_status_step_1\" class=\"subdiv1\">\r\n<h3>Check
|
518
|
+
Status of a Train</h3>\r\n<div class=\"form_line_wrapper first\">\r\n<label
|
519
|
+
for=\"status_date\">\r\nDate:\r\n</label>\r\n<span class=\"form_entry\">\r\n\r\n\r\n<input
|
520
|
+
class=\"wdfDate\" type=\"text\" size=\"22\" id=\"wdfdate10\" maxlength=\"22\"
|
521
|
+
name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate.date\"
|
522
|
+
value=\"Thu, Nov 27, 2014\" readonly=\"readonly\" />\r\n\r\n</span>\r\n</div>\r\n<div
|
523
|
+
class=\"form_line_wrapper\">\r\n<label for=\"status_train_num\">\r\nTrain
|
524
|
+
No.\r\n</label>\r\n<span class=\"form_entry\">\r\n<input type=\"hidden\" name=\"xwdf_trainNumber\"
|
525
|
+
value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/segmentRequirements[1]/serviceCode\"
|
526
|
+
/><input onfocus=\"if (this.value=='optional') { this.value=''; updateMaxLength();
|
527
|
+
};\" type=\"text\" size=\"4\" id=\"status_train_num\" maxlength=\"8\" name=\"wdf_trainNumber\"
|
528
|
+
value=\"optional\" />\r\n</span>\r\n</div>\r\n<br class=\"clear_both\" />\r\n</div>\r\n<div
|
529
|
+
id=\"ff_status_step_2\" class=\"subdiv\">\r\n<div id=\"ff_status_footnote_submit_wrapper\">\r\n<p>One
|
530
|
+
city is required if train number is used.</p>\r\n</div>\r\n<div id=\"status_dep_city\"
|
531
|
+
class=\"ff_city_wrapper\">\r\n<label for=\"status_from\">\r\nFrom\r\n</label>\r\n<!--
|
532
|
+
itd:locationinput id=\"status_dep\" wdfxpath=\"travelSelection/journeySelection[1]/departLocation\"
|
533
|
+
wdfhtmlname=\"wdf_origin\" wdflimitedlocations=\"resource:TRAVEL_USE_LIMITED_LOCATIONS\"
|
534
|
+
size=\"25\" / -->\r\n<input type=\"hidden\" name=\"xwdf_origin\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/departLocation/search\"
|
535
|
+
/><input type=\"text\" autocomplete=\"off\" id=\"status_from\" maxlength=\"150\"
|
536
|
+
name=\"wdf_origin\" value=\"askdf\" />\r\n<p><span class=\"find_a_station\">\r\n<a
|
537
|
+
title=\"Click for a list of stations.\" href=\"javascript:fieldName='status_from';
|
538
|
+
openStationList();\">Find a Station</a>\r\n</span></p>\r\n</div>\r\n<div id=\"status_arr_city\"
|
539
|
+
class=\"ff_city_wrapper\">\r\n<label for=\"status_to\">\r\nTo\r\n</label>\r\n<!--
|
540
|
+
itd:locationinput id=\"status_to\" wdfxpath=\"travelSelection/journeySelection[1]/arriveLocation\"
|
541
|
+
wdfhtmlname=\"wdf_destination\" wdflimitedlocations=\"resource:TRAVEL_USE_LIMITED_LOCATIONS\"
|
542
|
+
size=\"25\" / -->\r\n<input type=\"hidden\" name=\"xwdf_destination\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/arriveLocation/search\"
|
543
|
+
/><input type=\"text\" autocomplete=\"off\" id=\"status_to\" maxlength=\"150\"
|
544
|
+
name=\"wdf_destination\" value=\"Boston - Back Bay, MA (BBY)\" />\r\n<p><span
|
545
|
+
class=\"find_a_station\">\r\n<a title=\"Click for a list of stations.\" href=\"javascript:fieldName='status_to';
|
546
|
+
openStationList();\">Find a Station</a>\r\n</span></p>\r\n</div>\r\n</div>\r\n<div
|
547
|
+
id=\"ff_status_step_3\" class=\"subdiv\">\r\n<div id=\"status_from_auto\"
|
548
|
+
class=\"autocomplete\" style=\"display:none\"></div>\r\n<div id=\"status_to_auto\"
|
549
|
+
class=\"autocomplete\" style=\"display:none\"></div>\r\n<div id=\"status_arr_or_dep_wrapper\">\r\n\r\n\r\n<input
|
550
|
+
type=\"hidden\" name=\"xwdf_SortBy\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate/@radioSelect\"
|
551
|
+
/><input type=\"radio\" id=\"status_arr\" name=\"wdf_SortBy\" value=\"arrivalTime\"
|
552
|
+
checked=\"checked\" />\r\n<label for=\"status_arr\">\r\nScheduled Arrive\r\n</label>\r\n \r\n<input
|
553
|
+
type=\"hidden\" name=\"xwdf_SortBy\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate/@radioSelect\"
|
554
|
+
/><input type=\"radio\" id=\"status_dep\" name=\"wdf_SortBy\" value=\"departTime\"
|
555
|
+
/>\r\n<label for=\"status_dep\">\r\nScheduled Depart\r\n</label>\r\n\r\n\r\n\r\n\r\n</div>\r\n<div
|
556
|
+
class=\"form_line_wrapper\">\r\n<label for=\"status_time\">\r\nTime\r\n</label>\r\n<span
|
557
|
+
class=\"form_entry\">\r\n\r\n\r\n<select onfocus=\"updateTimeState()\" onchange=\"timeChanged(10);updateDayDropDownListTrainStatusWithOffsets()\"
|
558
|
+
id=\"wdftime10\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departTime.hourmin\"><option
|
559
|
+
value=\"\">Anytime</option><option value=\"07:00\">Morning</option><option
|
560
|
+
value=\"14:00\">Afternoon</option><option value=\"19:00\">Evening</option><option
|
561
|
+
value=\"23:59\">Midnight</option><option value=\"01:00\">1 AM</option><option
|
562
|
+
value=\"02:00\">2 AM</option><option value=\"03:00\">3 AM</option><option
|
563
|
+
value=\"04:00\">4 AM</option><option value=\"05:00\">5 AM</option><option
|
564
|
+
value=\"06:00\">6 AM</option><option value=\"07:00\">7 AM</option><option
|
565
|
+
value=\"08:00\">8 AM</option><option value=\"09:00\">9 AM</option><option
|
566
|
+
value=\"10:00\">10 AM</option><option value=\"11:00\">11 AM</option><option
|
567
|
+
value=\"12:00\">Noon</option><option value=\"13:00\">1 PM</option><option
|
568
|
+
value=\"14:00\">2 PM</option><option value=\"15:00\">3 PM</option><option
|
569
|
+
value=\"16:00\">4 PM</option><option value=\"17:00\">5 PM</option><option
|
570
|
+
value=\"18:00\">6 PM</option><option value=\"19:00\">7 PM</option><option
|
571
|
+
value=\"20:00\">8 PM</option><option value=\"21:00\">9 PM</option><option
|
572
|
+
value=\"22:00\">10 PM</option><option value=\"23:00\">11 PM</option></select>\r\n\r\n</span>\r\n</div>\r\n</div>\r\n<div
|
573
|
+
id=\"ff_status_submit_wrapper\" class=\"subdiv\">\r\n<input type=\"hidden\"
|
574
|
+
name=\"_handler=amtrak.presentation.handler.request.rail.AmtrakRailTrainStatusSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
|
575
|
+
/>\r\n<input type=\"image\" alt=\"Check Status\" name=\"_handler=amtrak.presentation.handler.request.rail.AmtrakRailTrainStatusSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
|
576
|
+
src=\"/images/en/btn_checkStatus.gif\" border=\"0\" />\r\n</div>\r\n</form>\r\n\r\n</div>\r\n<div
|
577
|
+
id=\"farefinder_tabbody_schedules\" class=\"farefinder_tabbody\">\r\n\r\n<form
|
578
|
+
onsubmit=\"javascript:return CheckMandatoryScheduleFields(this);\" name=\"ff_schedules_form\"
|
579
|
+
action=\"http://tickets.amtrak.com/itd/amtrak\" method=\"post\"><input type=\"hidden\"
|
580
|
+
name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
|
581
|
+
/>\r\n<h2>Schedules</h2>\r\n<div id=\"ff_schedules_tt_cities_subdiv\" class=\"subdiv\">\r\n<div
|
582
|
+
id=\"schedules_dep_city\" class=\"ff_city_wrapper\">\r\n<label for=\"schedules_from\">From</label>\r\n<input
|
583
|
+
type=\"hidden\" name=\"xwdf_origin\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/departLocation/search\"
|
584
|
+
/><input type=\"text\" autocomplete=\"off\" id=\"schedules_from\" maxlength=\"150\"
|
585
|
+
name=\"wdf_origin\" value=\"askdf\" />\r\n<p><span class=\"find_a_station\"><a
|
586
|
+
title=\"Click for a list of stations.\" href=\"javascript:fieldName='schedules_from';
|
587
|
+
openStationList();\">Find a Station</a></span></p>\r\n<!-- itd:locationinput
|
588
|
+
id=\"schedules_from\" wdfxpath=\"travelSelection/journeySelection[1]/departLocation\"
|
589
|
+
wdfhtmlname=\"wdf_origin\" wdflimitedlocations=\"resource:TRAVEL_USE_LIMITED_LOCATIONS\"
|
590
|
+
size=\"40\" / -->\r\n\r\n</div>\r\n<div id=\"schedules_arr_city\" class=\"ff_city_wrapper\">\r\n<label
|
591
|
+
for=\"schedules_to\">To</label>\r\n<!-- itd:locationinput id=\"schedules_to\"
|
592
|
+
wdfxpath=\"travelSelection/journeySelection[1]/arriveLocation\" wdfhtmlname=\"wdf_destination\"
|
593
|
+
wdflimitedlocations=\"resource:TRAVEL_USE_LIMITED_LOCATIONS\" size=\"40\"
|
594
|
+
/ -->\r\n<input type=\"hidden\" name=\"xwdf_destination\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/arriveLocation/search\"
|
595
|
+
/><input type=\"text\" autocomplete=\"off\" id=\"schedules_to\" maxlength=\"150\"
|
596
|
+
name=\"wdf_destination\" value=\"Boston - Back Bay, MA (BBY)\" />\r\n<p><span
|
597
|
+
class=\"find_a_station\"><a title=\"Click for a list of stations.\" href=\"javascript:fieldName='schedules_to';
|
598
|
+
openStationList();\">Find a Station</a></span></p>\r\n\r\n</div>\r\n</div>\r\n<div
|
599
|
+
id=\"ff_schedules_dep_ret_date_subdiv\" class=\"subdiv\">\r\n<div id=\"schedule_from_auto\"
|
600
|
+
class=\"autocomplete\" style=\"display:none\"></div>\r\n<div id=\"schedule_to_auto\"
|
601
|
+
class=\"autocomplete\" style=\"display:none\"></div>\r\n<div id=\"schedules_dep_date_time\">\r\n<div
|
602
|
+
class=\"ff_date_wrapper\">\r\n<label for=\"schedules_dep_date\">Depart</label>\r\n\r\n\r\n<input
|
603
|
+
class=\"wdfDate\" type=\"text\" size=\"22\" id=\"wdfdate5\" maxlength=\"22\"
|
604
|
+
name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate.date\"
|
605
|
+
value=\"Thu, Nov 27, 2014\" readonly=\"readonly\" /></div><div class=\"ff_time_wrapper\"><label
|
606
|
+
for=\"wdftimenull\"><b>Time</b></label><select onfocus=\"updateTimeState()\"
|
607
|
+
onchange=\"timeChanged(5);updateDayDropDownListTrainStatusWithOffsets()\"
|
608
|
+
id=\"wdftime5\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departTime.hourmin\"><option
|
609
|
+
value=\"\">Anytime</option><option value=\"07:00\">Morning</option><option
|
610
|
+
value=\"14:00\">Afternoon</option><option value=\"19:00\">Evening</option><option
|
611
|
+
value=\"23:59\">Midnight</option><option value=\"01:00\">1 AM</option><option
|
612
|
+
value=\"02:00\">2 AM</option><option value=\"03:00\">3 AM</option><option
|
613
|
+
value=\"04:00\">4 AM</option><option value=\"05:00\">5 AM</option><option
|
614
|
+
value=\"06:00\">6 AM</option><option value=\"07:00\">7 AM</option><option
|
615
|
+
value=\"08:00\">8 AM</option><option value=\"09:00\">9 AM</option><option
|
616
|
+
value=\"10:00\">10 AM</option><option value=\"11:00\">11 AM</option><option
|
617
|
+
value=\"12:00\">Noon</option><option value=\"13:00\">1 PM</option><option
|
618
|
+
value=\"14:00\">2 PM</option><option value=\"15:00\">3 PM</option><option
|
619
|
+
value=\"16:00\">4 PM</option><option value=\"17:00\">5 PM</option><option
|
620
|
+
value=\"18:00\">6 PM</option><option value=\"19:00\">7 PM</option><option
|
621
|
+
value=\"20:00\">8 PM</option><option value=\"21:00\">9 PM</option><option
|
622
|
+
value=\"22:00\">10 PM</option><option value=\"23:00\">11 PM</option></select>\r\n\r\n</div>\r\n</div>\r\n</div>\r\n<div
|
623
|
+
id=\"ff_schedules_timetables_submit_wrapper\" class=\"subdiv\">\r\n<input
|
624
|
+
type=\"hidden\" name=\"_handler=amtrak.presentation.handler.request.rail.AmtrakCMSRailSchedulesSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
|
625
|
+
/>\r\n<input type=\"image\" alt=\"Find Schedules\" name=\"_handler=amtrak.presentation.handler.request.rail.AmtrakCMSRailSchedulesSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
|
626
|
+
src=\"/images/en/btn_findSchedules.gif\" border=\"0\" />\r\n</div>\r\n<div
|
627
|
+
id=\"ff_schedules_timetables_footer_wrapper\">\r\n<p><a href=\"http://www.amtrak.com/servlet/Satellite/Page/1237405732505/1237405732505\">Download
|
628
|
+
printable timetables</a></p>\r\n</div>\r\n</form>\r\n\r\n</div>\r\n<div id=\"farefinder_tabbody_mytrip\"
|
629
|
+
class=\"farefinder_tabbody\">\r\n<h2>My Trip</h2>\r\n<div id=\"ff_mytrip_step_1\"
|
630
|
+
class=\"subdiv\">\r\n<form onsubmit=\"javascript:return CheckMandatoryMyTripFields(this)\"
|
631
|
+
name=\"mytrip_res\" action=\"http://tickets.amtrak.com/itd/amtrak\" method=\"post\"><input
|
632
|
+
type=\"hidden\" name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
|
633
|
+
/>\r\n<h3>Find a Reservation</h3>\r\n<div class=\"form_line_wrapper first\">\r\n<label
|
634
|
+
for=\"mytrip_res_num\">Reservation Number</label><span class=\"form_entry\">\r\n<input
|
635
|
+
type=\"text\" id=\"mytrip_res_num\" name=\"/sessionWorkflow/itineraryWorkflow/basket/booking/reference\"
|
636
|
+
value=\"\" />\r\n</span>\r\n</div>\r\n<div class=\"form_line_wrapper\">\r\n<strong>and</strong>\r\n</div>\r\n<div
|
637
|
+
class=\"form_line_wrapper\">\r\n<label for=\"mytrip_res_email\">E-mail Address</label><span
|
638
|
+
class=\"form_entry\">\r\n<input type=\"text\" id=\"mytrip_res_email\" name=\"/sessionWorkflow/itineraryWorkflow/basket/booking/bookingOptions/bookingFulfilment/contact/contactEmailAddress/emailAddress\"
|
639
|
+
value=\"\" />\r\n</span>\r\n</div>\r\n<div class=\"form_line_wrapper\">\r\n<div
|
640
|
+
class=\"separator\">-or-</div>\r\n</div>\r\n<div class=\"form_line_wrapper\">\r\n<label
|
641
|
+
for=\"mytrip_res_zip\">Telephone Number</label><span class=\"form_entry\">\r\n<input
|
642
|
+
type=\"text\" id=\"mytrip_res_zip\" name=\"/sessionWorkflow/itineraryWorkflow/basket/booking/bookingOptions/bookingFulfilment/contact/contactTelephone/number\"
|
643
|
+
value=\"\" />\r\n</span>\r\n</div>\r\n<div id=\"ff_mytrip_res_submit\">\r\n<input
|
644
|
+
type=\"hidden\" name=\"_handler=com.sita.ats.amtrak.presentation.handler.request.itinerary.AmtrakLoggedOutTripDetailsRequestHandler\"
|
645
|
+
/>\r\n<input class=\"image\" type=\"image\" alt=\"Find Reservation\" name=\"_handler=com.sita.ats.amtrak.presentation.handler.request.itinerary.AmtrakLoggedOutTripDetailsRequestHandler\"
|
646
|
+
src=\"/images/en/btn_find.gif\" />\r\n</div>\r\n</form>\r\n</div>\r\n\r\n<div
|
647
|
+
id=\"ff_mytrip_step_2\" class=\"subdiv\">\r\n<div id=\"mytrip_or\"><span>Or</span></div>\r\n\r\n<form
|
648
|
+
onsubmit=\"javascript:return CheckMandatoryLoginFields(this)\" name=\"mytrip_acct\"
|
649
|
+
action=\"https://tickets.amtrak.com/itd/amtrak\" method=\"post\"><input type=\"hidden\"
|
650
|
+
name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
|
651
|
+
/>\r\n<input type=\"hidden\" name=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/@logontype\"
|
652
|
+
value=\"mytrip\" />\r\n<h3>Log in to your Amtrak.com Account</h3>\r\n<div
|
653
|
+
class=\"form_line_wrapper\">\r\n<label for=\"mytrip_acct_email\">E-mail Address</label><span
|
654
|
+
class=\"form_entry\">\r\n<input type=\"hidden\" name=\"xwdf_username\" value=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/userName\"
|
655
|
+
/><input autocomplete=\"off\" type=\"text\" id=\"mytrip_acct_email\" maxlength=\"64\"
|
656
|
+
name=\"wdf_username\" />\r\n</span>\r\n</div>\r\n<div class=\"form_line_wrapper\">\r\n<label
|
657
|
+
for=\"mytrip_acct_pwd\">Password</label><span class=\"form_entry\">\r\n<input
|
658
|
+
type=\"hidden\" name=\"xwdf_password\" value=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/password\"
|
659
|
+
/><input type=\"password\" id=\"mytrip_acct_pwd\" maxlength=\"20\" name=\"wdf_password\"
|
660
|
+
/>\r\n</span>\r\n</div>\r\n<div id=\"ff_mytrip_acct_submit\">\r\n<a class=\"forgot_pass\"
|
661
|
+
title=\"Click here to request your Password\" href=\"javascript:fieldName='wdf_RequestUserID';
|
662
|
+
openRequestUserID();\">Forgot password?</a>\r\n<input type=\"hidden\" name=\"_handler=com.sita.ats.amtrak.presentation.handler.request.profile.AmtrakProfileLogonRequestHandler/_xpath=/sessionWorkflow/userWorkflow/profileAccountRequirements\"
|
663
|
+
/>\r\n<input type=\"image\" alt=\"Log In\" name=\"_handler=com.sita.ats.amtrak.presentation.handler.request.profile.AmtrakProfileLogonRequestHandler/_xpath=/sessionWorkflow/userWorkflow/profileAccountRequirements\"
|
664
|
+
onclick=\"\" src=\"/images/en/btn_login.gif\" />\r\n</div>\r\n</form>\r\n\r\n</div>\r\n\r\n</div>\r\n</div>\r\n\r\n\r\n<script
|
665
|
+
type=\"text/javascript\" language=\"javascript\" charset=\"utf-8\">\r\n//
|
666
|
+
<![CDATA[\r\nnew Ajax.Autocompleter('departs','autocomplete_availability_from',
|
667
|
+
'/itd/amtrak/AutoComplete', {\r\nparamName: \"_origin\",\r\nminChars: 2,\r\nfrequency:
|
668
|
+
0.5\r\n}\r\n);\r\nnew Ajax.Autocompleter('arrives','autocomplete_availability_to','/itd/amtrak/AutoComplete',
|
669
|
+
{\r\nparamName: \"_destination\",\r\nminChars: 2,\r\nfrequency: 0.5\r\n}\r\n);\r\nnew
|
670
|
+
Ajax.Autocompleter('agrdeparts','redeem_from_auto', '/itd/amtrak/AutoComplete',
|
671
|
+
{\r\nparamName: \"_origin\",\r\nminChars: 2,\r\nfrequency: 0.5\r\n}\r\n);\r\nnew
|
672
|
+
Ajax.Autocompleter('agrarrives','redeem_to_auto','/itd/amtrak/AutoComplete',
|
673
|
+
{\r\nparamName: \"_destination\",\r\nminChars: 2,\r\nfrequency: 0.5\r\n}\r\n);\r\nnew
|
674
|
+
Ajax.Autocompleter('schedules_from','schedule_from_auto','/itd/amtrak/AutoComplete',
|
675
|
+
{\r\nparamName: \"_origin\",\r\nminChars: 2,\r\nfrequency: 0.5\r\n}\r\n);\r\nnew
|
676
|
+
Ajax.Autocompleter('schedules_to','schedule_to_auto','/itd/amtrak/AutoComplete',
|
677
|
+
{\r\nparamName: \"_destination\",\r\nminChars: 2,\r\nfrequency: 0.5\r\n}\r\n);\r\nnew
|
678
|
+
Ajax.Autocompleter('status_from','status_from_auto','/itd/amtrak/AutoComplete',
|
679
|
+
{\r\nparamName: \"_origin\",\r\nminChars: 2,\r\nfrequency: 0.5\r\n}\r\n);\r\nnew
|
680
|
+
Ajax.Autocompleter('status_to','status_to_auto','/itd/amtrak/AutoComplete',
|
681
|
+
{\r\nparamName: \"_destination\",\r\nminChars: 2,\r\nfrequency: 0.5\r\n}\r\n);\r\n//
|
682
|
+
]]>\r\n</script>\r\n\r\n<!-- End HTML for Fare Finder -->\r\n<script language=\"JavaScript\"
|
683
|
+
type=\"text/javascript\">\r\n<!--\r\nfunction CheckMandatoryTrainStatusFields(statusForm)
|
684
|
+
{\r\nvar errorMsg =\"\";\r\nvar fieldList = \"\";\r\nvar origin = statusForm.wdf_origin.value;\r\nvar
|
685
|
+
destination = statusForm.wdf_destination.value;\r\nvar trainNumber = statusForm.wdf_trainNumber.value;\r\nif(eval(\"statusForm.wdf_trainNumber.value\")
|
686
|
+
== \"optional\") {\r\ntrainNumber = \"\";\r\n}\r\nif (trainNumber == \"\"
|
687
|
+
&& origin == \"\" && destination == \"\")\r\nfieldList = \"Problem with Departure
|
688
|
+
and Arrival Station/City: Please provide a valid departure and arrival station
|
689
|
+
or city name and resubmit. \\n[Error ID: 573S]\" + \"\\n\";\r\nif (trainNumber
|
690
|
+
== \"\" && origin != \"\" && destination == \"\")\r\nfieldList = fieldList
|
691
|
+
+ \"Problem with Arrival Station/City or Train Number: Please provide a valid
|
692
|
+
arrival station/city or train number and resubmit. \\n[Error ID: 574S]\" +
|
693
|
+
\"\\n\";\r\nif (trainNumber == \"\" && origin == \"\" && destination != \"\")\r\nfieldList
|
694
|
+
= fieldList + \"Problem with Departure Station/City or Train Number: Please
|
695
|
+
provide a valid departure station/city or train number and resubmit. \\n[Error
|
696
|
+
ID: 575S]\" + \"\\n\";\r\nif (trainNumber != \"\" && origin == \"\" && destination
|
697
|
+
== \"\")\r\nfieldList = fieldList + \"Problem with Departure or Arrival Station/City:
|
698
|
+
Please provide a valid departure or arrival station or city name and resubmit.
|
699
|
+
\\n[Error ID: 576S]\" + \"\\n\";\r\nif ((trainNumber != \"\") && (!IsNumber(trainNumber)))\r\nfieldList
|
700
|
+
= fieldList + \"Problem with Train Number: Sorry, we cannot find the train
|
701
|
+
number you provided. Please check for accuracy and re-enter. Or, delete the
|
702
|
+
train number and provide a departure and arrival station/city. To find a specific
|
703
|
+
station, please click on the \\'Find a Station\\' link and select a station
|
704
|
+
from the list provided. \\n[Error ID: 577S]\" + \"\\n\";\r\nif (fieldList
|
705
|
+
!= \"\") {\r\nerrorMsg = \"The following information is needed to process
|
706
|
+
your request:\" + \"\\n\\n\" + fieldList;\r\n}\r\nif (errorMsg != \"\") {\r\nalert(errorMsg);\r\nreturn
|
707
|
+
false;\r\n}\r\nreturn true;\r\n}\r\nfunction CheckMandatoryScheduleFields(statusForm)
|
708
|
+
{\r\nvar errorMsg =\"\";\r\nvar fieldList = \"\";\r\nvar origin = statusForm.wdf_origin.value;\r\nvar
|
709
|
+
destination = statusForm.wdf_destination.value;\r\nif (origin == \"\" && destination
|
710
|
+
== \"\")\r\nfieldList = \"Problem with Departure and Arrival Station/City:
|
711
|
+
Please provide a valid departure and arrival station or city name and resubmit.
|
712
|
+
\\n[Error ID: 573S]\" + \"\\n\";\r\nif (origin != \"\" && destination == \"\")\r\nfieldList
|
713
|
+
= fieldList + \"Problem with Departure and Arrival Station/City: Please provide
|
714
|
+
a valid departure and arrival station or city name and resubmit. \\n[Error
|
715
|
+
ID: 573S]\" + \"\\n\";\r\nif (origin == \"\" && destination != \"\")\r\nfieldList
|
716
|
+
= fieldList + \"Problem with Departure and Arrival Station/City: Please provide
|
717
|
+
a valid departure and arrival station or city name and resubmit. \\n[Error
|
718
|
+
ID: 573S]\" + \"\\n\";\r\nif (fieldList != \"\") {\r\nerrorMsg = \"The following
|
719
|
+
information is needed to process your request:\" + \"\\n\\n\" + fieldList;\r\n}\r\nif
|
720
|
+
(errorMsg != \"\") {\r\nalert(errorMsg);\r\nreturn false;\r\n}\r\nreturn true;\r\n}\r\nfunction
|
721
|
+
CheckMandatoryMyTripFields(theForm) {\r\nvar errorMsg =\"\";\r\nvar fieldList
|
722
|
+
= \"\";\r\nif ($('mytrip_res_num').value.empty()) {\r\nfieldList += \" --
|
723
|
+
reservation number\\n\";\r\n}\r\nif ($('mytrip_res_email').value.empty() &&
|
724
|
+
$('mytrip_res_zip').value.empty()) {\r\nfieldList += \" -- email address or
|
725
|
+
telephone number\\n\";\r\n}\r\nif (fieldList != \"\") {\r\nerrorMsg=\"The
|
726
|
+
following information is needed to process your request:\" + \"\\n\" + fieldList+
|
727
|
+
\"\\n\\n\";\r\nalert(errorMsg);\r\nreturn false;\r\n}\r\nreturn true;\r\n}\r\nfunction
|
728
|
+
CheckMandatoryMyTripFields(theForm) {\r\nvar errorMsg =\"\";\r\nvar fieldList
|
729
|
+
= \"\";\r\nif ($('mytrip_res_num').value.empty()) {\r\nfieldList += \" --
|
730
|
+
reservation number\\n\";\r\n}\r\nif ($('mytrip_res_email').value.empty() &&
|
731
|
+
$('mytrip_res_zip').value.empty()) {\r\nfieldList += \" -- email address or
|
732
|
+
telephone number\\n\";\r\n}\r\nif (fieldList != \"\") {\r\nerrorMsg=\"The
|
733
|
+
following information is needed to process your request:\" + \"\\n\" + fieldList+
|
734
|
+
\"\\n\\n\";\r\nalert(errorMsg);\r\nreturn false;\r\n}\r\nreturn true;\r\n}\r\nfunction
|
735
|
+
CheckMandatoryLoginFields(theForm) {\r\nvar errorMsg =\"\";\r\nvar fieldList
|
736
|
+
= \"\";\r\nif(eval(\"theForm.wdf_username.value\") == \"\") {\r\nfieldList
|
737
|
+
+= \" -- username\\n\";\r\n}\r\nif(eval(\"theForm.wdf_password.value\") ==
|
738
|
+
\"\") {\r\nfieldList += \" -- password\\n\";\r\n}\r\nif (fieldList != \"\")
|
739
|
+
{\r\nerrorMsg=\"The following information is needed to process your request:\"
|
740
|
+
+ \"\\n\" + fieldList+ \"\\n\\n\";\r\nalert(errorMsg);\r\nreturn false;\r\n}\r\nreturn
|
741
|
+
true;\r\n}\r\n//Aibe-2026,Mac safari issue.\r\nfunction updateMaxLength()\r\n{\r\ntrainNum
|
742
|
+
= document.getElementById('status_train_num');\r\ntrainNum.setAttribute(\"maxLength\",
|
743
|
+
4);\r\n}\r\nfunction validatePasswordSize() {\r\nvar memberPwd = document.getElementById('ff_memberpassword');\r\nif((memberPwd
|
744
|
+
!= null) && (memberPwd.value != \"\")) {\r\nif ((memberPwd.value.length <
|
745
|
+
'6') ||\r\n(memberPwd.value.length > '29') ) {\r\nreturn 'The password you
|
746
|
+
entered is invalid. Please try again or call 1-800-307-5000 for assistance
|
747
|
+
(Sunday - Saturday, 5 am - midnight ET). [Error ID: 1114R]';\r\n}\r\n}\r\nreturn
|
748
|
+
\"\";\r\n}\r\nfunction checkRedeemMandatoryFields(theForm) {\r\nvar errorMsg
|
749
|
+
=\"\";\r\nvar fieldList = \"\";\r\nvar origin = document.ff_redeem_form.agrdeparts.value;\r\nvar
|
750
|
+
destination = document.ff_redeem_form.agrarrives.value;\r\nvar startDate =
|
751
|
+
document.getElementById('wdfdate15').value;\r\nvar memberNo = document.getElementById('ff_membernumber');\r\nvar
|
752
|
+
memberPwd = document.getElementById('ff_memberpassword');\r\nif (memberNo
|
753
|
+
!= null) { //member number null means login was already validated\r\nif (memberNo.value
|
754
|
+
== \"\") {\r\nfieldList = fieldList + \" -- Member Number\\n\";\r\n}\r\n}\r\nif(memberPwd
|
755
|
+
!= null) {//member password null means login was already validated\r\nif (memberPwd.value
|
756
|
+
== \"\") {\r\nfieldList = fieldList + \" -- Member Passsword\\n\";\r\n}\r\n}\r\nif
|
757
|
+
(origin == \"\") {\r\nfieldList = fieldList + \" -- From\\n\";\r\n}\r\nif(destination
|
758
|
+
== \"\") {\r\nfieldList = fieldList + \" -- To\\n\";\r\n}\r\nif (startDate
|
759
|
+
== \"\") {\r\nfieldList = fieldList + \" -- Day\\n\";\r\n}\r\nif (fieldList
|
760
|
+
!= \"\") {\r\nerrorMsg=\"The following information is needed to process your
|
761
|
+
request:\" + \"\\n\" + fieldList+ \"\\n\\n\";\r\nalert(errorMsg);\r\nreturn
|
762
|
+
false;\r\n}\r\nreturn fieldList;\r\n}\r\nfunction checkValidCouponCode(id){\r\nvar
|
763
|
+
errorMsg='';\r\nvar newCouponCode = document.getElementById(id).value;\r\nif(newCouponCode
|
764
|
+
== \"Promo Code\") {\r\ndocument.getElementById('ff_disc_promoCode').value
|
765
|
+
= \"\";\r\nnewCouponCode= \"\"\r\n}\r\nnewCouponCode = trim(newCouponCode);\r\nif(newCouponCode
|
766
|
+
== '')\r\nreturn true;\r\nvar isValidCode = validateCouponCode(newCouponCode);\r\nif(isValidCode
|
767
|
+
== false) {\r\nerrorMsg = 'Problem with Promotion Code: The Promotion Code
|
768
|
+
you entered is not valid. Please check for accuracy and re-enter it, or continue
|
769
|
+
without it. \\n[Error ID: 744S]';\r\n}\r\nif (errorMsg!=\"\"){\r\nalert(errorMsg);\r\nreturn
|
770
|
+
false;\r\n} else {\r\nreturn true;\r\n}\r\n}\r\nfunction trim(s) {\r\nreturn
|
771
|
+
s.replace(/^\\s+|\\s+$/g, \"\");\r\n}\r\n//-->\r\n</script>\r\n\r\n\r\n\r\n<meta
|
772
|
+
name=\"WT.cg_s\" content=\"book\" />\r\n\r\n\r\n\r\n\n<meta name=\"DCSext.ORG\"
|
773
|
+
content=\"askdf\" />\n<meta name=\"DCSext.DST\" content=\"preencoded:BBY\"
|
774
|
+
/>\n<meta name=\"DCSext.DDT\" content=\"2014/11/27\" />\n<meta name=\"DCSext.PAX\"
|
775
|
+
content=\"0\" />\n<meta name=\"DCSext.SORT\" content=\"\" />\n<meta name=\"DCSext.PTP\"
|
776
|
+
content=\"\" />\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"special_booking_menu\">\r\n\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n<style
|
777
|
+
type=\"text/css\">\r\n<!--\r\n@import url(/css/basic_booking.css);\r\n-->\r\n</style>\r\n\r\n\r\n\r\n<span
|
778
|
+
id=\"IB_diginet_div\">\r\n\r\n</span>\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div
|
779
|
+
id=\"mb_column_1_confirmation\">\r\n<form name=\"form\" action=\"http://tickets.amtrak.com/itd/amtrak\"
|
780
|
+
method=\"post\"><input type=\"hidden\" name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
|
781
|
+
/>\r\n\r\n\r\n<div id=\"amtrak_error_id\" class=\"error\"><b>We were unable
|
782
|
+
to process your request:</b> Please correct the error(s) shown below and resubmit.<hr
|
783
|
+
/><b>Problem with Departure Station or City Name:</b> Unfortunately, we cannot
|
784
|
+
find a departure station matching the text you entered. To find a specific
|
785
|
+
station, please try entering different text, or click on the 'Find a Station'
|
786
|
+
link and select a station from the list provided and resubmit. You may also
|
787
|
+
click the 'Stations' tab above to find Amtrak stations in the vicinity
|
788
|
+
of your requested city. <br>[Error ID: 527S]<hr />Warning: This site is designed
|
789
|
+
for Internet Explorer, Netscape/Gecko and Opera<br />Some pages may not display
|
790
|
+
correctly as a result</div>\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<style type=\"text/css\">\r\n#pagination_bar
|
791
|
+
{\r\nclear:both;\r\npadding-top: 20px;\r\nfont-family: Arial, Verdana, Helvetica,
|
792
|
+
sans-serif;\r\nsize: 108%;\r\ncolor: #1375b3;\r\n}\r\n#pagination_bar #pagination_data
|
793
|
+
{\r\nwidth: 49%;\r\nfloat: left;\r\ntext-align: left;\r\npadding-bottom: 1px;\r\n}\r\n#pagination_bar
|
794
|
+
#pagination_nav {\r\nwidth: 49%;\r\nfloat: right;\r\ntext-align: right;\r\npadding-bottom:
|
795
|
+
1px;\r\n}\r\n#pagination_bar #pagination_nav span {\r\npadding-left: 10px;\r\n}\r\n#pagination_bar
|
796
|
+
#pagination_nav a, #availability_grid #pagination_bar #pagination_nav a:visited,
|
797
|
+
#availability_grid #pagination_bar #pagination_nav a:hover {\r\ncolor: #1375b3;\r\n}\r\n#pagination_bar
|
798
|
+
#pagination_nav a.selected, #availability_grid #pagination_bar #pagination_nav
|
799
|
+
a.selected:visited, #availability_grid #pagination_bar #pagination_nav a.selected:hover
|
800
|
+
{\r\ncolor: #ff9933;\r\ntext-decoration: none;\r\ncursor: text;\r\nbackground-color:
|
801
|
+
white;\r\n}\r\n#loadingtrain {\r\nwidth:100px;\r\nheight: 100px;\r\nposition:
|
802
|
+
fixed;\r\ntop: 50%;\r\nleft: 60%;\r\nbackground:url(/images/en/superpnr/image_loader_blue.gif)
|
803
|
+
no-repeat center #fff;\r\ntext-align:center;\r\npadding:10px;\r\nfont:normal
|
804
|
+
16px Tahoma, Geneva, sans-serif;\r\nborder:1px solid #666;\r\nmargin-left:
|
805
|
+
-50px;\r\nmargin-top: -50px;\r\nz-index:2;\r\noverflow: auto;\r\n}\r\n#loadingfailed
|
806
|
+
{\r\nwidth:100px;\r\nheight: 100px;\r\nposition: fixed;\r\ntop: 50%;\r\nleft:
|
807
|
+
60%;\r\nbackground:#fff;\r\ntext-align:center;\r\npadding:10px;\r\nfont:normal
|
808
|
+
16px Tahoma, Geneva, sans-serif;\r\nborder:1px solid #666;\r\nmargin-left:
|
809
|
+
-50px;\r\nmargin-top: -50px;\r\nz-index:2;\r\noverflow: auto;\r\n}\r\n#overlay
|
810
|
+
{\r\nbackground-color:#EEE;\r\n}\r\n</style>\r\n<script language=\"JavaScript\"
|
811
|
+
type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/basic_pagination_trainstatus.js\"></script>\r\n<script
|
812
|
+
type=\"text/javascript\">\r\nvar pageDisplay = '10';\r\nvar currentPage =
|
813
|
+
0;\r\nvar availabilityLength = '0';\r\nvar statusResult;\r\nElement.observe(window,
|
814
|
+
'load', function(){\r\nshow_ff_tab('status');\r\npageFilterDisplay(availabilityLength);\r\n});\r\n</script>\r\n\r\n\r\n\r\n<meta
|
815
|
+
name=\"WT.cg_s\" content=\"status\" />\r\n\n\r\n\r\n\r\n</form>\r\n</div>\r\n<br
|
816
|
+
class=\"clear_both\" />\r\n</div>\r\n</div>\r\n</div>\r\n\r\n\r\n<script language=\"JavaScript\">\r\n<!--\r\nfunction
|
817
|
+
getProfileStr(){\r\nreturn 'amtrak';\r\n}\r\ndocument.write('<meta name=\"DCSext.PROFILE\"
|
818
|
+
content=\"'+getProfileStr()+'\" />');\r\n// -->\r\n</script>\r\n<meta name=\"WT.cg_n\"
|
819
|
+
content=\"booking\" />\r\n\r\n<meta name=\"DCSext.REDISP\" content=\"Y\" />\r\n\r\n\r\n\r\n<!--
|
820
|
+
START OF SmartSource Data Collector TAG -->\r\n<!-- Copyright (c) 1996-2011
|
821
|
+
WebTrends Inc. All rights reserved. -->\r\n<!-- Version: 9.3.0 -->\r\n<!--
|
822
|
+
Tag Builder Version: 3.1 -->\r\n<!-- Created: 2/11/2011 4:14:35 PM -->\r\n<script
|
823
|
+
src=\"/itd/project/scripts/en/sitewise/webtrends_session.js\" type=\"text/javascript\"></script>\r\n<!--
|
824
|
+
-----------------------------------------------------------------------------------
|
825
|
+
-->\r\n<!-- Warning: The two script blocks below must remain inline. Moving
|
826
|
+
them to an external -->\r\n<!-- JavaScript include file can cause serious
|
827
|
+
problems with cross-domain tracking. -->\r\n<!-- -----------------------------------------------------------------------------------
|
828
|
+
-->\r\n<script type=\"text/javascript\">\r\n//<![CDATA[\r\nvar _tag=new WebTrends();\r\nvar
|
829
|
+
defSiteWiseParams = \"&PROFILE=amtrak&WT.cg_n=booking\";\r\nvar CMS_dcsqry
|
830
|
+
= window.location.search + defSiteWiseParams;\r\n//]]>\r\n</script>\r\n<script
|
831
|
+
type=\"text/javascript\">\r\n//<![CDATA[\r\n_tag.dcsCustom=function(){\r\n//
|
832
|
+
Add custom parameters here.\r\n//_tag.DCSext.param_name=param_value;\r\n}\r\n_tag.dcsCollect();\r\n//]]>\r\n</script>\r\n<noscript>\r\n<div><img
|
833
|
+
alt=\"DCSIMG\" id=\"DCSIMG\" width=\"1\" height=\"1\" src=\"http://statse.webtrendslive.com/dcsn42u4k11e5hyzziz7zntl5_1j8l/njs.gif?dcsuri=/nojavascript&WT.js=No&DCS.dcscfg=1&WT.tv=9.3.0&WT.dcssip=www.amtrak.com\"/></div>\r\n</noscript>\r\n<!--
|
834
|
+
END OF SmartSource Data Collector TAG -->\r\n\r\n\r\n<!-- javascript for SSO
|
835
|
+
-->\r\n<script type=\"text/javascript\">\r\nvar agrHost = ((\"https:\"== document.location.protocol)
|
836
|
+
? \"https://agr.amtrak.com/m/js\":\"http://agr.amtrak.com/m/js\");\r\ndocument.write(\r\nunescape(\"%3Cscript
|
837
|
+
src='\" + agrHost + \"/shoebox-simple.js' type='text/javascript'%3E%3C/script%3E\")\r\n);\r\n</script>\r\n<!--
|
838
|
+
mp_trans_remove_start --><script type=\"text/javascript\" language=\"javascript\"
|
839
|
+
src='https://askjulie.amtrak.com/ui/includes/NIT.Embed.js' id=\"agentScript\"></script><!--
|
840
|
+
mp_trans_remove_end -->\r\n</body>\r\n</html>\r\n"
|
841
|
+
http_version:
|
842
|
+
recorded_at: Fri, 28 Nov 2014 18:43:07 GMT
|
843
|
+
recorded_with: VCR 2.9.3
|