PageSourceSearch

https://www.elitekennelfertility.com/Scripts/io.google.js

js elitekennelfertility.com collected 2026-10-05 05:19:49 UTC 13,153 bytes, 375 lines download raw bytes

1(function ($) {
2    var methods = {
3        init: function (options) {
4			var $geocoder = new google.maps.Geocoder();
5			var $address = options.center + ', UK';
6			if ($geocoder) {
7			    $geocoder.geocode({ 'address': $address }, function (results, status) {
8			      var $location = results[0].geometry.location;
9			      var $lat = $location.lat();
10			      var $lng = $location.lng();
11			      if (status == google.maps.GeocoderStatus.OK) {
12					// The Map itself
13					var $el = document.getElementById(options.parentElementId)
14					, $w = $($el).width()
15					, $h = $($el).height();
16					if($w === 0){ $($el).css({ width: "800px" }); };
17					if($h === 0){ $($el).css({ height: "600px" }); };
18				     // The Map options		
19					var $mapOptions = {
20						zoom: options.zoomLevel
21						, minZoom: options.minZoomLevel
22						, center: new google.maps.LatLng($lat, $lng)
23						, mapTypeId: methods.type(options.type)
24						, mapTypeControl: options.toggle
25						, mapTypeControlOptions: methods.position(options.togglePos)
26						, panControl: options.pan
27						, panControlOptions: methods.position(options.panPos)
28						, zoomControl: options.zoom
29						, zoomControlOptions: methods.position(options.zoomPos)
30						, streetViewControl: options.streetView
31						, streetViewControlOptions: methods.position(options.streetViewPos)
32						, scaleControl: options.scale
33						, styles: options.styles
34                        , scrollwheel: options.scrollable
35					};
36					// Set the map
37					var $map = new google.maps.Map($el, $mapOptions);
38					options.mapper = $map;
39					// Places
40					if(options.places.length > 0)
41					{
42						var $i = 0;
43						$(options.places).each(function (item, val) {
44							var $infoWindow = new google.maps.InfoWindow();
45							$.when(
46									methods.marker(val, options, $map, $i, $infoWindow)
47								).done(function(){							
48									$i++;
49							});
50						});
51					}
52					// Resize
53					if(options.reSize === true)
54					{
55						$(window).resize(function () {
56							google.maps.event.trigger($map, "resize");
57						});
58					}
59					// Get new bg color?
60					var maskColor = "#B3D1FF";
61					if(options.styles.length > 0)
62					{
63						var $hue = options.styles[0].stylers[0].hue;
64						var $sat = options.styles[0].stylers[1].saturation;
65						var $colA = $.Color($hue);
66						var $colB = $.Color(maskColor);
67						var $diff = $colA.hue() - $colB.hue();
68						if($diff < 0){
69							$diff = $diff * -1;
70							$diff = 360 - $diff;	
71						}
72						var $x = "+=" + String($diff);
73						if($sat < 0){
74							$sat = $sat * -1;
75							$sat = 100 - $sat;
76							$sat = $sat / 100;
77						} else {
78							$sat = 100 + $sat;
79							$sat = $sat / 100;
80							$sat = 0.5 + $sat;
81							$sat = $sat - 1;
82						}
83						var $masker = $.Color(maskColor);
84						$masker = $masker.hue($x);
85						$masker = $masker.saturation($sat);
86						maskColor = $masker.toHexString();
87					}
88					// Mask
89					if(options.masked === true)
90					{
91						var $masked;
92						$masked = new google.maps.Polygon({
93							paths: options.mask,
94							strokeColor: maskColor,
95							strokeOpacity: 1,
96							strokeWeight: 3,
97							fillColor: maskColor,
98							fillOpacity: 1,
99							clickable: false
100						});
101						$masked.setMap($map);
102					}
103				 }
104				 else {
105					// Error
106			      }
107			      if (options.onLoad != "") {
108			          options.onLoad.call(this, options);
109			      }
110			  });
111			};
112		}
113		, icon: function($point, $i, $options, $map){
114			var $markerOptions = {};
115			//var marker = new google.maps.Marker($markerOptions);
116			if($options.marker === "") {
117				switch($options.markerStyle){
118					case "":
119					case "simple":
120						var letter = String.fromCharCode("A".charCodeAt(0) + $i);
121						 $marker = new google.maps.Marker({
122							position: $point
123							, map: $map
124						 });
125						break;
126					case "letter":
127					case "lettered":
128						var letter = String.fromCharCode("A".charCodeAt(0) + $i);
129						 $marker = new google.maps.Marker({
130							position: $point
131							, map: $map
132							, icon: "http://www.google.com/mapfiles/marker" + escape(letter) + ".png"
133						 });
134						break;
135					case "number":	
136					case "numbered":
137					case "coloured-number":
138					case "coloured-numbered":
139						var pinColor = "FE6256";
140						if($options.markerColor != "" && ($options.markerStyle == "coloured-number" || $options.markerStyle == "coloured-numbered")){
141							pinColor = $options.markerColor.replace("#", "");
142						}
143						var pinImage = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=" + escape(String($i + 1)) + "|" + pinColor,
144							new google.maps.Size(21, 34),
145							new google.maps.Point(0,0),
146							new google.maps.Point(10, 34));
147						var pinShadow = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_pin_shadow",
148							new google.maps.Size(40, 37),
149							new google.maps.Point(0, 0),
150							new google.maps.Point(12, 35));
151						$marker = new google.maps.Marker({
152							position: $point
153							, map: $map
154							, icon: pinImage
155						 });
156						break;
157					case "coloured":
158					case "coloured-lettered":
159							var pinColor = $options.markerColor.replace("#", "");
160							var pinImage = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=%E2%80%A2|" + pinColor,
161								new google.maps.Size(21, 34),
162								new google.maps.Point(0,0),
163								new google.maps.Point(10, 34));
164							var pinShadow = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_pin_shadow",
165								new google.maps.Size(40, 37),
166								new google.maps.Point(0, 0),
167								new google.maps.Point(12, 35));
168							$marker = new google.maps.Marker({
169								position: $point
170								, map: $map
171								, icon: pinImage
172							 });
173						break;
174					case "coloured-letter":
175							var letter = String.fromCharCode("A".charCodeAt(0) + $i);
176							var pinColor = $options.markerColor.replace("#", "");
177							var pinImage = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=" + letter + "|" + pinColor,
178								new google.maps.Size(21, 34),
179								new google.maps.Point(0,0),
180								new google.maps.Point(10, 34));
181							var pinShadow = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_pin_shadow",
182								new google.maps.Size(40, 37),
183								new google.maps.Point(0, 0),
184								new google.maps.Point(12, 35));
185							$marker = new google.maps.Marker({
186								position: $point
187								, map: $map
188								, icon: pinImage
189							 });
190						break;	
191				}				 
192			 } else {
193				 $marker = new google.maps.Marker({
194					position: $point
195					, map: $map
196					, icon: $options.marker
197				 });
198			 }
199			return $marker
200			//return marker;
201
202		}
203		, marker: function($val, $options, $map, $i, $infoWindow){
204			var $marker;
205			if($val.lat === 0 || $val.lat === undefined || $val.lat === null || $val.lon === 0 || $val.lon === undefined || $val.lon === null)
206			{
207				// Geocode...
208				if($val.postcode != "" && $val.postcode != undefined && $val.postcode != null){
209					var $googleAddress = $val.postcode + ', UK';
210					var $geocoder = new google.maps.Geocoder();
211					if($geocoder){
212						$geocoder.geocode({ 'address': $googleAddress }, function (results, status) {
213						    if (status == google.maps.GeocoderStatus.OK) {
214						        var $location = results[0].geometry.location;
215						        var $lat = $location.lat();
216						        var $lng = $location.lng();
217								 //var point = new google.maps.LatLng(results[0].geometry.location.ob, results[0].geometry.location.pb);
218								 $marker = methods.icon(new google.maps.LatLng($lat, $lng), $i, $options, $map);
219								 if($marker != null){
220								     var $html = $val.html;
221								     if ($options.infoBox) {
222								         if ($options.htmlInfo) {
223								             // Add surrounding IO styles
224								             $html = "<div class='ioInfoBox'>" + $html + "</div>";
225								         }
226								         google.maps.event.addListener($marker, 'click', (function ($marker, $i) {
227								             return function () {
228								                 $infoWindow.setContent($html);
229								                 $infoWindow.open($map, $marker);
230								             }
231								         })($marker, $i));
232								     }
233									$i++;
234								 }
235								 return $marker;
236							 } else {
237								$marker = null;
238								return $marker;
239							 }
240						});
241					}
242				} else {
243					$marker = null;
244					return $marker;	
245				}
246			} else {
247				// Use lat and lon values...
248				//var point = new GLatLng($val.lat, $val.lon);
249				$marker = methods.icon(new google.maps.LatLng($val.lat, $val.lon), $i, $options, $map);
250				if($marker != null && $options.infoBox){
251					var $html = $val.html;
252					if($options.htmlInfo){
253						// Add surrounding IO styles
254						$html = "<div class='ioInfoBox'>" + $html + "</div>";	
255					}
256					google.maps.event.addListener($marker, 'click', (function ($marker, $i) {
257						return function () {
258							$infoWindow.setContent($html);
259							$infoWindow.open($map, $marker);
260						}
261					})($marker, $i));
262					$i++;
263				 }
264				return $marker;
265			}	
266		}
267		, type: function($type){
268			var $googleType;
269			switch($type.toLowerCase())
270			{
271				case "road":
272					$googleType = google.maps.MapTypeId.ROADMAP;
273					break;
274				case "satellite":
275					$googleType = google.maps.MapTypeId.SATELLITE;
276					break;
277				case "hybrid":
278					$googleType = google.maps.MapTypeId.HYBRID;
279					break;
280				case "terrain":
281					$googleType = google.maps.MapTypeId.TERRAIN;
282					break;
283			}
284			return $googleType;
285		}
286		, position: function($pos){
287			var $googlePos;
288			switch($pos.toLowerCase())
289			{
290				case "top centre":
291				case "top center":
292					$googlePos = { position: google.maps.ControlPosition.TOP_CENTER };
293					break;
294				case "top left":
295					$googlePos = { position: google.maps.ControlPosition.TOP_LEFT };
296					break;	
297				case "top right":
298					$googlePos = { position: google.maps.ControlPosition.TOP_RIGHT };
299					break;
300				case "left top":
301					$googlePos = { position: google.maps.ControlPosition.LEFT_TOP };
302					break;
303				case "right top":
304					$googlePos = { position: google.maps.ControlPosition.RIGHT_TOP };
305					break;
306				case "left center":
307				case "left centre":
308					$googlePos = { position: google.maps.ControlPosition.LEFT_CENTER };
309					break;
310				case "right center":
311				case "right centre":
312					$googlePos = { position: google.maps.ControlPosition.RIGHT_CENTER };
313					break;
314				case "left bottom":
315					$googlePos = { position: google.maps.ControlPosition.LEFT_BOTTOM };
316					break;
317				case "right bottom":
318					$googlePos = { position: google.maps.ControlPosition.RIGHT_BOTTOM };
319					break;
320				case "bottom center":
321				case "bottom centre":
322					$googlePos = { position: google.maps.ControlPosition.BOTTOM_CENTER };
323					break;
324				case "bottom left":
325					$googlePos = { position: google.maps.ControlPosition.BOTTOM_LEFT };
326					break;
327				case "bottom right":
328					$googlePos = { position: google.maps.ControlPosition.BOTTOM_RIGHT };
329					break;
330			}
331			return	$googlePos;
332		}
333	};
334    $.fn.ioGoogleMap = function (method, data) {
335        var defaults = {
336			parentElementId: "ioGoogleMap"
337			, htmlInfo: true
338			, masked: false
339			, maskColor: ""
340			, zoomLevel: 8
341			, minZoomLevel: 5
342			, center: ""
343			, type: "road"
344			, toggle: true
345			, pan: true
346			, zoom: true
347			, streetView: true
348            , infoBox: false
349			, togglePos: "top right"
350			, panPos: "top right"
351			, zoomPos: "top right"
352			, streetViewPos: "top right"
353			, scale: false
354			, color: "" 
355			, places: [ ]
356			, marker: ""
357			, markerStyle: "letter"
358			, markerColor: "#FFFF33"
359			, reSize: true
360			, styles: []
361            , onLoad: ""
362            , mapper: null
363            , scrollable: false
364			, mask: [ new google.maps.LatLng(69.390627, -79.980469), new google.maps.LatLng(21.834303, -80.507813), new google.maps.LatLng(21.562095, 49.042969), new google.maps.LatLng(70.476000, 50.449219), new google.maps.LatLng(69.390627, -79.980469), new google.maps.LatLng(59.168421, -12.084961), new google.maps.LatLng(59.168421, 2.153320), new google.maps.LatLng(51.881012, 2.768555), new google.maps.LatLng(50.969959, 1.505127), new google.maps.LatLng(48.717545, -6.580811), new google.maps.LatLng(51.390065, -14.194336), new google.maps.LatLng(59.168421, -12.084961) ]
365		};
366        if (methods[method]) {
367            return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
368        } else if (typeof method === 'object' || !method) {
369            var ioOptions = $.extend(defaults, method);
370            return methods.init.apply(this, arguments);
371        } else {
372            $.error('Method ' + method + ' does not exist on jQuery.ioGoogleMap');
373        }
374    };
375})(jQuery);

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.