diff --git a/VERSION b/VERSION new file mode 100644 index 0000000..1d3130b --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +0.1 beta diff --git a/armycalc.css b/armycalc.css index 6fabc96..435348a 100644 --- a/armycalc.css +++ b/armycalc.css @@ -200,9 +200,11 @@ div.acCanvas div.workspace { div.acCanvas div.workspace div.unitslist{ margin-left: 160px; height: 300px; + /* overflow: auto; overflow-x: hidden; -ms-overflow-x: hidden; + */ } div.acCanvas div.workspace div.unitdetails{ width: 160px; diff --git a/armycalc.js b/armycalc.js index d3edc99..7d84b2d 100644 --- a/armycalc.js +++ b/armycalc.js @@ -905,6 +905,23 @@ function jsArmyCalc( selector, templateurl ){ } + + calc.getArmyHtml = function( ){ + if(! this.army ){ + this.flashMsg( "Please create new army first!" ); + return false; + } + return "Not yet implemented.HTML"; + } + + calc.getArmyTwa = function( ){ + if(! this.army ){ + this.flashMsg( "Please create new army first!" ); + return false; + } + return "Not yet implemented.TWA"; + } + calc.newArmy = function( ){ that = this; @@ -1049,6 +1066,8 @@ function jsArmyCalc( selector, templateurl ){ if( eb ){ this.setFullscreen(true); //TODO hide unnecesairy icons + calc.canvas.find('#acMinimize').hide(); + calc.canvas.find('.buttons1').hide(); } } diff --git a/armycalc.min.css b/armycalc.min.css index 257f118..948a7f1 100644 --- a/armycalc.min.css +++ b/armycalc.min.css @@ -1 +1 @@ -div.acCanvas p,div.acCanvas h2,div.acCanvas div{margin:0;padding:0;}div.acCanvas{position:relative;min-height:150px;background:white;font-family:'Arial';font-size:12px;border:1px solid #555;height:100%;}div.acFullscreen{display:block;position:fixed;left:0;top:0;width:100%;height:100%;padding:0;margin:0;}body.acFullscreen{height:100%;margin:0;padding:0;}div.acCanvas img{border:none;}div.acCanvas a:focus{outline:none;}div.acCanvas div.toolbar{background:black;height:26px;color:white;}div.acCanvas div.toolbar img{padding:2px;}div.acCanvas span.langsel{display:block;float:left;padding:2px;}div.acCanvas div.toolbar select{border:1px solid #eee;background:#333;color:white;}div.acCanvas div.buttons1{float:left;height:26px;}div.acCanvas div.buttons2{float:right;height:26px;}div.acCanvas div.menucontainer{background:black;min-height:25px;color:white;line-height:22px;margin-bottom:7px;}div.acCanvas div.menu{position:absolute;z-index:10;}div.acCanvas div.menu #acElements li>ul{top:auto;left:auto;}div.acCanvas div.menu #acElements{list-style:none;}div.acCanvas div.menu #acElements ul{padding:0;margin:0;list-style:none;width:10em;z-index:99;position:relative;overflow:visible;}div.acCanvas div.menu #acElements li{margin:0;position:relative;float:left;width:10em;background-color:black;border:solid 1px #444;display:block;height:auto;}div.acCanvas div.menu #acElements ul li{background-color:black;}div.acCanvas div.menu #acElements ul li{border-width:1px 1px 0 0;}div.acCanvas div.menu #acElements ul ul li{border-width:1px 1px 0 1px;}div.acCanvas div.menu #acElements ul ul li:last-child{border-width:1px;}div.acCanvas div.menu #acElements a{text-align:center;text-decoration:none;display:block;color:white;white-space:nowrap;}div.acCanvas div.menu #acElements a:hover{background-color:white;color:black;}div.acCanvas div.menu #acElements ul{display:none;}div.acCanvas div.menu #acElements ul ul,div.acCanvas div.menu #acElements ul ul ul{display:none;position:absolute;margin-top:-1.8em;margin-left:10em;}div.acCanvas div.menu #acElements ul li>ul,div.acCanvas div.menu #acElements ul ul li>ul{margin-top:-1.35em;}div.acCanvas div.menu #acElements li:hover ul ul,div.acCanvas div.menu #acElements li:hover ul ul ul,div.acCanvas div.menu #acElements li:hover ul ul ul ul,div.acCanvas div.menu #acElements li:hover ul ul ul ul ul{display:none;}div.acCanvas div.workspace{min-height:150px;border:none;overflow:hidden;background-color:#ddd;}div.acCanvas div.workspace div.unitslist{margin-left:160px;height:300px;overflow:auto;overflow-x:hidden;-ms-overflow-x:hidden;}div.acCanvas div.workspace div.unitdetails{width:160px;float:left;}div.acCanvas div.workspace #acDetails{min-height:100px;padding:5px 0;}div.acCanvas #acDetails ul.actions{overflow:hidden;height:34px;}div.acCanvas #acDetails ul.actions li{float:left;}div.acCanvas #acDetails ul.actions li a{display:block;}div.acCanvas div.statusbar{background:black;height:20px;line-height:20px;color:white;}div.acCanvas div.statusbar div.status{float:left;}div.acCanvas div.statusbar div.link{float:right;}div.acCanvas div.statusbar div.link a{color:white;}div#acPopup{display:none;position:absolute;width:400px;top:40px;border:3px solid white;left:50%;margin-left:-200px;z-index:200;}div#acPopupBg{display:none;position:fixed;height:100%;width:100%;top:0;left:0;background:#000;z-index:1;filter:alpha(opacity=60);-moz-opacity:.6;opacity:.6;}div#acPopup a#acClosePopup{position:absolute;width:22px;height:22px;top:0;right:0;padding:3px;}div#acPopup h2#acPopupTitle{background:black;color:white;height:28px;padding:0 5px;margin:0;line-height:28px;font-size:14px;font-weight:bold;}div#acPopup div#acPopupContent{min-height:100px;background:white;overflow:auto;}div#acPopup div#acPopupContent div.piece{border:1px dashed #ddd;margin:5px;padding:10px;font-size:12px;line-height:16px;background:none repeat scroll 0 0 #EEE;font-style:italic;color:#222;}div#acPopup div#acPopupContent div.piece h3{font-size:18px;font-weight:bold;margin-bottom:10px;}div#acPopup div#acPopupContent div.submit{border:1px dashed #ddd;margin:5px;padding:10px;overflow:auto;}div#acPopup div#acPopupContent label{display:block;border:1px dashed #ddd;margin:5px;padding:5px;overflow:auto;}div#acPopup input,div#acPopup select{width:200px;border:1px solid #aaa;float:right;}div.acCanvas #acUnits{background-color:white;min-height:200px;}div.acCanvas #acUnits ul{padding-left:20px;display:block;}div.acCanvas #acUnits li a{display:block;line-height:16px;padding:2px;text-decoration:none;color:black;}div.acCanvas #acUnits>li>a{font-weight:bold;}div.acCanvas #acUnits li a.focus{background:green;}div.acCanvas span.st{width:35px;float:right;display:block;text-align:center;border-right:1px solid #555;}div.acCanvas span.cst{width:35px;float:right;display:block;text-align:center;border-left:1px solid #555;}div.acCanvas #acUnitsHeader div.title{overflow:auto;padding:2px;font-weight:bold;border-bottom:1px solid #555;}div.acCanvas ul.errors li{padding:5px;}div.acCanvas ul.errors li.error{color:red;font-weight:bold;}div.acCanvas .submenu img{display:block;margin:5px auto;}div.acCanvas .submenu li a{background-image:url("img/icon_append.png");background-position:5px 5px;background-repeat:no-repeat;color:black;display:block;line-height:16px;padding:5px 5px 5px 25px;text-decoration:none;}div.acCanvas .submenu li a:hover{font-weight:bold;} \ No newline at end of file +div.acCanvas p,div.acCanvas h2,div.acCanvas div{margin:0;padding:0;}div.acCanvas{position:relative;min-height:150px;background:white;font-family:'Arial';font-size:12px;border:1px solid #555;height:100%;}div.acFullscreen{display:block;position:fixed;left:0;top:0;width:100%;height:100%;padding:0;margin:0;}body.acFullscreen{height:100%;margin:0;padding:0;}div.acCanvas img{border:none;}div.acCanvas a:focus{outline:none;}div.acCanvas div.toolbar{background:black;height:26px;color:white;}div.acCanvas div.toolbar img{padding:2px;}div.acCanvas span.langsel{display:block;float:left;padding:2px;}div.acCanvas div.toolbar select{border:1px solid #eee;background:#333;color:white;}div.acCanvas div.buttons1{float:left;height:26px;}div.acCanvas div.buttons2{float:right;height:26px;}div.acCanvas div.menucontainer{background:black;min-height:25px;color:white;line-height:22px;margin-bottom:7px;}div.acCanvas div.menu{position:absolute;z-index:10;}div.acCanvas div.menu #acElements li>ul{top:auto;left:auto;}div.acCanvas div.menu #acElements{list-style:none;}div.acCanvas div.menu #acElements ul{padding:0;margin:0;list-style:none;width:10em;z-index:99;position:relative;overflow:visible;}div.acCanvas div.menu #acElements li{margin:0;position:relative;float:left;width:10em;background-color:black;border:solid 1px #444;display:block;height:auto;}div.acCanvas div.menu #acElements ul li{background-color:black;}div.acCanvas div.menu #acElements ul li{border-width:1px 1px 0 0;}div.acCanvas div.menu #acElements ul ul li{border-width:1px 1px 0 1px;}div.acCanvas div.menu #acElements ul ul li:last-child{border-width:1px;}div.acCanvas div.menu #acElements a{text-align:center;text-decoration:none;display:block;color:white;white-space:nowrap;}div.acCanvas div.menu #acElements a:hover{background-color:white;color:black;}div.acCanvas div.menu #acElements ul{display:none;}div.acCanvas div.menu #acElements ul ul,div.acCanvas div.menu #acElements ul ul ul{display:none;position:absolute;margin-top:-1.8em;margin-left:10em;}div.acCanvas div.menu #acElements ul li>ul,div.acCanvas div.menu #acElements ul ul li>ul{margin-top:-1.35em;}div.acCanvas div.menu #acElements li:hover ul ul,div.acCanvas div.menu #acElements li:hover ul ul ul,div.acCanvas div.menu #acElements li:hover ul ul ul ul,div.acCanvas div.menu #acElements li:hover ul ul ul ul ul{display:none;}div.acCanvas div.workspace{min-height:150px;border:none;overflow:hidden;background-color:#ddd;}div.acCanvas div.workspace div.unitslist{margin-left:160px;height:300px;}div.acCanvas div.workspace div.unitdetails{width:160px;float:left;}div.acCanvas div.workspace #acDetails{min-height:100px;padding:5px 0;}div.acCanvas #acDetails ul.actions{overflow:hidden;height:34px;}div.acCanvas #acDetails ul.actions li{float:left;}div.acCanvas #acDetails ul.actions li a{display:block;}div.acCanvas div.statusbar{background:black;height:20px;line-height:20px;color:white;}div.acCanvas div.statusbar div.status{float:left;}div.acCanvas div.statusbar div.link{float:right;}div.acCanvas div.statusbar div.link a{color:white;}div#acPopup{display:none;position:absolute;width:400px;top:40px;border:3px solid white;left:50%;margin-left:-200px;z-index:200;}div#acPopupBg{display:none;position:fixed;height:100%;width:100%;top:0;left:0;background:#000;z-index:1;filter:alpha(opacity=60);-moz-opacity:.6;opacity:.6;}div#acPopup a#acClosePopup{position:absolute;width:22px;height:22px;top:0;right:0;padding:3px;}div#acPopup h2#acPopupTitle{background:black;color:white;height:28px;padding:0 5px;margin:0;line-height:28px;font-size:14px;font-weight:bold;}div#acPopup div#acPopupContent{min-height:100px;background:white;overflow:auto;}div#acPopup div#acPopupContent div.piece{border:1px dashed #ddd;margin:5px;padding:10px;font-size:12px;line-height:16px;background:none repeat scroll 0 0 #EEE;font-style:italic;color:#222;}div#acPopup div#acPopupContent div.piece h3{font-size:18px;font-weight:bold;margin-bottom:10px;}div#acPopup div#acPopupContent div.submit{border:1px dashed #ddd;margin:5px;padding:10px;overflow:auto;}div#acPopup div#acPopupContent label{display:block;border:1px dashed #ddd;margin:5px;padding:5px;overflow:auto;}div#acPopup input,div#acPopup select{width:200px;border:1px solid #aaa;float:right;}div.acCanvas #acUnits{background-color:white;min-height:200px;}div.acCanvas #acUnits ul{padding-left:20px;display:block;}div.acCanvas #acUnits li a{display:block;line-height:16px;padding:2px;text-decoration:none;color:black;}div.acCanvas #acUnits>li>a{font-weight:bold;}div.acCanvas #acUnits li a.focus{background:green;}div.acCanvas span.st{width:35px;float:right;display:block;text-align:center;border-right:1px solid #555;}div.acCanvas span.cst{width:35px;float:right;display:block;text-align:center;border-left:1px solid #555;}div.acCanvas #acUnitsHeader div.title{overflow:auto;padding:2px;font-weight:bold;border-bottom:1px solid #555;}div.acCanvas ul.errors li{padding:5px;}div.acCanvas ul.errors li.error{color:red;font-weight:bold;}div.acCanvas .submenu img{display:block;margin:5px auto;}div.acCanvas .submenu li a{background-image:url("img/icon_append.png");background-position:5px 5px;background-repeat:no-repeat;color:black;display:block;line-height:16px;padding:5px 5px 5px 25px;text-decoration:none;}div.acCanvas .submenu li a:hover{font-weight:bold;} \ No newline at end of file diff --git a/armycalc.min.js b/armycalc.min.js index d418e20..af0c05f 100644 --- a/armycalc.min.js +++ b/armycalc.min.js @@ -1 +1 @@ -if(!("bind" in Function.prototype)){Function.prototype.bind=function(a){var c=this;if(arguments.length<=1){return function(){return c.apply(a,arguments)}}else{var b=Array.prototype.slice.call(arguments,1);return function(){return c.apply(a,arguments.length===0?b:b.concat(Array.prototype.slice.call(arguments)))}}}}if(!("trim" in String.prototype)){String.prototype.trim=function(){return this.replace(/^\s+/,"").replace(/\s+$/,"")}}if(!("indexOf" in Array.prototype)){Array.prototype.indexOf=function(b,a){if(a===undefined){a=0}if(a<0){a+=this.length}if(a<0){a=0}for(var c=this.length;athis.length-1){a=this.length-1}for(a++;a-->0;){if(a in this&&this[a]===b){return a}}return -1}}if(!("forEach" in Array.prototype)){Array.prototype.forEach=function(c,b){for(var a=0,d=this.length;a"+$(this).text()+""}});return $.trim(txt)}(function(g){g.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(a,b){g.fx.step[b]=function(c){if(!c.colorInit){c.start=h(c.elem,b);c.end=e(c.end);c.colorInit=true}c.elem.style[b]="rgb("+[Math.max(Math.min(parseInt((c.pos*(c.end[0]-c.start[0]))+c.start[0]),255),0),Math.max(Math.min(parseInt((c.pos*(c.end[1]-c.start[1]))+c.start[1]),255),0),Math.max(Math.min(parseInt((c.pos*(c.end[2]-c.start[2]))+c.start[2]),255),0)].join(",")+")"}});function e(a){var b;if(a&&a.constructor==Array&&a.length==3){return a}if(b=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(a)){return[parseInt(b[1]),parseInt(b[2]),parseInt(b[3])]}if(b=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(a)){return[parseFloat(b[1])*2.55,parseFloat(b[2])*2.55,parseFloat(b[3])*2.55]}if(b=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(a)){return[parseInt(b[1],16),parseInt(b[2],16),parseInt(b[3],16)]}if(b=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(a)){return[parseInt(b[1]+b[1],16),parseInt(b[2]+b[2],16),parseInt(b[3]+b[3],16)]}if(b=/rgba\(0, 0, 0, 0\)/.exec(a)){return f.transparent}return f[g.trim(a).toLowerCase()]}function h(a,c){var b;do{b=g.curCSS(a,c);if(b!=""&&b!="transparent"||g.nodeName(a,"body")){break}c="backgroundColor"}while(a=a.parentNode);return e(b)}var f={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]}})(jQuery);function acClone(b){var a=(this instanceof Array)?[]:{};for(i in b){if(typeof b[i]=="object"){a[i]=acClone(b[i])}else{a[i]=b[i]}}return a}function acSandbox(a,b){new Function("window","with(window){"+a+"}")(b)}function acRuleset(a){this.calc=a;this.loadFromUrl=function(b){that=this;$.ajax({url:b+"info.xml",success:function(c,e,d){that.loadFromXml(b,c)},error:function(e,d,c){that.calc.setError(this.url+" - "+d+" - "+c)},dataType:"xml"})};this.loadFromXml=function(c,b){that=this;b=$(b).children("ruleset");this.calc.langSelect.html();$(b).children("languages").children("language").each(function(){that.calc.langSelect.append("");if($(this).attr("default")=="true"){that.calc.setLang($(this).attr("id"))}});this.version=$(b).attr("version");this.uid=$(b).children("uid").text();this.revision=$(b).children("revision").text();this.name=acGetText($(b).children("name"));this.description=acGetText($(b).children("description"));this.costs={};$(b).children("costs").children("cost").each(function(){that.costs[$(this).attr("id")]={name:acGetText($(this).children("name")),"default":parseFloat($(this).children("default").text()),shortname:acGetText($(this).children("shortname")),unit:acGetText($(this).children("unit"))}});this.stats={};$(b).children("stats").children("stat").each(function(){that.stats[$(this).attr("id")]={display:($(this).attr("display")==true?true:false),name:acGetText($(this).children("name")),shortname:acGetText($(this).children("shortname")),"default":parseInt($(this).children("default").text())}});this.defaultArmyName=acGetText($(b).children("defaultArmyName"));this.defaultArmySize={};$(b).children("defaultArmySize").children("cost").each(function(){that.defaultArmySize[$(this).attr("id")]=$(this).text()});this.models={};this.mainmenu={};$(b).children("mainmenu").children("menu").each(function(){menu_id=$(this).attr("id");that.mainmenu[menu_id]={};that.mainmenu[menu_id]["name"]=acGetText($(this).children("name"));that.mainmenu[menu_id]["submenus"]={};$(this).children("menu").each(function(){that.mainmenu[menu_id]["submenus"][$(this).attr("id")]={};that.mainmenu[menu_id]["submenus"][$(this).attr("id")]["name"]=acGetText($(this).children("name"))})});this.errors={};$(b).children("errors").children("error").each(function(){that.errors[$(this).children("uid").text()]={"class":$(this).attr("class"),message:acGetText($(this).children("message"))}});$(b).children("models").find("model").each(function(){model_id=$(this).attr("id");that.models[model_id]={name:acGetText($(this).children("name")),"default":$(this).attr("default")=="true"};that.models[model_id].elements=[];that.models[model_id].elements_by_uid={};that.models[model_id].validator="";$.ajax({model_id:model_id,url:c+$(this).children("validator").attr("src"),success:function(d){that.models[this.model_id].validator=d},error:function(f,e,d){that.calc.setError(this.url+" - "+e+" - "+d)},dataType:"text"});$(this).find("elements").each(function(){that.appendElements(c,this,that.models[model_id].elements,that.models[model_id].elements_by_uid)});that.models[model_id].mainmenu=that.mainmenu;that.models[model_id].defaultArmyName=that.defaultArmyName;that.models[model_id].defaultArmySize=that.defaultArmySize;if($(this).children("defaultArmyName").length){that.models[model_id].defaultArmyName=acGetText($(this).children("defaultArmyName"))}$(this).children("defaultArmySize").children("cost").each(function(){that.models[model_id].defaultArmySize[$(this).attr("id")]=$(this).text()})})};this.appendElements=function(f,c,e,d){that=this;if($(c).attr("src")){$.ajax({url:f+$(c).attr("src"),success:function(g){that.appendElements(f,$(g).children("elements"),e,d)},error:function(j,h,g){that.calc.setError(this.url+" - "+h+" - "+g)},dataType:"xml"})}else{var b={};b.minTotalCount=($(c).attr("minTotalCount")?parseInt($(c).attr("minTotalCount")):0);b.maxTotalCount=($(c).attr("maxTotalCount")?parseInt($(c).attr("maxTotalCount")):null);b.minTotalSize=($(c).attr("minTotalSize")?parseInt($(c).attr("minTotalSize")):0);b.maxTotalSize=($(c).attr("maxTotalSize")?parseInt($(c).attr("maxTotalSize")):null);b.elements={};b.name="";$(c).children("element").each(function(){if($(this).attr("extend")&&($(this).attr("extend") in d)){var h=acClone(d[$(this).attr("extend")])}else{var h={}}if($(this).children("uid").length>0){h.uid=$(this).children("uid").text()}if($(this).children("menu").length>0){h.menu_id=$(this).children("menu").attr("id")}if($(this).children("name").length>0){h.name=acGetText($(this).children("name"))}b.name=b.name+h.name+", ";if($(this).children("description").length>0){h.description=acGetText($(this).children("description"))}if($(this).children("thumbnail").length>0){h.thumbnail=""}if(!("afterAppend" in h)){h.afterAppend=($(this).attr("afterAppend")?$(this).attr("afterAppend"):0)}if(!("beforeRemove" in h)){h.beforeRemove=($(this).attr("beforeRemove")?$(this).attr("beforeRemove"):0)}if(!("elements" in h)){h.elements=[]}function g(l,k,j,m,n){if(!(j in l)){l[j]=m}if(k.attr(j)){if(n){l[j]=parseInt(k.attr(j))}else{l[j]=k.attr(j)}}}g(h,$(this),"minCount",0,true);g(h,$(this),"maxCount",null,true);g(h,$(this),"minSize",1,true);g(h,$(this),"maxSize",null,true);g(h,$(this),"defaultSize",h.minSize,true);g(h,$(this),"size","custom",false);h.cost={};for(id in that.costs){h.cost[id]=that.costs[id]["default"]}$(this).children("cost").each(function(){h.cost[$(this).attr("id")]=parseFloat($(this).text())});if($(this).children("stats").length>0){h.stats={};for(id in that.stats){h.stats[id]=that.stats[id]["default"]}$(this).children("stats").children("stat").each(function(){h.stats[$(this).attr("id")]=parseInt($(this).text())})}$.each($(this).children("elements"),function(k,j){that.appendElements(f,j,h.elements,d)});b.elements[h.uid]=h;d[h.uid]=h});e.push(b)}}}function acInstance(b,a,d,c){var e=this;this.parent=d;this.isArmy=(this.parent==null);this.calc=b;this.army=b.army;this.ruleset=a;this.element=c;this.name=c.name;this._size=parseInt(c.defaultSize);this.size=function(f){if(typeof f==="undefined"){return this._size}this._size=f;this._dom_size.html(this._size);$.each(this.child,function(h,g){$.each(g,function(k,j){if(j.element.size==="inherit"){j.size(f)}})});if((typeof(_focused_element)!=="undefined")&&(_focused_element==this)){$("#acDec").toggle(this.size()!=this.element.minSize);$("#acInc").toggle(this.size()!=this.element.maxSize)}$.each(this._costs_spans,function(h,g){if(e._size*e.element.cost[h]>0){g.text(e._size*e.element.cost[h])}else{g.html(" ")}})};this.stat=function(g,f){if(typeof f==="undefined"){return this._stats[g]}if(g in this._stats){this._stats[g]=f;this._stats_spans[g].text(this._stats[g])}};this._rebuildSubmenu=function(){};this._rebuildListElem=function(){};if(!this.isArmy){this._subul=$("");this._dom_size=$(""+this._size+"");this._anchor=$(" x "+this.name+"").prepend(this._dom_size);this._costs_spans={};$.each(this.ruleset.costs,function(g,f){e._costs_spans[g]=$("");e._anchor.append(e._costs_spans[g])});this._stats_spans={};if(this.element.stats){this._stats={};for(id in this.element.stats){this._stats[id]=this.element.stats[id]}$.each(this.ruleset.stats,function(g,f){e._stats_spans[g]=$(""+e._stats[g]+"");e._anchor.append(e._stats_spans[g])})}this._li=$("
  • ").append(this._anchor).append(this._subul);this._submenu=$("");if(this.element.thumbnail){this._submenu.append($("
  • "+this.element.thumbnail+"
  • "))}if(this.element.description){this._submenu.append($("
  • "+this.element.description+"
  • "))}$.each(this.element.elements,function(g,f){$.each(f.elements,function(k,j){var h=$(""+j.name+"");h.click(function(){e.append(k)});e._submenu.append($("
  • ").append(h))})});b.submenuElem.append(this._submenu);this._submenu.hide();this._anchor.click(function(){e._focus();return false})}else{this._subul=$("#acUnits")}this._errorsul=$("");this.clear=function(){this.child={};var f=this;$.each(this.element.elements,function(h,g){$.each(g.elements,function(k,j){f.child[k]=[]})})};this.clear();this.toggleError=function(g,f){this._errorsul.find("."+g).remove();if(f){this._errorsul.append("
  • "+this.ruleset.errors[g]["message"]+"
  • ")}};this.remove=function(){if(this.parent.child[this.element.uid].length>this.element.minCount){if(this.element.beforeRemove){acSandbox(this.element.beforeRemove,{that:this,army:this.army})}this.clear();this.parent.child[this.element.uid].splice(this.parent.child[this.element.uid].indexOf(this),1);this._li.remove();this._submenu.remove()}else{this.calc.flashMsg("Minimum count of "+this.element.name+" is "+this.element.minCount)}};this.count=function(f){if(typeof f==="undefined"){return this.parent.child[this.element.uid].length}if(f in this.child){return this.child[f].length}return 0};this.append=function(h){var g=null;var j=this;$.each(this.element.elements,function(m,l){if(l.elements[h]){g=l.elements[h];var k=0;$.each(l.elements,function(o,n){k+=j.child[o].length});if(k===l.maxTotalCount){j.calc.flashMsg("Maximum total count of group "+l.name+" reached ("+l.maxTotalCount+")");g=null}}});if(!g){return}if((g.maxCount==null)||(this.child[h].length0);$("#acDown").toggle(_focused_element._li.next().length>0);$("#acDec").toggle((e.element.size==="custom")&&(e.size()!=e.element.minSize));$("#acInc").toggle((e.element.size==="custom")&&(e.size()!=e.element.maxSize));$("#acRem").toggle(true)};$.each(this.element.elements,function(g,f){$.each(f.elements,function(k,j){for(var h=0;h0);calc.canvas.find("#acDown").toggle(_focused_element._li.next().length>0);return false}).hide();calc.canvas.find("#acDown").click(function(){_focused_element._li.next().after(_focused_element._li);calc.canvas.find("#acUp").toggle(_focused_element._li.prev().length>0);calc.canvas.find("#acDown").toggle(_focused_element._li.next().length>0);return false}).hide();calc.army=null;calc.units=[];calc.availableUnits={};calc.closePopup=function(){this.canvas.find("#acPopup").fadeOut();this.canvas.find("#acPopupBg").fadeOut()};calc.popup=function(f,d,e){this.canvas.find("#acPopupTitle").html(f);this.canvas.find("#acPopupContent").html("");this.canvas.find("#acPopupContent").append(d);if(e){this.canvas.find("#acClosePopup").hide()}else{this.canvas.find("#acClosePopup").show()}this.canvas.find("#acPopupBg").fadeIn();this.canvas.find("#acPopup").fadeIn();this.canvas.find("#acClosePopup").click(function(){calc.canvas.find("#acPopup").fadeOut();calc.canvas.find("#acPopupBg").fadeOut();return false})};calc.setStatus=function(d){this.statusElem.text(d)};calc.flashMsg=function(d){this.statusElem.html(d);this.statusElem.stop().css("background-color","#ff0000").animate({backgroundColor:"#000000"},1000)};calc.setLang=function(d){acAddCSSRule(".trans","display","none");if(this.lang){acAddCSSRule("."+this.lang+"","display","none")}this.lang=d;acAddCSSRule("."+d+"","display","inline")};calc.setStatus("no TWR file loaded");calc.setError=function(d){this.statusElem.html(''+d+"")};xhrError=function(f,e,d){this.calc.setError(this.url+" - "+e+" - "+d)};calc.calcLoadUnitsXml=function(d){console.log(d)};calc.loadTWR=function(d){this.twrurl=d;this.units=[];this.availableUnits=[];this.setStatus("loading "+d);this.ruleset=new acRuleset(this);this.ruleset.loadFromUrl(d)};calc.revalidate=function(){if(!this.army){this.flashMsg("Please create new army first!");return}if(!this.model.validator){this.flashMsg("This model do not provide a validator!");return}acSandbox(this.model.validator,{army:this.army});this.popup("validation result",this.army._errorsul)};calc.newArmy=function(){that=this;body=$("
    ");body.append("

    "+this.ruleset.name+"

    "+this.ruleset.description+"
    ");modelSelect=$("");for(id in this.ruleset.models){modelSelect.append("")}createButton=$("");body.append($("").append(modelSelect));for(id in this.ruleset.costs){this.ruleset.costs[id].input=$("");body.append($("").append(this.ruleset.costs[id].input))}createButton.click(function(){calc.closePopup();calc.canvas.find("#acElements").html("");calc.canvas.find("#acUnits").html("");var e=$("
    ");$.each(that.ruleset.costs,function(g,f){e.append(""+f.shortname+"")});$.each(that.ruleset.stats,function(g,f){e.append(""+f.shortname+"")});calc.canvas.find("#acUnitsHeader").html("");calc.canvas.find("#acUnitsHeader").append(e);calc.model=that.ruleset.models[modelSelect.val()];calc.army=new acInstance(that,that.ruleset,null,calc.model);calc.army.maxCosts={};for(id in calc.ruleset.costs){calc.army.maxCosts[id]=that.ruleset.costs[id].input.val()}var d={};$.each(calc.model.mainmenu,function(h,g){d[h]=$("
      ");var f=$(""+g.name+"");calc.canvas.find("#acElements").append($("
    • ").append(f).append(d[h]).hover(function(){$(this).children("ul").show()},function(){$(this).children("ul").hide()}));$.each(g.submenus,function(l,k){d[l]=$("
        ");var j=$(""+k.name+"");d[h].append($("
      • ").append(j).append(d[l]).hover(function(){$(this).children("ul").show()},function(){$(this).children("ul").hide()}))})});$.each(calc.army.element.elements,function(g,f){$.each(f.elements,function(k,j){if(j.menu_id){var h=$(""+j.name+"");d[j.menu_id].append($("
      • ").append(h));h.click(function(){calc.army.append(k);$(".submm").hide()})}})});$.each(d,function(g,f){if($(f).children("li").length==0){$(f).parent().remove()}})});body.append($("
        ").append(createButton));this.popup("New army - "+this.ruleset.name,body)};calc.setFullscreen=function(d){var e=this;$("body").toggleClass("acFullscreen",d);this.canvas.toggleClass("acFullscreen",d);this.canvas.find("#acMaximize").toggle(!d);this.canvas.find("#acMinimize").toggle(d);if(d){$(window).resize(function(){var f=$(window).height()-80;e.canvas.find(".unitslist").height(f)});$(window).resize()}else{this.canvas.find(".unitslist").height(200);$(window).unbind("resize")}};calc.setEmbedded=function(d){if(d){this.setFullscreen(true)}};return calc}function goodbye(a){}if(navigator.appName!="Microsoft Internet Explorer"){window.onbeforeunload=goodbye}; \ No newline at end of file +if(!("bind" in Function.prototype)){Function.prototype.bind=function(a){var c=this;if(arguments.length<=1){return function(){return c.apply(a,arguments)}}else{var b=Array.prototype.slice.call(arguments,1);return function(){return c.apply(a,arguments.length===0?b:b.concat(Array.prototype.slice.call(arguments)))}}}}if(!("trim" in String.prototype)){String.prototype.trim=function(){return this.replace(/^\s+/,"").replace(/\s+$/,"")}}if(!("indexOf" in Array.prototype)){Array.prototype.indexOf=function(b,a){if(a===undefined){a=0}if(a<0){a+=this.length}if(a<0){a=0}for(var c=this.length;athis.length-1){a=this.length-1}for(a++;a-->0;){if(a in this&&this[a]===b){return a}}return -1}}if(!("forEach" in Array.prototype)){Array.prototype.forEach=function(c,b){for(var a=0,d=this.length;a"+$(this).text()+""}});return $.trim(txt)}(function(g){g.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(a,b){g.fx.step[b]=function(c){if(!c.colorInit){c.start=h(c.elem,b);c.end=e(c.end);c.colorInit=true}c.elem.style[b]="rgb("+[Math.max(Math.min(parseInt((c.pos*(c.end[0]-c.start[0]))+c.start[0]),255),0),Math.max(Math.min(parseInt((c.pos*(c.end[1]-c.start[1]))+c.start[1]),255),0),Math.max(Math.min(parseInt((c.pos*(c.end[2]-c.start[2]))+c.start[2]),255),0)].join(",")+")"}});function e(a){var b;if(a&&a.constructor==Array&&a.length==3){return a}if(b=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(a)){return[parseInt(b[1]),parseInt(b[2]),parseInt(b[3])]}if(b=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(a)){return[parseFloat(b[1])*2.55,parseFloat(b[2])*2.55,parseFloat(b[3])*2.55]}if(b=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(a)){return[parseInt(b[1],16),parseInt(b[2],16),parseInt(b[3],16)]}if(b=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(a)){return[parseInt(b[1]+b[1],16),parseInt(b[2]+b[2],16),parseInt(b[3]+b[3],16)]}if(b=/rgba\(0, 0, 0, 0\)/.exec(a)){return f.transparent}return f[g.trim(a).toLowerCase()]}function h(a,c){var b;do{b=g.curCSS(a,c);if(b!=""&&b!="transparent"||g.nodeName(a,"body")){break}c="backgroundColor"}while(a=a.parentNode);return e(b)}var f={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]}})(jQuery);function acClone(b){var a=(this instanceof Array)?[]:{};for(i in b){if(typeof b[i]=="object"){a[i]=acClone(b[i])}else{a[i]=b[i]}}return a}function acSandbox(a,b){new Function("window","with(window){"+a+"}")(b)}function acRuleset(a){this.calc=a;this.loadFromUrl=function(b){that=this;$.ajax({url:b+"info.xml",success:function(c,e,d){that.loadFromXml(b,c)},error:function(e,d,c){that.calc.setError(this.url+" - "+d+" - "+c)},dataType:"xml"})};this.loadFromXml=function(c,b){that=this;b=$(b).children("ruleset");this.calc.langSelect.html();$(b).children("languages").children("language").each(function(){that.calc.langSelect.append("");if($(this).attr("default")=="true"){that.calc.setLang($(this).attr("id"))}});this.version=$(b).attr("version");this.uid=$(b).children("uid").text();this.revision=$(b).children("revision").text();this.name=acGetText($(b).children("name"));this.description=acGetText($(b).children("description"));this.costs={};$(b).children("costs").children("cost").each(function(){that.costs[$(this).attr("id")]={name:acGetText($(this).children("name")),"default":parseFloat($(this).children("default").text()),shortname:acGetText($(this).children("shortname")),unit:acGetText($(this).children("unit"))}});this.stats={};$(b).children("stats").children("stat").each(function(){that.stats[$(this).attr("id")]={display:($(this).attr("display")==true?true:false),name:acGetText($(this).children("name")),shortname:acGetText($(this).children("shortname")),"default":parseInt($(this).children("default").text())}});this.defaultArmyName=acGetText($(b).children("defaultArmyName"));this.defaultArmySize={};$(b).children("defaultArmySize").children("cost").each(function(){that.defaultArmySize[$(this).attr("id")]=$(this).text()});this.models={};this.mainmenu={};$(b).children("mainmenu").children("menu").each(function(){menu_id=$(this).attr("id");that.mainmenu[menu_id]={};that.mainmenu[menu_id]["name"]=acGetText($(this).children("name"));that.mainmenu[menu_id]["submenus"]={};$(this).children("menu").each(function(){that.mainmenu[menu_id]["submenus"][$(this).attr("id")]={};that.mainmenu[menu_id]["submenus"][$(this).attr("id")]["name"]=acGetText($(this).children("name"))})});this.errors={};$(b).children("errors").children("error").each(function(){that.errors[$(this).children("uid").text()]={"class":$(this).attr("class"),message:acGetText($(this).children("message"))}});$(b).children("models").find("model").each(function(){model_id=$(this).attr("id");that.models[model_id]={name:acGetText($(this).children("name")),"default":$(this).attr("default")=="true"};that.models[model_id].elements=[];that.models[model_id].elements_by_uid={};that.models[model_id].validator="";$.ajax({model_id:model_id,url:c+$(this).children("validator").attr("src"),success:function(d){that.models[this.model_id].validator=d},error:function(f,e,d){that.calc.setError(this.url+" - "+e+" - "+d)},dataType:"text"});$(this).find("elements").each(function(){that.appendElements(c,this,that.models[model_id].elements,that.models[model_id].elements_by_uid)});that.models[model_id].mainmenu=that.mainmenu;that.models[model_id].defaultArmyName=that.defaultArmyName;that.models[model_id].defaultArmySize=that.defaultArmySize;if($(this).children("defaultArmyName").length){that.models[model_id].defaultArmyName=acGetText($(this).children("defaultArmyName"))}$(this).children("defaultArmySize").children("cost").each(function(){that.models[model_id].defaultArmySize[$(this).attr("id")]=$(this).text()})})};this.appendElements=function(f,c,e,d){that=this;if($(c).attr("src")){$.ajax({url:f+$(c).attr("src"),success:function(g){that.appendElements(f,$(g).children("elements"),e,d)},error:function(j,h,g){that.calc.setError(this.url+" - "+h+" - "+g)},dataType:"xml"})}else{var b={};b.minTotalCount=($(c).attr("minTotalCount")?parseInt($(c).attr("minTotalCount")):0);b.maxTotalCount=($(c).attr("maxTotalCount")?parseInt($(c).attr("maxTotalCount")):null);b.minTotalSize=($(c).attr("minTotalSize")?parseInt($(c).attr("minTotalSize")):0);b.maxTotalSize=($(c).attr("maxTotalSize")?parseInt($(c).attr("maxTotalSize")):null);b.elements={};b.name="";$(c).children("element").each(function(){if($(this).attr("extend")&&($(this).attr("extend") in d)){var h=acClone(d[$(this).attr("extend")])}else{var h={}}if($(this).children("uid").length>0){h.uid=$(this).children("uid").text()}if($(this).children("menu").length>0){h.menu_id=$(this).children("menu").attr("id")}if($(this).children("name").length>0){h.name=acGetText($(this).children("name"))}b.name=b.name+h.name+", ";if($(this).children("description").length>0){h.description=acGetText($(this).children("description"))}if($(this).children("thumbnail").length>0){h.thumbnail=""}if(!("afterAppend" in h)){h.afterAppend=($(this).attr("afterAppend")?$(this).attr("afterAppend"):0)}if(!("beforeRemove" in h)){h.beforeRemove=($(this).attr("beforeRemove")?$(this).attr("beforeRemove"):0)}if(!("elements" in h)){h.elements=[]}function g(l,k,j,m,n){if(!(j in l)){l[j]=m}if(k.attr(j)){if(n){l[j]=parseInt(k.attr(j))}else{l[j]=k.attr(j)}}}g(h,$(this),"minCount",0,true);g(h,$(this),"maxCount",null,true);g(h,$(this),"minSize",1,true);g(h,$(this),"maxSize",null,true);g(h,$(this),"defaultSize",h.minSize,true);g(h,$(this),"size","custom",false);h.cost={};for(id in that.costs){h.cost[id]=that.costs[id]["default"]}$(this).children("cost").each(function(){h.cost[$(this).attr("id")]=parseFloat($(this).text())});if($(this).children("stats").length>0){h.stats={};for(id in that.stats){h.stats[id]=that.stats[id]["default"]}$(this).children("stats").children("stat").each(function(){h.stats[$(this).attr("id")]=parseInt($(this).text())})}$.each($(this).children("elements"),function(k,j){that.appendElements(f,j,h.elements,d)});b.elements[h.uid]=h;d[h.uid]=h});e.push(b)}}}function acInstance(b,a,d,c){var e=this;this.parent=d;this.isArmy=(this.parent==null);this.calc=b;this.army=b.army;this.ruleset=a;this.element=c;this.name=c.name;this._size=parseInt(c.defaultSize);this.size=function(f){if(typeof f==="undefined"){return this._size}this._size=f;this._dom_size.html(this._size);$.each(this.child,function(h,g){$.each(g,function(k,j){if(j.element.size==="inherit"){j.size(f)}})});if((typeof(_focused_element)!=="undefined")&&(_focused_element==this)){$("#acDec").toggle(this.size()!=this.element.minSize);$("#acInc").toggle(this.size()!=this.element.maxSize)}$.each(this._costs_spans,function(h,g){if(e._size*e.element.cost[h]>0){g.text(e._size*e.element.cost[h])}else{g.html(" ")}})};this.stat=function(g,f){if(typeof f==="undefined"){return this._stats[g]}if(g in this._stats){this._stats[g]=f;this._stats_spans[g].text(this._stats[g])}};this._rebuildSubmenu=function(){};this._rebuildListElem=function(){};if(!this.isArmy){this._subul=$("
          ");this._dom_size=$(""+this._size+"");this._anchor=$(" x "+this.name+"").prepend(this._dom_size);this._costs_spans={};$.each(this.ruleset.costs,function(g,f){e._costs_spans[g]=$("");e._anchor.append(e._costs_spans[g])});this._stats_spans={};if(this.element.stats){this._stats={};for(id in this.element.stats){this._stats[id]=this.element.stats[id]}$.each(this.ruleset.stats,function(g,f){e._stats_spans[g]=$(""+e._stats[g]+"");e._anchor.append(e._stats_spans[g])})}this._li=$("
        • ").append(this._anchor).append(this._subul);this._submenu=$("
            ");if(this.element.thumbnail){this._submenu.append($("
          • "+this.element.thumbnail+"
          • "))}if(this.element.description){this._submenu.append($("
          • "+this.element.description+"
          • "))}$.each(this.element.elements,function(g,f){$.each(f.elements,function(k,j){var h=$(""+j.name+"");h.click(function(){e.append(k)});e._submenu.append($("
          • ").append(h))})});b.submenuElem.append(this._submenu);this._submenu.hide();this._anchor.click(function(){e._focus();return false})}else{this._subul=$("#acUnits")}this._errorsul=$("
              ");this.clear=function(){this.child={};var f=this;$.each(this.element.elements,function(h,g){$.each(g.elements,function(k,j){f.child[k]=[]})})};this.clear();this.toggleError=function(g,f){this._errorsul.find("."+g).remove();if(f){this._errorsul.append("
            • "+this.ruleset.errors[g]["message"]+"
            • ")}};this.remove=function(){if(this.parent.child[this.element.uid].length>this.element.minCount){if(this.element.beforeRemove){acSandbox(this.element.beforeRemove,{that:this,army:this.army})}this.clear();this.parent.child[this.element.uid].splice(this.parent.child[this.element.uid].indexOf(this),1);this._li.remove();this._submenu.remove()}else{this.calc.flashMsg("Minimum count of "+this.element.name+" is "+this.element.minCount)}};this.count=function(f){if(typeof f==="undefined"){return this.parent.child[this.element.uid].length}if(f in this.child){return this.child[f].length}return 0};this.append=function(h){var g=null;var j=this;$.each(this.element.elements,function(m,l){if(l.elements[h]){g=l.elements[h];var k=0;$.each(l.elements,function(o,n){k+=j.child[o].length});if(k===l.maxTotalCount){j.calc.flashMsg("Maximum total count of group "+l.name+" reached ("+l.maxTotalCount+")");g=null}}});if(!g){return}if((g.maxCount==null)||(this.child[h].length0);$("#acDown").toggle(_focused_element._li.next().length>0);$("#acDec").toggle((e.element.size==="custom")&&(e.size()!=e.element.minSize));$("#acInc").toggle((e.element.size==="custom")&&(e.size()!=e.element.maxSize));$("#acRem").toggle(true)};$.each(this.element.elements,function(g,f){$.each(f.elements,function(k,j){for(var h=0;h0);calc.canvas.find("#acDown").toggle(_focused_element._li.next().length>0);return false}).hide();calc.canvas.find("#acDown").click(function(){_focused_element._li.next().after(_focused_element._li);calc.canvas.find("#acUp").toggle(_focused_element._li.prev().length>0);calc.canvas.find("#acDown").toggle(_focused_element._li.next().length>0);return false}).hide();calc.army=null;calc.units=[];calc.availableUnits={};calc.closePopup=function(){this.canvas.find("#acPopup").fadeOut();this.canvas.find("#acPopupBg").fadeOut()};calc.popup=function(f,d,e){this.canvas.find("#acPopupTitle").html(f);this.canvas.find("#acPopupContent").html("");this.canvas.find("#acPopupContent").append(d);if(e){this.canvas.find("#acClosePopup").hide()}else{this.canvas.find("#acClosePopup").show()}this.canvas.find("#acPopupBg").fadeIn();this.canvas.find("#acPopup").fadeIn();this.canvas.find("#acClosePopup").click(function(){calc.canvas.find("#acPopup").fadeOut();calc.canvas.find("#acPopupBg").fadeOut();return false})};calc.setStatus=function(d){this.statusElem.text(d)};calc.flashMsg=function(d){this.statusElem.html(d);this.statusElem.stop().css("background-color","#ff0000").animate({backgroundColor:"#000000"},1000)};calc.setLang=function(d){acAddCSSRule(".trans","display","none");if(this.lang){acAddCSSRule("."+this.lang+"","display","none")}this.lang=d;acAddCSSRule("."+d+"","display","inline")};calc.setStatus("no TWR file loaded");calc.setError=function(d){this.statusElem.html(''+d+"")};xhrError=function(f,e,d){this.calc.setError(this.url+" - "+e+" - "+d)};calc.calcLoadUnitsXml=function(d){console.log(d)};calc.loadTWR=function(d){this.twrurl=d;this.units=[];this.availableUnits=[];this.setStatus("loading "+d);this.ruleset=new acRuleset(this);this.ruleset.loadFromUrl(d)};calc.revalidate=function(){if(!this.army){this.flashMsg("Please create new army first!");return}if(!this.model.validator){this.flashMsg("This model do not provide a validator!");return}acSandbox(this.model.validator,{army:this.army});this.popup("validation result",this.army._errorsul)};calc.getArmyHtml=function(){if(!this.army){this.flashMsg("Please create new army first!");return false}return"Not yet implemented.HTML"};calc.getArmyTwa=function(){if(!this.army){this.flashMsg("Please create new army first!");return false}return"Not yet implemented.TWA"};calc.newArmy=function(){that=this;body=$("
              ");body.append("

              "+this.ruleset.name+"

              "+this.ruleset.description+"
              ");modelSelect=$("");for(id in this.ruleset.models){modelSelect.append("")}createButton=$("");body.append($("").append(modelSelect));for(id in this.ruleset.costs){this.ruleset.costs[id].input=$("");body.append($("").append(this.ruleset.costs[id].input))}createButton.click(function(){calc.closePopup();calc.canvas.find("#acElements").html("");calc.canvas.find("#acUnits").html("");var e=$("
              ");$.each(that.ruleset.costs,function(g,f){e.append(""+f.shortname+"")});$.each(that.ruleset.stats,function(g,f){e.append(""+f.shortname+"")});calc.canvas.find("#acUnitsHeader").html("");calc.canvas.find("#acUnitsHeader").append(e);calc.model=that.ruleset.models[modelSelect.val()];calc.army=new acInstance(that,that.ruleset,null,calc.model);calc.army.maxCosts={};for(id in calc.ruleset.costs){calc.army.maxCosts[id]=that.ruleset.costs[id].input.val()}var d={};$.each(calc.model.mainmenu,function(h,g){d[h]=$("
                ");var f=$(""+g.name+"");calc.canvas.find("#acElements").append($("
              • ").append(f).append(d[h]).hover(function(){$(this).children("ul").show()},function(){$(this).children("ul").hide()}));$.each(g.submenus,function(l,k){d[l]=$("
                  ");var j=$(""+k.name+"");d[h].append($("
                • ").append(j).append(d[l]).hover(function(){$(this).children("ul").show()},function(){$(this).children("ul").hide()}))})});$.each(calc.army.element.elements,function(g,f){$.each(f.elements,function(k,j){if(j.menu_id){var h=$(""+j.name+"");d[j.menu_id].append($("
                • ").append(h));h.click(function(){calc.army.append(k);$(".submm").hide()})}})});$.each(d,function(g,f){if($(f).children("li").length==0){$(f).parent().remove()}})});body.append($("
                  ").append(createButton));this.popup("New army - "+this.ruleset.name,body)};calc.setFullscreen=function(d){var e=this;$("body").toggleClass("acFullscreen",d);this.canvas.toggleClass("acFullscreen",d);this.canvas.find("#acMaximize").toggle(!d);this.canvas.find("#acMinimize").toggle(d);if(d){$(window).resize(function(){var f=$(window).height()-80;e.canvas.find(".unitslist").height(f)});$(window).resize()}else{this.canvas.find(".unitslist").height(200);$(window).unbind("resize")}};calc.setEmbedded=function(d){if(d){this.setFullscreen(true);calc.canvas.find("#acMinimize").hide();calc.canvas.find(".buttons1").hide()}};return calc}function goodbye(a){}if(navigator.appName!="Microsoft Internet Explorer"){window.onbeforeunload=goodbye}; \ No newline at end of file diff --git a/src/class.armycalc.js b/src/class.armycalc.js index 0ddb473..3f74338 100644 --- a/src/class.armycalc.js +++ b/src/class.armycalc.js @@ -158,6 +158,23 @@ function jsArmyCalc( selector, templateurl ){ } + + calc.getArmyHtml = function( ){ + if(! this.army ){ + this.flashMsg( "Please create new army first!" ); + return false; + } + return "Not yet implemented.HTML"; + } + + calc.getArmyTwa = function( ){ + if(! this.army ){ + this.flashMsg( "Please create new army first!" ); + return false; + } + return "Not yet implemented.TWA"; + } + calc.newArmy = function( ){ that = this; @@ -302,6 +319,8 @@ function jsArmyCalc( selector, templateurl ){ if( eb ){ this.setFullscreen(true); //TODO hide unnecesairy icons + calc.canvas.find('#acMinimize').hide(); + calc.canvas.find('.buttons1').hide(); } } diff --git a/src/style.css b/src/style.css index 589c586..335dd59 100644 --- a/src/style.css +++ b/src/style.css @@ -200,9 +200,11 @@ div.acCanvas div.workspace { div.acCanvas div.workspace div.unitslist{ margin-left: 160px; height: 300px; + /* overflow: auto; overflow-x: hidden; -ms-overflow-x: hidden; + */ } div.acCanvas div.workspace div.unitdetails{ width: 160px;