Section 1
//dataLoader (us.amung.maps.dataLoader)
package us.amung.maps {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
import flash.filters.*;
import flash.net.*;
import flash.system.*;
public class dataLoader extends Sprite {
var datLdr:URLLoader;
var watchdog:uint;// = 0
var watchdogLimit:uint;// = 5
var urlInUse:String;
public function dataLoader():void{
watchdog = 0;
watchdogLimit = 5;
datLdr = new URLLoader();
super();
}
private function dataLoadedHandler(_arg1:Event):void{
var loc_data:ByteArray;
var null_data:ByteArray;
var e = _arg1;
loc_data = datLdr.data;
loc_data.endian = Endian.LITTLE_ENDIAN;
try {
loc_data.uncompress();
} catch(e:Error) {
};
if (loc_data.length <= 0){
if (watchdog <= watchdogLimit){
loadData();
} else {
null_data = new ByteArray();
null_data.writeByte(0);
root.dataParser(null_data);
};
} else {
root.dataParser(loc_data);
};
}
public function getUrl(_arg1:String):void{
urlInUse = _arg1;
loadData();
}
private function ioError(_arg1:Event):void{
var _local2:ByteArray;
if (watchdog <= watchdogLimit){
loadData();
} else {
_local2 = new ByteArray();
_local2.writeByte(0);
root.dataParser(_local2);
};
}
private function loadData():void{
watchdog++;
datLdr.dataFormat = URLLoaderDataFormat.BINARY;
datLdr.addEventListener(Event.COMPLETE, dataLoadedHandler);
datLdr.addEventListener(IOErrorEvent.IO_ERROR, ioError);
datLdr.load(new URLRequest(urlInUse));
}
}
}//package us.amung.maps
Section 2
//mapBackground (us.amung.maps.mapBackground)
package us.amung.maps {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.system.*;
public class mapBackground extends Sprite {
var watchdog:uint;// = 0
var image:Bitmap;
var baseURL:String;
var mapUnderLoad:String;
public function mapBackground(_arg1:String):void{
watchdog = 0;
super();
this.x = 0;
this.y = 0;
baseURL = _arg1;
image = new Bitmap();
this.addChild(image);
}
private function ldrComplete(_arg1:Event):void{
loadBitmapData(Bitmap(_arg1.target.content).bitmapData);
}
public function getBitmapData():BitmapData{
return (this.image.bitmapData);
}
private function ioError(_arg1:Event):void{
if (watchdog < 5){
loadMap(mapUnderLoad);
};
}
public function loadMap(_arg1:String):void{
var _local2:String;
var _local3:LoaderContext;
var _local4:Loader;
watchdog++;
mapUnderLoad = _arg1;
_local2 = ".jpg";
if ((((_arg1.indexOf(".png") > 0)) || ((_arg1.indexOf(".gif") > 0)))){
_local2 = "";
};
_local3 = new LoaderContext();
_local3.checkPolicyFile = true;
_local4 = new Loader();
_local4.contentLoaderInfo.addEventListener(Event.COMPLETE, ldrComplete);
_local4.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioError);
_local4.load(new URLRequest((((baseURL + "mapbacks/") + _arg1) + _local2)), _local3);
}
public function resizeHandler(_arg1:Event=null):void{
this.image.width = stage.stageWidth;
this.image.height = stage.stageHeight;
}
public function loadBitmapData(_arg1:BitmapData):void{
this.image.bitmapData = _arg1;
resizeHandler();
}
}
}//package us.amung.maps
Section 3
//mapDialog (us.amung.maps.mapDialog)
package us.amung.maps {
import flash.display.*;
import flash.text.*;
public class mapDialog extends Sprite {
var diagtext:TextField;
public function mapDialog(_arg1:Number=-1):void{
var _local2:Number;
var _local3:TextFormat;
diagtext = new TextField();
super();
_local2 = 0xFFFFFF;
if (_arg1 != -1){
_local2 = _arg1;
};
_local3 = new TextFormat("Arial", 10.5, _local2);
_local3.align = TextFormatAlign.RIGHT;
_local3.italic = true;
diagtext.defaultTextFormat = _local3;
diagtext.text = "No Visitors to Display";
diagtext.width = 130;
this.addChild(diagtext);
this.visible = false;
}
public function hide():void{
this.visible = false;
this.graphics.clear();
this.diagtext.text = "";
}
public function setText(_arg1:String):void{
diagtext.text = _arg1;
}
public function getText():String{
return (diagtext.text);
}
public function resize():void{
this.diagtext.width = stage.stageWidth;
}
public function show(_arg1:String):void{
this.diagtext.text = _arg1;
this.diagtext.x = 0;
this.diagtext.y = 0;
this.x = 0;
this.y = 0;
this.visible = true;
}
}
}//package us.amung.maps
Section 4
//mapPoint (us.amung.maps.mapPoint)
package us.amung.maps {
import flash.events.*;
import flash.display.*;
import flash.filters.*;
import flash.net.*;
public class mapPoint extends Sprite {
private var filtStrength:Number;// = 2
private var dec:Boolean;// = false
private var blinkFilt:GradientGlowFilter;
private var showFlag:Boolean;// = true
private var isoCode:String;// = ""
private var fLoader:Loader;
private var count:Number;// = 0
private var ptImg:Bitmap;
public var actStatus:Boolean;
private var region:String;// = ""
private var actFreq:uint;// = 0
private var tempText:String;
private var msArea:Sprite;
private var flagURL:String;
private var blinkOn:Boolean;// = false
private var city:String;// = ""
private var outline:GradientGlowFilter;
private var pulseGlowFilt:GradientGlowFilter;
private var long:Number;
public var freq:uint;// = 0
private var country:String;// = ""
private var filtAlpha:Number;// = 0
private var lat:Number;
private var flagImg:BitmapData;
private var tempActive:Boolean;// = false
public function mapPoint(_arg1:Array, _arg2:BitmapData, _arg3:uint, _arg4:Boolean, _arg5:String, _arg6:Number, _arg7:String, _arg8:String, _arg9:String, _arg10:String, _arg11:uint, _arg12:Boolean, _arg13:Number, _arg14:Number):void{
freq = 0;
actFreq = 0;
isoCode = "";
city = "";
region = "";
country = "";
tempActive = false;
count = 0;
msArea = new Sprite();
outline = new GradientGlowFilter();
pulseGlowFilt = new GradientGlowFilter();
blinkFilt = new GradientGlowFilter();
blinkOn = false;
filtStrength = 2;
filtAlpha = 0;
dec = false;
fLoader = new Loader();
showFlag = true;
super();
lat = _arg13;
long = _arg14;
translatePt(_arg1[0], _arg1[1]);
city = _arg7;
region = _arg8;
country = _arg9;
isoCode = _arg10;
this.name = ((lat + "-") + long);
if (_arg11 > 0){
actStatus = true;
} else {
actStatus = false;
};
freq = _arg3;
actFreq = _arg11;
ptImg = new Bitmap(_arg2);
ptImg.scaleX = (_arg6 / ptImg.width);
ptImg.scaleY = ptImg.scaleX;
this.addEventListener(MouseEvent.MOUSE_OVER, ptMouseOver);
this.addEventListener(MouseEvent.MOUSE_OUT, ptMouseOut);
addChild(msArea);
outline.distance = 0;
outline.angle = 0;
outline.colors = [0, 0];
outline.ratios = [0, 0xFF];
outline.alphas = [0, 0.45];
outline.blurX = 2;
outline.blurY = 2;
outline.strength = 1;
outline.quality = BitmapFilterQuality.HIGH;
outline.type = BitmapFilterType.OUTER;
pulseGlowFilt.distance = 0;
pulseGlowFilt.angle = 0;
pulseGlowFilt.colors = [0, 0xEEEEEE];
pulseGlowFilt.ratios = [0, 75];
pulseGlowFilt.blurX = 3;
pulseGlowFilt.blurY = 3;
pulseGlowFilt.strength = 3;
pulseGlowFilt.quality = BitmapFilterQuality.HIGH;
pulseGlowFilt.type = BitmapFilterType.OUTER;
blinkFilt.distance = 0;
blinkFilt.angle = 180;
blinkFilt.colors = [0, 0xCCCCCC];
blinkFilt.ratios = [0, 0xFF];
blinkFilt.alphas = [0, 1];
blinkFilt.blurX = 0;
blinkFilt.blurY = 0;
blinkFilt.strength = 0.9;
blinkFilt.quality = BitmapFilterQuality.HIGH;
blinkFilt.type = BitmapFilterType.INNER;
drawPt();
if (_arg4){
triggerRipple();
};
setBlackOutline();
if (_arg12){
this.alpha = 0.4;
};
this.buttonMode = true;
}
public function setGlowType(_arg1:uint):void{
if (_arg1 == 1){
pulseGlow();
} else {
if (_arg1 == 0){
setStaticGlow();
} else {
blink();
};
};
}
private function triggerRipple():void{
var _local1:Sprite;
_local1 = new Sprite();
_local1.name = "ripple";
drawRing(_local1, 15, 268435440, 0.9, 0.5);
msArea.addChild(_local1);
count = 0;
this.addEventListener(Event.ENTER_FRAME, rippleIn);
}
public function setImg(_arg1:BitmapData):void{
ptImg.bitmapData = _arg1;
}
public function getActive():uint{
return (actFreq);
}
private function setStaticGlow():void{
outline.colors = [0, 0xFFFFFF];
outline.strength = 4;
ptImg.filters = [outline];
}
private function blink():void{
if (blinkOn){
ptImg.filters = [outline];
blinkOn = false;
} else {
ptImg.filters = [outline, blinkFilt];
blinkOn = true;
};
}
private function rippleIn(_arg1:Event):void{
var _local2:Sprite;
msArea.getChildByName("ripple").scaleX = (msArea.getChildByName("ripple").scaleX + 0.6);
msArea.getChildByName("ripple").scaleY = (msArea.getChildByName("ripple").scaleY + 0.6);
msArea.getChildByName("ripple").alpha = (msArea.getChildByName("ripple").alpha - 0.12);
if (count == 12){
_local2 = new Sprite();
_local2.name = "ripple1";
drawRing(_local2, 10, 268435440, 0.9, 0.5);
msArea.addChild(_local2);
} else {
if (count > 12){
msArea.getChildByName("ripple1").scaleX = (msArea.getChildByName("ripple1").scaleX + 0.6);
msArea.getChildByName("ripple1").scaleY = (msArea.getChildByName("ripple1").scaleY + 0.6);
msArea.getChildByName("ripple1").alpha = (msArea.getChildByName("ripple1").alpha - 0.12);
if (msArea.getChildByName("ripple1").alpha <= 0){
this.removeEventListener(Event.ENTER_FRAME, rippleIn);
msArea.removeChild(msArea.getChildByName("ripple"));
msArea.removeChild(msArea.getChildByName("ripple1"));
tempActive = true;
ptMouseOut(_arg1);
this.addEventListener(MouseEvent.MOUSE_OVER, ptMouseOver);
this.addEventListener(MouseEvent.MOUSE_OUT, ptMouseOut);
};
};
};
count++;
}
public function updateToActive(_arg1:uint, _arg2:uint, _arg3:Boolean):void{
this.actStatus = true;
this.freq = _arg1;
this.actFreq = _arg2;
this.alpha = 1;
this.parent.parent.getChildByName("activeLayer").addChild(this);
if (_arg3){
triggerRipple();
};
}
public function drawPt():void{
ptImg.x = (-1 * (ptImg.width / 2));
ptImg.y = (-1 * (ptImg.height / 2));
msArea.addChild(ptImg);
ptImg.filters = [outline];
}
private function ptMouseOver(_arg1:Event):void{
var _local2:GradientGlowFilter;
tempActive = actStatus;
actStatus = false;
root.onPinRollOver(this);
_local2 = new GradientGlowFilter();
_local2.distance = 0;
_local2.angle = 180;
_local2.colors = [0, 0xFFFFFF];
_local2.ratios = [0, 0xFF];
_local2.alphas = [0, 0.65];
_local2.blurX = 0;
_local2.blurY = 0;
_local2.strength = 1;
_local2.quality = BitmapFilterQuality.HIGH;
_local2.type = BitmapFilterType.INNER;
ptImg.filters = [outline, _local2];
}
function drawRing(_arg1, _arg2:Number, _arg3:uint, _arg4:Number, _arg5:Number){
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
_local6 = 0;
_local7 = 0;
_local8 = Math.tan(((22.5 * Math.PI) / 180));
_arg1.graphics.lineStyle(_arg5, _arg3, _arg4);
_arg1.graphics.moveTo((_local6 + _arg2), _local7);
_local13 = 45;
while (_local13 <= 360) {
_local9 = (_arg2 * Math.cos(((_local13 * Math.PI) / 180)));
_local10 = (_arg2 * Math.sin(((_local13 * Math.PI) / 180)));
_local11 = (_local9 + ((_arg2 * _local8) * Math.cos((((_local13 - 90) * Math.PI) / 180))));
_local12 = (_local10 + ((_arg2 * _local8) * Math.sin((((_local13 - 90) * Math.PI) / 180))));
_arg1.graphics.curveTo((_local11 + _local6), (_local12 + _local7), (_local9 + _local6), (_local10 + _local7));
_local13 = (_local13 + 45);
};
_arg1.graphics.beginFill(0xFFFFFF, 0.35);
_arg1.graphics.drawCircle(0, 0, (_arg2 - 1));
_arg1.graphics.endFill();
}
public function getLocation(_arg1:Boolean=false):String{
var _local2:String;
var _local3:String;
var _local4:String;
_local2 = "";
_local3 = "";
_local4 = "";
if (city != "?"){
_local2 = city;
};
if ((((_arg1 == false)) && (!((region == "?"))))){
if (_local2 != ""){
_local3 = (", " + region);
} else {
_local3 = region;
};
};
if (country != "?"){
if (((!((_local2 == ""))) || (!((_local3 == ""))))){
if (!_arg1){
_local4 = ("\n" + country);
} else {
_local4 = (", " + country);
};
} else {
_local4 = country;
};
};
return (((_local2 + _local3) + _local4));
}
private function ptMouseOut(_arg1:Event):void{
root.onPinRollOut(this);
ptImg.filters = [outline];
actStatus = tempActive;
}
public function setBlackOutline():void{
outline.colors = [0, 0];
outline.strength = 2;
ptImg.filters = [outline];
}
private function flagLoadError(_arg1:Event):void{
}
private function pulseGlow():void{
if (dec){
filtAlpha = (filtAlpha - 0.09);
} else {
filtAlpha = (filtAlpha + 0.09);
};
pulseGlowFilt.alphas = [0, filtAlpha];
ptImg.filters = [outline, pulseGlowFilt];
if (filtAlpha >= 0.7){
dec = true;
} else {
if (filtAlpha <= 0){
dec = false;
};
};
}
private function flagLoad(_arg1:Event):void{
var _local2:Bitmap;
_local2 = Bitmap(_arg1.target.content);
flagImg = _local2.bitmapData;
if (showFlag){
root["flagTTImg"].bitmapData = flagImg;
root["flagTTImg"].x = ((root["tooltip"].width - _local2.width) / 2);
};
root["flagCache"][isoCode] = flagImg;
}
public function getISOCode():String{
return (isoCode);
}
public function updatetoHistorical():void{
this.actStatus = false;
this.actFreq = 0;
this.parent.parent.getChildByName("historicalLayer").addChild(this);
setBlackOutline();
}
public function translatePt(_arg1:Number, _arg2:Number):void{
this.x = ((_arg1 / 2) + Math.round(((_arg1 / 360) * this.long)));
this.y = ((_arg2 / 2) - Math.round(((_arg2 / 180) * this.lat)));
}
public function getFreq():uint{
return (freq);
}
}
}//package us.amung.maps
Section 5
//mapTooltip (us.amung.maps.mapTooltip)
package us.amung.maps {
import flash.events.*;
import flash.display.*;
import flash.text.*;
import flash.net.*;
public class mapTooltip extends Sprite {
var tiptext:TextField;
var en:Boolean;// = true
var back:Sprite;
public function mapTooltip():void{
var _local1:TextFormat;
tiptext = new TextField();
back = new Sprite();
en = true;
super();
this.addChild(back);
tiptext.multiline = true;
tiptext.wordWrap = true;
tiptext.x = 3;
tiptext.y = 2;
tiptext.text = " ";
tiptext.width = 135;
tiptext.autoSize = TextFieldAutoSize.LEFT;
_local1 = new TextFormat("Arial", 10, 0x333333);
_local1.align = TextFormatAlign.LEFT;
tiptext.defaultTextFormat = _local1;
back.addChild(tiptext);
this.visible = false;
}
public function hide():void{
this.visible = false;
}
public function enable():void{
en = true;
}
public function disable():void{
en = false;
}
public function show(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Number):void{
var _local5:Number;
var _local6:Number;
if (!en){
return;
};
this.tiptext.text = _arg1;
this.graphics.clear();
_local5 = (this.tiptext.textWidth + 9);
_local6 = Math.max(20, (this.tiptext.textHeight + 8));
back.graphics.clear();
back.graphics.lineStyle(1, 0, 0.2);
back.graphics.beginFill(0xFFFFFF, 0.8);
back.graphics.drawRect(0, 0, _local5, _local6);
back.graphics.endFill();
back.x = (back.y = 0);
if (((_local5 + 15) + stage.mouseX) > (stage.stageWidth - 20)){
this.x = ((stage.mouseX - _local5) - 5);
} else {
this.x = (stage.mouseX + 12);
};
if (((_local6 + 5) + stage.mouseY) > (stage.stageHeight - 5)){
this.y = (stage.mouseY - _local6);
} else {
this.y = (stage.mouseY + 6);
};
this.visible = true;
}
static function formatNumber(_arg1):String{
var _local2:String;
_local2 = (_arg1 + "");
if (_local2.length < 4){
return (_local2);
};
return (((formatNumber(_local2.slice(0, -3)) + ",") + _local2.slice(-3)));
}
}
}//package us.amung.maps
Section 6
//pointManager (us.amung.maps.pointManager)
package us.amung.maps {
public class pointManager {
public var arr:Object;
public var length:uint;
public function pointManager():void{
arr = new Object();
length = 0;
}
public function getKeys():Array{
var _local1:Array;
var _local2:uint;
var _local3:String;
_local1 = new Array();
_local2 = 0;
for (_local3 in arr) {
_local1[_local2] = _local3;
_local2++;
};
return (_local1);
}
public function removePoint(_arg1:String):uint{
arr[_arg1] = null;
length--;
return (length);
}
public function addPoint(_arg1:String, _arg2:mapPoint):uint{
arr[_arg1] = _arg2;
length++;
return (length);
}
public function clearAll():void{
var _local1:*;
var _local2:String;
for (_local2 in arr) {
_local1 = arr[_local2].parent;
_local1.removeChild(arr[_local2]);
arr[_local2] = null;
};
length = 0;
}
public function getPoint(_arg1):mapPoint{
if (arr[_arg1] != undefined){
return (arr[_arg1]);
};
return (null);
}
}
}//package us.amung.maps
Section 7
//wauLoader (us.amung.wauLoader)
package us.amung {
import flash.events.*;
import flash.display.*;
public class wauLoader extends Sprite {
var outer_ring:MovieClip;
var inner_ring:MovieClip;
var the_dude:MovieClip;
public function wauLoader():void{
outer_ring = new loader_outer_ring();
inner_ring = new loader_inner_ring();
the_dude = new loader_dude();
this.addEventListener(Event.ENTER_FRAME, spinHandler);
addChild(outer_ring);
addChild(inner_ring);
addChild(the_dude);
this.width = (this.height = 72);
}
private function spinHandler(_arg1:Event){
outer_ring.rotation = (outer_ring.rotation - 10);
inner_ring.rotation = (inner_ring.rotation + 5);
}
public function resizeHandler():void{
var _local1:Number;
var _local2:Number;
_local1 = stage.stageWidth;
_local2 = stage.stageHeight;
if (_local1 <= 200){
this.width = (this.height = 30);
} else {
this.width = (this.height = 66);
};
this.x = (_local1 / 2);
this.y = (_local2 / 2);
}
}
}//package us.amung
Section 8
//dashMap (dashMap)
package {
import us.amung.maps.*;
import flash.events.*;
import flash.display.*;
import flash.utils.*;
import flash.filters.*;
import flash.text.*;
import us.amung.*;
import flash.net.*;
import flash.system.*;
public class dashMap extends MovieClip {
var tooltip:mapTooltip;
var linkoutBase:String;
var watchdog:uint;// = 0
var linkEnable:Boolean;// = true
var linkLock:Boolean;// = false
var mapPtData:BitmapData;
var pinDisplayLimit:int;// = 1400
var mapsBaseURL:String;
var mapBack:mapBackground;
var statusTextColor:Number;// = 0
var pulseType:uint;// = 1
var historicalLayer:Sprite;
var imgURL:String;// = ""
var updateInterval:Number;// = 10000
var rippleCount:uint;// = 0
var siteId:String;// = ""
var interval:Number;
var version:String;// = "2.0d"
var stageThresholdH:uint;// = 80
var stageThresholdW:uint;// = 270
var pinDefault:String;// = "star-blue"
var rippleEn:Boolean;// = false
var ptManager:pointManager;
var devURL:String;// = ""
var pinStyle:String;
var timestamp:String;// = "0"
var tarWidth:Number;// = 8
var mapDefault:String;// = "natural"
var heatLayer:Sprite;
var rippleLimit:uint;// = 5
var softPulseLimit:uint;// = 25
var rippleIn:Boolean;// = false
var glowCount:uint;// = 0
var heatmode:Boolean;// = false
var infoDialog:mapDialog;
var dashmapLink:Boolean;// = true
var updateIntervalLimit:uint;// = 60000
var extendedMapData:Boolean;// = false
var mapStyle:String;
var keyA:Boolean;// = false
var noUpdates:uint;// = 0
var dataVersion:String;// = "c1"
var keyU:Boolean;// = false
var keyW:Boolean;// = false
var activeLayer:Sprite;
var strtbl:ByteArray;
public function dashMap():void{
var _local1:RegExp;
var _local2:String;
var _local3:Object;
var _local4:wauLoader;
rippleEn = false;
rippleIn = false;
rippleCount = 0;
updateIntervalLimit = 60000;
noUpdates = 0;
mapDefault = "natural";
pinDefault = "star-blue";
keyW = false;
keyA = false;
keyU = false;
watchdog = 0;
updateInterval = 10000;
statusTextColor = 0;
pinDisplayLimit = 1400;
stageThresholdW = 270;
stageThresholdH = 80;
devURL = "";
extendedMapData = false;
dataVersion = "c1";
version = "2.0d";
pulseType = 1;
softPulseLimit = 25;
rippleLimit = 5;
tarWidth = 8;
timestamp = "0";
linkEnable = true;
linkLock = false;
dashmapLink = true;
imgURL = "";
siteId = "";
glowCount = 0;
heatmode = false;
ptManager = new pointManager();
super();
_local1 = /http:\/\/([a-zA-Z]*)(\..*)*.amung.us\//i;
_local2 = String(this.loaderInfo.loaderURL);
_local3 = _local1.exec(_local2);
if (_local3 == null){
mapsBaseURL = "http://maps.amung.us/";
linkoutBase = "http://whos.amung.us/";
imgURL = "http://widgets.amung.us/";
} else {
if (String(_local3[2]) != "undefined"){
devURL = String(_local3[2]);
} else {
devURL = "";
};
mapsBaseURL = (("http://maps" + devURL) + ".amung.us/");
linkoutBase = (("http://whos" + devURL) + ".amung.us/");
imgURL = (("http://widgets" + devURL) + ".amung.us/");
};
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.addEventListener(Event.RESIZE, resizeHandler);
stage.addEventListener(MouseEvent.MOUSE_DOWN, urlLoad);
this.addEventListener(Event.ENTER_FRAME, dasGlow);
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyHandler);
stage.addEventListener(KeyboardEvent.KEY_UP, keyHandlerClear);
mapBack = new mapBackground(imgURL);
mapBack.name = "mapBackgroundImg";
addChild(mapBack);
mapBack.loadBitmapData(new loadingbackground(stage.stageWidth, stage.stageHeight));
_local4 = new wauLoader();
_local4.name = "loaderAni";
addChild(_local4);
_local4.resizeHandler();
initPinLayers();
tooltip = new mapTooltip();
tooltip.name = "tooltip";
infoDialog = new mapDialog(statusTextColor);
infoDialog.name = "infoDialog";
addChild(infoDialog);
infoDialog.resize();
this.addChildAt(tooltip, numChildren);
getFlashVars();
loadMapPoint(pinStyle);
mapBack.loadMap(mapStyle);
}
function initPinLayers():void{
var _local1:Sprite;
var _local2:Sprite;
_local1 = new Sprite();
_local1.name = "historicalLayer";
addChild(_local1);
_local2 = new Sprite();
_local2.name = "activeLayer";
addChild(_local2);
}
private function updateData(_arg1:String=undefined):void{
var _local2:String;
var _local3:dataLoader;
var _local4:uint;
_local2 = (((mapsBaseURL + "geolocs/") + siteId) + "/");
if (_arg1 != undefined){
_local2 = (_local2 + (_arg1 + "/"));
} else {
_local2 = (_local2 + (timestamp + "/"));
};
_local2 = (_local2 + (((dataVersion + "/") + version) + "/"));
_local3 = new dataLoader();
_local3.name = "dataLdr";
_local3.getUrl(_local2);
this.addChild(_local3);
noUpdates++;
if (noUpdates >= 3){
_local4 = (updateInterval + ((noUpdates - 3) * updateInterval));
clearInterval(interval);
if (_local4 >= updateIntervalLimit){
interval = setInterval(updateMap, updateIntervalLimit);
} else {
interval = setInterval(updateMap, _local4);
};
};
}
function onPtLoadComplete(_arg1:Event):void{
var keys:Array;
var i:uint;
var event = _arg1;
mapPtData = Bitmap(event.target.content).bitmapData;
if (ptManager.length == 0){
updateMap();
interval = setInterval(updateMap, updateInterval);
} else {
keys = ptManager.getKeys();
i = 0;
while (i < keys.length) {
ptManager.getPoint(keys[i]).setImg(mapPtData);
i = (i + 1);
};
};
try {
pinLdr = null;
} catch(error:Error) {
};
}
function dasGlow(_arg1:Event):void{
var _local2:uint;
var _local3:uint;
glowCount++;
if ((glowCount % 2)){
return;
};
activeLayer = getChildByName("activeLayer");
_local2 = activeLayer.numChildren;
if (_local2 > softPulseLimit){
if ((glowCount % 20)){
return;
};
pulseType = 3;
} else {
pulseType = 1;
};
_local3 = 0;
while (_local3 < _local2) {
if (activeLayer.getChildAt(_local3).actStatus){
activeLayer.getChildAt(_local3).setGlowType(pulseType);
};
_local3++;
};
}
function goHelp(_arg1:Event):void{
var _local2:String;
var _local3:URLRequest;
_local2 = (("http://help" + devURL) + ".amung.us/maps/");
_local3 = new URLRequest(_local2);
navigateToURL(_local3, "_self");
linkLock = true;
}
public function dataParser(_arg1:ByteArray):void{
var tmp_dat:ByteArray;
var strtbl_len:uint;
var a_freq:uint;
var h_freq:uint;
var lat:Number;
var long:Number;
var city:String;
var region:String;
var country:String;
var flags:uint;
var iso_code:String;
var loc_data = _arg1;
this.removeChild(getChildByName("dataLdr"));
historicalLayer = getChildByName("historicalLayer");
activeLayer = getChildByName("activeLayer");
heatLayer = getChildByName("heatLayer");
tmp_dat = new ByteArray();
rippleIn = true;
rippleCount = 0;
if (loc_data.length <= 1){
if (((!(heatmode)) && ((ptManager.length <= 0)))){
try {
removeChild(getChildByName("loaderAni"));
} catch(e:Error) {
};
infoDialog.show("No Visitors to Display");
};
return;
};
try {
loc_data.readBytes(tmp_dat, 0, 16);
timestamp = String(tmp_dat);
strtbl_len = loc_data.readUnsignedInt();
strtbl = new ByteArray();
loc_data.readBytes(strtbl, 0, strtbl_len);
} catch(e:Error) {
infoDialog.show("Data Error. Retrying...");
try {
removeChild(getChildByName("loaderAni"));
} catch(e:Error) {
};
return;
};
loc_data.position = ((16 + 4) + strtbl_len);
if (dataVersion == "e1"){
while (loc_data.bytesAvailable >= 31) {
a_freq = loc_data.readUnsignedInt();
h_freq = loc_data.readUnsignedInt();
lat = loc_data.readFloat();
long = loc_data.readFloat();
city = retrieve_string(loc_data.readUnsignedInt());
region = retrieve_string(loc_data.readUnsignedInt());
country = retrieve_string(loc_data.readUnsignedInt());
flags = loc_data.readUnsignedByte();
tmp_dat = new ByteArray();
loc_data.readBytes(tmp_dat, 0, 2);
iso_code = String(tmp_dat);
if (heatmode){
addHeatPoint([lat, long, h_freq]);
} else {
addPointToMap([lat, long, city, region, country, iso_code, flags, h_freq, a_freq]);
};
};
} else {
if (dataVersion == "c1"){
while (loc_data.bytesAvailable >= 17) {
a_freq = 1;
h_freq = 1;
lat = loc_data.readFloat();
long = loc_data.readFloat();
city = retrieve_string(loc_data.readUnsignedInt());
region = "?";
country = retrieve_string(loc_data.readUnsignedInt());
flags = loc_data.readUnsignedByte();
iso_code = "";
addPointToMap([lat, long, city, region, country, iso_code, flags, h_freq, a_freq]);
};
};
};
try {
removeChild(getChildByName("loaderAni"));
} catch(e:Error) {
};
if (((!(heatmode)) && ((ptManager.length == 0)))){
infoDialog.show("No Visitors to Display");
} else {
infoDialog.hide();
};
getChildByName("mapBackgroundImg").visible = true;
rippleEn = true;
}
public function onPinRollOver(_arg1:mapPoint):void{
tooltip.show(_arg1.getLocation(true), _arg1.getFreq(), _arg1.getActive(), _arg1.getISOCode());
}
private function loadMapBackground(_arg1:String):void{
mapBack.loadMap(_arg1);
}
function loadMapPoint(_arg1:String){
var _local2:LoaderContext;
var _local3:Loader;
pinStyle = _arg1;
_local2 = new LoaderContext();
_local2.checkPolicyFile = true;
_local3 = new Loader();
_local3.contentLoaderInfo.addEventListener(Event.COMPLETE, onPtLoadComplete);
_local3.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorPin);
_local3.load(new URLRequest((((imgURL + "mappoints/") + pinStyle) + ".png")), _local2);
}
function addPointToMap(_arg1:Array){
var _local2:uint;
var _local3:Sprite;
var _local4:String;
var _local5:Boolean;
var _local6:Boolean;
_local2 = _arg1[6];
if ((_local2 & 2) == 2){
_local5 = true;
} else {
_local5 = false;
};
if ((_local2 & 1) == 1){
_local6 = true;
_local3 = activeLayer;
} else {
_local6 = false;
_local3 = historicalLayer;
};
if (((!(rippleEn)) || ((rippleCount > rippleLimit)))){
rippleIn = false;
};
_local4 = ((String(_arg1[0]) + "-") + String(_arg1[1]));
if (ptManager.getPoint(_local4) != null){
if (_local6){
ptManager.getPoint(_local4).updateToActive(_arg1[7], _arg1[8], rippleIn);
rippleCount++;
} else {
ptManager.getPoint(_local4).updatetoHistorical();
};
} else {
ptManager.addPoint(_local4, new mapPoint([stage.stageWidth, stage.stageHeight], mapPtData, _arg1[7], rippleIn, mapsBaseURL, tarWidth, _arg1[2], _arg1[3], _arg1[4], _arg1[5].toLowerCase(), _arg1[8], _local5, _arg1[0], _arg1[1]));
_local3.addChild(ptManager.getPoint(_local4));
if (_local6){
rippleCount++;
};
};
}
function actionButtonMouseOver(_arg1:Event){
if (_arg1.target.alpha == 1){
return (false);
};
_arg1.target.alpha = 1;
return (true);
}
function urlLoad(_arg1:Event):void{
var request:URLRequest;
var targetUrl:String;
var event = _arg1;
if (((((keyW) && (keyA))) && (keyU))){
setInterval(function (){
infoDialog.hide();
}, 5000);
infoDialog.show(((("map: " + version) + " data: ") + dataVersion));
return;
};
if (((linkEnable) && (!(linkLock)))){
if (!dashmapLink){
targetUrl = (((linkoutBase + "stats/") + siteId) + "/");
} else {
targetUrl = (((linkoutBase + "stats/maps/") + siteId) + "/");
};
request = new URLRequest(targetUrl);
navigateToURL(request, "_self");
};
linkLock = false;
}
function keyHandlerClear(_arg1:Event):void{
if (_arg1.keyCode == 87){
keyW = false;
} else {
if (_arg1.keyCode == 65){
keyA = false;
} else {
if (_arg1.keyCode == 85){
keyU = false;
};
};
};
}
function loadHelp(_arg1:Event):void{
var _local2:String;
var _local3:URLRequest;
_local2 = "http://help.amung.us/maps/return/";
_local3 = new URLRequest(_local2);
navigateToURL(_local3, "_self");
}
function retrieve_string(_arg1:uint):String{
var _local2:uint;
var _local3:ByteArray;
_local2 = 0;
strtbl.position = _arg1;
_local2 = strtbl.readByte();
_local3 = new ByteArray();
strtbl.readBytes(_local3, 0, _local2);
return (String(_local3));
}
function actionButtonMouseOut(_arg1:Event){
if (_arg1.target.alpha == 0.5){
return (false);
};
_arg1.target.alpha = 0.5;
return (true);
}
function getFlashVars(){
var _local1:Object;
_local1 = LoaderInfo(this.root.loaderInfo).parameters;
siteId = String(_local1["wausitehash"]);
pinStyle = String(_local1["pin"]);
if (pinStyle == "undefined"){
pinStyle = pinDefault;
};
mapStyle = String(_local1["map"]);
if (mapStyle == "undefined"){
mapStyle = mapDefault;
};
if ((((((mapStyle == "heatmap")) || ((mapStyle == "heatback")))) || ((mapStyle == "heatmode")))){
mapStyle = "heatback";
heatmode = true;
};
linkEnable = true;
}
public function onPinRollOut(_arg1:mapPoint):void{
tooltip.hide();
}
function ioErrorPin(_arg1:Event):void{
if (watchdog < 5){
watchdog++;
loadMapPoint(pinDefault);
};
}
function updateMap():void{
if (ptManager.length > pinDisplayLimit){
infoDialog.show("Refreshing Map");
ptManager.clearAll();
rippleIn = false;
updateData("0");
} else {
updateData();
};
}
function keyHandler(_arg1:Event):void{
if (_arg1.keyCode == 87){
keyW = true;
} else {
if (_arg1.keyCode == 65){
keyA = true;
} else {
if (_arg1.keyCode == 85){
keyU = true;
};
};
};
}
private function resizeHandler(_arg1:Event=null){
var _local2:*;
var _local3:String;
mapBack.resizeHandler();
if ((((stage.stageWidth <= stageThresholdW)) || ((stage.stageHeight <= stageThresholdH)))){
tooltip.disable();
} else {
tooltip.enable();
};
_local2 = getChildByName("loaderAni");
if (_local2 != null){
_local2.resizeHandler();
};
for (_local3 in ptManager.arr) {
ptManager.getPoint(_local3).translatePt(stage.stageWidth, stage.stageHeight);
};
}
}
var _local1:* = Security.allowDomain("*");
return (_local1);
}//package
Section 9
//loader_dude (loader_dude)
package {
import flash.display.*;
public dynamic class loader_dude extends MovieClip {
}
}//package
Section 10
//loader_inner_ring (loader_inner_ring)
package {
import flash.display.*;
public dynamic class loader_inner_ring extends MovieClip {
}
}//package
Section 11
//loader_outer_ring (loader_outer_ring)
package {
import flash.display.*;
public dynamic class loader_outer_ring extends MovieClip {
}
}//package
Section 12
//loadingbackground (loadingbackground)
package {
import flash.display.*;
public dynamic class loadingbackground extends BitmapData {
public function loadingbackground(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 13
//thedude (thedude)
package {
import flash.display.*;
public dynamic class thedude extends MovieClip {
}
}//package