Difference between revisions of "Widget:GTform"

From Transit.Wiki
m
m
Line 10: Line 10:
 
<div style="display:inline-block;margin:2px 0 2px 0;"><label>to</label>
 
<div style="display:inline-block;margin:2px 0 2px 0;"><label>to</label>
 
  <input class="input" id="to" value=""><span id="tonote" style="display:none;">where I am at</span>.</div>
 
  <input class="input" id="to" value=""><span id="tonote" style="display:none;">where I am at</span>.</div>
<div style="margin:2px;">Depart at  
+
<div style="margin:2px;"> <form id="triptime" style="display:inline;" >
 +
  <input type="radio" name="triptime" value="depart" checked> Departing
 +
  <input type="radio" name="triptime" value="arrive"> arriving at
 +
  </form>
 
<select id="depart">
 
<select id="depart">
 +
<option value="now" selected>Now</option>
 
<option value="03:00">3:00 am</option>
 
<option value="03:00">3:00 am</option>
 
<option value="03:30">3:30 am</option>
 
<option value="03:30">3:30 am</option>
Line 22: Line 26:
 
<option value="06:30">6:30 am</option>
 
<option value="06:30">6:30 am</option>
 
<option value="06:45">6:45 am</option>
 
<option value="06:45">6:45 am</option>
<option value="07:00" selected>7:00 am</option>
+
<option value="07:00">7:00 am</option>
 
<option value="07:15">7:15 am</option>
 
<option value="07:15">7:15 am</option>
 
<option value="07:30">7:30 am</option>
 
<option value="07:30">7:30 am</option>
Line 168: Line 172:
  
 
       function route() {
 
       function route() {
 +
        var triptime = $('input[name="triptime"]:checked', '#triptime').val();
 
         var departure = document.getElementById('depart').value;
 
         var departure = document.getElementById('depart').value;
         var bits = departure.split(':');
+
         if (departure=='now') {
        var now = new Date();
+
              var departureTime = null;
        var tzOffset = (now.getTimezoneOffset() + 60) * 60 * 1000;
+
              var arrivalTime = null;
 +
        } else {
 +
              var bits = departure.split(':');
 +
              var now = new Date();
 +
              var tzOffset = (now.getTimezoneOffset() + 60) * 60 * 1000;
  
        var time = new Date();
+
              var time = new Date();
        time.setHours(bits[0]);
+
              time.setHours(bits[0]);
        time.setMinutes(bits[1]);
+
              time.setMinutes(bits[1]);
  
        var ms = time.getTime();
+
              var ms = time.getTime();
        if (ms < now.getTime()) {
+
              if (ms < now.getTime()) {
          ms += 24 * 60 * 60 * 1000;
+
              ms += 24 * 60 * 60 * 1000;
 +
              }
 +
         
 +
              var departureTime = new Date(ms);
 +
              var arrivalTime = null;
 +
              if (triptime == 'arrive') {
 +
              arrivalTime = departureTime;
 +
              departureTime = null;
 +
              }
 
         }
 
         }
 
        var departureTime = new Date(ms);
 
 
 
         var request = {
 
         var request = {
 
           origin: document.getElementById('from').value,
 
           origin: document.getElementById('from').value,
Line 190: Line 204:
 
           provideRouteAlternatives: true,
 
           provideRouteAlternatives: true,
 
           transitOptions: {
 
           transitOptions: {
             departureTime: departureTime
+
             departureTime: departureTime,
 +
            arrivalTime: arrivalTime
 
           }
 
           }
 
         };
 
         };

Revision as of 16:04, 11 April 2016