v0.1 with spot app

This commit is contained in:
franzz committed 2015-12-01 23:54:46 +01:00
1 parent 94370ae57e
commit a52307af80
6 files changed
+32 -14

No files matched your search

+2
View File
@@ -0,0 +1,2 @@
/* Spot Librairy - findmespot.com */
//function SpotMain(){this.scriptName="spot-main-min.js";this.COMPRESSED=true;this.scriptLocation=null;this.scriptsToLoad=["markermanager.js","spot-widget.js"];this.stylesToLoad=["Resources/css/spotlivewidget.css"]}function MarkerManager(e,t){var n=this;n.map_=e;n.mapZoom_=e.getZoom();n.projectionHelper_=new ProjectionHelperOverlay(e);google.maps.event.addListener(n.projectionHelper_,"ready",function(){n.projection_=this.getProjection();n.initialize(e,t)})}function GridBounds(e){this.minX=Math.min(e[0].x,e[1].x);this.maxX=Math.max(e[0].x,e[1].x);this.minY=Math.min(e[0].y,e[1].y);this.maxY=Math.max(e[0].y,e[1].y)}function ProjectionHelperOverlay(e){this.setMap(e);var t=8;var n=1<<t;var r=7;this._map=e;this._zoom=-1;this._X0=this._Y0=this._X1=this._Y1=-1}SpotMain.prototype.getScriptLocation=function(){if(this.scriptLocation==null){var e=document.getElementsByTagName("script");for(var t=0;t<e.length;t++){var n=e[t].getAttribute("src");if(n){var r=n.lastIndexOf(this.scriptName);var i=n.lastIndexOf("?");if(i<0){i=n.length}if(r>-1&&r+this.scriptName.length==i){this.scriptLocation=n.slice(0,i-this.scriptName.length);break}}}}return this.scriptLocation};SpotMain.prototype.loadStyles=function(){for(var e=0;e<this.stylesToLoad.length;e++){var t=document.getElementsByTagName("head")[0],n=document.createElement("link");n.rel="stylesheet";n.type="text/css";n.href=this.getScriptLocation()+this.stylesToLoad[e];n.media="all";t.appendChild(n)}};SpotMain.prototype.loadScript=function(e){document.write('<script src="'+this.getScriptLocation()+e+'"></script>')};SpotMain.prototype.loadScripts=function(e){for(var t=0;t<this.scriptsToLoad.length;t++){this.loadScript(this.scriptsToLoad[t])}};SpotMain.prototype.load=function(){if(this.COMPRESSED===false)this.loadScripts();this.loadStyles()};window.spotMain=new SpotMain;spotMain.load();MarkerManager.prototype.initialize=function(e,t){var n=this;t=t||{};n.tileSize_=MarkerManager.DEFAULT_TILE_SIZE_;var r=e.mapTypes;var i=1;for(var s in r){if(typeof e.mapTypes.get(s)==="object"&&typeof e.mapTypes.get(s).maxZoom==="number"){var o=e.mapTypes.get(s).maxZoom;if(o>i){i=o}}}n.maxZoom_=t.maxZoom||19;n.trackMarkers_=t.trackMarkers;n.show_=t.show||true;var u;if(typeof t.borderPadding==="number"){u=t.borderPadding}else{u=MarkerManager.DEFAULT_BORDER_PADDING_}n.swPadding_=new google.maps.Size(-u,u);n.nePadding_=new google.maps.Size(u,-u);n.borderPadding_=u;n.gridWidth_={};n.grid_={};n.grid_[n.maxZoom_]={};n.numMarkers_={};n.numMarkers_[n.maxZoom_]=0;google.maps.event.addListener(e,"dragend",function(){n.onMapMoveEnd_()});google.maps.event.addListener(e,"zoom_changed",function(){n.onMapMoveEnd_()});n.removeOverlay_=function(e){e.setMap(null);n.shownMarkers_--};n.addOverlay_=function(e){if(n.show_){e.setMap(n.map_);n.shownMarkers_++}};n.resetManager_();n.shownMarkers_=0;n.shownBounds_=n.getMapGridBounds_();google.maps.event.trigger(n,"loaded")};MarkerManager.DEFAULT_TILE_SIZE_=1024;MarkerManager.DEFAULT_BORDER_PADDING_=100;MarkerManager.MERCATOR_ZOOM_LEVEL_ZERO_RANGE=256;MarkerManager.prototype.resetManager_=function(){var e=MarkerManager.MERCATOR_ZOOM_LEVEL_ZERO_RANGE;for(var t=0;t<=this.maxZoom_;++t){this.grid_[t]={};this.numMarkers_[t]=0;this.gridWidth_[t]=Math.ceil(e/this.tileSize_);e<<=1}};MarkerManager.prototype.clearMarkers=function(){this.processAll_(this.shownBounds_,this.removeOverlay_);this.resetManager_()};MarkerManager.prototype.getTilePoint_=function(e,t,n){var r=this.projectionHelper_.LatLngToPixel(e,t);var i=new google.maps.Point(Math.floor((r.x+n.width)/this.tileSize_),Math.floor((r.y+n.height)/this.tileSize_));return i};MarkerManager.prototype.addMarkerBatch_=function(e,t,n){var r=this;var i=e.getPosition();e.MarkerManager_minZoom=t;if(this.trackMarkers_){google.maps.event.addListener(e,"changed",function(e,t,n){r.onMarkerMoved_(e,t,n)})}var s=this.getTilePoint_(i,n,new google.maps.Size(0,0,0,0));for(var o=n;o>=t;o--){var u=this.getGridCellCreate_(s.x,s.y,o);u.push(e);s.x=s.x>>1;s.y=s.y>>1}};MarkerManager.prototype.isGridPointVisible_=function(e){var t=this.shownBounds_.minY<=e.y&&e.y<=this.shownBounds_.maxY;var n=this.shownBounds_.minX;var r=n<=e.x&&e.x<=this.shownBounds_.maxX;if(!r&&n<0){var i=this.gridWidth_[this.shownBounds_.z];r=n+i<=e.x&&e.x<=i-1}return t&&r};MarkerManager.prototype.onMarkerMoved_=function(e,t,n){var r=this.maxZoom_;var i=false;var s=this.getTilePoint_(t,r,new google.maps.Size(0,0,0,0));var o=this.getTilePoint_(n,r,new google.maps.Size(0,0,0,0));while(r>=0&&(s.x!==o.x||s.y!==o.y)){var u=this.getGridCellNoCreate_(s.x,s.y,r);if(u){if(this.removeFromArray_(u,e)){this.getGridCellCreate_(o.x,o.y,r).push(e)}}if(r===this.mapZoom_){if(this.isGridPointVisible_(s)){if(!this.isGridPointVisible_(o)){this.removeOverlay_(e);i=true}}else{if(this.isGridPointVisible_(o)){this.addOverlay_(e);i=true}}}s.x=s.x>>1;s.y=s.y>>1;o.x=o.x>>1;o.y=o.y>>1;--r}if(i){this.notifyListeners_()}};MarkerManager.prototype.removeMarker=function(e){var t=this.maxZoom_;var n=false;var r=e.getPosit Line truncated
+1 -2
View File
@@ -18,6 +18,7 @@ function Spot(asGlobals)
//page elem
self.elem = {};
self.elem.container = $('#container');
self.elem.main = $('#main');
//on window resize
//$(window).resize(self.onResize).resize();
@@ -130,8 +131,6 @@ function Spot(asGlobals)
var $Dom = $(self.consts.pages[sPageName]);
if(bFirstPage)
{
self.elem.container.html($(self.consts.pages['template']));
self.elem.main = self.elem.container.find('#main');
self.splash($Dom, asHash, bFirstPage); //first page
}
else