// ==UserScript==
// @name WoTStatScript - ForumsExtendedStat
// @version 1.01
// @description Adds stats and links for posts on official World of Tanks forums
// @author Orrie
// @contributor seriych
// @namespace http://forum.worldoftanks.eu/index.php?/topic/263423-
// @icon http://dl.dropboxusercontent.com/u/12497046/wot/projects/statscript/img/icon.png
// @include /^http://forum\.worldoftanks\.(eu|com|ru|asia|kr)/\S+/topic//
// @include /^http://forum\.worldoftanks\.(eu|com|ru|asia|kr)/\S+\?showtopic/
// @include /^http://forum.worldoftanks\.(eu|com|ru|asia|kr)/index\.php\?app=members&module=messaging§ion=view&do=showConversation&topicID=\d+/
// @grant GM_xmlhttpRequest
// @license MIT License
// ==/UserScript==
(function () {
// server, API and cluster settings
var wg = {
srv: document.location.host.match(/\.(eu|ru|com|asia|kr)/)[1],
api: {
ru: "98ca7c4fb108175b67d6505b9c3f3ebd",
eu: "a7595640a90bf2d19065f3f2683b171c",
com: "bf5dba0efd444d75147b6222dd903fd2",
asia: "95f8713eccd322e52dbf521dbd28b19c",
kr: "ffea0f1c3c5f770db09357d94fe6abfb"
},
sym: ","
},
srv = {
s: "en", wl: false, nm: false, ws: false, wr: false, wn: false, cs: false, wlife: false
};
switch(wg.srv) {
case ("eu"): // eu server
srv.wl = srv.nm = srv.ws = srv.wr = srv.wn = srv.cs = srv.wlife = wg.srv;
break;
case ("ru"): // ru server
srv.wl = srv.nm = srv.ws = srv.wr = srv.wn = srv.cs = wg.srv;
srv.s = "ru";
wg.sym = " ";
break;
case ("com"): // na server
srv.wl = srv.nm = srv.ws = srv.cs = "na"; srv.wr = "com"; srv.wn = "us";
break;
case ("asia"): // asia server
srv.wl = srv.nm = srv.ws = srv.wn = srv.cs = "sea"; srv.wr = "com";
break;
case ("kr"): // korean server
srv.wl = srv.nm = srv.ws = srv.cs = srv.ch = wg.srv; srv.wr = "com";
break;
default: break;
}
// data uri
var uri = {
icon_arrow:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPwAAAAJCAMAAAAhKrH/AAAAV1BMVEUAAAD///+TKCf9AQmTLiX9AQmTMir9AQmTLif9AQmTMSz9AQmTMir9AQmTMyn9AQmTMirvGgKTMirsIAGTMirwGQOTMiqTMirsIAGaNDGgNzfqJwDrJABtE0DNAAAAGnRSTlMAABERIiIzM0REVVVmZnd3iIqZmrvDzN3g7thzQuwAAACHSURBVHja5dVLDsIwDEXRCySlP0IMoXXs7H+dDBASA1bQ3B0cPclm2Fe2wrfTQeO3qwqqAKWek80HxfO/l1/EBRgtU2tf+KkJ7TO9hdVSV3jU42f6ZClY6Qt/d4n+BGol29jTwQN1pE2QbA610BVefImuwL7xsNAXXhVpEYY8kNfO/rwsyA3ekEsOT2YDLE8AAAAASUVORK5CYII="
};
// style contents
var style = elem("style", "wotstatscript", "", "text/css"),
styleText = [
".author_info {z-index: 1;}",
".user_details > br {display: none;}",
".basic_info {margin: 0 0 4px;}",
".post_count.margin-bottom {margin: 0 0 5px;}",
".battles_count {display: none;}",
".i-xvm-lang {vertical-align: text-top;}",
".t-table-stats {margin: 5px 0; width: auto;}",
".t-table-stats td {padding: 0 5px 0 0; line-height: 16px;}",
".t-table-stats td:last-of-type {font-weight: bold;}",
".t-tables-links {background: #EDEDED; border: 1px solid #d5d5d5; border-radius: 3px; box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1), 0 0 3px 3px rgba(255, 255, 255, 0.2); display: inline-block; margin: 5px 0 5px -3px; overflow: hidden; padding: 3px 3px 0; text-overflow: ellipsis; white-space: nowrap; width: 90px;}",
".t-tables-links:hover {border-color: #7D7D7D; width: 180px;}",
".t-tables-links tbody {display: table; width: 180px;}",
".t-tables-links td {padding: 0 0 2px; font-weight: bold;}",
".t-tables-links td a { background: url("+uri.icon_arrow+") no-repeat scroll 0 2px rgba(0, 0, 0, 0); padding: 0 0 0 10px; vertical-align: middle;}",
".t-tables-links td a:hover {background: url("+uri.icon_arrow+") no-repeat scroll -244px 2px rgba(0, 0, 0, 0);}",
".t-tables-links tr:last-of-type td {}",
".realm_kr .t-tables-links {width: 108px;}",
".realm_kr .t-tables-links:hover {width: 215px;}",
".realm_kr .t-tables-links tbody {width: 215px;}"
];
for (var css=0; css<styleText.length; css++) {
style.appendChild(document.createTextNode(styleText[css]));
}
document.head.appendChild(style);
// end style
// colour scale array
var colArr = {
// col wr bat wn8 wn7 eff nm pr
sUni: [ "#5A3175", 65, 30000, 2900, 2050, 2050, 2000 ], // 99.99% super unicum
uni: [ "#83579D", 60, 25000, 2450, 1850, 1800, 1950, 9930 ], // 99.90% unicum
gr8: [ "#3972C6", 56, 21000, 2000, 1550, 1500, 1750, 8525 ], // 99.00% great
vGud: [ "#4099BF", 54, 17000, 1600, 1350 ], // 95.00% very good
good: [ "#4D7326", 52, 13000, 1200, 1100, 1200, 1450, 6340 ], // 82.00% good
aAvg: [ "#849B24", 50, 10000, 900 ], // 63.00% above average
avg: [ "#CCB800", 48, 7000, 650, 900, 900, 1250, 4185 ], // 40.00% average
bAvg: [ "#CC7A00", 47, 3000, 450, 700, 600, 1150, 2020 ], // 20.00% below average
bas: [ "#CD3333", 46, 1000, 300, 500 ], // 6.00% basic
beg: [ "#930D0D", 0, 0, 0, 0, 0, 0, 0 ], // 0.00% beginner
dft: [ "#6B6B6B" ], // default
id: { "col": 0, "wr": 1, "bat": 2, "wn8": 3, "wn7": 4, "eff": 5, "nm": 6, "pr": 7 } // type identifier
};
// localization
var loc = {
f00: { en: "Client", ru: "Клиент"},
f01: { en: "Winrate:", ru: "Винрейт:"},
f02: { en: "Battles:", ru: "Боев:"},
f03: { en: "Rating:", ru: "Рейтинг:"},
f04: { en: "WN8:", ru: "WN8:"}
//f00: { en: "f00_en", ru: "f00_ru"},
};
for (var l in loc) {
if (loc.hasOwnProperty(l)) {
loc[l] = loc[l][srv.s];
}
}
// expected tank values v17 with premium tanks up to 0.9.5
var statObj = {
3329: { frag:1.92, dmg:249.77, spot:1.43, def:1.51, win:59.03 },
1025: { frag:1.54, dmg:265.05, spot:2.02, def:1.24, win:58.91 },
4609: { frag:1.67, dmg:282.37, spot:1.40, def:1.67, win:60.03 },
15361: { frag:1.56, dmg:260.95, spot:1.59, def:1.72, win:61.47 },
54529: { frag:1.63, dmg:279.98, spot:1.53, def:1.46, win:58.64 },
769: { frag:0.88, dmg:218.00, spot:2.10, def:1.03, win:54.71 },
52225: { frag:1.70, dmg:359.74, spot:2.39, def:1.71, win:61.83 },
56577: { frag:1.40, dmg:303.68, spot:1.50, def:1.55, win:57.47 },
52737: { frag:1.04, dmg:235.25, spot:1.69, def:1.17, win:53.40 },
53505: { frag:1.79, dmg:373.25, spot:1.79, def:1.73, win:59.84 },
3073: { frag:1.11, dmg:268.97, spot:1.43, def:1.00, win:56.25 },
15105: { frag:1.43, dmg:337.87, spot:1.49, def:1.63, win:58.12 },
2049: { frag:0.74, dmg:273.73, spot:2.37, def:0.84, win:55.37 },
9473: { frag:0.70, dmg:260.62, spot:2.99, def:0.65, win:55.52 },
15873: { frag:1.12, dmg:380.82, spot:1.73, def:1.36, win:58.59 },
52481: { frag:1.46, dmg:409.99, spot:1.54, def:1.63, win:57.22 },
16641: { frag:0.51, dmg:365.84, spot:3.47, def:0.59, win:53.10 },
18433: { frag:0.75, dmg:783.58, spot:2.82, def:0.80, win:54.30 },
18177: { frag:0.63, dmg:883.93, spot:2.33, def:0.65, win:51.84 },
52993: { frag:0.87, dmg:293.06, spot:2.40, def:0.78, win:54.78 },
1537: { frag:1.12, dmg:418.64, spot:1.27, def:0.92, win:56.80 },
51457: { frag:1.36, dmg:578.41, spot:1.19, def:1.45, win:57.86 },
1: { frag:1.09, dmg:514.27, spot:1.46, def:1.06, win:55.56 },
12289: { frag:1.03, dmg:683.16, spot:2.02, def:0.98, win:54.35 },
2561: { frag:1.02, dmg:734.66, spot:1.45, def:0.96, win:55.05 },
58113: { frag:1.03, dmg:683.16, spot:2.02, def:0.98, win:54.35 },
12545: { frag:0.99, dmg:951.71, spot:1.70, def:0.83, win:53.38 },
8961: { frag:0.85, dmg:779.58, spot:1.54, def:0.93, win:53.60 },
6657: { frag:0.94, dmg:877.16, spot:1.56, def:1.00, win:54.34 },
57089: { frag:0.85, dmg:779.58, spot:1.54, def:0.93, win:53.60 },
56833: { frag:0.85, dmg:779.58, spot:1.54, def:0.93, win:53.60 },
13313: { frag:1.03, dmg:1279.62, spot:1.42, def:0.96, win:52.81 },
4353: { frag:0.82, dmg:1014.58, spot:1.65, def:0.85, win:52.59 },
17665: { frag:1.03, dmg:1548.16, spot:1.56, def:0.87, win:53.24 },
7937: { frag:0.94, dmg:1457.35, spot:1.80, def:0.81, win:51.34 },
16897: { frag:1.01, dmg:1833.60, spot:1.70, def:0.89, win:49.47 },
58369: { frag:0.84, dmg:1771.13, spot:1.31, def:0.63, win:47.91 },
17153: { frag:1.00, dmg:1785.87, spot:1.65, def:0.88, win:50.03 },
15617: { frag:1.00, dmg:1811.66, spot:1.74, def:0.85, win:49.66 },
13825: { frag:0.92, dmg:1698.26, spot:1.62, def:0.76, win:48.56 },
51713: { frag:1.28, dmg:612.11, spot:1.19, def:1.30, win:55.12 },
11777: { frag:1.21, dmg:629.78, spot:0.88, def:1.00, win:54.45 },
18689: { frag:1.41, dmg:729.97, spot:1.36, def:1.16, win:58.91 },
54017: { frag:1.50, dmg:699.26, spot:1.42, def:1.37, win:60.67 },
51201: { frag:1.50, dmg:699.26, spot:1.42, def:1.37, win:60.67 },
10497: { frag:1.15, dmg:880.75, spot:0.73, def:0.74, win:54.81 },
2817: { frag:1.16, dmg:892.47, spot:1.14, def:0.74, win:54.90 },
11265: { frag:1.05, dmg:816.85, spot:0.92, def:0.81, win:54.57 },
513: { frag:1.03, dmg:1078.74, spot:1.08, def:0.76, win:53.52 },
5889: { frag:1.05, dmg:1121.31, spot:0.88, def:0.77, win:54.16 },
5377: { frag:0.94, dmg:1331.96, spot:1.06, def:0.76, win:52.04 },
9217: { frag:1.11, dmg:1431.77, spot:1.19, def:0.83, win:53.64 },
11009: { frag:0.83, dmg:1206.36, spot:0.85, def:0.72, win:52.25 },
53249: { frag:0.99, dmg:1266.56, spot:1.10, def:0.85, win:51.87 },
11521: { frag:0.89, dmg:1540.88, spot:1.14, def:0.67, win:50.23 },
10753: { frag:0.95, dmg:1695.84, spot:0.97, def:0.69, win:52.57 },
6145: { frag:0.91, dmg:1871.69, spot:1.10, def:0.76, win:49.02 },
7169: { frag:0.86, dmg:1789.37, spot:1.23, def:0.62, win:49.14 },
5121: { frag:1.80, dmg:298.73, spot:0.47, def:1.46, win:59.07 },
6401: { frag:1.64, dmg:407.49, spot:0.98, def:1.59, win:58.41 },
54273: { frag:2.22, dmg:453.48, spot:0.97, def:1.81, win:62.70 },
6913: { frag:1.57, dmg:580.78, spot:1.16, def:1.47, win:58.94 },
257: { frag:1.19, dmg:595.07, spot:0.56, def:1.20, win:54.53 },
53761: { frag:1.46, dmg:670.32, spot:0.88, def:1.72, win:54.75 },
3585: { frag:1.24, dmg:876.79, spot:0.81, def:1.13, win:54.85 },
54785: { frag:1.26, dmg:909.16, spot:0.61, def:0.87, win:55.28 },
10241: { frag:1.03, dmg:1029.66, spot:0.85, def:1.16, win:53.31 },
55297: { frag:1.25, dmg:1164.81, spot:0.81, def:0.95, win:54.33 },
2305: { frag:1.09, dmg:1075.09, spot:0.54, def:0.83, win:52.83 },
7425: { frag:1.19, dmg:1588.72, spot:0.56, def:0.79, win:51.54 },
9985: { frag:0.98, dmg:1241.29, spot:0.93, def:0.96, win:50.35 },
8193: { frag:1.24, dmg:2056.67, spot:0.70, def:0.83, win:51.57 },
12033: { frag:0.97, dmg:1542.79, spot:0.90, def:0.86, win:49.94 },
14337: { frag:1.13, dmg:2190.82, spot:0.99, def:0.81, win:49.72 },
13569: { frag:1.17, dmg:2299.37, spot:0.83, def:0.77, win:49.06 },
3841: { frag:1.35, dmg:251.57, spot:0.12, def:1.67, win:53.42 },
7681: { frag:1.60, dmg:600.17, spot:0.12, def:2.08, win:58.49 },
4865: { frag:1.19, dmg:697.45, spot:0.10, def:1.66, win:53.65 },
16385: { frag:1.02, dmg:575.07, spot:0.09, def:1.25, win:53.06 },
5633: { frag:1.15, dmg:1148.14, spot:0.06, def:1.32, win:52.49 },
1793: { frag:0.95, dmg:1329.10, spot:0.05, def:0.84, win:50.34 },
16129: { frag:0.93, dmg:1075.26, spot:0.04, def:0.85, win:52.37 },
4097: { frag:1.01, dmg:1439.64, spot:0.02, def:0.71, win:50.88 },
8449: { frag:1.00, dmg:1672.34, spot:0.03, def:0.71, win:49.67 },
8705: { frag:1.02, dmg:1912.22, spot:0.05, def:0.90, win:48.59 },
3089: { frag:1.95, dmg:258.63, spot:2.26, def:1.50, win:59.48 },
785: { frag:1.63, dmg:275.47, spot:1.92, def:1.65, win:59.76 },
52497: { frag:2.11, dmg:345.64, spot:1.91, def:2.65, win:57.09 },
12817: { frag:1.21, dmg:195.14, spot:2.65, def:0.80, win:59.10 },
2065: { frag:1.51, dmg:250.64, spot:2.07, def:1.51, win:58.68 },
60433: { frag:1.21, dmg:195.14, spot:2.65, def:0.80, win:59.10 },
59665: { frag:1.19, dmg:300.59, spot:1.07, def:1.05, win:56.53 },
3345: { frag:1.55, dmg:363.12, spot:1.57, def:1.37, win:60.14 },
12561: { frag:1.13, dmg:243.00, spot:3.07, def:1.15, win:56.92 },
13073: { frag:1.03, dmg:272.73, spot:1.84, def:1.35, win:58.35 },
51729: { frag:2.01, dmg:380.52, spot:2.00, def:2.09, win:68.24 },
4881: { frag:1.20, dmg:278.00, spot:1.86, def:0.94, win:56.96 },
54801: { frag:1.18, dmg:270.45, spot:3.01, def:1.41, win:59.85 },
8209: { frag:0.75, dmg:275.30, spot:2.30, def:0.82, win:55.31 },
6161: { frag:0.89, dmg:323.33, spot:2.77, def:0.97, win:57.51 },
5393: { frag:0.61, dmg:351.24, spot:2.78, def:0.66, win:53.55 },
10001: { frag:0.64, dmg:520.86, spot:2.70, def:0.52, win:53.52 },
14353: { frag:0.61, dmg:667.90, spot:2.07, def:0.60, win:51.29 },
18449: { frag:0.68, dmg:911.55, spot:2.39, def:0.75, win:51.62 },
17169: { frag:1.51, dmg:333.55, spot:1.32, def:1.03, win:59.26 },
51985: { frag:1.70, dmg:391.83, spot:1.54, def:1.73, win:61.13 },
4369: { frag:1.01, dmg:339.46, spot:1.96, def:0.90, win:56.28 },
17425: { frag:1.16, dmg:443.43, spot:1.35, def:0.99, win:55.97 },
13585: { frag:1.21, dmg:406.33, spot:1.72, def:1.29, win:57.62 },
6417: { frag:0.90, dmg:427.40, spot:1.59, def:0.85, win:52.96 },
18193: { frag:1.31, dmg:611.02, spot:1.41, def:0.96, win:56.68 },
55057: { frag:1.30, dmg:610.92, spot:1.34, def:1.62, win:53.61 },
54545: { frag:1.16, dmg:570.31, spot:1.57, def:1.21, win:55.99 },
57361: { frag:0.98, dmg:736.75, spot:1.07, def:1.24, win:52.27 },
51473: { frag:0.66, dmg:450.51, spot:1.61, def:0.71, win:49.63 },
54033: { frag:0.66, dmg:450.51, spot:1.61, def:0.71, win:49.63 },
14097: { frag:1.04, dmg:735.74, spot:1.68, def:1.08, win:54.27 },
7185: { frag:0.93, dmg:678.91, spot:1.29, def:0.82, win:52.86 },
15889: { frag:1.00, dmg:737.19, spot:1.41, def:1.02, win:52.16 },
1297: { frag:0.88, dmg:894.97, spot:1.22, def:1.19, win:52.69 },
57617: { frag:0.93, dmg:870.17, spot:1.27, def:1.19, win:51.98 },
4113: { frag:0.93, dmg:860.50, spot:1.58, def:0.99, win:52.34 },
13841: { frag:0.86, dmg:1162.01, spot:1.22, def:1.00, win:50.42 },
8465: { frag:0.82, dmg:1076.79, spot:1.33, def:0.90, win:51.94 },
60177: { frag:0.82, dmg:1076.79, spot:1.33, def:0.90, win:51.94 },
10257: { frag:0.89, dmg:1482.21, spot:1.44, def:0.68, win:49.75 },
14865: { frag:0.86, dmg:1451.40, spot:1.40, def:0.89, win:48.89 },
60945: { frag:0.94, dmg:1457.35, spot:1.80, def:0.81, win:51.34 },
12305: { frag:0.91, dmg:1815.14, spot:1.45, def:0.71, win:48.32 },
14609: { frag:0.96, dmg:1827.88, spot:1.67, def:0.91, win:47.92 },
13329: { frag:1.21, dmg:417.73, spot:1.03, def:1.27, win:54.75 },
52241: { frag:1.79, dmg:519.50, spot:1.67, def:1.73, win:60.86 },
2577: { frag:1.07, dmg:664.49, spot:1.27, def:1.08, win:53.89 },
2321: { frag:1.10, dmg:810.08, spot:1.26, def:1.09, win:54.60 },
10769: { frag:0.97, dmg:1098.74, spot:0.99, def:1.04, win:53.38 },
529: { frag:0.99, dmg:1100.50, spot:0.99, def:1.00, win:52.84 },
54289: { frag:0.83, dmg:1239.23, spot:0.87, def:0.86, win:49.33 },
5137: { frag:0.86, dmg:1247.99, spot:1.00, def:0.83, win:50.75 },
10513: { frag:0.88, dmg:1229.43, spot:1.25, def:0.84, win:51.05 },
9745: { frag:0.92, dmg:1608.91, spot:1.08, def:0.70, win:50.77 },
7441: { frag:0.87, dmg:1540.44, spot:0.95, def:0.64, win:50.02 },
9489: { frag:0.94, dmg:1959.15, spot:1.03, def:0.53, win:49.67 },
6929: { frag:0.85, dmg:1783.87, spot:0.93, def:0.69, win:49.46 },
58641: { frag:0.96, dmg:2025.56, spot:1.14, def:0.52, win:49.81 },
3601: { frag:2.01, dmg:327.84, spot:1.16, def:1.66, win:59.92 },
6673: { frag:1.45, dmg:406.89, spot:1.08, def:1.45, win:58.75 },
1809: { frag:1.49, dmg:477.76, spot:0.62, def:1.12, win:56.82 },
11281: { frag:1.50, dmg:565.29, spot:1.03, def:1.57, win:57.75 },
17937: { frag:1.43, dmg:488.97, spot:0.81, def:1.19, win:56.74 },
16145: { frag:1.22, dmg:643.66, spot:0.80, def:1.14, win:52.98 },
1041: { frag:1.19, dmg:599.06, spot:0.75, def:1.31, win:53.81 },
60689: { frag:1.19, dmg:599.06, spot:0.75, def:1.31, win:53.81 },
57105: { frag:1.14, dmg:863.10, spot:0.79, def:1.14, win:52.25 },
1553: { frag:1.06, dmg:739.43, spot:0.77, def:1.19, win:52.29 },
11793: { frag:1.20, dmg:938.85, spot:0.70, def:1.20, win:51.86 },
55569: { frag:1.31, dmg:1061.27, spot:1.60, def:1.69, win:51.64 },
3857: { frag:1.07, dmg:1101.36, spot:0.74, def:1.03, win:52.53 },
11025: { frag:1.06, dmg:1081.86, spot:0.53, def:0.97, win:50.47 },
55313: { frag:0.97, dmg:1303.38, spot:0.77, def:1.12, win:49.76 },
7697: { frag:1.09, dmg:1488.75, spot:0.62, def:0.94, win:50.72 },
11537: { frag:1.14, dmg:1538.09, spot:0.81, def:0.96, win:51.19 },
16657: { frag:1.29, dmg:1724.44, spot:0.63, def:1.12, win:52.11 },
7953: { frag:1.08, dmg:1835.74, spot:0.65, def:0.81, win:50.02 },
16401: { frag:1.18, dmg:1972.18, spot:0.68, def:0.94, win:50.69 },
12049: { frag:1.08, dmg:2166.00, spot:0.68, def:0.53, win:49.08 },
16913: { frag:1.47, dmg:2496.73, spot:0.53, def:0.84, win:49.87 },
15121: { frag:1.02, dmg:192.52, spot:0.18, def:1.31, win:57.53 },
2833: { frag:1.25, dmg:400.31, spot:0.18, def:1.67, win:57.64 },
5905: { frag:1.15, dmg:425.16, spot:0.14, def:1.70, win:53.47 },
15633: { frag:1.22, dmg:470.38, spot:0.11, def:1.68, win:55.35 },
4625: { frag:1.11, dmg:446.05, spot:0.17, def:1.68, win:54.10 },
5649: { frag:1.11, dmg:665.17, spot:0.11, def:1.56, win:52.70 },
273: { frag:1.05, dmg:1002.20, spot:0.08, def:1.33, win:50.74 },
8977: { frag:1.02, dmg:1306.13, spot:0.05, def:1.04, win:50.37 },
15377: { frag:0.91, dmg:1316.65, spot:0.04, def:0.64, win:50.11 },
8721: { frag:0.93, dmg:1566.33, spot:0.04, def:0.63, win:48.51 },
9233: { frag:0.97, dmg:1844.31, spot:0.04, def:0.62, win:48.11 },
545: { frag:1.69, dmg:213.47, spot:2.18, def:1.28, win:58.77 },
1825: { frag:1.49, dmg:251.35, spot:2.57, def:1.34, win:59.39 },
53537: { frag:1.15, dmg:202.07, spot:1.76, def:0.95, win:56.92 },
51489: { frag:1.23, dmg:210.73, spot:2.67, def:1.10, win:57.42 },
55073: { frag:1.24, dmg:182.84, spot:1.99, def:1.19, win:57.82 },
52769: { frag:1.16, dmg:276.63, spot:2.67, def:1.34, win:57.51 },
289: { frag:1.08, dmg:252.87, spot:2.53, def:1.27, win:57.56 },
52001: { frag:1.08, dmg:252.87, spot:2.53, def:1.27, win:57.56 },
5153: { frag:0.85, dmg:289.51, spot:2.62, def:0.98, win:56.83 },
9761: { frag:0.65, dmg:492.30, spot:2.75, def:0.72, win:53.80 },
15137: { frag:0.56, dmg:466.70, spot:2.39, def:0.59, win:52.87 },
16673: { frag:0.71, dmg:632.34, spot:2.30, def:0.86, win:53.22 },
17953: { frag:0.82, dmg:874.78, spot:2.57, def:0.82, win:52.94 },
15649: { frag:0.67, dmg:712.99, spot:2.60, def:0.64, win:52.48 },
18209: { frag:0.62, dmg:921.84, spot:1.92, def:0.59, win:51.24 },
5665: { frag:1.53, dmg:260.74, spot:1.75, def:1.27, win:59.88 },
4897: { frag:1.38, dmg:302.83, spot:1.56, def:1.08, win:57.42 },
3105: { frag:1.00, dmg:344.64, spot:0.84, def:0.84, win:54.28 },
1057: { frag:1.44, dmg:666.89, spot:1.55, def:1.04, win:58.15 },
52257: { frag:1.00, dmg:445.08, spot:1.54, def:0.90, win:54.41 },
5409: { frag:0.94, dmg:427.81, spot:2.19, def:0.99, win:55.20 },
51745: { frag:1.19, dmg:549.92, spot:1.46, def:1.19, win:57.24 },
56097: { frag:1.00, dmg:690.05, spot:1.54, def:1.00, win:55.03 },
10017: { frag:1.06, dmg:745.05, spot:1.22, def:1.10, win:54.30 },
1313: { frag:1.00, dmg:690.05, spot:1.54, def:1.00, win:55.03 },
1569: { frag:0.95, dmg:958.11, spot:1.74, def:1.03, win:54.31 },
11809: { frag:1.10, dmg:902.09, spot:1.81, def:1.35, win:52.39 },
5921: { frag:0.86, dmg:1118.55, spot:1.58, def:0.99, win:51.70 },
13345: { frag:0.86, dmg:1131.01, spot:1.00, def:0.97, win:51.19 },
14625: { frag:1.03, dmg:1272.64, spot:1.32, def:1.08, win:52.22 },
53793: { frag:0.86, dmg:1118.55, spot:1.58, def:0.99, win:51.70 },
8993: { frag:0.89, dmg:1444.58, spot:1.64, def:0.72, win:50.36 },
15393: { frag:1.12, dmg:1698.56, spot:1.03, def:0.78, win:51.01 },
14113: { frag:0.88, dmg:1714.31, spot:1.59, def:0.68, win:47.79 },
15905: { frag:0.79, dmg:1651.72, spot:1.48, def:0.72, win:46.45 },
55841: { frag:0.79, dmg:1651.72, spot:1.48, def:0.72, win:46.45 },
3361: { frag:1.24, dmg:638.89, spot:1.21, def:1.12, win:55.52 },
33: { frag:1.33, dmg:606.91, spot:1.54, def:1.21, win:55.78 },
801: { frag:1.04, dmg:829.81, spot:1.08, def:0.85, win:53.56 },
3873: { frag:1.10, dmg:1233.90, spot:1.15, def:0.98, win:54.89 },
52513: { frag:0.85, dmg:1136.19, spot:1.18, def:0.82, win:47.48 },
4385: { frag:0.92, dmg:1294.05, spot:1.23, def:0.92, win:52.54 },
2849: { frag:0.84, dmg:1298.47, spot:0.83, def:0.71, win:50.60 },
9505: { frag:0.88, dmg:1567.62, spot:1.12, def:0.68, win:50.08 },
10785: { frag:0.87, dmg:1813.53, spot:1.21, def:0.73, win:48.63 },
14881: { frag:1.13, dmg:2157.48, spot:0.84, def:0.75, win:49.56 },
6177: { frag:2.11, dmg:312.85, spot:1.21, def:1.50, win:58.21 },
6433: { frag:1.50, dmg:364.48, spot:1.31, def:1.17, win:58.78 },
10273: { frag:1.33, dmg:499.46, spot:1.58, def:1.59, win:58.51 },
7713: { frag:1.54, dmg:579.16, spot:1.28, def:1.54, win:58.95 },
6945: { frag:1.26, dmg:620.69, spot:1.03, def:1.39, win:55.62 },
10529: { frag:1.38, dmg:670.61, spot:1.76, def:1.51, win:57.52 },
11553: { frag:1.20, dmg:902.91, spot:1.48, def:1.30, win:55.27 },
7201: { frag:1.11, dmg:849.66, spot:0.94, def:1.17, win:54.82 },
9249: { frag:1.07, dmg:1089.15, spot:0.81, def:1.13, win:53.42 },
11041: { frag:0.95, dmg:1003.48, spot:1.00, def:1.12, win:52.75 },
56609: { frag:1.07, dmg:1089.15, spot:0.81, def:1.13, win:53.42 },
56353: { frag:0.98, dmg:1241.29, spot:0.93, def:0.96, win:50.35 },
8225: { frag:1.01, dmg:1390.41, spot:0.52, def:0.93, win:50.77 },
11297: { frag:1.04, dmg:1439.56, spot:0.53, def:0.96, win:51.10 },
2593: { frag:1.02, dmg:1787.68, spot:0.75, def:0.62, win:50.55 },
8737: { frag:1.09, dmg:1820.48, spot:0.50, def:0.67, win:51.91 },
13857: { frag:1.12, dmg:2318.01, spot:0.81, def:0.60, win:51.29 },
13089: { frag:1.06, dmg:2177.48, spot:0.84, def:0.62, win:49.24 },
2081: { frag:1.43, dmg:272.68, spot:0.36, def:2.01, win:55.72 },
3617: { frag:1.04, dmg:574.73, spot:0.11, def:1.95, win:51.01 },
4641: { frag:1.06, dmg:404.02, spot:0.14, def:1.58, win:53.48 },
4129: { frag:1.09, dmg:1047.08, spot:0.07, def:1.56, win:51.23 },
16417: { frag:1.04, dmg:840.34, spot:0.08, def:1.39, win:53.08 },
7969: { frag:1.01, dmg:1299.66, spot:0.06, def:1.11, win:50.89 },
7457: { frag:1.05, dmg:1568.70, spot:0.05, def:0.87, win:50.89 },
16161: { frag:1.02, dmg:1777.19, spot:0.04, def:0.90, win:51.30 },
8481: { frag:0.95, dmg:1886.27, spot:0.04, def:0.72, win:48.47 },
5201: { frag:1.87, dmg:319.65, spot:1.57, def:1.59, win:59.85 },
7761: { frag:1.85, dmg:314.54, spot:2.21, def:1.36, win:61.18 },
54865: { frag:1.43, dmg:210.41, spot:1.99, def:1.24, win:58.91 },
593: { frag:1.49, dmg:251.35, spot:2.57, def:1.34, win:59.39 },
6993: { frag:1.39, dmg:305.51, spot:1.03, def:1.04, win:56.01 },
7505: { frag:1.48, dmg:361.38, spot:1.88, def:1.12, win:60.24 },
1361: { frag:1.08, dmg:252.87, spot:2.53, def:1.27, win:57.56 },
6481: { frag:1.04, dmg:369.65, spot:1.87, def:1.05, win:56.99 },
4945: { frag:0.86, dmg:333.95, spot:0.86, def:1.22, win:54.69 },
2129: { frag:0.98, dmg:456.88, spot:1.76, def:1.10, win:54.74 },
81: { frag:1.88, dmg:240.35, spot:1.17, def:1.17, win:58.74 },
337: { frag:1.64, dmg:274.36, spot:1.04, def:1.35, win:58.00 },
2385: { frag:1.19, dmg:300.59, spot:1.07, def:1.05, win:56.53 },
1617: { frag:1.00, dmg:344.64, spot:0.84, def:0.84, win:54.28 },
849: { frag:1.33, dmg:502.84, spot:0.88, def:1.61, win:58.01 },
53585: { frag:1.24, dmg:574.64, spot:0.83, def:1.49, win:55.41 },
12881: { frag:1.44, dmg:666.89, spot:1.55, def:1.04, win:58.15 },
1105: { frag:1.04, dmg:711.06, spot:2.06, def:0.95, win:55.05 },
3665: { frag:0.95, dmg:806.35, spot:0.91, def:0.79, win:52.33 },
5457: { frag:1.01, dmg:929.79, spot:1.77, def:1.06, win:53.33 },
5969: { frag:0.82, dmg:1147.96, spot:1.31, def:0.91, win:52.68 },
5713: { frag:0.91, dmg:1588.38, spot:1.28, def:0.85, win:50.84 },
7249: { frag:0.96, dmg:1886.82, spot:1.39, def:0.80, win:48.31 },
2897: { frag:1.17, dmg:630.42, spot:0.91, def:1.20, win:54.92 },
54353: { frag:1.43, dmg:661.43, spot:1.61, def:1.31, win:57.56 },
4689: { frag:0.99, dmg:756.40, spot:0.78, def:1.06, win:53.16 },
53841: { frag:1.16, dmg:863.71, spot:0.62, def:1.24, win:52.60 },
3153: { frag:0.94, dmg:1011.85, spot:0.88, def:1.10, win:54.08 },
3921: { frag:0.81, dmg:1213.79, spot:1.11, def:0.93, win:51.58 },
4433: { frag:0.87, dmg:1610.79, spot:1.04, def:0.69, win:50.07 },
6225: { frag:0.91, dmg:1901.63, spot:1.10, def:0.66, win:48.36 },
8273: { frag:1.78, dmg:291.66, spot:1.44, def:1.52, win:59.20 },
8017: { frag:1.63, dmg:387.60, spot:0.90, def:1.66, win:58.80 },
9041: { frag:1.32, dmg:475.48, spot:1.46, def:1.59, win:57.50 },
13393: { frag:1.26, dmg:620.69, spot:1.03, def:1.39, win:55.62 },
8785: { frag:1.19, dmg:579.58, spot:0.81, def:1.56, win:57.32 },
14417: { frag:1.11, dmg:849.66, spot:0.94, def:1.17, win:54.82 },
9553: { frag:1.12, dmg:823.44, spot:0.70, def:1.41, win:56.13 },
9809: { frag:0.90, dmg:703.56, spot:0.42, def:1.03, win:52.42 },
54097: { frag:0.93, dmg:970.33, spot:0.71, def:1.21, win:51.99 },
10065: { frag:1.18, dmg:1241.60, spot:0.70, def:1.30, win:56.42 },
14161: { frag:0.95, dmg:1003.48, spot:1.00, def:1.12, win:52.75 },
8529: { frag:1.06, dmg:1443.76, spot:0.66, def:1.19, win:52.50 },
14673: { frag:1.09, dmg:1488.75, spot:0.62, def:0.94, win:50.72 },
13137: { frag:0.87, dmg:1610.79, spot:1.04, def:0.69, win:50.07 },
52561: { frag:1.08, dmg:1820.73, spot:0.63, def:0.87, win:51.56 },
9297: { frag:1.25, dmg:2329.98, spot:0.59, def:0.57, win:48.77 },
13905: { frag:1.25, dmg:2329.98, spot:0.59, def:0.57, win:48.77 },
10577: { frag:1.41, dmg:195.95, spot:0.26, def:1.32, win:56.18 },
54609: { frag:1.12, dmg:279.39, spot:0.13, def:1.61, win:53.94 },
3409: { frag:0.96, dmg:239.84, spot:0.12, def:1.37, win:53.78 },
10833: { frag:1.00, dmg:361.14, spot:0.10, def:1.88, win:53.40 },
11089: { frag:1.22, dmg:647.73, spot:0.11, def:1.70, win:55.25 },
11857: { frag:1.14, dmg:853.36, spot:0.16, def:2.15, win:54.53 },
11345: { frag:0.92, dmg:993.36, spot:0.07, def:1.66, win:51.29 },
12113: { frag:0.93, dmg:1306.53, spot:0.03, def:0.86, win:50.24 },
11601: { frag:0.99, dmg:1703.97, spot:0.03, def:0.77, win:50.38 },
12369: { frag:1.02, dmg:2244.39, spot:0.03, def:0.97, win:51.69 },
577: { frag:1.72, dmg:219.80, spot:1.37, def:1.50, win:59.45 },
1601: { frag:1.43, dmg:236.13, spot:1.16, def:1.85, win:55.79 },
1345: { frag:1.46, dmg:240.71, spot:1.38, def:1.81, win:58.89 },
5953: { frag:0.99, dmg:219.46, spot:0.95, def:1.60, win:55.63 },
2881: { frag:0.71, dmg:239.62, spot:0.86, def:0.91, win:52.49 },
14145: { frag:0.66, dmg:462.17, spot:2.61, def:0.75, win:53.93 },
6465: { frag:0.59, dmg:493.20, spot:2.02, def:0.57, win:51.92 },
5185: { frag:0.60, dmg:586.53, spot:2.09, def:0.60, win:52.04 },
4929: { frag:0.70, dmg:836.95, spot:2.45, def:0.65, win:51.76 },
321: { frag:1.29, dmg:300.60, spot:0.92, def:1.46, win:57.94 },
5697: { frag:0.96, dmg:1407.12, spot:1.35, def:0.79, win:49.42 },
3649: { frag:1.12, dmg:1821.23, spot:2.04, def:0.87, win:49.04 },
1089: { frag:1.04, dmg:335.58, spot:1.11, def:1.19, win:52.91 },
6721: { frag:1.22, dmg:648.05, spot:0.88, def:0.99, win:54.31 },
2625: { frag:0.95, dmg:806.35, spot:0.91, def:0.79, win:52.33 },
6977: { frag:0.88, dmg:1024.94, spot:0.94, def:0.92, win:51.70 },
3137: { frag:1.10, dmg:1405.35, spot:0.92, def:1.02, win:51.27 },
64065: { frag:0.93, dmg:1244.66, spot:1.51, def:1.07, win:50.04 },
3905: { frag:1.02, dmg:1667.38, spot:0.87, def:0.80, win:49.45 },
6209: { frag:1.05, dmg:1980.08, spot:0.95, def:0.82, win:48.19 },
7745: { frag:2.03, dmg:331.49, spot:0.94, def:1.93, win:59.36 },
2369: { frag:1.86, dmg:450.04, spot:1.08, def:1.77, win:60.06 },
8257: { frag:1.49, dmg:375.37, spot:1.11, def:1.80, win:58.75 },
9793: { frag:1.18, dmg:399.26, spot:0.57, def:0.98, win:54.53 },
10049: { frag:1.39, dmg:697.03, spot:0.92, def:1.42, win:55.13 },
11585: { frag:0.95, dmg:731.25, spot:0.65, def:1.00, win:50.75 },
10817: { frag:0.90, dmg:989.07, spot:0.68, def:1.01, win:51.48 },
12097: { frag:0.96, dmg:1315.14, spot:0.79, def:0.95, win:50.00 },
11073: { frag:0.99, dmg:1650.32, spot:0.97, def:0.87, win:50.07 },
13889: { frag:1.27, dmg:2346.05, spot:0.92, def:0.76, win:49.73 },
833: { frag:1.41, dmg:247.23, spot:0.15, def:2.18, win:55.88 },
3393: { frag:1.36, dmg:491.42, spot:0.15, def:2.05, win:54.84 },
14657: { frag:1.09, dmg:427.29, spot:0.12, def:1.58, win:54.04 },
2113: { frag:1.40, dmg:703.54, spot:0.10, def:1.88, win:54.89 },
4161: { frag:1.18, dmg:649.76, spot:0.10, def:2.30, win:52.34 },
4673: { frag:1.12, dmg:1061.24, spot:0.08, def:1.69, win:52.13 },
7233: { frag:0.95, dmg:1266.11, spot:0.06, def:1.36, win:50.45 },
7489: { frag:0.98, dmg:1443.84, spot:0.06, def:1.14, win:50.11 },
14401: { frag:0.95, dmg:1598.09, spot:0.05, def:1.04, win:49.62 },
11841: { frag:1.12, dmg:1887.05, spot:0.07, def:1.25, win:48.81 },
1329: { frag:1.92, dmg:252.45, spot:1.49, def:1.66, win:57.82 },
2353: { frag:1.70, dmg:280.61, spot:1.52, def:1.41, win:59.70 },
4401: { frag:1.48, dmg:365.03, spot:1.36, def:1.37, win:59.50 },
3121: { frag:0.95, dmg:346.57, spot:2.40, def:1.05, win:55.71 },
4913: { frag:0.53, dmg:383.93, spot:2.71, def:0.51, win:52.00 },
305: { frag:0.58, dmg:616.27, spot:2.35, def:0.67, win:50.46 },
64817: { frag:0.62, dmg:528.91, spot:2.67, def:0.74, win:51.69 },
3377: { frag:0.59, dmg:645.60, spot:2.56, def:0.58, win:52.08 },
3889: { frag:0.55, dmg:731.77, spot:2.74, def:0.58, win:50.72 },
4657: { frag:1.10, dmg:511.81, spot:1.49, def:1.09, win:53.93 },
5169: { frag:1.00, dmg:701.37, spot:1.60, def:0.97, win:53.07 },
1073: { frag:0.97, dmg:967.93, spot:1.57, def:0.97, win:54.07 },
1585: { frag:0.82, dmg:1035.29, spot:1.66, def:0.88, win:50.43 },
64049: { frag:0.89, dmg:1112.93, spot:1.50, def:0.75, win:49.60 },
49: { frag:0.88, dmg:1056.54, spot:1.70, def:0.91, win:50.94 },
561: { frag:0.88, dmg:1056.54, spot:1.70, def:0.91, win:50.94 },
1841: { frag:0.90, dmg:1453.89, spot:1.51, def:0.69, win:50.42 },
4145: { frag:0.93, dmg:1787.87, spot:1.41, def:0.68, win:48.20 },
3633: { frag:1.06, dmg:1134.25, spot:1.13, def:0.83, win:54.18 },
2865: { frag:0.91, dmg:1304.61, spot:1.15, def:0.80, win:52.40 },
817: { frag:1.11, dmg:1431.77, spot:1.19, def:0.83, win:53.64 },
64561: { frag:0.94, dmg:1278.38, spot:1.35, def:0.75, win:52.25 },
2097: { frag:0.92, dmg:1657.16, spot:1.29, def:0.63, win:51.35 },
5425: { frag:0.84, dmg:1771.13, spot:1.31, def:0.63, win:47.91 },
609: { frag:1.75, dmg:217.76, spot:1.31, def:1.88, win:58.33 },
865: { frag:1.64, dmg:279.18, spot:1.71, def:1.26, win:58.94 },
3169: { frag:1.51, dmg:265.35, spot:1.54, def:1.80, win:58.65 },
2401: { frag:1.36, dmg:332.40, spot:1.80, def:1.35, win:59.48 },
51809: { frag:1.36, dmg:332.40, spot:1.80, def:1.35, win:59.48 },
2913: { frag:1.19, dmg:425.95, spot:1.84, def:1.32, win:57.71 },
353: { frag:1.51, dmg:249.89, spot:1.42, def:1.29, win:58.96 },
2145: { frag:1.48, dmg:362.98, spot:1.31, def:1.33, win:58.57 },
1633: { frag:1.07, dmg:398.04, spot:1.27, def:1.09, win:55.72 },
1377: { frag:1.00, dmg:512.14, spot:1.23, def:1.06, win:54.07 },
51553: { frag:1.06, dmg:550.49, spot:1.08, def:1.19, win:53.90 },
1889: { frag:1.03, dmg:761.32, spot:1.12, def:1.09, win:52.19 },
1121: { frag:0.95, dmg:950.98, spot:1.05, def:1.07, win:51.43 },
2657: { frag:0.89, dmg:1196.34, spot:1.34, def:1.05, win:51.48 },
3425: { frag:0.96, dmg:1625.42, spot:1.31, def:0.82, win:50.60 },
3681: { frag:1.04, dmg:1968.87, spot:1.58, def:0.83, win:49.75 }
};
// create global post variable
var postObj = {
cls: document.querySelectorAll(".post_wrap, .post_wrap__wg"),
ids: [],
num: []
},
s = {},
id, users, index;
// fetch userids and store all posts into one obj for later use
for (var t=0; t<postObj.cls.length; t++) {
id = postObj.cls[t].getElementsByClassName("ipsUserPhotoLink")[0].getAttribute('href').match(/\-(\d+)\//)[1];
if (!isNaN(id)) {
s[id] = {u:{},v:{frag:0,dmg:0,spot:0,def:0,win:0},wn8:""};
users = postObj.ids.length;
index = postObj.ids.indexOf(id);
if (index>-1) {
postObj.num[index][postObj.num[index].length] = t;
}
else {
postObj.ids[users] = id;
postObj.num[users] = [];
postObj.num[users][0] = t;
}
}
}
// request and retrieve statistics from API
if (!!users) {
wg.api.i = "http://api.worldoftanks."+wg.srv+"/wot/account/info/?application_id="+wg.api[wg.srv]+"&account_id="+postObj.ids.join(',');
wg.api.v = "http://api.worldoftanks."+wg.srv+"/wot/account/tanks/?application_id="+wg.api[wg.srv]+"&account_id="+postObj.ids.join(',');
reqHnd(wg.api.i, apiInfoHnd);
}
// processing information from player API
function apiInfoHnd(resp) {
for (var a in resp.data) {
if (resp.data.hasOwnProperty(a)) {
// store stats
s[resp.data[a].account_id].u = {
name: resp.data[a].nickname,
id: resp.data[a].account_id,
cid: resp.data[a].clan_id,
bat: resp.data[a].statistics.all.battles,
win: resp.data[a].statistics.all.wins/resp.data[a].statistics.all.battles,
dmg: resp.data[a].statistics.all.damage_dealt/resp.data[a].statistics.all.battles,
frag: resp.data[a].statistics.all.frags/resp.data[a].statistics.all.battles,
spot: resp.data[a].statistics.all.spotted/resp.data[a].statistics.all.battles,
def: resp.data[a].statistics.all.dropped_capture_points/resp.data[a].statistics.all.battles,
wgr: resp.data[a].global_rating,
lng: resp.data[a].client_language
};
}
}
reqHnd(wg.api.v, apiVehHnd);
}
// processing information from vehicle API and calculate WN8
function apiVehHnd(resp) {
for (var p in resp.data) {
if (resp.data.hasOwnProperty(p)) {
var rWin, rDmg, rFrag, rSpot, rDef;
if (s[p].u.bat > 0) {
for (var v in resp.data[p]) {
if (resp.data[p].hasOwnProperty(v)) {
s[p].v.frag += statObj[resp.data[p][v].tank_id].frag*resp.data[p][v].statistics.battles;
s[p].v.dmg += statObj[resp.data[p][v].tank_id].dmg *resp.data[p][v].statistics.battles;
s[p].v.spot += statObj[resp.data[p][v].tank_id].spot*resp.data[p][v].statistics.battles;
s[p].v.def += statObj[resp.data[p][v].tank_id].def *resp.data[p][v].statistics.battles;
s[p].v.win += statObj[resp.data[p][v].tank_id].win *resp.data[p][v].statistics.battles;
}
}
rWin = Math.max(((s[p].u.bat /(s[p].v.win /s[p].u.bat)-0.71)/(1-0.71)),0);
rDmg = Math.max(((s[p].u.dmg /(s[p].v.dmg /s[p].u.bat)-0.22)/(1-0.22)),0);
rFrag = Math.max(Math.min(rDmg+0.2,((s[p].u.frag/(s[p].v.frag/s[p].u.bat)-0.12)/(1-0.12))),0);
rSpot = Math.max(Math.min(rDmg+0.1,((s[p].u.spot/(s[p].v.spot/s[p].u.bat)-0.38)/(1-0.38))),0);
rDef = Math.max(Math.min(rDmg+0.1,((s[p].u.def /(s[p].v.def /s[p].u.bat)-0.10)/(1-0.10))),0);
s[p].wn8 = colStat(980*rDmg + 210*rDmg*rFrag + 155*rFrag*rSpot + 75*rDef*rFrag + 145*Math.min(1.8,rWin),"wn8",0);
}
else {
s[p].wn8 = colStat(0,"wn8",0);
}
}
}
statInsert();
}
// insert stats and links to every post
function statInsert() {
for (var y in s) {
if (s.hasOwnProperty(y)) {
var iPost = postObj.ids.indexOf(y),
userStats = [
"<td>"+loc.f01+"</td><td>"+colStat((s[y].u.bat > 0)?s[y].u.win*100:0,"wr",2,"%")+"</td>",
"<td>"+loc.f02+"</td><td>"+colStat(s[y].u.bat,"bat",0,"")+"</td>",
"<td>"+loc.f03+"</td><td>"+colStat(s[y].u.wgr,"pr",0,"")+"</td>",
"<td>"+loc.f04+"</td><td>"+s[y].wn8+"</td>"
],
userLinks = [
[
["<a target='_blank' href='http://worldoftanks."+wg.srv+"/community/accounts/named/"+s[y].u.name+"'>Player Profile</a>"],
[srv.ws, "<a target='_blank' href='http://wotstats.org/stats/"+srv.ws+"/"+s[y].u.name+"/'>WoTstats</a>"]
],
[
[srv.wl, "<a target='_blank' href='http://wotlabs.net/"+srv.wl+"/player/"+s[y].u.name+"'>WoTLabs</a>"],
[srv.cs, "<a target='_blank' href='http://wotcs.com/player.php?wid="+s[y].u.id+"'>WoT-CS</a>"]
],
[
[srv.nm, "<a target='_blank' href='http://noobmeter.com/player/"+srv.nm+"/"+s[y].u.name+"'>Noobmeter</a>"],
[srv.wr, "<a target='_blank' href='http://wotreplays."+srv.wr+"/player/"+s[y].u.name+"'>WoTReplays</a>"]
],
[
[srv.wn, "<a target='_blank' href='http://wot-news.com/stat/pstat/"+srv.wn+"/"+s[y].u.name+"/'>Wot-news</a>"],
(wg.srv=="ru") ? [srv.wr, "<a target='_blank' href='http://wots.com.ua/user/stats/"+s[y].u.name+"'>WoTS.com.ua</a>"] : [srv.wlife, "<a target='_blank' href='http://en.wot-life.com/"+srv.wlife+"/player/"+s[y].u.name+"/'>WoT-Life</a>"]
]
];
if (iPost >- 1) {
for (var i=0; i<postObj.num[iPost].length; i++) {
var groupTitle = postObj.cls[postObj.num[iPost][i]].getElementsByClassName("group_title")[0],
basicInfo = postObj.cls[postObj.num[iPost][i]].getElementsByClassName("basic_info")[0],
infoClass = postObj.cls[postObj.num[iPost][i]].getElementsByClassName("author_info")[0],
statTable = elem("table", "t-table-stats", ""),
urlTable = elem("table", "t-tables-links", "<tbody></tbody>"),
flag = elem("img", "i-xvm-lang", "", "", "https://bytebucket.org/seriych/worldoftanksforumextendedstat.user.js/raw/tip/data/img/lang/"+s[y].u.lng+".png");
flag.title = s[y].u.lng.toUpperCase()+" "+loc.f00;
for (var sr=0; sr<userStats.length; ++sr) {
statTable.appendChild(elem("tr", "", userStats[sr]));
}
for (var l=0; l<userLinks.length; ++l) {
var uRow = elem("tr", "", "");
for (var lr=0; lr<userLinks[l].length; ++lr) {
uRow.appendChild(userLinks[l][lr][0] && userLinks[l][lr][1] ? elem("td", "", userLinks[l][lr][1]) : elem("td", "", userLinks[l][lr][0]));
}
urlTable.firstElementChild.appendChild(uRow);
}
if (wg.srv !== "ru") {
groupTitle.appendChild(flag);
}
basicInfo.insertBefore(statTable, basicInfo.lastElementChild);
infoClass.appendChild(urlTable);
}
}
}
}
}
// request handler
function reqHnd(url, handler) {
setTimeout(function () {
GM_xmlhttpRequest({
method: "GET",
url: url,
onload: function(resp) {
handler(JSON.parse(resp.responseText));
}
});
}, 0);
}
// colouring
function colStat(input, type, dec, sym) {
var color = colArr.dft[0],
output = input.toFixed(dec);
if (sym) {
output += sym;
}
if (input >= 1000) {
output = input.toFixed(dec).toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1"+wg.sym);
}
for (var c in colArr) {
if (colArr.hasOwnProperty(c)) {
if (input >= colArr[c][colArr.id[type]]) {
color = colArr[c][0]; break;
}
}
}
return "<font color='"+color+"'>"+output+"</font>";
}
// quick creation of element
function elem(tag, name, html, type, src) {
var element = document.createElement(tag);
if (name) {element.className = name;}
if (html) {element.innerHTML = html;}
if (type) {element.type = type;}
if (src) {element.src = src;}
return element;
}
}());