Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private function showMap(e:Event):void
- {
- if ( StageWebView.isSupported ) {
- isMapState = true;
- if ( web == null && dcList && dcList.length > 0 ) {
- web = new StageWebView( true );
- var p:Point = localToGlobal( new Point( 0, 150 ) );
- web.viewPort = new Rectangle( p.x, p.y, Starling.current.nativeStage.stageWidth,
- Starling.current.nativeStage.stageHeight-150);
- web.stage = Starling.current.nativeStage;
- var html:String = buildPage( dcList );
- web.loadString( html );
- web.addEventListener(LocationChangeEvent.LOCATION_CHANGING, dcTapHandler );
- }
- }
- }
- private function dcTapHandler(e:LocationChangeEvent):void
- {
- var dcId:String = e.location.split("DC_ID:")[1];
- if ( web != null ) {
- web.dispose();
- web = null;
- }
- for each ( var dc:DillerCenterVO in dcList ) {
- if ( dc.id == dcId ) {
- dispatchEventWith( DC_SELECTED, true, dc );
- break;
- }
- }
- }
- private var coords:Array = [
- "lat: 55.756583, lng: 37.803654",
- "lat: 55.715766, lng: 37.572568",
- "lat: 55.787992, lng: 37.600260",
- "lat: 55.737963, lng: 37.637359",
- "lat: 55.740673, lng: 37.579587"
- ];
- private function buildPage(list:Vector.<DillerCenterVO>):String {
- var counter:uint = 0;
- var htmlString:String = '<!DOCTYPE html><html><head>\r'+
- '<meta name="viewport" content="initial-scale=1.0, user-scalable=no"><meta charset="utf-8">\r'+
- '<style>html, body { height: 100%; margin: 0;padding: 0; } #map { height: 100%; }</style>\r'+
- '</head><body><div id="map"></div><script>\r' +
- 'var gMap;\r' +
- 'function initMap() {\r' +
- 'gMap = new google.maps.Map(document.getElementById("map"), {\r' +
- 'zoom: 11,\r' +
- 'center: {lat: 55.7551465, lng: 37.6558977}\r' +
- '});\r' +
- 'var image = "http://out.stlservice.ru/mappos.png";\r' +
- 'var centerMarker = new google.maps.Marker({\r' +
- 'position: {lat: 55.7551465, lng: 37.6558977},\r' +
- 'map: gMap,\r' +
- 'icon: image\r' +
- '});\r';
- for each ( var dc:DillerCenterVO in list ) {
- htmlString += 'var m'+counter.toString()+' = new google.maps.Marker({\r' +
- 'position: {'+coords[counter]+'},\r' +
- 'map: gMap,\r' +
- 'label: "' + dc.name +'",\r' +
- 'icon: "http://out.stlservice.ru/dcpos.png" });\r' +
- 'm' + counter.toString() + '.addListener("click", function (){window.location.href = "DC_ID:' + dc.id + '"});\r';
- counter++;
- }
- htmlString += '}\r';
- htmlString += '</script><script async defer src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBZBFd1TM2LKrHy-4WDqtZWyvZMCfSgNoE&signed_in=true&callback=initMap"></script>\r'+
- '</body></html>\r';
- return htmlString;
- }
Add Comment
Please, Sign In to add comment