index.ejs
5.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<!DOCTYPE html>
<html lang="en">
<head>
<% include ../partials/header %>
</head>
<!-- Homepage -->
<body>
<div class="container-fluid">
<div class="jumbotron text-center">
<h1>Safe Routes</h1>
<p>The best way to find the safest routes.</p>
</div>
<% if(!locals.loggedin || (locals.loggedin != "true")){ %>
<%console.log(locals.loggedin)%>
<form action="/login">
<button type="submit" class="btn btn-primary">Log In</button>
<!-- <input type="submit" value="Submit"> -->
</form>
<% } %>
<!--What are for and type for?-->
<!-- current submit button takes you to the landing page -->
<form action="/landing">
<!-- First text field and label above the text field for current location -->
<div class="form-group text-center">
<label for="origin">From</label>
<input type="text" class="form-control" id="origin" placeholder="Enter Current Location" onclick="initFrom()">
</div>
<!-- Second text field and label above the text field for destination -->
<div class="form-group text-center">
<label for="dest">To</label>
<input type="text" class="form-control" id="dest" placeholder="Enter Destination" onclick="initTo()">
</div>
<!-- First travel option button, walking
This contains a row that holds buttons of type button. Buttons are highlighted upon selection.
-->
<div class="row">
<button type="button" class="btn-default img-thumbnail col-xs-4" onclick="walk();">
<img class="img-responsive" src="images/pedestrian-walking.svg" alt="Walking Option" width="40" height="40">
</button>
<!-- Second travel button, driving -->
<button type="button" class="btn-default img-thumbnail col-xs-4" onclick="drive();">
<img class="img-responsive" src="images/car-compact.svg" alt="Walking Option" width="40" height="40">
</button>
<!-- Third travel button, bus -->
<button type="button" class="btn-default img-thumbnail col-xs-4" onclick="bus();">
<img class="img-responsive" src="images/bus.svg" alt="Walking Option" width="40" height="40">
</button>
</div>
<div class="text-center">
<button type="submit" class="btn btn-primary btn-space">Go</button>
</div>
</form>
</div>
<!-- Google Map functionality. -->
<script>
function initFrom() {
var temp = document.getElementById("origin");
var autoOrigin = new google.maps.places.Autocomplete(temp);
google.maps.event.addListener(autoOrigin, 'place_changed', function () {
var place = autoOrigin.getPlace();
// Testing.
console.log(place);
//localStorage.setItem("from", place.formatted_address);
localStorage.setItem("fromIn", temp.value);
localStorage.setItem("originLat", place.geometry.location.lat());
localStorage.setItem("originLng", place.geometry.location.lng());
});
}
function initTo() {
var temp = document.getElementById("dest");
var autoDest = new google.maps.places.Autocomplete(temp);
google.maps.event.addListener(autoDest, 'place_changed', function () {
var place = autoDest.getPlace();
// Testing.
console.log(place);
//localStorage.setItem("to", place.formatted_address);
localStorage.setItem("toIn", temp.value);
localStorage.setItem("destLat", place.geometry.location.lat());
localStorage.setItem("destLng", place.geometry.location.lng());
});
}
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(pos) {
var geocoder = new google.maps.Geocoder;
var point = new google.maps.LatLng(
pos.coords.latitude, pos.coords.longitude);
localStorage.setItem("originLat", pos.coords.latitude);
localStorage.setItem("originLng", pos.coords.longitude);
geocoder.geocode({'latLng': point}, function (locations, status) {
if (status == google.maps.GeocoderStatus.OK) {
for (var location of locations) {
if ($.inArray("street_address", location.types) != -1) {
console.log('Your location is: ' + location.formatted_address);
document.getElementById("origin").value = location.formatted_address;
saveFrom();
break;
}
};
}
});
});
}
function saveFrom() {
var fromInput = document.getElementById("origin").value;
localStorage.setItem("from", fromInput);
localStorage.setItem("fromIn", fromInput);
}
function saveTo() {
var toInput = document.getElementById("dest").value;
localStorage.setItem("to", toInput);
}
function walk() {
localStorage.setItem("mode", "WALKING");
}
function drive() {
localStorage.setItem("mode", "DRIVING");
}
function bus() {
localStorage.setItem("mode", "TRANSIT");
}
function login(){
}
</script>
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDAXDHeZXEv4H4ZnThVDxpyAuxVpzOcj_U&libraries=places">
</script>
</body>
</html>