1'use strict'; 2var gmap = (function () { 3 4 var _mapId = ''; 5 var geocoder; 6 var map; 7 var _mapIsShowing = false; 8 var publicProperty = 'I am a public property'; 9 10 function _privateMethod() { 11 console.log(_privateProperty); 12 } 13 14 function _injectscript() { 15 var script = document.createElement("script"); 16 script.type = "text/javascript"; 17 //script.src = "https://maps.googleapis.com/maps/api/js?key=AIzaSyD-zNTCuXHBmoj4ouqcF4Ke9V4G453BIsg&callback=gmap.initMap"; 18 script.src = "https://maps.googleapis.com/maps/api/js?key=AIzaSyAAjyKHFCzUbOimsXKcmHLA83ayrTdsOeM&callback=gmap.initMap"; 19 document.getElementsByTagName("head")[0].appendChild(script); 20 } 21 22 function _initMapFromLatLng(lat, lng) { 23 var marker = { lat: lat, lng: lng}; 24 var map = new google.maps.Map(document.getElementById(_mapId), { 25 zoom: 14, 26 center: marker 27 }); 28 var marker2 = new google.maps.Marker({ 29 position: marker, 30 map: map 31 }); 32 _mapIsShowing = true; 33 } 34 35 function _initMapFromAddress(adr) { 36 geocoder = new google.maps.Geocoder(); 37 var address = adr; 38 _mapIsShowing = true; 39 var latlng = _codeAddress(address); 40 var myOptions = { 41 zoom: 14, 42 center: latlng, 43 mapTypeId: google.maps.MapTypeId.ROADMAP 44 } 45 map = new google.maps.Map(document.getElementById(_mapId), myOptions); 46 47 } 48 49 function _codeAddress(address) { 50 geocoder.geocode({ 'address': address }, function (results, status) { 51 if (status == google.maps.GeocoderStatus.OK) { 52 map.setCenter(results[0].geometry.location); 53 var marker = new google.maps.Marker({ 54 map: map, 55 position: results[0].geometry.location 56 }); 57 } else { 58 //alert("Geocode was not successful for the following reason: " + status); 59 document.getElementById("maptarget").innerText = "Google maps fel: Angiven adress ger inget resultat"; 60 _mapIsShowing = false; 61 } 62 }); 63 } 64 65 function init() { 66 _injectscript(); 67 } 68 69 function initMap() { 70 71 $('.gmap').each(function () { 72 var t = $(this); 73 var target = t.data('target'); 74 75 if (t.data('delay') == true) { 76 console.log('delay ' + t.data('delay')); 77 t.on('click', function () { 78 console.log('click'); 79 var lat = t.data('lat'); 80 var lng = t.data('lng'); 81 var adr = t.data('adr'); 82 console.log('adr: ' + adr); 83 console.log('lat: ' + lat); 84 console.log('lng: ' + lng); 85 _mapId = target; 86 if (lat && lng) { 87 console.log('_initMapFromLatLng'); 88 _initMapFromLatLng(lat, lng); 89 } 90 else if (adr) { 91 console.log('_initMapFromAddress'); 92 _initMapFromAddress(adr); 93 } 94 if (_mapIsShowing === true) { 95 console.log('map is showing'); 96 $('#' + target).css('height', '50vh'); 97 } 98 }); 99 } 100 else { 101 console.log('no delay ' + t.data('delay')); 102 var lat = t.data('lat'); 103 var lng = t.data('lng'); 104 var adr = t.data('adr'); 105 _mapId = target; 106 if (lat && lng) { 107 _initMapFromLatLng(lat, lng); 108 } 109 else if (adr) { 110 _initMapFromAddress(adr); 111 } 112 113 } 114 }); 115 } 116 117 return { 118 init: init, 119 initMap: initMap, 120 publicProperty: publicProperty 121 }; 122}());
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.