amtrak 2.0.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +5 -0
  3. data/README.markdown +184 -2
  4. data/amtrak.gemspec +3 -4
  5. data/lib/amtrak.rb +2 -3
  6. data/lib/amtrak/train_fetcher.rb +25 -28
  7. data/lib/amtrak/train_parser.rb +30 -86
  8. data/lib/amtrak/version.rb +1 -1
  9. data/spec/amtrak/train_fetcher_spec.rb +26 -22
  10. data/spec/amtrak/train_parser_spec.rb +8 -64
  11. data/spec/amtrak_spec.rb +1 -2
  12. data/spec/fixtures/json/_get.json +223 -28
  13. data/spec/fixtures/json/_parse.json +211 -42
  14. data/spec/fixtures/json/pvd_to_bby.json +1131 -0
  15. data/spec/fixtures/vcr/Amtrak/_get/returns_a_list_of_train_times.yml +1160 -1250
  16. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/does_the_same_as_get.yml +1159 -1628
  17. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_invalid_train_stations/does_not_include_various_keys_and_includes_an_error.yml +66 -0
  18. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_train_stations/includes_various_keys.yml +1181 -0
  19. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_an_invalid_date_and_valid_train_stations/does_not_include_various_keys_and_includes_an_error.yml +66 -0
  20. metadata +22 -54
  21. data/lib/amtrak/train_fetcher/main_page.rb +0 -83
  22. data/lib/amtrak/train_fetcher/train_page.rb +0 -52
  23. data/spec/amtrak/train_fetcher/main_page_spec.rb +0 -53
  24. data/spec/amtrak/train_fetcher/train_page_spec.rb +0 -18
  25. data/spec/fixtures/html/pvd_to_bby.html +0 -2596
  26. data/spec/fixtures/html/pvd_to_bby_cancelled.html +0 -2671
  27. data/spec/fixtures/json/_parse_cancelled.json +0 -132
  28. 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 +0 -1073
  29. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_train_stations/includes_various_classes.yml +0 -1650
  30. 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 +0 -1071
  31. data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_session_id/pulls_the_session_id_from_the_cookies.yml +0 -1071
  32. data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_2.yml +0 -1263
  33. data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_only_one_page_exists_on_the_website/returns_1.yml +0 -1154
  34. data/spec/fixtures/vcr/Amtrak_TrainFetcher_TrainPage/_get/when_it_works/includes_various_classes.yml +0 -198
@@ -2,1270 +2,1180 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: https://tickets.amtrak.com/itd/amtrak
5
+ uri: https://rider.amtrak.com/MobileApps/TrainStatus
6
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=SEARCH&%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtripRequirements%2FjourneyRequirements%5B1%5D%2FdepartDate.usdate=01%2F03%2F2016&%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtripRequirements%2F%40trainStatusType=statusByCityPair&%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtripRequirements%2FjourneyRequirements%5B1%5D%2FdepartDate%2F%40radioSelect=arrivalTime&requestor=amtrak.presentation.handler.page.AmtrakCMSNavigationTabPageHandler&xwdf_origin=%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtravelSelection%2FjourneySelection%5B1%5D%2FdepartLocation%2Fsearch&wdf_origin=pvd&xwdf_destination=%2FsessionWorkflow%2FproductWorkflow%5B%40product%3D%27Rail%27%5D%2FtravelSelection%2FjourneySelection%5B1%5D%2FarriveLocation%2Fsearch&wdf_destination=bby
7
+ encoding: UTF-8
8
+ string: '{"dateTime":"2017-10-12","origin":"PVD","destination":"BBY","type":"A","versionNumber":"2.2.12"}'
9
9
  headers:
10
+ Accept:
11
+ - "*/*"
10
12
  Content-Type:
11
- - application/x-www-form-urlencoded
13
+ - application/json
12
14
  response:
13
15
  status:
14
16
  code: 200
15
- message:
17
+ message: ''
16
18
  headers:
17
- Server:
18
- - WebServer
19
- Content-Length:
20
- - '97942'
21
- Content-Type:
22
- - text/html;charset=UTF-8
23
- Set-Cookie:
24
- - JSESSIONID=0000RTOkGD--V2Mrvz_u1g3lPdb:187j69oi1; HTTPOnly; Path=/; Domain=.amtrak.com;
25
- HttpOnly
26
- X-powered-by:
19
+ X-Backside-Transport:
20
+ - OK OK
21
+ X-Powered-By:
27
22
  - 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
- Date:
35
- - Mon, 04 Jan 2016 02:44:10 GMT
36
- Connection:
37
- - keep-alive
38
- body:
39
- encoding: UTF-8
40
- string: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\r\n\t\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n\r\n\r\n\r\n\r\n
41
- <!--\r\n \t\"Amtrak Release 6.27.03a\"\r\n -->\r\n \r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n
42
- \r\n<meta content=\"IE=edge\" http-equiv=\"X-UA-Compatible\" />\r\n\r\n \r\n\t\r\n\t
43
- \ <head ><title>Amtrak - Train Status - Details</title>\n<meta http-equiv=\"content-type\"
44
- content=\"text/html; charset=UTF-8\" />\n<meta name=\"robots\" content=\"noindex,nofollow\"
45
- />\n<meta http-equiv=\"imagetoolbar\" content=\"no\" />\n<style type=\"text/css\">\n<!--\n@import
46
- url(/css/amtrak.css);\n-->\n</style>\n\r\n\t\t <!-- IE8 renders as IE7
47
- to spare ourselves another column in the compatability matrix -->\r\n\t \r\n\t
48
- \ <style type=\"text/css\">\r\n\t <!--\r\n\t @import
49
- url(/css/base.css?v=1.1);\r\n\t @import url(/css/base_screen.css);\r\n\t
50
- \ @import url(/css/topnav.css?v=1.1);\r\n\t @import url(/css/basic_booking.css?v=1.3);\r\n\t
51
- \ @import url(/css/special_booking.css);\r\n\t @import
52
- url(/css/basic_booking_screen.css);\r\n\t @import url(/css/ib_misc.css);\r\n\t
53
- \ @import url(/css/popup.css);\r\n\t @import url(/css/profile.css?v=1.2);\r\n\t
54
- \ @import url(/css/amtrak_autocomplete.css);\r\n\t -->\r\n\t
55
- \ </style>\r\n\t \r\n\t <!-- Diginet script(when USE_ESI=true)
56
- introduces 'c_root' form and this is causing orange bar to display on all
57
- pages. \r\n\t Following lines are added to get rid of the orange bar.-->\r\n\t
58
- \ <style type=\"text/css\">\r\n\t form#c_root { \r\n\t display:
59
- none; \r\n\t }\r\n\t </style>\r\n\t \r\n\t <link
60
- href=\"/css/basic_booking_print.css\" rel=\"stylesheet\" type=\"text/css\"
61
- media=\"print\" />\r\n\t <link href=\"/css/base_print.css\" rel=\"stylesheet\"
62
- type=\"text/css\" media=\"print\" /> \r\n\t <script type=\"text/javascript\">\r\n\t
63
- \ \r\n \t\t\t\tvar _gaq = _gaq || [];\r\n \t\t\t\t_gaq.push(['_setAccount',
64
- 'UA-23218774-1']);\r\n \t\t\t\t_gaq.push(['_setDomainName', '.amtrak.com']);\r\n
65
- \ \t\t\t\t\r\n \t\t\t\t_gaq.push(['_trackPageview']);\r\n\r\n \t\t\t\t(function()
66
- {\r\n \t\t\t\tvar ga = document.createElement('script'); ga.type = 'text/javascript';
67
- ga.async = true;\r\n \t\t\t\tga.src = ('https:' == document.location.protocol
68
- ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r\n \t\t\t\tvar
69
- s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga,
70
- s);\r\n \t\t\t\t})();\r\n\r\n\t\t\t</script>\r\n <script>\r\n
71
- \ (function(d) {\r\n var config = {\r\n kitId:
72
- 'ijm4cfl',\r\n scriptTimeout: 3000\r\n },\r\n
73
- \ h=d.documentElement,t=setTimeout(function(){h.className=h.className.replace(/\\bwf-loading\\b/g,\"\")+\"
74
- wf-inactive\";},config.scriptTimeout),tk=d.createElement(\"script\"),f=false,s=d.getElementsByTagName(\"script\")[0],a;h.className+=\"
75
- wf-loading\";tk.src='//use.typekit.net/'+config.kitId+'.js';tk.async=true;tk.onload=tk.onreadystatechange=function(){a=this.readyState;if(f||a&&a!=\"complete\"&&a!=\"loaded\")return;f=true;clearTimeout(t);try{Typekit.load(config)}catch(e){}};s.parentNode.insertBefore(tk,s)\r\n
76
- \ })(document);\r\n </script>\r\n \r\n
77
- \ \r\n <script type=\"text/javascript\" language=\"javascript\"
78
- src='https://assets.adobedtm.com/b6ce373c321eacd4084683e01459ac4c347614f5/satelliteLib-073129b141b5f91c45cd8781dde0bb81599a5e0e.js'
79
- ></script>\r\n \r\n\t </head>\r\n\t\r\n \t\r\n \t \t\r\n
80
- \ \t\r\n \t<body class=\"site\">\r\n\r\n<link href=\"/css/header.css\" rel=\"stylesheet\"
81
- type=\"text/css\" />\r\n<script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/prototype.js\"></script>\r\n<div
82
- id=\"top_nav_wrapper\">\r\n<div id=\"top_navigation_body\"></div>\r\n\r\n\r\n\r\n<div
83
- id=\"pi_actions_list\">\r\n<a href=\"javascript:LoginPopout.show()\">Log in</a>
84
- &nbsp;or&nbsp;\r\n<a href=\"https://tickets.amtrak.com/itd/amtrak/Register\">Register</a>\r\n</div>\r\n\r\n\r\n\r\n<script
85
- type=\"text/javascript\">\r\ndocument.observe('dom:loaded', function() {\r\n$(\"login_popout\").hide();\r\n});\r\n</script>\r\n<div
86
- class=\"popout\" id=\"login_popout\" >\r\n\r\n\r\n\r\n<style type=\"text/css\">\r\n#loading
87
- {\r\nposition: fixed;\r\ntop: 30%;\r\nleft: 25%;\r\nbackground:url(/images/en/superpnr/image_loader_blue.gif)
88
- no-repeat center #fff;\r\npadding:7px;\r\n}\r\n#overlay {\r\nbackground-color:#EEE;\r\n}\r\n.link_item
89
- {\r\nfloat:left;\r\nwidth:65%;\r\n}\r\n</style>\r\n<style type=\"text/css\">\r\n.submit_image
90
- {\r\nfloat:right;\r\nvertical-align:top;\r\nbackground-color: transparent;\r\nborder:
91
- none;\r\nfont-size:1px;\r\nwidth: 70px;\r\nheight: 24px;\r\nbackground-image:
92
- url(/images/en/btn_login.gif);\r\nbackground-repeat: no-repeat;\r\n}\r\n</style>\r\n\r\n<script>\r\nfunction
93
- enterKeyPress(event) {\r\nif (Event.KEY_RETURN == event.keyCode) {\r\n// do
94
- something usefull\r\nLoginPopout.doLogon();\r\nreturn false;\r\n}\r\nreturn
95
- 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
96
- id=\"overlay\" style=\"background-color: white;\">\r\n<div class=\"popout_inner\"
97
- id=\"login_popout_inner\">\r\n<a href=\"javascript:LoginPopout.hide()\" class=\"close_btn
98
- button\" style=\"margin-bottom:0px;\"><img alt=\"X\" src=\"/images/en/btn_closeXorange.gif\"
99
- /></a>\r\n<div id=\"login_form_header\"><h3 style=\"margin-top:0px;\">Log
100
- In to Amtrak.com</h3></div>\r\n\r\n<div class=\"form_holder\" id=\"login_form_holder\">\r\n<form
101
- class=\"std_form clearfix\" onsubmit=\"doRegularLogon(); return true;\" id=\"login_ajax_form\"
102
- action=\"https://tickets.amtrak.com/itd/amtrak\" method=\"post\"><input type=\"hidden\"
103
- name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
104
- />\r\n<div class=\"form_line\">\r\n\r\n<div class=\"form_label\"><label for=\"login_email_address\">E-Mail
105
- Address or Member Number</label></div>\r\n\r\n\r\n<div class=\"form_item\"><input
106
- type=\"hidden\" name=\"xwdf_username\" value=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/userName\"
107
- /><input class=\"text\" autocomplete=\"off\" type=\"text\" id=\"login_email_address\"
108
- maxlength=\"64\" name=\"wdf_username\" /></div>\r\n</div>\r\n<div class=\"form_line\">\r\n<div
109
- class=\"form_label\"><label for=\"login_password\">Password</label></div>\r\n<div
110
- class=\"form_item\"><input type=\"hidden\" name=\"xwdf_password\" value=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/password\"
111
- /><input class=\"text password\" autocomplete=\"off\" type=\"password\" id=\"login_password\"
112
- maxlength=\"20\" name=\"wdf_password\" /></div>\r\n</div>\r\n<div class=\"form_line\"
113
- id=\"login_go\">\r\n<div class=\"link_item submit_item\">\r\n\r\n<a class=\"forgot_pass\"
114
- title=\"Click here to request your Password\" href=\"javascript:openForgotPwdBox();\">Forgot
115
- password?</a>\r\n\r\n\r\n</div>\r\n\r\n<input class=\"submit_image\" type=\"submit\"
116
- name=\"_handler=amtrak.presentation.handler.request.profile.AmtrakProfileLogonRequestHandler/_xpath=/sessionWorkflow/userWorkflow/profileAccountRequirements\"
117
- value=\"\" />\r\n</div>\r\n</form>\r\n</div>\r\n</div>\r\n<hr/>\r\n<div class=\"agrmerge_popout_inner\">\r\n\r\n<h4>Amtrak.com
118
- and Amtrak Guest Rewards Accounts are Merging</h4><p>Combine your accounts
119
- and enjoy the ease and convenience of a single Amtrak account. All of your
120
- information will be available with a single log-in &mdash; eliminating the
121
- need for you to keep two profiles.</p>\n\r\n\r\n\r\n</div>\r\n</div>\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n\r\n</div>\r\n<script
122
- language=\"JavaScript\" type=\"text/javascript\">\r\n<!--\r\nvar url = \"/\"
123
- + \"itd/amtrak\" + \"/DisplayCmsContent\";\r\nvar functionName = 'topNavigation';\r\n\r\nnew
124
- Ajax.Request(url,\r\n{ method: 'post',\r\nparameters: {'functionName': functionName},\r\nonSuccess:
125
- function (transport) {\r\nif(transport.responseText!='') {\r\n$('top_navigation_body').update(transport.responseText);\r\n}
126
- else {\r\n$('top_nav_wrapper').hide();\r\n}\r\n},\r\nonFailure: function (transport)
127
- {\r\n$('top_nav_wrapper').hide();\r\n}\r\n}\r\n);\r\n//-->\r\n</script>\r\n\r\n
128
- \ \t \r\n\t <script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/prototype.js\"></script>\r\n\t
129
- \ <script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/scriptaculous.js\"></script>\r\n\t
130
- \ <script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/effects.js\"></script>\r\n\t
131
- \ <script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/controls.js\"></script>\r\n\t
132
- \ <script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/formutils.js\"></script>\r\n\t
133
- \ <script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/popups.js\"></script>\r\n\t
134
- \ <script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/profile_rewrite.js\"></script>\r\n\t
135
- \ <script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/farefinderrequest.js\"></script>\r\n
136
- \ <script type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/header.js\"></script>\r\n
137
- \ <script type=\"text/javascript\" src=\"/itd/project/scripts/en/motionpoint/motionpoint.js\"></script>\r\n\t
138
- \ <script type=\"text/javascript\">\r\n <!-- \r\n var
139
- pageName='amtrak/rail/trainstatus/trainstatusresponse.jsp';\r\n\r\n /*
140
- if the subPageName has been defined use it to prefix the page name */\r\n
141
- \ if (typeof subPageName != 'undefined'){\r\n var
142
- path=pageName.substr(0,pageName.lastIndexOf(\"/\")+1);\r\n var
143
- page=pageName.substr(pageName.lastIndexOf(\"/\")+1);\r\n pageName=path+subPageName+page;\r\n
144
- \ }\r\n //-->\r\n </script>\r\n <script
145
- type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/jquery-1.11.2.min.js\"></script>\r\n
146
- \ <script type=\"text/javascript\">\r\n jQuery.noConflict();\r\n
147
- \ </script>\r\n \t\r\n\t \t\r\n<div id=\"outer_wrapper_confirmation\">\r\n<div
148
- id=\"top_level_wrapper_confirmation\">\r\n<div id=\"lower_wrapper_confirmation\">\r\n\r\n<div
149
- id=\"left_column_wrapper_confirmation\">\r\n\r\n\r\n<style type=\"text/css\">\r\n<!--\r\n@import
150
- url(/css/base.css?v=1.1);\r\n-->\r\n</style>\r\n<script language=\"JavaScript\"
151
- type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/base.js\"></script>\r\n<script
152
- language=\"JavaScript\" type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/basic_booking_left.js\"></script>\r\n<link
153
- rel=\"stylesheet\" type=\"text/css\" href=\"/css/amtrak-calendar.css\" media=\"screen\"
154
- />\r\n\r\n\r\n<div id=\"persistent_info_wrapper\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<script
155
- src=\"/itd/project/scripts/en/amtrak/jquery-ui.min.js\"></script>\r\n<script
156
- src=\"/itd/project/scripts/en/amtrak/moment.js\"></script>\r\n<script src=\"/itd/project/scripts/en/amtrak/jquery.comiseo.daterangepicker.js\"></script>\r\n<script
157
- src=\"/itd/project/scripts/en/amtrak/datepicker.js?v=1.1\"></script>\r\n<link
158
- type=\"text/css\" rel=\"stylesheet\" href=\"/css/jquery-ui.css\" />\r\n<link
159
- type=\"text/css\" rel=\"stylesheet\" href=\"/css/jquery.comiseo.daterangepicker.css\"
160
- />\r\n<link type=\"text/css\" rel=\"stylesheet\" href=\"/css/datepicker.css\"
161
- />\r\n<input name=\"daterangepicker\" class=\"daterangepicker\">\r\n\r\n\r\n\r\n\r\n<script
162
- type=\"text/javascript\">\r\nareCookiesEnabled();\r\nfunction createCookie(name,
163
- value, days) {\r\nvar expires;\r\nif (days) {\r\nvar date = new Date();\r\ndate.setTime(date.getTime()
164
- + (days * 24 * 60 * 60 * 1000));\r\nexpires = \"; expires=\" + date.toGMTString();\r\n}\r\nelse
165
- expires = \"\";\r\ndocument.cookie = name + \"=\" + value + expires + \";
166
- path=/\";\r\n}\r\nfunction readCookie(name) {\r\nvar nameEQ = name + \"=\";\r\nvar
167
- ca = document.cookie.split(';');\r\nfor (var i = 0; i < ca.length; i++) {\r\nvar
168
- c = ca[i];\r\nwhile (c.charAt(0) == ' ') c = c.substring(1, c.length);\r\nif
169
- (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);\r\n}\r\nreturn
170
- null;\r\n}\r\nfunction eraseCookie(name) {\r\ncreateCookie(name, \"\", -1);\r\n}\r\nfunction
171
- areCookiesEnabled() {\r\ncreateCookie(\"test\", \"Hello\", 1);\r\nif (readCookie(\"test\")
172
- == null) {\r\n// No stored cookie, therefore client cannot (or will not) accept\r\n//
173
- cookies - display error msg\r\nvar output = '<tr class=\"errorrow\">'\r\n+
174
- '<td class=\"error\">'\r\n+ '<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\"
175
- class=\"errorimagetable\">'\r\n+ '<tr class=\"errorimagerow\">'\r\n+ '<td
176
- class=\"errorimagecell\">'\r\n+ '<img class=\"errorimage\" src=\"/images/en/warn.gif\"
177
- />'\r\n+ '</td>'\r\n+ '<td class=\"errortextcell\" >'\r\n+ '<span class=\"error\">'\r\n+
178
- 'Cookies Must Be Enabled: To use advanced features of Amtrak.com, your browser
179
- must be capable of accepting session cookies. Please <a href=\"javascript:var
180
- 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
181
- here</a> to learn more about how to accept cookies.'\r\n+ '</span></td></tr>'\r\n+
182
- '</table>'\r\n+ '</td></tr>'\r\n+ '<tr><td>&nbsp;</td></tr>';\r\ndocument.write(output);\r\n}\r\neraseCookie(\"test\");\r\n}\r\n</script>\r\n\r\n\r\n\n\n\n\n\n
183
- \ \n<!--[if IE]>\n<script type=\"text/javascript\">\t \nfunction isCalendarEvent(e)
184
- {\n\n var element = Event.element(e); \n var names = element.classNames();
185
- \n if (names.include('selector')) {\n return true;\n }\n if
186
- (names.include('calnavright')) {\n return true;\n }\n if (names.include('calnavleft'))
187
- {\n return true;\n }\n if (names.include('link-close')) {\n
188
- \ return true;\n }\n return false;\n} \n\nfunction addFormSubmitEvent(form)
189
- {\n form.onkeydown = function(e) {\n e = e || window.event;\n \n
190
- \ if (e.keyCode == 13) {\n \n \t// If this is a Calendar
191
- return key entry then do not\n \t// call form.submit() \n \tif
192
- (isCalendarEvent(e)) {\n\t\t\t return;\n\t\t\t}\t\t\n \n if
193
- (form.name == 'ff_status_form') {\n if(CheckMandatoryTrainStatusFields(form))
194
- {\n \t form.submit();\n \t return true;\n }\n
195
- \ return false;\n }\n if (form.name == 'mytrip_acct')
196
- {\n if (CheckMandatoryLoginFields(form)) {\n \tform.submit();\n
197
- \ \treturn false;\n }\n return true;\n }\n
198
- \ if (form.name == 'mytrip_res') {\n if (CheckMandatoryMyTripFields(form))
199
- {\n \tform.submit();\n \treturn false;\n }\n
200
- \ return true;\n }\n if (form.name == 'ff_schedules_form')
201
- {\n if (CheckMandatoryScheduleFields(form)) {\n \tform.submit();\n
202
- \ \treturn false;\n }\n return true;\n }\n
203
- \ }\n };\n}\n\ndocument.observe('dom:loaded', function() {\n var
204
- forms = document.getElementsByTagName('form');\n for (var i=0;i < forms.length;i++)
205
- {\n if (forms[i].name == 'mytrip_res' || forms[i].name == 'mytrip_acct'
206
- || forms[i].name == 'ff_schedules_form' || forms[i].name == 'ff_status_form')
207
- {\n \t addFormSubmitEvent(forms[i]);\n \t}\n }\n});\n\n</script>
208
- \ \t\n<![endif]-->\n\n<!-- Begin HTML for Fare Finder --> \n <div
209
- id=\"farefinder\">\n <div id=\"ff_tabbar\">\n <div
210
- class=\"active\" id=\"ff_tabbar_tickets\">Tickets<span onclick=\"compare_dates('wdfdate1');show_ff_tab('tickets');showHideRedeemTabBarSection('ff_sub_tabbar',
211
- true);\"></span></div>\n <div id=\"ff_tabbar_status\">Status<span
212
- onclick=\"set_status_date('wdfdate10');set_status_date('wdfdate11');show_ff_tab('status');setDepartOrArrivalFieldVisibility();switchToStatusByTrain();\"></span></div>\n
213
- \ <div id=\"ff_tabbar_mytrip\">My Trip<span onclick=\"show_ff_tab('mytrip');\"></span></div>\n
214
- \ </div>\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t \n\t \t<div
215
- id=\"ff_sub_tabbar\" class=\"show_section\">\n\t \t<div class=\"active\"
216
- id=\"ff_sub_tabbar_bookatrip\">Book<span onclick=\"show_ff_sub_tab('bookatrip');\"></span></div>\n\t
217
- \ \t<div id=\"ff_sub_tabbar_redeem\">Redeem<span onclick=\"show_ff_sub_tab('redeem');\"></span></div>\n\t
218
- \ \t<div id=\"ff_sub_tabbar_traveloptions\">Travel Options<span
219
- onclick=\"show_ff_sub_tab('traveloptions');\"></span></div>\n\t \t</div>\n\t
220
- \ \n\t\t\t\n\n \n \r\n\r\n\r\n\r\n \r\n \r\n <div
221
- id=\"farefinder_tabbody_tickets\" class=\"farefinder_tabbody ff_active\">\r\n
222
- \ \r\n <form name=\"form\" action=\"https://tickets.amtrak.com/itd/amtrak\"
223
- method=\"post\"><input type=\"hidden\" name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailFareFinderPageHandler\"
224
- />\r\n <input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/@bookpath\"
225
- value=\"farefamilies\" />\r\n <input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/@ff_tab_selected\"
226
- value=\"bookatrip\" />\r\n <h2>Tickets</h2>\r\n \r\n
227
- \ <div id=\"ff_tickets_tt_cities_subdiv\" class=\"subdiv level6\">\r\n
228
- \ <div id=\"tickets_trip_type\"><p> \r\n
229
- \ <input type=\"hidden\" name=\"xwdf_TripType\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/tripType\"
230
- /><input type=\"radio\" id=\"oneway\" name=\"wdf_TripType\" value=\"OneWay\"
231
- onclick=\"javascript:blankReturnDate(false)\" />&nbsp;<label for=\"oneway\">One-Way</label>
232
- \ \r\n <input type=\"hidden\"
233
- name=\"xwdf_TripType\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/tripType\"
234
- /><input type=\"radio\" id=\"return\" name=\"wdf_TripType\" value=\"Return\"
235
- onclick=\"javascript:setReturnDate(false)\" />&nbsp;<label for=\"return\">Round-Trip</label>\r\n
236
- \ <a href=\"/itd/amtrak/ComplexRail\">Multi-City</a> &gt;</p>\r\n
237
- \ </div>\r\n \r\n
238
- \ <div id=\"tickets_dep_city\" class=\"ff_city_wrapper\">\r\n
239
- \ <label for=\"departs\">From</label> \r\n
240
- \ <input type=\"hidden\" name=\"xwdf_origin\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/departLocation/search\"
241
- /><input type=\"text\" autocomplete=\"off\" id=\"departs\" maxlength=\"150\"
242
- name=\"wdf_origin\" value=\"Providence, RI (PVD)\" />\r\n <p><span
243
- class=\"find_a_station\"><a title=\"Click for a list of stations.\" href=\"javascript:fieldName='departs';
244
- openStationList();\">Find a Station</a></span></p> \r\n
245
- \ </div>\r\n \r\n <div
246
- id=\"tickets_arr_city\" class=\"ff_city_wrapper level3\">\r\n <label
247
- for=\"arrives\">To</label>\r\n <input type=\"hidden\" name=\"xwdf_destination\"
248
- value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/arriveLocation/search\"
249
- /><input type=\"text\" autocomplete=\"off\" id=\"arrives\" maxlength=\"150\"
250
- name=\"wdf_destination\" value=\"Boston - Back Bay, MA (BBY)\" /> \r\n
251
- \ <p><span class=\"find_a_station\"><a title=\"Click for
252
- a list of stations.\" href=\"javascript:fieldName='arrives'; openStationList();\">Find
253
- a Station</a></span></p>\r\n </div>\r\n <div
254
- id=\"autocomplete_availability_from\" class=\"autocomplete level5\" style=\"display:none\"></div>\r\n
255
- \ <div id=\"autocomplete_availability_to\" class=\"autocomplete
256
- level5\" style=\"display:none\"></div> \r\n
257
- \ </div> \r\n \r\n <div
258
- id=\"ff_tickets_dep_ret_date_subdiv\" class=\"subdiv level3\" style=\"position:static;\">\r\n
259
- \ <div id=\"tickets_dep_date_time\" class=\"level5\">\r\n <div
260
- class=\"ff_date_wrapper\"> \r\n <label
261
- for=\"tickets_dep_date\">Departs</label> \r\n
262
- \ <input class=\"wdfDate\" type=\"text\" size=\"22\"
263
- id=\"wdfdate1\" maxlength=\"22\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate.usdate\"
264
- value=\"01/03/2016\" /><a class=\"calLink noloading\" id=\"calLink1\">&nbsp;</a><br
265
- /><div id=\"calContainer1\" class=\"calContainer\" bookingpath=\"regularBooking\"
266
- calwrapper=\"farefinder\" caloffsetx=\"50\" calpickerxpos=\"50\" maxdate=\"+335d\"></div></div><div
267
- class=\"ff_time_wrapper\"><label for=\"wdftime1\"><b>Time</b></label><select
268
- id=\"wdftime1\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departTime.hourmin\"><option
269
- value=\"\">Anytime</option><option value=\"01:00\">Morning</option><option
270
- value=\"13:00\">Afternoon</option><option value=\"19:00\">Evening</option></select>
271
- \ \r\n
272
- \ </div>\r\n </div>\r\n \r\n
273
- \ \r\n <div id=\"tickets_ret_date_time\"
274
- class=\"hide_section level4\"> \r\n <div
275
- class=\"ff_date_wrapper\">\r\n \r\n
276
- \ <label for=\"tickets_ret_date\">Returns</label>\r\n
277
- \ <input class=\"wdfDate\" type=\"text\" size=\"22\"
278
- id=\"wdfdate2\" maxlength=\"22\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[2]/departDate.usdate\"
279
- /><a class=\"calLink noloading\" id=\"calLink2\">&nbsp;</a><br /><div id=\"calContainer2\"
280
- \ class=\"calContainer\" bookingpath=\"regularBooking\" calwrapper=\"farefinder\"
281
- caloffsetx=\"50\" calpickerxpos=\"50\" maxdate=\"+335d\"></div></div><div
282
- class=\"ff_time_wrapper\"><label for=\"wdftime2\"><b>Time</b></label><select
283
- id=\"wdftime2\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[2]/departTime.hourmin\"><option
284
- value=\"\">Anytime</option><option value=\"01:00\">Morning</option><option
285
- value=\"13:00\">Afternoon</option><option value=\"19:00\">Evening</option></select>\r\n
286
- \ </div>\r\n </div> \r\n \r\n
287
- \ </div>\r\n <div id=\"ff_tickets_passengers_subdiv\"
288
- class=\"subdiv level1\">\r\n <div id=\"tickets_passengers\">
289
- \ \r\n \t\r\n
290
- \ \t\r\n\t \r\n\t \t<div
291
- id=\"ff_adults_wrapper\">\r\n\t\t <label style=\"line-height:1.1;\"
292
- for=\"ff_adults\"><a 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();\"
293
- CLASS=\"smallblue\">Adults</a><br /> (13-61)</label>\r\n\t\t <select
294
- onchange=\"javascript:discounttype('adult')\" id=\"oth_adults\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Adult']\"><option
295
- value=\"0\">0</option><option value=\"1\" selected=\"selected\">1</option><option
296
- value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option
297
- value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option
298
- value=\"8\">8</option></select>\r\n\t\t </div>\r\n\t\t
299
- \ <div id=\"ff_seniors_wrapper\">\r\n\t\t <label
300
- 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();\"
301
- CLASS=\"smallblue\">Seniors</a><br /> (62+)</label>\r\n\t\t <select
302
- onchange=\"javascript:discounttype('senior')\" id=\"oth_seniors\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Senior']\"><option
303
- value=\"0\" selected=\"selected\">0</option><option value=\"1\">1</option><option
304
- value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option
305
- value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option
306
- value=\"8\">8</option></select>\r\n\t\t </div>\r\n\t \r\n
307
- \ \r\n \r\n <div id=\"ff_kids_wrapper\">\r\n
308
- \ <label style=\"line-height:1.1;\" for=\"ff_kids\"><a
309
- 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();\"
310
- CLASS=\"smallblue\">Children</a><br /> (2-12)</label> \r\n
311
- \ <select onchange=\"showChildPopup(this.options[this.selectedIndex].value,
312
- document.getElementById('oth_infants').options[document.getElementById('oth_infants').selectedIndex].value,
313
- 'oth_child_popup'),discounttype('child')\" id=\"oth_children\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Child']\"><option
314
- value=\"0\" selected=\"selected\">0</option><option value=\"1\">1</option><option
315
- value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option
316
- value=\"5\">5</option></select>\r\n </div>\r\n <div
317
- id=\"ff_infants_wrapper\">\r\n <label style=\"line-height:1.1;\"
318
- 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();\"
319
- CLASS=\"smallblue\">Infants</a><br /> (under 2)</label> \r\n
320
- \ <select onchange=\"showChildPopup(this.options[this.selectedIndex].value,
321
- document.getElementById('oth_children').options[document.getElementById('oth_children').selectedIndex].value,
322
- 'oth_child_popup'),discounttype('infant')\" id=\"oth_infants\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Infant']\"><option
323
- value=\"0\" selected=\"selected\">0</option><option value=\"1\">1</option><option
324
- value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option></select>\r\n
325
- \ </div>\r\n </div>\r\n <br>\r\n
326
- \ \r\n \r\n \r\n <div
327
- id=\"oth_child_popup\" class=\"info_childpopup_ff hide_section\">Children
328
- and infants must travel with an adult who is at least 18 years or older.</div>\r\n
329
- \ \r\n \r\n \r\n <div
330
- 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();\"
331
- CLASS=\"smallblue\">Children 13-15 traveling alone</a></div>\r\n<style>\r\n.info_childpopup_ff
332
- {\r\n margin-bottom: 10px;\r\n }\r\n .unaccompaniedminor_link{\r\n font-size:11px;\r\n
333
- padding-bottom:5px;\r\n }\r\n</style> \r\n \r\n \r\n \r\n
334
- \ </div>\r\n \r\n <div id=\"ff_submit_button\"
335
- class=\"subdiv\"> \r\n \r\n \r\n
336
- \ \r\n <input type=\"image\" alt=\"Click
337
- to Find Tickets\" name=\"_handler=amtrak.presentation.handler.request.rail.farefamilies.AmtrakRailFareFamiliesSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
338
- onclick=\"javascript:return ( preFareFinderSubmitActions('The following information
339
- is needed to process your request:', 'Problem Pricing the Itinerary: Atlantic
340
- City Express Service offers adult fares only for all passengers. Please modify
341
- your selection to continue. \\n[Error ID: 1121S]') && ValidateBookingDate())\"
342
- src=\"/images/en/btn_ff_findTrains.gif\" border=\"0\" /> \r\n \r\n
343
- \ \r\n </div> \r\n \r\n
344
- \ <div id=\"ff_promocode\" class=\"subdiv oth_promocode\">\r\n
345
- \ <input type=\"hidden\" name=\"xwdf_promoCode\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/couponRequirements/coupon/code\"
346
- /><input onfocus=\"focuspromotext();\" type=\"text\" size=\"15\" id=\"ff_disc_promoCode\"
347
- maxlength=\"10\" name=\"wdf_promoCode\" onblur=\"blurpromotext();\" />\r\n
348
- \ </div>\r\n <script>\r\n var
349
- promocode = 'Promo Code';\r\n function blurpromotext(){\r\n
350
- \ \tif(document.getElementById('ff_disc_promoCode').value ==
351
- '') {\r\n document.getElementById('ff_disc_promoCode').value
352
- = promocode;\r\n } \r\n }\r\n function
353
- focuspromotext(){\r\n if(document.getElementById('ff_disc_promoCode').value
354
- == promocode) {\r\n document.getElementById('ff_disc_promoCode').value
355
- = \"\";\r\n } \r\n \r\n }\r\n </script>\r\n
356
- \ <script type=\"text/javascript\"> \r\n //<![CDATA[
357
- \r\n Element.observe(window, 'load', function(){\r\n \t
358
- \ if(document.getElementById('ff_disc_promoCode').value == '') {\r\n document.getElementById('ff_disc_promoCode').value
359
- = promocode;\r\n } \r\n \r\n }); \r\n //]]>
360
- \r\n </script>\r\n \r\n <div class=\"clear_both\"></div>\r\n
361
- \ \r\n \r\n \r\n \r\n
362
- \ <div id=\"ff_disctype\" class=\"subdiv\" > \r\n \t\t\t\t\t
363
- \ \r\n </div>\r\n <div id=\"discountsrules\" class=\"subdiv\"><a
364
- href=\"javascript:var 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();\"
365
- CLASS=\"smallblue\">Passenger type/discount rules</a></div>\r\n \r\n
366
- \ \r\n \r\n\t <script
367
- type=\"text/javascript\">\r\n\t\t //<![CDATA[\r\n\t\t Element.observe(window,
368
- 'load', function(){\r\n\t\t \tdiscounttype(\"adult\");\r\n\t\t
369
- \ \tjQuery(\"#adult_select0 option[value='Adult']\").attr(\"selected\",
370
- \"selected\");\r\n\t\t }); \r\n\t\t //]]>\r\n\t
371
- \ </script> \r\n\t \r\n\t \r\n
372
- \ \r\n \r\n \r\n
373
- \ </form> \r\n </div>\r\n\r\n<script>\r\nif( $('ff_sub_tabbar_bookatrip').hasClassName(\"active\")
374
- ){\r\n\tshow_ff_sub_tab('bookatrip');\r\n } else if( $('ff_sub_tabbar_redeem').hasClassName(\"active\")
375
- ){\t \r\n\tshow_ff_sub_tab('redeem');\r\n }\r\n\r\n function discounttype(passtype)
376
- {\t \r\n var totaladults = jQuery('#oth_adults').val();\r\n var totalseniors
377
- = jQuery('#oth_seniors').val();\r\n var totalchilds = jQuery('#oth_children').val();\r\n
378
- \ var totalinfants = jQuery('#oth_infants').val();\r\n var totaladperson
379
- = parseInt(totaladults) + parseInt(totalseniors) ;\r\n var dischtml='';\r\n
380
- \ var count=0;\r\n var sencount =0;\r\n var adtcount= 0;\r\n var
381
- j=0;\r\n var k=0;\r\n\r\n if ( totaladperson != 0 ){\r\n for
382
- ( var i=0; i<totaladperson; i++) {\r\n count++;\r\n var
383
- adultopts= \"<option value='Default'>Select</option><option value='Adult'>Adult</option><option
384
- value='Senior'>Senior</option><option value='ADAPaxType_Adult'>Passenger with
385
- Disability (PWD)</option><option value='ADAPaxType_Companion'>Companion (Book
386
- with PWD)</option><option value='AAA Adult'>AAA Adult</option><option value='NARP'>NARP</option><option
387
- value='Military'>Military Adult (Active)</option><option value='Veterans Advantage'>Veterans
388
- Advantage</option><option value='Student Advantage'>Student Advantage</option><option
389
- value='ISIC'>ISIC</option>\";\r\n var senopts= \"<option value='Default'>Select</option><option
390
- value='Adult'>Adult</option><option value='Senior' selected='selected'>Senior</option><option
391
- value='ADAPaxType_Adult'>Passenger with Disability (PWD)</option><option value='ADAPaxType_Companion'>Companion
392
- (Book with PWD)</option><option value='AAA Adult'>AAA Adult</option><option
393
- value='NARP'>NARP</option><option value='Military'>Military Adult (Active)</option><option
394
- value='Veterans Advantage'>Veterans Advantage</option><option value='Student
395
- Advantage'>Student Advantage</option><option value='ISIC'>ISIC</option>\";\r\n
396
- \ var adtlabel=\"Adult\";\r\n if (jQuery('#adult_select'+i).val())
397
- {\r\n var curadtval = \"value='\"+jQuery('#adult_select'+i).val()+\"'\";\r\n
398
- \ var newadtval = \"value='\"+jQuery('#adult_select'+i).val()+\"'
399
- selected='selected'\";\r\n \r\n if
400
- (curadtval == \"value='Senior'\" && sencount<totalseniors ){\r\n adtlabel
401
- = \"Senior\";\r\n \tsencount++;\r\n \tadultopts
402
- = adultopts.replace(curadtval, newadtval); \r\n } else {\r\n
403
- \ \tif (curadtval == \"value='Senior'\" && sencount>=totalseniors
404
- ){\r\n \tif (j==0) {\r\n \tj=i;\r\n
405
- \ \t} else {\r\n \t\tj=j+1;\r\n \t}\r\n
406
- \ \twhile (j<=totaladperson) {\r\n \t\t
407
- if (jQuery('#adult_select'+(j+1)).val() != 'Senior') {\r\n var
408
- ncuradtval = \"value='\"+jQuery('#adult_select'+(j+1)).val()+\"'\";\r\n var
409
- nnewadtval = \"value='\"+jQuery('#adult_select'+(j+1)).val()+\"' selected='selected'\";\r\n
410
- \ adultopts = adultopts.replace(ncuradtval,
411
- nnewadtval); \r\n break;\r\n }\r\n
412
- \ \t j++; \t\r\n \t }\r\n \t}
413
- else {\r\n \t\tif (curadtval != \"value='Senior'\" && adtcount<totaladults
414
- ){\r\n adtcount++;\r\n adultopts
415
- = adultopts.replace(curadtval, newadtval); \r\n }
416
- else {\r\n if (curadtval != \"value='Senior'\"
417
- && adtcount>=totaladults ){\r\n if (k==0) {\r\n
418
- \ k=i;\r\n }
419
- else {\r\n k=k+1;\r\n }\r\n
420
- \ while (k<=totaladperson) {\r\n if
421
- (jQuery('#adult_select'+(k+1)).val() == 'Senior') {\r\n var
422
- ncuradtval = \"value='\"+jQuery('#adult_select'+(k+1)).val()+\"'\";\r\n var
423
- nnewadtval = \"value='\"+jQuery('#adult_select'+(k+1)).val()+\"' selected='selected'\";\r\n
424
- \ adultopts = adultopts.replace(ncuradtval,
425
- nnewadtval); \r\n adtlabel = \"Senior\";\r\n
426
- \ break;\r\n }\r\n
427
- \ k++; \r\n }\r\n
428
- \ } else {\r\n \tadultopts
429
- = adultopts.replace(curadtval, newadtval);\r\n }\r\n
430
- \ }\r\n\r\n \t}\r\n }\r\n
431
- \ \r\n } else {\r\n\r\n if (passtype==
432
- 'senior' || passtype== 'Senior') {\r\n \t adultopts=senopts;\r\n
433
- \ \t adtlabel =\"Senior\";\r\n }\r\n }\r\n
434
- \ \r\n dischtml += '<div id =\"pass'+count+'\" class=\"'+adtlabel+'\"><div
435
- class=\"ff_disc_passenger\"><label id=\"label'+count+'\" for=\"disc_passenger'+count+'\">Passenger
436
- #'+count+' ('+adtlabel+')</label><br/><input type=\"hidden\" value=\"/sessionWorkflow/productWorkflow[@product=\\'Rail\\']/tripRequirements/allJourneyRequirements/person['+count+']/personType\"
437
- name=\"xwdf_person_type'+count+'\"><select onfocus=\"this.oldvalue = this.value;\"
438
- \ onchange=\"totalpass(this,'+count+');this.oldvalue = this.value;\" name=\"wdf_person_type'+count+'\"
439
- id=\"adult_select'+i+'\" class=\"disc_passenger_select\">'+adultopts+'</select></div></div>';\r\n
440
- \r\n }\r\n } \r\n \r\n\r\n if ( totalchilds != 0) {\r\n
441
- \ for ( var i=0; i<totalchilds; i++) {\r\n count++;\r\n
442
- \ var childopts= \"<option value='Default'>Select</option><option
443
- value='Child'>Child (Ages 2-12)</option><option value='ADAPaxType_Child'>Passenger
444
- with Disability (PWD)</option><option value='AAA Child'>AAA Child (Ages 2-12)</option><option
445
- value='Military Child'>Military Child (Ages 2-12)</option>\";\r\n if
446
- (jQuery('#child_select'+i).val()) {\r\n var curchival = \"value='\"+jQuery('#child_select'+i).val()+\"'\";\r\n
447
- \ var newchival = \"value='\"+jQuery('#child_select'+i).val()+\"'
448
- selected='selected'\";\r\n childopts = childopts.replace(curchival,
449
- newchival); \r\n }\r\n dischtml += '<div id =\"pass'+count+'\"
450
- class=\"ff_disc_passenger\"><label for=\"disc_passenger'+count+'\">Passenger
451
- #'+count+' (Child)</label><br/><input type=\"hidden\" value=\"/sessionWorkflow/productWorkflow[@product=\\'Rail\\']/tripRequirements/allJourneyRequirements/person['+count+']/personType\"
452
- name=\"xwdf_person_type'+count+'\"><select name=\"wdf_person_type'+count+'\"
453
- id=\"child_select'+i+'\" class=\"disc_passenger_select\">'+childopts+'</select></div>';
454
- \ \r\n }\r\n }\r\n if ( totalinfants != 0 ) {\r\n for
455
- ( var i=0; i<totalinfants; i++) {\r\n count++;\r\n dischtml
456
- += '<div id =\"pass'+count+'\" class=\"ff_disc_passenger\"><label for=\"disc_passenger'+count+'\">Passenger
457
- #'+count+' (Infant)</label><br/><p>Infant (Under age 2)</p><input type=\"hidden\"
458
- value=\"Infant\" name=\"/sessionWorkflow/productWorkflow[@product=\\'Rail\\']/tripRequirements/allJourneyRequirements/person['+count+']/personType\"></div>';
459
- \ \r\n }\r\n }\r\n \r\n document.getElementById('ff_disctype').innerHTML
460
- = dischtml;\r\n if ( count != 0) {\r\n document.getElementById(\"ff_disctype\"
461
- ).style.display = 'block';\r\n } else {\r\n document.getElementById(\"ff_disctype\"
462
- ).style.display = 'none';\r\n }\r\n}\r\n\r\nfunction validatePassDiscountSelect(){\r\n\tvar
463
- totaladults = jQuery('#oth_adults').val();\r\n\tvar totalseniors = jQuery('#oth_seniors').val();\r\n
464
- \ var totaladperson = parseInt(totaladults) + parseInt(totalseniors) ;\r\n
465
- \ var totalchilds = jQuery('#oth_children').val();\r\n var errorMsg =
466
- \"\";\r\n if ( totaladperson != 0 ){\r\n \t for (i = 0; i < totaladperson;
467
- i++) {\r\n \t\t if (jQuery('#adult_select'+i).val() == 'Default') {\r\n
468
- \ \t\t \t errorMsg = 'Please make sure you have selected a passenger
469
- type for all of the members in your traveling party.';\r\n \t\t }\r\n
470
- \ \t}\r\n }\r\n if ( totalchilds != 0 ){\r\n for (i =
471
- 0; i < totalchilds; i++) {\r\n if (jQuery('#child_select'+i).val()
472
- == 'Default') {\r\n errorMsg = 'Please make sure you
473
- have selected a passenger type for all of the members in your traveling party.';\r\n
474
- \ }\r\n }\r\n }\r\n\r\n if (errorMsg!=\"\"){\r\n
475
- \ alert(errorMsg);\r\n return false;\r\n } else {\r\n return
476
- true;\r\n }\r\n \r\n}\r\n\r\nfunction totalpass(id, ct) {\r\n\r\n\tvar
477
- oldvalue = id.oldvalue;\r\n\tvar newvalue = id.value;\r\n\tvar newlabel =
478
- \"label\"+ct;\r\n\r\n\tif (oldvalue == 'Senior' || newvalue == 'Senior') {\r\n\r\n\t\tif
479
- (oldvalue == 'Senior' && newvalue != 'Senior') {\r\n\t\t\tvar tadt = parseInt(document.getElementById(\"oth_adults\").value);\r\n\t\t\tvar
480
- tsen = parseInt(document.getElementById(\"oth_seniors\").value);\r\n\t\t\ttadt
481
- += 1;\r\n\t\t\ttsen -= 1;\r\n\t\t\tdocument.getElementById(\"oth_adults\").value
482
- = tadt;\r\n\t\t\tdocument.getElementById(\"oth_seniors\").value = tsen;\r\n\t\t\tvar
483
- res = document.getElementById(newlabel).innerHTML.replace(\"Senior\",\"Adult\");
484
- \r\n\t\t\tdocument.getElementById(newlabel).innerHTML =res; \r\n\t\t} else
485
- {\r\n\r\n\t\t\tif (newvalue == 'Senior' && oldvalue != 'Senior') {\r\n\t var
486
- tadt = parseInt(document.getElementById(\"oth_adults\").value);\r\n\t var
487
- tsen = parseInt(document.getElementById(\"oth_seniors\").value);\r\n\t tadt
488
- -= 1;\r\n\t tsen += 1;\r\n\t document.getElementById(\"oth_adults\").value
489
- = tadt;\r\n\t document.getElementById(\"oth_seniors\").value =
490
- tsen;\r\n\t var res = document.getElementById(newlabel).innerHTML.replace(\"Adult\",\"Senior\");
491
- \r\n\t document.getElementById(newlabel).innerHTML =res; \r\n\t\t
492
- \ \r\n\t } \r\n\t\t} \r\n\t}\r\n\t \r\n\t \r\n}\r\n\r\n\r\nfunction
493
- closeAlertBox() { \r\n var $j = jQuery.noConflict();\r\n $j(\".ui-dialog-content\").dialog(\"close\");
494
- \r\n}\r\n\r\nfunction ValidateBookingDate(){\r\n\tvar errMinMsg=\"\";\r\n\tvar
495
- errMaxMsg=\"\";\r\n\tvar errMsg=\"\";\r\n\tvar newdate = new Date();\r\n\tvar
496
- numberOfDaysToAdd = '+335d';\r\n\tnumberOfDaysToAdd = parseInt(numberOfDaysToAdd.replace(/\\D/g,''));\r\n\tvar
497
- mindate= $j.datepicker.formatDate('mm/dd/yy', newdate);\r\n\tnewdate.setDate(newdate.getDate()
498
- + numberOfDaysToAdd); \r\n\tvar maxdate= $j.datepicker.formatDate('mm/dd/yy',
499
- newdate);\r\n\tvar depdate=document.getElementById(\"wdfdate1\").value;\r\n\t\r\n\tif
500
- (depdate != \"\" && validMinDateRange(mindate,depdate) == false ){\r\n \terrMinMsg
501
- = 'Problem with Travel Date: Our system cannot make reservations for dates
502
- in the past. Check your date(s) and try again. [Error ID: 532S]\\n\\n' ;\r\n
503
- \t}\r\n if(document.getElementById('return').checked) {\r\n var
504
- retdate=document.getElementById(\"wdfdate2\").value;\r\n if (retdate
505
- != \"\" && validMinDateRange(mindate,retdate) == false ){\r\n errMinMsg
506
- = 'Problem with Travel Date: Our system cannot make reservations for dates
507
- in the past. Check your date(s) and try again. [Error ID: 532S]\\n\\n' ;\r\n
508
- \ } \r\n \r\n }\r\n if (depdate != \"\" && validMaxDateRange(maxdate,depdate)
509
- == false ){\r\n \terrMaxMsg = 'Problem with Travel Date: Our system cannot
510
- make reservations for dates more than 11 months in the future. Check your
511
- date(s) and try again. [Error ID: 533S]' ;\r\n }\r\n if(document.getElementById('return').checked)
512
- {\r\n var retdate=document.getElementById(\"wdfdate2\").value;\r\n
513
- \ if (retdate != \"\" && validMaxDateRange(maxdate,retdate) == false
514
- ){\r\n errMaxMsg = 'Problem with Travel Date: Our system cannot
515
- make reservations for dates more than 11 months in the future. Check your
516
- date(s) and try again. [Error ID: 533S]' ;\r\n } \r\n \r\n
517
- \ }\r\n \r\n errMsg += errMinMsg+errMaxMsg;\r\n\r\n if (null !=
518
- errMsg && errMsg != \"\" ) {\r\n alert(errMsg);\r\n return
519
- false;\r\n } else {\r\n return true;\r\n }\r\n \r\n\r\n}\r\n\r\n</script>\r\n<style>\r\n
520
- .disc_passenger_select {\r\n margin-top:2px;\r\n margin-left:0px;\r\n }\r\n
521
- </style>\r\n\r\n \r\n \r\n <script type=\"text/javascript\">\r\n
522
- \ //<![CDATA[\r\n var $j = jQuery.noConflict();\r\n $j(
523
- document ).ready(function() {\r\n \t document.getElementById(\"wdfdate1\").value
524
- = ''; \r\n \t document.getElementById(\"wdfdate15\").value = 'Select
525
- a date'; \r\n }); \r\n //]]>\r\n </script>\r\n\t
526
- \ <script type=\"text/javascript\">\r\n\t if (document.getElementById(\"wdfdate15\")
527
- != null && \r\n\t \t document.getElementById(\"wdfdate15\").value ==
528
- '') {\r\n\t document.getElementById(\"wdfdate15\").value = 'Select
529
- a date'; \r\n\t } \r\n\t </script>\r\n \r\n\n \n \n
530
- \ \r\n\r\n\r\n\r\n\r\n <div id=\"farefinder_tabbody_redeem\"
531
- class=\"farefinder_tabbody\">\r\n \t<h2>Redeem Points</h2>\r\n \t\r\n
532
- \ \t<form onsubmit=\"javascript: return ValidateRedeemDate()\" name=\"ff_redeem_form\"
533
- action=\"https://tickets.amtrak.com/itd/amtrak\" method=\"post\"><input type=\"hidden\"
534
- name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.redeem.PresAmtrakRailRedeemFindATicketReqsPageHandler\"
535
- />\r\n \t\t<div id=\"ff_redeem_step_1\" class=\"subdiv\"> \t\t\r\n\t
536
- \ \t<div id=\"ff_member_wrapper\">\r\n\t \t\t\r\n\t \t\t\r\n\t
537
- \ \t\t\r\n\t \t\t\r\n\t\t\t \r\n\t\t\t \t\r\n\t\t\t
538
- \ \t\r\n\t\t\t \t<div class=\"form_line_wrapper first\">\r\n\t\t\t
539
- \ \t<label for=\"ff_membernumber\">Member Number</label>\r\n\t\t\t
540
- \ \t<span class=\"form_entry\">\r\n\t\t\t \t<input
541
- type=\"text\" autocomplete=\"off\" id=\"ff_membernumber\" maxlength=\"10\"
542
- name=\"/sessionWorkflow/profileWorkflow/schemeAccount/membershipNumber\" />\r\n\t\t\t
543
- \ </span>\r\n\t\t\t </div>\r\n\t\t\t <div
544
- class=\"form_line_wrapper\">\r\n\t\t\t \t<label for=\"ff_memberpassword\">Member
545
- Password</label>\r\n\t\t\t <span class=\"form_entry\">\t\r\n\t\t\t
546
- \ \t<input type=\"password\" autocomplete=\"off\" id=\"ff_memberpassword\"
547
- maxlength=\"29\" name=\"/sessionWorkflow/profileWorkflow/schemeAccount/@password\"
548
- />\r\n\t\t\t </span>\t \r\n\t\t\t </div>\r\n\t\t\t
549
- \ <br class=\"clear_both\" />\t\t\t \r\n\t\t\t
550
- \ \r\n\t \t\t\r\n\t \t\t \r\n\t \t</div>\r\n \t</div>\r\n\t
551
- \ \r\n\t <div id=\"ff_tickets_redeem_cities_subdiv\" class=\"subdiv\">\r\n\t\t\t\r\n\t\t
552
- \ \t<div id=\"tickets_dep_city\" class=\"ff_city_wrapper\">\t\t\t \t\t\t\t\t\t
553
- \ \r\n\t\t \t<input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate/@radioSelect\"
554
- value=\"arrivalTime\" />\r\n\t\t \t<input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/@bookpath\"
555
- value=\"redeem\" />\t\t\t \t\t\t\r\n\t\t \t\t<label for=\"agrdeparts\">From</label>\t\t\t\t
556
- \ \r\n\t\t \t<input type=\"hidden\" name=\"xwdf_origin\"
557
- value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/departLocation/search\"
558
- /><input class=\"text\" type=\"text\" id=\"agrdeparts\" name=\"wdf_origin\"
559
- value=\"Providence, RI (PVD)\" />\r\n\t\t \t<p><span class=\"find_a_station\"><a
560
- title=\"Click for a list of stations.\" href=\"javascript:fieldName='agrdeparts';
561
- openStationList();\">Find a Station</a></span></p> \t\t\t\t \r\n\t
562
- \ \t</div>\r\n\t \r\n\t \t<div id=\"tickets_arr_city\"
563
- class=\"ff_city_wrapper level3\">\r\n\t \t\t<label for=\"agrarrives\">To</label>\r\n\t
564
- \ \t\t<input type=\"hidden\" name=\"xwdf_destination\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/arriveLocation/search\"
565
- /><input class=\"text\" type=\"text\" id=\"agrarrives\" name=\"wdf_destination\"
566
- value=\"Boston - Back Bay, MA (BBY)\" />\r\n\t \t\t<p><span class=\"find_a_station\"><a
567
- title=\"Click for a list of stations.\" href=\"javascript:fieldName='agrarrives';
568
- openStationList();\">Find a Station</a></span></p>\t\t\r\n\t \t</div>\t\r\n\t
569
- \ \t \t<div id=\"redeem_from_auto\" class=\"autocomplete level5\" style=\"display:none\"></div>\r\n
570
- \ \t<div id=\"redeem_to_auto\" class=\"autocomplete level5\"
571
- style=\"display:none\"></div>\t\t\r\n\t \t\r\n\t </div>\r\n \r\n
572
- \ <div id=\"ff_redeem_dep_date_subdiv\" class=\"subdiv\">\r\n \t<div
573
- id=\"redeem_dep_date_time\">\r\n \t<div class=\"ff_date_wrapper\">
574
- \ \r\n \t<label for=\"wdfdate15\">Departs</label>\r\n
575
- \ <input class=\"wdfDate\" type=\"text\" size=\"22\" id=\"wdfdate15\"
576
- maxlength=\"22\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate.usdate\"
577
- value=\"01/03/2016\" /><a class=\"calLink noloading\" id=\"calLink15\">&nbsp;</a><br
578
- /><div id=\"calContainer15\" class=\"calContainer\" bookingpath=\"redeemff\"
579
- calwrapper=\"farefinder\" caloffsetx=\"50\" calpickerxpos=\"50\" maxdate=\"+335d\"></div></div><div
580
- class=\"ff_time_wrapper\"><label for=\"wdftimenull\"><b>Time</b></label><select
581
- id=\"wdftime15\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departTime.hourmin\"><option
582
- value=\"\">Anytime</option><option value=\"01:00\">Morning</option><option
583
- value=\"13:00\">Afternoon</option><option value=\"19:00\">Evening</option></select>\r\n
584
- \ </div> \r\n\t </div>\r\n
585
- \ </div>\r\n \r\n <div id=\"ff_redeem_passengers_subdiv\"
586
- class=\"subdiv\">\r\n \t<div id=\"redeem_passengers\">\r\n \t<div
587
- id=\"ff_submit_button\"> \r\n <input
588
- type=\"image\" alt=\"Click to Find Tickets\" name=\"_handler=amtrak.presentation.handler.request.rail.redeem.PresAmtrakRailRedeemSearchRequestHandler\"
589
- onclick=\"javascript:return preRedeemSubmitActions('The following information
590
- is needed to process your request:') \" src=\"/images/en/btn_ff_findTrains.gif\"
591
- border=\"0\" /> \r\n </div>\r\n
592
- \ \t<div id=\"passenger_wrapper\">\r\n \t<label
593
- for=\"redeemadults\">Passengers</label><br> (Max. of 8)\t \t
594
- \ \r\n </div>\t \r\n <div
595
- id=\"ff_redeem_passenger_select_wrapper\">\r\n \t<select id=\"redeemadults\"
596
- name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/allJourneyRequirements/numberOfTravellers[@key='Adult']\"><option
597
- value=\"1\" selected=\"selected\">1</option><option value=\"2\">2</option><option
598
- value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option
599
- value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option></select>\r\n
600
- \ </div>\r\n \r\n </div> \r\n <br/>\r\n
601
- \ <p><a 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();\"
602
- \ CLASS=\"smallblue\">Learn more</a> about redeeming points online for Amtrak
603
- travel.</p> \r\n </div>\r\n \t<br class=\"clear_both\"
604
- /> \r\n\t</form>\r\n </div> \r\n\t\t <script language=\"JavaScript\"
605
- type=\"text/javascript\"> \r\n\t\t <!--\r\n\t\t\t if( $('ff_sub_tabbar_bookatrip').hasClassName(\"active\")
606
- ){\r\n\t\t\t\tshow_ff_sub_tab('bookatrip');\r\n\t \t\t } else if( $('ff_sub_tabbar_redeem').hasClassName(\"active\")
607
- ){\r\n\t\t \t\tshow_ff_sub_tab('redeem');\r\n\t \t\t }\r\n\t\t //-->\r\n\t\t
608
- </script>\r\n\t\t \n \n \n <div id=\"farefinder_tabbody_traveloptions\"
609
- class=\"farefinder_tabbody\">\n <div class=\"cmstraveloptions\"
610
- id=\"cmstraveloptions\">\n <p><a class=\"button\" href=\"/rail-deals-every-week-25-off-amtrak-fares-across-the-us\"><img
611
- src='https://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fpng&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288596252&ssbinary=true&eHA_media_type=.png'/></a><br
612
- />\r\n<a class=\"button\" href=\"http://tickets.amtrak.com/itd/amtrak/autotrain\"><img
613
- src='https://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fpng&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288596551&ssbinary=true&eHA_media_type=.png'/></a><br
614
- />\r\n<a class=\"button\" href=\"http://tickets.amtrak.com/itd/amtrak/multiride\"><img
615
- src='https://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fpng&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288591884&ssbinary=true&eHA_media_type=.png'/></a><br
616
- />\r\n<a class=\"button\" href=\"http://tickets.amtrak.com/itd/amtrak/selectpass\"><img
617
- src='https://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fpng&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288591915&ssbinary=true&eHA_media_type=.png'/></a><br
618
- />\r\n<a class=\"button\" href=\"/hotels-cars-travel-insurance-and-more\"><img
619
- src='https://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fpng&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288591946&ssbinary=true&eHA_media_type=.png'/></a><br
620
- />\r\n<a class=\"button\" href=\"http://tickets.amtrak.com/itd/amtrak/grouptravel\"><img
621
- src='https://www.amtrak.com/servlet/Satellite?blobcol=urldata&blobheader=image%2Fpng&blobkey=id&blobtable=MungoBlobs&blobwhere=1249288591983&ssbinary=true&eHA_media_type=.png'/></a></p>\n\n
622
- \ </div>\n </div>\n \n \n <div id=\"farefinder_tabbody_status\"
623
- class=\"farefinder_tabbody\">\n \n \n <div id=\"status_by_train_number\">\n
624
- \ <form onsubmit=\"javascript:return CheckMandatoryTrainStatusFieldsForStatusByTrainNumber();\"
625
- name=\"ff_status_form1\" action=\"https://tickets.amtrak.com/itd/amtrak\"
626
- method=\"post\"><input type=\"hidden\" name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
627
- /> \n <input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/@trainStatusType\"
628
- value=\"statusByTrainNumber\" />\n <h2>Status</h2>\n\n <div
629
- id=\"ff_status_step_1\" class=\"subdiv1\"> \n <div id=\"status_arr_or_dep_wrapper\">
630
- \n \n \n <p>\n
631
- \ <input type=\"hidden\" name=\"xwdf_SortBy\"
632
- value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate/@radioSelect\"
633
- /><input type=\"radio\" id=\"status_arr\" name=\"wdf_SortBy\" value=\"arrivalTime\"
634
- onclick=\"javascript:return setDepartOrArrivalFieldVisibility();\" checked=\"checked\"
635
- />\n <label for=\"status_arr\">\n Arrival
636
- Status\n </label> \n
637
- \ </p>\n <p>\n
638
- \ <input type=\"hidden\" name=\"xwdf_SortBy\"
639
- value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate/@radioSelect\"
640
- /><input type=\"radio\" id=\"status_dep\" name=\"wdf_SortBy\" value=\"departTime\"
641
- onclick=\"javascript:return setDepartOrArrivalFieldVisibility();\" />\n <label
642
- for=\"status_dep\">\n Departure Status\n
643
- \ </label>\n </p>\n
644
- \ \n \n \n
645
- \ \n </div>\n \n
646
- \ <div id=\"status_dep_city\" class=\"ff_status_city_wrapper\">
647
- \ \n <label for=\"status_from\">\n
648
- \ Station\n </label> \n \n
649
- \ <!-- itd:locationinput id=\"status_dep\" wdfxpath=\"travelSelection/journeySelection[1]/departLocation\"
650
- wdfhtmlname=\"wdf_origin\" wdflimitedlocations=\"resource:TRAVEL_USE_LIMITED_LOCATIONS\"
651
- size=\"25\" / -->\n <div id=\"div_depart_station\">\n\t
652
- \ <input type=\"hidden\" name=\"xwdf_origin\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/departLocation/search\"
653
- /><input type=\"text\" autocomplete=\"off\" id=\"status_from\" maxlength=\"150\"
654
- name=\"wdf_origin\" value=\"Providence, RI (PVD)\" />\n\t <p><span
655
- class=\"find_a_station\">\n\t <a title=\"Click for
656
- a list of stations.\" href=\"javascript:fieldName='status_from'; openStationList();\">Find
657
- a Station</a>\n\t </span></p>\n </div>\n
658
- \ <div id=\"div_arrive_station\">\n <input
659
- type=\"hidden\" name=\"xwdf_destination\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/arriveLocation/search\"
660
- /><input type=\"text\" autocomplete=\"off\" id=\"status_to\" maxlength=\"150\"
661
- name=\"wdf_destination\" value=\"Boston - Back Bay, MA (BBY)\" />\n <p><span
662
- class=\"find_a_station\">\n <a title=\"Click
663
- for a list of stations.\" href=\"javascript:fieldName='status_to'; openStationList();\">Find
664
- a Station</a>\n </span></p>\n </div>\n
665
- \ </div>\n <div id=\"status_from_auto\"
666
- class=\"autocomplete\" style=\"display:none\"></div>\n <div
667
- id=\"status_to_auto\" class=\"autocomplete\" style=\"display:none\"></div>\n
668
- \ \n \n <div class=\"form_line_wrapper1\">
669
- \ \n <label for=\"status_train_num\">\n
670
- \ Train/Bus No.\n </label>\n
671
- \ <span class=\"form_entry\">\n <input
672
- type=\"hidden\" name=\"xwdf_trainNumber\" value=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/segmentRequirements[1]/serviceCode\"
673
- /><input onfocus=\"if (this.value=='optional') { this.value=''; updateMaxLength();
674
- };\" type=\"text\" size=\"4\" id=\"status_train_num\" maxlength=\"8\" name=\"wdf_trainNumber\"
675
- />\n </span>\n </div>\n \n
676
- \ <div class=\"form_line_wrapper\">\n <div
677
- id=\"div_depart_date_label\">\n <label for=\"status_date\">\n
678
- \ Depart Date\n </label>\n
679
- \ </div>\n <div id=\"div_arrival_date_label\">\n
680
- \ <label for=\"status_date\">\n Arrival
681
- Date\n </label>\n </div>\n \n
682
- \ <span class=\"form_entry\">\n <input
683
- class=\"wdfDate\" type=\"text\" size=\"22\" id=\"wdfdate10\" maxlength=\"22\"
684
- name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate.usdate\"
685
- value=\"01/03/2016\" /><a class=\"calLink noloading\" id=\"calLink10\">&nbsp;</a><br
686
- /><div id=\"calContainer10\" class=\"calContainer\" bookingpath=\"checkStatus\"
687
- calwrapper=\"status_by_train_number\" caloffsetx=\"53\" calpickerxpos=\"50\"
688
- mindate=\"-5d\" maxdate=\"+5d\"></div> \n
689
- \ </span>\n </div> \n
690
- \ <br class=\"clear_both\" /> \n </div>\n
691
- \ <div id=\"ff_status_submit_wrapper\" class=\"subdiv\">\n <input
692
- type=\"hidden\" name=\"_handler=amtrak.presentation.handler.request.rail.AmtrakRailTrainStatusSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
693
- />\n <input type=\"image\" alt=\"Check Status\" name=\"_handler=amtrak.presentation.handler.request.rail.AmtrakRailTrainStatusSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
694
- onclick=\" javascript:return (ValidateStatusDate('wdfdate10') )\" src=\"/images/en/btn_checkStatus.gif\"
695
- border=\"0\" />\n </div>\n \n <div
696
- class=\"form_line_wrapper subdiv2\">\n Late trains often
697
- make up time en route and may arrive earlier than expected. When trains are
698
- late, we suggest you arrive at your departure station prior to the estimated
699
- arrival or departure time.\n </div>\n <div class=\"form_line_wrapper
700
- subdiv\">\n <h3 style=\"margin-bottom:2px;\">Don't know
701
- your train number?</h3>\n <a href=\"javascript:switchToStatusByCity();\">Check
702
- status by city</a>\n </div>\n </form> \n </div>
703
- \ \n \n \n \n
704
- \ <div id=\"status_by_city_pair\">\n <form onsubmit=\"javascript:return
705
- CheckMandatoryTrainStatusFieldsForStatusByCityPair();\" name=\"ff_status_form2\"
706
- action=\"https://tickets.amtrak.com/itd/amtrak\" method=\"post\"><input type=\"hidden\"
707
- name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
708
- />\n <input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/@trainStatusType\"
709
- value=\"statusByCityPair\" />\n <input type=\"hidden\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate/@radioSelect\"
710
- value=\"arrivalTime\" />\n \n <div id=\"ff_status_step_1\"
711
- class=\"subdiv\">\n <div id=\"status_dep_city\" class=\"ff_status_city_wrapper
712
- citypair_from\">\n <label for=\"status_from\">\n From\n
713
- \ </label> \n \n <!--
714
- itd:locationinput id=\"status_dep\" wdfxpath=\"travelSelection/journeySelection[1]/departLocation\"
715
- wdfhtmlname=\"wdf_origin\" wdflimitedlocations=\"resource:TRAVEL_USE_LIMITED_LOCATIONS\"
716
- size=\"25\" / -->\n <input type=\"hidden\" name=\"xwdf_origin\"
717
- value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/departLocation/search\"
718
- /><input type=\"text\" autocomplete=\"off\" id=\"status_from1\" maxlength=\"150\"
719
- name=\"wdf_origin\" value=\"Providence, RI (PVD)\" />\n <p><span
720
- class=\"find_a_station\">\n <a title=\"Click for
721
- a list of stations.\" href=\"javascript:fieldName='status_from1'; openStationList();\">Find
722
- a Station</a>\n </span></p>\n </div>\n\n
723
- \ <div id=\"status_arr_city\" class=\"ff_status_city_wrapper\">\n
724
- \ <label for=\"status_to\">\n To\n
725
- \ </label> \n <!-- itd:locationinput
726
- id=\"status_to\" wdfxpath=\"travelSelection/journeySelection[1]/arriveLocation\"
727
- wdfhtmlname=\"wdf_destination\" wdflimitedlocations=\"resource:TRAVEL_USE_LIMITED_LOCATIONS\"
728
- size=\"25\" / -->\n <input type=\"hidden\" name=\"xwdf_destination\"
729
- value=\"/sessionWorkflow/productWorkflow[@product='Rail']/travelSelection/journeySelection[1]/arriveLocation/search\"
730
- /><input type=\"text\" autocomplete=\"off\" id=\"status_to1\" maxlength=\"150\"
731
- name=\"wdf_destination\" value=\"Boston - Back Bay, MA (BBY)\" /> \n
732
- \ <p><span class=\"find_a_station\">\n <a
733
- title=\"Click for a list of stations.\" href=\"javascript:fieldName='status_to1';
734
- openStationList();\">Find a Station</a>\n </span></p>\n
735
- \ </div>\n \n <div id=\"status_from_auto1\"
736
- class=\"autocomplete\" style=\"display:none\"></div>\n <div
737
- id=\"status_to_auto1\" class=\"autocomplete\" style=\"display:none\"></div>
738
- \ \n \n <div class=\"form_line_wrapper\">
739
- \ \n <div id=\"div_depart_date_label\">\n
740
- \ <label for=\"status_date\">\n Arrival
741
- Date\n </label>\n </div>\n <span
742
- class=\"form_entry\">\n <input class=\"wdfDate\" type=\"text\"
743
- size=\"22\" id=\"wdfdate11\" maxlength=\"22\" name=\"/sessionWorkflow/productWorkflow[@product='Rail']/tripRequirements/journeyRequirements[1]/departDate.usdate\"
744
- value=\"01/03/2016\" /><a class=\"calLink noloading\" id=\"calLink11\">&nbsp;</a><br
745
- /><div id=\"calContainer11\" class=\"calContainer\" bookingpath=\"checkStatus\"
746
- calwrapper=\"status_by_train_number\" caloffsetx=\"53\" calpickerxpos=\"50\"
747
- mindate=\"-5d\" maxdate=\"+5d\"></div> \n
748
- \ </span> \n </div> \n
749
- \ <br class=\"clear_both\" /> \n </div>\n \n
750
- \ <div id=\"ff_status_submit_wrapper\" class=\"subdiv\">\n <input
751
- type=\"hidden\" name=\"_handler=amtrak.presentation.handler.request.rail.AmtrakRailTrainStatusSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
752
- />\n <input type=\"image\" alt=\"Check Status\" name=\"_handler=amtrak.presentation.handler.request.rail.AmtrakRailTrainStatusSearchRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']\"
753
- onclick=\" javascript:return (ValidateStatusDate('wdfdate11') )\" src=\"/images/en/btn_checkStatus.gif\"
754
- border=\"0\" />\n </div>\n \n\t <div
755
- class=\"form_line_wrapper subdiv2\">\n\t Late trains often make
756
- up time en route and may arrive earlier than expected. When trains are late,
757
- we suggest you arrive at your departure station prior to the estimated arrival
758
- or departure time.\n\t </div>\n\t <div class=\"form_line_wrapper
759
- subdiv\">\n\t <h3 style=\"margin-bottom:45px;\"><a href=\"javascript:switchToStatusByTrain();\">Check
760
- status by train number</a></h3>\t \n </div>\n
761
- \ </form>\n </div>\n \n \n </div>\n
762
- \ \n <div id=\"farefinder_tabbody_mytrip\" class=\"farefinder_tabbody\">\n
763
- \ <h2>My Trip</h2>\n <div id=\"ff_mytrip_step_1\"
764
- class=\"subdiv\">\n <form onsubmit=\"javascript:return
765
- CheckMandatoryMyTripFields(this)\" name=\"mytrip_res\" action=\"https://tickets.amtrak.com/itd/amtrak\"
766
- method=\"post\"><input type=\"hidden\" name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
767
- />\n <h3>Find a Reservation</h3>\n <div
768
- class=\"form_line_wrapper first\">\n <label for=\"mytrip_res_num\">Reservation
769
- Number</label><span class=\"form_entry\">\n <input
770
- type=\"text\" id=\"mytrip_res_num\" name=\"/sessionWorkflow/itineraryWorkflow/basket/booking/reference\"
771
- value=\"\" />\n </span>\n </div>\n
772
- \ <div class=\"form_line_wrapper\">\n <strong>and</strong>\n
773
- \ </div>\n <div class=\"form_line_wrapper\">\n
774
- \ <label for=\"mytrip_res_email\">E-mail Address</label><span
775
- class=\"form_entry\">\n <input type=\"text\" autocomplete=\"off\"
776
- id=\"mytrip_res_email\" name=\"/sessionWorkflow/itineraryWorkflow/basket/booking/bookingOptions/bookingFulfilment/contact/contactEmailAddress/emailAddress\"
777
- value=\"\" />\n </span>\n </div>\n
778
- \ <div class=\"form_line_wrapper\">\n <div
779
- class=\"separator\">-or-</div>\n </div>\n <div
780
- class=\"form_line_wrapper\">\n <label for=\"mytrip_res_zip\">Telephone
781
- Number</label><span class=\"form_entry\">\n <input
782
- type=\"text\" id=\"mytrip_res_zip\" name=\"/sessionWorkflow/itineraryWorkflow/basket/booking/bookingOptions/bookingFulfilment/contact/contactTelephone/number\"
783
- value=\"\" />\n </span>\n </div>\n
784
- \ <div id=\"ff_mytrip_res_submit\">\n <input
785
- type=\"hidden\" name=\"_handler=com.sita.ats.amtrak.presentation.handler.request.itinerary.AmtrakLoggedOutTripDetailsRequestHandler\"
786
- />\n <input class=\"image\" type=\"image\" alt=\"Find
787
- Reservation\" name=\"_handler=com.sita.ats.amtrak.presentation.handler.request.itinerary.AmtrakLoggedOutTripDetailsRequestHandler\"
788
- src=\"/images/en/btn_find.gif\" />\n </div>\n </form>\n
789
- \ </div>\n\n \n <div
790
- id=\"ff_mytrip_step_2\" class=\"subdiv\">\n <div id=\"mytrip_or\"><span>Or</span></div>\n
791
- \ \n <form onsubmit=\"javascript:return
792
- CheckMandatoryLoginFields(this)\" name=\"mytrip_acct\" action=\"https://tickets.amtrak.com/itd/amtrak\"
793
- method=\"post\"><input type=\"hidden\" name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
794
- />\n\t\t\t\t\t\t<input type=\"hidden\" name=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/@logontype\"
795
- value=\"mytrip\" /> \n <h3>Log in to your Amtrak.com
796
- Account</h3>\n <div class=\"form_line_wrapper\">\n
797
- \ <label for=\"mytrip_acct_email\">E-mail Address</label><span
798
- class=\"form_entry\">\n <input type=\"hidden\"
799
- name=\"xwdf_username\" value=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/userName\"
800
- /><input autocomplete=\"off\" type=\"text\" id=\"mytrip_acct_email\" maxlength=\"64\"
801
- name=\"wdf_username\" />\n </span>\n </div>\n
802
- \ <div class=\"form_line_wrapper\">\n <label
803
- for=\"mytrip_acct_pwd\">Password</label><span class=\"form_entry\">\n <input
804
- type=\"hidden\" name=\"xwdf_password\" value=\"/sessionWorkflow/userWorkflow/profileAccountRequirements/password\"
805
- /><input type=\"password\" autocomplete=\"off\" id=\"mytrip_acct_pwd\" maxlength=\"20\"
806
- name=\"wdf_password\" />\n </span>\n </div>\n
807
- \ <div id=\"ff_mytrip_acct_submit\">\n \n
808
- \ <a class=\"forgot_pass\" title=\"Click here
809
- to request your Password\" href=\"javascript:openForgotPwdBox();\">Forgot
810
- password?</a>\n \n \n
811
- \ <input type=\"hidden\" name=\"_handler=com.sita.ats.amtrak.presentation.handler.request.profile.AmtrakProfileLogonRequestHandler/_xpath=/sessionWorkflow/userWorkflow/profileAccountRequirements\"
812
- />\n <input type=\"image\" alt=\"Log In\" name=\"_handler=com.sita.ats.amtrak.presentation.handler.request.profile.AmtrakProfileLogonRequestHandler/_xpath=/sessionWorkflow/userWorkflow/profileAccountRequirements\"
813
- onclick=\"\" src=\"/images/en/btn_login.gif\" />\n </div>\n
814
- \ </form>\n\t\t\t\t\t\n </div>\n\t\t\t\t\t\n
815
- \ </div>\t\t\n </div>\n \n \n \n\t \n\t \n\t
816
- \ <script type=\"text/javascript\" language=\"javascript\" charset=\"utf-8\">\n
817
- \ // <![CDATA[\n\n new Ajax.Autocompleter('departs','autocomplete_availability_from',
818
- '/itd/amtrak/AutoComplete', {\n paramName: \"_origin\",\n minChars:
819
- 2,\n frequency: 0.5\n }\n ); \n \n
820
- \ new Ajax.Autocompleter('arrives','autocomplete_availability_to','/itd/amtrak/AutoComplete',
821
- {\n paramName: \"_destination\",\n minChars: 2,\n frequency:
822
- 0.5\n }\n );\n\n new Ajax.Autocompleter('agrdeparts','redeem_from_auto',
823
- '/itd/amtrak/AutoComplete', {\n paramName: \"_origin\",\n minChars:
824
- 2,\n frequency: 0.5\n }\n ); \n
825
- \ \n new Ajax.Autocompleter('agrarrives','redeem_to_auto','/itd/amtrak/AutoComplete',
826
- {\n paramName: \"_destination\",\n minChars: 2,\n
827
- \ frequency: 0.5\n }\n );\n\n\n\t\tnew
828
- Ajax.Autocompleter('status_from','status_from_auto','/itd/amtrak/AutoComplete',
829
- {\n\t\t\tparamName: \"_origin\",\n\t\t\tminChars: 2,\n\t\t\tfrequency: 0.5\n\t\t\t}\n\t\t);\n\t\t\n\t\tnew
830
- Ajax.Autocompleter('status_to','status_to_auto','/itd/amtrak/AutoComplete',
831
- {\n\t\t\tparamName: \"_destination\",\n\t\t\tminChars: 2,\n\t\t\tfrequency:
832
- 0.5\n\t\t\t}\n\t\t);\n\t\t\n\t\tnew Ajax.Autocompleter('status_from1','status_from_auto1','/itd/amtrak/AutoComplete',
833
- {\n paramName: \"_origin\",\n minChars: 2,\n frequency:
834
- 0.5\n }\n );\n \n new Ajax.Autocompleter('status_to1','status_to_auto1','/itd/amtrak/AutoComplete',
835
- {\n paramName: \"_destination\",\n minChars: 2,\n frequency:
836
- 0.5\n }\n\t\t);\n\n // ]]>\n </script>\n\t \n
837
- \ <!-- End HTML for Fare Finder -->\n \n \n<script language=\"JavaScript\"
838
- type=\"text/javascript\"> \n<!--\n\nfunction CheckMandatoryTrainStatusFieldsForStatusByTrainNumber()
839
- {\n\tvar errorMsg = \"\";\n\tvar fieldList = \"\";\t \n\n var arrivalStatus_checked
840
- = document.ff_status_form1.status_arr.checked;\n var departureStatus_checked
841
- = document.ff_status_form1.status_dep.checked; \n var origin = document.ff_status_form1.wdf_origin.value;\n
842
- \ var destination = document.ff_status_form1.wdf_destination.value;\n var
843
- trainNumber = document.ff_status_form1.wdf_trainNumber.value;\n\n if(trainNumber
844
- == \"\") {\n trainNumber = \"\";\n } \n\n if (departureStatus_checked
845
- && origin == \"\") \n fieldList = fieldList + \" -- Departure Station\"
846
- + \"\\n\";\n \t\n if (arrivalStatus_checked && destination == \"\")\n
847
- \ fieldList = fieldList + \" -- Arrival Station\" + \"\\n\";\n \n
848
- \ if (trainNumber == \"\" || ((trainNumber != \"\") && (!IsNumber(trainNumber))))\n
849
- \ fieldList = fieldList + \" -- Valid Train or Bus Number\" + \"\\n\";\n\n
850
- \ if (fieldList != \"\") \n errorMsg = \"The following information
851
- is needed to process your request:\" + \"\\n\" + fieldList;\n \n \n
852
- \ if (errorMsg != \"\"){\n alert(errorMsg);\n return false;\n
853
- \ }\n\n if(arrivalStatus_checked) {\n \tdocument.ff_status_form1.wdf_origin.value
854
- = '';\n } else if(departureStatus_checked) {\n \tdocument.ff_status_form1.wdf_destination.value
855
- = '';\n }\n return true; \n}\n\n\nfunction CheckMandatoryTrainStatusFieldsForStatusByCityPair()
856
- {\n var errorMsg =\"\";\n var fieldList = \"\";\n \n var origin
857
- = document.ff_status_form2.wdf_origin.value;\n var destination = document.ff_status_form2.wdf_destination.value;\n\n
858
- \ if (origin == \"\") \n fieldList = fieldList + \" -- From\" + \"\\n\";\n
859
- \ \n if (destination == \"\") \n fieldList =
860
- fieldList + \" -- To\" + \"\\n\";\n \n if (fieldList != \"\")\n errorMsg
861
- = \"The following information is needed to process your request:\" + \"\\n\"
862
- + fieldList;\n \n if (errorMsg != \"\") {\n alert(errorMsg);\n
863
- \ return false;\n }\n \n return true; \n}\n\nfunction
864
- CheckMandatoryScheduleFields(statusForm) {\n var errorMsg =\"\";\n var fieldList
865
- = \"\";\n\t\n var origin = statusForm.wdf_origin.value;\n var destination
866
- = statusForm.wdf_destination.value;\n \n if (origin == \"\" && destination
867
- == \"\") \n fieldList = \"Problem with Departure and Arrival Station/City:
868
- Please provide a valid departure and arrival station or city name and resubmit.
869
- \\n[Error ID: 573S]\" + \"\\n\"; \n\n if (origin != \"\" && destination ==
870
- \"\") \n fieldList = fieldList + \"Problem with Departure and Arrival Station/City:
871
- Please provide a valid departure and arrival station or city name and resubmit.
872
- \\n[Error ID: 573S]\" + \"\\n\"; \n \n if (origin == \"\" && destination
873
- != \"\") \n fieldList = fieldList + \"Problem with Departure and Arrival
874
- Station/City: Please provide a valid departure and arrival station or city
875
- name and resubmit. \\n[Error ID: 573S]\" + \"\\n\"; \n\n if (fieldList !=
876
- \"\") { \n errorMsg = \"The following information is needed to process
877
- your request:\" + \"\\n\\n\" + fieldList;\n }\n if (errorMsg != \"\") {\n
878
- \ alert(errorMsg);\n return false;\n }\n return true;\n}\n\nfunction
879
- CheckMandatoryMyTripFields(theForm) {\n var errorMsg =\"\";\n var fieldList
880
- = \"\";\n \n if ($('mytrip_res_num').value.empty()) {\n fieldList +=
881
- \" -- reservation number\\n\";\n }\n if ($('mytrip_res_email').value.empty()
882
- && $('mytrip_res_zip').value.empty()) {\n fieldList += \" -- email address
883
- or telephone number\\n\";\n }\n \n if (fieldList != \"\") {\n errorMsg=\"The
884
- following information is needed to process your request:\" + \"\\n\" + fieldList+
885
- \"\\n\\n\";\n alert(errorMsg);\n return false;\n }\n return true;\n}\n\nfunction
886
- CheckMandatoryMyTripFields(theForm) {\n var errorMsg =\"\";\n var fieldList
887
- = \"\";\n \n if ($('mytrip_res_num').value.empty()) {\n fieldList +=
888
- \" -- reservation number\\n\";\n }\n if ($('mytrip_res_email').value.empty()
889
- && $('mytrip_res_zip').value.empty()) {\n fieldList += \" -- email address
890
- or telephone number\\n\";\n }\n \n if (fieldList != \"\") {\n errorMsg=\"The
891
- following information is needed to process your request:\" + \"\\n\" + fieldList+
892
- \"\\n\\n\";\n alert(errorMsg);\n return false;\n }\n return true;\n}\n\nfunction
893
- CheckMandatoryLoginFields(theForm) {\n var errorMsg =\"\";\n var fieldList
894
- = \"\";\n \n if(eval(\"theForm.wdf_username.value\") == \"\") {\n fieldList
895
- += \" -- username\\n\";\n }\n if(eval(\"theForm.wdf_password.value\") ==
896
- \"\") {\n fieldList += \" -- password\\n\";\n }\n \n if (fieldList !=
897
- \"\") {\n errorMsg=\"The following information is needed to process your
898
- request:\" + \"\\n\" + fieldList+ \"\\n\\n\";\n alert(errorMsg);\n return
899
- false;\n }\n return true;\n}\n\n//Aibe-2026,Mac safari issue.\nfunction
900
- updateMaxLength()\n{\n trainNum = document.getElementById('status_train_num');\n
901
- \ trainNum.setAttribute(\"maxLength\", 4);\n}\n\nfunction validatePasswordSize()
902
- {\n var memberPwd = document.getElementById('ff_memberpassword');\n if((memberPwd
903
- != null) && (memberPwd.value != \"\")) {\n \tif ((memberPwd.value.length
904
- < '6') ||\n \t \t(memberPwd.value.length > '29') ) {\n \t return 'The password
905
- you entered is invalid. Please try again or call 1-800-307-5000 for assistance
906
- (Sunday - Saturday, 5 am - midnight ET). [Error ID: 1114R]'; \t\n\t} \n
907
- \ }\n return \"\";\n}\n\nfunction checkRedeemMandatoryFields(theForm) {\n\t
908
- \ var errorMsg =\"\";\n\t var fieldList = \"\";\n\t var origin = document.ff_redeem_form.agrdeparts.value;\n\t
909
- \ var destination = document.ff_redeem_form.agrarrives.value;\n\t var startDate
910
- = document.getElementById('wdfdate15').value;\n\t var memberNo = document.getElementById('ff_membernumber');\n\t
911
- \ var memberPwd = document.getElementById('ff_memberpassword');\n\n\t if
912
- (memberNo != null) { //member number null means login was already validated\n\t
913
- \ \tif (memberNo.value == \"\") {\n\t\t\tfieldList = fieldList + \" -- Member
914
- Number\\n\";\n\t\t}\t\n\t }\n\t \n\t if(memberPwd != null) {//member password
915
- null means login was already validated\n\t \tif (memberPwd.value == \"\")
916
- {\n\t\t fieldList = fieldList + \" -- Member Passsword\\n\";\n\t\t} \n\t
917
- \ }\n\t \n\t if (origin == \"\") {\n\t fieldList = fieldList + \" --
918
- From\\n\";\n\t }\n\n\t if(destination == \"\") {\n\t fieldList = fieldList
919
- + \" -- To\\n\";\n\t }\n\t \n\t if (startDate == \"\" || startDate == 'Select
920
- a date') {\n\t fieldList = fieldList + \" -- Day\\n\";\n\t }\n\n\t if
921
- (fieldList != \"\") {\n\t\terrorMsg=\"The following information is needed
922
- to process your request:\" + \"\\n\" + fieldList+ \"\\n\\n\";\n\t\talert(errorMsg);\n\t\treturn
923
- false;\n\t }\n\t \n\t return fieldList;\n}\n\nfunction checkValidCouponCode(id){\n\n\tvar
924
- errorMsg='';\n\tvar newCouponCode = document.getElementById(id).value;\n\n
925
- \ if(newCouponCode == \"Promo Code\") {\n document.getElementById('ff_disc_promoCode').value
926
- = \"\";\n newCouponCode= \"\"\n } \n\n\tnewCouponCode = trim(newCouponCode);\n\t\n
927
- \ if(newCouponCode == '')\n return true;\n\n var isValidCode =
928
- validateCouponCode(newCouponCode);\n \n if(isValidCode == false) {\n
929
- \ errorMsg = 'Problem with Promotion Code: The Promotion Code you entered
930
- is not valid. Please check for accuracy and re-enter it, or continue without
931
- it. \\n[Error ID: 744S]';\n \n } \n\n if (errorMsg!=\"\"){\n
932
- \ alert(errorMsg);\n return false;\n } else {\n \treturn
933
- true;\n }\n\n}\nfunction trim(s) {\n return s.replace(/^\\s+|\\s+$/g,
934
- \"\");\n}\n\nfunction ValidateStatusDate(id){\n var errMsg=\"\";\n var
935
- mindate = new Date();\n var maxdate = new Date();\n var numberOfDaysToAdd
936
- = +5;\n var numberOfPastDays = -5;\n mindate.setDate(mindate.getDate()
937
- + numberOfPastDays); \n mindate= $j.datepicker.formatDate('mm/dd/yy', mindate);\n
938
- \ maxdate.setDate(maxdate.getDate() + numberOfDaysToAdd); \n maxdate=
939
- $j.datepicker.formatDate('mm/dd/yy', maxdate);\n var depdate=document.getElementById(id).value;\n
940
- \ \n if (depdate != \"\" && validDateRange(mindate,maxdate,depdate) ==
941
- false ){\n \terrMsg = 'Train status information is available only for today\\'s
942
- date, five days in the past, and five days in the future. Please select a
943
- valid date and resubmit.[Error ID: 568S]' ;\n }\n if (null != errMsg
944
- && errMsg != \"\" ) {\n alert(errMsg);\n return false;\n
945
- \ } else {\n return true;\n }\n \n\n}\nfunction ValidateRedeemDate(id){\n
946
- \ var errMsg=\"\";\n var mindate = new Date();\n var newdate = new
947
- Date();\n\tvar numberOfDaysToAdd = '+335d';\n\tnumberOfDaysToAdd = parseInt(numberOfDaysToAdd.replace(/\\D/g,''));\n
948
- \ var mindate= $j.datepicker.formatDate('mm/dd/yy', newdate);\n newdate.setDate(newdate.getDate()
949
- + numberOfDaysToAdd); \n var maxdate= $j.datepicker.formatDate('mm/dd/yy',
950
- newdate);\n var depdate=document.getElementById(\"wdfdate15\").value;\n
951
- \ \n if (depdate != \"\" && validMinDateRange(mindate,depdate) == false
952
- ){\n errMsg = 'Problem with Travel Date: Our system cannot make reservations
953
- for dates in the past. Check your date(s) and try again. [Error ID: 532S]\\n\\n'
954
- ;\n }\n if (depdate != \"\" && validMaxDateRange(maxdate,depdate) ==
955
- false ){\n errMsg = 'Problem with Travel Date: Our system cannot make
956
- reservations for dates more than 11 months in the future. Check your date(s)
957
- and try again. [Error ID: 533S]' ;\n }\n \n if (null != errMsg &&
958
- errMsg != \"\" ) {\n alert(errMsg);\n return false;\n
959
- \ } else {\n return true;\n }\n \n\n}\n\n\n//-->\n</script>\n
960
- \n \n\r\n\r\n<meta name=\"WT.cg_s\" content=\"book\" />\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div
961
- id=\"special_booking_menu\">\r\n\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n<style type=\"text/css\">\r\n<!--\r\n@import
962
- url(/css/basic_booking.css?v=1.3);\r\n-->\r\n</style>\r\n\r\n\r\n\r\n<span
963
- 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
964
- id=\"mb_column_1_confirmation\">\r\n<form name=\"form\" action=\"https://tickets.amtrak.com/itd/amtrak\"
965
- method=\"post\"><input type=\"hidden\" name=\"requestor\" value=\"amtrak.presentation.handler.page.rail.AmtrakRailGetTrainStatusPageHandler\"
966
- />\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<style type=\"text/css\">\r\n#pagination_bar
967
- {\r\nclear:both;\r\npadding-top: 20px;\r\nfont-family: Arial, Verdana, Helvetica,
968
- sans-serif;\r\nsize: 108%;\r\ncolor: #1375b3;\r\n}\r\n#pagination_bar #pagination_data
969
- {\r\nwidth: 49%;\r\nfloat: left;\r\ntext-align: left;\r\npadding-bottom: 1px;\r\n}\r\n#pagination_bar
970
- #pagination_nav {\r\nwidth: 49%;\r\nfloat: right;\r\ntext-align: right;\r\npadding-bottom:
971
- 1px;\r\n}\r\n#pagination_bar #pagination_nav span {\r\npadding-left: 10px;\r\n}\r\n#pagination_bar
972
- #pagination_nav a, #availability_grid #pagination_bar #pagination_nav a:visited,
973
- #availability_grid #pagination_bar #pagination_nav a:hover {\r\ncolor: #1375b3;\r\n}\r\n#pagination_bar
974
- #pagination_nav a.selected, #availability_grid #pagination_bar #pagination_nav
975
- a.selected:visited, #availability_grid #pagination_bar #pagination_nav a.selected:hover
976
- {\r\ncolor: #ff9933;\r\ntext-decoration: none;\r\ncursor: text;\r\nbackground-color:
977
- white;\r\n}\r\n#loadingtrain {\r\nwidth:100px;\r\nheight: 100px;\r\nposition:
978
- fixed;\r\ntop: 50%;\r\nleft: 60%;\r\nbackground:url(/images/en/superpnr/image_loader_blue.gif)
979
- no-repeat center #fff;\r\ntext-align:center;\r\npadding:10px;\r\nfont:normal
980
- 16px Tahoma, Geneva, sans-serif;\r\nborder:1px solid #666;\r\nmargin-left:
981
- -50px;\r\nmargin-top: -50px;\r\nz-index:2;\r\noverflow: auto;\r\n}\r\n#loadingfailed
982
- {\r\nwidth:100px;\r\nheight: 100px;\r\nposition: fixed;\r\ntop: 50%;\r\nleft:
983
- 60%;\r\nbackground:#fff;\r\ntext-align:center;\r\npadding:10px;\r\nfont:normal
984
- 16px Tahoma, Geneva, sans-serif;\r\nborder:1px solid #666;\r\nmargin-left:
985
- -50px;\r\nmargin-top: -50px;\r\nz-index:2;\r\noverflow: auto;\r\n}\r\n#overlay
986
- {\r\nbackground-color:#EEE;\r\n}\r\n.statusalert_icon{\r\nfloat:left;\r\npadding:
987
- 9px 10px 0 10px;\r\n}\r\n.statusalert_icon2{\r\npadding-right:10px;\r\npadding-top:3px;\r\nfloat:left;\r\n}\r\n</style>\r\n<script
988
- language=\"JavaScript\" type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/basic_pagination_trainstatus.js\"></script>\r\n<script
989
- language=\"JavaScript\" type=\"text/javascript\" src=\"/itd/project/scripts/en/amtrak/selecttrain.js\"></script>\r\n<script
990
- type=\"text/javascript\">\r\nvar pageDisplay = '10';\r\nvar currentPage =
991
- 0;\r\nvar availabilityLength = '4';\r\nvar trainStatusType = 'statusByCityPair';\r\nvar
992
- statusResult;\r\nElement.observe(window, 'load', function(){\r\nshow_ff_tab('status');\r\nif(trainStatusType
993
- == 'statusByTrainNumber') {\r\nswitchToStatusByTrain();\r\n} else if(trainStatusType
994
- == 'statusByCityPair') {\r\nswitchToStatusByCity();\r\n}\r\nsetDepartOrArrivalFieldVisibility();\r\npageFilterDisplay(availabilityLength);\r\n});\r\n</script>\r\n\r\n\r\n<div>\r\n<h1
995
- class=\"train_status\">Current Train Status<span></span></h1>\r\n<br class=\"clear_both\"
996
- />\r\n</div>\r\n\r\n\r\n<div id=\"more_status_results\">\r\n<div id=\"train_status_resp_by_citypair_heading\">\r\n\r\n<div
997
- id=\"resp_by_citypair_heading_left\">\r\n<div>PVD</div>\r\n<div id=\"resp_by_citypair_heading_line2\">Providence,
998
- RI</div>\r\n</div>\r\n<div id=\"resp_by_citypair_heading_middle\">\r\n<img
999
- alt=\"\" src=\"/images/en/station-to-station-arrow.png\" />\r\n</div>\r\n<div
1000
- id=\"resp_by_citypair_heading_right\">\r\n<div>BBY</div>\r\n<div id=\"resp_by_citypair_heading_line2\">Boston,
1001
- MA</div>\r\n</div>\r\n\r\n</div>\r\n<div id=\"train_status_spacing1\"></div>\r\n\r\n\r\n<div
1002
- id=\"train_status_resp_by_citypair\">\r\n<div id=\"resp_by_citypair_subheading\">\r\n<div
1003
- id=\"resp_by_citypair_subheading_trainname\">\r\n<a style=\"display:none;\"
1004
- class=\"button\" href=\"\" name=\"selecttrainAlerts_Northeast Regional2016-01-03\"><img
1005
- class=\"service_alert statusalert_icon\" alt=\"Service Alert\" src=\"/images/en/icon_servicealert_trainstatus.png\"
1006
- /></a><div class=\"ts_servicename\">194&nbsp;Northeast Regional</div>\r\n</div>\r\n</div>\r\n\r\n<div
1007
- id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div class=\"statusDetailsSection\">\r\n<div
1008
- class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div class=\"arriveDepartDelayedMsg\">
1009
- Departed</div>\r\n<div class=\"delayedMsg\">4 minutes late</div>\r\n\r\n<div
1010
- class=\"arriveDepartTime\">8:29 pm</div>\r\n<div class=\"arriveDepartDate\">Sun,
1011
- Jan 3 2016</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1012
- Departure&nbsp;8:25 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1013
- id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/ontime-arrived.png\"
1014
- />\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
1015
- class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
1016
- class=\"arriveDepartOntimeMsg\"> Arrived</div>\r\n<div class=\"ontimeMsg\">10
1017
- minutes early</div>\r\n\r\n\r\n<div class=\"arriveDepartTime\">9:00 pm</div>\r\n<div
1018
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1019
- Arrival&nbsp;9:10 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1020
- id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
1021
- id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n<a
1022
- style=\"display:none;\" class=\"button\" href=\"\" name=\"selecttrainAlerts_Acela
1023
- Express2016-01-03\"><img class=\"service_alert statusalert_icon\" alt=\"Service
1024
- Alert\" src=\"/images/en/icon_servicealert_trainstatus.png\" /></a><div class=\"ts_servicename\">2256&nbsp;Acela
1025
- Express</div>\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
1026
- class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</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<div
1027
- class=\"statusUnavailableMsg\">Status unavailable</div>\r\n<div class=\"arriveDepartDate\">Sun,
1028
- Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1029
- Departure&nbsp;8:55 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1030
- id=\"resp_by_citypair_arrow_img\">\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<img
1031
- src=\"/images/en/no-status-available-origin.png\" />\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div
1032
- id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div class=\"statusDetailsSection\">\r\n<div
1033
- class=\"cityName\">BBY</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<div
1034
- class=\"statusUnavailableMsg\">Status unavailable</div>\r\n<div class=\"arriveDepartDate\">Sun,
1035
- Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1036
- Arrival&nbsp;9:39 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1037
- id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
1038
- id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n<a
1039
- style=\"display:none;\" class=\"button\" href=\"\" name=\"selecttrainAlerts_Acela
1040
- Express2016-01-03\"><img class=\"service_alert statusalert_icon\" alt=\"Service
1041
- Alert\" src=\"/images/en/icon_servicealert_trainstatus.png\" /></a><div class=\"ts_servicename\">2258&nbsp;Acela
1042
- Express</div>\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
1043
- class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</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<div
1044
- class=\"arriveDepartDelayedMsg\">Estimated Departure</div>\r\n<div class=\"delayedMsg\">5
1045
- minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">9:59 pm</div>\r\n<div
1046
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1047
- Departure&nbsp;9:54 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1048
- id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/ontime-enroute.png\"
1049
- />\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
1050
- class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</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<div
1051
- class=\"arriveDepartOntimeMsg\">Estimated Arrival</div>\r\n<div class=\"ontimeMsg\">2
1052
- minutes early</div>\r\n\r\n\r\n<div class=\"arriveDepartTime\">10:38 pm</div>\r\n<div
1053
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n\r\n<div
1054
- class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival&nbsp;10:40 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1055
- id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
1056
- id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n<a
1057
- style=\"display:none;\" class=\"button\" href=\"\" name=\"selecttrainAlerts_Northeast
1058
- Regional2016-01-03\"><img class=\"service_alert statusalert_icon\" alt=\"Service
1059
- Alert\" src=\"/images/en/icon_servicealert_trainstatus.png\" /></a><div class=\"ts_servicename\">132&nbsp;Northeast
1060
- Regional</div>\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
1061
- class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</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<div
1062
- class=\"arriveDepartDelayedMsg\">Estimated Departure</div>\r\n<div class=\"delayedMsg\">1
1063
- minute late</div>\r\n\r\n<div class=\"arriveDepartTime\">11:03 pm</div>\r\n<div
1064
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1065
- Departure&nbsp;11:02 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1066
- id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/ontime-enroute.png\"
1067
- />\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
1068
- class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</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<div
1069
- class=\"arriveDepartOntimeMsg\">Estimated Arrival</div>\r\n<div class=\"ontimeMsg\">14
1070
- minutes early</div>\r\n\r\n\r\n<div class=\"arriveDepartTime\">11:35 pm</div>\r\n<div
1071
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n\r\n<div
1072
- class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival&nbsp;11:49 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1073
- id=\"train_status_spacing\"></div>\r\n\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n<div
1074
- id=\"serviceAlertsXml\"></div>\r\n<script language=\"JavaScript\" type=\"text/javascript\">\r\nvar
1075
- url = \"/\" + \"itd/amtrak\" + \"/DisplayFareFamiliesServiceInfo\";\r\n//display
1076
- service alerts\r\nnew Ajax.Request(url,\r\n{ method: 'post',\r\nparameters:
1077
- {'functionName':'serviceAlerts','param1':'depart'},\r\nonSuccess: function
1078
- (transport) {\r\nif(transport.responseText!='') {\r\n$('serviceAlertsXml').update(transport.responseText);\r\nvar
1079
- xmlstr = transport.responseText;\r\nshowFareFamilyServiceAlertsLinks(xmlstr);\r\n}\r\n}\r\n});\r\n</script>\r\n\r\n<div
1080
- id=\"pagination_bar\">\r\n<div id=\"pagination_data\"></div>\r\n<div id=\"pagination_nav\"></div>\r\n<br
1081
- class=\"clear_both\" />\r\n</div>\r\n\r\n<br class=\"clear_both\" />\r\n<div
1082
- id=\"loadingtrain\" style=\"display:none\">Loading...</div>\r\n<div id=\"loadingfailed\"
1083
- style=\"display: none\">We're sorry, we're unable to process your request.<img
1084
- src=\"/images/en/error_icon.gif\"></div>\r\n\r\n\r\n\r\n<meta name=\"WT.cg_s\"
1085
- content=\"status\" />\r\n\n<meta name=\"DCSext.NBR\" content=\"preencoded:194;2256;2258;132\"
1086
- />\n<meta name=\"DCSext.ORG\" content=\"PVD\" />\n<meta name=\"DCSext.DST\"
1087
- content=\"BBY\" />\n<meta name=\"DCSext.DDT\" content=\"2016/01/03\" />\n<meta
1088
- name=\"DCSext.ADT\" content=\"2016/01/03\" />\n\r\n\r\n\r\n</form>\r\n</div>\r\n<br
1089
- class=\"clear_both\" />\r\n</div>\r\n</div>\r\n</div>\r\n\r\n\t \t\r\n<script
1090
- language=\"JavaScript\">\r\n<!--\r\nfunction getProfileStr(){\r\nreturn 'amtrak';\r\n}\r\ndocument.write('<meta
1091
- name=\"DCSext.PROFILE\" content=\"'+getProfileStr()+'\" />');\r\n// -->\r\n</script>\r\n<meta
1092
- name=\"WT.cg_n\" content=\"booking\" />\r\n\r\n\r\n\t \r\n<!-- START OF
1093
- SmartSource Data Collector TAG -->\r\n<!-- Copyright (c) 1996-2011 WebTrends
1094
- Inc. All rights reserved. -->\r\n<!-- Version: 9.3.0 -->\r\n<!-- Tag Builder
1095
- Version: 3.1 -->\r\n<!-- Created: 2/11/2011 4:14:35 PM -->\r\n<script src=\"/itd/project/scripts/en/sitewise/webtrends_session.js\"
1096
- type=\"text/javascript\"></script>\r\n<!-- -----------------------------------------------------------------------------------
1097
- -->\r\n<!-- Warning: The two script blocks below must remain inline. Moving
1098
- them to an external -->\r\n<!-- JavaScript include file can cause serious
1099
- problems with cross-domain tracking. -->\r\n<!-- -----------------------------------------------------------------------------------
1100
- -->\r\n<script type=\"text/javascript\">\r\n//<![CDATA[\r\nvar _tag=new WebTrends();\r\nvar
1101
- defSiteWiseParams = \"&PROFILE=amtrak&WT.cg_n=booking\";\r\nvar CMS_dcsqry
1102
- = window.location.search + defSiteWiseParams;\r\n//]]>\r\n</script>\r\n<script
1103
- type=\"text/javascript\">\r\n//<![CDATA[\r\n_tag.dcsCustom=function(){\r\n//
1104
- 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
1105
- alt=\"DCSIMG\" id=\"DCSIMG\" width=\"1\" height=\"1\" src=\"http://statse.webtrendslive.com/dcsn42u4k11e5hyzziz7zntl5_1j8l/njs.gif?dcsuri=/nojavascript&amp;WT.js=No&amp;DCS.dcscfg=1&amp;WT.tv=9.3.0&amp;WT.dcssip=www.amtrak.com\"/></div>\r\n</noscript>\r\n<!--
1106
- END OF SmartSource Data Collector TAG -->\r\n\r\n\t \t\r\n \r\n \r\n
1107
- \ \r\n\r\n\r\n<div id=\"forgot_passwordwin\" >\r\n<div id=\"pwdwin_error\"
1108
- class=\"error\"> </div>\r\n<h3>Reset Your Password</h3>\r\n\r\n<div id=\"confirmpwdreset\"
1109
- style=\"display:none;\">\r\n<p>An e-mail with password reset instructions
1110
- is on its way.</p>\r\n</div>\r\n<div id=\"pwdresetsec\">\r\n<p>To receive
1111
- an e-mail that allows you to reset your password, please enter the e-mail
1112
- address associated with your account. </p>\r\n<label for=\"emailaddress\">E-mail
1113
- Address</label><br/>\r\n<input type=\"hidden\" name=\"xwdf_email_address\"
1114
- value=\"/sessionWorkflow/userWorkflow/profilePersonRequirements/primaryEmailAddress\"
1115
- /><input class=\"forgotpwd_emailaddress \" autocomplete=\"off\" type=\"text\"
1116
- size=\"32\" id=\"pwdemailaddress\" maxlength=\"64\" name=\"wdf_email_address\"
1117
- /><br/>\r\n<input type=\"image\" alt=\"\" name=\"_xpath=/sessionWorkflow/userWorkflow/profilePersonRequirements\"
1118
- onclick=\"javascript:sendPasswordReset()\" src=\"/images/en/btn_continue.gif\"
1119
- border=\"0\" />\r\n</div>\r\n\r\n</div>\r\n<script>\r\n<!--\r\nvar closeCrossButton
1120
- = '<a id=\"forgotpassword_close\" class=\"button right_align\" href=\"javascript:closeForgotPwdBox();\"><img
1121
- \ src=\"/images/en/btn_windowClose.png\" alt=\"Close\" /></a>';\r\nfunction
1122
- show_disabledFareAlert() {\r\ndocument.getElementById(\"forgot_passwordwin\").style.display
1123
- = 'block';\r\n}\r\nfunction closeForgotPwdBox() {\r\nvar $j = jQuery.noConflict();\r\n$j(\".ui-dialog-content\").dialog(\"close\");\r\n}\r\nfunction
1124
- openForgotPwdBox() {\r\nvar $j = jQuery.noConflict();\r\n$j( document ).ready(function()
1125
- {\r\n$j( \"#forgot_passwordwin\" ).dialog({\r\nresizable: false,\r\nwidth:100,\r\ndialogClass:'pwdwin',\r\nmodal:
1126
- true\r\n});\r\nif ($('forgotpassword_close') == null) {\r\n$j($('forgot_passwordwin')).before(closeCrossButton);\r\n}\r\n$j(\".ui-dialog\").position({\r\n\"my\":
1127
- \"left top+300\",\r\n\"at\": \"left+400\",\r\n\"of\": $j(\"#top_navigation_body\")\r\n});\r\n$j('#forgotpassword_close').blur();\r\ndocument.getElementById(\"pwdwin_error\").style.display
1128
- = 'none';\r\ndocument.getElementById(\"forgot_passwordwin\" ).style.display
1129
- = 'block';\r\ndocument.getElementById(\"confirmpwdreset\").style.display =
1130
- 'none';\r\ndocument.getElementById(\"pwdresetsec\").style.display = 'block';\r\n});\r\n}\r\nfunction
1131
- sendPasswordReset(){\r\nvar emailaddress = document.getElementById('pwdemailaddress').value;\r\nvar
1132
- url = \"/\" + \"itd/amtrak\" + \"/resetpassword\";\r\ndocument.getElementById(\"pwdwin_error\").innerHTML
1133
- = \"\";\r\ndocument.getElementById(\"pwdwin_error\").style.display = 'none';\r\nnew
1134
- Ajax.Request(url,\r\n{ method: 'post',\r\nparameters: {'emailaddress':emailaddress},\r\nonComplete:
1135
- function (transport) {\r\nif(transport.responseText!='') {\r\nif(transport.responseText
1136
- == 'valid') {\r\ndocument.getElementById(\"pwdresetsec\").style.display =
1137
- 'none';\r\ndocument.getElementById(\"confirmpwdreset\").style.display = 'block';\r\n}
1138
- else {\r\ndocument.getElementById(\"confirmpwdreset\").style.display = 'none';\r\ndocument.getElementById(\"pwdresetsec\").style.display
1139
- = 'block';\r\ndocument.getElementById(\"pwdwin_error\").innerHTML = transport.responseText;\r\ndocument.getElementById(\"pwdwin_error\").style.display
1140
- = 'block';\r\n}\r\n}\r\n},\r\nonFailure: function (transport) {\r\ndocument.getElementById(\"confirmpwdreset\").style.display
1141
- = 'none';\r\n}\r\n});\r\n}\r\n//-->\r\n</script>\r\n\r\n \r\n \r\n\t
1142
- \ \t\r\n\t \t\r\n <!-- javascript for SSO -->\r\n\t <script type=\"text/javascript\">\r\n\t
1143
- \ var agrHost = ((\"https:\"== document.location.protocol) ? \"https://agr.amtrak.com/m/js\":\"http://agr.amtrak.com/m/js\");
1144
- \r\n \t document.write(\r\n unescape(\"%3Cscript
1145
- src='\" + agrHost + \"/shoebox-simple.js' type='text/javascript'%3E%3C/script%3E\")\r\n
1146
- \ );\r\n\t </script>\r\n <!-- mp_trans_remove_start
1147
- --><script type=\"text/javascript\" language=\"javascript\" src='https://askjulie.amtrak.com/ui/includes/NIT.Embed.js'
1148
- id=\"agentScript\"></script><!-- mp_trans_remove_end -->\r\n \r\n \r\n
1149
- \ <script type =\"text/javascript\">_satellite.pageBottom();</script>\r\n
1150
- \ \r\n \r\n \r\n\t \r\n \r\n \r\n
1151
- \ </body> \t\r\n</html>"
1152
- http_version:
1153
- recorded_at: Mon, 04 Jan 2016 02:44:10 GMT
1154
- - request:
1155
- method: get
1156
- uri: https://tickets.amtrak.com/itd/amtrak/TrainStatusRequest?_trainstatuspage=1
1157
- body:
1158
- encoding: US-ASCII
1159
- string: ''
1160
- headers:
1161
- Cookie:
1162
- - JSESSIONID=0000RTOkGD--V2Mrvz_u1g3lPdb:187j69oi1
1163
- response:
1164
- status:
1165
- code: 200
1166
- message:
1167
- headers:
1168
- Server:
1169
- - Oracle-iPlanet-Web-Server/7.0
1170
- Content-Length:
1171
- - '6546'
1172
23
  Content-Type:
1173
- - text/html;charset=UTF-8
1174
- X-powered-by:
1175
- - Servlet/3.0
24
+ - application/json
25
+ Access-Control-Allow-Headers:
26
+ - Content-Type
27
+ Access-Control-Allow-Methods:
28
+ - POST, OPTIONS
29
+ Access-Control-Allow-Origin:
30
+ - "*"
1176
31
  Content-Language:
1177
32
  - en-US
1178
- X-frame-options:
1179
- - SAMEORIGIN
1180
- Expires:
1181
- - Tue, 01 Jul 2003, 00:00:00 GMT
33
+ X-Global-Transaction-Id:
34
+ - '3961818577'
35
+ X-Dp-Tid:
36
+ - '3961818577'
37
+ X-Dp-Srversion:
38
+ - '1.0'
1182
39
  Date:
1183
- - Mon, 04 Jan 2016 02:44:11 GMT
40
+ - Thu, 12 Oct 2017 02:06:56 GMT
41
+ Content-Length:
42
+ - '42018'
1184
43
  Connection:
1185
44
  - keep-alive
1186
45
  body:
1187
- encoding: UTF-8
1188
- string: "\r\n\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair_heading\">\r\n\r\n<div
1189
- id=\"resp_by_citypair_heading_left\">\r\n<div>PVD</div>\r\n<div id=\"resp_by_citypair_heading_line2\">Providence,
1190
- RI</div>\r\n</div>\r\n<div id=\"resp_by_citypair_heading_middle\">\r\n<img
1191
- alt=\"\" src=\"/images/en/station-to-station-arrow.png\" />\r\n</div>\r\n<div
1192
- id=\"resp_by_citypair_heading_right\">\r\n<div>BBY</div>\r\n<div id=\"resp_by_citypair_heading_line2\">Boston,
1193
- MA</div>\r\n</div>\r\n\r\n</div>\r\n<div id=\"train_status_spacing1\"></div>\r\n\r\n\r\n<div
1194
- id=\"train_status_resp_by_citypair\">\r\n<div id=\"resp_by_citypair_subheading\">\r\n<div
1195
- id=\"resp_by_citypair_subheading_trainname\">\r\n<a style=\"display:none;
1196
- float:left; padding: 9px 10px 0 10px;\" class=\"button\" href=\"\" name=\"selecttrainAlerts_Northeast
1197
- Regional2016-01-03\"><img class=\"service_alert\" alt=\"Service Alert\" src=\"/images/en/icon_servicealert_trainstatus.png\"
1198
- /></a><div class=\"ts_servicename\">194&nbsp;Northeast Regional</div>\r\n</div>\r\n</div>\r\n\r\n<div
1199
- id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div class=\"statusDetailsSection\">\r\n<div
1200
- class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div class=\"arriveDepartDelayedMsg\">
1201
- Departed</div>\r\n<div class=\"delayedMsg\">4 minutes late</div>\r\n\r\n<div
1202
- class=\"arriveDepartTime\">8:29 pm</div>\r\n<div class=\"arriveDepartDate\">Sun,
1203
- Jan 3 2016</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1204
- Departure&nbsp;8:25 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1205
- id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/ontime-arrived.png\"
1206
- />\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
1207
- class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
1208
- class=\"arriveDepartOntimeMsg\"> Arrived</div>\r\n<div class=\"ontimeMsg\">10
1209
- minutes early</div>\r\n\r\n\r\n<div class=\"arriveDepartTime\">9:00 pm</div>\r\n<div
1210
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1211
- Arrival&nbsp;9:10 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1212
- id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
1213
- id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n<a
1214
- style=\"display:none; float:left; padding: 9px 10px 0 10px;\" class=\"button\"
1215
- href=\"\" name=\"selecttrainAlerts_Acela Express2016-01-03\"><img class=\"service_alert\"
1216
- alt=\"Service Alert\" src=\"/images/en/icon_servicealert_trainstatus.png\"
1217
- /></a><div class=\"ts_servicename\">2256&nbsp;Acela Express</div>\r\n</div>\r\n</div>\r\n\r\n<div
1218
- id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div class=\"statusDetailsSection\">\r\n<div
1219
- class=\"cityName\">PVD</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<div
1220
- class=\"statusUnavailableMsg\">Status unavailable</div>\r\n<div class=\"arriveDepartDate\">Sun,
1221
- Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1222
- Departure&nbsp;8:55 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1223
- id=\"resp_by_citypair_arrow_img\">\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<img
1224
- src=\"/images/en/no-status-available-origin.png\" />\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div
1225
- id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div class=\"statusDetailsSection\">\r\n<div
1226
- class=\"cityName\">BBY</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<div
1227
- class=\"statusUnavailableMsg\">Status unavailable</div>\r\n<div class=\"arriveDepartDate\">Sun,
1228
- Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1229
- Arrival&nbsp;9:39 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1230
- id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
1231
- id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n<a
1232
- style=\"display:none; float:left; padding: 9px 10px 0 10px;\" class=\"button\"
1233
- href=\"\" name=\"selecttrainAlerts_Acela Express2016-01-03\"><img class=\"service_alert\"
1234
- alt=\"Service Alert\" src=\"/images/en/icon_servicealert_trainstatus.png\"
1235
- /></a><div class=\"ts_servicename\">2258&nbsp;Acela Express</div>\r\n</div>\r\n</div>\r\n\r\n<div
1236
- id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div class=\"statusDetailsSection\">\r\n<div
1237
- class=\"cityName\">PVD</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<div
1238
- class=\"arriveDepartDelayedMsg\">Estimated Departure</div>\r\n<div class=\"delayedMsg\">5
1239
- minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">9:59 pm</div>\r\n<div
1240
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1241
- Departure&nbsp;9:54 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1242
- id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/ontime-enroute.png\"
1243
- />\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
1244
- class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</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<div
1245
- class=\"arriveDepartOntimeMsg\">Estimated Arrival</div>\r\n<div class=\"ontimeMsg\">2
1246
- minutes early</div>\r\n\r\n\r\n<div class=\"arriveDepartTime\">10:38 pm</div>\r\n<div
1247
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n\r\n<div
1248
- class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival&nbsp;10:40 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1249
- id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
1250
- id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n<a
1251
- style=\"display:none; float:left; padding: 9px 10px 0 10px;\" class=\"button\"
1252
- href=\"\" name=\"selecttrainAlerts_Northeast Regional2016-01-03\"><img class=\"service_alert\"
1253
- alt=\"Service Alert\" src=\"/images/en/icon_servicealert_trainstatus.png\"
1254
- /></a><div class=\"ts_servicename\">132&nbsp;Northeast Regional</div>\r\n</div>\r\n</div>\r\n\r\n<div
1255
- id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div class=\"statusDetailsSection\">\r\n<div
1256
- class=\"cityName\">PVD</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<div
1257
- class=\"arriveDepartDelayedMsg\">Estimated Departure</div>\r\n<div class=\"delayedMsg\">1
1258
- minute late</div>\r\n\r\n<div class=\"arriveDepartTime\">11:03 pm</div>\r\n<div
1259
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
1260
- Departure&nbsp;11:02 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1261
- id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/ontime-enroute.png\"
1262
- />\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
1263
- class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</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<div
1264
- class=\"arriveDepartOntimeMsg\">Estimated Arrival</div>\r\n<div class=\"ontimeMsg\">14
1265
- minutes early</div>\r\n\r\n\r\n<div class=\"arriveDepartTime\">11:35 pm</div>\r\n<div
1266
- class=\"arriveDepartDate\">Sun, Jan 3 2016</div>\r\n\r\n\r\n\r\n\r\n\r\n<div
1267
- class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival&nbsp;11:49 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
1268
- id=\"train_status_spacing\"></div>\r\n\r\n\r\n\r\n"
46
+ encoding: ASCII-8BIT
47
+ string: |-
48
+ {
49
+ "appVersion": "1.51",
50
+ "authenticationToken": null,
51
+ "buildNumber": "1.51_20170909.0300",
52
+ "hostName": "ussbpri031amtra",
53
+ "infoNotification": null,
54
+ "journeys": [
55
+ {
56
+ "alternative": null,
57
+ "bedRoomClassPrice": null,
58
+ "duration": null,
59
+ "durationMinutes": 0,
60
+ "journeyTotalFare": null,
61
+ "lowFareClass": null,
62
+ "modifiable": null,
63
+ "passenger": null,
64
+ "refId": null,
65
+ "rooms": null,
66
+ "seats": null,
67
+ "segments": [
68
+ {
69
+ "additionalInfo": null,
70
+ "amenities": null,
71
+ "ancillary": null,
72
+ "appType": null,
73
+ "arrivalDateTime": null,
74
+ "arrivalStationCode": null,
75
+ "arrivalStationName": null,
76
+ "authenticationToken": null,
77
+ "classCode": null,
78
+ "classCodeQuantity": null,
79
+ "companyName": null,
80
+ "compartments": null,
81
+ "crossBorder": null,
82
+ "departureDateTime": null,
83
+ "departureDateTimeInUTC": null,
84
+ "departureStationCode": null,
85
+ "departureStationName": null,
86
+ "destinationEstimatedArrivalDateTime": "2017-10-12T00:11:00",
87
+ "destinationPostedArrivalDateTime": null,
88
+ "destinationScheduledArrivalDateTime": "2017-10-12T00:14:00",
89
+ "destinationStationCode": "BBY",
90
+ "destinationStatusComment": null,
91
+ "displayRoomNumbers": false,
92
+ "duration": null,
93
+ "durationMinutes": 0,
94
+ "isAlternative": null,
95
+ "isBus": null,
96
+ "isRestrictive": null,
97
+ "originEstimatedDepartureDateTime": "2017-10-11T23:29:00",
98
+ "originPostedDepartureDateTime": null,
99
+ "originScheduledDepartureDateTime": "2017-10-11T23:29:00",
100
+ "originStationCode": "PVD",
101
+ "originStatusComment": null,
102
+ "rooms": null,
103
+ "routeName": "Northeast Regional",
104
+ "seats": null,
105
+ "segmentServiceStatus": "false",
106
+ "serviceMessage": "03 MI EARLY",
107
+ "serviceStatus": null,
108
+ "trainNumber": "178",
109
+ "validate": true,
110
+ "versionNumber": null
111
+ }
112
+ ]
113
+ },
114
+ {
115
+ "alternative": null,
116
+ "bedRoomClassPrice": null,
117
+ "duration": null,
118
+ "durationMinutes": 0,
119
+ "journeyTotalFare": null,
120
+ "lowFareClass": null,
121
+ "modifiable": null,
122
+ "passenger": null,
123
+ "refId": null,
124
+ "rooms": null,
125
+ "seats": null,
126
+ "segments": [
127
+ {
128
+ "additionalInfo": null,
129
+ "amenities": null,
130
+ "ancillary": null,
131
+ "appType": null,
132
+ "arrivalDateTime": null,
133
+ "arrivalStationCode": null,
134
+ "arrivalStationName": null,
135
+ "authenticationToken": null,
136
+ "classCode": null,
137
+ "classCodeQuantity": null,
138
+ "companyName": null,
139
+ "compartments": null,
140
+ "crossBorder": null,
141
+ "departureDateTime": null,
142
+ "departureDateTimeInUTC": null,
143
+ "departureStationCode": null,
144
+ "departureStationName": null,
145
+ "destinationEstimatedArrivalDateTime": "2017-10-12T07:38:00",
146
+ "destinationPostedArrivalDateTime": null,
147
+ "destinationScheduledArrivalDateTime": "2017-10-12T07:53:00",
148
+ "destinationStationCode": "BBY",
149
+ "destinationStatusComment": null,
150
+ "displayRoomNumbers": false,
151
+ "duration": null,
152
+ "durationMinutes": 0,
153
+ "isAlternative": null,
154
+ "isBus": null,
155
+ "isRestrictive": null,
156
+ "originEstimatedDepartureDateTime": "2017-10-12T06:56:00",
157
+ "originPostedDepartureDateTime": null,
158
+ "originScheduledDepartureDateTime": "2017-10-12T06:56:00",
159
+ "originStationCode": "PVD",
160
+ "originStatusComment": null,
161
+ "rooms": null,
162
+ "routeName": "Northeast Regional",
163
+ "seats": null,
164
+ "segmentServiceStatus": "false",
165
+ "serviceMessage": "15 MI EARLY",
166
+ "serviceStatus": null,
167
+ "trainNumber": "66",
168
+ "validate": true,
169
+ "versionNumber": null
170
+ }
171
+ ]
172
+ },
173
+ {
174
+ "alternative": null,
175
+ "bedRoomClassPrice": null,
176
+ "duration": null,
177
+ "durationMinutes": 0,
178
+ "journeyTotalFare": null,
179
+ "lowFareClass": null,
180
+ "modifiable": null,
181
+ "passenger": null,
182
+ "refId": null,
183
+ "rooms": null,
184
+ "seats": null,
185
+ "segments": [
186
+ {
187
+ "additionalInfo": null,
188
+ "amenities": null,
189
+ "ancillary": null,
190
+ "appType": null,
191
+ "arrivalDateTime": null,
192
+ "arrivalStationCode": null,
193
+ "arrivalStationName": null,
194
+ "authenticationToken": null,
195
+ "classCode": null,
196
+ "classCodeQuantity": null,
197
+ "companyName": null,
198
+ "compartments": null,
199
+ "crossBorder": null,
200
+ "departureDateTime": null,
201
+ "departureDateTimeInUTC": null,
202
+ "departureStationCode": null,
203
+ "departureStationName": null,
204
+ "destinationEstimatedArrivalDateTime": null,
205
+ "destinationPostedArrivalDateTime": null,
206
+ "destinationScheduledArrivalDateTime": "2017-10-12T09:56:00",
207
+ "destinationStationCode": "BBY",
208
+ "destinationStatusComment": null,
209
+ "displayRoomNumbers": false,
210
+ "duration": null,
211
+ "durationMinutes": 0,
212
+ "isAlternative": null,
213
+ "isBus": null,
214
+ "isRestrictive": null,
215
+ "originEstimatedDepartureDateTime": null,
216
+ "originPostedDepartureDateTime": null,
217
+ "originScheduledDepartureDateTime": "2017-10-12T09:20:00",
218
+ "originStationCode": "PVD",
219
+ "originStatusComment": null,
220
+ "rooms": null,
221
+ "routeName": "Acela Express",
222
+ "seats": null,
223
+ "segmentServiceStatus": "false",
224
+ "serviceMessage": null,
225
+ "serviceStatus": null,
226
+ "trainNumber": "2190",
227
+ "validate": true,
228
+ "versionNumber": null
229
+ }
230
+ ]
231
+ },
232
+ {
233
+ "alternative": null,
234
+ "bedRoomClassPrice": null,
235
+ "duration": null,
236
+ "durationMinutes": 0,
237
+ "journeyTotalFare": null,
238
+ "lowFareClass": null,
239
+ "modifiable": null,
240
+ "passenger": null,
241
+ "refId": null,
242
+ "rooms": null,
243
+ "seats": null,
244
+ "segments": [
245
+ {
246
+ "additionalInfo": null,
247
+ "amenities": null,
248
+ "ancillary": null,
249
+ "appType": null,
250
+ "arrivalDateTime": null,
251
+ "arrivalStationCode": null,
252
+ "arrivalStationName": null,
253
+ "authenticationToken": null,
254
+ "classCode": null,
255
+ "classCodeQuantity": null,
256
+ "companyName": null,
257
+ "compartments": null,
258
+ "crossBorder": null,
259
+ "departureDateTime": null,
260
+ "departureDateTimeInUTC": null,
261
+ "departureStationCode": null,
262
+ "departureStationName": null,
263
+ "destinationEstimatedArrivalDateTime": null,
264
+ "destinationPostedArrivalDateTime": null,
265
+ "destinationScheduledArrivalDateTime": "2017-10-12T10:59:00",
266
+ "destinationStationCode": "BBY",
267
+ "destinationStatusComment": null,
268
+ "displayRoomNumbers": false,
269
+ "duration": null,
270
+ "durationMinutes": 0,
271
+ "isAlternative": null,
272
+ "isBus": null,
273
+ "isRestrictive": null,
274
+ "originEstimatedDepartureDateTime": null,
275
+ "originPostedDepartureDateTime": null,
276
+ "originScheduledDepartureDateTime": "2017-10-12T10:17:00",
277
+ "originStationCode": "PVD",
278
+ "originStatusComment": null,
279
+ "rooms": null,
280
+ "routeName": "Northeast Regional",
281
+ "seats": null,
282
+ "segmentServiceStatus": "false",
283
+ "serviceMessage": null,
284
+ "serviceStatus": null,
285
+ "trainNumber": "190",
286
+ "validate": true,
287
+ "versionNumber": null
288
+ }
289
+ ]
290
+ },
291
+ {
292
+ "alternative": null,
293
+ "bedRoomClassPrice": null,
294
+ "duration": null,
295
+ "durationMinutes": 0,
296
+ "journeyTotalFare": null,
297
+ "lowFareClass": null,
298
+ "modifiable": null,
299
+ "passenger": null,
300
+ "refId": null,
301
+ "rooms": null,
302
+ "seats": null,
303
+ "segments": [
304
+ {
305
+ "additionalInfo": null,
306
+ "amenities": null,
307
+ "ancillary": null,
308
+ "appType": null,
309
+ "arrivalDateTime": null,
310
+ "arrivalStationCode": null,
311
+ "arrivalStationName": null,
312
+ "authenticationToken": null,
313
+ "classCode": null,
314
+ "classCodeQuantity": null,
315
+ "companyName": null,
316
+ "compartments": null,
317
+ "crossBorder": null,
318
+ "departureDateTime": null,
319
+ "departureDateTimeInUTC": null,
320
+ "departureStationCode": null,
321
+ "departureStationName": null,
322
+ "destinationEstimatedArrivalDateTime": null,
323
+ "destinationPostedArrivalDateTime": null,
324
+ "destinationScheduledArrivalDateTime": "2017-10-12T11:34:00",
325
+ "destinationStationCode": "BBY",
326
+ "destinationStatusComment": null,
327
+ "displayRoomNumbers": false,
328
+ "duration": null,
329
+ "durationMinutes": 0,
330
+ "isAlternative": null,
331
+ "isBus": null,
332
+ "isRestrictive": null,
333
+ "originEstimatedDepartureDateTime": null,
334
+ "originPostedDepartureDateTime": null,
335
+ "originScheduledDepartureDateTime": "2017-10-12T10:53:00",
336
+ "originStationCode": "PVD",
337
+ "originStatusComment": null,
338
+ "rooms": null,
339
+ "routeName": "Acela Express",
340
+ "seats": null,
341
+ "segmentServiceStatus": "false",
342
+ "serviceMessage": null,
343
+ "serviceStatus": null,
344
+ "trainNumber": "2150",
345
+ "validate": true,
346
+ "versionNumber": null
347
+ }
348
+ ]
349
+ },
350
+ {
351
+ "alternative": null,
352
+ "bedRoomClassPrice": null,
353
+ "duration": null,
354
+ "durationMinutes": 0,
355
+ "journeyTotalFare": null,
356
+ "lowFareClass": null,
357
+ "modifiable": null,
358
+ "passenger": null,
359
+ "refId": null,
360
+ "rooms": null,
361
+ "seats": null,
362
+ "segments": [
363
+ {
364
+ "additionalInfo": null,
365
+ "amenities": null,
366
+ "ancillary": null,
367
+ "appType": null,
368
+ "arrivalDateTime": null,
369
+ "arrivalStationCode": null,
370
+ "arrivalStationName": null,
371
+ "authenticationToken": null,
372
+ "classCode": null,
373
+ "classCodeQuantity": null,
374
+ "companyName": null,
375
+ "compartments": null,
376
+ "crossBorder": null,
377
+ "departureDateTime": null,
378
+ "departureDateTimeInUTC": null,
379
+ "departureStationCode": null,
380
+ "departureStationName": null,
381
+ "destinationEstimatedArrivalDateTime": null,
382
+ "destinationPostedArrivalDateTime": null,
383
+ "destinationScheduledArrivalDateTime": "2017-10-12T12:39:00",
384
+ "destinationStationCode": "BBY",
385
+ "destinationStatusComment": null,
386
+ "displayRoomNumbers": false,
387
+ "duration": null,
388
+ "durationMinutes": 0,
389
+ "isAlternative": null,
390
+ "isBus": null,
391
+ "isRestrictive": null,
392
+ "originEstimatedDepartureDateTime": null,
393
+ "originPostedDepartureDateTime": null,
394
+ "originScheduledDepartureDateTime": "2017-10-12T11:55:00",
395
+ "originStationCode": "PVD",
396
+ "originStatusComment": null,
397
+ "rooms": null,
398
+ "routeName": "Northeast Regional",
399
+ "seats": null,
400
+ "segmentServiceStatus": "false",
401
+ "serviceMessage": null,
402
+ "serviceStatus": null,
403
+ "trainNumber": "170",
404
+ "validate": true,
405
+ "versionNumber": null
406
+ }
407
+ ]
408
+ },
409
+ {
410
+ "alternative": null,
411
+ "bedRoomClassPrice": null,
412
+ "duration": null,
413
+ "durationMinutes": 0,
414
+ "journeyTotalFare": null,
415
+ "lowFareClass": null,
416
+ "modifiable": null,
417
+ "passenger": null,
418
+ "refId": null,
419
+ "rooms": null,
420
+ "seats": null,
421
+ "segments": [
422
+ {
423
+ "additionalInfo": null,
424
+ "amenities": null,
425
+ "ancillary": null,
426
+ "appType": null,
427
+ "arrivalDateTime": null,
428
+ "arrivalStationCode": null,
429
+ "arrivalStationName": null,
430
+ "authenticationToken": null,
431
+ "classCode": null,
432
+ "classCodeQuantity": null,
433
+ "companyName": null,
434
+ "compartments": null,
435
+ "crossBorder": null,
436
+ "departureDateTime": null,
437
+ "departureDateTimeInUTC": null,
438
+ "departureStationCode": null,
439
+ "departureStationName": null,
440
+ "destinationEstimatedArrivalDateTime": null,
441
+ "destinationPostedArrivalDateTime": null,
442
+ "destinationScheduledArrivalDateTime": "2017-10-12T13:39:00",
443
+ "destinationStationCode": "BBY",
444
+ "destinationStatusComment": null,
445
+ "displayRoomNumbers": false,
446
+ "duration": null,
447
+ "durationMinutes": 0,
448
+ "isAlternative": null,
449
+ "isBus": null,
450
+ "isRestrictive": null,
451
+ "originEstimatedDepartureDateTime": null,
452
+ "originPostedDepartureDateTime": null,
453
+ "originScheduledDepartureDateTime": "2017-10-12T12:56:00",
454
+ "originStationCode": "PVD",
455
+ "originStatusComment": null,
456
+ "rooms": null,
457
+ "routeName": "Acela Express",
458
+ "seats": null,
459
+ "segmentServiceStatus": "false",
460
+ "serviceMessage": null,
461
+ "serviceStatus": null,
462
+ "trainNumber": "2154",
463
+ "validate": true,
464
+ "versionNumber": null
465
+ }
466
+ ]
467
+ },
468
+ {
469
+ "alternative": null,
470
+ "bedRoomClassPrice": null,
471
+ "duration": null,
472
+ "durationMinutes": 0,
473
+ "journeyTotalFare": null,
474
+ "lowFareClass": null,
475
+ "modifiable": null,
476
+ "passenger": null,
477
+ "refId": null,
478
+ "rooms": null,
479
+ "seats": null,
480
+ "segments": [
481
+ {
482
+ "additionalInfo": null,
483
+ "amenities": null,
484
+ "ancillary": null,
485
+ "appType": null,
486
+ "arrivalDateTime": null,
487
+ "arrivalStationCode": null,
488
+ "arrivalStationName": null,
489
+ "authenticationToken": null,
490
+ "classCode": null,
491
+ "classCodeQuantity": null,
492
+ "companyName": null,
493
+ "compartments": null,
494
+ "crossBorder": null,
495
+ "departureDateTime": null,
496
+ "departureDateTimeInUTC": null,
497
+ "departureStationCode": null,
498
+ "departureStationName": null,
499
+ "destinationEstimatedArrivalDateTime": null,
500
+ "destinationPostedArrivalDateTime": null,
501
+ "destinationScheduledArrivalDateTime": "2017-10-12T15:09:00",
502
+ "destinationStationCode": "BBY",
503
+ "destinationStatusComment": null,
504
+ "displayRoomNumbers": false,
505
+ "duration": null,
506
+ "durationMinutes": 0,
507
+ "isAlternative": null,
508
+ "isBus": null,
509
+ "isRestrictive": null,
510
+ "originEstimatedDepartureDateTime": null,
511
+ "originPostedDepartureDateTime": null,
512
+ "originScheduledDepartureDateTime": "2017-10-12T14:23:00",
513
+ "originStationCode": "PVD",
514
+ "originStatusComment": null,
515
+ "rooms": null,
516
+ "routeName": "Northeast Regional",
517
+ "seats": null,
518
+ "segmentServiceStatus": "false",
519
+ "serviceMessage": null,
520
+ "serviceStatus": null,
521
+ "trainNumber": "172",
522
+ "validate": true,
523
+ "versionNumber": null
524
+ }
525
+ ]
526
+ },
527
+ {
528
+ "alternative": null,
529
+ "bedRoomClassPrice": null,
530
+ "duration": null,
531
+ "durationMinutes": 0,
532
+ "journeyTotalFare": null,
533
+ "lowFareClass": null,
534
+ "modifiable": null,
535
+ "passenger": null,
536
+ "refId": null,
537
+ "rooms": null,
538
+ "seats": null,
539
+ "segments": [
540
+ {
541
+ "additionalInfo": null,
542
+ "amenities": null,
543
+ "ancillary": null,
544
+ "appType": null,
545
+ "arrivalDateTime": null,
546
+ "arrivalStationCode": null,
547
+ "arrivalStationName": null,
548
+ "authenticationToken": null,
549
+ "classCode": null,
550
+ "classCodeQuantity": null,
551
+ "companyName": null,
552
+ "compartments": null,
553
+ "crossBorder": null,
554
+ "departureDateTime": null,
555
+ "departureDateTimeInUTC": null,
556
+ "departureStationCode": null,
557
+ "departureStationName": null,
558
+ "destinationEstimatedArrivalDateTime": null,
559
+ "destinationPostedArrivalDateTime": null,
560
+ "destinationScheduledArrivalDateTime": "2017-10-12T15:42:00",
561
+ "destinationStationCode": "BBY",
562
+ "destinationStatusComment": null,
563
+ "displayRoomNumbers": false,
564
+ "duration": null,
565
+ "durationMinutes": 0,
566
+ "isAlternative": null,
567
+ "isBus": null,
568
+ "isRestrictive": null,
569
+ "originEstimatedDepartureDateTime": null,
570
+ "originPostedDepartureDateTime": null,
571
+ "originScheduledDepartureDateTime": "2017-10-12T14:59:00",
572
+ "originStationCode": "PVD",
573
+ "originStatusComment": null,
574
+ "rooms": null,
575
+ "routeName": "Acela Express",
576
+ "seats": null,
577
+ "segmentServiceStatus": "false",
578
+ "serviceMessage": null,
579
+ "serviceStatus": null,
580
+ "trainNumber": "2158",
581
+ "validate": true,
582
+ "versionNumber": null
583
+ }
584
+ ]
585
+ },
586
+ {
587
+ "alternative": null,
588
+ "bedRoomClassPrice": null,
589
+ "duration": null,
590
+ "durationMinutes": 0,
591
+ "journeyTotalFare": null,
592
+ "lowFareClass": null,
593
+ "modifiable": null,
594
+ "passenger": null,
595
+ "refId": null,
596
+ "rooms": null,
597
+ "seats": null,
598
+ "segments": [
599
+ {
600
+ "additionalInfo": null,
601
+ "amenities": null,
602
+ "ancillary": null,
603
+ "appType": null,
604
+ "arrivalDateTime": null,
605
+ "arrivalStationCode": null,
606
+ "arrivalStationName": null,
607
+ "authenticationToken": null,
608
+ "classCode": null,
609
+ "classCodeQuantity": null,
610
+ "companyName": null,
611
+ "compartments": null,
612
+ "crossBorder": null,
613
+ "departureDateTime": null,
614
+ "departureDateTimeInUTC": null,
615
+ "departureStationCode": null,
616
+ "departureStationName": null,
617
+ "destinationEstimatedArrivalDateTime": null,
618
+ "destinationPostedArrivalDateTime": null,
619
+ "destinationScheduledArrivalDateTime": "2017-10-12T16:28:00",
620
+ "destinationStationCode": "BBY",
621
+ "destinationStatusComment": null,
622
+ "displayRoomNumbers": false,
623
+ "duration": null,
624
+ "durationMinutes": 0,
625
+ "isAlternative": null,
626
+ "isBus": null,
627
+ "isRestrictive": null,
628
+ "originEstimatedDepartureDateTime": null,
629
+ "originPostedDepartureDateTime": null,
630
+ "originScheduledDepartureDateTime": "2017-10-12T15:47:00",
631
+ "originStationCode": "PVD",
632
+ "originStatusComment": null,
633
+ "rooms": null,
634
+ "routeName": "Northeast Regional",
635
+ "seats": null,
636
+ "segmentServiceStatus": "false",
637
+ "serviceMessage": null,
638
+ "serviceStatus": null,
639
+ "trainNumber": "86",
640
+ "validate": true,
641
+ "versionNumber": null
642
+ }
643
+ ]
644
+ },
645
+ {
646
+ "alternative": null,
647
+ "bedRoomClassPrice": null,
648
+ "duration": null,
649
+ "durationMinutes": 0,
650
+ "journeyTotalFare": null,
651
+ "lowFareClass": null,
652
+ "modifiable": null,
653
+ "passenger": null,
654
+ "refId": null,
655
+ "rooms": null,
656
+ "seats": null,
657
+ "segments": [
658
+ {
659
+ "additionalInfo": null,
660
+ "amenities": null,
661
+ "ancillary": null,
662
+ "appType": null,
663
+ "arrivalDateTime": null,
664
+ "arrivalStationCode": null,
665
+ "arrivalStationName": null,
666
+ "authenticationToken": null,
667
+ "classCode": null,
668
+ "classCodeQuantity": null,
669
+ "companyName": null,
670
+ "compartments": null,
671
+ "crossBorder": null,
672
+ "departureDateTime": null,
673
+ "departureDateTimeInUTC": null,
674
+ "departureStationCode": null,
675
+ "departureStationName": null,
676
+ "destinationEstimatedArrivalDateTime": null,
677
+ "destinationPostedArrivalDateTime": null,
678
+ "destinationScheduledArrivalDateTime": "2017-10-12T16:45:00",
679
+ "destinationStationCode": "BBY",
680
+ "destinationStatusComment": null,
681
+ "displayRoomNumbers": false,
682
+ "duration": null,
683
+ "durationMinutes": 0,
684
+ "isAlternative": null,
685
+ "isBus": null,
686
+ "isRestrictive": null,
687
+ "originEstimatedDepartureDateTime": null,
688
+ "originPostedDepartureDateTime": null,
689
+ "originScheduledDepartureDateTime": "2017-10-12T16:02:00",
690
+ "originStationCode": "PVD",
691
+ "originStatusComment": null,
692
+ "rooms": null,
693
+ "routeName": "Acela Express",
694
+ "seats": null,
695
+ "segmentServiceStatus": "false",
696
+ "serviceMessage": null,
697
+ "serviceStatus": null,
698
+ "trainNumber": "2160",
699
+ "validate": true,
700
+ "versionNumber": null
701
+ }
702
+ ]
703
+ },
704
+ {
705
+ "alternative": null,
706
+ "bedRoomClassPrice": null,
707
+ "duration": null,
708
+ "durationMinutes": 0,
709
+ "journeyTotalFare": null,
710
+ "lowFareClass": null,
711
+ "modifiable": null,
712
+ "passenger": null,
713
+ "refId": null,
714
+ "rooms": null,
715
+ "seats": null,
716
+ "segments": [
717
+ {
718
+ "additionalInfo": null,
719
+ "amenities": null,
720
+ "ancillary": null,
721
+ "appType": null,
722
+ "arrivalDateTime": null,
723
+ "arrivalStationCode": null,
724
+ "arrivalStationName": null,
725
+ "authenticationToken": null,
726
+ "classCode": null,
727
+ "classCodeQuantity": null,
728
+ "companyName": null,
729
+ "compartments": null,
730
+ "crossBorder": null,
731
+ "departureDateTime": null,
732
+ "departureDateTimeInUTC": null,
733
+ "departureStationCode": null,
734
+ "departureStationName": null,
735
+ "destinationEstimatedArrivalDateTime": null,
736
+ "destinationPostedArrivalDateTime": null,
737
+ "destinationScheduledArrivalDateTime": "2017-10-12T18:23:00",
738
+ "destinationStationCode": "BBY",
739
+ "destinationStatusComment": null,
740
+ "displayRoomNumbers": false,
741
+ "duration": null,
742
+ "durationMinutes": 0,
743
+ "isAlternative": null,
744
+ "isBus": null,
745
+ "isRestrictive": null,
746
+ "originEstimatedDepartureDateTime": null,
747
+ "originPostedDepartureDateTime": null,
748
+ "originScheduledDepartureDateTime": "2017-10-12T17:30:00",
749
+ "originStationCode": "PVD",
750
+ "originStatusComment": null,
751
+ "rooms": null,
752
+ "routeName": "Northeast Regional",
753
+ "seats": null,
754
+ "segmentServiceStatus": "false",
755
+ "serviceMessage": null,
756
+ "serviceStatus": null,
757
+ "trainNumber": "174",
758
+ "validate": true,
759
+ "versionNumber": null
760
+ }
761
+ ]
762
+ },
763
+ {
764
+ "alternative": null,
765
+ "bedRoomClassPrice": null,
766
+ "duration": null,
767
+ "durationMinutes": 0,
768
+ "journeyTotalFare": null,
769
+ "lowFareClass": null,
770
+ "modifiable": null,
771
+ "passenger": null,
772
+ "refId": null,
773
+ "rooms": null,
774
+ "seats": null,
775
+ "segments": [
776
+ {
777
+ "additionalInfo": null,
778
+ "amenities": null,
779
+ "ancillary": null,
780
+ "appType": null,
781
+ "arrivalDateTime": null,
782
+ "arrivalStationCode": null,
783
+ "arrivalStationName": null,
784
+ "authenticationToken": null,
785
+ "classCode": null,
786
+ "classCodeQuantity": null,
787
+ "companyName": null,
788
+ "compartments": null,
789
+ "crossBorder": null,
790
+ "departureDateTime": null,
791
+ "departureDateTimeInUTC": null,
792
+ "departureStationCode": null,
793
+ "departureStationName": null,
794
+ "destinationEstimatedArrivalDateTime": null,
795
+ "destinationPostedArrivalDateTime": null,
796
+ "destinationScheduledArrivalDateTime": "2017-10-12T18:39:00",
797
+ "destinationStationCode": "BBY",
798
+ "destinationStatusComment": null,
799
+ "displayRoomNumbers": false,
800
+ "duration": null,
801
+ "durationMinutes": 0,
802
+ "isAlternative": null,
803
+ "isBus": null,
804
+ "isRestrictive": null,
805
+ "originEstimatedDepartureDateTime": null,
806
+ "originPostedDepartureDateTime": null,
807
+ "originScheduledDepartureDateTime": "2017-10-12T17:51:00",
808
+ "originStationCode": "PVD",
809
+ "originStatusComment": null,
810
+ "rooms": null,
811
+ "routeName": "Acela Express",
812
+ "seats": null,
813
+ "segmentServiceStatus": "false",
814
+ "serviceMessage": null,
815
+ "serviceStatus": null,
816
+ "trainNumber": "2164",
817
+ "validate": true,
818
+ "versionNumber": null
819
+ }
820
+ ]
821
+ },
822
+ {
823
+ "alternative": null,
824
+ "bedRoomClassPrice": null,
825
+ "duration": null,
826
+ "durationMinutes": 0,
827
+ "journeyTotalFare": null,
828
+ "lowFareClass": null,
829
+ "modifiable": null,
830
+ "passenger": null,
831
+ "refId": null,
832
+ "rooms": null,
833
+ "seats": null,
834
+ "segments": [
835
+ {
836
+ "additionalInfo": null,
837
+ "amenities": null,
838
+ "ancillary": null,
839
+ "appType": null,
840
+ "arrivalDateTime": null,
841
+ "arrivalStationCode": null,
842
+ "arrivalStationName": null,
843
+ "authenticationToken": null,
844
+ "classCode": null,
845
+ "classCodeQuantity": null,
846
+ "companyName": null,
847
+ "compartments": null,
848
+ "crossBorder": null,
849
+ "departureDateTime": null,
850
+ "departureDateTimeInUTC": null,
851
+ "departureStationCode": null,
852
+ "departureStationName": null,
853
+ "destinationEstimatedArrivalDateTime": null,
854
+ "destinationPostedArrivalDateTime": null,
855
+ "destinationScheduledArrivalDateTime": "2017-10-12T19:35:00",
856
+ "destinationStationCode": "BBY",
857
+ "destinationStatusComment": null,
858
+ "displayRoomNumbers": false,
859
+ "duration": null,
860
+ "durationMinutes": 0,
861
+ "isAlternative": null,
862
+ "isBus": null,
863
+ "isRestrictive": null,
864
+ "originEstimatedDepartureDateTime": null,
865
+ "originPostedDepartureDateTime": null,
866
+ "originScheduledDepartureDateTime": "2017-10-12T18:54:00",
867
+ "originStationCode": "PVD",
868
+ "originStatusComment": null,
869
+ "rooms": null,
870
+ "routeName": "Acela Express",
871
+ "seats": null,
872
+ "segmentServiceStatus": "false",
873
+ "serviceMessage": "DELAY W. OF NWK - TRESPASSER HOLD AHEAD",
874
+ "serviceStatus": null,
875
+ "trainNumber": "2166",
876
+ "validate": true,
877
+ "versionNumber": null
878
+ }
879
+ ]
880
+ },
881
+ {
882
+ "alternative": null,
883
+ "bedRoomClassPrice": null,
884
+ "duration": null,
885
+ "durationMinutes": 0,
886
+ "journeyTotalFare": null,
887
+ "lowFareClass": null,
888
+ "modifiable": null,
889
+ "passenger": null,
890
+ "refId": null,
891
+ "rooms": null,
892
+ "seats": null,
893
+ "segments": [
894
+ {
895
+ "additionalInfo": null,
896
+ "amenities": null,
897
+ "ancillary": null,
898
+ "appType": null,
899
+ "arrivalDateTime": null,
900
+ "arrivalStationCode": null,
901
+ "arrivalStationName": null,
902
+ "authenticationToken": null,
903
+ "classCode": null,
904
+ "classCodeQuantity": null,
905
+ "companyName": null,
906
+ "compartments": null,
907
+ "crossBorder": null,
908
+ "departureDateTime": null,
909
+ "departureDateTimeInUTC": null,
910
+ "departureStationCode": null,
911
+ "departureStationName": null,
912
+ "destinationEstimatedArrivalDateTime": null,
913
+ "destinationPostedArrivalDateTime": null,
914
+ "destinationScheduledArrivalDateTime": "2017-10-12T20:06:00",
915
+ "destinationStationCode": "BBY",
916
+ "destinationStatusComment": null,
917
+ "displayRoomNumbers": false,
918
+ "duration": null,
919
+ "durationMinutes": 0,
920
+ "isAlternative": null,
921
+ "isBus": null,
922
+ "isRestrictive": null,
923
+ "originEstimatedDepartureDateTime": null,
924
+ "originPostedDepartureDateTime": null,
925
+ "originScheduledDepartureDateTime": "2017-10-12T19:19:00",
926
+ "originStationCode": "PVD",
927
+ "originStatusComment": null,
928
+ "rooms": null,
929
+ "routeName": "Northeast Regional",
930
+ "seats": null,
931
+ "segmentServiceStatus": "false",
932
+ "serviceMessage": null,
933
+ "serviceStatus": null,
934
+ "trainNumber": "176",
935
+ "validate": true,
936
+ "versionNumber": null
937
+ }
938
+ ]
939
+ },
940
+ {
941
+ "alternative": null,
942
+ "bedRoomClassPrice": null,
943
+ "duration": null,
944
+ "durationMinutes": 0,
945
+ "journeyTotalFare": null,
946
+ "lowFareClass": null,
947
+ "modifiable": null,
948
+ "passenger": null,
949
+ "refId": null,
950
+ "rooms": null,
951
+ "seats": null,
952
+ "segments": [
953
+ {
954
+ "additionalInfo": null,
955
+ "amenities": null,
956
+ "ancillary": null,
957
+ "appType": null,
958
+ "arrivalDateTime": null,
959
+ "arrivalStationCode": null,
960
+ "arrivalStationName": null,
961
+ "authenticationToken": null,
962
+ "classCode": null,
963
+ "classCodeQuantity": null,
964
+ "companyName": null,
965
+ "compartments": null,
966
+ "crossBorder": null,
967
+ "departureDateTime": null,
968
+ "departureDateTimeInUTC": null,
969
+ "departureStationCode": null,
970
+ "departureStationName": null,
971
+ "destinationEstimatedArrivalDateTime": null,
972
+ "destinationPostedArrivalDateTime": null,
973
+ "destinationScheduledArrivalDateTime": "2017-10-12T20:40:00",
974
+ "destinationStationCode": "BBY",
975
+ "destinationStatusComment": null,
976
+ "displayRoomNumbers": false,
977
+ "duration": null,
978
+ "durationMinutes": 0,
979
+ "isAlternative": null,
980
+ "isBus": null,
981
+ "isRestrictive": null,
982
+ "originEstimatedDepartureDateTime": null,
983
+ "originPostedDepartureDateTime": null,
984
+ "originScheduledDepartureDateTime": "2017-10-12T19:56:00",
985
+ "originStationCode": "PVD",
986
+ "originStatusComment": null,
987
+ "rooms": null,
988
+ "routeName": "Acela Express",
989
+ "seats": null,
990
+ "segmentServiceStatus": "false",
991
+ "serviceMessage": null,
992
+ "serviceStatus": null,
993
+ "trainNumber": "2168",
994
+ "validate": true,
995
+ "versionNumber": null
996
+ }
997
+ ]
998
+ },
999
+ {
1000
+ "alternative": null,
1001
+ "bedRoomClassPrice": null,
1002
+ "duration": null,
1003
+ "durationMinutes": 0,
1004
+ "journeyTotalFare": null,
1005
+ "lowFareClass": null,
1006
+ "modifiable": null,
1007
+ "passenger": null,
1008
+ "refId": null,
1009
+ "rooms": null,
1010
+ "seats": null,
1011
+ "segments": [
1012
+ {
1013
+ "additionalInfo": null,
1014
+ "amenities": null,
1015
+ "ancillary": null,
1016
+ "appType": null,
1017
+ "arrivalDateTime": null,
1018
+ "arrivalStationCode": null,
1019
+ "arrivalStationName": null,
1020
+ "authenticationToken": null,
1021
+ "classCode": null,
1022
+ "classCodeQuantity": null,
1023
+ "companyName": null,
1024
+ "compartments": null,
1025
+ "crossBorder": null,
1026
+ "departureDateTime": null,
1027
+ "departureDateTimeInUTC": null,
1028
+ "departureStationCode": null,
1029
+ "departureStationName": null,
1030
+ "destinationEstimatedArrivalDateTime": null,
1031
+ "destinationPostedArrivalDateTime": null,
1032
+ "destinationScheduledArrivalDateTime": "2017-10-12T21:38:00",
1033
+ "destinationStationCode": "BBY",
1034
+ "destinationStatusComment": null,
1035
+ "displayRoomNumbers": false,
1036
+ "duration": null,
1037
+ "durationMinutes": 0,
1038
+ "isAlternative": null,
1039
+ "isBus": null,
1040
+ "isRestrictive": null,
1041
+ "originEstimatedDepartureDateTime": null,
1042
+ "originPostedDepartureDateTime": null,
1043
+ "originScheduledDepartureDateTime": "2017-10-12T20:54:00",
1044
+ "originStationCode": "PVD",
1045
+ "originStatusComment": null,
1046
+ "rooms": null,
1047
+ "routeName": "Acela Express",
1048
+ "seats": null,
1049
+ "segmentServiceStatus": "false",
1050
+ "serviceMessage": null,
1051
+ "serviceStatus": null,
1052
+ "trainNumber": "2170",
1053
+ "validate": true,
1054
+ "versionNumber": null
1055
+ }
1056
+ ]
1057
+ },
1058
+ {
1059
+ "alternative": null,
1060
+ "bedRoomClassPrice": null,
1061
+ "duration": null,
1062
+ "durationMinutes": 0,
1063
+ "journeyTotalFare": null,
1064
+ "lowFareClass": null,
1065
+ "modifiable": null,
1066
+ "passenger": null,
1067
+ "refId": null,
1068
+ "rooms": null,
1069
+ "seats": null,
1070
+ "segments": [
1071
+ {
1072
+ "additionalInfo": null,
1073
+ "amenities": null,
1074
+ "ancillary": null,
1075
+ "appType": null,
1076
+ "arrivalDateTime": null,
1077
+ "arrivalStationCode": null,
1078
+ "arrivalStationName": null,
1079
+ "authenticationToken": null,
1080
+ "classCode": null,
1081
+ "classCodeQuantity": null,
1082
+ "companyName": null,
1083
+ "compartments": null,
1084
+ "crossBorder": null,
1085
+ "departureDateTime": null,
1086
+ "departureDateTimeInUTC": null,
1087
+ "departureStationCode": null,
1088
+ "departureStationName": null,
1089
+ "destinationEstimatedArrivalDateTime": null,
1090
+ "destinationPostedArrivalDateTime": null,
1091
+ "destinationScheduledArrivalDateTime": "2017-10-12T22:02:00",
1092
+ "destinationStationCode": "BBY",
1093
+ "destinationStatusComment": null,
1094
+ "displayRoomNumbers": false,
1095
+ "duration": null,
1096
+ "durationMinutes": 0,
1097
+ "isAlternative": null,
1098
+ "isBus": null,
1099
+ "isRestrictive": null,
1100
+ "originEstimatedDepartureDateTime": null,
1101
+ "originPostedDepartureDateTime": null,
1102
+ "originScheduledDepartureDateTime": "2017-10-12T21:16:00",
1103
+ "originStationCode": "PVD",
1104
+ "originStatusComment": null,
1105
+ "rooms": null,
1106
+ "routeName": "Northeast Regional",
1107
+ "seats": null,
1108
+ "segmentServiceStatus": "false",
1109
+ "serviceMessage": null,
1110
+ "serviceStatus": null,
1111
+ "trainNumber": "94",
1112
+ "validate": true,
1113
+ "versionNumber": null
1114
+ }
1115
+ ]
1116
+ },
1117
+ {
1118
+ "alternative": null,
1119
+ "bedRoomClassPrice": null,
1120
+ "duration": null,
1121
+ "durationMinutes": 0,
1122
+ "journeyTotalFare": null,
1123
+ "lowFareClass": null,
1124
+ "modifiable": null,
1125
+ "passenger": null,
1126
+ "refId": null,
1127
+ "rooms": null,
1128
+ "seats": null,
1129
+ "segments": [
1130
+ {
1131
+ "additionalInfo": null,
1132
+ "amenities": null,
1133
+ "ancillary": null,
1134
+ "appType": null,
1135
+ "arrivalDateTime": null,
1136
+ "arrivalStationCode": null,
1137
+ "arrivalStationName": null,
1138
+ "authenticationToken": null,
1139
+ "classCode": null,
1140
+ "classCodeQuantity": null,
1141
+ "companyName": null,
1142
+ "compartments": null,
1143
+ "crossBorder": null,
1144
+ "departureDateTime": null,
1145
+ "departureDateTimeInUTC": null,
1146
+ "departureStationCode": null,
1147
+ "departureStationName": null,
1148
+ "destinationEstimatedArrivalDateTime": null,
1149
+ "destinationPostedArrivalDateTime": null,
1150
+ "destinationScheduledArrivalDateTime": "2017-10-12T22:44:00",
1151
+ "destinationStationCode": "BBY",
1152
+ "destinationStatusComment": null,
1153
+ "displayRoomNumbers": false,
1154
+ "duration": null,
1155
+ "durationMinutes": 0,
1156
+ "isAlternative": null,
1157
+ "isBus": null,
1158
+ "isRestrictive": null,
1159
+ "originEstimatedDepartureDateTime": null,
1160
+ "originPostedDepartureDateTime": null,
1161
+ "originScheduledDepartureDateTime": "2017-10-12T22:03:00",
1162
+ "originStationCode": "PVD",
1163
+ "originStatusComment": null,
1164
+ "rooms": null,
1165
+ "routeName": "Acela Express",
1166
+ "seats": null,
1167
+ "segmentServiceStatus": "false",
1168
+ "serviceMessage": null,
1169
+ "serviceStatus": null,
1170
+ "trainNumber": "2172",
1171
+ "validate": true,
1172
+ "versionNumber": null
1173
+ }
1174
+ ]
1175
+ }
1176
+ ],
1177
+ "responseCode": "SUCCESS"
1178
+ }
1269
1179
  http_version:
1270
- recorded_at: Mon, 04 Jan 2016 02:44:11 GMT
1180
+ recorded_at: Thu, 12 Oct 2017 02:06:56 GMT
1271
1181
  recorded_with: VCR 2.9.3