"mololo.map".namespace();
mololo.map.MapViewEnum={REGULAR:"regular",REGISTER:"register",NEWSLETTER:"newsletter",PROFILE:"profile"};
mololo.map.MapController=Class.create({map:null,cfg:null,mapMovementEnabled:null,unstableNewZoom:null,unstableOldZoom:null,initialize:function(B){var A=mololo.map.Config;
this.map=B;
this.mapMovementEnabled=true;
this.unstableNewZoom=null;
this.unstableOldZoom=null;
this._initListeners()
},_initListeners:function(){var B=this.map;
var A=this;
GEvent.addListener(this.map,"load",function(){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_ONLOAD_ACTION,new mololo.map.MapControllerEvent(null,null,null,null,null,null,null,A,B))
});
GEvent.addListener(this.map,"tilesloaded",function(){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_TILES_ONLOAD_ACTION,new mololo.map.MapControllerEvent(null,null,null,null,null,null,null,A,B))
});
GEvent.addListener(this.map,"click",function(C,E,D){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_CLICK_ACTION,new mololo.map.MapControllerEvent(C,E,D,null,null,null,null,A,B))
});
GEvent.addListener(this.map,"dblclick",function(C,D){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_DBLCLICK_ACTION,new mololo.map.MapControllerEvent(C,D,null,null,null,null,null,A,B))
});
GEvent.addListener(this.map,"singlerightclick",function(C,E,D){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_RIGHT_CLICK_ACTION,new mololo.map.MapControllerEvent(D,null,null,C,E,null,null,A,B))
});
GEvent.addListener(this.map,"zoomend",function(D,C){if(A.isMapMovementEnabled()){A.stabilizeZoom(D,C,function(){var E=new mololo.map.MapControllerEvent(null,null,null,null,null,D,C,A,B);
mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_ZOOM_ACTION,E);
if(E.isMololoZoomLevelChanged()||E.isNewZoomLessThanOldZoom()){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_MOLOLO_ZOOM_LEVEL_ACTION,E)
}})
}});
GEvent.addListener(this.map,"movestart",function(){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_MOVE_START_ACTION,new mololo.map.MapControllerEvent(null,null,null,null,null,null,null,A,B))
});
GEvent.addListener(this.map,"moveend",function(){if(A.isMapMovementEnabled()){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_MOVE_END_ACTION,new mololo.map.MapControllerEvent(null,null,null,null,null,null,null,A,B))
}});
GEvent.addListener(this.map,"mouseover",function(C){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_MOUSEOVER_ACTION,new mololo.map.MapControllerEvent(null,C,null,null,null,null,null,A,B))
});
GEvent.addListener(this.map,"mouseout",function(C){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_MOUSEOUT_ACTION,new mololo.map.MapControllerEvent(null,C,null,null,null,null,null,A,B))
});
GEvent.addListener(this.map,"mousemove",function(E){var C=B.fromLatLngToContainerPixel(E);
var D=new mololo.map.MapControllerEvent(null,E,null,C,null,null,null,A,B);
if(C.x>577&&C.y>38&&C.x<989&&C.y<475){mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_CONTENT_OVER_ACTION,D)
}else{mololo.globals.DISPATCHER.sendEvent(mololo.Action.MAP_CONTENT_OUT_ACTION,D)
}});
GEvent.addListener(this.map,"extinfowindowclose",function(){mololo.globals.DISPATCHER.sendEvent(mololo.Action.INFO_WINDOW_CLOSED_ACTION,null)
})
},getMap:function(){return this.map
},stabilizeZoom:function(C,A,D){var B=this;
B.disableMapMovement();
if(B.unstableNewZoom==null){B.unstableNewZoom=A;
B.unstableOldZoom=C
}if(C>A){B.unstableNewZoom=Math.min(B.unstableNewZoom,A);
B.unstableOldZoom=Math.max(B.unstableOldZoom,C)
}else{B.unstableNewZoom=Math.max(B.unstableNewZoom,A);
B.unstableOldZoom=Math.min(B.unstableOldZoom,C)
}setTimeout(function(){if(A!=B.unstableNewZoom){B.enableMapMovement();
return 
}D();
B.unstableNewZoom=B.getMap().getZoom();
B.unstableOldZoom=B.getMap().getZoom();
B.enableMapMovement()
},200)
},enableMapMovement:function(){this.mapMovementEnabled=true
},disableMapMovement:function(){this.mapMovementEnabled=false
},isMapMovementEnabled:function(){return this.mapMovementEnabled
},onMapLoad:function(A){if(log.isDebugEnabled()){log.debug("Map loaded")
}mololo.AjaxUtils.loadMiniForum("miniForumContainer",A)
},onMapTilesLoad:function(A){if(log.isDebugEnabled()){log.debug("Map tiles loaded")
}},onMapMoveStart:function(A){if(log.isDebugEnabled()){log.debug("Map move started")
}},onMapMoveEnd:function(A){if(log.isDebugEnabled()){log.debug("Map move ended "+A.getMap().getCenter())
}if(mololo.globals.CONTROLLERS.getMarkerController().getMapViewMode()==mololo.map.MapViewEnum.REGULAR||mololo.globals.CONTROLLERS.getMarkerController().getMapViewMode()==mololo.map.MapViewEnum.PROFILE){mololo.globals.CRITERIA.updateMapCriteria(A.getMap());
mololo.globals.CONTROLLERS.getMarkerController().update(mololo.globals.CRITERIA,A);
mololo.AjaxUtils.loadMiniForum("miniForumContainer",A)
}},onMapZoom:function(A){mololo.globals.CONTROLLERS.getMarkerController().setMapCurrentLevel(A.getMololoZoomLevelNew());
mololo.globals.INFO_WINDOW.close();
if(A.getMololoZoomLevelNew()==mololo.map.ZoomLevelEnum.LEVEL_EVENT){mololo.globals.ICONS.scaleIcons()
}mololo.AjaxUtils.loadMiniForum("miniForumContainer",A)
},onMololoZoomLevelChanged:function(A){if(log.isDebugEnabled()){log.debug("Mololo zoom level changed: "+A.getMololoZoomLevelOld()+" -> "+A.getMololoZoomLevelNew())
}if(mololo.globals.CONTROLLERS.getMarkerController().getMapViewMode()==mololo.map.MapViewEnum.REGULAR||mololo.globals.CONTROLLERS.getMarkerController().getMapViewMode()==mololo.map.MapViewEnum.PROFILE){mololo.globals.CRITERIA.updateMapCriteria(A.getMap());
mololo.globals.CONTROLLERS.getMarkerController().update(mololo.globals.CRITERIA,A)
}},onMapClick:function(A){},onMapDblClick:function(A){var B=A.getLatLng();
if(log.isDebugEnabled()){log.debug("Map dblclicked "+B.lng()+" - "+B.lat())
}},onMapRightClick:function(B){var A=B.getPoint();
if(log.isDebugEnabled()){var C=mololo.globals.MAP.fromDivPixelToLatLng(A);
log.debug("Right click - [lat:"+C.lat()+",lng:"+C.lng()+"]")
}},onMapMouseover:function(A){if(log.isDebugEnabled()){log.debug("enabling map zoom")
}A.getMap().enableScrollWheelZoom()
},onMapMouseout:function(A){if(log.isDebugEnabled()){log.debug("disabling map zoom")
}A.getMap().disableScrollWheelZoom()
},onMapControlOver:function(A){if(A.getMap().scrollWheelZoomEnabled()){if(log.isDebugEnabled()){log.debug("scroll disabled")
}A.getMap().disableScrollWheelZoom()
}},onMapControlOut:function(A){if(!A.getMap().scrollWheelZoomEnabled()){if(log.isDebugEnabled()){log.debug("scroll enabled")
}A.getMap().enableScrollWheelZoom()
}}});
mololo.map.MarkerController=Class.create({map:null,markerManager:null,addEventMarker:null,mapViewMode:null,currentLevel:null,cityMap:null,levelMarkersMap:null,levelSuperMarkersMap:null,levelFavoriteMarkersMap:null,levelTopMarkersMap:null,groupedMarkers:null,currentlyVisibleMarkers:null,filterChain:null,updateCallback:null,initialize:function(A){this.markerManager=new MarkerManager(A);
this.map=A;
this.currentLevel=mololo.map.MapUtils.getMapLevel(A);
this.updatingLock=false;
this.cityMap=new Map();
this.mapViewMode=mololo.map.MapViewEnum.REGULAR;
this._resetFilterChain();
this._initMarkersMap()
},_resetFilterChain:function(){this.setFilterChain(new mololo.map.AllFilter())
},_initMarkersMap:function(){this.groupedMarkers=[];
this.levelMarkersMap=new Map();
this.levelMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_STATE,new Map());
this.levelMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_CITY,new Map());
this.levelMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_EVENT,new Map());
this.levelSuperMarkersMap=new Map();
this.levelSuperMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_STATE,new Map());
this.levelSuperMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_CITY,new Map());
this.levelFavoriteMarkersMap=new Map();
this.levelFavoriteMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_STATE,new Map());
this.levelFavoriteMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_CITY,new Map());
this.levelFavoriteMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_EVENT,new Map());
this.levelTopMarkersMap=new Map();
this.levelTopMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_STATE,new Map());
this.levelTopMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_CITY,new Map());
this.levelTopMarkersMap.put(mololo.map.ZoomLevelEnum.LEVEL_EVENT,new Map());
this.currentlyVisibleMarkers=new Set()
},getCityLocalizations:function(A){return this.cityMap.get(A)
},addCityLocalizations:function(A,C){var B=[];
C.forEach(function(D){B.push(new google.maps.LatLng(D.lt,D.ln))
},this);
this.cityMap.put(A,B)
},isPremiumMarker:function(A){return A.p!=undefined&&A.p>0
},_updateSearchResults:function(D,A,F,C){var G=mololo.map.MapUtils.getMapLevel(this.map);
var E=null;
var B=true;
if(G==F){if(this.updateCallback!=null&&this.updateCallback.onUpdateStart!=undefined){this.updateCallback.onUpdateStart(A,F)
}var E=this._processSuperEvents(A,G);
E=E.concat(this._processFavoriteEvents(A,G));
if(!mololo.map.SearchCriteriaUtils.isNoResults(A)){this._filterProcessedEvents(E.concat(this._processEvents(A,G)));
this._processInitialEvent()
}else{if(D.isSearchButtonPressed()){B=mololo.map.SearchCriteriaUtils.handleNoSearchResult(G)
}}if(B){mololo.globals.DISPATCHER.sendEvent(mololo.Action.SEARCHEND_ACTION,C);
mololo.globals.DISPATCHER.sendEvent(mololo.Action.TAGS_UPDATE_ACTION,new mololo.content.ContainerEvent(D.getWords()))
}if(this.updateCallback!=null&&this.updateCallback.onUpdateEnd!=undefined){this.updateCallback.onUpdateEnd(A,F)
}this.updateCallback=null
}},_processInitialEvent:function(){var D=mololo.globals.CONTEXT.getInitialEvent();
if(D!=null){mololo.globals.CONTEXT.setInitialEvent(null);
var A=this.getCurrentLevelMarkersMap().get(D.hId);
if(A==null){var C=this.getCurrentLevelMarkersMap().values();
for(var B=0;
B<C.length;
B++){if(C[B].isGrouped()&&C[B].containsSubMarker(D.hId)){A=C[B];
A.changeSubMarkerSelection(D.hId);
break
}}}mololo.globals.INFO_WINDOW.setSelectedMarker(A);
mololo.globals.INFO_WINDOW.maximize()
}},_processEvents:function(B,D){var A=B.marker;
A=mololo.ArrayUtils.convertToArrayIfSingleElement(A);
var C=[];
A.forEach(function(F,G,J){var H=(F.hId!=undefined)?F.hId:F.eId;
var E=null;
if(!this.isMarkerExist(H)){if(mololo.map.SearchCriteriaUtils.isSingleMarker(F)){E=(this.getCurrentLevelFavoriteMarkersMap().containsKey(H))?this.getCurrentLevelFavoriteMarkersMap().get(H):mololo.map.MarkerFactory.create(D,F,this.map,false);
if(!E.isFavoriteMarker()){this.addMarker(E);
C.push(E)
}}else{if(mololo.map.SearchCriteriaUtils.isEventGroupedMarker(F)){var I=[];
mololo.ArrayUtils.convertToArrayIfSingleElement(F.marker).forEach(function(L){if(this.getCurrentLevelFavoriteMarkersMap().containsKey(L.hId)){var K=mololo.map.MarkerFactory.create(D,L,this.map,true);
this.addMarker(K);
this.getCurrentLevelFavoriteMarkersMap().put(L.hId,K);
C.push(K)
}else{I.push(L)
}},this);
if(I.length>1){F.marker=I;
E=mololo.map.MarkerFactory.createGrouped(F,this.map)
}else{if(I.length==1){E=mololo.map.MarkerFactory.create(D,I[0],this.map,false)
}}if(E!=null){this.addMarker(E);
C.push(E)
}}else{log.error("Corrupted marker "+F)
}}}else{C.push(this.getMarkerById(H))
}},this);
return C
},_filterProcessedEvents:function(A){this.clearCurrentlyVisibleMarkers();
A.forEach(function(B){var C=!this._isZoomLevelFilterable()||this._filterMarker(B);
B.setVisible(C);
if(C){this.addCurrentlyVisibleMarkers(B)
}},this)
},_processSuperEvents:function(A,C){var B=[];
if(mololo.map.SearchCriteriaUtils.hasPremiumMarkers(A)){A.premium.marker.forEach(function(E){var D=mololo.map.MarkerFactory.create(C,E,this.map,false);
this.addSuperMarker(D);
if(mololo.map.MapUtils.isMarkerWithinBounds(D)){B.push(D)
}},this)
}return B
},_processFavoriteEvents:function(A,C){var B=[];
if(mololo.map.SearchCriteriaUtils.hasFavoriteMarkers(A)){A.favorite.marker.forEach(function(E){if(!this.getCurrentLevelFavoriteMarkersMap().containsKey(E.hId)){if(C!=mololo.map.ZoomLevelEnum.LEVEL_EVENT&&this.getCurrentLevelSuperMarkersMap().containsKey(E.hId)){var D=this.getCurrentLevelSuperMarkersMap().get(E.hId);
D.setFavoriteMarker(true);
this.getCurrentLevelFavoriteMarkersMap().put(E.hId,D)
}else{var D=mololo.map.MarkerFactory.create(C,E,this.map,true);
this.addFavoriteMarker(D);
if(mololo.map.MapUtils.isMarkerWithinBounds(D)){B.push(D)
}}}},this)
}return B
},_processTopEvents:function(A,B){if(mololo.map.SearchCriteriaUtils.hasTopMarkers(A)){A.top.marker.forEach(function(C){this.addTopMarker(mololo.map.MarkerFactory.create(B,C,this.map,false))
},this)
}},_localizeCity:function(C){var A=this.getCityLocalizations(C);
if(A==null||A.size()==0){var B=mololo.AjaxUtils.synchUrlRequest("/citySearch.html?cityName="+C).responseText.evalJSON();
if(B.count>0){var D=mololo.ArrayUtils.convertToArrayIfSingleElement(B.cities);
this.addCityLocalizations(C,D);
A=this.getCityLocalizations(C)
}}if(A==null){retult=[]
}return A
},update:function(E,D){mololo.HtmlUtils.showLoading();
var A=this;
var G=E.getZoomLevel();
var C=function(H){A._updateSearchResults(E,H.evalJSON(),G,D)
};
if(E.isCitySearchNeedsToBeProcessed()&&E.isSearchButtonPressed()){E.setCitySearchProcessed(true);
var F=this._localizeCity(E.getCity());
var B=(G==mololo.map.ZoomLevelEnum.LEVEL_EVENT)?(mololo.map.MapUtils.retrieveCoordinatesWithinBounds(F,E.getBounds())):([]);
if(B.length>0){mololo.AjaxUtils.asynchUrlRequest(E.toUrl(),C)
}else{if(F==null||F.length==0){mololo.WindowUtils.alert(mololo.msg.noCityFound,function(H){return true
})
}else{if(F.length>1){mololo.map.MapUtils.showAllCountry()
}else{mololo.map.MapUtils.centerMap(F[0],mololo.map.ZoomLevelEnum.LEVEL_EVENT)
}}}}else{mololo.AjaxUtils.asynchUrlRequest(E.toUrl(),C)
}},clearAndUpdate:function(A){this.removeAllMarkers();
this.update(A)
},addMarker:function(A,B){if(B==undefined||B){this.getCurrentLevelMarkersMap().put(A.getId(),A);
if(A.isGrouped()){this.groupedMarkers.push(A)
}}this._addMarkerToMap(A)
},addSuperMarker:function(A,B){if(B==undefined||B){this.getCurrentLevelSuperMarkersMap().put(A.getId(),A)
}this._addMarkerToMap(A)
},addFavoriteMarker:function(A,B){if(B==undefined||B){this.getCurrentLevelFavoriteMarkersMap().put(A.getId(),A)
}this._addMarkerToMap(A)
},addTopMarker:function(A,B){if(B==undefined||B){this.getCurrentLevelTopMarkersMap().put(A.getId(),A)
}this._addMarkerToMap(A)
},_addMarkerToMap:function(A){this.markerManager.addMarker(A.getGMarker(),A.getZoomLevel().getMinGoogleZoom(),A.getZoomLevel().getMaxGoogleZoom())
},_isMarkerFilterable:function(A){return true
},_isZoomLevelFilterable:function(){return true
},clearCurrentlyVisibleMarkers:function(){this.currentlyVisibleMarkers.clear()
},getCurrentlyVisibleMarkers:function(){return this.currentlyVisibleMarkers.values()
},addCurrentlyVisibleMarkers:function(A){this.currentlyVisibleMarkers.add(A)
},setFilterChain:function(A){this.filterChain=A
},filterMarkers:function(){if(this._isZoomLevelFilterable()){var A=this.getCurrentLevelMarkersMap().values().concat(this.getCurrentLevelFavoriteMarkersMap().values());
if(this.getCurrentLevelSuperMarkersMap()!=null){A=A.concat(this.getCurrentLevelSuperMarkersMap().values())
}A.forEach(function(B){B.setVisible(this._filterMarker(B));
if(B.isVisible()&&mololo.map.MapUtils.isMarkerWithinBounds(B)){this.addCurrentlyVisibleMarkers(B)
}},this)
}},_filterMarker:function(A){return !this._isMarkerFilterable(A)||this.filterChain.filter(A)
},getMarkerById:function(D,C){if(C==undefined){C=this.currentLevel
}var A=this.getMarkersMapByLevel(C).get(D);
if(!A&&C==mololo.map.ZoomLevelEnum.LEVEL_EVENT){for(var B=0;
B<this.groupedMarkers.length;
B++){if(this.groupedMarkers[B].containsSubMarker(D)){A=this.groupedMarkers[B];
break
}}}return A
},openInfoWindowForAddEventMarker:function(){if(this.getAddEventMarker()!=null){mololo.globals.INFO_WINDOW.setSelectedMarker(this.getAddEventMarker());
mololo.globals.INFO_WINDOW.maximize()
}},openInfoWindowForMarker:function(F,E){var D=this.levelMarkersMap.get(mololo.map.ZoomLevelEnum.LEVEL_EVENT);
var A=null;
if(!D.containsKey(F)){var C=mololo.AjaxUtils.synchUrlRequest("/search.html?findEvent=findEvent&hashId="+F).responseText.evalJSON();
if(C.dane!=undefined){A=mololo.map.MarkerFactory.create(mololo.map.ZoomLevelEnum.LEVEL_EVENT,C.dane,this.map,false)
}}else{A=D.get(F)
}if(A!=null){var B=this;
this.updateCallback={onUpdateEnd:function(H,I){var G=B.getMarkerById(A.getId());
if(!G){B.addMarker(A);
G=A
}mololo.globals.INFO_WINDOW.setSelectedMarker(G);
if(G.isGrouped()){G.changeSubMarkerSelection(F)
}if(E){mololo.globals.INFO_WINDOW.maximize()
}else{mololo.globals.INFO_WINDOW.open()
}}};
mololo.globals.INFO_WINDOW.savePosition();
mololo.map.MapUtils.zoomToMarker(A,mololo.map.ZoomLevelEnum.LEVEL_EVENT);
return true
}return false
},changeMarkerIcon:function(A,C){var B=A.getGMarker();
var D=B.getLatLng();
this.markerManager.removeMarker(B);
A.setCategoryCode(C);
A.setIcon(mololo.map.MarkerFactory.createIcon(A));
A.setGMarker(mololo.map.MarkerFactory.createGMarker(A.getZoomLevel(),A.isSuperMarker(),D,A.getMarkerOptions()));
this.addMarker(A,false)
},isMarkerExist:function(A){return this.getCurrentLevelMarkersMap().containsKey(A)
},addMarkers:function(A){A.forEach(function(B,C,D){this.addMarker(B)
},this)
},refreshMarkers:function(){this.markerManager.refresh();
this.filterMarkers()
},removeAddEventMarker:function(){if(this.addEventMarker!=null){this.markerManager.removeMarker(this.addEventMarker.getGMarker());
mololo.globals.INFO_WINDOW.close();
this.clearAddEventMarker()
}},removeAllMarkers:function(){this._initMarkersMap();
this.markerManager.clearMarkers()
},getMap:function(){return this.map
},getGroupedMarkers:function(){return this.groupedMarkers
},getCurrentLevelMarkersMap:function(){return this.levelMarkersMap.get(this.currentLevel)
},getCurrentLevelSuperMarkersMap:function(){return this.levelSuperMarkersMap.get(this.currentLevel)
},getCurrentLevelFavoriteMarkersMap:function(){return this.levelFavoriteMarkersMap.get(this.currentLevel)
},getCurrentLevelTopMarkersMap:function(){return this.levelTopMarkersMap.get(this.currentLevel)
},getMarkersMapByLevel:function(A){return this.levelMarkersMap.get(A)
},getMapViewMode:function(){return this.mapViewMode
},getAddEventMarker:function(){return this.addEventMarker
},setMapCurrentLevel:function(A){this.currentLevel=A
},clearAddEventMarker:function(){this.addEventMarker=null
},onMarkerClick:function(B){var A=B.getMarker();
if(log.isDebugEnabled()){log.debug("marker clicked "+A.getId())
}},onStateMarkerClick:function(C){var A=C.getMarker();
var B=C.getGMarker();
if(log.isDebugEnabled()){log.debug("state marker clicked "+A.getId())
}mololo.map.MapUtils.zoomToMarker(A,mololo.map.ZoomLevelEnum.LEVEL_CITY)
},onCityMarkerClick:function(B){var A=B.getMarker();
if(log.isDebugEnabled()){log.debug("city marker clicked "+A.getId())
}mololo.map.MapUtils.zoomToMarker(A,mololo.map.ZoomLevelEnum.LEVEL_EVENT)
},onSuperMarkerClick:function(A){mololo.globals.INFO_WINDOW.setSelectedMarker(A.getMarker());
mololo.globals.INFO_WINDOW.open()
},onFavoriteMarkerClick:function(A){mololo.globals.INFO_WINDOW.setSelectedMarker(A.getMarker());
mololo.globals.INFO_WINDOW.open()
},onEventMarkerClick:function(B){var A=B.getMarker();
mololo.globals.INFO_WINDOW.setSelectedMarker(A);
mololo.globals.INFO_WINDOW.open();
if(log.isDebugEnabled()){log.debug("event marker clicked "+A.getId())
}},onMarkerDblClick:function(B){var A=B.getGMarker();
if(log.isDebugEnabled()){log.debug("double click: "+B.getMarker().getTitle())
}},onMarkerCreate:function(A){if(log.isDebugEnabled()){log.debug("marker added : "+A.getMarker().getTitle())
}},onMarkerRemove:function(A){if(log.isDebugEnabled()){log.debug("marker removed : "+A.getMarker().getTitle())
}},onInfoWindowEventLinkClick:function(B){var A=mololo.globals.INFO_WINDOW.getSelectedMarker();
if(A.isGrouped()){A.changeSubMarkerSelection(B.getSubMarkerHashId())
}mololo.globals.INFO_WINDOW.maximize()
},onSearchStart:function(){mololo.globals.INFO_WINDOW.close();
mololo.map.SearchCriteriaUtils.updateSearchCriteria();
mololo.globals.CRITERIA.setSearchButtonPressed(true);
mololo.globals.CRITERIA.setCitySearchProcessed(false);
this.clearAndUpdate(mololo.globals.CRITERIA)
},onSearchEnd:function(A){mololo.globals.CRITERIA.setSearchButtonPressed(false);
mololo.HtmlUtils.hideLoading();
mololo.LayoutUtils.showSearchButton()
},onNewEventLocalizeCity:function(A){if(A.isSuspendMarkerSearch()){mololo.globals.CONTROLLERS.getMapController().disableMapMovement()
}if(A.isClearMarkers()){this.removeAllMarkers()
}this.removeAddEventMarker();
mololo.map.MapUtils.centerMapWithMaxZoom(A.getLatLng());
this.addEventMarker=mololo.map.MarkerFactory.createNewEvent(mololo.map.ZoomLevelEnum.LEVEL_EVENT,A);
this.addMarker(this.addEventMarker,false);
mololo.globals.ICONS.scaleIcons()
},onLocalizeCity:function(A){mololo.map.MapUtils.centerMap(A.getLatLng(),mololo.map.ZoomLevelEnum.LEVEL_EVENT);
if(A.isSuspendMarkerSearch()){mololo.globals.CONTROLLERS.getMapController().disableMapMovement()
}if(A.isClearMarkers()){this.removeAllMarkers()
}else{mololo.map.SearchCriteriaUtils.updateSearchCriteria();
this.update(mololo.globals.CRITERIA)
}},onNewEventCategoryChange:function(A){if(this.addEventMarker!=null){this.changeMarkerIcon(this.addEventMarker,A.getMainCategoryCode())
}},onNewsletterInit:function(C){if(GBrowserIsCompatible()){if(this.mapViewMode==mololo.map.MapViewEnum.REGULAR||this.mapViewMode==mololo.map.MapViewEnum.PROFILE){mololo.globals.INFO_WINDOW.close();
this.removeAllMarkers()
}else{if(this.mapViewMode==mololo.map.MapViewEnum.REGISTER){mololo.globals.CONTROLLERS.getMapController().enableMapMovement();
this.removeAddEventMarker()
}}this.mapViewMode=mololo.map.MapViewEnum.NEWSLETTER;
var D=C.getLatitude();
var B=C.getLongitude();
var A=new google.maps.LatLng(D,B);
mololo.globals.MAP.setCenter(A);
mololo.globals.MAP.setZoom(C.getZoom())
}},onNewsletterView:function(C){if(GBrowserIsCompatible()){var D=C.getLatitude();
var B=C.getLongitude();
var A=new google.maps.LatLng(D,B);
mololo.globals.MAP.setCenter(A);
mololo.globals.MAP.setZoom(C.getZoom())
}},onContentChanged:function(A){if(A.getUrl()!=null&&A.getUrl().endsWith("rejestruj.html")){if(this.mapViewMode!=mololo.map.MapViewEnum.REGISTER){if(this.mapViewMode==mololo.map.MapViewEnum.REGULAR||this.mapViewMode==mololo.map.MapViewEnum.PROFILE){this.removeAllMarkers()
}mololo.globals.CONTROLLERS.getMapController().disableMapMovement();
mololo.globals.INFO_WINDOW.close();
this.mapViewMode=mololo.map.MapViewEnum.REGISTER
}}else{if(A.getUrl()!=null&&!A.getUrl().endsWith("sentnewsletter.html")&&A.getUrl().endsWith("newsletter.html")){if(this.mapViewMode!=mololo.map.MapViewEnum.NEWSLETTER){if(this.mapViewMode==mololo.map.MapViewEnum.REGULAR||this.mapViewMode==mololo.map.MapViewEnum.PROFILE){mololo.globals.INFO_WINDOW.close();
this.removeAllMarkers()
}else{if(this.mapViewMode==mololo.map.MapViewEnum.REGISTER){mololo.globals.CONTROLLERS.getMapController().enableMapMovement();
this.removeAddEventMarker()
}}this.mapViewMode=mololo.map.MapViewEnum.NEWSLETTER
}}else{if(A.getUrl()!=null&&(A.getUrl().endsWith("profil.html")||A.getUrl().endsWith("selectedUser.html")||A.getUrl().endsWith("sentnewsletter.html")||A.getUrl().endsWith("profile_forum.html"))){if(this.mapViewMode!=mololo.map.MapViewEnum.PROFILE){if(this.mapViewMode==mololo.map.MapViewEnum.REGISTER){mololo.globals.CONTROLLERS.getMapController().enableMapMovement();
this.removeAddEventMarker()
}this.mapViewMode=mololo.map.MapViewEnum.PROFILE
}mololo.globals.CRITERIA.updateMapCriteria(mololo.globals.MAP);
this.update(mololo.globals.CRITERIA,new mololo.map.MapControllerEvent(null,null,null,null,null,null,null,this,mololo.globals.MAP));
mololo.globals.ICONS.scaleIcons()
}else{if(this.mapViewMode!=mololo.map.MapViewEnum.REGULAR){if(this.mapViewMode==mololo.map.MapViewEnum.REGISTER){mololo.globals.CONTROLLERS.getMapController().enableMapMovement();
this.removeAddEventMarker()
}mololo.globals.CRITERIA.updateMapCriteria(mololo.globals.MAP);
this.update(mololo.globals.CRITERIA,new mololo.map.MapControllerEvent(null,null,null,null,null,null,null,this,mololo.globals.MAP));
this.mapViewMode=mololo.map.MapViewEnum.REGULAR;
mololo.globals.ICONS.scaleIcons()
}}}}},onFilterEvents:function(A){this.setFilterChain(A.getFilterChain());
this.filterMarkers()
}});