[ Mini Kiebo ]
Server: Windows NT AKFAR_SERVER 10.0 build 26200 (Windows 10) AMD64
Path:
D:
/
BACKUP C 19-12
/
XAMPP74
/
htdocs
/
sisurat
/
inc
/
js
/
[
Home
]
File: jquery.ui.map.extensions.js
/*! * jQuery UI Google Map 3.0-rc * http://code.google.com/p/jquery-ui-map/ * Copyright (c) 2010 - 2011 Johan Säll Larsson * Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php * * Depends: * jquery.ui.map.js */ ( function($) { $.extend($.ui.gmap.prototype, { /** * Gets the current position * @param callback:function(position, status) * @param geoPositionOptions:object, see https://developer.mozilla.org/en/XPCOM_Interface_Reference/nsIDOMGeoPositionOptions */ getCurrentPosition: function(callback, geoPositionOptions) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition ( function(result) { callback(result, 'OK'); }, function(error) { callback(null, error); }, geoPositionOptions ); } else { callback(null, 'NOT_SUPPORTED'); } }, /** * Watches current position * To clear watch, call navigator.geolocation.clearWatch(this.get('watch')); * @param callback:function(position, status) * @param geoPositionOptions:object, see https://developer.mozilla.org/en/XPCOM_Interface_Reference/nsIDOMGeoPositionOptions */ watchPosition: function(callback, geoPositionOptions) { if ( navigator.geolocation ) { this.set('watch', navigator.geolocation.watchPosition ( function(result) { callback(result, "OK"); }, function(error) { callback(null, error); }, geoPositionOptions )); } else { callback(null, "NOT_SUPPORTED"); } }, /** * Clears any watches */ clearWatch: function() { if ( navigator.geolocation ) { navigator.geolocation.clearWatch(this.get('watch')); } }, /** * Autocomplete using Google Geocoder * @param panel:string/node/jquery * @param callback:function(results, status) */ autocomplete: function(panel, callback) { var self = this; $(this._unwrap(panel)).autocomplete({ source: function( request, response ) { self.search({'address':request.term}, function(results, status) { if ( status === 'OK' ) { response( $.map( results, function(item) { return { label: item.formatted_address, value: item.formatted_address, position: item.geometry.location } })); } else if ( status === 'OVER_QUERY_LIMIT' ) { alert('Google said it\'s too much!'); } }); }, minLength: 3, select: function(event, ui) { self._call(callback, ui); }, open: function() { $( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" ); }, close: function() { $( this ).removeClass( "ui-corner-top" ).addClass( "ui-corner-all" ); } }); }, /** * Retrieves a list of Places in a given area. The PlaceResultss passed to the callback are stripped-down versions of a full PlaceResult. A more detailed PlaceResult for each Place can be obtained by sending a Place Details request with the desired Place's reference value. * @param placeSearchRequest:google.maps.places.PlaceSearchRequest, http://code.google.com/apis/maps/documentation/javascript/reference.html#PlaceSearchRequest * @param callback:function(result:google.maps.places.PlaceResult, status:google.maps.places.PlacesServiceStatus), http://code.google.com/apis/maps/documentation/javascript/reference.html#PlaceResult */ placesSearch: function(placeSearchRequest, callback) { this.get('services > PlacesService', new google.maps.places.PlacesService(this.get('map'))).search(placeSearchRequest, callback); }, /** * Clears any directions */ clearDirections: function() { var directionsRenderer = this.get('services > DirectionsRenderer'); if (directionsRenderer) { directionsRenderer.setMap(null); directionsRenderer.setPanel(null); } }, /** * Page through the markers. Very simple version. * @param prop:the marker property to show in display, defaults to title */ pagination: function(prop) { var $el = $("<div id='pagination' class='pagination shadow gradient rounded clearfix'><div class='lt btn back-btn'></div><div class='lt display'></div><div class='rt btn fwd-btn'></div></div>"); var self = this, i = 0, prop = prop || 'title'; self.set('p_nav', function(a, b) { if (a) { i = i + b; $el.find('.display').text(self.get('markers')[i][prop]); self.get('map').panTo(self.get('markers')[i].getPosition()); } }); self.get('p_nav')(true, 0); $el.find('.back-btn').click(function() { self.get('p_nav')((i > 0), -1, this); }); $el.find('.fwd-btn').click(function() { self.get('p_nav')((i < self.get('markers').length - 1), 1, this); }); self.addControl($el, google.maps.ControlPosition.TOP_LEFT); } /** * A layer that displays data from Panoramio. * @param panoramioLayerOptions:google.maps.panoramio.PanoramioLayerOptions, http://code.google.com/apis/maps/documentation/javascript/reference.html#PanoramioLayerOptions */ /*loadPanoramio: function(panoramioLayerOptions) { if ( !this.get('overlays').PanoramioLayer ) { this.get('overlays').PanoramioLayer = new google.maps.panoramio.PanoramioLayer(); } this.get('overlays').PanoramioLayer.setOptions(jQuery.extend({'map': this.get('map') }, panoramioLayerOptions)); },*/ /** * Makes an elevation request along a path, where the elevation data are returned as distance-based samples along that path. * @param pathElevationRequest:google.maps.PathElevationRequest, http://code.google.com/apis/maps/documentation/javascript/reference.html#PathElevationRequest * @param callback:function(result:google.maps.ElevationResult, status:google.maps.ElevationStatus), http://code.google.com/intl/sv-SE/apis/maps/documentation/javascript/reference.html#ElevationResult */ /*elevationPath: function(pathElevationRequest, callback) { this.get('services > ElevationService', new google.maps.ElevationService()).getElevationAlongPath(pathElevationRequest, callback); },*/ /** * Makes an elevation request for a list of discrete locations. * @param pathElevationRequest:google.maps.PathElevationRequest, http://code.google.com/apis/maps/documentation/javascript/reference.html#PathElevationRequest * @param callback:function(result:google.maps.ElevationResult, status:google.maps.ElevationStatus), http://code.google.com/intl/sv-SE/apis/maps/documentation/javascript/reference.html#ElevationResult */ /*elevationLocations: function(pathElevationRequest, callback) { this.get('services > ElevationService', new google.maps.ElevationService()).getElevationForLocations(pathElevationRequest, callback); },*/ /* PLACES SERVICE */ /** * Retrieves a list of Places in a given area. The PlaceResultss passed to the callback are stripped-down versions of a full PlaceResult. A more detailed PlaceResult for each Place can be obtained by sending a Place Details request with the desired Place's reference value. * @param placeSearchRequest:google.maps.places.PlaceSearchRequest, http://code.google.com/apis/maps/documentation/javascript/reference.html#PlaceSearchRequest * @param callback:function(result:google.maps.places.PlaceResult, status:google.maps.places.PlacesServiceStatus), http://code.google.com/apis/maps/documentation/javascript/reference.html#PlaceResult */ /*placesSearch: function(placeSearchRequest, callback) { this.get('services > PlacesService', new google.maps.places.PlacesService(this.get('map'))).search(placeSearchRequest, callback); },*/ /** * Retrieves details about the Place identified by the given reference. * @param placeDetailsRequest:google.maps.places.PlaceDetailsRequest, http://code.google.com/apis/maps/documentation/javascript/reference.html#PlaceDetailsRequest * @param callback:function(result:google.maps.places.PlaceResult, status:google.maps.places.PlacesServiceStatus), http://code.google.com/apis/maps/documentation/javascript/reference.html#PlaceResult */ /*placesDetails: function(placeDetailsRequest, callback) { this.get('services > PlacesService', new google.maps.places.PlacesService(this.get('map'))).getDetails(placeDetailsRequest, callback); },*/ /** * A service to predict the desired Place based on user input. The service is attached to an <input> field in the form of a drop-down list. The list of predictions is updated dynamically as text is typed into the input field. * @param panel:jquery/node/string * @param autocompleteOptions:google.maps.places.AutocompleteOptions, http://code.google.com/apis/maps/documentation/javascript/reference.html#AutocompleteOptions */ /*placesAutocomplete: function(panel, autocompleteOptions) { this.get('services > Autocomplete', new google.maps.places.Autocomplete(this._unwrap(panel))); },*/ /* DISTANCE MATRIX SERVICE */ /** * Issues a distance matrix request. * @param distanceMatrixRequest:google.maps.DistanceMatrixRequest, http://code.google.com/apis/maps/documentation/javascript/reference.html#DistanceMatrixRequest * @param callback:function(result:google.maps.DistanceMatrixResponse, status: google.maps.DistanceMatrixStatus), http://code.google.com/apis/maps/documentation/javascript/reference.html#DistanceMatrixResponse */ /*displayDistanceMatrix: function(distanceMatrixRequest, callback) { this.get('services > DistanceMatrixService', new google.maps.DistanceMatrixService()).getDistanceMatrix(distanceMatrixRequest, callback); }*/ }); } (jQuery) );