amtrak 0.0.1

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