|
|
(9 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | <html> | + | <div class="pulldownbox commonshadow" style="position:relative !important; max-width:20em;"> |
− | <head>
| + | {{#Widget:BARTplanner}} |
− | <script language="javascript">
| + | </div> |
− | <!--
| |
− | requiredFields = new Array();
| |
− | | |
− | // The requiredFields array is passed by reference by default
| |
− | | |
− | function checkEntireForm(formID) {
| |
− | | |
− | // define the form object
| |
− | var theForm = document.forms[ formID ];
| |
− | | |
− | // check all the required text fields
| |
− | for( var i in requiredFields ) {
| |
− | var b = checkRequiredField( theForm, requiredFields[i].field, requiredFields[i].label );
| |
− | if ( ! b ) return false;
| |
− | }
| |
− | | |
− | if (theForm["orig"].options[theForm["orig"].selectedIndex].value==theForm["dest"].options[theForm["dest"].selectedIndex].value) {
| |
− | alert("Please make sure the origin and destination stations are not the same.");
| |
− | theForm["orig"].focus();
| |
− | return false;
| |
− | }
| |
− | | |
− | // check that the depart date is valid
| |
− | var date = theForm["date"].value;
| |
− | var d1 = date.indexOf("/");
| |
− | var d2 = date.lastIndexOf("/");
| |
− | if ( d1 == -1 || d2 == -1 || d1 == d2 ) {
| |
− | alert("Invalid date format. Dates must be in mm/dd/yyyy format.");
| |
− | theForm["date"].focus();
| |
− | return false;
| |
− | }
| |
− | mm = date.substr(0,d1);
| |
− | dd = date.substr(d1+1, d2 - d1 - 1);
| |
− | yy = date.substr(d2+1);
| |
− | if ( isNaN(mm) || isNaN(dd) || isNaN(yy) ) {
| |
− | alert("Invalid date format. Dates must be in mm/dd/yyyy format.");
| |
− | theForm["date"].focus();
| |
− | return false;
| |
− | }
| |
− | if (( 1 > mm || mm > 12 ) || ( 1 > dd || dd > 31 ) || (2000 > yy || yy > 2100 )) {
| |
− | alert("Invalid date format. Dates must be in mm/dd/yyyy format.");
| |
− | theForm["date"].focus();
| |
− | return false;
| |
− | }
| |
− | | |
− | // allow the browser to submit the form
| |
− | return true;
| |
− | | |
− | }
| |
− | | |
− | //-->
| |
− | </script>
| |
− | <title>BART QuickPlanner shell</title>
| |
− | <meta http-equiv="Content-Type"
| |
− | content="application/xhtml+xml; charset=UTF-8">
| |
− | <meta http-equiv="Cache-Control" content="no-cache">
| |
− | <style type="text/css">
| |
− | body { font-family: sans-serif; }
| |
− | </style>
| |
− | </head>
| |
− | <body>
| |
− | <form title="QuickPlanner"
| |
− | action="http://www.bart.gov/schedules/quickplanner.aspx" method="get"
| |
− | name="schedule_form"
| |
− | onsubmit="return checkEntireForm('schedule_form');" target="_blank">
| |
− | <table style="width: 400px;" cellpadding="4">
| |
− | <tbody>
| |
− | <tr>
| |
− | <td style="vertical-align: top;"> From:<br>
| |
− | <select name="orig">
| |
− | <option value="0">Departing station...</option>
| |
− | <option value="12TH">12th St. Oakland City Ctr</option>
| |
− | <option value="16TH">16th St. Mission (SF)</option>
| |
− | <option value="19TH">19th St. Oakland</option>
| |
− | <option value="24TH">24th St. Mission (SF)</option>
| |
− | <option value="ASHB">Ashby</option>
| |
− | <option value="BALB">Balboa Park</option>
| |
− | <option value="BAYF">Bay Fair</option>
| |
− | <option value="CAST">Castro Valley</option>
| |
− | <option value="CIVC">Civic Center (SF)</option>
| |
− | <option value="COLS">Coliseum/Oakland Airport</option>
| |
− | <option value="COLM">Colma</option>
| |
− | <option value="CONC">Concord</option>
| |
− | <option value="DALY">Daly City</option>
| |
− | <option value="DBRK">Downtown Berkeley</option>
| |
− | <option value="DUBL">Dublin/Pleasanton</option>
| |
− | <option value="DELN">El Cerrito del Norte</option>
| |
− | <option value="PLZA">El Cerrito Plaza</option>
| |
− | <option value="EMBR">Embarcadero</option>
| |
− | <option value="FRMT">Fremont</option>
| |
− | <option value="FTVL">Fruitvale</option>
| |
− | <option value="GLEN">Glen Park</option>
| |
− | <option value="HAYW">Hayward</option>
| |
− | <option value="LAFY">Lafayette</option>
| |
− | <option value="LAKE">Lake Merritt</option>
| |
− | <option value="MCAR">MacArthur</option>
| |
− | <option value="MLBR">Millbrae</option>
| |
− | <option value="MONT">Montgomery</option>
| |
− | <option value="NBRK">North Berkeley</option>
| |
− | <option value="NCON">North Concord/Martinez</option>
| |
− | <option value="ORIN">Orinda</option>
| |
− | <option value="PITT">Pittsburg/Bay Point</option>
| |
− | <option value="PHIL">Pleasant Hill</option>
| |
− | <option value="POWL">Powell</option>
| |
− | <option value="RICH">Richmond</option>
| |
− | <option value="ROCK">Rockridge</option>
| |
− | <option value="SBRN">San Bruno</option>
| |
− | <option value="SFIA">San Francisco Int'l Airport</option>
| |
− | <option value="SANL">San Leandro</option>
| |
− | <option value="SHAY">South Hayward</option>
| |
− | <option value="SSAN">South San Francisco</option>
| |
− | <option value="UCTY">Union City</option>
| |
− | <option value="WCRK">Walnut Creek</option>
| |
− | <option value="WOAK">West Oakland</option>
| |
− | </select>
| |
− | <br>
| |
− | </td>
| |
− | <td style="vertical-align: top;">To:<br>
| |
− | <select name="dest">
| |
− | <option value="0">Arriving station ...</option>
| |
− | <option value="12TH">12th St. Oakland City Ctr</option>
| |
− | <option value="16TH">16th St. Mission (SF)</option>
| |
− | <option value="19TH">19th St. Oakland</option>
| |
− | <option value="24TH">24th St. Mission (SF)</option>
| |
− | <option value="ASHB">Ashby</option>
| |
− | <option value="BALB">Balboa Park</option>
| |
− | <option value="BAYF">Bay Fair</option>
| |
− | <option value="CAST">Castro Valley</option>
| |
− | <option value="CIVC">Civic Center (SF)</option>
| |
− | <option value="COLS">Coliseum/Oakland Airport</option>
| |
− | <option value="COLM">Colma</option>
| |
− | <option value="CONC">Concord</option>
| |
− | <option value="DALY">Daly City</option>
| |
− | <option value="DBRK">Downtown Berkeley</option>
| |
− | <option value="DUBL">Dublin/Pleasanton</option>
| |
− | <option value="DELN">El Cerrito del Norte</option>
| |
− | <option value="PLZA">El Cerrito Plaza</option>
| |
− | <option value="EMBR">Embarcadero</option>
| |
− | <option value="FRMT">Fremont</option>
| |
− | <option value="FTVL">Fruitvale</option>
| |
− | <option value="GLEN">Glen Park</option>
| |
− | <option value="HAYW">Hayward</option>
| |
− | <option value="LAFY">Lafayette</option>
| |
− | <option value="LAKE">Lake Merritt</option>
| |
− | <option value="MCAR">MacArthur</option>
| |
− | <option value="MLBR">Millbrae</option>
| |
− | <option value="MONT">Montgomery</option>
| |
− | <option value="NBRK">North Berkeley</option>
| |
− | <option value="NCON">North Concord/Martinez</option>
| |
− | <option value="ORIN">Orinda</option>
| |
− | <option value="PITT">Pittsburg/Bay Point</option>
| |
− | <option value="PHIL">Pleasant Hill</option>
| |
− | <option value="POWL">Powell</option>
| |
− | <option value="RICH">Richmond</option>
| |
− | <option value="ROCK">Rockridge (Oakland)</option>
| |
− | <option value="SBRN">San Bruno</option>
| |
− | <option value="SFIA">San Francisco Int'l Airport</option>
| |
− | <option value="SANL">San Leandro</option>
| |
− | <option value="SHAY">South Hayward</option>
| |
− | <option value="SSAN">South San Francisco</option>
| |
− | <option value="UCTY">Union City</option>
| |
− | <option value="WCRK">Walnut Creek</option>
| |
− | <option value="WOAK">West Oakland</option>
| |
− | </select>
| |
− | </td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td colspan="2">Departing<input name="type" value="departure"
| |
− | checked="checked" type="radio"> Arriving<input value="arrival"
| |
− | name="type" type="radio"> <input name="date" size="11"
| |
− | type="text"> <input name="time" size="11" type="text"> </td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td> <br>
| |
− | </td>
| |
− | <td style="vertical-align: top;"><input
| |
− | value="View Schedule and Fare" type="submit"></td>
| |
− | </tr>
| |
− | </tbody>
| |
− | </table>
| |
− | </form>
| |
− | <script>
| |
− | | |
− | /*Current date in form credit:
| |
− | JavaScript Kit (www.javascriptkit.com)
| |
− | Over 200+ free scripts here!
| |
− | */
| |
− | | |
− | var mydate=new Date()
| |
− | var theyear=mydate.getYear()
| |
− | if (theyear < 1000)
| |
− | theyear+=1900
| |
− | var theday=mydate.getDay()
| |
− | var themonth=mydate.getMonth()+1
| |
− | if (themonth<10)
| |
− | themonth="0"+themonth
| |
− | var theday=mydate.getDate()
| |
− | if (theday<10)
| |
− | theday="0"+theday
| |
− | | |
− | //////EDIT below three variable to customize the format of the date/////
| |
− | | |
− | var displayfirst=themonth
| |
− | var displaysecond=theday
| |
− | var displaythird=theyear
| |
− | | |
− | ////////////////////////////////////
| |
− | | |
− | document.schedule_form.date.value=displayfirst+"/"+displaysecond+"/"+displaythird
| |
− | | |
− | var a_p = "";
| |
− | var d = new Date();
| |
− | | |
− | var curr_hour = d.getHours();
| |
− | | |
− | if (curr_hour < 12)
| |
− | { | |
− | a_p = "AM";
| |
− | }
| |
− | else
| |
− | { | |
− | a_p = "PM";
| |
− | }
| |
− | if (curr_hour == 0)
| |
− | {
| |
− | curr_hour = 12;
| |
− | } | |
− | if (curr_hour > 12)
| |
− | {
| |
− | curr_hour = curr_hour - 12;
| |
− | } | |
− | | |
− | var curr_min = d.getMinutes();
| |
− | | |
− | if (curr_min < 10)
| |
− | {
| |
− | curr_min= "0" + curr_min;
| |
− | }
| |
− | | |
− | document.schedule_form.time.value=curr_hour + ":" + curr_min + " " + a_p
| |
− | </script>
| |
− | </body>
| |
− | </html> | |