Raw Source
Amynka / OGame Trade Calculator

// ==UserScript==
// @name         OGame Trade Calculator
// @description  Adds a trade calculator to the OGame interface
// @namespace    http://userscripts-mirror.org/users/68563/scripts
// @downloadURL  http://userscripts-mirror.org/scripts/source/151002.user.js
// @updateURL    http://userscripts-mirror.org/scripts/source/151002.user.js
// @version      2.6.5
// @include      *://*.ogame.*/game/index.php?*page=*
// ==/UserScript==

/*! OGame Trade Calculator (C) 2012 Elías Grande Cásedas | GNU-GPL | gnu.org/licenses */
(function(){var i=window,p,f;try{if(unsafeWindow){i=unsafeWindow}}catch(j){}p=i.document;f=i.jQuery;var l,k,g,n;k={VERSION:[2,6,5],ID_PREFIX:(l="o_trade_calc_"),NAME:"OGame Trade Calculator",HOME_URL:"http://userscripts-mirror.org/scripts/show/151002",UPDATE_URL:"http://userscripts-mirror.org/scripts/source/151002.user.js",UPDATE_JSONP:"https://dl.dropbox.com/u/89283239/OGame%20Trade%20Calculator/dist/updater.js",DOWNLOAD_URL:"http://userscripts-mirror.org/scripts/source/151002.user.js",TESTED_OGAME_VERSION:"5.4.0-rc2"};g=function(e){var s,r=e.split(/\D+/g);for(s in r){r[s]=parseInt(r[s])}return r};n=function(w,v,r){var t,s=w.length,e=v.length,u=Math.min(s,e);for(t=0;t<u;t++){if(w[t]>v[t]){return false}else{if(w[t]<v[t]){return true}}}if(s>e){return false}if(s<e){return true}if(arguments.length>2&&r){return true}return false};var h={obj:i.localStorage,set:function(r,e){return this.obj.setItem(l+r,JSON.stringify(e))},get:function(r){var e=this.obj.getItem(l+r);return(e==null)?null:JSON.parse(e)},remove:function(e){return this.obj.removeItem(l+e)}};String.prototype.replaceAll=function(e,r){return this.split(e).join(r)};String.prototype.recursiveReplaceMap=function(u,t,r){if(r==0){return this.split(u[0]).join(t[0])}var s,e=this.split(u[r]);for(s in e){e[s]=e[s].recursiveReplaceMap(u,t,r-1)}return e.join(t[r])};String.prototype.replaceMap=function(e){var r,u,t,s;u=new Array();t=new Array();s=0;for(r in e){u.push(r);t.push(e[r]);s++}if(s==0){return this}else{return this.recursiveReplaceMap(u,t,s-1)}};String.prototype.capitalize=function(){return this.charAt(0).toUpperCase()+this.slice(1)};String.prototype.trim=function(){return this.replace(/^\s+/,"").replace(/\s+$/,"")};String.prototype.parseUnicodeEscapes=function(){var e=/\\u\w{4}/.exec(this);if(e==null){return this+""}else{return this.replace(e,String.fromCharCode(parseInt((e+"").substring(2),16))).parseUnicodeEscapes()}};var a=function(){f.getScript("/cdn/js/greasemonkey/version-check.js",function(){i.oGameVersionCheck(k.NAME,k.TESTED_OGAME_VERSION,k.HOME_URL)});
/*! jCaret (C) 2010 C. F. Wong | cloudgen.w0ng.hk | www.opensource.org/licenses/mit-license.php */
(function(W,U,V,X){W.fn.caret=function(am,ai){var Z,ac,ak=this[0],ae=/MSIE/.test(i.navigator.userAgent);if(typeof am==="object"&&typeof am.start==="number"&&typeof am.end==="number"){Z=am.start;ac=am.end}else{if(typeof am==="number"&&typeof ai==="number"){Z=am;ac=ai}else{if(typeof am==="string"){if((Z=ak.value.indexOf(am))>-1){ac=Z+am[U]}else{Z=null}}else{if(Object.prototype.toString.call(am)==="[object RegExp]"){var aj=am.exec(ak.value);if(aj!=null){Z=aj.index;ac=Z+aj[0][U]}}}}}if(typeof Z!="undefined"){if(ae){var af=this[0].createTextRange();af.collapse(true);af.moveStart("character",Z);af.moveEnd("character",ac-Z);af.select()}else{this[0].selectionStart=Z;this[0].selectionEnd=ac}this[0].focus();return this}else{if(ae){var ah=document.selection;if(this[0].tagName.toLowerCase()!="textarea"){var aa=this.val(),ad=ah[V]()[X]();ad.moveEnd("character",aa[U]);var al=(ad.text==""?aa[U]:aa.lastIndexOf(ad.text));ad=ah[V]()[X]();ad.moveStart("character",-aa[U]);var ag=ad.text[U]}else{var ad=ah[V](),Y=ad[X]();Y.moveToElementText(this[0]);Y.setEndPoint("EndToEnd",ad);var al=Y.text[U]-ad.text[U],ag=al+ad.text[U]}}else{var al=ak.selectionStart,ag=ak.selectionEnd}var ab=ak.value.substring(al,ag);return{start:al,end:ag,text:ab,replace:function(an){return ak.value.substring(0,al)+an+ak.value.substring(ag,ak.value[U])}}}}})(f,"length","createRange","duplicate");
/*! [/jCaret] */
var r=({getMeta:function(U,V){try{return f('meta[name="'+U+'"]').attr("content")}catch(W){if(arguments.length>1){return V}else{return null}}},init:function(){return{LANGUAGE:this.getMeta("ogame-language",""),VERSION:g(this.getMeta("ogame-version","0"))}}}).init();var C={
/*! [colors] */
MET:"#FF7700",CRY:"#00FFFF",DEU:"#FF33FF",SC:"#FFFFFF",LC:"#FFFFFF"
/*! [/colors] */
};var D=({text:{},set:function(U,V){if(U.test(r.LANGUAGE)){f.extend(true,this.text,V)}return this},init:function(){var V,U,X=/[\|\:]/;try{U=(i.initAjaxResourcebox+"");U=U.split(/tooltip\s*[\"\']?\s*\:\s*[\"\']/);for(V=0;V<3;V++){U[V]=U[V+1].split(X).shift().trim().parseUnicodeEscapes();if(U[V]==""){throw 0}}}catch(W){U=["Metal","Crystal","Deuterium"]}this.text.RES_MET=U[0];this.text.RES_CRY=U[1];this.text.RES_DEU=U[2];return this}}).init(
/*! [i18n=en] */
).set(/.*/,{THO_SEP:",",DEC_SEP:".",MENU:"Trade C.",TITLE:"Trade calculator",CONFIG:"Settings",UPD_AVA:"Update available",INSTALL:"Install",GO_HOME:"Visit the site of the script",ACTION:"Action",BUY:"I buy",SELL:"I sell",RATIO:"Ratio",ILLEGAL:"illegal",MAX:"Maximum",REG:"Regular",MIN:"Minimum",IN_EXCH:"In exchange for",RESULT:"Result",SEND:"I send",RECEIVE:"I receive",RES:"Resources",LC_SHIP:"LC",SC_SHIP:"SC",OR:"or",MESSAGE:"Message",WHERE:"Place of delivery",PLANET:"Planet",MOON:"Moon",CUR_PLA:"Current planet",SEL_CUR:"Select current planet or moon",RAT_LST:"Ratio list",NAME:"Name",LEGAL:"Legal",YES:"Yes",NO:"No",DEFAULT:"Default",NEW:"New",DEF_VAL:"Default values",ABB_KEY:"Abbreviations and auto-complete keys",USE_ABB:"Use abbreviations when possible",UNABB:"Unabbreviate fields when the mouse is over them",ABB_MIL:"Abbreviation for millions",ABB_THO:"Abbreviation for thousands",KEY_MIL:"Key to write millions (6 zeros)",KEY_THO:"Key to write thousands (3 zeros)",MES_TPL:"Message template",RES_DTP:"Restore default template",IE_CONF:"Import / Export configuration",IMPORT:"Import",EXPORT:"Export",ACCEPT:"Accept",CANCEL:"Cancel",RES_DEF:"Restore default settings",CONTACT:"Contact information"}
/*! [i18n=es] */
).set(/es|ar|mx/,{THO_SEP:".",DEC_SEP:",",MENU:"C. Comercio",TITLE:"Calculadora de comercio",CONFIG:"Configuración",UPD_AVA:"Actualización disponible",INSTALL:"Instalar",GO_HOME:"Visitar página del script",ACTION:"Acción",BUY:"Compro",SELL:"Vendo",RATIO:"Ratio",ILLEGAL:"ilegal",MAX:"Máximo",REG:"Normal",MIN:"Mínimo",IN_EXCH:"A cambio de",RESULT:"Resultado",SEND:"Envío",RECEIVE:"Recibo",RES:"Recursos",LC_SHIP:"NGC",SC_SHIP:"NPC",OR:"o",MESSAGE:"Mensaje",WHERE:"Lugar de entrega",PLANET:"Planeta",MOON:"Luna",CUR_PLA:"Planeta actual",SEL_CUR:"Seleccionar planeta o luna actual",RAT_LST:"Lista de ratios",NAME:"Nombre",LEGAL:"Legal",YES:"Si",NO:"No",DEFAULT:"Por defecto",NEW:"Nuevo",DEF_VAL:"Valores por defecto",ABB_KEY:"Abreviaciones y teclas de autocompletado",USE_ABB:"Usar abreviaciones cuando sea posible",UNABB:"Desabreviar campos al poner el ratón encima",ABB_MIL:"Abreviación para millones",ABB_THO:"Abreviación para miles",KEY_MIL:"Tecla para escribir millones (6 ceros)",KEY_THO:"Tecla para escribir miles (3 ceros)",MES_TPL:"Plantilla de mensaje",RES_DTP:"Restaurar plantilla por defecto",IE_CONF:"Importar / Exportar configuración",IMPORT:"Importar",EXPORT:"Exportar",ACCEPT:"Aceptar",CANCEL:"Cancelar",RES_DEF:"Restaurar ajustes por defecto",CONTACT:"Información de contacto"}
/*! [i18n=nl] by sanctuary http://userscripts-mirror.org/users/431052 */
).set(/nl/,{THO_SEP:",",DEC_SEP:".",MENU:"Trade C.",TITLE:"Trade calculator",CONFIG:"Instellingen",UPD_AVA:"Update beschikbaar",INSTALL:"Installeren",GO_HOME:"Bezoek de web van het script",ACTION:"Actie",BUY:"Ik koop",SELL:"Ik verkoop",RATIO:"Verhouding",ILLEGAL:"illegaal",MAX:"Maximaal",REG:"Gemiddeld",MIN:"Minimaal",IN_EXCH:"In ruil voor",RESULT:"Resultaat",SEND:"Ik verstuur",RECEIVE:"Ik ontvang",RES:"Grondstoffen",LC_SHIP:"GV",SC_SHIP:"KV",OR:"of",MESSAGE:"Bericht",WHERE:"Plaats van levering",PLANET:"Planeet",MOON:"Maan",CUR_PLA:"Huidige planeet",SEL_CUR:"Kies huidige planeet of maan",RAT_LST:"Verhouding lijst",NAME:"Naam",LEGAL:"Legaal",YES:"Ja",NO:"Nee",DEFAULT:"Standaard",NEW:"Nieuw",DEF_VAL:"Standaard waarde",ABB_KEY:"Toets afkortingen en automatisch aanvullen",USE_ABB:"Gebruik afkortingen wanneer mogelijk",UNABB:"Verkort velden wanneer de muis over het veld staat",ABB_MIL:"Afkorting voor miljoen",ABB_THO:"Afkorting voor duizend",KEY_MIL:"Toets voor miljoen te schrijven (6 nullen)",KEY_THO:"Toets voor duizend te schrijven (3 nullen)",MES_TPL:"Bericht sjabloon",RES_DTP:"Herstel standaard sjabloon",IE_CONF:"Invoer / Uitvoer configuratie",IMPORT:"Invoer",EXPORT:"Uitvoer",ACCEPT:"Accepteer",CANCEL:"Annuleer",RES_DEF:"Herstel naar standaard instellingen",CONTACT:"Contactinformatie"}
/*! [i18n=it] by adyr http://userscripts-mirror.org/topics/122435 */
).set(/it/,{THO_SEP:",",DEC_SEP:".",MENU:"Commercio C.",TITLE:"Commercio calcolatrice",CONFIG:"Opzioni",UPD_AVA:"Update disponibile",INSTALL:"Installa",GO_HOME:"Visita il sito dello script",ACTION:"Azione",BUY:"Compro",SELL:"Vendo",RATIO:"Rapporto",ILLEGAL:"illegale",MAX:"Massimo",REG:"Regolare",MIN:"Minimo",IN_EXCH:"In cambio di",RESULT:"Risultato",SEND:"Mando",RECEIVE:"Ricevo",RES:"Risorse",LC_SHIP:"CP",SC_SHIP:"CL",OR:"o",MESSAGE:"Messaggio",WHERE:"Ricevo su",PLANET:"Pianeta",MOON:"Luna",CUR_PLA:"Pianeta corrente",SEL_CUR:"Selezionare pianeta corrente",RAT_LST:"Rapporti",NAME:"Nome",LEGAL:"Legale",YES:"Si",NO:"No",DEFAULT:"Default",NEW:"Nuovo",DEF_VAL:"Valori di default",ABB_KEY:"Abbreviazioni e pulsanti di auto-completamento",USE_ABB:"Usa abbreviazioni quando possibile",UNABB:"Annulla abbreviazioni se il campo è sotto al mouse",ABB_MIL:"Abbreviazione per milioni",ABB_THO:"Abbreviazione per migliaia",KEY_MIL:"Tasto per scrivere milioni (6 zero)",KEY_THO:"Tasto per scrivere migliaia (3 zero)",MES_TPL:"Template del messaggio",RES_DTP:"Ripristina il template di default",IE_CONF:"Importa / Esporta configurazione",IMPORT:"Importa",EXPORT:"Esporta",ACCEPT:"Accetta",CANCEL:"Cancella",RES_DEF:"Ripristina impostazioni di default",CONTACT:"Informazioni di contatto"}
/*! [i18n=fr] by vulca http://userscripts-mirror.org/users/100684 */
).set(/fr/,{THO_SEP:" ",DEC_SEP:",",MENU:"C. Échange",TITLE:"Calculateur d'échange",CONFIG:"Options",UPD_AVA:"MaJ disponible",INSTALL:"Installer",GO_HOME:"Visiter le site web du script",ACTION:"Action",BUY:"J'achète",SELL:"Je vends",RATIO:"Ratio",ILLEGAL:"illegal",MAX:"Maximum",REG:"Habituel",MIN:"Minimum",IN_EXCH:"En échange de",RESULT:"Résultat",SEND:"J'envoie",RECEIVE:"Je reçois",RES:"Ressources",LC_SHIP:"GT",SC_SHIP:"PT",OR:"ou",MESSAGE:"Message",WHERE:"Lieu de livraison",PLANET:"Planète",MOON:"Lune",CUR_PLA:"Planète actuelle",SEL_CUR:"Sélectionner la planète ou lune actuelle",RAT_LST:"Liste des ratios",NAME:"Nom",LEGAL:"Legal",YES:"Oui",NO:"Non",DEFAULT:"Defaut",NEW:"Nouveau",DEF_VAL:"Valeurs par défaut",ABB_KEY:"Abbréviations et raccourcis",USE_ABB:"Utiliser les abbréviations quand c'est possible",UNABB:"Ne pas afficher d'abbréviation lorsque la souris est au dessus du champ",ABB_MIL:"Abbreviation pour millions",ABB_THO:"Abbreviation pour thousands",KEY_MIL:"Raccourcis pour écrire millions (6 zéros)",KEY_THO:"Raccourcis pour écrire milliers (3 zéros)",MES_TPL:"Format du message",RES_DTP:"Restorer le format par defaut",IE_CONF:"Configuration des Imports / Exports",IMPORT:"Import",EXPORT:"Export",ACCEPT:"Accepter",CANCEL:"Annuler",RES_DEF:"Restorer les options par defaut",CONTACT:"Contact"}
/*! [/i18n] */
).text;var w={
/*! [css] */
CSS:"#"+l+"window select{visibility:visible !important;}#"+l+"window{float:left;position:relative;width:670px;overflow:visible;z-index:2;}#galaxy #"+l+"window{top:-44px;}#"+l+'header{height:28px;position: relative;background: url("http://gf1.geo.gfsrv.net/cdn63/10e31cd5234445e4084558ea3506ea.gif") no-repeat scroll 0px 0px transparent;}#'+l+"header h4{height:28px;line-height:28px;text-align:center;color:#6F9FC8;font-size:12px;font-weight:bold;position:absolute;top:0;left:100px;right:100px;}#"+l+"config_but{display:block;height:16px;width:16px;background:url(http://gf3.geo.gfsrv.net/cdne7/1f57d944fff38ee51d49c027f574ef.gif);float:right;margin:8px 0 0 0;opacity:0.5;}#"+l+"config_but:hover{opacity:1;}#"+l+'window.config input[type="button"]{margin:0 5px 0 5px;}#'+l+"config,#"+l+"window.config #"+l+"calc,#"+l+"window.config #"+l+"config_but,#"+l+"window.calc ."+l+"config_only{display:none;}#"+l+"window.config #"+l+"config{display:block;}#"+l+"main,#"+l+'update{padding:15px 25px 0 25px;background: url("http://gf1.geo.gfsrv.net/cdn9e/4f73643e86a952be4aed7fdd61805a.gif") repeat-y scroll 5px 0px transparent;}#'+l+"main *{font-size:11px;}#"+l+"update div{font-size:11px;border:1px solid #000;color:#99CC00;line-height:30px;text-align:center;font-weight:bold;}#"+l+"update a{margin-left:15px;}#"+l+"window table{width:620px;background-color:#0D1014;border-collapse:collapse;clear:both;}#"+l+"window.calc table{border:1px solid #000;margin:0 0 20px 0;}#"+l+"window.calc table.last{margin:0;}#"+l+"window.config table{width:598px;}#"+l+"main th{color:#6F9FC8;text-align:center;font-weight:bold;}."+l+"label,."+l+"label *{color:grey;text-align:left;}."+l+"label{padding:0 5px 0 5px;font-weight:bold;}#"+l+"window.config ."+l+"label{text-align:center;}#"+l+"main tr,#"+l+"main td,#"+l+"main th{height:28px;line-height:28px;}#"+l+'main input[type="text"]{width:100px;text-align:center;}option.'+l+"highlight{color:lime !important;font-weight:bold;}option."+l+"moon{color:orange;}."+l+"select{width:150px;text-align:left;}."+l+"select select{width:130px;text-align:center;}#"+l+"main option{padding:1px 5px 1px 5px;}."+l+"input,."+l+"output{width:112px;padding:0 2px 0 0;}."+l+"name{width:142px;padding:0 1px 0 1px;text-align:right;}#"+l+"main ."+l+"name input{width:130px;text-align:center;}."+l+"ratio{width:82px;padding:0 1px 0 1px;text-align:right;}#"+l+"main ."+l+"ratio input{width:70px;text-align:center;}#"+l+"ratio_illegal{color:red;}."+l+"output{text-align:center;font-weight:bold;}#"+l+"output_met{color:"+C.MET+";}#"+l+"output_cry{color:"+C.CRY+";}#"+l+"output_deu{color:"+C.DEU+";}."+l+"textarea{padding:0 3px 0 3px !important;}#"+l+"message{width:601px;height:50px !important;margin:0 !important;}#"+l+"planet{width:auto;text-align:left;margin:0;}."+l+"select1row{padding-left:2px;}."+l+"select1row select{width:250px !important;text-align:left;margin:0;}#"+l+"selCurPla_button{margin-left:30px}#"+l+'footer{height:17px;background: url("http://gf1.geo.gfsrv.net/cdn30/aa3e8edec0a2681915b3c9c6795e6f.gif") no-repeat scroll 2px 0px transparent;}.'+l+'config_title{font-size:11px;font-weight:bold;color:#6F9FC8;line-height:22px;background:url("http://gf1.geo.gfsrv.net/cdn0b/d55059f8c9bab5ebf9e8a3563f26d1.gif") no-repeat scroll 0 0 #13181D;height:22px;margin:0 0 10px 0;padding:0 0 0 40px;border:1px solid #000;overflow:hidden;cursor:pointer;}.'+l+"config_title:hover{color:#A7AFB7;background-color:#23282D;border-color:#13181D;}."+l+"config_box{border:1px solid #000;margin:5px 5px 10px 5px;padding:5px;}#"+l+"new_ratio input{border-color:#9C0;}."+l+"check,."+l+"name_noedit{text-align:center;}."+l+"check input{vertical-align:text-bottom;}."+l+'check input[type="checkbox"]{vertical-align:middle;}.'+l+"action{text-align:center;padding:0 3px 0 3px;}."+l+'action a{background:url("http://gf1.geo.gfsrv.net/cdn94/297ee218d94064df0a66bd41a04d28.png") scroll 0 0 no-repeat;width:16px;height:16px;display:inline-block;vertical-align:top;position:relative;top:5px;border:1px solid #000;border-radius:2px;opacity:0.7;}a.'+l+"icon_up,a."+l+"icon_down,a."+l+"icon_add{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAwCAMAAAAvgQplAAAAAXNSR0IArs4c6QAAAvpQTFRFbomeXHaLb4mdgpyveJaxdpSweZKk////W3qXVnKNRWB6AAAANTU1PT09MUJTJzVD/6gAzAAA/9IA/wAAqsrjvtjrna25PlVsTWiCqbjESGF6YHyaOk9ldZOwTWeCPj4+PlRsVHeYRGKBUXCRQVx6VnibTGmFVnmbRWOERWSEXn+chJusPVhzU3SVQ19+TGyKU3aXPVRrTGqHkrHKPVZwUW6KQ2GAU3aZO09lcJCqYHqORV95UW6LTGeBQFlySGB5SmF6Q2B+VnmaUG2JVnSQS2qHSmeCL0RaXHmUU3WVoLzSqcTYQ2GCPFZxPVZxkaa1RWSDPFZyRl96XH2ZTGqGS2qJO1Ru1d7lV3SROk5kQVp0QVpz5erua4OWqLnGpcDUWn2ewMzVlK/EqLbCcY+qj6zESmF3r7zHob3TTGaAlqi2haO9XniNQ115TWiD8vX4k7DGZ4mqyNTdSmaBpcHWcImdjaKynbrRdY6hvMnTSWeHYXyaq7jDV3SQ6+/zo7/Ur8rd8PP1javGhaK82uLmq8bZq7vHh6a+0NrgnLjOhJqqUG+QpL/VsL7JdJOuXnmSytTcj6OxT2qE+Pn7eZm0zCszfZmxhqXBdZGpXHaOS2uKboynr73J4ebrhKO7obLAmLfR+vv9nLfNip+uX3yYXn+bdoyec42gobC9pbS/yNPbYX2aPVRtt8XPmLTLbo2odI2geI2fVHKT2OHo3OLoRGGBRmODkK7HaImkaomka4unjaCw/f7/mbjRXnyXd4+jf5Wmp8HWjq3IiqnEeZOqPlVtVHeXYH2ai6CxYYCbZIKfZn+TTGeDVnWQb5GtVnWRSWWASmWATGuKc5CpusXOU3GQlLPMXHqXUnSUZoSifJq0fJu3ZHyT/v//dpOwqcXZYHqSYnuQ7fDz7PD0XHyYWnaRkKW1TGiFTGmEj6zDYXuPPFdzPVdzrsndhpytVHaYh52uXn6c8PP2jqzFQFt5jKvFcYqeQl99gZ+52uHmRGKAyNTcV3iaqsbZDVW+rgAAAAF0Uk5TAEDm2GYAAAABYktHRACIBR1IAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3AsJFTcNV6u1fQAAAE9JREFUKM/dkjEOACAIA6tL//9jFaORqhtxsBO9CS4AyQXSKwkEpAfkIMgttNh4AUtCALQ/9NGPu4A87/erj/6DD30HBZuPwztsPmIFqY8CjdEFo21taJsAAAAASUVORK5CYII=);}a."+l+"icon_down{background-position:0px -16px}a."+l+"icon_add{background-position:0px -32px}."+l+"action a:hover{opacity:1;border-color:#08090b;}."+l+"action a.disabled,."+l+"action aldisabled:hover{opacity:0.1;cursor:default;}a."+l+"icon_trash{background-position:0px -304px}#"+l+"window.config .undermark,#"+l+"window.config .overmark{font-weight:bold;text-align:center;}#"+l+"window.config textarea{display:block;width:586px;margin:0 0 5px 0;}."+l+"ie_conf{text-align:center}."+l+"hidden{position:fixed;left:-10000px;}."+l+"fieldwrapper:before,."+l+'fieldwrapper:after{content:"";display:table;}.'+l+"fieldwrapper:after{clear:both;}."+l+"fieldwrapper{padding:7px 0 7px 0;}."+l+"fieldwrapper label,."+l+"thefield{color:#6F9FC8;height:22px;line-height:22px;float:left;margin:2px 0 0 0;}."+l+"fieldwrapper label{font-weight:bold;width:320px;margin:0 15px 0 0;padding:0 0 0 10px;}."+l+'thefield input[type="text"],.'+l+"thefield select{width:200px}",
/*! [tpl=action_options] */
ACTION_OPT:'<option value="sell">'+D.SELL+'</option><option value="buy">'+D.BUY+"</option>",
/*! [tpl=output_options] */
OUTPUT_OPT:'<option value="m">'+D.RES_MET+'</option><option value="c">'+D.RES_CRY+'</option><option value="d">'+D.RES_DEU+'</option><option value="mc">'+D.RES_MET+" + "+D.RES_CRY+'</option><option value="md">'+D.RES_MET+" + "+D.RES_DEU+'</option><option value="cd">'+D.RES_CRY+" + "+D.RES_DEU+"</option>",
/*! [tpl=void_href] */
VOID_HREF:'href="javascript:void(0)"',
/*! [tpl=window] */
WINDOW:'<div id="'+l+'window" class="calc"><div id="'+l+'header"><h4>'+D.TITLE+'<span class="'+l+'config_only"> &raquo; '+D.CONFIG+'</span></h4><a id="'+l+'close" href="javascript:void(0);" class="close_details close_ressources"></a><a id="'+l+'config_but" href="javascript:void(0);"></a></div><div id="'+l+'main"><div id="'+l+'calc"><table cellspacing="0" cellpadding="0"><tbody><tr><th colspan="2"></th><th>'+D.RES_MET+"</th><th>"+D.RES_CRY+"</th><th>"+D.RES_DEU+'</th></tr><tr class="alt"><td class="'+l+'label">'+D.ACTION+'</td><td class="'+l+'select"><select id="'+l+'action">{this.ACTION_OPT}</select></td><td class="'+l+'input"><input id="'+l+'input_met" type="text" value=""></td><td class="'+l+'input"><input id="'+l+'input_cry" type="text" value=""></td><td class="'+l+'input"><input id="'+l+'input_deu" type="text" value=""></td></tr><tr><td class="'+l+'label">'+D.RATIO+'<span id="'+l+'ratio_illegal"> ('+D.ILLEGAL+')</span></td><td class="'+l+'select"><select id="'+l+'ratio"></select></td><td class="'+l+'input"><input id="'+l+'ratio_met" type="text" value=""></td><td class="'+l+'input"><input id="'+l+'ratio_cry" type="text" value=""></td><td class="'+l+'input"><input id="'+l+'ratio_deu" type="text" value=""></td></tr><tr class="alt"><td class="'+l+'label">'+D.IN_EXCH+'</td><td class="'+l+'select"><select id="'+l+'output">{this.OUTPUT_OPT}</select></td><td class="'+l+'input"><input id="'+l+'percent_met" type="text" value=""></td><td class="'+l+'input"><input id="'+l+'percent_cry" type="text" value=""></td><td class="'+l+'input"><input id="'+l+'percent_deu" type="text" value=""></td></tr><tr><td class="'+l+'label" colspan="2">'+D.RESULT+'</td><td class="'+l+'output" id="'+l+'output_met"></td><td class="'+l+'output" id="'+l+'output_cry"></td><td class="'+l+'output" id="'+l+'output_deu"></td></tr></tbody></table><table cellspacing="0" cellpadding="0"><tbody><tr><th></th><th>'+D.RES+"</th><th>"+D.LC_SHIP+"</th><th>"+D.SC_SHIP+'</th></tr><tr class="alt"><td class="'+l+'label">'+D.SEND+'</td><td class="'+l+'output overmark" id="'+l+'sendRes">0</td><td class="'+l+'output" id="'+l+'sendLC">0</td><td class="'+l+'output" id="'+l+'sendSC">0</td></tr><tr><td class="'+l+'label">'+D.RECEIVE+'</td><td class="'+l+'output undermark" id="'+l+'receiveRes">0</td><td class="'+l+'output" id="'+l+'receiveLC">0</td><td class="'+l+'output" id="'+l+'receiveSC">0</td></tr></tbody></table><table cellspacing="0" cellpadding="0"><tbody><tr class="alt"><td class="'+l+'label" colspan="5">'+D.WHERE+'</td></tr><tr class="alt"><td class="'+l+'select1row" colspan="5"><select id="'+l+'planet"></select><a {this.VOID_HREF} id="'+l+'selCurPla_button">'+D.SEL_CUR+'</a></td></tr></tbody></table><table cellspacing="0" cellpadding="0" class="last"><tbody><tr class="alt"><td class="'+l+'label" colspan="5">'+D.MESSAGE+'</td></tr><tr class="alt"><td class="'+l+'textarea" colspan="5"><textarea id="'+l+'message" cols="1" rows="1" readonly="readonly"></textarea></td></tr></tbody></table></div><div id="'+l+'config"><div class="'+l+'config_title">'+D.RAT_LST+'</div><div class="'+l+'config_box"><table cellspacing="0" cellpadding="0"><tbody id="'+l+'ratioList"><tr><th>#</th><th>'+D.NAME+"</th><th>"+D.RES_MET+"</th><th>"+D.RES_CRY+"</th><th>"+D.RES_DEU+"</th><th>"+D.ACTION+"</th><th>"+D.LEGAL+"</th><th>"+D.DEFAULT+'</th></tr></tbody></table></div><div class="'+l+'config_title">'+D.DEF_VAL+'</div><div class="'+l+"config_box "+l+'hidden"><div class="'+l+'fieldwrapper"><label>'+D.ACTION+':</label><div class="'+l+'thefield"><select id="'+l+'defAction">{this.ACTION_OPT}</select></div></div><div class="'+l+'fieldwrapper"><label>'+D.IN_EXCH+':</label><div class="'+l+'thefield"><select id="'+l+'defOutput">{this.OUTPUT_OPT}</select></div></div><div class="'+l+'fieldwrapper"><label>'+D.SEL_CUR+':</label><div class="'+l+'thefield"><input id="'+l+'selCurPla" type="checkbox" /></div></div></div><div class="'+l+'config_title">'+D.ABB_KEY+'</div><div class="'+l+"config_box "+l+'hidden"><div class="'+l+'fieldwrapper"><label>'+D.USE_ABB+':</label><div class="'+l+'thefield"><input id="'+l+'abb" type="checkbox" /></div></div><div class="'+l+'fieldwrapper"><label>'+D.UNABB+':</label><div class="'+l+'thefield"><input id="'+l+'overUnabb" type="checkbox" /></div></div><div class="'+l+'fieldwrapper"><label>'+D.ABB_MIL+':</label><div class="'+l+'thefield"><input id="'+l+'millionAbb" type="text" maxlength="10" /></div></div><div class="'+l+'fieldwrapper"><label>'+D.ABB_THO+':</label><div class="'+l+'thefield"><input id="'+l+'thousandAbb" type="text" maxlength="10" /></div></div><div class="'+l+'fieldwrapper"><label>'+D.KEY_MIL+':</label><div class="'+l+'thefield"><input id="'+l+'millionKey" type="text" maxlength="1" /></div></div><div class="'+l+'fieldwrapper"><label>'+D.KEY_THO+':</label><div class="'+l+'thefield"><input id="'+l+'thousandKey" type="text" maxlength="1" /></div></div></div><div class="'+l+'config_title">'+D.MES_TPL+'</div><div class="'+l+"config_box "+l+'hidden"><textarea id="'+l+'messageTpl"></textarea><div class="textCenter"><input id="'+l+'messageTpl_restore" type="button" value="'+D.RES_DTP+'" class="btn_blue"></div></div><div class="'+l+'config_title">'+D.IE_CONF+'</div><div class="'+l+"config_box "+l+"ie_conf "+l+'hidden"><textarea id="'+l+'ie_conf"></textarea><input id="'+l+'ie_import" type="button" value="'+D.IMPORT+'" class="btn_blue"><input id="'+l+'ie_export" type="button" value="'+D.EXPORT+'" class="btn_blue"></div><div class="'+l+'config_title">'+D.CONTACT+'</div><div class="'+l+"config_box "+l+'hidden"><table cellspacing="0" cellpadding="0"><tbody><tr class="alt"><td class="'+l+"label "+l+'pos">1</td><td>Userscripts</td><td><a href="http://userscripts-mirror.org/scripts/discuss/151002" target="_blank">Discuss OGame Trade Calculator - userscripts.org</a></td></tr><tr><td class="'+l+"label "+l+'pos">2</td><td>Ogame Origin</td><td><a href="http://board.origin.ogame.de/board6-origin/board38-tools-scripts-skins/board39-tolerated-tools-addons-scripts/4367-ogame-trade-calculator/" target="_blank">[Tolerated] OGame Trade Calculator - board.origin.ogame.de</a></td></tr><tr class="alt"><td class="'+l+"label "+l+'pos">3</td><td>Ogame España</td><td><a href="http://board.ogame.com.es/board859-ogamelacomunidad/board860-comunidad/board422-utilidadesyskinsparaogame/1224751-scriptcalculadoradecomerciolegal/" target="_blank">[Script] Calculadora de Comercio [Legal] - board.ogame.com.es</a></td></tr></tbody></table></div><div class="textCenter"><input id="'+l+'config_accept" type="button" value="'+D.ACCEPT+'" class="btn_blue"><input id="'+l+'config_cancel" type="button" value="'+D.CANCEL+'" class="btn_blue"><input id="'+l+'config_default" type="button" value="'+D.RES_DEF+'" class="btn_blue"></div></div></div><div id="'+l+'footer"></div></div>',
/*! [tpl=button] */
MENUBUTTON:'<li><a id="'+l+'menubutton" class="menubutton" href="javascript:void(0)" accesskey="" target="_self"><span class="textlabel">'+D.MENU+"</span></a></li>",
/*! [tpl=ratio_list_limit] */
RATIO_LIST_LIMIT:'<tr><td class="'+l+"label "+l+'pos"></td><td class="'+l+'name_noedit"></td><td class="'+l+'ratio"><input class="'+l+'edit_ratio_met" type="text" /></td><td class="'+l+'ratio"><input class="'+l+'edit_ratio_cry" type="text" /></td><td class="'+l+'ratio"><input class="'+l+'edit_ratio_deu" type="text" /></td><td class="'+l+'action"><a {this.VOID_HREF} class="'+l+'icon_up"></a><a {this.VOID_HREF} class="'+l+'icon_down"></a><a {this.VOID_HREF} class="'+l+'icon_trash disabled"></a></td><td class="'+l+'label">-</td><td class="'+l+'check"><input name="'+l+'def_ratio" type="radio" /></td></tr>',
/*! [tpl=ratio_list_item] */
RATIO_LIST_ITEM:'<tr><td class="'+l+"label "+l+'pos"></td><td class="'+l+'name"><input class="'+l+'edit_ratio_name" type="text" /></td><td class="'+l+'ratio"><input class="'+l+'edit_ratio_met" type="text" /></td><td class="'+l+'ratio"><input class="'+l+'edit_ratio_cry" type="text" /></td><td class="'+l+'ratio"><input class="'+l+'edit_ratio_deu" type="text" /></td><td class="'+l+'action"><a {this.VOID_HREF} class="'+l+'icon_up"></a><a {this.VOID_HREF} class="'+l+'icon_down"></a><a {this.VOID_HREF} class="'+l+'icon_trash"></a></td><td class="'+l+'legal"></td><td class="'+l+'check"><input name="'+l+'def_ratio" type="radio" /></td></tr>',
/*! [tpl=ratio_list_new] */
RATIO_LIST_NEW:'<tr id="'+l+'new_ratio"><td class="undermark '+l+'pos"></td><td class="'+l+'name"><input class="'+l+'edit_ratio_name" type="text" /></td><td class="'+l+'ratio"><input class="'+l+'edit_ratio_met" type="text" /></td><td class="'+l+'ratio"><input class="'+l+'edit_ratio_cry" type="text" /></td><td class="'+l+'ratio"><input class="'+l+'edit_ratio_deu" type="text" /></td><td class="'+l+'action"><a {this.VOID_HREF} class="'+l+'icon_add"></a></td><td class="'+l+'legal"></td><td class="'+l+'label">-</td></tr>',
/*! [tpl=update] */
UPDATE:'<div id="'+l+'update"><div>Actualización disponible'+((typeof(GM_xmlhttpRequest)=="undefined")?"":('<a target="_blank" href="'+k.DOWNLOAD_URL+'">Instalar</a>'))+'<a target="_blank" href="'+k.HOME_URL+'">Ir a la página del script</a></div></div>',
/*! [/tpl] */
init:function(){for(var V in this){if(typeof(this[V])=="string"){for(var U in this){if(typeof(this[U])=="string"){this[V]=this[V].replaceAll("{this."+U+"}",this[U])}}}}}};var L=(function(){var U=f('meta[name="ogame-universe"]').attr("content");
/*! [default_ratios] */
return/^\w+\.ogame\.org$/.test(U)?[3,2,1,2,1,1,3,2,1]:[3,2,1,2,1.5,1,3,2,1];
/*! [/default_ratios] */
})();var I=function(){return(new Date()).getTime()};var s=function(){};var E=function(U){U.preventDefault()};var S={getDefaultData:function(){return{
/*! [config=default] */
version:k.VERSION.slice(0),defAction:"sell",ratioList:[{id:"MAX",ratio:[L[0],L[1],L[2]]},{id:"MIN",ratio:[L[3],L[4],L[5]]},{id:"REG",ratio:[L[6],L[7],L[8]]}],defRatio:"REG",defOutput:"m",millionAbb:"M",millionKey:"m",thousandAbb:"K",thousandKey:"k",abb:false,overUnabb:false,selCurPla:false,messageTpl:"[b]{?b}{I18N.BUY}{/b}{?s}{I18N.SELL}{/s}:[/b] {?m}[b][color={COLOR.MET}]{m}[/color][/b] ({I18N.RES_MET}){?cd} + {/cd}{/m}{?c}[b][color={COLOR.CRY}]{c}[/color][/b] ({I18N.RES_CRY}){?d} + {/d}{/c}{?d}[b][color={COLOR.DEU}]{d}[/color][/b] ({I18N.RES_DEU}){/d}\n[b]{I18N.IN_EXCH}:[/b] {?M}[b][color={COLOR.MET}]{M}[/color][/b] ({I18N.RES_MET}){?CD} + {/CD}{/M}{?C}[b][color={COLOR.CRY}]{C}[/color][/b] ({I18N.RES_CRY}){?D} + {/D}{/C}{?D}[b][color={COLOR.DEU}]{D}[/color][/b] ({I18N.RES_DEU}){/D}\n\n[b]* {I18N.SEND}:[/b] {sr} ({I18N.RES}) = [b][color={COLOR.LC}]{sl}[/color][/b] ({I18N.LC_SHIP}) {I18N.OR} [b][color={COLOR.SC}]{ss}[/color][/b] ({I18N.SC_SHIP})\n[b]* {I18N.RECEIVE}:[/b] {rr} ({I18N.RES}) = [b][color={COLOR.LC}]{rl}[/color][/b] ({I18N.LC_SHIP}) {I18N.OR} [b][color={COLOR.SC}]{rs}[/color][/b] ({I18N.SC_SHIP})\n\n[b]* {I18N.RATIO}:[/b] {rm}:{rc}:{rd}{?w}\n[b]* {I18N.WHERE}:[/b] {wg}:{ws}:{wp} ({wt}){/w}\n\n[b][url={SCRIPT.HOME_URL}]{SCRIPT.NAME}[/url][/b]"
/*! [/config] */
}},abbRE:/^\S+$/,keyRE:/^\S$/,_error:function(U){throw"DataError: "+U},_errorUndefined:function(U){this._error(U+" is undefined")},_errorExpected:function(U,V,W,X){var Z,Y=W+"";if(/^[\<\>]\d+$/.test(Y)){if(Y.charAt(0)==">"){Z="greater"}else{Z="less"}Z+=" than "+Y.slice(1)}else{Z='"'+Y.split(":").join(" or ")+'"'}this._error(U+": "+V+" "+Z+' expected but "'+X+'" found')},_errorType:function(U,V,W){if(W=="undefined"){this._errorUndefined(U)}else{this._errorExpected(U,"type",V,W)}},_errorValue:function(U,V,W){this._errorExpected(U,"value",V,W)},_errorValueRE:function(U,V,W){this._error(U+': value "'+W+'" doesn\'t match the expected RegExp "'+V+'"')},_errorLength:function(U,V,W){this._errorExpected(U,"length",V,W)},parseData:function(V){var W,U,ae,X=this,Y=(typeof(V)=="string")?JSON.parse(V):V,af="boolean",ad="string",Z="number";if((ae=typeof(Y.defAction))!=ad){X._errorType("defAction",ad,ae)}if(typeof(Y.ratioList)=="undefined"){X._errorUndefined("ratioList")}if(!(/^sell|buy$/.test(Y.defAction))){X._errorValue("defAction","sell:buy",Y.defAction)}ae=typeof(Y.defRatio);if(!(/^number|string$/.test(ae))){X._errorType("defRatio",ad+":"+Z,ae)}var aa=true,ab=true,ac=true;for(W=0;W<Y.ratioList.length;W++){U=Y.ratioList[W];if((ae=U.ratio.length)!=3){X._errorLength("ratioList["+W+"]",3,ae)}if((U.ratio[0]+=0)<=0){X._errorValue("ratioList["+W+"].ratio[0]",">0",U.ratio[0])}if((U.ratio[1]+=0)<=0){X._errorValue("ratioList["+W+"].ratio[1]",">0",U.ratio[1])}if((U.ratio[2]+=0)<=0){X._errorValue("ratioList["+W+"].ratio[2]",">0",U.ratio[2])}if(U.id==Y.defRatio){ac=false}if(/^MAX|MIN|REG$/.test(U.id+"")){if(U.id=="MAX"){aa=false}else{if(U.id=="MIN"){ab=false}}}else{if((ae=typeof(U.id))!=Z){X._errorType("ratioList["+W+"].id",Z,ae)}if((ae=typeof(U.name))!=ad){X._errorType("ratioList["+W+"].name",ad,ae)}}}if(aa){X._error('ratioList: maximum ratio (id="MAX") not found')}if(ab){X._error('ratioList: minimum ratio (id="MIN") not found')}if(ac){X._error('ratioList: default ratio (id="'+Y.defRatio+'" == defRatio) not found')}U=Y.ratioList.slice(0).sort();for(W=1;W<U.length;W++){if(U[W-1].id==U[W].id){X._error('ratioList: duplicate id "'+U[W].id+'" found')}}if(!(/^m|c|d|mc|md|cd$/.test(Y.defOutput))){X._errorValue("defOutput","m:c:d:mc:md:cd",Y.defOutput)}if((ae=typeof(Y.millionAbb))!=ad){X._errorType("millionAbb",ad,ae)}if((ae=Y.millionAbb.length)<1){X._errorLength("millionAbb",">0",ae)}if(!X.abbRE.test(ae=Y.millionAbb)){X._errorValueRE("millionAbb",X.abbRE,ae)}if((ae=typeof(Y.millionKey))!=ad){X._errorType("millionKey",ad,ae)}if((ae=Y.millionKey.length)!=1){X._errorLength("millionKey",1,ae)}if(!X.keyRE.test(ae=Y.millionKey)){X._errorValueRE("millionKey",X.keyRE,ae)}if((ae=typeof(Y.thousandAbb))!=ad){X._errorType("thousandAbb",ad,ae)}if((ae=Y.thousandAbb.length)<1){X._errorLength("thousandAbb",">0",ae)}if(!X.abbRE.test(ae=Y.thousandAbb)){X._errorValueRE("thousandAbb",X.abbRE,ae)}if((ae=typeof(Y.thousandKey))!=ad){X._errorType("thousandKey",ad,ae)}if((ae=Y.thousandKey.length)!=1){X._errorLength("thousandKey",1,ae)}if(!X.keyRE.test(ae=Y.thousandKey)){X._errorValueRE("thousandKey",X.keyRE,ae)}if((ae=typeof(Y.abb))!=af){X._errorType("abb",af,ae)}if((ae=typeof(Y.overUnabb))!=af){X._errorType("overUnabb",af,ae)}if((ae=typeof(Y.selCurPla))!=af){X._errorType("selCurPla",af,ae)}if((ae=typeof(Y.messageTpl))!=ad){X._errorType("messageTpl",ad,ae)}return Y},getRatio:function(V,Y){var X=(arguments.length>1)?Y.ratioList[V]:this.data.ratioList[V],Z=X.id+"",U,W=X.ratio.slice(0);if("name" in X){U=X.name+""}else{U=D[Z]}return{id:Z,ratio:W,name:U,val:Z+":"+W[0]+":"+W[1]+":"+W[2],met:W[0],cry:W[1],deu:W[2]}},getRatioById:function(Y,W){var U,X=(arguments.length>1)?W:this.data,V=X.ratioList;for(U in V){if(V[U].id==Y){return this.getRatio(U,X)}}return null},updateVersion:function(Z){var U=(typeof(Z.version)=="undefined")?0:Z.version,V,Y=this.getDefaultData();if(n(U,[2,4])){Z.messageTpl=Y.messageTpl}if(n(U,[2,5,3])){var X=Z.ratioList,W=false;for(V in X){if(X[V].id=="MAX"){break}}if(V<X.length||X[V].ratio.join(":")=="5:3:1"){X[V].ratio=this.getRatioById("MAX",Y).ratio}}Z.version=Y.version;for(V in Y){if(typeof(Z[V])=="undefined"){Z[V]=Y[V]}}return Z},save:function(U){if(arguments.length>0){this.data=U}this.data=this.updateVersion(this.data);h.set("config",this.data);return this},load:function(){var U=h.get("config");if(U==null){this.data=this.getDefaultData()}else{this.save(U)}return this},remove:function(){h.remove("config");this.data=this.getDefaultData()}};var F={formatI:function(Y,W){var X,U=(arguments.length>1&&W);if(U&&Y==""){return""}if(typeof(Y)=="string"){X=("0"+Y+"").replace(new RegExp(S.data.thousandKey+"$","i"),"000").replace(new RegExp(S.data.millionKey+"$","i"),"000000").replace(/\D/g,"").replace(/^0+(\d)/,"$1")}else{X=Y.toFixed()+""}var V=/(\d+)(\d{3})/;while(V.test(X)){X=X.replace(V,"$1"+D.THO_SEP+"$2")}if(!U&&S.data.abb){return X.replace(/\D000\D000$/,S.data.millionAbb).replace(/\D(\d*[1-9]+)0*\D000$/,D.DEC_SEP+"$1"+S.data.millionAbb).replace(/\D000$/,S.data.thousandAbb)}return X},formatF:function(ab,Z){var aa,U,Y,W,V=(arguments.length>1&&Z);if(V&&ab==""){return""}if(typeof(ab)=="string"){aa=("0"+ab+"").replace(/[\.\,]$/,D.DEC_SEP).replace(new RegExp("[^0-9\\"+D.DEC_SEP+"]","g"),"").replace(/^0+(\d)/,"$1")}else{aa=(ab+"").replace(".",D.DEC_SEP)}U=aa.split(D.DEC_SEP);Y=U[0];W=U.length>1?D.DEC_SEP+U[1]:"";if(aa[aa.length-1]==D.DEC_SEP&&V){W=D.DEC_SEP}var X=/(\d+)(\d{3})/;while(X.test(Y)){Y=Y.replace(X,"$1"+D.THO_SEP+"$2")}return Y+W},parseI:function(V){var U=F.parseF(V);if(new RegExp(S.data.thousandAbb+"$","i").test(V)){U=U*1000}else{if(new RegExp(S.data.millionAbb+"$","i").test(V)){U=U*1000000}}return Math.round(U)},parseF:function(U){return parseFloat(U.replaceAll(D.THO_SEP,"").replace(D.DEC_SEP,".").replace(/[^\d\.]/g,""))}};var T=function(){if(arguments.length<1){this.setLimits()}else{if(arguments.length<2){this.setLimits(arguments[0])}else{this.setLimits(arguments[0],arguments[1])}}};T.prototype={limits:[],isLegal:function(){var W;if(arguments.length==1){W=arguments[0]}else{W=[arguments[0],arguments[1],arguments[2]]}var V=W[0]/W[1],U=0;if(V<this.limits[U++]||V>this.limits[U++]){return false}V=W[0]/W[2];if(V<this.limits[U++]||V>this.limits[U++]){return false}V=W[1]/W[2];if(V<this.limits[U++]||V>this.limits[U++]){return false}return true},setLimits:function(X,W){if(arguments.length<2){var ab,aa,Y,Z=(arguments.length>0)?X.ratioList:S.data.ratioList;for(Y in Z){if(Z[Y].id=="MAX"){ab=Z[Y].ratio}else{if(Z[Y].id=="MIN"){aa=Z[Y].ratio}}}return this.setLimits(ab,aa)}this.limits=[];var V=X[0]/X[1],U=W[0]/W[1];this.limits.push(Math.min(V,U));this.limits.push(Math.max(V,U));V=X[0]/X[2];U=W[0]/W[2];this.limits.push(Math.min(V,U));this.limits.push(Math.max(V,U));V=X[1]/X[2];U=W[1]/W[2];this.limits.push(Math.min(V,U));this.limits.push(Math.max(V,U));return this}};var K,G;var u=function(Y,Z,X,ab,ac,aa,V,W,U){return{met:Math.round(((Y+(Z/ac)*ab+(X/aa)*ab)/100)*V),cry:Math.round((((Y/ab)*ac+Z+(X/aa)*ac)/100)*W),deu:Math.round((((Y/ab)*aa+(Z/ac)*aa+X)/100)*U)}};var O={parseIf:function(aa,ab,U){var ac="{?"+ab+"}",X="{/"+ab+"}";if(U){return aa.split(ac).join("").split(X).join("")}var Z,Y,V,W=aa;while((Z=W.indexOf(ac))>=0&&(Y=W.indexOf(X))>=0&&Z<Y){W=W.split(ac);for(Z=1;Z<W.length;Z++){V=W[Z].split(X);if(V.length>1){V.shift();W[Z]=X+V.shift()+V.join(X)}}W=W.join(ac).split(ac+X).join("")}return W},parseIfs:function(Y,ac){var X=Y+"",W=Y+"",ae=/\{\?(\!?\w)+\}/,aa,ad,ab,V,U;while(ae.test(X)){aa=(ae.exec(X)+"").replace(/\}.*$/,"").replace(/^.*\{/,"");X=X.split("{"+aa+"}").join("");try{aa=aa.replace(/[^\w\!]/g,"");if((U=aa[ab=0])=="!"){ad=!ac[++ab]}else{ad=ac[U]}V=aa.length-1;ad=ac[aa[ab]];while(ab<V){if((U=aa[++ab])=="!"){ad=(ad||!ac[++ab])}else{ad=(ad||ac[U])}}W=this.parseIf(W,aa,ad)}catch(Z){alert(Z)}}return W},make:function(X,ac,U,W,V,ab,Z){var aa,ad=/[1-9]/,Y=this.parseIfs(S.data.messageTpl,{b:(X=="buy"),s:(X=="sell"),m:ad.test(ac.met),c:ad.test(ac.cry),d:ad.test(ac.deu),M:ad.test(U.met),C:ad.test(U.cry),D:ad.test(U.deu),w:Z.use});Y=Y.replaceMap({"{m}":ac.met,"{c}":ac.cry,"{d}":ac.deu,"{M}":U.met,"{C}":U.cry,"{D}":U.deu,"{sr}":W.res,"{sl}":W.lc,"{ss}":W.sc,"{rr}":V.res,"{rl}":V.lc,"{rs}":V.sc,"{rm}":ab.met,"{rc}":ab.cry,"{rd}":ab.deu,"{wg}":Z.galaxy,"{ws}":Z.system,"{wp}":Z.planet,"{wt}":Z.use?"{I18N."+(Z.type+"").toUpperCase()+"}":0});for(aa in D){Y=Y.replaceAll("{I18N."+aa+"}",D[aa])}for(aa in k){Y=Y.replaceAll("{SCRIPT."+aa+"}",k[aa])}for(aa in C){Y=Y.replaceAll("{COLOR."+aa+"}",C[aa])}return Y}};var M=function(V,U){this.jqo=V;if(arguments.length>1){this.val(U)}};M.prototype={val:function(U){if(arguments.length<1){return this.jqo.val()}this.jqo.val(U);return this},disable:function(){this.jqo.attr("disabled","disabled").prop("disabled",true);return this},enable:function(){this.jqo.prop("disabled",false).removeAttr("disabled");return this},isDisabled:function(){return(this.jqo.attr("disabled")=="disabled")}};var J=function(V,U){this.jqo=V;if(arguments.length>1){this.val(U)}};J.prototype=f.extend({},M.prototype,{val:function(U){if(arguments.length<1){return this.isChecked()}if(U){this.check()}else{this.uncheck()}return this},check:function(){this.jqo.attr("checked","checked").prop("checked",true);return this},uncheck:function(){this.jqo.prop("checked",false).removeAttr("checked");return this},isChecked:function(){return(this.jqo.attr("checked")=="checked")}});var v=function(Z,Y,W,X){var aa=this,U=(aa.jqo=Z),V;aa.value=Y;aa.regExp=W;aa.clearOnFocus=X;aa.allowEmpty=true;aa.onChange=s;if(arguments.length>4){if(arguments.length>5){aa.allowEmpty=arguments[4];aa.onChange=arguments[5]}else{if(typeof(arguments[4])=="function"){aa.onChange=arguments[4]}else{aa.allowEmpty=(arguments[4]&&true)}}}V=function(){var ad=U.val(),ab=ad.length;if(aa.allowEmpty||ab>0){if(aa.regExp.test(ad)){aa.value=ad.trim()}else{var ae=U.caret(),af=ab-ae.start,ac=ab-ae.end;ab=aa.value.length;af=Math.max(Math.min(ab-af,ab),0);ac=Math.max(Math.min(ab-ac,ab),0);U.val(aa.value);U.caret(af,ac)}aa.onChange()}};U.val(Y).keyup(V).change(V).blur(function(){U.val(aa.value)}).focus(function(){if(aa.clearOnFocus){if(aa.allowEmpty){aa.val("")}else{U.val("")}}})};v.prototype=f.extend({},M.prototype,{val:function(U){if(arguments.length<1){return this.value}this.jqo.val(this.value=U);return this}});var B=function(aa,Z,Y,X){var ab=this,U=(this.jqo=aa),W,V=Y;this.allow0=true;this.focused=false;this.onChange=s;this.clearOnFocus=X;V=Y.substring(0,1).toUpperCase();if(this.typePercent=(V=="P")){V="F"}this.formatFunc=F["format"+V];this.parseFunc=F["parse"+V];if(arguments.length>4){if(arguments.length>5){this.allow0=arguments[4];this.onChange=arguments[5]}else{if(typeof(arguments[4])=="function"){this.onChange=arguments[4]}else{this.allow0=(arguments[4]&&true)}}}this.set(Z);W=function(){var ag=ab.jqo,ae=ag.val(),af=ag.caret(),ac=ae.length,ah=ac-af.start,ad=ac-af.end;ae=ab.formatFunc(ag.val(),true);ac=ae.length;ah=Math.max(Math.min(ac-ah,ac),0);ad=Math.max(Math.min(ac-ad,ac),0);num=(ae=="")?0:ab.parseFunc(ae);if(ab.allow0||num>0){ab.set(ae,true).onChange(ab)}ag.caret(ah,ad)};U.keyup(function(ac){if(!(/^9|16$/.test(ac.which+""))){W()}}).change(W).blur(function(){ab.set(ab.num);ab.focused=false}).focus(function(){ab.focused=true;var ae=f(this);if(ab.clearOnFocus||ab.num==0){ae.val("")}else{var ad=ae.caret(),ac=ae.val().length;ae.val(ab.formatFunc(ab.num,true));if(ad.end==ac){if(ad.start==ac){ad.start=(--ad.end)}else{ad.end--}}ac=ae.val().length;ae.caret(Math.min(Math.max(0,ad.start),ac),Math.min(Math.max(0,ad.end),ac))}}).mouseenter(function(){if(S.data.overUnabb&&!(ab.typePercent||ab.focused||ab.clearOnFocus)){var ac=ab.jqo;ac.val(ab.formatFunc(ab.num,true));if(ac.val()==""){ac.val(0)}}}).mouseleave(function(){if(S.data.overUnabb&&!(ab.typePercent||ab.focused||ab.clearOnFocus)){ab.jqo.val(ab.txt)}})};B.prototype=f.extend({},M.prototype,{set:function(X,W){var U,V=(arguments.length>1&&W);if(typeof(X)=="string"){U=(X+"").replace(/\%$/,"");this.num=(U=="")?0:this.parseFunc(U);this.txt=this.formatFunc(this.num)+(this.typePercent?"%":"")}else{this.num=X;this.txt=(U=this.formatFunc(X))+(this.typePercent?"%":"")}this.jqo.val(V?U:this.txt);return this}});var t=function(V,U){var W=this;W.jqo=V;W.val(U);W.jqo.mouseenter(function(){W._mouseenter()}).mouseleave(function(){W._mouseleave()})};t.prototype={val:function(U){if(arguments.length>0){this.jqo.text(F.formatI(U));this.num=U;return this}return this.jqo.text()},_mouseenter:function(){if(S.data.overUnabb&&this.num>0){this.jqo.text(F.formatI(this.num,true))}},_mouseleave:function(){if(S.data.overUnabb){this.jqo.text(F.formatI(this.num))}}};var A=function(Y,W){var Z=this,U=(this.jqo=Y);this.onChange=W;U.change(function(){Z.set().onChange()});f('<option value="">-</option>').appendTo(U);var X=f('meta[name="ogame-planet-coordinates"]').attr("content").replace(/[^0-9\:]/g,"");var V=f('meta[name="ogame-planet-type"]').attr("content").toLowerCase().trim();f.each(f("#planetList").children("div").get(),function(aa,ab){var ac=f(ab),ad=ac.find(".planet-koords");if(ad.get().length==0){return}ad=ad.text().replace(/[^0-9\:]/g,"");option=f('<option value="planet:'+ad+'">['+ad+"] "+ac.find(".planet-name").text().trim()+"</option>").appendTo(U);if(ad==X&&V=="planet"){Z._setCurrent(option)}if(ac.find(".moonlink").get().length>0){option=f('<option value="moon:'+ad+'">['+ad+"] ("+D.MOON+")</option>").appendTo(U).addClass(l+"moon");if(ad==X&&V=="moon"){Z._setCurrent(option)}}})};A.prototype={use:false,type:0,galaxy:0,system:0,planet:0,set:function(U){var V=((arguments.length>0)?U:this.jqo.val()).split(":");if(V.length<4){this.use=false}else{this.use=true;this.type=V.shift();this.galaxy=V.shift();this.system=V.shift();this.planet=V.shift()}return this},_setCurrent:function(U){U.addClass(l+"highlight").html(U.html()+" &laquo; "+D.CUR_PLA);if(S.data.selCurPla){U.attr("selected","selected")}this.current=U;this.set()},clickCurrent:function(){this.jqo.val(this.current.val()).change()}};var N=function(X,aa,Y){var V,U,Z=this,W;if(arguments.length<4){this.isNew=false;this.name=("name" in Y)?Y.name:(Y.id=="MAX")?D.MAX:(Y.id=="MIN")?D.MIN:D.REG;this.id=Y.id;W=Y.ratio}else{this.isNew=true;this.name="*"+D.NEW;W=S.getRatioById(Y.defRatio,Y).ratio}this.list=X;if(this.isLimit=/^MIN|MAX$/.test(this.id)){this.jqo=f(w.RATIO_LIST_LIMIT).appendTo(X.jqo);this.jqo.find("."+l+"name_noedit").text(this.name)}else{this.jqo=f(this.isNew?w.RATIO_LIST_NEW:w.RATIO_LIST_ITEM).appendTo(X.jqo);this.nameInput=this.jqo.find("."+l+"edit_ratio_name");this.nameInput.change(function(){Z.name=Z.nameInput.val().trim()}).keyup(function(){Z.nameInput.change()}).val(this.name)}this.posLabel=this.jqo.find("."+l+"pos");this.setPos(aa);U=["met","cry","deu"];for(V in U){this[U[V]+"Input"]=new B(this.jqo.find("."+l+"edit_ratio_"+U[V]),W[V],"f",true,false,function(){Z.list.onChange()})}this.addButton=this.jqo.find("."+l+"icon_add").click(function(){var ac=Z.list,ab=new N(ac,Z.pos,Z.getInfo());ab.disableDown().jqo.after(Z.jqo);ac.list[Z.pos]=ab;ac.list[Z.pos-1].enableDown();Z.nameInput.val(Z.name="*"+D.NEW);Z.setPos(++Z.pos)});this.upButton=this.jqo.find("."+l+"icon_up").click(function(){Z.move(true)});this.upDisabled=false;this.downButton=this.jqo.find("."+l+"icon_down").click(function(){Z.move(false)});this.downDisabled=false;this.trashButton=this.jqo.find("."+l+"icon_trash");if(this.isLimit){this.trashButton.addClass("disabled")}else{this.trashButton.click(function(){Z.remove()})}this.radio=this.jqo.find('input[name="'+l+'def_ratio"]').click(function(){Z.list.defRatio=Z.id});if(X.defRatio==this.id){this.radio.click()}this.legal=this.jqo.find("."+l+"legal")};N.prototype={getInfo:function(){var V=this,U={id:V.isNew?I():V.id,ratio:[V.metInput.num,V.cryInput.num,V.deuInput.num]};if((!V.isLimit)&&(V.isNew||V.id!="REG"||V.name!=D.REG)){U.name=V.name}return U},move:function(V){var W,U;if(V){if(this.upDisabled){return this}W=this.list.list[this.pos-1];this.jqo.after(W.jqo)}else{if(this.downDisabled){return this}W=this.list.list[this.pos+1];W.jqo.after(this.jqo)}U=this.pos;this.setPos(W.pos);W.setPos(U);U=W.upDisabled;if(this.upDisabled){W.disableUp()}else{W.enableUp()}if(U){this.disableUp()}else{this.enableUp()}U=W.downDisabled;if(this.downDisabled){W.disableDown()}else{W.enableDown()}if(U){this.disableDown()}else{this.enableDown()}this.list.sortList()},remove:function(){var W,U=[],X=this.list.list,V=this.list.newItem;this.jqo.remove();X.splice(this.pos,1);for(W=0;W<X.length;W++){U[W]=(X[W].setPos(W))}this.list.list=U;if(this.list.defRatio==this.id){U[0].radio.click()}if(this.downDisabled){U[U.length-1].disableDown()}if(this.upDisabled){U[0].disableUp()}V.setPos(V.pos-1)},enableUp:function(){this.upDisabled=false;this.upButton.removeClass("disabled");return this},enableDown:function(){this.downDisabled=false;this.downButton.removeClass("disabled");return this},disableUp:function(){this.upDisabled=true;this.upButton.addClass("disabled");return this},disableDown:function(){this.downDisabled=true;this.downButton.addClass("disabled");return this},setLegal:function(U){if(U){this.legal.text(D.YES).addClass("undermark").removeClass("overmark")}else{this.legal.text(D.NO).addClass("overmark").removeClass("undermark")}return this},setPos:function(U){if(U%2==0){this.jqo.addClass("alt")}else{this.jqo.removeClass("alt")}this.pos=U;this.posLabel.html(this.isNew?"+":U+1);return this}};var z={list:[],limits:[],clear:function(){for(var U in this.list){this.list[U].jqo.remove()}this.list=(this.limits=[]);try{this.newItem.jqo.remove()}catch(V){}},sortList:function(){this.list.sort(function(V,U){return V.pos-U.pos})},build:function(V){var X,Y,W=(arguments.length>0)?V:S.data;this.clear();this.defRatio=W.defRatio;for(X=0;X<W.ratioList.length;X++){Y=new N(this,X,W.ratioList[X]);this.list[X]=Y;if(Y.isLimit){this.limits[this.limits.length]=Y}}var U=this.list.length;this.newItem=new N(this,U,W,true);this.list[0].disableUp();this.list[U-1].disableDown();this.onChange()},updateData:function(U){var W=(arguments.length>0)?U:S.data;W.ratioList=[];for(var V in this.list){W.ratioList[V]=this.list[V].getInfo()}W.defRatio=this.defRatio},onChangeItem:function(U){if(!U.isLimit){U.setLegal(G.isLegal(U.getInfo().ratio))}},onChange:function(){G.setLimits(this.limits[0].getInfo().ratio,this.limits[1].getInfo().ratio);for(var U=0;U<this.list.length;U++){this.onChangeItem(this.list[U])}this.onChangeItem(this.newItem)},init:function(U){this.jqo=U}};var x=function(V,Z,W,U,Y){var X=this;this.list=V;this.iface=Y;this.pos=Z;this.title=W.click(function(){X._click()});this.box=U;if(U.hasClass(l+"hidden")){this.setOpen(false)}else{this.setOpen(true)}};x.prototype={updateOpenCss:function(){this.openCss={height:this.box.height()+"px","padding-top":this.box.css("padding-top"),"padding-bottom":this.box.css("padding-bottom"),"margin-top":this.box.css("margin-top"),"margin-bottom":this.box.css("margin-bottom")};return this},closeCss:{height:0,"padding-top":0,"padding-bottom":0,"margin-top":0,"margin-bottom":0},afterOpenCss:{height:"auto"},duration:250,setOpen:function(U){if(this.isOpen=U){this.list.itemOpen=this}return this},open:function(){this.updateOpenCss().box.removeClass(l+"hidden");return this.setOpen(true)},close:function(){this.updateOpenCss().box.addClass(l+"hidden");return this.setOpen(false)},animateOpen:function(){var U=this.afterOpenCss;this.updateOpenCss().box.css(this.closeCss).removeClass(l+"hidden").animate(this.openCss,this.duration,function(){f(this).css(U)});return this.setOpen(true)},animateClose:function(){var U=this;this.updateOpenCss().box.css(this.openCss).animate(this.closeCss,this.duration,function(){f(this).addClass(l+"hidden").css(U.openCss).css(U.afterOpenCss)});return this.setOpen(false)},_click:function(){if(!this.isOpen){this.iface.clearExport();this.list.itemOpen.animateClose();this.animateOpen()}}};var P={init:function(W,X){this.jqo=W;var V,U=[];W.find("."+l+"config_title").each(function(Y,Z){U[Y]={title:f(Z)}});W.find("."+l+"config_box").each(function(Y,Z){U[Y].box=f(Z)});this.list=[];for(V=0;V<U.length;V++){this.list[V]=new x(this,V,U[V].title,U[V].box,X)}}};var y=({addCss:function(W){var V=p.createElement("style");V.setAttribute("type","text/css");if(V.styleSheet){V.styleSheet.cssText=W}else{V.appendChild(p.createTextNode(W))}var U=p.getElementsByTagName("head")[0];U.appendChild(V);return this},findIDP:function(U){return this.window.find("#"+l+U)},menuButton:null,menuButtonAction:function(){this.menuButtonAction=function(){};this.makeWindow()},makeMenuButton:function(){var U=this;this.menuButton=f(w.MENUBUTTON).appendTo(f("#menuTableTools")).find("#"+l+"menubutton").click(function(){U.menuButtonAction()});return U},window:null,ogameHide:null,isHidden:true,show:function(){this.isHidden=false;this.ogameHide.hide();this.window.show();return this},hide:function(){this.isHidden=true;this.window.hide();this.ogameHide.show();return this},toggle:function(){if(this.isHidden){return this.show()}return this.hide()},makePlanetSelect:function(){var U=this;U.planet=new A(U.findIDP("planet"),function(){U.onChange()});return U},makeActionSelect:function(){var U=this;U.actionJqo=U.findIDP("action").change(function(){U.action=f(this).val();U.onChange()}).val(U.action=S.data.defAction);return U},makeResourceInput:function(U,V){var W=this;W["input"+U.capitalize()]=new B(W.findIDP("input_"+U),V,"i",false,true,function(){W.checkOutputSelect().onChange()});return W},makeRatioSelect:function(){var U=this;this.ratioSelectJqo=U.findIDP("ratio").change(function(){var V=f(this).val().split(":");if(V.length>3){f(this).val("");U.ratioMet.set(parseFloat(V[1]));U.ratioCry.set(parseFloat(V[2]));U.ratioDeu.set(parseFloat(V[3]));U.checkRatio().onChange()}});return U.updateRatioSelect()},updateRatioSelect:function(){var V,U=this.ratioSelectJqo.html("").append(f('<option value="">-</option>'));for(V in S.data.ratioList){ratio=S.getRatio(V);U.append(f('<option value="'+ratio.val+'">'+F.formatF(ratio.met)+":"+F.formatF(ratio.cry)+":"+F.formatF(ratio.deu)+" ("+ratio.name+")</option>"))}this.ogameDropDown(U);return this},makeRatioInput:function(U,V){var W=this;W["ratio"+U.capitalize()]=new B(W.findIDP("ratio_"+U),V,"f",true,false,function(){W.checkRatio().onChange()});return W},checkRatio:function(){var U=this;if(K.isLegal(U.ratioMet.num,U.ratioCry.num,U.ratioDeu.num)){U.ratioIllegal.hide()}else{U.ratioIllegal.show()}return U},makePercentInput:function(U){var W=this,V="percent"+U.capitalize();W[V]=new B(W.findIDP("percent_"+U),0,"p",false,true,function(Z){if(Z.num>100){Z.set(100,true)}var X="percentMet",Y;if(/Met|Cry/.test(V)&&(!W.percentDeu.isDisabled())){X="percentDeu"}else{if(/Met|Deu/.test(V)&&(!W.percentCry.isDisabled())){X="percentCry"}}Y=parseFloat((100-Z.num).toFixed((Z.num+"").split(".").pop().length));W[X].set(Y);W.onChange()});return W},checkOutputSelect:function(){var Z=this,ac=Z.outputJqo,X=ac.val(),ab=(Z.inputMet.num>0),Y=(Z.inputCry.num>0),W=(Z.inputDeu.num>0),aa=/m/.test(X),V=/c/.test(X),U=/d/.test(X);if(!ab&&!Y&&W&&!aa&&!V&&U){ac.val("mc").change()}else{if(!ab&&Y&&!W&&!aa&&V&&!U){ac.val("md").change()}else{if(ab&&!Y&&!W&&aa&&!V&&!U){ac.val("cd").change()}else{if((!ab&&Y&&W)||aa&&((Y&&V)||(W&&U))){ac.val("m").change()}else{if((ab&&!Y&&W)||V&&((ab&&aa)||(W&&U))){ac.val("c").change()}else{if((ab&&Y&&!W)||U&&((ab&&aa)||(Y&&V))){ac.val("d").change()}}}}}}return Z},changeOutputSelect:function(U){this.outputJqo.val(U);m=this.percentMet.disable().set(0),c=this.percentCry.disable().set(0),d=this.percentDeu.disable().set(0);if(U=="m"){m.set(100)}else{if(U=="c"){c.set(100)}else{if(U=="d"){d.set(100)}else{if(U=="mc"){m.enable().set(50);c.enable().set(50)}else{if(U=="md"){m.enable().set(50);d.enable().set(50)}else{c.enable().set(50);d.enable().set(50)}}}}}return this},makeOutputSelect:function(){var U=this;this.outputJqo=U.findIDP("output").change(function(){U.changeOutputSelect(f(this).val());U.onChange()});return U},toggleConfigCalc:function(){this.window.toggleClass("config").toggleClass("calc");return this},updateConfigData:function(U){var W=this,V=(arguments.length>0)?U:S.data;z.updateData(V);V.defAction=W.defAction.val();V.defOutput=W.defOutput.val();V.selCurPla=W.selCurPla.val();V.abb=W.abb.val();V.overUnabb=W.overUnabb.val();V.millionAbb=W.millionAbb.val();V.millionKey=W.millionKey.val();V.thousandAbb=W.thousandAbb.val();V.thousandKey=W.thousandKey.val();V.messageTpl=W.messageTpl.val();return W},updateConfigIface:function(U){var W=this,V=(arguments.length>0)?U:S.data;G.setLimits(V);z.build(V);W.defAction.val(V.defAction);W.defOutput.val(V.defOutput);W.selCurPla.val(V.selCurPla);W.abb.val(V.abb);W.overUnabb.val(V.overUnabb);W.millionAbb.val(V.millionAbb);W.millionKey.val(V.millionKey);W.thousandAbb.val(V.thousandAbb);W.thousandKey.val(V.thousandKey);W.messageTpl.val(V.messageTpl);W.ieInput.val("");return W},updateCalcIface:function(){K.setLimits();this.inputMet.set(this.inputMet.num);this.inputCry.set(this.inputCry.num);this.inputDeu.set(this.inputDeu.num);this.updateRatioSelect().checkRatio().onChange();return this},makeConfigButtons:function(){var U=this;U.findIDP("config_but").click(function(){U.toggleConfigCalc()});U.findIDP("config_accept").click(function(){U.updateConfigData();S.save();U.updateCalcIface();U.toggleConfigCalc()});U.findIDP("config_cancel").click(function(){U.updateConfigIface();U.toggleConfigCalc()});U.findIDP("config_default").click(function(){S.remove();U.updateCalcIface();U.updateConfigIface();U.toggleConfigCalc()});return U},makeImportExport:function(){var U=this;U.ieInput=U.findIDP("ie_conf").focus(function(){f(this).select()});U.findIDP("ie_import").click(function(){try{var V=S.parseData(U.ieInput.val());U.updateConfigIface(V)}catch(W){alert(W)}});U.findIDP("ie_export").click(function(){var V=f.extend({},S.data);U.updateConfigData(V);U.ieInput.val("").val(JSON.stringify(V)).select()});return U},makeAbbKey:function(){var U=this;U.abb=new J(U.findIDP("abb"));U.overUnabb=new J(U.findIDP("overUnabb"));U.millionAbb=new v(U.findIDP("millionAbb"),S.data.millionAbb,S.abbRE,true,false);U.thousandAbb=new v(U.findIDP("thousandAbb"),S.data.thousandAbb,S.abbRE,true,false);U.millionKey=new v(U.findIDP("millionKey"),S.data.millionKey,S.keyRE,true,false);U.thousandKey=new v(U.findIDP("thousandKey"),S.data.thousandKey,S.keyRE,true,false);return U},makeMessageTpl:function(){var U=this;U.messageTpl=U.findIDP("messageTpl");U.findIDP("messageTpl_restore").click(function(){U.messageTpl.val(S.getDefaultData().messageTpl)});return U},clearExport:function(){this.ieInput.val("");return this},needUpdate:false,showUpdate:function(){this.needUpdate=true;this.menuButton.addClass("middlemark");try{this.findIDP("main").before(f(w.UPDATE))}catch(U){}},ogameDropDown:function(ac){var Z,Y,W,X,aa,U,V,ae,ad=null;try{if(ac.hasClass("dropdownInitialized")){ac.removeClass("dropdownInitialized");W=ac.next(".dropdown");U=W.attr("rel");ad=W.attr("style");W.remove();f("#"+U).remove()}W=f(".dropdown.dropdownList").get();ac.ogameDropDown()}catch(ab){return false}ae={select:ac};V=function(){var ag,af;ag=ae.select.val();af=ae.select.find('[value="'+ag+'"]').text();ae.dropdown.attr("data-value",ag).text(af)};X=f(".dropdown.dropdownList").get();for(Z=0;Z<W.length;Z++){W[Z]=f(W[Z])}for(Z=0;Z<X.length;Z++){X[Z]=f(X[Z]);U=X[Z].attr("id");aa=true;for(Y=0;Y<W.length;Y++){if(W[Y].attr("id")==U){aa=false;break}}if(aa){ae.dropdown=f('.dropdown [rel="'+U+'"]');if(ad!=null){ae.dropdown.parent().attr("style",ad)}V();ac.change(V);break}}return true},ogameDropDowns:function(){var V,U=this.window.find("select").get();if(!this.ogameDropDown(f(U[0]))){return}for(V=1;V<U.length;V++){this.ogameDropDown(f(U[V]))}},makeWindow:function(){w.init();S.load();K=new T();G=new T();var V=this,U=S.getRatioById(S.data.defRatio);V.ogameHide=f("#inhalt").after(this.window=f(w.WINDOW).hide());if(V.needUpdate){V.showUpdate()}V.addCss(w.CSS).show();V.ratioIllegal=V.findIDP("ratio_illegal").hide();V.outputMessage=V.findIDP("message").click(function(){f(this).select()});V.outputMet=new t(V.findIDP("output_met"),0);V.outputCry=new t(V.findIDP("output_cry"),0);V.outputDeu=new t(V.findIDP("output_deu"),0);V.sendRes=new t(V.findIDP("sendRes"),0);V.sendLC=new t(V.findIDP("sendLC"),0);V.sendSC=new t(V.findIDP("sendSC"),0);V.receiveRes=new t(V.findIDP("receiveRes"),0);V.receiveLC=new t(V.findIDP("receiveLC"),0);V.receiveSC=new t(V.findIDP("receiveSC"),0);V.findIDP("close").click(function(){V.hide()});V.makeActionSelect().makeResourceInput("met",0).makeResourceInput("cry",0).makeResourceInput("deu",0).makeRatioSelect().makeRatioInput("met",U.met).makeRatioInput("cry",U.cry).makeRatioInput("deu",U.deu).makeOutputSelect().makePercentInput("met").makePercentInput("cry").makePercentInput("deu").changeOutputSelect(S.data.defOutput).makePlanetSelect().checkRatio();V.findIDP("selCurPla_button").click(function(){V.planet.clickCurrent()});V.menuButtonAction=function(){V.toggle()};V.makeImportExport();P.init(V.findIDP("config"),V);z.init(V.findIDP("ratioList"),this);V.defAction=V.findIDP("defAction");V.defOutput=V.findIDP("defOutput");V.selCurPla=new J(V.findIDP("selCurPla"));V.makeAbbKey().makeMessageTpl().makeConfigButtons().updateConfigIface();V.ogameDropDowns();return V},onChange:function(){var V=this,U=u(V.inputMet.num,V.inputCry.num,V.inputDeu.num,V.ratioMet.num,V.ratioCry.num,V.ratioDeu.num,V.percentMet.num,V.percentCry.num,V.percentDeu.num);V.outputMet.val(U.met);V.outputCry.val(U.cry);V.outputDeu.val(U.deu);if(V.action=="buy"){V.sendRes.val(U.met+U.cry+U.deu);V.receiveRes.val(V.inputMet.num+V.inputCry.num+V.inputDeu.num)}else{V.receiveRes.val(U.met+U.cry+U.deu);V.sendRes.val(V.inputMet.num+V.inputCry.num+V.inputDeu.num)}V.sendLC.val(Math.ceil(V.sendRes.num/25000));V.sendSC.val(Math.ceil(V.sendRes.num/5000));V.receiveLC.val(Math.ceil(V.receiveRes.num/25000));V.receiveSC.val(Math.ceil(V.receiveRes.num/5000));V.outputMessage.text(O.make(V.action,{met:V.inputMet.txt,cry:V.inputCry.txt,deu:V.inputDeu.txt,},{met:V.outputMet.val(),cry:V.outputCry.val(),deu:V.outputDeu.val(),},{res:V.sendRes.val(),lc:V.sendLC.val(),sc:V.sendSC.val(),},{res:V.receiveRes.val(),lc:V.receiveLC.val(),sc:V.receiveSC.val(),},{met:V.ratioMet.txt,cry:V.ratioCry.txt,deu:V.ratioDeu.txt,},V.planet));return V},init:function(){if(/Chrome/i.test(i.navigator.userAgent)){this.ogameDropDowns=(this.ogameDropDown=s)}return this.makeMenuButton()}}).init();var R=(typeof(GM_xmlhttpRequest)=="undefined")?function(){f("body").append(f('<script src="'+k.UPDATE_JSONP+'" type="text/javascript" />'))}:function(){GM_xmlhttpRequest({method:"GET",url:k.UPDATE_URL,onload:function(V){var U=V.responseText.split("\n"),W,X=/^\s*\/\/\s*\@version\s+(\d+(?:\.\d+)*)\s*$/;for(W in U){if(X.test(U[W])){return i[l+"onVersionFound"](U[W].replace(X,"$1"))}}}})};var Q=Math.floor(I()/1000);var e={defaultData:function(){return{interval:7,noCheck:false,version:k.VERSION,timestamp:0,versionOG:r.VERSION}},load:function(){this.data=h.get("cfu");this.data=f.extend(this.defaultData(),(this.data==null)?{}:this.data)},update:function(U){f.extend(this.data,{timestamp:Q,versionOG:r.VERSION,version:(arguments.length>0)?U:this.data.version});h.set("cfu",this.data)},save:function(U){this.data=f.extend(this.defaultData(),this.data,(arguments.length>0)?U:{});h.set("cfu",this.data)}};var H=function(V){var U=V;e.load();if(e.data.noCheck){return e.update(k.VERSION)}if(n(k.VERSION,e.data.version)){e.update();return U()}if((n(e.data.versionOG,r.VERSION))||(Q>e.data.timestamp+86400*e.data.interval)){i[l+"onVersionFound"]=function(W){e.update(g(W));if(n(k.VERSION,e.data.version)){U()}};R()}};setTimeout(function(){H(function(){y.showUpdate()})},1)};var o=function(){try{f=i.jQuery;if(typeof(f)=="undefined"){throw 0}if(typeof(f.fn.ogameDropDown)=="undefined"){throw 0}a()}catch(r){setTimeout(o,50)}}
/*! [onDOMContentLoaded] by Dean Edwards & Matthias Miller & John Resig */
;var q=function(){if(arguments.callee.done){return}arguments.callee.done=true;if(b){clearInterval(b)}o()};if(p.addEventListener){p.addEventListener("DOMContentLoaded",q,false)}if(/WebKit/i.test(i.navigator.userAgent)){var b=setInterval(function(){if(/loaded|complete/.test(p.readyState)){q()}},10)}i.onload=q})();