Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $origin_lat = $_REQUEST['origin_lat'];
- $origin_long = $_REQUEST['origin_long'];
- $destination_lat = $_REQUEST['destination_lat'];
- $destination_long = $_REQUEST['destination_long'];
- $zoom = (empty($_REQUEST['zoom']) ? '17' : $_REQUEST['zoom']); // 1 to 22
- ?>
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
- <meta charset="utf-8">
- <title>Direction</title>
- <style>
- /* Always set the map height explicitly to define the size of the div
- * element that contains the map. */
- #map {
- height: 100%;
- }
- /* Optional: Makes the sample page fill the window. */
- html, body {
- height: 100%;
- margin: 0;
- padding: 0;
- }
- #floating-panel {
- position: absolute;
- top: 10px;
- left: 25%;
- z-index: 5;
- background-color: #fff;
- padding: 5px;
- border: 1px solid #999;
- text-align: center;
- font-family: 'Roboto','sans-serif';
- line-height: 30px;
- padding-left: 10px;
- }
- </style>
- </head>
- <body>
- <div id="floating-panel">
- <b>Mode of Travel: </b>
- <select id="mode">
- <option value="DRIVING">Driving</option>
- <option value="WALKING">Walking</option>
- <option value="BICYCLING">Bicycling</option>
- <option value="TRANSIT">Transit</option>
- </select>
- </div>
- <div id="map"></div>
- <script>
- function initMap() {
- var directionsDisplay = new google.maps.DirectionsRenderer;
- var directionsService = new google.maps.DirectionsService;
- var map = new google.maps.Map(document.getElementById('map'), {
- zoom: <?php echo $zoom ?>,
- center: {lat: <?php echo $origin_lat ?>, lng: <?php echo $origin_long ?>}
- });
- directionsDisplay.setMap(map);
- calculateAndDisplayRoute(directionsService, directionsDisplay);
- document.getElementById('mode').addEventListener('change', function() {
- calculateAndDisplayRoute(directionsService, directionsDisplay);
- });
- }
- function calculateAndDisplayRoute(directionsService, directionsDisplay) {
- var selectedMode = document.getElementById('mode').value;
- directionsService.route({
- origin: {lat: <?php echo $origin_lat ?>, lng: <?php echo $origin_long ?>},
- destination: {lat: <?php echo $destination_lat ?>, lng: <?php echo $destination_long ?>},
- // Note that Javascript allows us to access the constant
- // using square brackets and a string value as its
- // "property."
- travelMode: google.maps.TravelMode[selectedMode]
- }, function(response, status) {
- if (status == 'OK') {
- directionsDisplay.setDirections(response);
- } else {
- window.alert('Directions request failed due to ' + status);
- }
- });
- }
- </script>
- <script async defer
- src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap&libraries=geometry,places">
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement