$estr = function() { return js.Boot.__string_rec(this,''); }
if(typeof js=='undefined') js = {}
js.FormHelper = function() { }
js.FormHelper.__name__ = ["js","FormHelper"];
js.FormHelper.pass = null;
js.FormHelper.initPass = function() {
js.FormHelper.pass = new js.PassHelper();
}
js.FormHelper.prototype.__class__ = js.FormHelper;
js.PassHelper = function(p) { if( p === $_ ) return; {
this.input = js.Lib.document.getElementById("regPass");
this.confirm = js.Lib.document.getElementById("regPass2");
this.text = js.Lib.document.getElementById("passComplexityText");
this.confirmText = js.Lib.document.getElementById("passConfirmText");
this.input.onchange = $closure(this,"onchange");
this.input.onkeyup = $closure(this,"onchange");
this.confirm.onchange = $closure(this,"onchangeconfirm");
this.confirm.onkeyup = $closure(this,"onchangeconfirm");
this.onchange(null);
this.onchangeconfirm(null);
}}
js.PassHelper.__name__ = ["js","PassHelper"];
js.PassHelper.prototype.complexity = null;
js.PassHelper.prototype.confirm = null;
js.PassHelper.prototype.confirmText = null;
js.PassHelper.prototype.input = null;
js.PassHelper.prototype.last = null;
js.PassHelper.prototype.onchange = function(e) {
if(this.input.value == this.last) return;
this.last = this.input.value;
this.updateComplexity(this.last);
this.updateDisplay();
}
js.PassHelper.prototype.onchangeconfirm = function(e) {
if(this.confirm.value.length == 0) {
this.confirmText.innerHTML = "";
return;
}
}
js.PassHelper.prototype.text = null;
js.PassHelper.prototype.updateComplexity = function(value) {
this.complexity = 0;
this.complexity += Std["int"](Math.min(value.length,11));
var a = new Array();
{
var _g1 = 0, _g = value.length;
while(_g1 < _g) {
var i = _g1++;
var c = value.charAt(i);
var found = false;
{
var _g2 = 0;
while(_g2 < a.length) {
var ac = a[_g2];
++_g2;
if(ac == c) found = true;
}
}
if(!found) {
this.complexity += 1;
a.push(c);
if(new EReg("[^A-Z0-9]","i").match(c)) this.complexity += 1;
}
}
}
if(new EReg("^[a-z]+$","").match(value) || new EReg("^[A-Z]+$","").match(value) || new EReg("^[0-9]+$","").match(value)) {
this.complexity -= 6;
this.complexity = Math.min(8,this.complexity);
}
else if(new EReg("^[a-z0-9]+$","").match(value) || new EReg("^[A-Z0-9]+$","").match(value) || new EReg("^[A-Za-z]+$","").match(value)) {
this.complexity -= 2;
this.complexity = Math.min(14,this.complexity);
}
this.complexity = Math.max(this.complexity,Math.min(10,value.length) / 2);
}
js.PassHelper.prototype.updateDisplay = function() {
if(this.input.value.length == 0) {
this.text.innerHTML = "";
return;
}
var pct = Std["int"]((Math.min(this.complexity,16) * 100) / 16);
this.text.innerHTML = "in";
if(pct < 20) this.text.innerHTML = "<img src='/gfx/design/pass_1.gif' alt='bad'/>";
else if(pct < 70) this.text.innerHTML = "<img src='/gfx/design/pass_2.gif' alt='bad'/>";
else if(pct < 100) this.text.innerHTML = "<img src='/gfx/design/pass_3.gif' alt='bad'/>";
else this.text.innerHTML = "<img src='/gfx/design/pass_4.gif' alt='bad'/>";
}
js.PassHelper.prototype.__class__ = js.PassHelper;
js.Block = function() { }
js.Block.__name__ = ["js","Block"];
js.Block.show = function(block) {
if(block == null) {
return false;
}
if(block.nodeName == "TR") block.style.display = "table-row";
else block.style.display = "block";
return false;
}
js.Block.showInline = function(block) {
if(block == null) {
return false;
}
block.style.display = "inline";
return false;
}
js.Block.hide = function(block) {
if(block == null) {
return false;
}
block.style.display = "none";
return false;
}
js.Block.isVisible = function(block) {
if(block == null) return false;
return (block.style.display != "none");
}
js.Block.getVisibility = function(block) {
if(block == null) return null;
return block.style.display;
}
js.Block.toggleVisibility = function(block) {
if(js.Block.isVisible(block)) return js.Block.hide(block);
else return js.Block.show(block);
}
js.Block.toggleVisibilityFromId = function(id) {
js.Block.toggleVisibility(js.Utils.getSection(id));
}
js.Block.updateOpacity = function(block,w3c_value) {
if(js.Lib.isIE) {
block.style.filter = ("alpha(opacity=" + Math.round(w3c_value * 100)) + ")";
block.style.opacity = w3c_value;
}
else block.style.opacity = w3c_value;
}
js.Block.prototype.__class__ = js.Block;
if(typeof haxe=='undefined') haxe = {}
haxe.Http = function(url) { if( url === $_ ) return; {
this.url = url;
this.headers = new Hash();
this.params = new Hash();
this.async = true;
}}
haxe.Http.__name__ = ["haxe","Http"];
haxe.Http.requestUrl = function(url) {
var h = new haxe.Http(url);
h.async = false;
var r = null;
h.onData = function(d) {
r = d;
}
h.onError = function(e) {
throw e;
}
h.request(false);
return r;
}
haxe.Http.prototype.async = null;
haxe.Http.prototype.headers = null;
haxe.Http.prototype.onData = function(data) {
null;
}
haxe.Http.prototype.onError = function(msg) {
null;
}
haxe.Http.prototype.onStatus = function(status) {
null;
}
haxe.Http.prototype.params = null;
haxe.Http.prototype.postData = null;
haxe.Http.prototype.request = function(post) {
var me = this;
var r = new js.XMLHttpRequest();
var onreadystatechange = function() {
if(r.readyState != 4) return;
var s = (function($this) {
var $r;
try {
$r = r.status;
}
catch( $e0 ) {
{
var e = $e0;
$r = null;
}
}
return $r;
}(this));
if(s == undefined) s = null;
if(s != null) me.onStatus(s);
if(s != null && s >= 200 && s < 400) me.onData(r.responseText);
else switch(s) {
case null:{
me.onError("Failed to connect or resolve host");
}break;
case 12029:{
me.onError("Failed to connect to host");
}break;
case 12007:{
me.onError("Unknown host");
}break;
default:{
me.onError("Http Error #" + r.status);
}break;
}
}
if(this.async) r.onreadystatechange = onreadystatechange;
var uri = this.postData;
if(uri != null) post = true;
else { var $it1 = this.params.keys();
while( $it1.hasNext() ) { var p = $it1.next();
{
if(uri == null) uri = "";
else uri += "&";
uri += (StringTools.urlDecode(p) + "=") + StringTools.urlEncode(this.params.get(p));
}
}}
try {
if(post) r.open("POST",this.url,this.async);
else if(uri != null) {
var question = this.url.split("?").length <= 1;
r.open("GET",(this.url + ((question?"?":"&"))) + uri,this.async);
uri = null;
}
else r.open("GET",this.url,this.async);
}
catch( $e2 ) {
{
var e = $e2;
{
this.onError(e.toString());
return;
}
}
}
if(this.headers.get("Content-Type") == null && post && this.postData == null) r.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
{ var $it3 = this.headers.keys();
while( $it3.hasNext() ) { var h = $it3.next();
r.setRequestHeader(h,this.headers.get(h));
}}
r.send(uri);
if(!this.async) onreadystatechange();
}
haxe.Http.prototype.setHeader = function(header,value) {
this.headers.set(header,value);
}
haxe.Http.prototype.setParameter = function(param,value) {
this.params.set(param,value);
}
haxe.Http.prototype.setPostData = function(data) {
this.postData = data;
}
haxe.Http.prototype.url = null;
haxe.Http.prototype.__class__ = haxe.Http;
List = function(p) { if( p === $_ ) return; {
this.length = 0;
}}
List.__name__ = ["List"];
List.prototype.add = function(item) {
var x = [item];
if(this.h == null) this.h = x;
else this.q[1] = x;
this.q = x;
this.length++;
}
List.prototype.clear = function() {
this.h = null;
this.q = null;
this.length = 0;
}
List.prototype.filter = function(f) {
var l2 = new List();
var l = this.h;
while(l != null) {
var v = l[0];
l = l[1];
if(f(v)) l2.add(v);
}
return l2;
}
List.prototype.first = function() {
return (this.h == null?null:this.h[0]);
}
List.prototype.h = null;
List.prototype.isEmpty = function() {
return (this.h == null);
}
List.prototype.iterator = function() {
return { h : this.h, hasNext : function() {
return (this.h != null);
}, next : function() {
if(this.h == null) return null;
var x = this.h[0];
this.h = this.h[1];
return x;
}}
}
List.prototype.join = function(sep) {
var s = new StringBuf();
var first = true;
var l = this.h;
while(l != null) {
if(first) first = false;
else s.b[s.b.length] = sep;
s.b[s.b.length] = l[0];
l = l[1];
}
return s.b.join("");
}
List.prototype.last = function() {
return (this.q == null?null:this.q[0]);
}
List.prototype.length = null;
List.prototype.map = function(f) {
var b = new List();
var l = this.h;
while(l != null) {
var v = l[0];
l = l[1];
b.add(f(v));
}
return b;
}
List.prototype.pop = function() {
if(this.h == null) return null;
var x = this.h[0];
this.h = this.h[1];
if(this.h == null) this.q = null;
this.length--;
return x;
}
List.prototype.push = function(item) {
var x = [item,this.h];
this.h = x;
if(this.q == null) this.q = x;
this.length++;
}
List.prototype.q = null;
List.prototype.remove = function(v) {
var prev = null;
var l = this.h;
while(l != null) {
if(l[0] == v) {
if(prev == null) this.h = l[1];
else prev[1] = l[1];
if(this.q == l) this.q = prev;
this.length--;
return true;
}
prev = l;
l = l[1];
}
return false;
}
List.prototype.toString = function() {
var s = new StringBuf();
var first = true;
var l = this.h;
s.b[s.b.length] = "{";
while(l != null) {
if(first) first = false;
else s.b[s.b.length] = ", ";
s.b[s.b.length] = Std.string(l[0]);
l = l[1];
}
s.b[s.b.length] = "}";
return s.b.join("");
}
List.prototype.__class__ = List;
haxe.Serializer = function(p) { if( p === $_ ) return; {
this.buf = new StringBuf();
this.cache = new Array();
this.useCache = haxe.Serializer.USE_CACHE;
this.useEnumIndex = haxe.Serializer.USE_ENUM_INDEX;
this.shash = new Hash();
this.scount = 0;
}}
haxe.Serializer.__name__ = ["haxe","Serializer"];
haxe.Serializer.run = function(v) {
var s = new haxe.Serializer();
s.serialize(v);
return s.toString();
}
haxe.Serializer.prototype.buf = null;
haxe.Serializer.prototype.cache = null;
haxe.Serializer.prototype.scount = null;
haxe.Serializer.prototype.serialize = function(v) {
var $e = (Type["typeof"](v));
switch( $e[1] ) {
case 0:
{
this.buf.add("n");
}break;
case 1:
{
if(v == 0) {
this.buf.add("z");
return;
}
this.buf.add("i");
this.buf.add(v);
}break;
case 2:
{
if(Math.isNaN(v)) this.buf.add("k");
else if(!Math.isFinite(v)) this.buf.add((v < 0?"m":"p"));
else {
this.buf.add("d");
this.buf.add(v);
}
}break;
case 3:
{
this.buf.add((v?"t":"f"));
}break;
case 6:
var c = $e[2];
{
if(c == String) {
this.serializeString(v);
return;
}
if(this.useCache && this.serializeRef(v)) return;
switch(c) {
case Array:{
var ucount = 0;
this.buf.add("a");
var l = v["length"];
{
var _g = 0;
while(_g < l) {
var i = _g++;
if(v[i] == null) ucount++;
else {
if(ucount > 0) {
if(ucount == 1) this.buf.add("n");
else {
this.buf.add("u");
this.buf.add(ucount);
}
ucount = 0;
}
this.serialize(v[i]);
}
}
}
if(ucount > 0) {
if(ucount == 1) this.buf.add("n");
else {
this.buf.add("u");
this.buf.add(ucount);
}
}
this.buf.add("h");
}break;
case List:{
this.buf.add("l");
var v1 = v;
{ var $it0 = v1.iterator();
while( $it0.hasNext() ) { var i = $it0.next();
this.serialize(i);
}}
this.buf.add("h");
}break;
case Date:{
var d = v;
this.buf.add("v");
this.buf.add(d.toString());
}break;
case Hash:{
this.buf.add("b");
var v1 = v;
{ var $it1 = v1.keys();
while( $it1.hasNext() ) { var k = $it1.next();
{
this.serializeString(k);
this.serialize(v1.get(k));
}
}}
this.buf.add("h");
}break;
case IntHash:{
this.buf.add("q");
var v1 = v;
{ var $it2 = v1.keys();
while( $it2.hasNext() ) { var k = $it2.next();
{
this.buf.add(":");
this.buf.add(k);
this.serialize(v1.get(k));
}
}}
this.buf.add("h");
}break;
case haxe.io.Bytes:{
var v1 = v;
var i = 0;
var max = v1.length - 2;
var chars = "";
var b64 = haxe.Serializer.BASE64;
while(i < max) {
var b1 = v1.b[i++];
var b2 = v1.b[i++];
var b3 = v1.b[i++];
chars += ((b64.charAt(b1 >> 2) + b64.charAt(((b1 << 4) | (b2 >> 4)) & 63)) + b64.charAt(((b2 << 2) | (b3 >> 6)) & 63)) + b64.charAt(b3 & 63);
}
if(i == max) {
var b1 = v1.b[i++];
var b2 = v1.b[i++];
chars += (b64.charAt(b1 >> 2) + b64.charAt(((b1 << 4) | (b2 >> 4)) & 63)) + b64.charAt((b2 << 2) & 63);
}
else if(i == max + 1) {
var b1 = v1.b[i++];
chars += b64.charAt(b1 >> 2) + b64.charAt((b1 << 4) & 63);
}
this.buf.add("s");
this.buf.add(chars.length);
this.buf.add(":");
this.buf.add(chars);
}break;
default:{
this.cache.pop();
this.buf.add("c");
this.serializeString(Type.getClassName(c));
this.cache.push(v);
this.serializeFields(v);
}break;
}
}break;
case 4:
{
if(this.useCache && this.serializeRef(v)) return;
this.buf.add("o");
this.serializeFields(v);
}break;
case 7:
var e = $e[2];
{
if(this.useCache && this.serializeRef(v)) return;
this.cache.pop();
this.buf.add((this.useEnumIndex?"j":"w"));
this.serializeString(Type.getEnumName(e));
if(this.useEnumIndex) {
this.buf.add(":");
this.buf.add(v[1]);
}
else this.serializeString(v[0]);
this.buf.add(":");
var l = v["length"];
this.buf.add(l - 2);
{
var _g = 2;
while(_g < l) {
var i = _g++;
this.serialize(v[i]);
}
}
this.cache.push(v);
}break;
case 5:
{
throw "Cannot serialize function";
}break;
default:{
throw "Cannot serialize " + Std.string(v);
}break;
}
}
haxe.Serializer.prototype.serializeException = function(e) {
this.buf.add("x");
this.serialize(e);
}
haxe.Serializer.prototype.serializeFields = function(v) {
{
var _g = 0, _g1 = Reflect.fields(v);
while(_g < _g1.length) {
var f = _g1[_g];
++_g;
this.serializeString(f);
this.serialize(Reflect.field(v,f));
}
}
this.buf.add("g");
}
haxe.Serializer.prototype.serializeRef = function(v) {
var vt = typeof(v);
{
var _g1 = 0, _g = this.cache.length;
while(_g1 < _g) {
var i = _g1++;
var ci = this.cache[i];
if(typeof(ci) == vt && ci == v) {
this.buf.add("r");
this.buf.add(i);
return true;
}
}
}
this.cache.push(v);
return false;
}
haxe.Serializer.prototype.serializeString = function(s) {
var x = this.shash.get(s);
if(x != null) {
this.buf.add("R");
this.buf.add(x);
return;
}
this.shash.set(s,this.scount++);
this.buf.add("y");
s = StringTools.urlEncode(s);
this.buf.add(s.length);
this.buf.add(":");
this.buf.add(s);
}
haxe.Serializer.prototype.shash = null;
haxe.Serializer.prototype.toString = function() {
return this.buf.b.join("");
}
haxe.Serializer.prototype.useCache = null;
haxe.Serializer.prototype.useEnumIndex = null;
haxe.Serializer.prototype.__class__ = haxe.Serializer;
if(typeof mt=='undefined') mt = {}
if(!mt.js) mt.js = {}
mt.js.Editor = function(name) { if( name === $_ ) return; {
this.name = name;
this.contentName = name + "_content";
this.config = { buttons : new List(), icons : new List(), iconsUrl : "", autoLink : true, uploadData : null, uploadColors : { bg : 0, fg : 16777215, fill : 32768}}
}}
mt.js.Editor.__name__ = ["mt","js","Editor"];
mt.js.Editor.getElementPosition = function(o) {
var ret = { x : 0, y : 0, width : o.clientWidth, height : o.clientHeight}
if(ret.width == 0) ret.width = o.offsetWidth;
if(ret.height == 0) ret.height = o.offsetHeight;
var p = o;
while(p != null) {
if(p.offsetParent != null) {
ret.x += p.offsetLeft - p.scrollLeft;
ret.y += p.offsetTop - p.scrollTop;
}
else {
ret.x += p.offsetLeft;
ret.y += p.offsetTop;
}
p = p.offsetParent;
}
return ret;
}
mt.js.Editor.prototype.config = null;
mt.js.Editor.prototype.contentName = null;
mt.js.Editor.prototype.execute = function(act) {
var act1 = haxe.Unserializer.run(act);
var $e = (act1);
switch( $e[1] ) {
case 0:
var tag = $e[2];
{
this.insert(tag);
}break;
case 1:
case 2:
var tag = $e[2];
{
this.quoteSelection(("[" + tag) + "]",("[/" + tag) + "]");
}break;
case 3:
var node = $e[4], text = $e[3], addr = $e[2];
{
var url = js.Lib.window.prompt(addr,"http://");
if(url == null || url.length == 0 || url == "http://") return false;
var comment = js.Lib.window.prompt(text,url);
if(comment.length == 0 || comment == url) this.insert(((((("[" + node) + "]") + url) + "[/") + node) + "]");
else this.insert(((((((("[" + node) + "=") + url) + "]") + comment) + "[/") + node) + "]");
}break;
case 4:
{
null;
}break;
}
return false;
}
mt.js.Editor.prototype.format = function(txt) {
if(txt == "" || txt == null) return "";
txt = StringTools.htmlEscape(txt);
txt = txt.split("\r\n").join("\n");
txt = txt.split("\r").join("\n");
txt = StringTools.trim(txt);
txt = txt.split("\\0")[0];
if(txt == null) return "";
if(this.config.autoLink) {
txt = new EReg("([^@=>\\]\"])(http://[a-zA-Z0-9/?;&=%_.#-]+)","g").replace(txt,"$1<a href=\"$2\">$2</a>");
txt = new EReg("^(http://[a-zA-Z0-9/?;&=%_.#-]+)","g").replace(txt,"<a href=\"$1\">$1</a>");
}
if(this.config.uploadData != null) txt = new EReg("@([A-Za-z0-9/_.]+)@","g").replace(txt,("<img src=\"" + this.config.uploadData.url) + "$1\"/>");
{ var $it0 = this.config.icons.iterator();
while( $it0.hasNext() ) { var i = $it0.next();
txt = this.formatAction(txt,i.act);
}}
{ var $it1 = this.config.buttons.iterator();
while( $it1.hasNext() ) { var b = $it1.next();
txt = this.formatAction(txt,b.act);
}}
txt = new EReg("<([a-z]+)></\\1>","i").replace(txt,"");
var schar = String.fromCharCode(1);
txt = txt.split(schar).join("");
txt = new EReg("<([a-zA-Z0-9]+[^>]*/>)","g").replace(txt,schar + "$1");
var r = new EReg("<([a-zA-Z0-9]+)([^>]*>[^<]*)</\\1>","g");
while(true) {
var t = r.replace(txt,((schar + "$1$2") + schar) + "/$1>");
if(t == txt) break;
txt = t;
}
txt = new EReg("</?[a-zA-Z0-9]+[^>]*>","g").replace(txt,"");
txt = txt.split(schar).join("<");
var b = new StringBuf();
this.wordify(b,Xml.parse(txt));
return b.b.join("");
}
mt.js.Editor.prototype.formatAction = function(txt,act) {
return (function($this) {
var $r;
var $e = (act);
switch( $e[1] ) {
case 0:
var img = $e[3], tag = $e[2];
{
$r = txt.split(tag).join(("<img src=\"" + $this.image(img)) + "\" alt=\"\"/>");
}break;
case 1:
var html = $e[3], node = $e[2];
{
$r = $this.formatNode(txt,node,("<" + html) + ">",("</" + html) + ">");
}break;
case 2:
var span = $e[3], node = $e[2];
{
$r = $this.formatNode(txt,node,("<span class=\"" + span) + "\">","</span>");
}break;
case 3:
var node = $e[4];
{
$r = (function($this) {
var $r;
var r = new EReg(((("\\[" + node) + "\\](https?://[^\"]*?)\\[\\/") + node) + "\\]","ig");
txt = r.replace(txt,"<a href=\"$1\" target=\"_blank\">$1</a>");
r = new EReg(((("\\[" + node) + "=(https?://[^\"]*?)\\](.*?)\\[\\/") + node) + "\\]","ig");
$r = r.replace(txt,"<a href=\"$1\" target=\"_blank\">$2</a>");
return $r;
}($this));
}break;
case 4:
var replace = $e[3], ereg = $e[2];
{
$r = (function($this) {
var $r;
var r = new EReg(ereg,"ig");
$r = r.replace(txt,replace);
return $r;
}($this));
}break;
default:{
$r = null;
}break;
}
return $r;
}(this));
}
mt.js.Editor.prototype.formatNode = function(txt,node,h1,h2) {
return txt.split(("[" + node) + "]").join(h1).split(("[/" + node) + "]").join(h2);
}
mt.js.Editor.prototype.getDocument = function() {
return js.Lib.document.getElementsByName(this.contentName)[0];
}
mt.js.Editor.prototype.image = function(img) {
return this.config.iconsUrl.split("::img::").join(img);
}
mt.js.Editor.prototype.initUpload = function(id,act,target) {
if(this.config.uploadData == null) throw "No data domain";
var cnxName = (("edcnx_" + id) + "_") + this.name;
var me = this;
var api = { uploadResult : function(url) {
act(url);
}, uploadError : function(e) {
js.Lib.alert(((me.config.uploadData.error + "\n(") + e) + ")");
}}
var cnx = haxe.remoting.ExternalConnection.flashConnect(cnxName,null,haxe.remoting.Context.share("api",api));
var params = [this.config.uploadData.url + "upload/upload.swf","swf_" + id,"100%","100%",9];
var swfobj;
try {
swfobj = js.Lib.eval("js.SWFObject");
if(swfobj == null) throw null;
}
catch( $e0 ) {
{
var e = $e0;
{
swfobj = js.Lib.eval("SWFObject");
}
}
}
var obj = Type.createInstance(swfobj,params);
obj.addParam("AllowScriptAccess","always");
var c = this.config.uploadColors;
var colors = (((("&bgcolor=" + c.bg) + "&fgcolor=") + c.fg) + "&color=") + c.fill;
obj.addParam("FlashVars",(((((("name=" + cnxName) + "&site=") + this.config.uploadData.site) + "&prefix=") + this.config.uploadData.uid) + colors) + (((target != null)?"&click=1":"")));
obj.addParam("wmode","transparent");
obj.write(id);
return false;
}
mt.js.Editor.prototype.insert = function(txt) {
this.quoteSelection(txt,"");
}
mt.js.Editor.prototype.insertImage = function(url) {
this.insert(("@" + url) + "@");
}
mt.js.Editor.prototype.loadConfig = function(str) {
this.config = haxe.Unserializer.run(str);
}
mt.js.Editor.prototype.name = null;
mt.js.Editor.prototype.quoteSelection = function(begin,end) {
var doc = this.getDocument();
var sel = new js.Selection(doc);
sel.insert(begin,sel.get(),end);
if(doc.onkeyup != null) doc.onkeyup(null);
}
mt.js.Editor.prototype.setUploadButton = function(target,act) {
var id = target + "_swf";
var loaded = false;
js.Lib.document.write(("<div id=\"" + id) + "\"></div>");
var but = js.Lib.document.getElementById(target);
var me = this;
but.onmouseover = function(_) {
if(loaded) return;
loaded = true;
var doc = js.Lib.document;
var win = js.Lib.window;
var swf = doc.getElementById(id);
swf.style.position = "absolute";
swf.style.left = "0px";
swf.style.top = "0px";
var p = mt.js.Editor.getElementPosition(but);
swf.style.width = p.width + "px";
swf.style.height = p.height + "px";
swf.style.zIndex = 10;
var p2 = mt.js.Editor.getElementPosition(swf);
swf.style.top = (p.y - p2.y) + "px";
swf.style.left = (p.x - p2.x) + "px";
me.initUpload(id,act,but);
}
}
mt.js.Editor.prototype.updatePreview = function(id) {
var doc = js.Lib.document.getElementById(id);
doc.innerHTML = this.format(this.getDocument().value);
}
mt.js.Editor.prototype.wordify = function(b,x) {
switch(x.nodeType) {
case Xml.Document:{
{ var $it0 = x.iterator();
while( $it0.hasNext() ) { var x1 = $it0.next();
this.wordify(b,x1);
}}
}break;
case Xml.Element:{
b.b[b.b.length] = "<" + x.getNodeName();
{ var $it1 = x.attributes();
while( $it1.hasNext() ) { var a = $it1.next();
b.b[b.b.length] = (((" " + a) + "=\"") + x.get(a)) + "\"";
}}
if(x.firstChild() == null) b.b[b.b.length] = "/>";
else {
b.b[b.b.length] = ">";
{ var $it2 = x.iterator();
while( $it2.hasNext() ) { var x1 = $it2.next();
this.wordify(b,x1);
}}
b.b[b.b.length] = ("</" + x.getNodeName()) + ">";
}
}break;
case Xml.PCData:case Xml.CData:{
var first = true;
{
var _g = 0, _g1 = x.getNodeValue().split(" ");
while(_g < _g1.length) {
var data = _g1[_g];
++_g;
if(first) first = false;
else b.b[b.b.length] = " ";
while(data.length > 40) {
b.b[b.b.length] = data.substr(0,40);
b.b[b.b.length] = " ";
data = data.substr(40);
}
b.b[b.b.length] = data;
}
}
}break;
default:{
null;
}break;
}
}
mt.js.Editor.prototype.__class__ = mt.js.Editor;
if(typeof tools=='undefined') tools = {}
tools.Editor = function(name) { if( name === $_ ) return; {
mt.js.Editor.apply(this,[name]);
this.inToolList = new IntHash();
this.outToolList = new IntHash();
this.config = { buttons : new List(), icons : new List(), iconsUrl : "", autoLink : false, uploadData : null, uploadColors : { bg : 0, fg : 16777215, fill : 32768}}
}}
tools.Editor.__name__ = ["tools","Editor"];
tools.Editor.__super__ = mt.js.Editor;
for(var k in mt.js.Editor.prototype ) tools.Editor.prototype[k] = mt.js.Editor.prototype[k];
tools.Editor.prototype.addTool = function(tid,icon,name,isBroken) {
if(this.outToolList.exists(tid)) {
return;
}
name = StringTools.replace(name,"'","\\'");
this.outToolList.set(tid,{ icon : icon, name : name, isBroken : isBroken});
this.inToolList.remove(tid);
this.refresh(this.outToolList,"chosenTools","deleteTool");
this.refresh(this.inToolList,"baseTools","addTool");
}
tools.Editor.prototype.deleteTool = function(tid,icon,name) {
if(!this.outToolList.exists(tid)) {
return;
}
name = StringTools.replace(name,"'","\\'");
this.inToolList.set(tid,this.outToolList.get(tid));
this.outToolList.remove(tid);
this.refresh(this.outToolList,"chosenTools","deleteTool");
this.refresh(this.inToolList,"baseTools","addTool");
}
tools.Editor.prototype.inToolList = null;
tools.Editor.prototype.iteratorToIterable = function(it) {
var l = new List();
while(it.hasNext()) {
l.add(it.next());
}
return l;
}
tools.Editor.prototype.outToolList = null;
tools.Editor.prototype.refresh = function(toolList,sectionId,action) {
var imgs = "";
{ var $it0 = toolList.keys();
while( $it0.hasNext() ) { var k = $it0.next();
{
var t = toolList.get(k);
var url = (((((((((((((((((((("<a href='#' onclick=\"" + this.name) + ".") + action) + "(") + k) + ",'") + t.icon) + "','") + t.name) + "'); js.HordeTip.hide(); return false;\" ") + "id='") + t.icon) + "' ") + "onmouseover=\"js.HordeTip.showSpecialTip(this, 'simpleTip', '', '") + t.name) + "');\" onmouseout=\"js.HordeTip.hide()\">") + "<img src='/gfx/icons/item_") + t.icon) + ".gif' alt='' class='") + ((t.isBroken?"limited":""))) + "'/></a>";
imgs += url;
}
}}
var ct = js.Lib.document.getElementById(sectionId);
if(imgs.length > 0) ct.innerHTML = imgs;
else ct.innerHTML = "--";
if(action == "deleteTool") {
var list = this.iteratorToIterable(toolList.keys());
if(list.length <= 0) return;
var tids = js.Lib.document.getElementById("tids");
tids.value = list.join(",");
}
}
tools.Editor.prototype.setTool = function(tid,icon,name,isBroken) {
name = StringTools.replace(name,"'","\\'");
this.inToolList.set(tid,{ icon : icon, name : name, isBroken : isBroken});
}
tools.Editor.prototype.setUploadButton = function(target,act) {
var id = target + "_swf";
var loaded = false;
var but = js.Lib.document.getElementById(target);
but.setAttribute("style","display:block");
var me = this;
but.onmouseover = function(_) {
if(loaded) return;
loaded = true;
var doc = js.Lib.document;
var win = js.Lib.window;
var swf = doc.getElementById(id);
swf.style.position = "absolute";
swf.style.left = "0px";
swf.style.top = "0px";
var p = mt.js.Editor.getElementPosition(but);
swf.style.width = p.width + "px";
swf.style.height = p.height + "px";
swf.style.zIndex = 10;
var p2 = mt.js.Editor.getElementPosition(swf);
swf.style.top = (p.y - p2.y) + "px";
swf.style.left = (p.x - p2.x) + "px";
me.initUpload(id,act,but);
}
}
tools.Editor.prototype.__class__ = tools.Editor;
js.Cookie = function() { }
js.Cookie.__name__ = ["js","Cookie"];
js.Cookie.set = function(name,value,expireDelay,path,domain) {
var s = (name + "=") + StringTools.urlEncode(value);
if(expireDelay != null) {
var d = DateTools.delta(Date.now(),expireDelay * 1000);
s += ";expires=" + d.toGMTString();
}
if(path != null) {
s += ";path=" + path;
}
if(domain != null) {
s += ";domain=" + domain;
}
js.Lib.document.cookie = s;
}
js.Cookie.all = function() {
var h = new Hash();
var a = js.Lib.document.cookie.split(";");
{
var _g = 0;
while(_g < a.length) {
var e = a[_g];
++_g;
e = StringTools.ltrim(e);
var t = e.split("=");
if(t.length < 2) continue;
h.set(t[0],StringTools.urlDecode(t[1]));
}
}
return h;
}
js.Cookie.get = function(name) {
return js.Cookie.all().get(name);
}
js.Cookie.exists = function(name) {
return js.Cookie.all().exists(name);
}
js.Cookie.remove = function(name,path,domain) {
js.Cookie.set(name,"",-10,path,domain);
}
js.Cookie.prototype.__class__ = js.Cookie;
js.JobChooser = function() { }
js.JobChooser.__name__ = ["js","JobChooser"];
js.JobChooser.jobs = null;
js.JobChooser.status = null;
js.JobChooser.stack = null;
js.JobChooser.init = function(s) {
js.JobChooser.jobs = new IntHash();
js.JobChooser.status = s;
js.JobChooser.stack = new List();
}
js.JobChooser.addJob = function(id) {
js.JobChooser.jobs.set(id,false);
}
js.JobChooser.save = function(url) {
if(js.JobChooser.hasRemainingSlot()) {
js.Lib.alert("Il vous reste encore des mÃ©tiers Ã  choisir. Cliquez sur celui ou ceux qui vous intÃ©ressent le plus.");
return;
}
var keys = new List();
{ var $it0 = js.JobChooser.jobs.keys();
while( $it0.hasNext() ) { var key = $it0.next();
{
if(js.JobChooser.jobs.get(key)) {
keys.add(key);
}
}
}}
js.XmlHttp.get((url + ";keys=") + keys.join("|"));
}
js.JobChooser.updateSubmit = function() {
var n = 0;
{ var $it0 = js.JobChooser.jobs.iterator();
while( $it0.hasNext() ) { var j = $it0.next();
{
if(j) n++;
}
}}
if(n > 0) {
js.Lib.document.getElementById("submit_on").style.display = "block";
js.Lib.document.getElementById("submit_off").style.display = "none";
}
else {
js.Lib.document.getElementById("submit_on").style.display = "none";
js.Lib.document.getElementById("submit_off").style.display = "block";
}
}
js.JobChooser.select = function(id) {
if(js.JobChooser.jobs.get(id)) {
js.Utils.setClass("job#" + id,"job");
js.JobChooser.jobs.set(id,false);
js.JobChooser.stack.remove(id);
js.JobChooser.updateSubmit();
return;
}
if(!js.JobChooser.hasRemainingSlot()) {
var oldest = js.JobChooser.stack.pop();
js.Utils.setClass("job#" + oldest,"job");
js.JobChooser.jobs.set(oldest,false);
}
js.JobChooser.stack.push(id);
js.Utils.setClass("job#" + id,"job selected");
js.JobChooser.jobs.set(id,true);
js.JobChooser.updateSubmit();
return;
}
js.JobChooser.hasRemainingSlot = function() {
var count = 0;
switch(js.JobChooser.status) {
case "hero":{
{ var $it0 = js.JobChooser.jobs.iterator();
while( $it0.hasNext() ) { var ok = $it0.next();
{
if(ok) ++count;
}
}}
return count < js.JobChooser.HERO_MAX_JOBS;
}break;
case "premium":{
{ var $it1 = js.JobChooser.jobs.iterator();
while( $it1.hasNext() ) { var ok = $it1.next();
{
if(ok) ++count;
}
}}
return count < js.JobChooser.PREMIUM_MAX_JOBS;
}break;
case "common":{
{ var $it2 = js.JobChooser.jobs.iterator();
while( $it2.hasNext() ) { var ok = $it2.next();
{
if(ok) ++count;
}
}}
return count < js.JobChooser.COMMON_MAX_JOBS;
}break;
}
return false;
}
js.JobChooser.prototype.__class__ = js.JobChooser;
js.BackForward = function() { }
js.BackForward.__name__ = ["js","BackForward"];
js.BackForward.iframe = null;
js.BackForward.history = null;
js.BackForward.current = null;
js.BackForward.currentHash = null;
js.BackForward.isFirefox = null;
js.BackForward.isSafari = null;
js.BackForward.urlBase = null;
js.BackForward.init = function(force) {
if(force) return;
js.BackForward.isFirefox = new EReg("firefox","i").match(js.Lib.window.navigator.userAgent);
js.BackForward.isSafari = new EReg("safari","i").match(js.Lib.window.navigator.userAgent);
js.BackForward.history = new List();
js.BackForward.check();
if(!js.BackForward.isSafari) {
var t = new haxe.Timer(200);
t.run = $closure(js.BackForward,"check");
}
if(js.Lib.isIE || js.BackForward.isSafari) haxe.Timer.delay($closure(js.BackForward,"realInit"),200);
}
js.BackForward.realInit = function() {
js.BackForward.iframe = js.Lib.document.getElementById("HistoryFrame");
if(js.BackForward.iframe != null) js.BackForward.iframe.src = "/fake.html?back";
}
js.BackForward.iframeLoaded = function(location) {
var e = Std.string(location).split("?");
if(js.BackForward.iframeInit) {
if(e[1] == "back") {
js.BackForward.goBack();
js.Lib.window.history.forward();
}
}
else {
if(e[1] == "back") {
if(js.BackForward.iframe != null) js.BackForward.iframe.src = "/fake.html?ok";
}
else if(e[1] == "ok") {
js.BackForward.iframeInit = true;
}
}
}
js.BackForward.check = function() {
var h = Std.string(js.Lib.window.location).split("#")[1];
if(h != js.BackForward.currentHash) {
var t = StringTools.urlDecode(h);
if(t != null && t.length > 3 && t != "null" && t != "undefined") {
js.XmlHttp.enqueue(t);
}
else if(t == "") {
if(js.BackForward.urlBase != null) js.XmlHttp.enqueue(js.BackForward.urlBase);
}
if(h != null) js.BackForward.currentHash = h;
}
}
js.BackForward.setBase = function(url) {
var r = new EReg("(.*)[?;]rand=[0-9]+","");
if(r.match(url)) url = r.matched(1);
js.BackForward.urlBase = url;
}
js.BackForward.add = function(url) {
if(js.BackForward.history == null) {
return;
}
var r = new EReg("(.*)[?;]rand=[0-9]+","");
if(r.match(url)) url = r.matched(1);
if(js.BackForward.current == url) return;
if(js.BackForward.current != null) js.BackForward.history.push(js.BackForward.current);
js.BackForward.current = url;
if(js.BackForward.current != null) {
js.BackForward.currentHash = url;
if(!js.BackForward.isSafari) js.Lib.window.location = (Std.string(js.Lib.window.location).split("#")[0] + "#") + js.BackForward.currentHash;
}
}
js.BackForward.goBack = function() {
if(js.BackForward.history.length > 0) {
var url = js.BackForward.history.pop();
if(url == "") {
if(js.BackForward.urlBase != null) js.XmlHttp.get(js.BackForward.urlBase);
}
else {
js.XmlHttp.get(url);
}
js.BackForward.current = null;
}
}
js.BackForward.clear = function() {
js.BackForward.history = new List();
js.BackForward.current = null;
}
js.BackForward.prototype.__class__ = js.BackForward;
js.ToolExchange = function() { }
js.ToolExchange.__name__ = ["js","ToolExchange"];
js.ToolExchange.init = function(u) {
js.ToolExchange.url = u;
}
js.ToolExchange.addFromBag = function(tid,dom) {
js.ToolExchange.dom1 = dom;
js.ToolExchange.dom1.className += " freeSlot";
js.ToolExchange.bagSelection = tid;
if(js.ToolExchange.trunkSelection > 0) {
js.ToolExchange.swap();
}
}
js.ToolExchange.addFromTrunk = function(tid,dom) {
js.ToolExchange.dom2 = dom;
js.ToolExchange.dom2.className += " freeSlot";
js.ToolExchange.trunkSelection = tid;
if(js.ToolExchange.bagSelection > 0) js.ToolExchange.swap();
}
js.ToolExchange.swap = function() {
js.ToolExchange.url += ((";b=" + js.ToolExchange.bagSelection) + ";t=") + js.ToolExchange.trunkSelection;
js.XmlHttp.get(js.ToolExchange.url);
js.ToolExchange.bagSelection = 0;
js.ToolExchange.trunkSelection = 0;
js.ToolExchange.url = "";
}
js.ToolExchange.prototype.__class__ = js.ToolExchange;
js.Gather = function() { }
js.Gather.__name__ = ["js","Gather"];
js.Gather.init = function(rt,u) {
js.Gather.url = u;
if(rt <= 0) {
js.CountDown.stop();
return;
}
js.CountDown.init();
js.CountDown.add("gcount",rt,1000,$closure(js.Gather,"nextStatus"),$closure(js.Gather,"updateCountDown"));
}
js.Gather.updateCountDown = function(section,start,end) {
section.innerHTML = js.Gather.countDownHtml(end);
}
js.Gather.nextStatus = function() {
js.CountDown.stop();
haxe.Timer.delay($closure(js.Gather,"refresh"),150);
}
js.Gather.refresh = function() {
js.XmlHttp.get(js.Gather.url);
}
js.Gather.cleanup = function() {
js.CountDown.stop();
js.Gather.url = "";
}
js.Gather.countDownHtml = function(s) {
var result = "";
if(s <= 0 || s == null) return "00:00:00";
var t = { h : 0, m : 0, s : s}
if(t.s >= 3600) {
t.h = Math.floor(t.s / 3600);
t.s = t.s - (t.h * 3600);
}
if(t.s >= 60) {
t.m = Math.floor(t.s / 60);
t.s = t.s - (t.m * 60);
}
{
result += (t.h >= 0 && t.h < 10?"0" + Std.string(t.h):Std.string(t.h));
result += ":";
}
{
result += (t.m >= 0 && t.m < 10?"0" + Std.string(t.m):Std.string(t.m));
result += ":";
}
result += (t.s >= 0 && t.s < 10?"0" + Std.string(t.s):Std.string(t.s));
return result;
}
js.Gather.prototype.__class__ = js.Gather;
Reflect = function() { }
Reflect.__name__ = ["Reflect"];
Reflect.hasField = function(o,field) {
if(o.hasOwnProperty != null) return o.hasOwnProperty(field);
var arr = Reflect.fields(o);
{ var $it0 = arr.iterator();
while( $it0.hasNext() ) { var t = $it0.next();
if(t == field) return true;
}}
return false;
}
Reflect.field = function(o,field) {
var v = null;
try {
v = o[field];
}
catch( $e0 ) {
{
var e = $e0;
null;
}
}
return v;
}
Reflect.setField = function(o,field,value) {
o[field] = value;
}
Reflect.callMethod = function(o,func,args) {
return func.apply(o,args);
}
Reflect.fields = function(o) {
if(o == null) return new Array();
var a = new Array();
if(o.hasOwnProperty) {
for(var i in o)
if( o.hasOwnProperty(i) )
a.push(i);
;
}
else {
var t;
try {
t = o.__proto__;
}
catch( $e0 ) {
{
var e = $e0;
{
t = null;
}
}
}
if(t != null) o.__proto__ = null;
for(var i in o)
if( i != "__proto__" )
a.push(i);
;
if(t != null) o.__proto__ = t;
}
return a;
}
Reflect.isFunction = function(f) {
return typeof(f) == "function" && f.__name__ == null;
}
Reflect.compare = function(a,b) {
return ((a == b)?0:((((a) > (b))?1:-1)));
}
Reflect.compareMethods = function(f1,f2) {
if(f1 == f2) return true;
if(!Reflect.isFunction(f1) || !Reflect.isFunction(f2)) return false;
return f1.scope == f2.scope && f1.method == f2.method && f1.method != null;
}
Reflect.isObject = function(v) {
if(v == null) return false;
var t = typeof(v);
return (t == "string" || (t == "object" && !v.__enum__) || (t == "function" && v.__name__ != null));
}
Reflect.deleteField = function(o,f) {
if(!Reflect.hasField(o,f)) return false;
delete(o[f]);
return true;
}
Reflect.copy = function(o) {
var o2 = { }
{
var _g = 0, _g1 = Reflect.fields(o);
while(_g < _g1.length) {
var f = _g1[_g];
++_g;
o2[f] = Reflect.field(o,f);
}
}
return o2;
}
Reflect.makeVarArgs = function(f) {
return function() {
var a = new Array();
{
var _g1 = 0, _g = arguments.length;
while(_g1 < _g) {
var i = _g1++;
a.push(arguments[i]);
}
}
return f(a);
}
}
Reflect.prototype.__class__ = Reflect;
js.Utils = function() { }
js.Utils.__name__ = ["js","Utils"];
js.Utils.byId = function(id) {
return js.Lib.document.getElementById(id);
}
js.Utils.getSection = function(name) {
return js.Lib.document.getElementById(name);
}
js.Utils.updateSectionInnerHtml = function(name,value) {
var section = js.Lib.document.getElementById(name);
if(section != null) {
section.innerHTML = value;
}
return section;
}
js.Utils.getFirstNamed = function(p,name) {
var i = 0;
var a = p.childNodes;
while(i < a.length) {
if(a[i].nodeName == name) return a[i];
i++;
}
return null;
}
js.Utils.scrollDown = function(id,force) {
if(force == null) force = false;
var div = js.Lib.document.getElementById(id);
if(div == null) return;
if(div.autoScroll == null) {
div.onscroll = function(e) {
div.autoScroll = (div.scrollTop / (div.scrollHeight - div.clientHeight) > 0.85);
}
div.autoScroll = true;
}
if(div.autoScroll || force) {
div.scrollTop = div.scrollHeight - div.clientHeight;
}
}
js.Utils.scrollTop = function() {
var s = null;
{
var doc = js.Lib.document;
var win = js.Lib.window;
s = win.scrollY;
if(s == null && doc.documentElement != null) s = doc.documentElement.scrollTop;
if(s == null) s = doc.body.scrollTop;
else null;
}
if(s > 200) js.Lib.window.scrollTo(0,0);
}
js.Utils.addClassE = function(e,className) {
var cn = e.className.split(" ");
cn.remove(className);
cn.push(className);
e.className = cn.join(" ");
}
js.Utils.addClass = function(id,className) {
var e = js.Lib.document.getElementById(id);
if(e != null) js.Utils.addClassE(e,className);
}
js.Utils.removeClassE = function(e,className) {
var cn = e.className.split(" ");
cn.remove(className);
e.className = cn.join(" ");
}
js.Utils.removeClass = function(id,className) {
var e = js.Lib.document.getElementById(id);
if(e != null) js.Utils.removeClassE(e,className);
}
js.Utils.setClass = function(id,classes) {
var e = js.Lib.document.getElementById(id);
if(e != null) {
e.className = classes;
}
}
js.Utils.checkAll = function(id,prefix) {
var form = js.Utils.byId(id);
if(form == null) throw "Form not found";
var l = form.elements;
{
var _g1 = 0, _g = l.length;
while(_g1 < _g) {
var i = _g1++;
var e = l[i];
if(e.type == "checkbox" && (prefix == null || e.id.substr(0,prefix.length) == prefix)) e.checked = true;
}
}
}
js.Utils.menuSelect = function(menuId,selectedId,className) {
try {
var menu = js.Utils.byId(menuId);
var c = menu.firstChild;
js.Utils.rec_menuSelect(c,selectedId,className);
}
catch( $e0 ) {
{
var e = $e0;
{
haxe.Log.trace("Exception in menuSelect : " + menuId,{ fileName : "Utils.hx", lineNumber : 113, className : "js.Utils", methodName : "menuSelect"});
}
}
}
}
js.Utils.rec_menuSelect = function(c,selectedId,className) {
while(c != null) {
if(c.nodeType == 1) {
var id = c.getAttribute("menuid");
if(id != null) {
var cn = c.className.split(" ");
cn.remove(className);
if(id == selectedId) {
cn.push(className);
}
c.className = cn.join(" ");
}
else {
js.Utils.rec_menuSelect(c.firstChild,selectedId,className);
}
}
c = c.nextSibling;
}
}
js.Utils.countUp = function(id,time) {
var timer = new haxe.Timer(1000);
var doc = js.Utils.byId(id);
timer.run = function() {
time += 1000;
doc.innerHTML = js.Utils.countDownHtml(Std["int"](time / 1000));
}
}
js.Utils.countDownHtml = function(s) {
var result = "";
if(s <= 0 || s == null) return "00:00:00";
var t = { h : 0, m : 0, s : s}
if(t.s >= 3600) {
t.h = Math.floor(t.s / 3600);
t.s = t.s - (t.h * 3600);
}
if(t.s >= 60) {
t.m = Math.floor(t.s / 60);
t.s = t.s - (t.m * 60);
}
{
result += (t.h >= 0 && t.h < 10?"0" + Std.string(t.h):Std.string(t.h));
result += ":";
}
{
result += (t.m >= 0 && t.m < 10?"0" + Std.string(t.m):Std.string(t.m));
result += ":";
}
result += (t.s >= 0 && t.s < 10?"0" + Std.string(t.s):Std.string(t.s));
return result;
}
js.Utils.addField = function(cname,name,fl_hidden) {
if(fl_hidden == null) fl_hidden = false;
var n = 0;
var other = js.Utils.byId((name + "_") + n);
while(other != null) {
n++;
other = js.Utils.byId((name + "_") + n);
}
var elem = js.Utils.byId(cname);
var input = js.Lib.document.createElement("input");
if(fl_hidden) input.setAttribute("type","hidden");
else {
input.setAttribute("class","field");
input.setAttribute("type","text");
input.setAttribute("readonly","readonly");
}
input.setAttribute("name",(name + "_") + n);
input.setAttribute("id",(name + "_") + n);
elem.appendChild(input);
return input;
}
js.Utils.addExpPoint = function(cityX,cityY,x,y) {
var f = js.Utils.addField("coordCont","coord_disp");
f.setAttribute("value",((x - cityX) + ",") + (cityY - y));
var f1 = js.Utils.addField("coordCont","coord",true);
f1.setAttribute("value",(x + ",") + y);
}
js.Utils.prototype.__class__ = js.Utils;
IntIter = function(min,max) { if( min === $_ ) return; {
this.min = min;
this.max = max;
}}
IntIter.__name__ = ["IntIter"];
IntIter.prototype.hasNext = function() {
return this.min < this.max;
}
IntIter.prototype.max = null;
IntIter.prototype.min = null;
IntIter.prototype.next = function() {
return this.min++;
}
IntIter.prototype.__class__ = IntIter;
js.ServerTime = function(p) { if( p === $_ ) return; {
null;
}}
js.ServerTime.__name__ = ["js","ServerTime"];
js.ServerTime.currentTime = null;
js.ServerTime.timer = null;
js.ServerTime.seconds = null;
js.ServerTime.init = function(t) {
js.ServerTime.currentTime = Date.fromString(t);
js.ServerTime.seconds = js.ServerTime.currentTime.getSeconds();
if(js.ServerTime.timer == null) {
js.ServerTime.timer = new haxe.Timer(Std["int"](DateTools.seconds(js.ServerTime.FREQUENCY)));
js.ServerTime.timer.run = $closure(js.ServerTime,"update");
}
js.ServerTime.updateDom();
}
js.ServerTime.update = function() {
js.ServerTime.seconds += js.ServerTime.FREQUENCY;
if(js.ServerTime.seconds >= 60) {
js.ServerTime.currentTime = DateTools.delta(js.ServerTime.currentTime,DateTools.minutes(1));
js.ServerTime.seconds -= 60;
js.ServerTime.updateDom();
}
}
js.ServerTime.updateDom = function() {
var dom = js.Utils.getSection("serverTime");
dom.innerHTML = DateTools.format(js.ServerTime.currentTime,"%H:%M");
}
js.ServerTime.prototype.__class__ = js.ServerTime;
js.UserBox = function() { }
js.UserBox.__name__ = ["js","UserBox"];
js.UserBox.lastBox = null;
js.UserBox.fl_visible = null;
js.UserBox.userId = null;
js.UserBox.url = null;
js.UserBox.show = function(obj,id,name,avatar,about,urle) {
if(js.UserBox.fl_visible && js.UserBox.userId == id) {
js.UserBox.hide();
return;
}
js.UserBox.userId = id;
js.UserBox.getElem("userBoxHome").style.display = "block";
js.UserBox.getElem("userBoxGhost").style.display = "block";
js.UserBox.getElem("userBoxMail").style.display = "block";
js.HordeTip.hide();
var objSize = mt.js.Tip.elementSize(obj);
var box = js.UserBox.getElem(js.UserBox.boxId);
var boxSize = mt.js.Tip.elementSize(box);
js.UserBox.getElem("userBoxTitle").innerHTML = name;
if(urle == null) {
js.UserBox.getElem("userBoxHome").style.display = "none";
}
else {
js.UserBox.getElem("userBoxHome").style.display = "block";
}
if(objSize.width <= 0) {
box.style.left = (objSize.x) + "px";
}
else {
box.style.left = ((objSize.x - boxSize.width * 0.5) + objSize.width * 0.5) + "px";
}
box.style.top = (objSize.y + Math.max(js.UserBox.minOffsetY,objSize.height)) + "px";
box.style.left = "0px";
box.style.top = "0px";
box.style.display = "block";
if(avatar == "null") {
js.UserBox.getElem("userBoxAvatar").setAttribute("src","/gfx/design/pixel.gif");
}
else {
js.UserBox.getElem("userBoxAvatar").setAttribute("src","http://imgup.motion-twin.com/" + avatar);
}
if(about != "") {
js.UserBox.getElem("userBoxAbout").innerHTML = ("Â«&nbsp;" + about) + "&nbsp;Â»";
}
else {
js.UserBox.getElem("userBoxAbout").innerHTML = "";
}
js.UserBox.fl_visible = true;
js.Lib.window.scrollTo(0,0);
if(urle == null) js.UserBox.url = "";
else js.UserBox.url = urle;
}
js.UserBox.hide = function() {
var box = js.UserBox.getElem(js.UserBox.boxId);
box.style.display = "none";
js.UserBox.fl_visible = false;
js.HordeTip.hide();
}
js.UserBox.outsideMode = function() {
js.UserBox.getElem("userBoxHome").style.display = "none";
js.UserBox.getElem("userBoxMail").style.display = "none";
}
js.UserBox.onHome = function(sk) {
js.UserBox.hide();
js.XmlHttp.get(("city/enter?go=city/seeClint?id=" + js.UserBox.userId) + sk);
}
js.UserBox.onGhost = function(sk) {
js.UserBox.hide();
js.XmlHttp.get(((("ghost/city?go=ghost/user?uid=" + js.UserBox.userId) + ";from=") + js.UserBox.url) + sk);
}
js.UserBox.onMail = function(sk) {
js.UserBox.hide();
js.XmlHttp.get(("city/enter?go=msg;goSub=write?uid=" + js.UserBox.userId) + sk);
}
js.UserBox.onSubmit = function() {
var msg = StringTools.trim(js.UserBox.getTextArea().value);
if(msg == "" || msg == js.UserBox.defaultValue) {
return;
}
js.UserBox.hide();
js.XmlHttp.get((((("city/clintSpeech?id=" + js.UserBox.userId) + ";message=") + StringTools.urlEncode(msg)) + ";url=") + StringTools.urlEncode(js.UserBox.url));
}
js.UserBox.onFocus = function() {
var ta = js.UserBox.getTextArea();
if(ta.value == js.UserBox.defaultValue) {
ta.value = "";
}
}
js.UserBox.getTextArea = function() {
var ta = js.Lib.document.getElementById("userBoxMessage");
if(ta == null) {
throw "textarea not found";
}
return ta;
}
js.UserBox.getElem = function(name) {
var ref = js.Lib.document.getElementById(name);
if(ref == null) {
throw (("userBox div '" + name) + "' not found");
}
return ref;
}
js.UserBox.prototype.__class__ = js.UserBox;
mt.js.Tip = function() { }
mt.js.Tip.__name__ = ["mt","js","Tip"];
mt.js.Tip.lastRef = null;
mt.js.Tip.placeRef = null;
mt.js.Tip.initialized = null;
mt.js.Tip.tooltip = null;
mt.js.Tip.tooltipContent = null;
mt.js.Tip.mousePos = null;
mt.js.Tip.onHide = null;
mt.js.Tip.excludeList = null;
mt.js.Tip.show = function(refObj,contentHTML,cName,pRef) {
mt.js.Tip.init();
if(mt.js.Tip.tooltip == null) {
mt.js.Tip.tooltip = js.Lib.document.getElementById(mt.js.Tip.tooltipId);
if(mt.js.Tip.tooltip == null) {
mt.js.Tip.tooltip = js.Lib.document.createElement("div");
mt.js.Tip.tooltip.id = mt.js.Tip.tooltipId;
js.Lib.document.body.insertBefore(mt.js.Tip.tooltip,js.Lib.document.body.firstChild);
}
mt.js.Tip.tooltip.style.top = "-1000px";
mt.js.Tip.tooltip.style.position = "absolute";
mt.js.Tip.tooltip.style.zIndex = 10;
}
if(mt.js.Tip.tooltipContent == null) {
mt.js.Tip.tooltipContent = js.Lib.document.getElementById(mt.js.Tip.tooltipContentId);
if(mt.js.Tip.tooltipContent == null) {
mt.js.Tip.tooltipContent = js.Lib.document.createElement("div");
mt.js.Tip.tooltipContent.id = mt.js.Tip.tooltipContentId;
mt.js.Tip.tooltip.appendChild(mt.js.Tip.tooltipContent);
}
}
if(pRef == null) pRef = false;
mt.js.Tip.placeRef = pRef;
if(cName == null) mt.js.Tip.tooltip.className = mt.js.Tip.defaultClass;
else mt.js.Tip.tooltip.className = cName;
if(mt.js.Tip.lastRef != null && mt.js.Tip.onHide != null) {
mt.js.Tip.onHide();
mt.js.Tip.onHide = null;
}
mt.js.Tip.lastRef = refObj;
mt.js.Tip.tooltipContent.innerHTML = contentHTML;
if(mt.js.Tip.placeRef) mt.js.Tip.placeTooltipRef();
else mt.js.Tip.placeTooltip();
}
mt.js.Tip.exclude = function(id) {
var e = js.Lib.document.getElementById(id);
if(e == null) throw id + " not found";
if(mt.js.Tip.excludeList == null) mt.js.Tip.excludeList = new List();
mt.js.Tip.excludeList.add(e);
}
mt.js.Tip.placeTooltip = function() {
if(mt.js.Tip.mousePos == null) return;
var tts = mt.js.Tip.elementSize(mt.js.Tip.tooltip);
var w = mt.js.Tip.windowSize();
var top = 0;
var left = 0;
left = mt.js.Tip.mousePos.x + mt.js.Tip.xOffset;
top = mt.js.Tip.mousePos.y + mt.js.Tip.yOffset;
if(mt.js.Tip.excludeList != null) { var $it0 = mt.js.Tip.excludeList.iterator();
while( $it0.hasNext() ) { var e = $it0.next();
{
var s = mt.js.Tip.elementSize(e);
if(left > s.x + s.width || left + tts.width < s.x || top > s.y + s.height || top + tts.height < s.y) continue;
var dx1 = left - (s.x + s.width);
var dx2 = (left + tts.width) - s.x;
var dx = ((Math.abs(dx1) > Math.abs(dx2))?dx2:dx1);
var dy1 = top - (s.y + s.height);
var dy2 = (top + tts.height) - s.y;
var dy = ((Math.abs(dy1) > Math.abs(dy2))?dy2:dy1);
var cx = (left + tts.width / 2) - mt.js.Tip.mousePos.x;
var cy = (top + tts.height / 2) - mt.js.Tip.mousePos.y;
if((cx - dx) * (cx - dx) + cy * cy > cx * cx + (cy - dy) * (cy - dy)) top -= dy;
else left -= dx;
}
}}
if(top + tts.height > (w.height - 2) + w.scrollTop) {
if(mt.js.Tip.mousePos.y - tts.height > 5 + w.scrollTop) top = (mt.js.Tip.mousePos.y - tts.height) - 5;
else top = ((w.height - 2) + w.scrollTop) - tts.height;
}
if(left + tts.width > (w.width - 22) + w.scrollLeft) {
if(mt.js.Tip.mousePos.x - tts.width > 5 + w.scrollLeft) left = (mt.js.Tip.mousePos.x - tts.width) - 5;
else left = ((w.width - 22) + w.scrollLeft) - tts.width;
}
if(top < 0) top = 0;
if(left < 0) left = 0;
mt.js.Tip.tooltip.style.left = left + "px";
mt.js.Tip.tooltip.style.top = top + "px";
}
mt.js.Tip.placeTooltipRef = function() {
var o = mt.js.Tip.elementSize(mt.js.Tip.lastRef);
var tts = mt.js.Tip.elementSize(mt.js.Tip.tooltip);
if(o.width <= 0) mt.js.Tip.tooltip.style.left = (o.x) + "px";
else mt.js.Tip.tooltip.style.left = ((o.x - tts.width * 0.5) + o.width * 0.5) + "px";
mt.js.Tip.tooltip.style.top = (o.y + Math.max(mt.js.Tip.minOffsetY,o.height)) + "px";
}
mt.js.Tip.showTip = function(refObj,title,contentBase) {
contentBase = ("<p>" + contentBase) + "</p>";
mt.js.Tip.show(refObj,(("<div class=\"title\">" + title) + "</div>") + contentBase);
}
mt.js.Tip.hide = function() {
if(mt.js.Tip.lastRef == null) return;
mt.js.Tip.lastRef = null;
if(mt.js.Tip.onHide != null) {
mt.js.Tip.onHide();
mt.js.Tip.onHide = null;
}
mt.js.Tip.tooltip.style.top = "-1000px";
mt.js.Tip.tooltip.style.width = "";
}
mt.js.Tip.clean = function() {
if(mt.js.Tip.lastRef == null) return;
if(mt.js.Tip.lastRef.parentNode == null) return mt.js.Tip.hide();
if(mt.js.Tip.lastRef.id != null && mt.js.Tip.lastRef.id != "") {
if(js.Lib.document.getElementById(mt.js.Tip.lastRef.id) != mt.js.Tip.lastRef) return mt.js.Tip.hide();
}
return;
}
mt.js.Tip.elementSize = function(o) {
var ret = { x : 0, y : 0, width : o.clientWidth, height : o.clientHeight}
var p = o;
while(p != null) {
if(p.offsetParent != null) {
ret.x += p.offsetLeft - p.scrollLeft;
ret.y += p.offsetTop - p.scrollTop;
}
else {
ret.x += p.offsetLeft;
ret.y += p.offsetTop;
}
p = p.offsetParent;
}
return ret;
}
mt.js.Tip.windowSize = function() {
var ret = { x : 0, y : 0, width : js.Lib.window.innerWidth, height : js.Lib.window.innerHeight, scrollLeft : js.Lib.document.body.scrollLeft + js.Lib.document.documentElement.scrollLeft, scrollTop : js.Lib.document.body.scrollTop + js.Lib.document.documentElement.scrollTop}
var body = (js.Lib.isIE?js.Lib.document.documentElement:js.Lib.document.body);
if(ret.width == null) ret.width = body.clientWidth;
if(ret.height == null) ret.height = body.clientHeight;
return ret;
}
mt.js.Tip.onMouseMove = function(evt) {
try {
var posx = 0;
var posy = 0;
if(evt == null) evt = js.Lib.window.event;
var e = evt;
if(e.pageX || e.pageY) {
posx = e.pageX;
posy = e.pageY;
}
else if(e.clientX || e.clientY) {
posx = (e.clientX + js.Lib.document.body.scrollLeft) + js.Lib.document.documentElement.scrollLeft;
posy = (e.clientY + js.Lib.document.body.scrollTop) + js.Lib.document.documentElement.scrollTop;
}
mt.js.Tip.mousePos = { x : posx, y : posy}
if(mt.js.Tip.lastRef != null && !mt.js.Tip.placeRef) mt.js.Tip.placeTooltip();
}
catch( $e0 ) {
{
var e = $e0;
null;
}
}
}
mt.js.Tip.init = function() {
if(mt.js.Tip.initialized) return;
if(document.body != null) {
mt.js.Tip.initialized = true;
document.body.onmousemove = $closure(mt.js.Tip,"onMouseMove");
}
else null;
}
mt.js.Tip.prototype.__class__ = mt.js.Tip;
mt.js.Timer = function(now,end,start) { if( now === $_ ) return; {
this.t = now.getTime();
this.start = (start == null?now:start);
this.end = end;
if(mt.js.Timer.timer == null) {
mt.js.Timer.timer = new haxe.Timer(1000);
mt.js.Timer.timer.run = function() {
var _g = 0, _g1 = mt.js.Timer.timers;
while(_g < _g1.length) {
var t = _g1[_g];
++_g;
t.update();
}
}
}
mt.js.Timer.timers.push(this);
}}
mt.js.Timer.__name__ = ["mt","js","Timer"];
mt.js.Timer.timer = null;
mt.js.Timer.alloc = function(now,end,prec,div) {
if(div == null) {
div = "timer_" + mt.js.Timer.timers.length;
js.Lib.document.write(("<div id=\"" + div) + "\" class=\"timer\"></div>");
}
var t = new mt.js.Timer(Date.fromString(now),Date.fromString(end));
t.textDiv = { id : div, prec : prec}
t.update();
return t;
}
mt.js.Timer.prototype.buildText = function() {
var str = "";
var prec = this.textDiv.prec;
var force = false;
if(prec < 1) {
var sep = (this.rem.seconds % 2 == 0?":":"<span style=\"opacity : 0\">:</span>");
if(this.rem.hours > 0) {
var str1 = this.rem.hours + sep;
if(this.rem.minutes < 10) str1 += "0";
return str1 + this.rem.minutes;
}
var str1 = this.rem.minutes + sep;
if(this.rem.seconds < 10) str1 += "0";
return str1 + this.rem.seconds;
}
if(this.rem.days > 0) {
str += (this.rem.days + mt.js.Timer.TIMES.charAt(0)) + " ";
force = true;
if(--prec == 0) return str;
}
if(force || this.rem.hours > 0) {
str += (this.rem.hours + mt.js.Timer.TIMES.charAt(1)) + " ";
force = true;
if(--prec == 0) return str;
}
if(force || this.rem.minutes > 0) {
if(force && this.rem.minutes < 10) str += "0";
str += (this.rem.minutes + mt.js.Timer.TIMES.charAt(2)) + " ";
force = true;
if(--prec == 0) return str;
}
if(force && this.rem.seconds < 10) str += "0";
str += (this.rem.seconds + mt.js.Timer.TIMES.charAt(3)) + " ";
return str;
}
mt.js.Timer.prototype.end = null;
mt.js.Timer.prototype.onReady = function() {
if(this.rem.time < -2) {
js.Lib.window.location = js.Lib.window.location;
this.onReady = function() {
null;
}
}
}
mt.js.Timer.prototype.onUpdate = function() {
null;
}
mt.js.Timer.prototype.progress = null;
mt.js.Timer.prototype.progressDiv = null;
mt.js.Timer.prototype.rem = null;
mt.js.Timer.prototype.start = null;
mt.js.Timer.prototype.stop = function() {
mt.js.Timer.timers.remove(this);
}
mt.js.Timer.prototype.t = null;
mt.js.Timer.prototype.textDiv = null;
mt.js.Timer.prototype.update = function() {
this.t += 1000;
var remt = (this.end.getTime() - this.t) / 1000;
var rt = (remt < 0?0:remt);
this.rem = { days : Std["int"](rt / 86400), hours : Std["int"](rt / 3600) % 24, minutes : Std["int"](rt / 60) % 60, seconds : Std["int"](rt % 60), time : remt}
var et = this.end.getTime();
var st = this.start.getTime();
this.progress = (this.t >= et?1:(this.t - st) / (et - st));
if(this.textDiv != null) {
var div = js.Lib.document.getElementById(this.textDiv.id);
if(div != null) div.innerHTML = this.buildText();
}
if(this.progressDiv != null) {
var div = js.Lib.document.getElementById(this.progressDiv.id);
if(div != null) {
var w = Std["int"](this.progressDiv.width * this.progress);
div.style.width = w + "px";
}
}
if(remt <= 0) this.onReady();
this.onUpdate();
}
mt.js.Timer.prototype.__class__ = mt.js.Timer;
js.Js = function() { }
js.Js.__name__ = ["js","Js"];
js.Js.init = function(l,debug) {
if(debug) {
if(haxe.Firebug.detect()) haxe.Firebug.redirectTraces();
}
else haxe.Log.trace = function(a,b) {
null;
}
js.Js.LANG = l.toLowerCase();
js.Js.baseTitle = js.Lib.document.title.split(":")[0];
}
js.Js.reboot = function() {
js.JsMap.dispose();
var a = Std.string(js.Lib.window.location).split("#");
js.Lib.window.location = a[0];
}
js.Js.rebootMobile = function() {
js.JsMap.dispose();
var a = Std.string(js.Lib.window.location).split("#") + "m";
var loc = a;
js.Lib.window.location = loc;
}
js.Js.setValue = function(name,value) {
var dom = js.Lib.document.getElementById(name);
dom.setAttribute("value",value);
}
js.Js.setTitle = function(s) {
if(s != null && s.length > 0) js.Js.title = (js.Js.baseTitle + ": ") + s;
else js.Js.title = js.Js.baseTitle;
js.Js.updateTitle();
}
js.Js.updateTitle = function() {
if(js.Js.title != null && js.Js.title.length > 0) js.Lib.document.title = js.Js.title;
}
js.Js.sendSimpleRequest = function(url) {
var h = new haxe.Http(url);
h.onData = function(data) {
js.Lib.alert(url + " : Done !");
}
h.request(false);
}
js.Js.loadSimpleInfo = function(url,section) {
js.Block.show(js.Utils.getSection(js.Js.LOADING_SECTION));
var h = new haxe.Http(url);
h.onData = function(data) {
js.Js.updateSectionContents(url,section,data);
}
h.request(false);
}
js.Js.updateSectionContents = function(url,section,data) {
js.Utils.updateSectionInnerHtml(section,data);
js.Block.hide(js.Utils.getSection(js.Js.LOADING_SECTION));
}
js.Js.execJs = function(justClean) {
var id = 0;
var last;
do {
id++;
last = js.Lib.document.getElementById("js_" + id);
if(last != null) {
last.id = null;
if(!justClean) js.Lib.eval(last.innerHTML);
}
} while(last != null);
}
js.Js.manageForm = function(url,form) {
try {
var s = ";";
{
var _g1 = 0, _g = form.elements.length;
while(_g1 < _g) {
var i = _g1++;
var element = form.elements[i];
if(s.length > 0) s += ";";
s += (element.name + "=") + StringTools.urlEncode(element.value);
}
}
js.XmlHttp.get(url + s);
}
catch( $e0 ) {
{
var e = $e0;
{
js.Lib.alert("Ouille! " + e);
}
}
}
return false;
}
js.Js.getFirstNamed = function(p,name) {
var i = 0;
var a = p.childNodes;
while(i < a.length) {
if(a[i].nodeName == name) return a[i];
i++;
}
return null;
}
js.Js.prototype.__class__ = js.Js;
ValueType = { __ename__ : ["ValueType"], __constructs__ : ["TNull","TInt","TFloat","TBool","TObject","TFunction","TClass","TEnum","TUnknown"] }
ValueType.TBool = ["TBool",3];
ValueType.TBool.toString = $estr;
ValueType.TBool.__enum__ = ValueType;
ValueType.TClass = function(c) { var $x = ["TClass",6,c]; $x.__enum__ = ValueType; $x.toString = $estr; return $x; }
ValueType.TEnum = function(e) { var $x = ["TEnum",7,e]; $x.__enum__ = ValueType; $x.toString = $estr; return $x; }
ValueType.TFloat = ["TFloat",2];
ValueType.TFloat.toString = $estr;
ValueType.TFloat.__enum__ = ValueType;
ValueType.TFunction = ["TFunction",5];
ValueType.TFunction.toString = $estr;
ValueType.TFunction.__enum__ = ValueType;
ValueType.TInt = ["TInt",1];
ValueType.TInt.toString = $estr;
ValueType.TInt.__enum__ = ValueType;
ValueType.TNull = ["TNull",0];
ValueType.TNull.toString = $estr;
ValueType.TNull.__enum__ = ValueType;
ValueType.TObject = ["TObject",4];
ValueType.TObject.toString = $estr;
ValueType.TObject.__enum__ = ValueType;
ValueType.TUnknown = ["TUnknown",8];
ValueType.TUnknown.toString = $estr;
ValueType.TUnknown.__enum__ = ValueType;
Type = function() { }
Type.__name__ = ["Type"];
Type.getClass = function(o) {
if(o == null) return null;
if(o.__enum__ != null) return null;
return o.__class__;
}
Type.getEnum = function(o) {
if(o == null) return null;
return o.__enum__;
}
Type.getSuperClass = function(c) {
return c.__super__;
}
Type.getClassName = function(c) {
if(c == null) return null;
var a = c.__name__;
return a.join(".");
}
Type.getEnumName = function(e) {
var a = e.__ename__;
return a.join(".");
}
Type.resolveClass = function(name) {
var cl;
try {
cl = eval(name);
}
catch( $e0 ) {
{
var e = $e0;
{
cl = null;
}
}
}
if(cl == null || cl.__name__ == null) return null;
return cl;
}
Type.resolveEnum = function(name) {
var e;
try {
e = eval(name);
}
catch( $e0 ) {
{
var err = $e0;
{
e = null;
}
}
}
if(e == null || e.__ename__ == null) return null;
return e;
}
Type.createInstance = function(cl,args) {
if(args.length <= 3) return new cl(args[0],args[1],args[2]);
if(args.length > 8) throw "Too many arguments";
return new cl(args[0],args[1],args[2],args[3],args[4],args[5],args[6],args[7]);
}
Type.createEmptyInstance = function(cl) {
return new cl($_);
}
Type.createEnum = function(e,constr,params) {
var f = Reflect.field(e,constr);
if(f == null) throw "No such constructor " + constr;
if(Reflect.isFunction(f)) {
if(params == null) throw ("Constructor " + constr) + " need parameters";
return f.apply(e,params);
}
if(params != null && params.length != 0) throw ("Constructor " + constr) + " does not need parameters";
return f;
}
Type.createEnumIndex = function(e,index,params) {
var c = Type.getEnumConstructs(e)[index];
if(c == null) throw index + " is not a valid enum constructor index";
return Type.createEnum(e,c,params);
}
Type.getInstanceFields = function(c) {
var a = Reflect.fields(c.prototype);
a.remove("__class__");
return a;
}
Type.getClassFields = function(c) {
var a = Reflect.fields(c);
a.remove("__name__");
a.remove("__interfaces__");
a.remove("__super__");
a.remove("prototype");
return a;
}
Type.getEnumConstructs = function(e) {
return e.__constructs__;
}
Type["typeof"] = function(v) {
switch(typeof(v)) {
case "boolean":{
return ValueType.TBool;
}break;
case "string":{
return ValueType.TClass(String);
}break;
case "number":{
if(Math.ceil(v) == v % 2147483648.0) return ValueType.TInt;
return ValueType.TFloat;
}break;
case "object":{
if(v == null) return ValueType.TNull;
var e = v.__enum__;
if(e != null) return ValueType.TEnum(e);
var c = v.__class__;
if(c != null) return ValueType.TClass(c);
return ValueType.TObject;
}break;
case "function":{
if(v.__name__ != null) return ValueType.TObject;
return ValueType.TFunction;
}break;
case "undefined":{
return ValueType.TNull;
}break;
default:{
return ValueType.TUnknown;
}break;
}
}
Type.enumEq = function(a,b) {
if(a == b) return true;
try {
if(a[0] != b[0]) return false;
{
var _g1 = 2, _g = a.length;
while(_g1 < _g) {
var i = _g1++;
if(!Type.enumEq(a[i],b[i])) return false;
}
}
var e = a.__enum__;
if(e != b.__enum__ || e == null) return false;
}
catch( $e0 ) {
{
var e = $e0;
{
return false;
}
}
}
return true;
}
Type.enumConstructor = function(e) {
return e[0];
}
Type.enumParameters = function(e) {
return e.slice(2);
}
Type.enumIndex = function(e) {
return e[1];
}
Type.prototype.__class__ = Type;
js.Selection = function(doc) { if( doc === $_ ) return; {
this.doc = doc;
}}
js.Selection.__name__ = ["js","Selection"];
js.Selection.prototype.doc = null;
js.Selection.prototype.get = function() {
if(this.doc.selectionStart != null) return this.doc.value.substring(this.doc.selectionStart,this.doc.selectionEnd);
var range = js.Lib.document.selection.createRange();
if(range.parentElement() != this.doc) return "";
return range.text;
}
js.Selection.prototype.insert = function(left,text,right) {
this.doc.focus();
if(this.doc.selectionStart != null) {
var top = this.doc.scrollTop;
var start = this.doc.selectionStart;
var end = this.doc.selectionEnd;
this.doc.value = (((this.doc.value.substr(0,start) + left) + text) + right) + this.doc.value.substr(end);
this.doc.selectionStart = start + left.length;
this.doc.selectionEnd = (start + left.length) + text.length;
this.doc.scrollTop = top;
return;
}
var range = js.Lib.document.selection.createRange();
range.text = (left + text) + right;
range.moveStart("character",-text.length - right.length);
range.moveEnd("character",-right.length);
range.select();
}
js.Selection.prototype.__class__ = js.Selection;
js.Boot = function() { }
js.Boot.__name__ = ["js","Boot"];
js.Boot.__unhtml = function(s) {
return s.split("&").join("&amp;").split("<").join("&lt;").split(">").join("&gt;");
}
js.Boot.__trace = function(v,i) {
var msg = (i != null?((i.fileName + ":") + i.lineNumber) + ": ":"");
msg += js.Boot.__unhtml(js.Boot.__string_rec(v,"")) + "<br/>";
var d = document.getElementById("haxe:trace");
if(d == null) alert("No haxe:trace element defined\n" + msg);
else d.innerHTML += msg;
}
js.Boot.__clear_trace = function() {
var d = document.getElementById("haxe:trace");
if(d != null) d.innerHTML = "";
else null;
}
js.Boot.__closure = function(o,f) {
var m = o[f];
if(m == null) return null;
var f1 = function() {
return m.apply(o,arguments);
}
f1.scope = o;
f1.method = m;
return f1;
}
js.Boot.__string_rec = function(o,s) {
if(o == null) return "null";
if(s.length >= 5) return "<...>";
var t = typeof(o);
if(t == "function" && (o.__name__ != null || o.__ename__ != null)) t = "object";
switch(t) {
case "object":{
if(o instanceof Array) {
if(o.__enum__ != null) {
if(o.length == 2) return o[0];
var str = o[0] + "(";
s += "\t";
{
var _g1 = 2, _g = o.length;
while(_g1 < _g) {
var i = _g1++;
if(i != 2) str += "," + js.Boot.__string_rec(o[i],s);
else str += js.Boot.__string_rec(o[i],s);
}
}
return str + ")";
}
var l = o.length;
var i;
var str = "[";
s += "\t";
{
var _g = 0;
while(_g < l) {
var i1 = _g++;
str += ((i1 > 0?",":"")) + js.Boot.__string_rec(o[i1],s);
}
}
str += "]";
return str;
}
var tostr;
try {
tostr = o.toString;
}
catch( $e0 ) {
{
var e = $e0;
{
return "???";
}
}
}
if(tostr != null && tostr != Object.toString) {
var s2 = o.toString();
if(s2 != "[object Object]") return s2;
}
var k = null;
var str = "{\n";
s += "\t";
var hasp = (o.hasOwnProperty != null);
for( var k in o ) { ;
if(hasp && !o.hasOwnProperty(k)) continue;
if(k == "prototype" || k == "__class__" || k == "__super__" || k == "__interfaces__") continue;
if(str.length != 2) str += ", \n";
str += ((s + k) + " : ") + js.Boot.__string_rec(o[k],s);
}
s = s.substring(1);
str += ("\n" + s) + "}";
return str;
}break;
case "function":{
return "<function>";
}break;
case "string":{
return o;
}break;
default:{
return String(o);
}break;
}
}
js.Boot.__interfLoop = function(cc,cl) {
if(cc == null) return false;
if(cc == cl) return true;
var intf = cc.__interfaces__;
if(intf != null) {
var _g1 = 0, _g = intf.length;
while(_g1 < _g) {
var i = _g1++;
var i1 = intf[i];
if(i1 == cl || js.Boot.__interfLoop(i1,cl)) return true;
}
}
return js.Boot.__interfLoop(cc.__super__,cl);
}
js.Boot.__instanceof = function(o,cl) {
try {
if(o instanceof cl) {
if(cl == Array) return (o.__enum__ == null);
return true;
}
if(js.Boot.__interfLoop(o.__class__,cl)) return true;
}
catch( $e0 ) {
{
var e = $e0;
{
if(cl == null) return false;
}
}
}
switch(cl) {
case Int:{
return Math.ceil(o%2147483648.0) === o;
}break;
case Float:{
return typeof(o) == "number";
}break;
case Bool:{
return o === true || o === false;
}break;
case String:{
return typeof(o) == "string";
}break;
case Dynamic:{
return true;
}break;
default:{
if(o == null) return false;
return o.__enum__ == cl || (cl == Class && o.__name__ != null) || (cl == Enum && o.__ename__ != null);
}break;
}
}
js.Boot.__init = function() {
js.Lib.isIE = (typeof document!='undefined' && document.all != null && typeof window!='undefined' && window.opera == null);
js.Lib.isOpera = (typeof window!='undefined' && window.opera != null);
Array.prototype.copy = Array.prototype.slice;
Array.prototype.insert = function(i,x) {
this.splice(i,0,x);
}
Array.prototype.remove = (Array.prototype.indexOf?function(obj) {
var idx = this.indexOf(obj);
if(idx == -1) return false;
this.splice(idx,1);
return true;
}:function(obj) {
var i = 0;
var l = this.length;
while(i < l) {
if(this[i] == obj) {
this.splice(i,1);
return true;
}
i++;
}
return false;
});
Array.prototype.iterator = function() {
return { cur : 0, arr : this, hasNext : function() {
return this.cur < this.arr.length;
}, next : function() {
return this.arr[this.cur++];
}}
}
var cca = String.prototype.charCodeAt;
String.prototype.cca = cca;
String.prototype.charCodeAt = function(i) {
var x = cca.call(this,i);
if(isNaN(x)) return null;
return x;
}
var oldsub = String.prototype.substr;
String.prototype.substr = function(pos,len) {
if(pos != null && pos != 0 && len != null && len < 0) return "";
if(len == null) len = this.length;
if(pos < 0) {
pos = this.length + pos;
if(pos < 0) pos = 0;
}
else if(len < 0) {
len = (this.length + len) - pos;
}
return oldsub.apply(this,[pos,len]);
}
$closure = js.Boot.__closure;
}
js.Boot.prototype.__class__ = js.Boot;
haxe.Firebug = function() { }
haxe.Firebug.__name__ = ["haxe","Firebug"];
haxe.Firebug.detect = function() {
try {
return console != null && console.error != null;
}
catch( $e0 ) {
{
var e = $e0;
{
return false;
}
}
}
}
haxe.Firebug.redirectTraces = function() {
haxe.Log.trace = $closure(haxe.Firebug,"trace");
js.Lib.setErrorHandler($closure(haxe.Firebug,"onError"));
}
haxe.Firebug.onError = function(err,stack) {
var buf = err + "\n";
{
var _g = 0;
while(_g < stack.length) {
var s = stack[_g];
++_g;
buf += ("Called from " + s) + "\n";
}
}
haxe.Firebug.trace(buf,null);
return true;
}
haxe.Firebug.trace = function(v,inf) {
var type = (inf != null && inf.customParams != null?inf.customParams[0]:null);
if(type != "warn" && type != "info" && type != "debug" && type != "error") type = (inf == null?"error":"log");
console[type](((inf == null?"":((inf.fileName + ":") + inf.lineNumber) + " : ")) + Std.string(v));
}
haxe.Firebug.prototype.__class__ = haxe.Firebug;
EReg = function(r,opt) { if( r === $_ ) return; {
opt = opt.split("u").join("");
this.r = new RegExp(r,opt);
}}
EReg.__name__ = ["EReg"];
EReg.prototype.customReplace = function(s,f) {
var buf = new StringBuf();
while(true) {
if(!this.match(s)) break;
buf.b[buf.b.length] = this.matchedLeft();
buf.b[buf.b.length] = f(this);
s = this.matchedRight();
}
buf.b[buf.b.length] = s;
return buf.b.join("");
}
EReg.prototype.match = function(s) {
this.r.m = this.r.exec(s);
this.r.s = s;
this.r.l = RegExp.leftContext;
this.r.r = RegExp.rightContext;
return (this.r.m != null);
}
EReg.prototype.matched = function(n) {
return (this.r.m != null && n >= 0 && n < this.r.m.length?this.r.m[n]:(function($this) {
var $r;
throw "EReg::matched";
return $r;
}(this)));
}
EReg.prototype.matchedLeft = function() {
if(this.r.m == null) throw "No string matched";
if(this.r.l == null) return this.r.s.substr(0,this.r.m.index);
return this.r.l;
}
EReg.prototype.matchedPos = function() {
if(this.r.m == null) throw "No string matched";
return { pos : this.r.m.index, len : this.r.m[0].length}
}
EReg.prototype.matchedRight = function() {
if(this.r.m == null) throw "No string matched";
if(this.r.r == null) {
var sz = this.r.m.index + this.r.m[0].length;
return this.r.s.substr(sz,this.r.s.length - sz);
}
return this.r.r;
}
EReg.prototype.r = null;
EReg.prototype.replace = function(s,by) {
return s.replace(this.r,by);
}
EReg.prototype.split = function(s) {
var d = "#__delim__#";
return s.replace(this.r,d).split(d);
}
EReg.prototype.__class__ = EReg;
js.JsXml__ = function(p) { if( p === $_ ) return; {
null;
}}
js.JsXml__.__name__ = ["js","JsXml__"];
js.JsXml__.parse = function(str) {
var rules = [js.JsXml__.enode,js.JsXml__.epcdata,js.JsXml__.eend,js.JsXml__.ecdata,js.JsXml__.edoctype,js.JsXml__.ecomment,js.JsXml__.eprolog];
var nrules = rules.length;
var current = Xml.createDocument();
var stack = new List();
while(str.length > 0) {
var i = 0;
try {
while(i < nrules) {
var r = rules[i];
if(r.match(str)) {
switch(i) {
case 0:{
var x = Xml.createElement(r.matched(1));
current.addChild(x);
str = r.matchedRight();
while(js.JsXml__.eattribute.match(str)) {
x.set(js.JsXml__.eattribute.matched(1),js.JsXml__.eattribute.matched(3));
str = js.JsXml__.eattribute.matchedRight();
}
if(!js.JsXml__.eclose.match(str)) {
i = nrules;
throw "__break__";
}
if(js.JsXml__.eclose.matched(1) == ">") {
stack.push(current);
current = x;
}
str = js.JsXml__.eclose.matchedRight();
}break;
case 1:{
var x = Xml.createPCData(r.matched(0));
current.addChild(x);
str = r.matchedRight();
}break;
case 2:{
if(current._children != null && current._children.length == 0) {
var e = Xml.createPCData("");
current.addChild(e);
}
else null;
if(r.matched(1) != current._nodeName || stack.isEmpty()) {
i = nrules;
throw "__break__";
}
else null;
current = stack.pop();
str = r.matchedRight();
}break;
case 3:{
str = r.matchedRight();
if(!js.JsXml__.ecdata_end.match(str)) throw "End of CDATA section not found";
var x = Xml.createCData(js.JsXml__.ecdata_end.matchedLeft());
current.addChild(x);
str = js.JsXml__.ecdata_end.matchedRight();
}break;
case 4:{
var pos = 0;
var count = 0;
var old = str;
try {
while(true) {
if(!js.JsXml__.edoctype_elt.match(str)) throw "End of DOCTYPE section not found";
var p = js.JsXml__.edoctype_elt.matchedPos();
pos += p.pos + p.len;
str = js.JsXml__.edoctype_elt.matchedRight();
switch(js.JsXml__.edoctype_elt.matched(0)) {
case "[":{
count++;
}break;
case "]":{
count--;
if(count < 0) throw "Invalid ] found in DOCTYPE declaration";
}break;
default:{
if(count == 0) throw "__break__";
}break;
}
}
} catch( e ) { if( e != "__break__" ) throw e; }
var x = Xml.createDocType(old.substr(10,pos - 11));
current.addChild(x);
}break;
case 5:{
if(!js.JsXml__.ecomment_end.match(str)) throw "Unclosed Comment";
var p = js.JsXml__.ecomment_end.matchedPos();
var x = Xml.createComment(str.substr(4,(p.pos + p.len) - 7));
current.addChild(x);
str = js.JsXml__.ecomment_end.matchedRight();
}break;
case 6:{
var prolog = r.matched(0);
var x = Xml.createProlog(prolog.substr(2,prolog.length - 4));
current.addChild(x);
str = r.matchedRight();
}break;
}
throw "__break__";
}
i += 1;
}
} catch( e ) { if( e != "__break__" ) throw e; }
if(i == nrules) {
if(str.length > 10) throw (("Xml parse error : Unexpected " + str.substr(0,10)) + "...");
else throw ("Xml parse error : Unexpected " + str);
}
}
if(!stack.isEmpty()) throw "Xml parse error : Unclosed " + stack.last().getNodeName();
return current;
}
js.JsXml__.createElement = function(name) {
var r = new js.JsXml__();
r.nodeType = Xml.Element;
r._children = new Array();
r._attributes = new Hash();
r.setNodeName(name);
return r;
}
js.JsXml__.createPCData = function(data) {
var r = new js.JsXml__();
r.nodeType = Xml.PCData;
r.setNodeValue(data);
return r;
}
js.JsXml__.createCData = function(data) {
var r = new js.JsXml__();
r.nodeType = Xml.CData;
r.setNodeValue(data);
return r;
}
js.JsXml__.createComment = function(data) {
var r = new js.JsXml__();
r.nodeType = Xml.Comment;
r.setNodeValue(data);
return r;
}
js.JsXml__.createDocType = function(data) {
var r = new js.JsXml__();
r.nodeType = Xml.DocType;
r.setNodeValue(data);
return r;
}
js.JsXml__.createProlog = function(data) {
var r = new js.JsXml__();
r.nodeType = Xml.Prolog;
r.setNodeValue(data);
return r;
}
js.JsXml__.createDocument = function() {
var r = new js.JsXml__();
r.nodeType = Xml.Document;
r._children = new Array();
return r;
}
js.JsXml__.prototype._attributes = null;
js.JsXml__.prototype._children = null;
js.JsXml__.prototype._nodeName = null;
js.JsXml__.prototype._nodeValue = null;
js.JsXml__.prototype._parent = null;
js.JsXml__.prototype.addChild = function(x) {
if(this._children == null) throw "bad nodetype";
if(x._parent != null) x._parent._children.remove(x);
x._parent = this;
this._children.push(x);
}
js.JsXml__.prototype.attributes = function() {
if(this.nodeType != Xml.Element) throw "bad nodeType";
return this._attributes.keys();
}
js.JsXml__.prototype.elements = function() {
if(this._children == null) throw "bad nodetype";
return { cur : 0, x : this._children, hasNext : function() {
var k = this.cur;
var l = this.x.length;
while(k < l) {
if(this.x[k].nodeType == Xml.Element) break;
k += 1;
}
this.cur = k;
return k < l;
}, next : function() {
var k = this.cur;
var l = this.x.length;
while(k < l) {
var n = this.x[k];
k += 1;
if(n.nodeType == Xml.Element) {
this.cur = k;
return n;
}
}
return null;
}}
}
js.JsXml__.prototype.elementsNamed = function(name) {
if(this._children == null) throw "bad nodetype";
return { cur : 0, x : this._children, hasNext : function() {
var k = this.cur;
var l = this.x.length;
while(k < l) {
var n = this.x[k];
if(n.nodeType == Xml.Element && n._nodeName == name) break;
k++;
}
this.cur = k;
return k < l;
}, next : function() {
var k = this.cur;
var l = this.x.length;
while(k < l) {
var n = this.x[k];
k++;
if(n.nodeType == Xml.Element && n._nodeName == name) {
this.cur = k;
return n;
}
}
return null;
}}
}
js.JsXml__.prototype.exists = function(att) {
if(this.nodeType != Xml.Element) throw "bad nodeType";
return this._attributes.exists(att);
}
js.JsXml__.prototype.firstChild = function() {
if(this._children == null) throw "bad nodetype";
return this._children[0];
}
js.JsXml__.prototype.firstElement = function() {
if(this._children == null) throw "bad nodetype";
var cur = 0;
var l = this._children.length;
while(cur < l) {
var n = this._children[cur];
if(n.nodeType == Xml.Element) return n;
cur++;
}
return null;
}
js.JsXml__.prototype.get = function(att) {
if(this.nodeType != Xml.Element) throw "bad nodeType";
return this._attributes.get(att);
}
js.JsXml__.prototype.getNodeName = function() {
if(this.nodeType != Xml.Element) throw "bad nodeType";
return this._nodeName;
}
js.JsXml__.prototype.getNodeValue = function() {
if(this.nodeType == Xml.Element || this.nodeType == Xml.Document) throw "bad nodeType";
return this._nodeValue;
}
js.JsXml__.prototype.getParent = function() {
return this._parent;
}
js.JsXml__.prototype.insertChild = function(x,pos) {
if(this._children == null) throw "bad nodetype";
if(x._parent != null) x._parent._children.remove(x);
x._parent = this;
this._children.insert(pos,x);
}
js.JsXml__.prototype.iterator = function() {
if(this._children == null) throw "bad nodetype";
return { cur : 0, x : this._children, hasNext : function() {
return this.cur < this.x.length;
}, next : function() {
return this.x[this.cur++];
}}
}
js.JsXml__.prototype.nodeName = null;
js.JsXml__.prototype.nodeType = null;
js.JsXml__.prototype.nodeValue = null;
js.JsXml__.prototype.parent = null;
js.JsXml__.prototype.remove = function(att) {
if(this.nodeType != Xml.Element) throw "bad nodeType";
this._attributes.remove(att);
}
js.JsXml__.prototype.removeChild = function(x) {
if(this._children == null) throw "bad nodetype";
var b = this._children.remove(x);
if(b) x._parent = null;
return b;
}
js.JsXml__.prototype.set = function(att,value) {
if(this.nodeType != Xml.Element) throw "bad nodeType";
this._attributes.set(att,value);
}
js.JsXml__.prototype.setNodeName = function(n) {
if(this.nodeType != Xml.Element) throw "bad nodeType";
return this._nodeName = n;
}
js.JsXml__.prototype.setNodeValue = function(v) {
if(this.nodeType == Xml.Element || this.nodeType == Xml.Document) throw "bad nodeType";
return this._nodeValue = v;
}
js.JsXml__.prototype.toString = function() {
if(this.nodeType == Xml.PCData) return this._nodeValue;
if(this.nodeType == Xml.CData) return ("<![CDATA[" + this._nodeValue) + "]]>";
if(this.nodeType == Xml.Comment) return ("<!--" + this._nodeValue) + "-->";
if(this.nodeType == Xml.DocType) return ("<!DOCTYPE " + this._nodeValue) + ">";
if(this.nodeType == Xml.Prolog) return ("<?" + this._nodeValue) + "?>";
var s = new StringBuf();
if(this.nodeType == Xml.Element) {
s.b[s.b.length] = "<";
s.b[s.b.length] = this._nodeName;
{ var $it0 = this._attributes.keys();
while( $it0.hasNext() ) { var k = $it0.next();
{
s.b[s.b.length] = " ";
s.b[s.b.length] = k;
s.b[s.b.length] = "=\"";
s.b[s.b.length] = this._attributes.get(k);
s.b[s.b.length] = "\"";
}
}}
if(this._children.length == 0) {
s.b[s.b.length] = "/>";
return s.b.join("");
}
s.b[s.b.length] = ">";
}
{ var $it1 = this.iterator();
while( $it1.hasNext() ) { var x = $it1.next();
s.b[s.b.length] = x.toString();
}}
if(this.nodeType == Xml.Element) {
s.b[s.b.length] = "</";
s.b[s.b.length] = this._nodeName;
s.b[s.b.length] = ">";
}
return s.b.join("");
}
js.JsXml__.prototype.__class__ = js.JsXml__;
haxe.Timer = function(time_ms) { if( time_ms === $_ ) return; {
this.id = haxe.Timer.arr.length;
haxe.Timer.arr[this.id] = this;
this.timerId = window.setInterval(("haxe.Timer.arr[" + this.id) + "].run();",time_ms);
}}
haxe.Timer.__name__ = ["haxe","Timer"];
haxe.Timer.delay = function(f,time_ms) {
var t = new haxe.Timer(time_ms);
t.run = function() {
t.stop();
f();
}
return t;
}
haxe.Timer.stamp = function() {
return Date.now().getTime() / 1000;
}
haxe.Timer.prototype.id = null;
haxe.Timer.prototype.run = function() {
null;
}
haxe.Timer.prototype.stop = function() {
if(this.id == null) return;
window.clearInterval(this.timerId);
haxe.Timer.arr[this.id] = null;
if(this.id > 100 && this.id == haxe.Timer.arr.length - 1) {
var p = this.id - 1;
while(p >= 0 && haxe.Timer.arr[p] == null) p--;
haxe.Timer.arr = haxe.Timer.arr.slice(0,p + 1);
}
this.id = null;
}
haxe.Timer.prototype.timerId = null;
haxe.Timer.prototype.__class__ = haxe.Timer;
IntHash = function(p) { if( p === $_ ) return; {
this.h = {}
if(this.h.__proto__ != null) {
this.h.__proto__ = null;
delete(this.h.__proto__);
}
else null;
}}
IntHash.__name__ = ["IntHash"];
IntHash.prototype.exists = function(key) {
return this.h[key] != null;
}
IntHash.prototype.get = function(key) {
return this.h[key];
}
IntHash.prototype.h = null;
IntHash.prototype.iterator = function() {
return { ref : this.h, it : this.keys(), hasNext : function() {
return this.it.hasNext();
}, next : function() {
var i = this.it.next();
return this.ref[i];
}}
}
IntHash.prototype.keys = function() {
var a = new Array();
for( x in this.h )
a.push(x);
;
return a.iterator();
}
IntHash.prototype.remove = function(key) {
if(this.h[key] == null) return false;
delete(this.h[key]);
return true;
}
IntHash.prototype.set = function(key,value) {
this.h[key] = value;
}
IntHash.prototype.toString = function() {
var s = new StringBuf();
s.b[s.b.length] = "{";
var it = this.keys();
{ var $it0 = it;
while( $it0.hasNext() ) { var i = $it0.next();
{
s.b[s.b.length] = i;
s.b[s.b.length] = " => ";
s.b[s.b.length] = Std.string(this.get(i));
if(it.hasNext()) s.b[s.b.length] = ", ";
}
}}
s.b[s.b.length] = "}";
return s.b.join("");
}
IntHash.prototype.__class__ = IntHash;
if(!haxe.remoting) haxe.remoting = {}
haxe.remoting.Connection = function() { }
haxe.remoting.Connection.__name__ = ["haxe","remoting","Connection"];
haxe.remoting.Connection.prototype.call = null;
haxe.remoting.Connection.prototype.resolve = null;
haxe.remoting.Connection.prototype.__class__ = haxe.remoting.Connection;
Hash = function(p) { if( p === $_ ) return; {
this.h = {}
if(this.h.__proto__ != null) {
this.h.__proto__ = null;
delete(this.h.__proto__);
}
else null;
}}
Hash.__name__ = ["Hash"];
Hash.prototype.exists = function(key) {
try {
key = "$" + key;
return this.hasOwnProperty.call(this.h,key);
}
catch( $e0 ) {
{
var e = $e0;
{
for(var i in this.h)
if( i == key ) return true;
;
return false;
}
}
}
}
Hash.prototype.get = function(key) {
return this.h["$" + key];
}
Hash.prototype.h = null;
Hash.prototype.iterator = function() {
return { ref : this.h, it : this.keys(), hasNext : function() {
return this.it.hasNext();
}, next : function() {
var i = this.it.next();
return this.ref["$" + i];
}}
}
Hash.prototype.keys = function() {
var a = new Array();
for(var i in this.h)
a.push(i.substr(1));
;
return a.iterator();
}
Hash.prototype.remove = function(key) {
if(!this.exists(key)) return false;
delete(this.h["$" + key]);
return true;
}
Hash.prototype.set = function(key,value) {
this.h["$" + key] = value;
}
Hash.prototype.toString = function() {
var s = new StringBuf();
s.b[s.b.length] = "{";
var it = this.keys();
{ var $it0 = it;
while( $it0.hasNext() ) { var i = $it0.next();
{
s.b[s.b.length] = i;
s.b[s.b.length] = " => ";
s.b[s.b.length] = Std.string(this.get(i));
if(it.hasNext()) s.b[s.b.length] = ", ";
}
}}
s.b[s.b.length] = "}";
return s.b.join("");
}
Hash.prototype.__class__ = Hash;
haxe.remoting.ExternalConnection = function(data,path) { if( data === $_ ) return; {
this.__data = data;
this.__path = path;
}}
haxe.remoting.ExternalConnection.__name__ = ["haxe","remoting","ExternalConnection"];
haxe.remoting.ExternalConnection.escapeString = function(s) {
return s;
}
haxe.remoting.ExternalConnection.doCall = function(name,path,params) {
try {
var cnx = haxe.remoting.ExternalConnection.connections.get(name);
if(cnx == null) throw "Unknown connection : " + name;
if(cnx.__data.ctx == null) throw "No context shared for the connection " + name;
var params1 = new haxe.Unserializer(params).unserialize();
var ret = cnx.__data.ctx.call(path.split("."),params1);
var s = new haxe.Serializer();
s.serialize(ret);
return s.toString() + "#";
}
catch( $e0 ) {
{
var e = $e0;
{
var s = new haxe.Serializer();
s.serializeException(e);
return s.toString();
}
}
}
}
haxe.remoting.ExternalConnection.flashConnect = function(name,flashObjectID,ctx) {
var cnx = new haxe.remoting.ExternalConnection({ ctx : ctx, name : name, flash : flashObjectID},[]);
haxe.remoting.ExternalConnection.connections.set(name,cnx);
return cnx;
}
haxe.remoting.ExternalConnection.prototype.__data = null;
haxe.remoting.ExternalConnection.prototype.__path = null;
haxe.remoting.ExternalConnection.prototype.call = function(params) {
var s = new haxe.Serializer();
s.serialize(params);
var params1 = s.toString();
var data = null;
var fobj = window.document[this.__data.flash];
if(fobj == null) fobj = window.document.getElementById[this.__data.flash];
if(fobj == null) throw ("Could not find flash object '" + this.__data.flash) + "'";
try {
data = fobj.externalRemotingCall(this.__data.name,this.__path.join("."),params1);
}
catch( $e0 ) {
{
var e = $e0;
null;
}
}
if(data == null) {
var domain, pageDomain;
try {
domain = fobj.src.split("/")[2];
pageDomain = js.Lib.window.location.host;
}
catch( $e1 ) {
{
var e = $e1;
{
domain = null;
pageDomain = null;
}
}
}
if(domain != pageDomain) throw ("ExternalConnection call failure : SWF need allowDomain('" + pageDomain) + "')";
throw "Call failure : ExternalConnection is not " + "initialized in Flash";
}
return new haxe.Unserializer(data).unserialize();
}
haxe.remoting.ExternalConnection.prototype.close = function() {
haxe.remoting.ExternalConnection.connections.remove(this.__data.name);
}
haxe.remoting.ExternalConnection.prototype.resolve = function(field) {
var e = new haxe.remoting.ExternalConnection(this.__data,this.__path.copy());
e.__path.push(field);
return e;
}
haxe.remoting.ExternalConnection.prototype.__class__ = haxe.remoting.ExternalConnection;
haxe.remoting.ExternalConnection.__interfaces__ = [haxe.remoting.Connection];
js.InputValidator = function(id,onChangeCallback) { if( id === $_ ) return; {
if(id == null) throw "id is null";
this.id = id;
this.infoSection = id + "_info";
this.isBeginning = true;
this.isValid = false;
if(onChangeCallback != null) this.onChangeCallback = onChangeCallback;
var field = js.Utils.getSection(id);
if(field == null) throw "field is null";
this.field = field;
this.field.onblur = $closure(this,"onBlur");
this.field.onkeyup = $closure(this,"onKeyUp");
this.field.onkeydown = $closure(this,"onKeyDown");
var block = js.Utils.updateSectionInnerHtml(this.infoSection,js.InputValidator.STATUS_WRITING);
block.title = "";
js.Block.show(block);
}}
js.InputValidator.__name__ = ["js","InputValidator"];
js.InputValidator.prototype.checkWriting = function(size) {
if(this.isBeginning) {
if(!js.InputTests.testMinLength(this.field.value,size)) {
return false;
}
this.isBeginning = false;
}
if(!this.isBeginning) {
if(js.InputTests.testLength(this.field.value,0)) {
var block = js.Utils.updateSectionInnerHtml(this.infoSection,js.InputValidator.STATUS_WRITING);
block.title = "";
js.Block.show(block);
this.isBeginning = true;
return false;
}
}
return true;
}
js.InputValidator.prototype.field = null;
js.InputValidator.prototype.id = null;
js.InputValidator.prototype.infoSection = null;
js.InputValidator.prototype.isBeginning = null;
js.InputValidator.prototype.isValid = null;
js.InputValidator.prototype.onBlur = function() {
null;
}
js.InputValidator.prototype.onChangeCallback = null;
js.InputValidator.prototype.onKeyDown = function() {
null;
}
js.InputValidator.prototype.onKeyUp = function() {
null;
}
js.InputValidator.prototype.showError = function(title) {
this.isValid = false;
var block = js.Utils.updateSectionInnerHtml(this.infoSection,js.InputValidator.STATUS_ERROR);
block.title = title;
js.Block.show(block);
this.onChangeCallback();
}
js.InputValidator.prototype.showOk = function() {
this.isValid = true;
var block = js.Utils.updateSectionInnerHtml(this.infoSection,js.InputValidator.STATUS_OK);
block.title = "";
js.Block.show(block);
this.onChangeCallback();
}
js.InputValidator.prototype.__class__ = js.InputValidator;
js.InputTests = function() { }
js.InputTests.__name__ = ["js","InputTests"];
js.InputTests.testMinLength = function(field,size) {
var length = field.length;
if(length < size) return false;
return true;
}
js.InputTests.testMaxLength = function(field,size) {
var length = field.length;
if(length > size) return false;
return true;
}
js.InputTests.testLength = function(field,size) {
var length = field.length;
if(length != size) return false;
return true;
}
js.InputTests.prototype.__class__ = js.InputTests;
js.TitleInputValidator = function(id,onChangeCallback) { if( id === $_ ) return; {
js.InputValidator.apply(this,[id,onChangeCallback]);
}}
js.TitleInputValidator.__name__ = ["js","TitleInputValidator"];
js.TitleInputValidator.__super__ = js.InputValidator;
for(var k in js.InputValidator.prototype ) js.TitleInputValidator.prototype[k] = js.InputValidator.prototype[k];
js.TitleInputValidator.prototype.onBlur = function() {
if(js.InputTests.testLength(this.field.value,0)) {
this.showError("Si vous n'avez rien Ã  dire alors il qu'il en soit ainsi");
return;
}
if(!js.InputTests.testMinLength(this.field.value,6)) {
this.showError("Un titre plus long ce serait plus sympa pour les autres...");
return;
}
this.showOk();
}
js.TitleInputValidator.prototype.onKeyUp = function() {
if(!this.checkWriting(6)) return;
if(!js.InputTests.testMinLength(this.field.value,6)) {
this.showError("Texte trop court : 6 caractÃ¨res minimum...");
return;
}
this.showOk();
}
js.TitleInputValidator.prototype.__class__ = js.TitleInputValidator;
js.MessageInputValidator = function(id,onChangeCallback) { if( id === $_ ) return; {
js.InputValidator.apply(this,[id,onChangeCallback]);
}}
js.MessageInputValidator.__name__ = ["js","MessageInputValidator"];
js.MessageInputValidator.__super__ = js.InputValidator;
for(var k in js.InputValidator.prototype ) js.MessageInputValidator.prototype[k] = js.InputValidator.prototype[k];
js.MessageInputValidator.prototype.checkWriting = function(size) {
if(this.isBeginning) {
if(!js.InputTests.testMinLength(this.clean(this.field.value),size)) {
return false;
}
this.isBeginning = false;
}
if(!this.isBeginning) {
if(js.InputTests.testLength(this.clean(this.field.value),0)) {
var block = js.Utils.updateSectionInnerHtml(this.infoSection,js.InputValidator.STATUS_WRITING);
block.title = "";
js.Block.show(block);
this.isBeginning = true;
return false;
}
}
return true;
}
js.MessageInputValidator.prototype.clean = function(str) {
var specialChars = ["\\+","\\*","_"];
{
var _g = 0;
while(_g < specialChars.length) {
var $char = specialChars[_g];
++_g;
var reg = new EReg(($char + "([^\\0]*?)") + $char,"");
while(reg.match(str)) {
var p = reg.matchedPos();
var end = p.pos + p.len;
str = (p.pos > 0?(str.substr(0,p.pos) + reg.matched(1)) + str.substr(end,str.length - end):reg.matched(1) + str.substr(end,str.length - end));
}
}
}
return str;
}
js.MessageInputValidator.prototype.onBlur = function() {
if(js.InputTests.testLength(this.field.value,0)) {
this.showError("Si vous n'avez rien Ã  dire alors il qu'il en soit ainsi");
return;
}
if(!js.InputTests.testMinLength(this.clean(this.field.value),6)) {
this.showError("Un titre plus long ce serait plus sympa pour les autres...");
return;
}
this.showOk();
}
js.MessageInputValidator.prototype.onKeyUp = function() {
if(!this.checkWriting(6)) return;
if(!js.InputTests.testMinLength(this.clean(this.field.value),6)) {
this.showError("Texte trop court : 6 caractÃ¨res minimum...");
return;
}
this.showOk();
}
js.MessageInputValidator.prototype.__class__ = js.MessageInputValidator;
js.MessageEditor = function() { }
js.MessageEditor.__name__ = ["js","MessageEditor"];
js.MessageEditor.fieldsToValidate = null;
js.MessageEditor._url = null;
js.MessageEditor.init = function(url,editMode,answerMode) {
js.MessageEditor._url = url;
if(editMode) {
js.MessageEditor._url += "saveThread";
}
else if(answerMode) {
js.MessageEditor._url += "saveThreadAnswer";
}
else js.MessageEditor._url += "createNewThread";
js.MessageEditor.fieldsToValidate = new List();
if(!editMode && !answerMode) js.MessageEditor.fieldsToValidate.add(new js.TitleInputValidator("title",$closure(js.MessageEditor,"onChange")));
js.MessageEditor.fieldsToValidate.add(new js.MessageInputValidator("message",$closure(js.MessageEditor,"onChange")));
js.Utils.getSection("submit").disabled = true;
if(editMode || answerMode) js.Utils.getSection("message").focus();
}
js.MessageEditor.submit = function(form) {
{ var $it0 = js.MessageEditor.fieldsToValidate.iterator();
while( $it0.hasNext() ) { var field = $it0.next();
{
if(!field.isValid) return;
}
}}
js.Js.manageForm(js.MessageEditor._url,form);
}
js.MessageEditor.insertTag = function(begin,end) {
var area = js.Utils.getSection("message");
area.focus();
js.MessageEditor.replaceSelection(area,begin,end);
}
js.MessageEditor.insertLink = function(end) {
var area = js.Utils.getSection("message");
area.focus();
js.MessageEditor.addToSelection(area,end);
}
js.MessageEditor.replaceSelection = function(input,begin,end) {
if(input.setSelectionRange) {
var selectionStart = input.selectionStart;
var selectionEnd = input.selectionEnd;
var replaceString = begin + (input.value.substr(selectionStart,selectionEnd) + end);
input.value = (input.value.substr(0,selectionStart) + replaceString) + input.value.substr(selectionEnd,input.value.length);
}
else if(js.Lib.document.selection) {
var range = js.Lib.document.selection.createRange();
if(range.parentElement() == input) {
var isCollapsed = range.text == "";
var replaceString = (begin + range.text) + end;
range.text = replaceString;
if(!isCollapsed) {
range.moveStart("character",-replaceString.length);
range.select();
}
}
}
}
js.MessageEditor.addToSelection = function(input,end) {
if(input.setSelectionRange) {
var selectionEnd = input.selectionEnd;
var selectionStart = input.selectionStart;
var selectionEnd1 = input.selectionEnd;
var replaceString = end;
if(selectionStart != selectionEnd1) {
input.value = (input.value.substr(0,selectionStart) + input.value.substr(selectionEnd1,input.value.length)) + replaceString;
}
else {
input.value = (input.value.substr(0,selectionStart) + replaceString) + input.value.substr(selectionEnd1,input.value.length);
}
}
else if(js.Lib.document.selection) {
var range = js.Lib.document.selection.createRange();
if(range.parentElement() == input) {
var isCollapsed = range.text == "";
var replaceString = range.text + end;
range.text = replaceString;
if(!isCollapsed) {
range.moveStart("character",-replaceString.length);
range.select();
}
}
}
}
js.MessageEditor.onChange = function() {
{ var $it0 = js.MessageEditor.fieldsToValidate.iterator();
while( $it0.hasNext() ) { var field = $it0.next();
{
if(!field.isValid) {
js.Utils.getSection("submit").disabled = true;
return;
}
}
}}
js.Utils.getSection("submit").disabled = false;
}
js.MessageEditor.prototype.__class__ = js.MessageEditor;
js.HordeTip = function() { }
js.HordeTip.__name__ = ["js","HordeTip"];
js.HordeTip.showTip = function(obj,title,contentBase) {
if(!js.Tutorial.isRunning()) {
mt.js.Tip.showTip(obj,title,contentBase);
}
}
js.HordeTip.showSpecialTip = function(obj,cssClass,title,contentBase) {
if(!js.Tutorial.isRunning()) {
var content = (("<div class=\"title\">" + title) + "</div>") + contentBase;
mt.js.Tip.show(obj,content,cssClass);
}
}
js.HordeTip.showHelp = function(obj,contentBase) {
if(js.Tutorial.isRunning()) {
return;
}
js.HordeTip.showTip(obj,"",contentBase);
var currentTip = mt.js.Tip.tooltip;
if(currentTip == null) return;
currentTip.className = "helpTip";
var size = mt.js.Tip.elementSize(obj);
currentTip.style.left = size.x + "px";
currentTip.style.top = (size.y + 16) + "px";
}
js.HordeTip.hide = function() {
mt.js.Tip.hide();
}
js.HordeTip.showBlock = function(name) {
var block = js.Utils.getSection(name);
js.Block.show(block);
js.Cookie.set("block_" + name,js.Block.getVisibility(block));
}
js.HordeTip.hideBlock = function(name) {
var block = js.Utils.getSection(name);
js.Block.hide(block);
js.Cookie.set("block_" + name,js.Block.getVisibility(block));
}
js.HordeTip.toggleBlock = function(name) {
var block = js.Utils.getSection(name);
if(js.Block.isVisible(block)) {
js.Block.hide(block);
}
else {
js.Block.show(block);
}
var notBlock = js.Utils.getSection("!" + name);
if(notBlock != null) {
if(js.Block.isVisible(block)) {
js.Block.hide(notBlock);
}
else {
js.Block.show(notBlock);
}
}
return false;
}
js.HordeTip.restoreBlock = function(name,def) {
var block = js.Utils.getSection(name);
var old = js.Cookie.get("block_" + name);
if(old == "none" || (old == null && def == false)) {
js.Block.hide(block);
}
else {
js.Block.show(block);
}
js.Cookie.set("block_" + name,js.Block.getVisibility(block));
var notBlock = js.Utils.getSection("!" + name);
if(notBlock != null) {
if(js.Block.isVisible(block)) {
js.Block.hide(notBlock);
}
else {
js.Block.show(notBlock);
}
}
}
js.HordeTip.prototype.__class__ = js.HordeTip;
haxe.remoting.Context = function(p) { if( p === $_ ) return; {
this.objects = new Hash();
}}
haxe.remoting.Context.__name__ = ["haxe","remoting","Context"];
haxe.remoting.Context.share = function(name,obj) {
var ctx = new haxe.remoting.Context();
ctx.addObject(name,obj);
return ctx;
}
haxe.remoting.Context.prototype.addObject = function(name,obj,recursive) {
this.objects.set(name,{ obj : obj, rec : recursive});
}
haxe.remoting.Context.prototype.call = function(path,params) {
if(path.length < 2) throw ("Invalid path '" + path.join(".")) + "'";
var inf = this.objects.get(path[0]);
if(inf == null) throw "No such object " + path[0];
var o = inf.obj;
var m = Reflect.field(o,path[1]);
if(path.length > 2) {
if(!inf.rec) throw "Can't access " + path.join(".");
{
var _g1 = 2, _g = path.length;
while(_g1 < _g) {
var i = _g1++;
o = m;
m = Reflect.field(o,path[i]);
}
}
}
if(!Reflect.isFunction(m)) throw "No such method " + path.join(".");
return m.apply(o,params);
}
haxe.remoting.Context.prototype.objects = null;
haxe.remoting.Context.prototype.__class__ = haxe.remoting.Context;
StringBuf = function(p) { if( p === $_ ) return; {
this.b = new Array();
}}
StringBuf.__name__ = ["StringBuf"];
StringBuf.prototype.add = function(x) {
this.b[this.b.length] = x;
}
StringBuf.prototype.addChar = function(c) {
this.b[this.b.length] = String.fromCharCode(c);
}
StringBuf.prototype.addSub = function(s,pos,len) {
this.b[this.b.length] = s.substr(pos,len);
}
StringBuf.prototype.b = null;
StringBuf.prototype.toString = function() {
return this.b.join("");
}
StringBuf.prototype.__class__ = StringBuf;
MapCommon = function() { }
MapCommon.__name__ = ["MapCommon"];
MapCommon.getRSeed = function() {
return new mt.Rand(2527896);
}
MapCommon.genKey = function(len) {
var str = new StringBuf();
var rseed = MapCommon.getRSeed();
{
var _g = 0;
while(_g < len) {
var i = _g++;
str.b[str.b.length] = String.fromCharCode(65 + ((rseed.seed = (rseed.seed * 16807) % 2147483647) & 1073741823) % 50);
}
}
return str.b.join("");
}
MapCommon.permute = function(s) {
var rseed = MapCommon.getRSeed();
var arr = s.split("");
var i = 0;
var changes = new Array();
while(i < arr.length) {
var swap = ((rseed.seed = (rseed.seed * 16807) % 2147483647) & 1073741823) % arr.length;
if(changes[swap] == null && changes[i] == null) {
var tmp = arr[swap];
arr[swap] = arr[i];
arr[i] = tmp;
changes[i] = true;
changes[swap] = true;
}
i++;
}
return arr.join("");
}
MapCommon.zombieDanger = function(seed,z,fl_exact) {
if(z == 0) return 0;
if(fl_exact) return Math.floor((z - 1) / 2);
var rseed = new mt.Rand(seed);
switch(((rseed.seed = (rseed.seed * 16807) % 2147483647) & 1073741823) % 3) {
case 0:{
if(z > 3) z--;
else z++;
}break;
case 1:{
z++;
}break;
default:{
null;
}break;
}
return Std["int"](Math.min(2,Math.floor((z - 1) / 2)));
}
MapCommon.getPathLength = function(plist) {
var prev = null;
var len = 0;
{
var _g = 0;
while(_g < plist.length) {
var pt = plist[_g];
++_g;
if(prev != null && pt.x != null && pt.y != null) {
len += Math.floor(Math.abs(pt.x - prev.x) + Math.abs(pt.y - prev.y));
}
prev = pt;
}
}
return len;
}
MapCommon.coords = function(cityX,cityY,x,y) {
return { x : x - cityX, y : -(y - cityY), sep : " / "}
}
MapCommon.coordsToReal = function(cityX,cityY,x,y) {
return { x : cityX + x, y : cityY - y, sep : " / "}
}
MapCommon.prototype.__class__ = MapCommon;
Lambda = function() { }
Lambda.__name__ = ["Lambda"];
Lambda.array = function(it) {
var a = new Array();
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var i = $it0.next();
a.push(i);
}}
return a;
}
Lambda.list = function(it) {
var l = new List();
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var i = $it0.next();
l.add(i);
}}
return l;
}
Lambda.map = function(it,f) {
var l = new List();
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var x = $it0.next();
l.add(f(x));
}}
return l;
}
Lambda.mapi = function(it,f) {
var l = new List();
var i = 0;
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var x = $it0.next();
l.add(f(i++,x));
}}
return l;
}
Lambda.has = function(it,elt,cmp) {
if(cmp == null) {
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var x = $it0.next();
if(x == elt) return true;
}}
}
else {
{ var $it1 = it.iterator();
while( $it1.hasNext() ) { var x = $it1.next();
if(cmp(x,elt)) return true;
}}
}
return false;
}
Lambda.exists = function(it,f) {
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var x = $it0.next();
if(f(x)) return true;
}}
return false;
}
Lambda.foreach = function(it,f) {
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var x = $it0.next();
if(!f(x)) return false;
}}
return true;
}
Lambda.iter = function(it,f) {
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var x = $it0.next();
f(x);
}}
}
Lambda.filter = function(it,f) {
var l = new List();
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var x = $it0.next();
if(f(x)) l.add(x);
}}
return l;
}
Lambda.fold = function(it,f,first) {
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var x = $it0.next();
first = f(x,first);
}}
return first;
}
Lambda.count = function(it) {
var n = 0;
{ var $it0 = it.iterator();
while( $it0.hasNext() ) { var _ = $it0.next();
++n;
}}
return n;
}
Lambda.empty = function(it) {
return !it.iterator().hasNext();
}
Lambda.prototype.__class__ = Lambda;
js.Tutorial = function() { }
js.Tutorial.__name__ = ["js","Tutorial"];
js.Tutorial.startTutorial = function(t_tname,tid) {
if(js.Tutorial.id != null) js.Tutorial.cancelTutorial();
js.Tutorial.tname = t_tname;
js.Tutorial.id = tid;
js.Tutorial.step = 0;
js.Tutorial.showTutorialStep();
js.Block.show(js.Utils.getSection("tutorialButton"));
js.Utils.updateSectionInnerHtml("tutorialName",js.Tutorial.tname);
}
js.Tutorial.endTutorial = function(tid,tstep) {
if(js.Tutorial.id != tid || js.Tutorial.step != tstep) {
return;
}
js.Utils.getSection("tutorialDone").style.display = "block";
js.Cookie.set("tuto_" + js.Tutorial.id,"true");
js.Tutorial.updateTick(js.Tutorial.id);
js.Tutorial.stopTutorial();
}
js.Tutorial.cancelTutorial = function() {
var cur = js.Utils.getSection((("tuto_" + js.Tutorial.id) + "_") + js.Tutorial.step);
if(cur != null) {
js.Block.hide(cur);
}
js.Tutorial.stopTutorial();
}
js.Tutorial.stopTutorial = function() {
js.Block.hide(js.Utils.getSection("tutorialButton"));
if(js.Tutorial.id == null) return;
js.Utils.getSection("body").className = "";
var currentStep = 0;
var ref = null;
while((ref = js.Utils.getSection((("tuto_" + js.Tutorial.id) + "_") + currentStep)) != null) {
if(currentStep != js.Tutorial.step) {
js.Block.hide(ref);
}
currentStep++;
}
js.Tutorial.id = null;
js.Tutorial.step = null;
js.Tutorial.tname = null;
}
js.Tutorial.setTutorialStep = function(tid,tstep) {
if(js.Tutorial.id == null || js.Tutorial.step == null) {
return;
}
if(tid != js.Tutorial.id || tstep == js.Tutorial.step) {
return;
}
if(tstep != js.Tutorial.step + 1) {
return;
}
js.Tutorial.hideTutorialStep();
js.Tutorial.step = tstep;
var ref = js.Utils.getSection((("tuto_" + tid) + "_") + js.Tutorial.step);
if(ref == null) {
js.Tutorial.endTutorial(js.Tutorial.id,js.Tutorial.step);
return;
}
js.Tutorial.showTutorialStep();
}
js.Tutorial.nextTutorialStep = function() {
js.Tutorial.setTutorialStep(js.Tutorial.id,js.Tutorial.step + 1);
}
js.Tutorial.hideTutorialStep = function() {
if(js.Tutorial.id == null) {
return;
}
js.Block.hide(js.Utils.getSection((("tuto_" + js.Tutorial.id) + "_") + js.Tutorial.step));
}
js.Tutorial.showTutorialStep = function() {
if(js.Tutorial.id == null) {
return;
}
var notif = js.Utils.getSection("notification");
if(notif != null && notif.className == "showNotif") {
return;
}
var name = (("tuto_" + js.Tutorial.id) + "_") + js.Tutorial.step;
var ref = js.Utils.getSection(name);
if(ref == null) {
js.Tutorial.setTutorialStep(js.Tutorial.id,0);
return;
}
var black = js.Utils.getSection((("black_" + js.Tutorial.id) + "_") + js.Tutorial.step);
if(black != null) {
js.Utils.getSection("body").className = "hideSwf";
}
else {
js.Utils.getSection("body").className = "";
}
js.Block.show(ref);
var anchor = js.Utils.getSection((("anchor_" + js.Tutorial.id) + "_") + js.Tutorial.step);
if(anchor != null) {
ref.style.left = js.Tutorial.getX(anchor) + "px";
ref.style.top = js.Tutorial.getY(anchor) + "px";
}
var y = js.Tutorial.getY(ref);
js.Lib.window.scrollTo(0,y - 270);
}
js.Tutorial.getX = function(dom) {
var x = dom.offsetLeft;
var elem = dom.offsetParent;
var last = 0;
while(elem != null) {
var off = elem.offsetLeft;
x += off;
if(off != 0 && off != null) {
last = off;
}
elem = elem.offsetParent;
}
if(last != null) x -= last;
return x;
}
js.Tutorial.getY = function(dom) {
var y = dom.offsetTop;
var elem = dom.offsetParent;
while(elem != null) {
y += elem.offsetTop;
elem = elem.offsetParent;
}
return y;
}
js.Tutorial.updateTick = function(tid) {
var fl_done = js.Cookie.get("tuto_" + tid);
var ref = js.Utils.getSection("tick_" + tid);
if(ref != null && fl_done == "true") {
ref.className = "ticked";
}
}
js.Tutorial.isRunning = function() {
return false;
}
js.Tutorial.resetForDemo = function(url,dom) {
js.Cookie.remove("tuto_principles");
js.Cookie.remove("tuto_interface");
js.Cookie.remove("tuto_firstSteps");
js.Cookie.remove("tuto_explore");
js.XmlHttp.get(url,dom);
}
js.Tutorial.prototype.__class__ = js.Tutorial;
js.XmlHttp = function() { }
js.XmlHttp.__name__ = ["js","XmlHttp"];
js.XmlHttp.get = function(url,obj) {
if(js.XmlHttp.stop) return;
if(url == null || url == "null" || url == "" || url == "undefined") throw "Bad url: " + url;
if(!(new EReg("tool/|user/|admin/|outside/","").match(url))) {
js.JsMap.dispose();
}
if(js.XmlHttp.lock != null) {
haxe.Log.trace("get: locked",{ fileName : "XmlHttp.hx", lineNumber : 18, className : "js.XmlHttp", methodName : "get"});
return;
}
try {
null;
}
catch( $e0 ) {
{
var e = $e0;
null;
}
}
if(new EReg("[?]","").match(url)) url += ";rand=" + Std.random(9999999);
else url += "?rand=" + Std.random(9999999);
var ls = js.Utils.getSection("loading_section");
if(ls != null) {
js.Block.show(ls);
}
var r = new haxe.Http("/" + url);
js.XmlHttp.onStart(r,obj);
js.XmlHttp.urlForBack = url;
r.setHeader("X-Handler","js.XmlHttp");
r.onData = $closure(js.XmlHttp,"onData");
r.onError = $closure(js.XmlHttp,"onError");
r.request(false);
}
js.XmlHttp.getDelayed = function(url,delay) {
var o = new haxe.Timer(delay);
o.run = function() {
o.stop();
js.XmlHttp.enqueue(url);
}
return o;
}
js.XmlHttp.post = function(url,form,vname) {
if(js.XmlHttp.lock != null) {
return;
}
var h = new Hash();
var l = form.elements;
var list = new List();
{
var _g1 = 0, _g = l.length;
while(_g1 < _g) {
var i = _g1++;
var e = l[i];
if(e.name == null || e.name == "") continue;
if((e.type != "checkbox" && e.type != "radio") || e.checked) {
if(e.name == vname) list.add(e.value);
else h.set(e.name,e.value);
}
if(e.type == "submit") {
e.disabled = true;
js.XmlHttp.lockButton = e;
}
}
}
if(vname != null) h.set(vname,list.join("|"));
return js.XmlHttp.postHash(url,h);
}
js.XmlHttp.postHash = function(url,h) {
if(js.XmlHttp.lock != null) {
return;
}
if(new EReg("[?]","").match(url)) url += ";rand=" + Std.random(9999999);
else url += "?rand=" + Std.random(9999999);
var r = new haxe.Http("/" + url);
js.XmlHttp.urlForBack = null;
r.setHeader("X-Handler","js.XmlHttp");
r.onData = $closure(js.XmlHttp,"onData");
r.onError = $closure(js.XmlHttp,"onError");
{ var $it0 = h.keys();
while( $it0.hasNext() ) { var k = $it0.next();
{
r.setParameter(k,h.get(k));
}
}}
js.XmlHttp.onStart(r,js.XmlHttp.lockButton);
r.request(true);
}
js.XmlHttp.enqueue = function(url) {
if(js.XmlHttp.lock != null) {
js.XmlHttp.queue.add(url);
return;
}
js.XmlHttp.get(url);
}
js.XmlHttp.lastLinkLauncher = null;
js.XmlHttp.lastLinkLauncherCursor = null;
js.XmlHttp.onStart = function(r,ll) {
if(js.XmlHttp.oldLock != null) {
js.XmlHttp.oldLock.onData = function(v) {
null;
}
js.XmlHttp.oldLock.onError = function(v) {
null;
}
js.XmlHttp.oldLock = null;
}
js.XmlHttp.lock = r;
js.XmlHttp.lockTimeOut = new haxe.Timer(10000);
js.XmlHttp.lockTimeOut.run = function() {
var me = js.XmlHttp;
if(me.lockTimeOut != null) {
me.lockTimeOut.stop();
me.lockTimeOut = null;
}
me.oldLock = me.lock;
me.lock = null;
}
js.Utils.addClass("globalContainer","httpLoading");
js.Lib.document.body.style.cursor = "progress";
if(ll != null) {
if(js.XmlHttp.lastLinkLauncher != null) {
js.XmlHttp.lastLinkLauncher.style.cursor = js.XmlHttp.lastLinkLauncherCursor;
}
js.XmlHttp.lastLinkLauncher = ll;
js.XmlHttp.lastLinkLauncherCursor = ll.style.cursor;
ll.style.cursor = "progress";
}
}
js.XmlHttp.cleanLastLinkLauncher = function() {
js.Lib.document.body.style.cursor = "default";
if(js.XmlHttp.lastLinkLauncher != null) {
js.XmlHttp.lastLinkLauncher.style.cursor = js.XmlHttp.lastLinkLauncherCursor;
js.XmlHttp.lastLinkLauncher = null;
}
}
js.XmlHttp.onEnd = function() {
js.XmlHttp.cleanLastLinkLauncher();
if(js.XmlHttp.lockTimeOut != null) {
js.XmlHttp.lockTimeOut.stop();
js.XmlHttp.lockTimeOut = null;
}
js.XmlHttp.lock = null;
js.XmlHttp.oldLock = null;
js.XmlHttp.urlForBack = null;
js.Js.updateTitle();
js.Utils.removeClass("globalContainer","httpLoading");
if(js.XmlHttp.queue.length > 0) {
js.XmlHttp.get(js.XmlHttp.queue.pop());
return;
}
if(js.XmlHttp.lockButton != null) {
js.XmlHttp.lockButton.disabled = false;
}
}
js.XmlHttp.onError = function(msg) {
haxe.Log.trace((("Error[" + js.XmlHttp.urlForBack) + "]: ") + msg,{ fileName : "XmlHttp.hx", lineNumber : 195, className : "js.XmlHttp", methodName : "onError"});
js.XmlHttp.onEnd();
}
js.XmlHttp.onData = function(data) {
var url = js.XmlHttp.urlForBack;
var x;
try {
x = Xml.parse(("<resp>" + data) + "</resp>").firstChild();
}
catch( $e0 ) {
{
var e = $e0;
{
var msg = (function($this) {
var $r;
switch(js.Js.LANG) {
case "fr":{
$r = "Erreur XmlHttp : pour une raison inconnue votre navigateur refuse de charger la page. Assurez-vous qu'aucun autre logiciel n'entre en conflit (antivirus, antispyware).";
}break;
case "de":{
$r = "XmlHttp Fehler: Dein Browser verweigert das Laden der Seite. Überprüfe bitte, ob das ein anderes Programm oder Plug-in die Ursache sein könnte (Antivirus, Antispyware, Firewall etc...).";
}break;
default:{
$r = "XmlHttp error : an unknown error occured, preventing the page to load properly. Please disable any software that may interfer with the download (antivirus, spyware protection, internet protection, ...).";
}break;
}
return $r;
}(this));
js.Lib.alert(msg);
return;
}
}
}
var backOk = false;
var noBack = false;
var fillMain = false;
var scroll = false;
var addToCache = null;
try {
{ var $it1 = x.elements();
while( $it1.hasNext() ) { var n = $it1.next();
{
if((n.getNodeName() == "fill" || n.getNodeName() == "add") && n.exists("id")) {
var id = n.get("id");
if((id == "gamebody" || id == "generic_section" || id == "teaser") && n.getNodeName() == "fill") {
fillMain = true;
scroll = true;
mt.js.Tip.hide();
}
if(n.exists("refresh")) {
var urlRefresh = url;
if(urlRefresh != null) {
var r = new EReg("(.*)[?;]rand=[0-9]+","");
if(r.match(urlRefresh)) urlRefresh = r.matched(1);
var refresh = Std.parseInt(n.get("refresh"));
if(refresh != null && refresh > 5) haxe.Timer.delay(function(f,a1) {
return function() {
return f(a1);
}
}($closure(js.XmlHttp,"enqueue"),urlRefresh),refresh * 1000);
}
}
var d = js.Utils.byId(id);
if(d != null) {
var s = "";
{ var $it2 = n.iterator();
while( $it2.hasNext() ) { var c = $it2.next();
{
if(c.nodeType == Xml.CData) s += c.getNodeValue();
else s += c.toString();
}
}}
if(n.exists("class")) {
d.className = n.get("class");
}
if(n.getNodeName() == "add") {
d.innerHTML += s;
}
else {
d.innerHTML = s;
}
if(n.exists("scrollDown")) {
js.Utils.scrollDown(id);
}
}
else {
haxe.Log.trace("section not found : " + id,{ fileName : "XmlHttp.hx", lineNumber : 278, className : "js.XmlHttp", methodName : "onData"});
}
js.HordeTip.hide();
}
else if(n.getNodeName() == "back") {
if(n.exists("clear")) {
js.BackForward.clear();
}
else if(n.exists("ignore")) {
noBack = true;
}
else {
if(n.firstChild() != null && n.firstChild().getNodeValue() != null) {
var u = n.firstChild().getNodeValue();
if(u == "") js.BackForward.setBase(url);
js.BackForward.add(u);
}
else if(url != null) {
js.BackForward.add(url);
}
backOk = true;
}
}
else if(n.getNodeName() == "tip") {
var id = n.get("id");
var s = "";
{ var $it3 = n.iterator();
while( $it3.hasNext() ) { var c = $it3.next();
{
if(c.nodeType == Xml.CData) s += c.getNodeValue();
else s += c.toString();
}
}}
var refObj = js.Utils.byId(id);
if(refObj == null) throw "No object with id: " + id;
mt.js.Tip.show(refObj,s,n.get("class"),n.exists("placeRef"));
}
else if(n.getNodeName() == "menu") {
var menuId = n.get("id");
var selectedId = n.get("selected");
var className = (n.exists("class")?n.get("class"):"selected");
js.Utils.menuSelect(menuId,selectedId,className);
}
else if(n.getNodeName() == "style") {
var id = n.get("id");
if(n.exists("add")) js.Utils.addClass(id,n.get("add"));
else if(n.exists("rm")) js.Utils.removeClass(id,n.get("rm"));
else if(n.exists("class")) js.Utils.setClass(id,n.get("class"));
}
else if(n.getNodeName() == "input") {
var e = js.Utils.byId(n.get("id"));
var c = n.firstChild();
if(c != null) e.value = c.getNodeValue();
else e.value = "";
}
else if(n.getNodeName() == "scrolltop") {
scroll = true;
}
else if(n.getNodeName() == "load") {
js.XmlHttp.enqueue(n.firstChild().getNodeValue());
}
else if(n.getNodeName() == "reboot") {
js.Js.reboot();
}
else if(n.getNodeName() == "rebootMobile") {
js.Js.rebootMobile();
}
else if(n.getNodeName() == "alert") {
js.Lib.alert(n.firstChild().getNodeValue());
}
else if(n.getNodeName() == "title") {
js.Js.setTitle(n.firstChild().getNodeValue());
}
else if(n.getNodeName() == "confirm") {
var rs = js.Lib.window.confirm(n.firstChild().getNodeValue());
if(rs) {
js.XmlHttp.enqueue(n.get("url"));
}
}
else if(n.getNodeName() == "script") {
var s = "";
{ var $it4 = n.iterator();
while( $it4.hasNext() ) { var c = $it4.next();
{
if(c.nodeType == Xml.CData) s += c.getNodeValue();
else s += c.toString();
}
}}
js.Lib.eval(s);
}
else if(n.getNodeName() == "exception") {
var s = "";
{ var $it5 = n.elementsNamed("head");
while( $it5.hasNext() ) { var h = $it5.next();
{
s += ("Exception: " + h.firstChild().getNodeValue()) + "\n";
}
}}
{ var $it6 = n.elementsNamed("stack");
while( $it6.hasNext() ) { var st = $it6.next();
{
{ var $it7 = st.elements();
while( $it7.hasNext() ) { var e = $it7.next();
{
s += (function($this) {
var $r;
switch(e.getNodeName()) {
case "cfunction":{
$r = "cfunction";
}break;
case "module":{
$r = "Module " + e.get("n");
}break;
case "file":{
$r = (e.get("n") + ":") + e.get("l");
}break;
default:{
$r = null;
}break;
}
return $r;
}(this));
s += "\n";
}
}}
}
}}
haxe.Log.trace(s,{ fileName : "XmlHttp.hx", lineNumber : 376, className : "js.XmlHttp", methodName : "onData"});
}
else {
haxe.Log.trace("Ignore " + n,{ fileName : "XmlHttp.hx", lineNumber : 378, className : "js.XmlHttp", methodName : "onData"});
}
}
}}
}
catch( $e8 ) {
{
var e = $e8;
{
haxe.Log.trace("Exception",{ fileName : "XmlHttp.hx", lineNumber : 382, className : "js.XmlHttp", methodName : "onData"});
haxe.Log.trace(e,{ fileName : "XmlHttp.hx", lineNumber : 383, className : "js.XmlHttp", methodName : "onData"});
haxe.Log.trace(e.message,{ fileName : "XmlHttp.hx", lineNumber : 384, className : "js.XmlHttp", methodName : "onData"});
}
}
}
js.XmlHttp.execJs();
mt.js.Tip.clean();
var t = mt.js.Tip.lastRef;
while(t != null) {
t = t.parentNode;
if(t == null || js.XmlHttp.lastLinkLauncher == null) break;
if(t == js.XmlHttp.lastLinkLauncher) {
mt.js.Tip.hide();
break;
}
}
haxe.Timer.delay($closure(mt.js.Tip,"clean"),1000);
if(fillMain && !backOk && url != null && !noBack) {
js.BackForward.add(url);
}
else if(!backOk) {
js.BackForward.add(null);
}
if(scroll) js.Utils.scrollTop();
js.XmlHttp.onEnd();
js.Block.hide(js.Utils.getSection("loading_section"));
}
js.XmlHttp.execJs = function() {
var i = 1;
while(true) {
var e = js.Utils.byId("js_" + i);
if(e == null) break;
e.setAttribute("id","");
js.Lib.eval(e.innerHTML);
i++;
}
}
js.XmlHttp.prototype.__class__ = js.XmlHttp;
js.CountDown = function(p) { if( p === $_ ) return; {
null;
}}
js.CountDown.__name__ = ["js","CountDown"];
js.CountDown.countDowns = null;
js.CountDown.init = function() {
if(js.CountDown.countDowns == null) {
js.CountDown.countDowns = new Hash();
return;
}
if(Lambda.count(js.CountDown.countDowns) > 0) {
{ var $it0 = js.CountDown.countDowns.keys();
while( $it0.hasNext() ) { var key = $it0.next();
{
js.CountDown.doGarbage(key);
}
}}
}
js.CountDown.countDowns = new Hash();
}
js.CountDown.addTimedAction = function(section,action,cbk) {
var h = new haxe.Http(action);
h.onData = function(data) {
js.CountDown.updateTimedAction(section,data,cbk);
}
h.request(false);
}
js.CountDown.add = function(section,remainingTime,delay,finishAction,cbk) {
if(js.CountDown.countDowns == null) return null;
if(js.CountDown.countDowns.exists(section)) {
js.CountDown.doGarbage(section);
}
var cd = new js.CountDown();
cd.timer = new haxe.Timer(delay);
cd.timer.run = $closure(cd,"reloadCountDowns");
cd.section = section;
cd.remainingTime = remainingTime;
cd.finishAction = finishAction;
cd.garbageMethod = $closure(js.CountDown,"doGarbage");
cd.cbk = cbk;
cd.baseTime = remainingTime;
js.CountDown.countDowns.set(section,cd);
return cd;
}
js.CountDown.updateTimedAction = function(section,data,cbk) {
js.CountDown.add(section,Std.parseInt(data),100,null,cbk);
}
js.CountDown.stop = function() {
if(js.CountDown.countDowns == null) return;
{ var $it0 = js.CountDown.countDowns.iterator();
while( $it0.hasNext() ) { var cd = $it0.next();
{
cd.timer.stop();
cd.timer = null;
}
}}
js.CountDown.countDowns = null;
}
js.CountDown.doGarbage = function(section) {
var cd = js.CountDown.countDowns.get(section);
cd.timer.stop();
cd.timer = null;
js.CountDown.countDowns.remove(section);
}
js.CountDown.prototype.baseTime = null;
js.CountDown.prototype.cbk = null;
js.CountDown.prototype.finishAction = null;
js.CountDown.prototype.garbageMethod = null;
js.CountDown.prototype.reloadCountDowns = function() {
this.remainingTime--;
if(this.remainingTime <= 0) {
this.garbageMethod(this.section);
this.remainingTime = 0;
if(this.finishAction != null) {
this.finishAction();
}
}
var div = js.Utils.getSection(this.section);
if(div != null) {
if(this.cbk != null) this.cbk(div,this.baseTime,this.remainingTime);
else div.innerHTML = Std.string(this.remainingTime);
}
var div1 = js.Utils.getSection(this.section);
if(div1 != null) {
if(this.cbk != null) this.cbk(div1,this.baseTime,this.remainingTime);
else div1.innerHTML = Std.string(this.remainingTime);
}
}
js.CountDown.prototype.remainingTime = null;
js.CountDown.prototype.section = null;
js.CountDown.prototype.timer = null;
js.CountDown.prototype.__class__ = js.CountDown;
DateTools = function() { }
DateTools.__name__ = ["DateTools"];
DateTools.__format_get = function(d,e) {
return (function($this) {
var $r;
switch(e) {
case "%":{
$r = "%";
}break;
case "C":{
$r = StringTools.lpad(Std.string(Std["int"](d.getFullYear() / 100)),"0",2);
}break;
case "d":{
$r = StringTools.lpad(Std.string(d.getDate()),"0",2);
}break;
case "D":{
$r = DateTools.__format(d,"%m/%d/%y");
}break;
case "e":{
$r = Std.string(d.getDate());
}break;
case "H":case "k":{
$r = StringTools.lpad(Std.string(d.getHours()),(e == "H"?"0":" "),2);
}break;
case "I":case "l":{
$r = (function($this) {
var $r;
var hour = d.getHours() % 12;
$r = StringTools.lpad(Std.string((hour == 0?12:hour)),(e == "I"?"0":" "),2);
return $r;
}($this));
}break;
case "m":{
$r = StringTools.lpad(Std.string(d.getMonth() + 1),"0",2);
}break;
case "M":{
$r = StringTools.lpad(Std.string(d.getMinutes()),"0",2);
}break;
case "n":{
$r = "\n";
}break;
case "p":{
$r = (d.getHours() > 11?"PM":"AM");
}break;
case "r":{
$r = DateTools.__format(d,"%I:%M:%S %p");
}break;
case "R":{
$r = DateTools.__format(d,"%H:%M");
}break;
case "s":{
$r = Std.string(Std["int"](d.getTime() / 1000));
}break;
case "S":{
$r = StringTools.lpad(Std.string(d.getSeconds()),"0",2);
}break;
case "t":{
$r = "\t";
}break;
case "T":{
$r = DateTools.__format(d,"%H:%M:%S");
}break;
case "u":{
$r = (function($this) {
var $r;
var t = d.getDay();
$r = (t == 0?"7":Std.string(t));
return $r;
}($this));
}break;
case "w":{
$r = Std.string(d.getDay());
}break;
case "y":{
$r = StringTools.lpad(Std.string(d.getFullYear() % 100),"0",2);
}break;
case "Y":{
$r = Std.string(d.getFullYear());
}break;
default:{
$r = (function($this) {
var $r;
throw ("Date.format %" + e) + "- not implemented yet.";
return $r;
}($this));
}break;
}
return $r;
}(this));
}
DateTools.__format = function(d,f) {
var r = new StringBuf();
var p = 0;
while(true) {
var np = f.indexOf("%",p);
if(np < 0) break;
r.b[r.b.length] = f.substr(p,np - p);
r.b[r.b.length] = DateTools.__format_get(d,f.substr(np + 1,1));
p = np + 2;
}
r.b[r.b.length] = f.substr(p,f.length - p);
return r.b.join("");
}
DateTools.format = function(d,f) {
return DateTools.__format(d,f);
}
DateTools.delta = function(d,t) {
return Date.fromTime(d.getTime() + t);
}
DateTools.getMonthDays = function(d) {
var month = d.getMonth();
var year = d.getFullYear();
if(month != 1) return DateTools.DAYS_OF_MONTH[month];
var isB = ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0);
return (isB?29:28);
}
DateTools.seconds = function(n) {
return n * 1000.0;
}
DateTools.minutes = function(n) {
return (n * 60.0) * 1000.0;
}
DateTools.hours = function(n) {
return ((n * 60.0) * 60.0) * 1000.0;
}
DateTools.days = function(n) {
return (((n * 24.0) * 60.0) * 60.0) * 1000.0;
}
DateTools.parse = function(t) {
var s = t / 1000;
var m = s / 60;
var h = m / 60;
return { ms : t % 1000, seconds : Std["int"](s % 60), minutes : Std["int"](m % 60), hours : Std["int"](h % 24), days : Std["int"](h / 24)}
}
DateTools.make = function(o) {
return o.ms + 1000.0 * (o.seconds + 60.0 * (o.minutes + 60.0 * (o.hours + 24.0 * o.days)));
}
DateTools.prototype.__class__ = DateTools;
haxe.Log = function() { }
haxe.Log.__name__ = ["haxe","Log"];
haxe.Log.trace = function(v,infos) {
js.Boot.__trace(v,infos);
}
haxe.Log.clear = function() {
js.Boot.__clear_trace();
}
haxe.Log.prototype.__class__ = haxe.Log;
Std = function() { }
Std.__name__ = ["Std"];
Std["is"] = function(v,t) {
return js.Boot.__instanceof(v,t);
}
Std.string = function(s) {
return js.Boot.__string_rec(s,"");
}
Std["int"] = function(x) {
if(x < 0) return Math.ceil(x);
return Math.floor(x);
}
Std.parseInt = function(x) {
var v = parseInt(x);
if(Math.isNaN(v)) return null;
return v;
}
Std.parseFloat = function(x) {
return parseFloat(x);
}
Std.random = function(x) {
return Math.floor(Math.random() * x);
}
Std.prototype.__class__ = Std;
haxe.Unserializer = function(buf) { if( buf === $_ ) return; {
this.buf = buf;
this.length = buf.length;
this.pos = 0;
this.scache = new Array();
this.cache = new Array();
this.setResolver(haxe.Unserializer.DEFAULT_RESOLVER);
}}
haxe.Unserializer.__name__ = ["haxe","Unserializer"];
haxe.Unserializer.initCodes = function() {
var codes = new Array();
{
var _g1 = 0, _g = haxe.Unserializer.BASE64.length;
while(_g1 < _g) {
var i = _g1++;
codes[haxe.Unserializer.BASE64.cca(i)] = i;
}
}
return codes;
}
haxe.Unserializer.run = function(v) {
return new haxe.Unserializer(v).unserialize();
}
haxe.Unserializer.prototype.buf = null;
haxe.Unserializer.prototype.cache = null;
haxe.Unserializer.prototype.get = function(p) {
return this.buf.cca(p);
}
haxe.Unserializer.prototype.length = null;
haxe.Unserializer.prototype.pos = null;
haxe.Unserializer.prototype.readDigits = function() {
var k = 0;
var s = false;
var fpos = this.pos;
while(true) {
var c = this.buf.cca(this.pos);
if(Math.isNaN(c)) break;
if(c == 45) {
if(this.pos != fpos) break;
s = true;
this.pos++;
continue;
}
if(c < 48 || c > 57) break;
k = k * 10 + (c - 48);
this.pos++;
}
if(s) k *= -1;
return k;
}
haxe.Unserializer.prototype.resolver = null;
haxe.Unserializer.prototype.scache = null;
haxe.Unserializer.prototype.setResolver = function(r) {
if(r == null) this.resolver = { resolveClass : function(_) {
return null;
}, resolveEnum : function(_) {
return null;
}}
else this.resolver = r;
}
haxe.Unserializer.prototype.unserialize = function() {
switch(this.buf.cca(this.pos++)) {
case 110:{
return null;
}break;
case 116:{
return true;
}break;
case 102:{
return false;
}break;
case 122:{
return 0;
}break;
case 105:{
return this.readDigits();
}break;
case 100:{
var p1 = this.pos;
while(true) {
var c = this.buf.cca(this.pos);
if((c >= 43 && c < 58) || c == 101 || c == 69) this.pos++;
else break;
}
return Std.parseFloat(this.buf.substr(p1,this.pos - p1));
}break;
case 121:{
var len = this.readDigits();
if(this.buf.cca(this.pos++) != 58 || this.length - this.pos < len) throw "Invalid string length";
var s = this.buf.substr(this.pos,len);
this.pos += len;
s = StringTools.urlDecode(s);
this.scache.push(s);
return s;
}break;
case 107:{
return Math.NaN;
}break;
case 109:{
return Math.NEGATIVE_INFINITY;
}break;
case 112:{
return Math.POSITIVE_INFINITY;
}break;
case 97:{
var buf = this.buf;
var a = new Array();
this.cache.push(a);
while(true) {
var c = this.buf.cca(this.pos);
if(c == 104) {
this.pos++;
break;
}
if(c == 117) {
this.pos++;
var n = this.readDigits();
a[(a.length + n) - 1] = null;
}
else a.push(this.unserialize());
}
return a;
}break;
case 111:{
var o = { }
this.cache.push(o);
this.unserializeObject(o);
return o;
}break;
case 114:{
var n = this.readDigits();
if(n < 0 || n >= this.cache.length) throw "Invalid reference";
return this.cache[n];
}break;
case 82:{
var n = this.readDigits();
if(n < 0 || n >= this.scache.length) throw "Invalid string reference";
return this.scache[n];
}break;
case 120:{
throw this.unserialize();
}break;
case 99:{
var name = this.unserialize();
var cl = this.resolver.resolveClass(name);
if(cl == null) throw "Class not found " + name;
var o = Type.createEmptyInstance(cl);
this.cache.push(o);
this.unserializeObject(o);
return o;
}break;
case 119:{
var name = this.unserialize();
var edecl = this.resolver.resolveEnum(name);
if(edecl == null) throw "Enum not found " + name;
return this.unserializeEnum(edecl,this.unserialize());
}break;
case 106:{
var name = this.unserialize();
var edecl = this.resolver.resolveEnum(name);
if(edecl == null) throw "Enum not found " + name;
this.pos++;
var index = this.readDigits();
var tag = Type.getEnumConstructs(edecl)[index];
if(tag == null) throw (("Unknown enum index " + name) + "@") + index;
return this.unserializeEnum(edecl,tag);
}break;
case 108:{
var l = new List();
this.cache.push(l);
var buf = this.buf;
while(this.buf.cca(this.pos) != 104) l.add(this.unserialize());
this.pos++;
return l;
}break;
case 98:{
var h = new Hash();
this.cache.push(h);
var buf = this.buf;
while(this.buf.cca(this.pos) != 104) {
var s = this.unserialize();
h.set(s,this.unserialize());
}
this.pos++;
return h;
}break;
case 113:{
var h = new IntHash();
this.cache.push(h);
var buf = this.buf;
var c = this.buf.cca(this.pos++);
while(c == 58) {
var i = this.readDigits();
h.set(i,this.unserialize());
c = this.buf.cca(this.pos++);
}
if(c != 104) throw "Invalid IntHash format";
return h;
}break;
case 118:{
var d = Date.fromString(this.buf.substr(this.pos,19));
this.cache.push(d);
this.pos += 19;
return d;
}break;
case 115:{
var len = this.readDigits();
var buf = this.buf;
if(this.buf.cca(this.pos++) != 58 || this.length - this.pos < len) throw "Invalid bytes length";
var codes = haxe.Unserializer.CODES;
if(codes == null) {
codes = haxe.Unserializer.initCodes();
haxe.Unserializer.CODES = codes;
}
var i = this.pos;
var rest = len & 3;
var size = (len >> 2) * 3 + (((rest >= 2)?rest - 1:0));
var max = i + (len - rest);
var bytes = haxe.io.Bytes.alloc(size);
var bpos = 0;
while(i < max) {
var c1 = codes[buf.cca(i++)];
var c2 = codes[buf.cca(i++)];
bytes.b[bpos++] = (((c1 << 2) | (c2 >> 4)) & 255);
var c3 = codes[buf.cca(i++)];
bytes.b[bpos++] = (((c2 << 4) | (c3 >> 2)) & 255);
var c4 = codes[buf.cca(i++)];
bytes.b[bpos++] = (((c3 << 6) | c4) & 255);
}
if(rest >= 2) {
var c1 = codes[buf.cca(i++)];
var c2 = codes[buf.cca(i++)];
bytes.b[bpos++] = (((c1 << 2) | (c2 >> 4)) & 255);
if(rest == 3) {
var c3 = codes[buf.cca(i++)];
bytes.b[bpos++] = (((c2 << 4) | (c3 >> 2)) & 255);
}
}
this.pos += len;
this.cache.push(bytes);
return bytes;
}break;
default:{
null;
}break;
}
this.pos--;
throw ((("Invalid char " + this.buf.charAt(this.pos)) + " at position ") + this.pos);
}
haxe.Unserializer.prototype.unserializeEnum = function(edecl,tag) {
var constr = Reflect.field(edecl,tag);
if(constr == null) throw (("Unknown enum tag " + Type.getEnumName(edecl)) + ".") + tag;
if(this.buf.cca(this.pos++) != 58) throw "Invalid enum format";
var nargs = this.readDigits();
if(nargs == 0) {
this.cache.push(constr);
return constr;
}
var args = new Array();
while(nargs > 0) {
args.push(this.unserialize());
nargs -= 1;
}
var e = constr.apply(edecl,args);
this.cache.push(e);
return e;
}
haxe.Unserializer.prototype.unserializeObject = function(o) {
while(true) {
if(this.pos >= this.length) throw "Invalid object";
if(this.buf.cca(this.pos) == 103) break;
var k = this.unserialize();
if(!Std["is"](k,String)) throw "Invalid object key";
var v = this.unserialize();
o[k] = v;
}
this.pos++;
}
haxe.Unserializer.prototype.__class__ = haxe.Unserializer;
mt.Rand = function(seed) { if( seed === $_ ) return; {
this.seed = (((seed < 0)?-seed:seed)) + 131;
}}
mt.Rand.__name__ = ["mt","Rand"];
mt.Rand.prototype.addSeed = function(d) {
this.seed = (((this.seed + d) % 2147483647) & 1073741823);
if(this.seed == 0) this.seed = d + 1;
}
mt.Rand.prototype.clone = function() {
var r = new mt.Rand(0);
r.seed = this.seed;
return r;
}
mt.Rand.prototype.getSeed = function() {
return Std["int"](this.seed) - 131;
}
mt.Rand.prototype.initSeed = function(n,k) {
if(k == null) k = 5;
{
var _g = 0;
while(_g < k) {
var i = _g++;
n ^= ((n << 7) & 727393536);
n ^= ((n << 15) & 462094336);
n ^= n >>> 16;
n &= 1073741823;
var h = 5381;
h = ((h << 5) + h) + (n & 255);
h = ((h << 5) + h) + ((n >> 8) & 255);
h = ((h << 5) + h) + ((n >> 16) & 255);
h = ((h << 5) + h) + (n >> 24);
n = (h & 1073741823);
}
}
this.seed = (n & 536870911) + 131;
}
mt.Rand.prototype["int"] = function() {
return (this.seed = (this.seed * 16807) % 2147483647) & 1073741823;
}
mt.Rand.prototype.rand = function() {
return (((this.seed = (this.seed * 16807) % 2147483647) & 1073741823) % 10007) / 10007.0;
}
mt.Rand.prototype.random = function(n) {
return ((this.seed = (this.seed * 16807) % 2147483647) & 1073741823) % n;
}
mt.Rand.prototype.seed = null;
mt.Rand.prototype.__class__ = mt.Rand;
js.ZoneControl = function() { }
js.ZoneControl.__name__ = ["js","ZoneControl"];
js.ZoneControl.init = function(rt,u) {
js.ZoneControl.url = u;
if(rt <= 0) {
js.CountDown.stop();
return;
}
js.CountDown.init();
js.CountDown.add("domination_countdown",rt,1000,$closure(js.ZoneControl,"nextStatus"),$closure(js.ZoneControl,"updateCountDown"));
}
js.ZoneControl.updateCountDown = function(section,start,end) {
section.innerHTML = js.ZoneControl.countDownHtml(end);
}
js.ZoneControl.nextStatus = function() {
js.CountDown.stop();
js.XmlHttp.get(js.ZoneControl.url);
}
js.ZoneControl.countDownHtml = function(s) {
var result = "";
if(s <= 0 || s == null) return "00:00:00";
var t = { h : 0, m : 0, s : s}
if(t.s >= 3600) {
t.h = Math.floor(t.s / 3600);
t.s = t.s - (t.h * 3600);
}
if(t.s >= 60) {
t.m = Math.floor(t.s / 60);
t.s = t.s - (t.m * 60);
}
{
result += (t.h >= 0 && t.h < 10?"0" + Std.string(t.h):Std.string(t.h));
result += ":";
}
{
result += (t.m >= 0 && t.m < 10?"0" + Std.string(t.m):Std.string(t.m));
result += ":";
}
result += (t.s >= 0 && t.s < 10?"0" + Std.string(t.s):Std.string(t.s));
return result;
}
js.ZoneControl.prototype.__class__ = js.ZoneControl;
if(!haxe.io) haxe.io = {}
haxe.io.Error = { __ename__ : ["haxe","io","Error"], __constructs__ : ["Blocked","Overflow","OutsideBounds","Custom"] }
haxe.io.Error.Blocked = ["Blocked",0];
haxe.io.Error.Blocked.toString = $estr;
haxe.io.Error.Blocked.__enum__ = haxe.io.Error;
haxe.io.Error.Custom = function(e) { var $x = ["Custom",3,e]; $x.__enum__ = haxe.io.Error; $x.toString = $estr; return $x; }
haxe.io.Error.OutsideBounds = ["OutsideBounds",2];
haxe.io.Error.OutsideBounds.toString = $estr;
haxe.io.Error.OutsideBounds.__enum__ = haxe.io.Error;
haxe.io.Error.Overflow = ["Overflow",1];
haxe.io.Error.Overflow.toString = $estr;
haxe.io.Error.Overflow.__enum__ = haxe.io.Error;
mt.js.EditorAction = { __ename__ : ["mt","js","EditorAction"], __constructs__ : ["AImage","ANode","ASpan","ALink","AReg"] }
mt.js.EditorAction.AImage = function(tag,url) { var $x = ["AImage",0,tag,url]; $x.__enum__ = mt.js.EditorAction; $x.toString = $estr; return $x; }
mt.js.EditorAction.ALink = function(text1,text2,node) { var $x = ["ALink",3,text1,text2,node]; $x.__enum__ = mt.js.EditorAction; $x.toString = $estr; return $x; }
mt.js.EditorAction.ANode = function(node,html) { var $x = ["ANode",1,node,html]; $x.__enum__ = mt.js.EditorAction; $x.toString = $estr; return $x; }
mt.js.EditorAction.AReg = function(ereg,replace) { var $x = ["AReg",4,ereg,replace]; $x.__enum__ = mt.js.EditorAction; $x.toString = $estr; return $x; }
mt.js.EditorAction.ASpan = function(node,span) { var $x = ["ASpan",2,node,span]; $x.__enum__ = mt.js.EditorAction; $x.toString = $estr; return $x; }
haxe.io.Bytes = function(length,b) { if( length === $_ ) return; {
this.length = length;
this.b = b;
}}
haxe.io.Bytes.__name__ = ["haxe","io","Bytes"];
haxe.io.Bytes.alloc = function(length) {
var a = new Array();
{
var _g = 0;
while(_g < length) {
var i = _g++;
a.push(0);
}
}
return new haxe.io.Bytes(length,a);
}
haxe.io.Bytes.ofString = function(s) {
var a = new Array();
{
var _g1 = 0, _g = s.length;
while(_g1 < _g) {
var i = _g1++;
var c = s["cca"](i);
if(c <= 127) a.push(c);
else if(c <= 2047) {
a.push(192 | (c >> 6));
a.push(128 | (c & 63));
}
else if(c <= 65535) {
a.push(224 | (c >> 12));
a.push(128 | ((c >> 6) & 63));
a.push(128 | (c & 63));
}
else {
a.push(240 | (c >> 18));
a.push(128 | ((c >> 12) & 63));
a.push(128 | ((c >> 6) & 63));
a.push(128 | (c & 63));
}
}
}
return new haxe.io.Bytes(a.length,a);
}
haxe.io.Bytes.ofData = function(b) {
return new haxe.io.Bytes(b.length,b);
}
haxe.io.Bytes.prototype.b = null;
haxe.io.Bytes.prototype.blit = function(pos,src,srcpos,len) {
if(pos < 0 || srcpos < 0 || len < 0 || pos + len > this.length || srcpos + len > src.length) throw haxe.io.Error.OutsideBounds;
var b1 = this.b;
var b2 = src.b;
if(b1 == b2 && pos > srcpos) {
var i = len;
while(i > 0) {
i--;
b1[i + pos] = b2[i + srcpos];
}
return;
}
{
var _g = 0;
while(_g < len) {
var i = _g++;
b1[i + pos] = b2[i + srcpos];
}
}
}
haxe.io.Bytes.prototype.compare = function(other) {
var b1 = this.b;
var b2 = other.b;
var len = ((this.length < other.length)?this.length:other.length);
{
var _g = 0;
while(_g < len) {
var i = _g++;
if(b1[i] != b2[i]) return b1[i] - b2[i];
}
}
return this.length - other.length;
}
haxe.io.Bytes.prototype.get = function(pos) {
return this.b[pos];
}
haxe.io.Bytes.prototype.getData = function() {
return this.b;
}
haxe.io.Bytes.prototype.length = null;
haxe.io.Bytes.prototype.readString = function(pos,len) {
if(pos < 0 || len < 0 || pos + len > this.length) throw haxe.io.Error.OutsideBounds;
var s = "";
var b = this.b;
var fcc = $closure(String,"fromCharCode");
var i = pos;
var max = pos + len;
while(i < max) {
var c = b[i++];
if(c < 128) {
if(c == 0) break;
s += fcc(c);
}
else if(c < 224) s += fcc(((c & 63) << 6) | (b[i++] & 127));
else if(c < 240) {
var c2 = b[i++];
s += fcc((((c & 31) << 12) | ((c2 & 127) << 6)) | (b[i++] & 127));
}
else {
var c2 = b[i++];
var c3 = b[i++];
s += fcc(((((c & 15) << 18) | ((c2 & 127) << 12)) | ((c3 << 6) & 127)) | (b[i++] & 127));
}
}
return s;
}
haxe.io.Bytes.prototype.set = function(pos,v) {
this.b[pos] = (v & 255);
}
haxe.io.Bytes.prototype.sub = function(pos,len) {
if(pos < 0 || len < 0 || pos + len > this.length) throw haxe.io.Error.OutsideBounds;
return new haxe.io.Bytes(len,this.b.slice(pos,pos + len));
}
haxe.io.Bytes.prototype.toString = function() {
return this.readString(0,this.length);
}
haxe.io.Bytes.prototype.__class__ = haxe.io.Bytes;
js.JsMap = function() { }
js.JsMap.__name__ = ["js","JsMap"];
js.JsMap.info = null;
js.JsMap.init = function(s,sk) {
js.JsMap.templateReady = true;
js.JsMap.info = s;
js.JsMap.sh = sk;
try {
if(js.JsMap.isFlashReady()) {
js.JsMap.cnx.resolve("api").resolve("onResponse").call([js.JsMap.info]);
js.JsMap.info = null;
}
}
catch( $e0 ) {
{
var e = $e0;
null;
}
}
}
js.JsMap.getInfo = function() {
return js.JsMap.info;
}
js.JsMap.isJsReady = function() {
return js.JsMap.templateReady;
}
js.JsMap.isFlashReady = function() {
try {
return js.JsMap.cnx.resolve("api").resolve("isFlashReady").call(null);
}
catch( $e0 ) {
{
var e = $e0;
{
return false;
}
}
}
}
js.JsMap.dispose = function() {
try {
js.JsMap.cnx.resolve("api").resolve("dispose").call(null);
}
catch( $e0 ) {
{
var e = $e0;
null;
}
}
}
js.JsMap.reboot = function() {
js.Js.reboot();
}
js.JsMap.move = function(zid,dx,dy) {
js.XmlHttp.get(((((("outside/go?x=" + dx) + ";y=") + dy) + ";z=") + zid) + js.JsMap.sh);
}
js.JsMap.sendCoord = function(cityX,cityY,x,y) {
js.Utils.addExpPoint(cityX,cityY,x,y);
}
js.JsMap.prototype.__class__ = js.JsMap;
js.Lib = function() { }
js.Lib.__name__ = ["js","Lib"];
js.Lib.isIE = null;
js.Lib.isOpera = null;
js.Lib.document = null;
js.Lib.window = null;
js.Lib.alert = function(v) {
alert(js.Boot.__string_rec(v,""));
}
js.Lib.eval = function(code) {
return eval(code);
}
js.Lib.setErrorHandler = function(f) {
js.Lib.onerror = f;
}
js.Lib.prototype.__class__ = js.Lib;
StringTools = function() { }
StringTools.__name__ = ["StringTools"];
StringTools.urlEncode = function(s) {
return encodeURIComponent(s);
}
StringTools.urlDecode = function(s) {
return decodeURIComponent(s.split("+").join(" "));
}
StringTools.htmlEscape = function(s) {
return s.split("&").join("&amp;").split("<").join("&lt;").split(">").join("&gt;");
}
StringTools.htmlUnescape = function(s) {
return s.split("&gt;").join(">").split("&lt;").join("<").split("&amp;").join("&");
}
StringTools.startsWith = function(s,start) {
return (s.length >= start.length && s.substr(0,start.length) == start);
}
StringTools.endsWith = function(s,end) {
var elen = end.length;
var slen = s.length;
return (slen >= elen && s.substr(slen - elen,elen) == end);
}
StringTools.isSpace = function(s,pos) {
var c = s.charCodeAt(pos);
return (c >= 9 && c <= 13) || c == 32;
}
StringTools.ltrim = function(s) {
var l = s.length;
var r = 0;
while(r < l && StringTools.isSpace(s,r)) {
r++;
}
if(r > 0) return s.substr(r,l - r);
else return s;
}
StringTools.rtrim = function(s) {
var l = s.length;
var r = 0;
while(r < l && StringTools.isSpace(s,(l - r) - 1)) {
r++;
}
if(r > 0) {
return s.substr(0,l - r);
}
else {
return s;
}
}
StringTools.trim = function(s) {
return StringTools.ltrim(StringTools.rtrim(s));
}
StringTools.rpad = function(s,c,l) {
var sl = s.length;
var cl = c.length;
while(sl < l) {
if(l - sl < cl) {
s += c.substr(0,l - sl);
sl = l;
}
else {
s += c;
sl += cl;
}
}
return s;
}
StringTools.lpad = function(s,c,l) {
var ns = "";
var sl = s.length;
if(sl >= l) return s;
var cl = c.length;
while(sl < l) {
if(l - sl < cl) {
ns += c.substr(0,l - sl);
sl = l;
}
else {
ns += c;
sl += cl;
}
}
return ns + s;
}
StringTools.replace = function(s,sub,by) {
return s.split(sub).join(by);
}
StringTools.hex = function(n,digits) {
var s = "";
var hexChars = "0123456789ABCDEF";
do {
s = hexChars.charAt(n & 15) + s;
n >>>= 4;
} while(n > 0);
if(digits != null) while(s.length < digits) s = "0" + s;
return s;
}
StringTools.prototype.__class__ = StringTools;
$_ = {}
js.Boot.__res = {}
js.Boot.__init();
{
js["XMLHttpRequest"] = (window.XMLHttpRequest?XMLHttpRequest:(window.ActiveXObject?function() {
try {
return new ActiveXObject("Msxml2.XMLHTTP");
}
catch( $e0 ) {
{
var e = $e0;
{
try {
return new ActiveXObject("Microsoft.XMLHTTP");
}
catch( $e1 ) {
{
var e1 = $e1;
{
throw "Unable to create XMLHttpRequest object.";
}
}
}
}
}
}
}:(function($this) {
var $r;
throw "Unable to create XMLHttpRequest object.";
return $r;
}(this))));
}
{
Math.NaN = Number["NaN"];
Math.NEGATIVE_INFINITY = Number["NEGATIVE_INFINITY"];
Math.POSITIVE_INFINITY = Number["POSITIVE_INFINITY"];
Math.isFinite = function(i) {
return isFinite(i);
}
Math.isNaN = function(i) {
return isNaN(i);
}
Math.__name__ = ["Math"];
}
{
mt.js.Tip.init();
}
{
Xml = js.JsXml__;
Xml.__name__ = ["Xml"];
Xml.Element = "element";
Xml.PCData = "pcdata";
Xml.CData = "cdata";
Xml.Comment = "comment";
Xml.DocType = "doctype";
Xml.Prolog = "prolog";
Xml.Document = "document";
}
{
if(typeof deconcept=="undefined"){var deconcept=new Object();}
if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}
if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}
deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a,_b){if(!document.getElementById){return;}
this.DETECT_KEY=_b?_b:"detectflash";
this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);
this.params=new Object();
this.variables=new Object();
this.attributes=new Array();
if(_1){this.setAttribute("swf",_1);}
if(id){this.setAttribute("id",id);}
if(w){this.setAttribute("width",w);}
if(h){this.setAttribute("height",h);}
if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}
this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();
if(c){this.addParam("bgcolor",c);}
var q=_8?_8:"high";
this.addParam("quality",q);
this.setAttribute("useExpressInstall",_7);
this.setAttribute("doExpressInstall",false);
var _d=(_9)?_9:window.location;
this.setAttribute("xiRedirectUrl",_d);
this.setAttribute("redirectUrl","");
if(_a){this.setAttribute("redirectUrl",_a);}};
deconcept.SWFObject.prototype={setAttribute:function(_e,_f){
this.attributes[_e]=_f;
},getAttribute:function(_10){
return this.attributes[_10];
},addParam:function(_11,_12){
this.params[_11]=_12;
},getParams:function(){
return this.params;
},addVariable:function(_13,_14){
this.variables[_13]=_14;
},getVariable:function(_15){
return this.variables[_15];
},getVariables:function(){
return this.variables;
},getVariablePairs:function(){
var _16=new Array();
var key;
var _18=this.getVariables();
for(key in _18){_16.push(key+"="+_18[key]);}
return _16;},getSWFHTML:function(){var _19="";
if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){
if(this.getAttribute("doExpressInstall")){
this.addVariable("MMplayerType","PlugIn");}
_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\"";
_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";
var _1a=this.getParams();
for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}
var _1c=this.getVariablePairs().join("&");
if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";
}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");}
_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\">";
_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";
var _1d=this.getParams();
for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}
var _1f=this.getVariablePairs().join("&");
if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}_19+="</object>";}
return _19;
},write:function(_20){
if(this.getAttribute("useExpressInstall")){
var _21=new deconcept.PlayerVersion([6,0,65]);
if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){
this.setAttribute("doExpressInstall",true);
this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));
document.title=document.title.slice(0,47)+" - Flash Player Installation";
this.addVariable("MMdoctitle",document.title);}}
if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){
var n=(typeof _20=="string")?document.getElementById(_20):_20;
n.innerHTML=this.getSWFHTML();return true;
}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}
return false;}};
deconcept.SWFObjectUtil.getPlayerVersion=function(){
var _23=new deconcept.PlayerVersion([0,0,0]);
if(navigator.plugins&&navigator.mimeTypes.length){
var x=navigator.plugins["Shockwave Flash"];
if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}
}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}
catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}
catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}
catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}
return _23;};
deconcept.PlayerVersion=function(_27){
this.major=_27[0]!=null?parseInt(_27[0]):0;
this.minor=_27[1]!=null?parseInt(_27[1]):0;
this.rev=_27[2]!=null?parseInt(_27[2]):0;
};
deconcept.PlayerVersion.prototype.versionIsValid=function(fv){
if(this.major<fv.major){return false;}
if(this.major>fv.major){return true;}
if(this.minor<fv.minor){return false;}
if(this.minor>fv.minor){return true;}
if(this.rev<fv.rev){
return false;
}return true;};
deconcept.util={getRequestParameter:function(_29){
var q=document.location.search||document.location.hash;
if(q){var _2b=q.substring(1).split("&");
for(var i=0;i<_2b.length;i++){
if(_2b[i].substring(0,_2b[i].indexOf("="))==_29){
return _2b[i].substring((_2b[i].indexOf("=")+1));}}}
return "";}};
deconcept.SWFObjectUtil.cleanupSWFs=function(){if(window.opera||!document.all){return;}
var _2d=document.getElementsByTagName("OBJECT");
for(var i=0;i<_2d.length;i++){_2d[i].style.display="none";for(var x in _2d[i]){
if(typeof _2d[i][x]=="function"){_2d[i][x]=function(){};}}}};
deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};
__flash_savedUnloadHandler=function(){};
if(typeof window.onunload=="function"){
var _30=window.onunload;
window.onunload=function(){
deconcept.SWFObjectUtil.cleanupSWFs();_30();};
}else{window.onunload=deconcept.SWFObjectUtil.cleanupSWFs;}};
if(typeof window.onbeforeunload=="function"){
var oldBeforeUnload=window.onbeforeunload;
window.onbeforeunload=function(){
deconcept.SWFObjectUtil.prepUnload();
oldBeforeUnload();};
}else{window.onbeforeunload=deconcept.SWFObjectUtil.prepUnload;}
if(Array.prototype.push==null){
Array.prototype.push=function(_31){
this[this.length]=_31;
return this.length;};}
;
js.SWFObject = deconcept.SWFObject;
}
{
String.prototype.__class__ = String;
String.__name__ = ["String"];
Array.prototype.__class__ = Array;
Array.__name__ = ["Array"];
Int = { __name__ : ["Int"]}
Dynamic = { __name__ : ["Dynamic"]}
Float = Number;
Float.__name__ = ["Float"];
Bool = { __ename__ : ["Bool"]}
Class = { __name__ : ["Class"]}
Enum = { }
Void = { __ename__ : ["Void"]}
}
{
js.Lib.document = document;
js.Lib.window = window;
onerror = function(msg,url,line) {
var f = js.Lib.onerror;
if( f == null )
return false;
return f(msg,[url+":"+line]);
}
}
{
var d = Date;
d.now = function() {
return new Date();
}
d.fromTime = function(t) {
var d1 = new Date();
d1["setTime"](t);
return d1;
}
d.fromString = function(s) {
switch(s.length) {
case 8:{
var k = s.split(":");
var d1 = new Date();
d1["setTime"](0);
d1["setUTCHours"](k[0]);
d1["setUTCMinutes"](k[1]);
d1["setUTCSeconds"](k[2]);
return d1;
}break;
case 10:{
var k = s.split("-");
return new Date(k[0],k[1] - 1,k[2],0,0,0);
}break;
case 19:{
var k = s.split(" ");
var y = k[0].split("-");
var t = k[1].split(":");
return new Date(y[0],y[1] - 1,y[2],t[0],t[1],t[2]);
}break;
default:{
throw "Invalid date format : " + s;
}break;
}
}
d.prototype["toString"] = function() {
var date = this;
var m = date.getMonth() + 1;
var d1 = date.getDate();
var h = date.getHours();
var mi = date.getMinutes();
var s = date.getSeconds();
return (((((((((date.getFullYear() + "-") + ((m < 10?"0" + m:"" + m))) + "-") + ((d1 < 10?"0" + d1:"" + d1))) + " ") + ((h < 10?"0" + h:"" + h))) + ":") + ((mi < 10?"0" + mi:"" + mi))) + ":") + ((s < 10?"0" + s:"" + s));
}
d.prototype.__class__ = d;
d.__name__ = ["Date"];
}
haxe.Serializer.USE_CACHE = false;
haxe.Serializer.USE_ENUM_INDEX = false;
haxe.Serializer.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:";
js.JobChooser.PREMIUM_MAX_JOBS = 1;
js.JobChooser.COMMON_MAX_JOBS = 1;
js.JobChooser.HERO_MAX_JOBS = 1;
js.BackForward.iframeInit = false;
js.BackForward.historyPos = 0;
js.ToolExchange.bagSelection = 0;
js.ToolExchange.trunkSelection = 0;
js.ToolExchange.url = "";
js.ToolExchange.dom1 = null;
js.ToolExchange.dom2 = null;
js.Gather.url = "";
js.ServerTime.FREQUENCY = 5;
js.UserBox.minOffsetY = 20;
js.UserBox.boxId = "userBox";
js.UserBox.defaultValue = "[ Entrez votre message ici... ]";
mt.js.Tip.xOffset = 3;
mt.js.Tip.yOffset = 22;
mt.js.Tip.defaultClass = "normalTip";
mt.js.Tip.tooltipId = "tooltip";
mt.js.Tip.tooltipContentId = "tooltipContent";
mt.js.Tip.minOffsetY = 23;
mt.js.Timer.timers = new Array();
mt.js.Timer.TIMES = "jhms";
js.Js.ref = [mt.js.Tip,mt.js.Editor,mt.js.Timer];
js.Js.LANG = "fr";
js.Js.GENERIC_SECTION = "generic_section";
js.Js.LOADING_SECTION = "loading_section";
js.Js.urlForBack = null;
js.Js.firstPageLoaded = false;
js.Js.baseTitle = null;
js.Js.title = null;
js.JsXml__.enode = new EReg("^<([a-zA-Z0-9:_-]+)","");
js.JsXml__.ecdata = new EReg("^<!\\[CDATA\\[","i");
js.JsXml__.edoctype = new EReg("^<!DOCTYPE ","i");
js.JsXml__.eend = new EReg("^</([a-zA-Z0-9:_-]+)>","");
js.JsXml__.epcdata = new EReg("^[^<]+","");
js.JsXml__.ecomment = new EReg("^<!--","");
js.JsXml__.eprolog = new EReg("^<\\?[^\\?]+\\?>","");
js.JsXml__.eattribute = new EReg("^\\s*([a-zA-Z0-9:_-]+)\\s*=\\s*([\"'])([^\\2]*?)\\2","");
js.JsXml__.eclose = new EReg("^[ \\r\\n\\t]*(>|(/>))","");
js.JsXml__.ecdata_end = new EReg("\\]\\]>","");
js.JsXml__.edoctype_elt = new EReg("[\\[|\\]>]","");
js.JsXml__.ecomment_end = new EReg("-->","");
haxe.Timer.arr = new Array();
haxe.remoting.ExternalConnection.connections = new Hash();
js.InputValidator.STATUS_ERROR = "<img src='/gfx/admin/cancel.png' alt=''/>";
js.InputValidator.STATUS_OK = "<img src='/gfx/admin/accept.png' alt=''/>";
js.InputValidator.STATUS_WRITING = "<img src='/gfx/admin/text_signature.png' alt=''/>";
MapCommon.CoordSep = ":";
MapCommon.GroupSep = "|";
MapCommon.MaxPathStringLength = 240;
js.Tutorial.id = null;
js.Tutorial.step = null;
js.Tutorial.tname = null;
js.XmlHttp.stop = false;
js.XmlHttp.lock = null;
js.XmlHttp.lockTimeOut = null;
js.XmlHttp.lockButton = null;
js.XmlHttp.queue = new List();
js.XmlHttp.urlForBack = null;
js.XmlHttp.oldLock = null;
DateTools.DAYS_OF_MONTH = [31,28,31,30,31,30,31,31,30,31,30,31];
haxe.Unserializer.DEFAULT_RESOLVER = Type;
haxe.Unserializer.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:";
haxe.Unserializer.CODES = null;
js.ZoneControl.url = "";
js.JsMap.templateReady = false;
js.JsMap.called = false;
js.JsMap.timer = null;
js.JsMap.sh = null;
js.JsMap.ctx = (function($this) {
var $r;
var tmp = new haxe.remoting.Context();
tmp.addObject("api",js.JsMap);
$r = tmp;
return $r;
}(this));
js.JsMap.cnx = haxe.remoting.ExternalConnection.flashConnect("cnx","FlashMap",js.JsMap.ctx);
js.Lib.onerror = null;
