// ==UserScript== // @name WoTStatScript // @version 0.9.7.04 // @description More info for World of Tanks profile page. Updated for the new style. // @author Orrie // @namespace http://forum.worldoftanks.eu/index.php?/topic/263423- // @icon http://dl.dropboxusercontent.com/u/12497046/wot/projects/statscript/img/icon.png // @include http://worldoftanks.eu/*/accounts/*-*/ // @include http://worldoftanks.ru/*/accounts/*-*/ // @include http://worldoftanks.com/*/accounts/*-*/ // @include http://worldoftanks.asia/*/accounts/*-*/ // @include http://worldoftanks.kr/*/accounts/*-*/ // @include http://*.wargaming.net/clans/*/ // @grant GM_xmlhttpRequest // @license MIT License // @downloadURL none // ==/UserScript== /* Changelog: http://dl.dropboxusercontent.com/u/12497046/wot/projects/statscript/WoTStatScript-changelog.txt */ (function () { // global vars var d = document; // get server info and webpage var wg = {host:d.location.host, href:d.location.href, clan:{}}; wg.srv = wg.host.match(/(eu|ru|na|com|asia|kr)/)[0].replace(/com/,"na"); wg.player = /(community|uc)\/accounts\/\d+/.test(wg.href); wg.clans = /wargaming\.net\/clans\/+[\d]+\//.test(wg.href); // script variables var sc = { vers: "0.9.7.04", host: "http://greasyfork.org/scripts/661-wotstatscript", user: "http://forum.wotlabs.net/index.php?/user/1618-orrie/", top: { eu: "http://forum.worldoftanks.eu/index.php?showtopic=263423", na: "http://forum.worldoftanks.com/index.php?showtopic=404652" }, wn: "http://www.wnefficiency.net/exp/expected_tank_values_latest.json", nm: { id: "orrie_js_174043" // noobmeter api id }, loc: [ [(wg.player) ? d.getElementsByClassName('b-portalmenu_links_list_point')[(wg.srv == "ru") ? 4 : 3].firstElementChild.innerHTML.toLowerCase() : d.getElementsByClassName('global-nav__bg')[0].innerHTML.toLowerCase(), "en"], ["support", "en"],["podpora", "cz"],["kundendienst", "de"],["soporte", "es"],["aide", "fr"],["pomoc", "pl"],["destek", "tr"],["suporte", "en"],["поддержка", "ru"] ] }; // script threadlink sc.link = ""; // external site support - wotlabs, noobmeter, wot-news, wotstats, wotcs, wot-life, wotstats.com.au, wotreplays and clan history var srv = { wl: false, nm: false, wn: false, ws: false, cs: false, wlife: false, kttc: false, wots: false, wr: false, ch: false }; // determine browser types var web = { gecko: typeof InstallTrigger !== 'undefined', opera: !!window.opera || /opera|opr/i.test(navigator.userAgent), chrome: !!window.chrome && !!window.chrome.webstore, safari: /constructor/i.test(window.HTMLElement) }; // fetch wnefficiency values - check if array exists in localStorage, otherwise fetch and reload page var statObj = {}, wnExpValues = JSON.parse(localStorage.getItem("wnExpValues")), wnExpDate = JSON.parse(localStorage.getItem("wnExpDate"))+1728e5 >= Date.now(), // true if timestamp is less than 2 days old, refresh list if false. wnExpVers = JSON.parse(localStorage.getItem("wnExpVers")) || ""; if (wnExpVers[0]==sc.vers && wnExpValues && wnExpDate) { statObj = wnExpValues; } else { reqHnd(sc.wn, wnHnd, wnHnd_error); } // inserting style into head var style = elem("style", "wotstatscript", "", "text/css"); d.head.appendChild(style); // inserting functions into head as scripts var scripts = [copyClipboard]; for (var _j=0; _j

Script Translation

Unsupported language detected!
If you want to contribute with translation, contact Orrie

")); } } } // process localization for (var _l in loc) { if (loc.hasOwnProperty(_l)) { loc[_l] = loc[_l][sc.loc]; } } // variables for dropbox, css and data uri var css = { box: "border: 1px solid rgba(255, 255, 255, 0.05); box-shadow: 0 0 38px 1px rgba(0, 0, 0, 0.3) inset, 0 0 23px 1px rgba(255, 255, 255, 0.02), 0 0 5px 1px rgba(0, 0, 0, 0.5) inset;", input: "background: rgba(0, 0, 0, 0.09); box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.15) inset, 0 0 38px 1px rgba(0, 0, 0, 0.3) inset, 0 0 23px 1px rgba(255, 255, 255, 0.02), 0 0 5px 1px rgba(0, 0, 0, 0.5) inset; color: #606061;", l: [ "http://dl.dropboxusercontent.com/u/12497046/wot/projects/statscript/img", "/static/wot/common/css/scss/context-menu/img/arrow.png", "/static/wot/common/css/scss/content/links/img/orange_arrow.png", "/static/wot/common/css/scss/content/user/img/speedometr-separator.png", "/static/wot/common/css/scss/content/links/img/ico-info.png", "/static/wot/common/css/scss/content/links/img/vertical-arrow.png", "/static/wot/common/img/common/cont-img-mask.png", "/static/wot/common/img/classes/class-ace.png", "/static/wot/common/img/classes/class-1.png", "/static/wot/common/img/classes/class-2.png", "/static/wot/common/img/classes/class-3.png" ], u: { menu: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPQAAAABCAIAAABmEhQDAAAAHklEQVQoU2MAAj4BAR5ePi6eUTSKhgni4eFjYGAAAN9YIhjam+zlAAAAAElFTkSuQmCC", icon1:"data:image/png;base64,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", icon2:"data:image/png;base64,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", nmLogo:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgUlEQVQ4y92SPWsUYRSFn/POzE4MgkhMKyKICAEjiUksgoWClY0WYifKDlj4VyxsDGvlgmhtLUiIkoSNiLEWCwN+dmvAnZl3jkV2lxArSz3d/eDe53Iu/NOabb8J6cHkfLGZbXUWq1E8c2c7kxpPhF8unfPu0bk4qqWqz+jggAtFL6uor9hhLqjZnkwHq7ip+/WRJlF50tYs0oLwF5vdPwhKKCHDguiEfpUBkKh6aMIT8MutzmJ3TDFGb/duA7L91HBTgAEYQlqHgeOH9PPt/oUCWCpezVTk7z1sFpwG7gMt4C64a7QCdGUTVF9LQ/l6feXiN80Xmw8aJ/cQxm6AIKkAXgAfgWnbZyVNgp8bjdAIqi8HW1MMeSUs2MG+ZfsTeMdwQrBs+AAgPAQ1gl0BnC82njVOboxPkGujVHhglMuORonYywfid8nXe52ltbGNC8X6JaNTQapjrGNjchH7VutYnvhHJJ3Cg8+mdXSCr4/XOlcH+7xf1d984Fx7I/D/6Dd9b6wCx93gcQAAAABJRU5ErkJggg==", rat:"data:image/png;base64,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", ratMark:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAANCAQAAADLNWwDAAAAV0lEQVQI12NgEGQQZhBhEALSQEqMQQIIgUxxBqmvRyBMKQa5H3cZpIGyDHIMir/fAkkxBgZFa/0/nxgUgQoZVNLsgExloGpkUSS1SCYgmQuxTQwkCncDAH0wFzVj5p2XAAAAAElFTkSuQmCC", tiers:"data:image/png;base64,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", bad1:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAfCAYAAABtYXSPAAAFVklEQVR42q2Xf0idVRjHu/f95dxVBGvNJlM2lI2hbW5sqMo23SDa2JaOtWBDCuZG2QBawZis0WA4pgtMREUQFXWJiASIGgkgEBWRKSD9GYAVEDQE+qtOzweey7nck12vdODLc5/3fL/f87znx/ve94X/aDEbFc61TXSZtFk2X6PnmGUe2OVYeNZ/aw1BXAWxtN+a66A2p7nXrcYnT/vtZVEQIi3MigONtjAH2qd810N9MzcV2DsIFTmCHfbOMxVjeejQWy+dZS0y86xYUSR48fr169MHDhx4czvFoEOPD372JjefHTu1wM5GflFR0fujo6MmNzf3s97e3pJsioGPDj0++OFriwGW7yyRVp8rSOzZs+fVs2fPfj03N2ck/3xoaKgCYllZWRzs3r3bKy4u9goLCz0iebIPHnx06PHBD1/1j9KWyikkTBYjrbKlpeXvwcHBv2SaKeaLvr6+GsjHjh3zgCyBf/ToUW/fvn0ekTzZBw8+OvT44IdvSjFhWkHO7mcaXwqC4PbMzIwB7e3tJhaLfTkwMNCAoLa2NgCHDx8OGxoa/EOHDvlE8mQfPPjo0Ce98MWfcdzTaWfG152/My8vr6ygoGBgcnLSLCwsmJ6eHmbmK7nT1yCfPHkyBMePH4/Onz8fVFVVBUTyZB88+OjQ44Mfvvgzjo7npy9VLOX0FAr56b1798yjR49Md3e32b9/P8V809nZeQ7y6dOnI1BdXZ3T1NQUnjhxIiSSJ/vgwUeHHh/88MWfcVJOVyy9mEArLZOpfXb37l0zPz9vLl++jAnF/NDV1XUBcmNj4w4gy5F79erVqKamJiKSJ/vgwUeHHh/88MWfcXS84N+KCXVjlQs+qqurMxsbG+bx48dmZGTEYPrkyZNzkM+cOZML6uvrd167di2SGBHJk33w4KNDjw9++OKv48ALbTH2h6+b6uXy8vKnJSUl64uLi6ajo8PIHWPwvRhegCjHdCeQvZGQE5IjMYdInuyDBx8denzwwxd/xtHxfLjpBYXaWSzPiZ/Gx8eN7APDesseYGqXHzx48Ho2xcBHhx4f/PDFn3EYz86M+xqIdPr6Ll26ZNbX141sTjMxMcHMLN+5c6cxm2Lgo0OPD3744q/jRDqu+yrQzhLB22EY/jI2NmbkRJiHDx9isNLW1nb71q1b9YgyNXjw0aHHBz988WccW4zWkLZnIj3/lYL2vXv3/lpRUWHkYUYx38rR7bAFZS4EPjr0+OCHL/46TpS6Z9y3tW7ieDzecvHixefDw8OmsrKSdf5NrrccOXLkQ7cgtxB48NGhxwc/fO3m3fztHRcEinxBred5azdv3jT9/f3m/v37Zmpq6k+5/okYvmULcguhHx58dOjxwQ9f9Q8U8c2KoQVacYXgAzF+Lu8ec/DgQXPjxg3D2u/atWtF+tgPzRSwtLT0jEjOdfrhwUeHHh/88FX/IG1ct6CUv4V5gmrBx3I81xKJxB9RFJn8/HyeFYbNeOXKlRUt4A0iOdfphwcfHXp88MNX/f3NC3H/XEeCAkGd4B3Bp3Jkf29tbTWnTp0y8pQ109PTZnZ21jQ3N68RyblOPzz46NDjo36R8yd+i18Iob7uSwVN8oL7ubS01MgpMcQgCAyPd15+RPLUfvjo0KtPmM2XQSwl+kAN8vTF9q6s/XeCVd/3V2Xw1TAMlwU/Esm5Tj88+OhUH1rPrD7o7LeNxkCPY5XeaavgPUUby0AkB/TDg49O9dYP/6yb+9GVELwiKNJYIigmJ5Kn9Secj8JtNfcLEgR26Yhbyl2fbTcr9pzjb3N7Et1j61mf/6k539FuEXGnL8si/gEY8SzOXUsBvQAAAABJRU5ErkJggg==", bad2:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAfCAQAAADHaLwEAAAErklEQVQYGQXAD4yWdR0A8M/39zzv8R4cB4fADmUorjRUmULKNDetVMtcTWdYbra0aJZrjmVZrY1yW26LcmuMZCZrJUbaLEfGRjUczjnHTUXaIADjPzAABLw74O55vg4ACIQQAiEAABAAAAAANSohBIAQAIoCKCAUgAKg0qq1QoVQBAgUFC231mpFqwgpAAqARqCgVdQCIVC0CBW3UVCrhAoFCEARWpWCIpyTAgFaVGgVtdBKKYwJoaUAWnQQ+h968VNfBgAApPa6iz//mn5FkToKgoIQKlCbMOvrd96775aVc7inHtr92+a55vlmRf4uNxy+oY+Vc07fuOhzd680RVFLrZDUSAW1Srlk7lUPzjAys7efPxy9ZeCP0rhhPZbM+MuRBTN6+5vLue32zfOOveeCGuOIgiJUMPHy29994MY19B6btePUwoFXdc1wjX4D1rqn++bho7P39f3H3CkPvj64WEcIIShCIoVJY7fdG9PLpaL3s6tvmHq/p/zckJPW+4Ufme/OvgWr9V3veHlEfZepoJKylopQK5OnVtdcMNWgLAe6w/6kccI9jjvrFdN0nPPuRD2TdHVcmD0w+9QZjUaIgkSr67uPLdllu2foG467DHlUOGXEB3q87IsuMTlMfMGQNzy6aOA3eoVQyQJCMe2ji1sLbfItej5w0gW11Dprkta4fpUPQ/chZ7SutH9Av0qtFQWEEPnOG252g9k4oeO0Lnaba4LWMWmm0VR6LPAVmzVb9SlaKYuQWq3TVwzuP7xZWkXbNe6499CrOKG1117TzQ2xzg7HbBydc9wZqQhRpFDQyS89PWuF5/SI6ixG3GyK804aMMsFl5niQirTrbfU97tXLBZohCxIjTRx58aXrDDdd6S+5oQXHbDEJHuEJ822xVsuauV95nrS8diwTZ8WjSxCgPPe/ueRjb5qF+XA818b2+igtThqj997xZD7muVb1f9zla5fj3nZKakIKiFVinPONWeGrt7et92RfX17tu5/ev4yZ1xmkU3escvjtu38wq5/j47O3+m1kcNrm/X2GTMmKRIpNY6W/df3PqH1yUvf2la2/PKlpec7xpzWY6Inxg7um/bmj/81eOWwb7uzro/Y7ZxGKNQgpcZou+sfhwb7H3Nw5vxn7/9VvDpt+IGHX7fQVo84dOTvK0fHf7rsE7P3KFaPj7ytQUoJUNDR41o/KKevznm5JJfnzPc93rPqm9nJZdlZa2nPxp/kUzkvP511Y5Wb9KoVRQGgqFUmu8my2Nb34YTsz0tzTS5+3/Jn01+v2/S3/ExOyQk5eaTssdLdpuvqCAQBQmgVHb2ucYVr7/jG3Gk71L6n62eHll48aI0tFhoe+/MLthmy3UljQoskAFBJtSkmWTD5mYvmzHLYQYvc6r826JrnmBOjJ39ovVNGjUutFJIAhBQqFBMMuqM8rFuEaERoa23ThmaddXb4SCuFRkgIANRaIVWmucRlpusgjOhRS+mE/9tr2HnjQiskEACAUGmFXv1S6Gg0KjQ6RjTOSq1UpAQIABAIiVoqWiEVoVU0WiGMCyQABACAkCqNokiNIgVSoBUILQBQAQAAAAgpERIhkQAAHwPlu9kMCvbXiAAAAABJRU5ErkJggg==" } }; // matches url with profile page and checks if profile has any battles as script is useless without if (wg.player) { var tableBattles = filter(d.getElementsByClassName('t-personal-data_value')[2].innerHTML, 1), profileName_class = d.getElementsByClassName('b-profile-name')[0]; if (tableBattles > 0) { // getting userinfo wg.name = d.getElementsByTagName('h1')[0].innerHTML; wg.id = wg.href.match(/\/(\d+)/)[1]; // URL variables sc.nm.url = "http://noobmeter.com/player/"+srv.nm+"/"+wg.name+"/"+wg.id; sc.nm.api = "http://noobmeter.com/simpleplayerprapi/"+srv.nm+"/"+wg.name+"/"+wg.id+"/"+sc.nm.id; sc.chApi = "http://clanapi-wotcs-eu.herokuapp.com/players/"+wg.id+"/changes"; // style contents styleCSS([ // global rules "h3, h4 {margin: 0 0 15px; text-align: center;}", "h5 {margin: 5px 0 8px;}", "p, .reg-KR p {margin: 0;}", ".reg-KR p {line-height: 133%;}", "table {width: 100%;}", // background image fix "#js-background-parallax-translate3d-wrapper {z-index: -1;}", // container wrapper ".l-container-wrapper {background: none;}", // content width ".l-content {margin: 0 22px 25px; width: 955px}", // background rules ".b-background {display: flex; left: -23px; opacity: 0.5; position: absolute; width: 1000px; z-index: -1;}", ".b-background img {width: 100%;}", // profile wrapper rules ".b-profile-wrpr {margin: 15px 0 0; min-height: 138px;}", ".b-profile-wrpr td {font-weight: bold; line-height: 133%;}", ".b-profile-wrpr .t-profile-table a, .b-profile-wrpr #js-profile-clan-table a {background: url("+css.l[1]+") no-repeat 0 2px; color: #CACBCC; padding: 0 0 0 10px;}", ".b-profile-wrpr .t-profile-table a:hover, .b-profile-wrpr #js-profile-clan-table a:hover {background: url("+css.l[1]+") no-repeat -244px 2px; color: #FFFFFF;}", ".b-profile-header {position: absolute; right: 0; top: 0;}", ".b-scriptlink {"+css.input+" border-left: 1px solid #000000; border-right: 1px solid #000000; display: inline-block; text-align: center; padding: 7px 0 6px; width: 199px;}", ".b-ratingsClip {display: inline-block;}", ".b-ratingsButton {"+css.input+" display: block; border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; padding: 7px 7px 6px;}", ".b-ratingsButton:hover {background-color: #282828; cursor: pointer;}", ".b-profile-error {background: rgba(204,0,0,0.15); border: 1px solid #510000; box-shadow: 0 0 3px #733232; color: #CACBCC; display: none; margin: 0 3px -6px 0; overflow: hidden; padding: 3px; text-align: center; text-overflow: ellipsis; white-space: nowrap; width: 220px;}", ".b-profile-error:hover {width: auto;}", // profile player rules ".b-profile-name {float: none; margin: 0; max-width: 370px;}", ".b-profile-name table {font-family: Arial;}", ".b-profile-name td:first-child {white-space: nowrap;}", ".reg-RUS .b-profile-name td:first-child {width: 120px;}", ".reg-KR .b-profile-name td:first-child {width: 80px;}", ".b-header-h1__profile {margin: 0; padding: 0 0 6px;}", "body.reg-KR h1, body.reg-KR .b-header-h1 {line-height: 1;}", // profile clan rules "#js-clan-block-container {left: 385px; position: absolute; top: 25px;}", ".b-profile-clan {float: none; max-width: 360px; margin: 0;}", ".b-photo {min-height: 54px;}", "a.b-link-clan, .b-link-clan a {display: inline;}", ".b-statistic {margin: 0 0 3px;}", "#js-clan-block-container table {font-family: Arial; width: 360px;}", "#js-clan-block-container td:first-child {white-space: nowrap;}", ".reg-RUS #js-clan-block-container td:first-child {width: 115px;}", ".reg-KR #js-clan-block-container td:first-child {width: 70px;}", // profile clan history rules ".b-clanHistory-wrpr {width: 750px;}", ".b-clanHistory-wrpr span {display: inline-block; font-weight: bold; line-height: 133%;}", ".b-clanHistory-wrpr .clanname {padding: 0 2px 0 0;}", ".b-clanHistory-wrpr .clantag {padding: 0 2px;}", ".b-clanHistory-wrpr .clantag.curr a {color: #F9D088;}", ".b-clanHistory-wrpr a {color: #CACBCC;}", ".b-clanHistory-wrpr a:hover {color: #FFFFFF;}", // campaign rating rules "#js-glory-points-block {margin: 2px 0;}", ".b-campaign-rating {margin: 0; padding: 10px 0 0; width: 750px;}", ".b-campaign-rating_header {display: inline-block; padding: 0 30px; position: relative; top: -5px;}", ".b-leadership-header_date {float: none; margin: 0; text-align: center;}", ".b-campaign-rating_header .b-header-h3__first {margin: 0;}", ".b-campaign-rating_info {display: inline-block; float: none; padding-left: 30px;}", ".b-campaign-rating_info__left-divider {background-position: 15px 0;}", ".b-campaign-rating_delta {padding: 0; position: absolute; top: 0;}", ".b-campaign-rating_links {margin: 10px 65px 0 0;}", ".b-campaign-rating_message {padding: 0 0 15px; text-align: center;}", // ban message rules ".js-account_game_ban_info_msg {position: absolute; width: 600px;}", // sidebar rules ".l-sidebar {margin: 0; position: absolute; right: 0; top: 25px; width: auto;}", ".b-context-menu {background: url("+css.u.menu+") repeat-y; border-right: 1px solid black; margin: 0; width: 200px;}", ".b-context-menu_wrapper {padding: 10px 0 5px;}", ".b-context-menu-list {line-height: 16px;}", ".b-context-menu-list li {padding: 4px 3px 4px 12px;}", // sidebar messages wrapper rules ".l-side-msg {position: absolute; right: -227px; text-align: center; top: 0px; width: 205px;}", ".b-sidebar-widget__comparison {background-color: #000000; border: 1px solid #000000; margin: 0; position: absolute; left: 223px; top: -26px; width: 203px;}", ".b-sidebar-widget {margin: 0;}", ".b-sidebar-widget_inner {padding: 10px}", ".b-sidebar-widget_inner__comparison {display: table; margin: 5px auto; padding: 0;}", ".b-sidebar-widget_title {margin: 0 0 5px; text-align: center;}", ".b-sidebar-widget_text {margin: 0 0 5px;}", ".b-box-shadow.js-recruitstation-recommended-widget {margin: 0; width: 242px;}", // userblock wrapper rules ".b-user-block {"+css.box+" margin: 0; width: 750px;}", ".b-head-block {background: url("+css.l[3]+") no-repeat 50% 100%; padding: 5px 0;}", ".b-user-block_info {height: 110px; padding: 3px 25px;}", ".b-personal-link {background-position: 0 12px; clear: left; padding: 10px 0 0 50px;}", ".b-personal-link_txt {width: 360px;}", ".b-user-block__sparks {background: url('"+css.l[0]+"/sparks.png') no-repeat 50% 0; width: 100%;}", ".b-personal-data {min-height: 180px; padding: 0 20px 15px;}", ".t-personal-data_ico {padding: 82px 5px 0;}", ".t-personal-data_ico__hitrate {background: url("+css.u.icon1+") no-repeat 50% 50px;}", ".t-personal-data_ico__tier {background: url("+css.u.icon2+") no-repeat 50% 50px;}", ".t-personal-data_value {font-size: 28px; line-height: 100%;}", ".t-personal-data_value.t-personal-data_value__pr {font-size: 36px;}", ".b-speedometer-body {padding: 20px 50px;}", ".b-speedometer {width: 33.3333%}", // ratings info rules ".t-ratings-info {table-layout: fixed;}", ".t-ratings-info th {font-size: 13px; font-weight: bold; line-height: 133%; padding: 20px 0 0;}", ".t-ratings-info td {font-family: 'WarHeliosCondCBold','Arial Narrow',arial,sans-serif; font-size: 36px; line-height: 133%}", ".t-ratings-info .rating-url_nm {background-image: url("+css.u.nmLogo+"); background-position: left center; background-repeat: no-repeat; padding: 0 0 0 20px;}", ".ratings-table {background: url("+css.l[3]+") no-repeat 50% 0; padding: 20px 25px 10px;}", ".t-table-ratings {width: 100%;}", ".t-table-ratings td {line-height: 130%; padding: 9px 12px 2px 0; vertical-align: bottom;}", ".t-table-ratings .td-value {padding-right: 0; text-align: right; white-space: nowrap;}", ".t-table-ratings .td-number {color: #BABCBF; font-weight: bold; padding-right: 0; text-align: right; width: 70px;}", ".t-table-ratings .td-center {line-height: 16px; padding: 9px 0 2px; text-align: center;}", ".t-table-ratings .td-rating-meter {background: url("+css.l[3]+") no-repeat 50% 100%;}", ".t-table-ratings .td-rating-meter td {padding: 0;}", ".t-table-ratings .rating-meter {background: url("+css.u.rat+") no-repeat; border: 1px solid #252527; border-radius: 3px; height: 3px; margin: 0 7px;}", ".t-table-ratings .rating-meter-dail_line {background: url("+css.u.rat+") no-repeat; box-shadow: 0 0 10px 1px rgba(221, 84, 12, 0.15), 0 0 3px 1px rgba(133, 18, 11, 0.25); height: 3px; width: 0;}", ".t-table-ratings .rating-meter-marker {background: url("+css.u.ratMark+") no-repeat; float: right; height: 13px; margin: -5px -2px 0 0; width: 5px;}", ".t-table-ratings .rating-meter_wn8 {background-position: 0 0;}", ".t-table-ratings .rating-meter_wn8 .rating-meter-dail_line {background-position: 0 -3px;}", ".t-table-ratings .rating-meter_wn7 {background-position: 0 -6px;}", ".t-table-ratings .rating-meter_wn7 .rating-meter-dail_line {background-position: 0 -9px;}", ".t-table-ratings .rating-meter_eff {background-position: 0 -12px;}", ".t-table-ratings .rating-meter_eff .rating-meter-dail_line {background-position: 0 -15px;}", ".wnelink {padding: 5px 25px 5px 0; text-align: right;}", ".wnelink_info {background-image: url("+css.l[4]+"), url("+css.l[2]+"); background-position: 4px 0px, right 0; padding: 0 9px 0 20px;}", ".wnelink_info:hover {background-position: 4px -17px, right -22px;}", // statistics wrapper rules ".b-statistics-wrpr {margin: 0 0 30px; overflow: auto;}", ".b-statistics-wrpr .t-dotted td {line-height: 23px; padding: 0;}", ".b-statistics-wrpr .t-dotted tr:hover td {color: #79797A;}", ".b-statistics-wrpr .t-dotted td.t-dotted_class-ico {line-height: 13px;}", ".b-statistics-wrpr .t-dotted td.t-dotted_class-ico img {margin: 2px 0 -1px;}", ".b-result {margin: 0 10px; width: 315px;}", ".b-result .t-dotted__fixed {table-layout: auto;}", ".b-result-classes {margin: 0 10px; width: 265px;}", ".b-result-classes span {color: #606061; display: inline-block; width: 48px;}", ".t-dotted td {background: url("+css.l[3]+") no-repeat 50% 100%;}", // cake diagram rules ".b-diagrams-sector {margin: 0 0 25px;}", ".b-diagrams-sector h3 {text-align: center;}", ".b-diagram-block {float: left; margin: 0 9px; width: 300px;}", ".b-diagram-wrpr {float: none; margin: 0 auto;}", ".t-dotted.t-dotted__diagram {margin-top: 0px; width: 100%;}", ".t-dotted_diagram-percent {display: inline-block; width: 40px;}", ".b-diagram-total {margin: 25px 0 0;}", ".b-diagram-tiers .js-results {display: inline-block; margin: 0 0 0 30px; text-align: right; width: 14px;}", ".reg-RUS .b-diagram-tiers .js-results {margin: 0 0 0 15px;}", ".b-diagram-tiers .t-dotted_diagram-percent {margin: 0 0 0 3px; width: 52px;}", ".b-diagram-ico_tier {background: url("+css.u.tiers+") no-repeat; padding-left: 30px;}", ".b-diagram-ico_tier-1 {background-position: 4px 1px;}", ".b-diagram-ico_tier-2 {background-position: 4px -14px;}", ".b-diagram-ico_tier-3 {background-position: 4px -29px;}", ".b-diagram-ico_tier-4 {background-position: 4px -45px;}", ".b-diagram-ico_tier-5 {background-position: 4px -59px;}", ".b-diagram-ico_tier-6 {background-position: 4px -74px;}", ".b-diagram-ico_tier-7 {background-position: 4px -89px;}", ".b-diagram-ico_tier-8 {background-position: 4px -104px;}", ".b-diagram-ico_tier-9 {background-position: 4px -120px;}", ".b-diagram-ico_tier-10 {background-position: 4px -134px;}", ".t-dotted__diagram tr td.t-dotted_diagram-last {width: 0;}", // achievement wrapper rules ".b-achievements-wrpr {margin: 16px 0 0;}", ".b-vertical-arrow {display: table; margin: 8px auto 0; padding: 2px 10px 0;}", ".js-short-achievements {margin: 15px 0 50px;}", ".js-full-achievements {margin: 0 37px 50px;}", ".reg-KR .js-full-achievements {margin: 0 34px 30px;}", ".b-achivements {display: table; margin: 0 auto; padding: 0 0 20px;}", ".b-achivements-head {margin-top: 15px;}", ".b-achivements_item {display: inline-table; float: inherit; margin: 5px 5px 0;}", ".js-full-achievements #js-achivement-medalTamadaYoshio {margin-left: 45px;}", ".js-full-achievements #js-achivement-tankExpert5 {margin-left: 245px;}", ".js-full-achievements #js-achivement-medalKay {margin-left: 125px;}", ".js-full-achievements #js-achivement-forTacticalOperations {margin-left: 165px;}", ".js-full-achievements #js-achivement-readyForBattleLT {margin-left: 245px;}", ".js-full-achievements #js-achivement-noMansLand {margin-left: 85px;}", ".js-full-achievements #js-achivement-ironMan {margin-left: 205px;}", // global rating rules ".b-composite-heading {margin: 21px 0 15px 400px; width: 553px;}", ".b-profile-ratings-date {margin-top: 1px}", ".b-leadership-info {display: table; margin: 0 auto;}", ".b-profile-link {display: table; margin: 14px auto 0}", ".b-msg-important__rating {display: table; margin: 5px auto 0;}", ".b-rating-dial__user {display: table; margin: 30px auto 22px;}", ".b-orange-arrow__leadership {display: table; margin: 0 auto;}", ".b-leadership-rating-text {text-align: center;}", ".l-leadership-info-alignment {text-align: center;}", // vehicle table rules ".b-vehicles-wrpr {margin: 20px 0;}", ".b-vehicles-header {display: table; margin: 0 auto 15px}", ".b-profile-vehicles-tankstat {margin: 0; position: absolute; right: 15px;}", ".b-profile-vehicles-tankstat_link {background-image: url("+css.u.nmLogo+"), url("+css.l[2]+"); background-position: left center, right 0px; padding: 0 9px 0 20px;}", ".b-profile-vehicles-tankstat_link:hover {background-position: left center, right -22px;}", ".t-profile__vehicle .t-profile_right {text-align: center;}", ".t-profile_dropdown-ico .tablesorter-header-inner {display: inherit;}", ".t-profile_tankstype-prem td {border-top: 2px dashed #212123;}", ".t-profile_tankstype-prem .b-tankstype-text {color: #FFC363;}", ".t-profile_tankstype-prem.t-profile_tankstype__empty .b-tankstype-text {color: rgba(255, 195, 99, 0.3);}", ".t-profile .t-profile_tankstype td {height: 50px; padding: 0; vertical-align: middle;}", ".b-tankstype-ico {display: table-cell;}", ".b-tankstype-ico__lighttank {background-position: 0 -114px;}", ".b-tankstype-ico__mediumtank {background-position: 0 -173px;}", ".b-tankstype-ico__heavytank {background-position: 0 5px;}", ".b-tankstype-ico__at-spg {background-position: 0 -232px;}", ".b-tankstype-ico__spg {background-position: 0 -54px;}", ".b-tankstype-ico__prem {background-position: 0 -291px;}", ".b-tankstype-ico__ten {background: none; color: #BBB7AC; font-size: 17px; font-weight: 100; padding: 0 0 3px; text-align: center;}", ".b-tankstype-text {display: table-cell; height: inherit; vertical-align: middle;}", ".t-profile .t-profile_tankstype__item td {height: 40px; padding: 0; vertical-align: middle;}", ".t-profile .t-profile_tankstype__item:hover td {background: rgba(0, 0, 0, 0.04); border-bottom: 1px solid rgba(255, 255, 255, 0); color: #BABCBF;}", ".t-profile .t-profile_tankstype td.t-profile_center div.hidden {display: none;}", ".t-profile .t-profile_tankstype td.t-profile_center span {display: inline-block; margin-left: 10px; text-align: left; width: 40px;}", ".b-armory-wrapper {height: inherit; margin: 0; padding: 0; width: 160px;}", ".b-armory-wrapper .b-armory-level {display: table-cell; font-size: inherit; height: inherit; position: inherit; vertical-align: middle; left: 0; top: 0;}", ".b-armory-wrapper img.png {height: 64px; margin: -50px 0 0 24px;}", ".b-name-vehicle {color: #BBB7AC; display: table-cell; height: inherit; vertical-align: middle;}", ".b-name-vehicle.b-gold-name {color: #FFC363;}", ".b-name-vehicle.b-red-name {color: #D00900;}", ".t-profile_dropdown-link {display: inherit;}", ".js-error-data {text-align: center;}", ".b-msg-error {display: table; margin: 0 auto;}", ".b-vehicle-detail_txt {margin: 0 auto 4px; text-align: center; width: 768px;}", ".b-vehicle-detail_link {display: table; margin: 0 auto;}", ".b-vehicle-slider {margin: 23px 64px 17px}", ".b-vehicle-slider_inner {width: 741px;}", ".b-vehicle-slider_prev {left: -12px;}", ".b-vehicle-slider_next {right: -12px;}", ".b-vehicle-minitable {margin: 0 43px; width: 350px;}", ".b-vehicle-minitable__right {float: left;}", // profile navigator ".b-profile-nav {text-align: center;}", ".wrapper-dropdown .b-profile-nav {float: left; padding: 7px 0 0;}", ".b-profile-nav a {background: url("+css.l[5]+") no-repeat; cursor:pointer; padding: 0 10px;}", ".b-profile-nav a.top {background-position: 100% 0px;}", ".b-profile-nav a.top:hover {background-position: 100% -36px;}", ".b-profile-nav a.bot {background-position: 100% -18px;}", ".b-profile-nav a.bot:hover {background-position: 100% -54px;}", ".b-profile-nav span {border-bottom: 1px dashed;}", // multiple usage rules ".b-orange-arrow__heading, .b-profile-ratings_link {margin: 4px 0 0;}" ]); // applies relevant style for own profile - login name delayed by Wargaming var userCheckSeq = 0, userChecker = setInterval(function() { var loginUser = d.getElementsByClassName('js-my_profile_nickname')[0].innerHTML.replace(/\s+/g, ''); userCheckSeq ++; if (loginUser == wg.name) { if (srv.s == "es") { profile_div.style.minHeight = "167px"; } else { profile_div.style.minHeight = "151px"; } clearInterval(userChecker); } else if (userCheckSeq == 5) { clearInterval(userChecker); } }, 1000); // end style // formula calculations and variables // premium tanks up to 0.9.7 var premArr = [ // russian "tetrarch_ll", "bt-sv", "ltp", "m3_stuart_ll", "t-127", "valentine_ll", "a-32", "matilda_ii_ll", "r108_t34_85m", "r117_t34_85_rudy", "t44_85", "t44_122", "r112_t54_45", "object_907", "churchill_ll", "kv-220_action", "kv-220", "r114_object_244", "object252", "r113_object_730", "kv-5", "r110_object_260", "su76i", "su_85i", "su100y", "su122_44", "r111_isu130", // german "h39_captured", "g108_pzkpfwii_ausfd", "pzii_j", "t-15", "g100_gtraktor_krupp", "s35_captured", "g107_pzkpfwIII_ausfk", "pziv_hydro", "t-25", "pziv_schmalturm", "pzv_pziv", "pzv_pziv_ausf_alfa", "panther_m10", "g106_pzkpfwpanther_ausff", "g105_t-55_nva_ddr", "b-1bis_captured", "lowe", "vk7201", "g104_stug_iv", "dickermax", "e-25", "g109_steyr_wt", "jagdtiger_sdkfz_185", // american "t1_e6", "t2_lt", "t7_combat_car", "m22_locust", "mtls_1g14", "a78_m4_improved", "m4a2e4", "ram-ii", "a104_m4a3e8a", "t23e3", "t26_e4_superpershing", "t95_e2", "m60", "t95_e6", "t14", "m6a2e1", "t34_hvy", "a102_t28_concept", // british "gb76_mk_vic", "gb68_matilda_black_prince", "gb70_n_fv4202_105", "gb51_excelsior", "gb63_tog_ii", "gb71_at_15a", "gb78_sexton_i", // french "f69_amx13_57_100", "f69_amx13_57_100_grandfinal", "f68_amx_chasseur_de_char_46", "fcm_50t", "fcm_36pak40", "_105_lefh18b2", // chinese "ch02_type62", "ch24_type64", "ch14_t34_3", "ch01_type59", "ch01_type59_gold", "ch23_112", "ch03_wz-111", // japanese "te_ke", "ke_ni_b", "chi_nu_kai", "j18_sta_2_3" ]; // variable for statistics var s = { b:{0:{c:0,p:0},1:{c:0,p:0},2:{c:0,p:0},3:{c:0,p:0},4:{c:0,p:0},5:{c:0,p:0}}, // badges s:{p:{r:[],b:0,w:0,bg:0},t:{r:[],b:0,w:0,bg:0}}, // custom tank tables t:{1:{b:0,c:0},2:{b:0,c:0},3:{b:0,c:0},4:{b:0,c:0},5:{b:0,c:0},6:{b:0,c:0},7:{b:0,c:0},8:{b:0,c:0},9:{b:0,c:0},10:{b:0,c:0}}, // tiers v:{a:0,bats:0,tier:0}, // vehicles h:{}, // hex colours w:{e:{frag:0,dmg:0,spot:0,def:0,win:0},r:{},w:{},n:{}}, // wn8 expected values f:{wn8:{},wn7:{},eff:{}} // formulas }; // total mastery badge and colouring tank table category rows var typeRow_class = d.getElementsByClassName('t-profile_tankstype js-table-dropdown-link'); for (var _tr=0; _tr"+filter(typeWins,2)+""; } // average tier, colouring premium tanks and winrates in vehicle tables var vehRow_class = d.getElementsByClassName('t-profile_tankstype t-profile_tankstype__item'), vehRowStats_class = d.getElementsByClassName('t-profile_slidedown tablesorter-childRow'); for (var _vr=0; _vr"+filter(vehWins,2)+""; // vehicle badges s.b[vehBadge].c ++; // vehicle battles per tier and amount s.t[vehTier].b += vehBats; s.t[vehTier].c ++; s.v.tier += vehTier*vehBats; s.v.bats += vehBats; s.v.a ++; // check if vehicle exists in wnefficiency value array - report if not and exclude from wn8 var vehStat; for (var _so=0; _so -1) { s.s.p.b += vehBats; s.s.p.w += vehWins; vehSpan[1].className += " b-gold-name"; s.s.p.r.push([vehRow_class[_vr].cloneNode(true), vehRowStats_class[_vr].cloneNode(true)]); if (vehRow_class[_vr].cells[3].innerHTML.length > 2) { s.s.p.bg ++; } } // get info for tier 10 table if (vehTier == 10) { s.s.t.b += vehBats; s.s.t.w += vehWins; s.s.t.r.push([vehRow_class[_vr].cloneNode(true), vehRowStats_class[_vr].cloneNode(true)]); if (vehRow_class[_vr].cells[3].innerHTML.length > 2) { s.s.t.bg ++; } } } // finding statistic tables var mb_table = d.getElementsByClassName('b-result-classes')[0].getElementsByClassName('t-dotted')[0], or_table = d.getElementsByClassName('b-result')[0].getElementsByClassName('t-dotted')[0], bp_table = d.getElementsByClassName('b-result')[1].getElementsByClassName('t-dotted')[0], sm_ratio = d.getElementsByClassName('b-speedometer-ratio'); // fetching info, calculate averages, colourize and store into var s // r = raw stats s.r = { "days": (new Date() - new Date(d.getElementsByClassName('js-date-format')[0].getAttribute('data-timestamp')*1000))/1000/60/60/24, "bats": filter(or_table.rows[0].cells[1].innerHTML,1), "wins": filter(or_table.rows[1].cells[1].innerHTML.match(/([\d.,\s| ]+\d+)\s/)[1],1), "loss": filter(or_table.rows[2].cells[1].innerHTML.match(/([\d.,\s| ]+\d+)\s/)[1],1), "surv": filter(or_table.rows[3].cells[1].innerHTML.match(/([\d.,\s| ]+\d+)\s/)[1],1), "exp": filter(or_table.rows[4].cells[1].innerHTML,1), "expA": filter(or_table.rows[5].cells[1].innerHTML,1), "expM": filter(or_table.rows[6].cells[1].innerHTML,1), "frag": filter(bp_table.rows[0].cells[1].innerHTML,1), "spot": filter(bp_table.rows[1].cells[1].innerHTML,1), "hits": parseFloat(bp_table.rows[2].cells[1].innerHTML.replace(/[,]/g,".")), "dmgD": filter(bp_table.rows[3].cells[1].innerHTML,1), "caps": filter(bp_table.rows[5].cells[1].innerHTML,1), "defs": filter(bp_table.rows[6].cells[1].innerHTML,1), "dths": filter(sm_ratio[0].innerHTML.match(/\/(.+)$/)[1],1), "dmgR": filter(sm_ratio[1].innerHTML.match(/\/(.+)$/)[1],1) }; s.r.draw = s.r.bats-(s.r.wins+s.r.loss); s.r.winLR = s.r.wins/s.r.loss; // a = average stats s.a = { "bats": s.r.bats/s.r.days, "wins": (s.r.wins/s.r.bats)*100, "loss": (s.r.loss/s.r.bats)*100, "draw": (s.r.draw/s.r.bats)*100, "surv": (s.r.surv/s.r.bats)*100, "frag": s.r.frag/s.r.bats, "dths": s.r.dths/s.r.bats, "spot": s.r.spot/s.r.bats, "dmgD": s.r.dmgD/s.r.bats, "dmgR": s.r.dmgR/s.r.bats, "caps": s.r.caps/s.r.bats, "defs": s.r.defs/s.r.bats, "tier": s.v.tier/s.v.bats }; // c = coloured stats s.c = { "winsR": colStat(s.a.wins, "wr", 2, "%"), "lossR": colStat(s.a.loss, "wr", 2, "%"), "survR": colStat(s.a.surv, "sr", 2, "%"), "hitsR": colStat(s.r.hits, "hr", 2, "%"), "drawR": colStat(s.a.draw, "", 2, "%"), "batsC": colStat(s.r.bats, "bat", 0), "dmgTier": colStat(s.a.dmgD/s.a.tier, "dmg", 0, "", s.a.dmgD), "api": "API: "+filter(s.v.bats,2)+"" }; // calculate badge percent s.b[5].c = s.v.a; s.b[5].p = parseFloat((s.v.a/s.v.a*100).toFixed(0)); for (var _b in s.b) { if (s.b.hasOwnProperty(_b)) { s.b[_b].p = parseFloat((s.b[_b].c/s.b[5].c*100).toFixed(0)); } } // prepare numbers for WN8 formula // r = ratios s.w.r = { "frag": s.w.e.frag/s.v.bats, "dmg": s.w.e.dmg/s.v.bats, "spot": s.w.e.spot/s.v.bats, "def": s.w.e.def/s.v.bats, "win": s.w.e.win/s.v.bats }; // w = weighted s.w.w = { "frag": s.a.frag/s.w.r.frag, "dmg": s.a.dmgD/s.w.r.dmg, "spot": s.a.spot/s.w.r.spot, "def": s.a.defs/s.w.r.def, "win": s.a.wins/s.w.r.win }; // n = normalized s.w.n.win = Math.max((s.w.w.win-0.71)/(1-0.71),0); s.w.n.dmg = Math.max((s.w.w.dmg-0.22)/(1-0.22),0); s.w.n.frag = Math.max(Math.min(s.w.n.dmg+0.2,(s.w.w.frag-0.12)/(1-0.12)),0); s.w.n.spot = Math.max(Math.min(s.w.n.dmg+0.1,(s.w.w.spot-0.38)/(1-0.38)),0); s.w.n.def = Math.max(Math.min(s.w.n.dmg+0.1,(s.w.w.def-0.10)/(1-0.10)),0); // calculate ratings // WN8 s.f.wn8 = (function() { var frag = 210*s.w.n.dmg*s.w.n.frag, dmg = 980*s.w.n.dmg, spot = 155*s.w.n.frag*s.w.n.spot, def = 75*s.w.n.def*s.w.n.frag, win = 145*Math.min(1.8,s.w.n.win), rating = frag+dmg+spot+def+win, pct = (rating<=colArr.sUni[6]) ? (rating/colArr.sUni[6])*100 : 100, scale = (rating<=colArr.sUni[6]) ? Math.max(0, Math.min(100,rating*(rating*(rating*(rating*(rating*(rating*0.00000000000000000009553-0.0000000000000001644)-0.00000000000426)+0.0000000197)-0.00003192)+0.056265)-0.157)) : 100; return { frag: frag, dmg: dmg, spot: spot, def: def, win: win, rating: rating, pct: pct, scale: scale, ratCol: (isFinite(rating)) ? colStat(rating,"wn8",2) : loc.p18, scaleCol: colStat(scale,"wn8",2) }; })(); // WN7 - legacy support s.f.wn7 = (function() { var frag = s.a.frag*(1240-1040/(Math.pow(Math.min(s.a.tier,6),0.164))), dmg = s.a.dmgD*530/(184*Math.exp(0.24*s.a.tier)+130), spot = s.a.spot*125*Math.min(s.a.tier,3)/3, def = Math.min(2.2,s.a.defs)*100, win = (((185/(0.17+Math.exp((s.a.wins-35)*-0.134)))-500)*0.45), norm = -Math.abs((((5-Math.min(s.a.tier,5))*125)/(1+Math.exp(s.a.tier-Math.pow(s.r.bats/220,3/s.a.tier))*1.5))), rating = frag+dmg+spot+def+win+norm, pct = (rating<=colArr.sUni[7]) ? (rating/colArr.sUni[7])*100 : 100, scale = (rating<=colArr.sUni[7]) ? Math.max(0, Math.min(100,rating*(rating*(rating*(rating*(rating*(rating*0.00000000000000000466-0.000000000000032413)+0.00000000007524)-0.00000006516)+0.00001307)+0.05153)-3.9)) : 100; return { frag: frag, dmg: dmg, spot: spot, def: def, win: win, norm: norm, rating: rating, pct: pct, scale: scale, ratCol: colStat(rating,"wn7",2), scaleCol: colStat(scale,"wn7",2) }; })(); // efficiency - improved s.f.eff = (function() { var frag = s.a.frag*250, dmg = s.a.dmgD*(10/(s.a.tier+2))*(0.23+2*s.a.tier/100), spot = s.a.spot*150, cap = (Math.log(s.a.caps+1)/Math.log(1.732))*150, def = s.a.defs*150, rating = frag+dmg+spot+cap+def, pct = (rating<=colArr.sUni[8]) ? (rating/colArr.sUni[8])*100 : 100, scale = (rating<=colArr.sUni[8]) ? Math.max(0, Math.min(100,rating*(rating*(rating*(rating*(rating*(rating*0.00000000000000003388-0.0000000000002469)+0.00000000069335)-0.00000095342)+0.0006656)-0.1485)-0.85)) : 100; return { frag: frag, dmg: dmg, spot: spot, cap: cap, def: def, rating: rating, pct: pct, scale: scale, ratCol: colStat(rating,"eff",2), scaleCol: colStat(scale,"eff",2) }; })(); // end formula calculations and variables // start modifying and enhancing the rest of the page // removing elements var layoutfix_class = d.getElementsByClassName('b-hr-layoutfix'); layoutfix_class[0].parentNode.removeChild(layoutfix_class[0]); // profile wrapper var profile_div = elem("div", "b-profile-wrpr", ""), profileHead_div = elem("div", "b-profile-header", sc.link); profileName_class.lastElementChild.innerHTML += " - "+s.r.days.toFixed(0)+" "+loc.p03; profileName_class.parentNode.insertBefore(profile_div, profileName_class.nextSibling); profile_div.appendChild(profileHead_div); profile_div.appendChild(profileName_class); // profile header - check for missing battles and notify var profileError_div = elem("div", "b-profile-error", loc.p69); if (s.v.bats !== s.r.bats) { profileError_div.style.display="inline-block"; } else { s.c.api = " "; } profileHead_div.insertBefore(profileError_div, profileHead_div.firstElementChild); // button for saving stats to clipboard var ratingsClipboard = loc.p72+" "+wg.name+": \n"+loc.p73+" "+s.r.bats+" \nWR: "+s.a.wins.toFixed(2)+" \nWN8: "+s.f.wn8.rating.toFixed(2)+" \nWN7: "+s.f.wn7.rating.toFixed(2)+" \nEff: "+s.f.eff.rating.toFixed(2), ratingsClipboard_div = elem("div", "b-ratingsClip", ""+loc.p63+""); profileHead_div.insertBefore(ratingsClipboard_div, profileHead_div.firstElementChild.nextSibling); // background behind profile wrapper var background_div = elem("div", "b-background", ""); background_div.style.background = s.h.wn8; profile_div.parentNode.insertBefore(background_div, profile_div); // page navigation var dropdown_class = d.getElementsByClassName('wrapper-dropdown')[0]; content_class.appendChild(elem("div", "b-profile-nav", ""+loc.p02+"")); dropdown_class.appendChild(elem("div", "b-profile-nav", ""+loc.p01+"")); // player statistic links var profileStat_table = elem("table", "t-profile-table", ""), statUrl = [ [ [loc.p04], [srv.wl, "WoTLabs"], [srv.nm, "Noobmeter"], [srv.wn, "Wot-news"] ], [ [""], [srv.ws, "WoTstats"], (wg.srv=="ru") ? [srv.kttc, "KTTC"] : [srv.cs, "WoT-CS"], (wg.srv=="ru") ? [srv.wots, "WOTS"] : [srv.wlife, "WoT-Life"] ], [ [loc.p05], [srv.wl, ""+loc.p06+""], [srv.wl, ""+loc.p07+""] ], [ [loc.p08], [srv.wr, "WoTReplays"] ] ]; linksHnd(profileStat_table, statUrl, "table"); profileName_class.appendChild(profileStat_table); // player clan history var clanHist_div = elem("div", "b-clanHistory-wrpr", ""+loc.p74+""); profile_div.appendChild(clanHist_div); // clan handler - clan container is delayed by Wargaming var clanBlock = d.getElementById('js-clan-block-container'), clanChecker, clanCheckSeq = 0, clanStat_table = elem("table", "", ""); clanStat_table.id = "js-profile-clan-table"; profileName_class.parentNode.insertBefore(clanBlock, profileName_class.nextSibling); clanChecker = setInterval(function() { var ci_class = d.getElementById('js-profile-clan'), ct_class = d.getElementById('js-profile-clan-table'); clanCheckSeq ++; if (ci_class !== null && ct_class === null) { // clan info var cl_class = ci_class.getElementsByTagName('a')[1]; wg.clan.id = cl_class.getAttribute('href').match(/\/(\d+)/)[1]; wg.clan.name = cl_class.getElementsByTagName('span')[0].innerHTML.match(/[\w.+\-]+/)[0]; // clan statistic links var clanUrl = [ [ [loc.p66], [srv.wl, "WoTLabs"], [srv.nm, "Noobmeter"], [srv.wn, "Wot-news"] ], [ [""], [srv.cs, "WoT-CS"], (wg.srv=="ru") ? [srv.kttc, "KTTC"] : [srv.wlife, "WoT-Life"] ], [ [loc.p67], [srv.wr, "WoTReplays"] ] ]; linksHnd(clanStat_table, clanUrl, "table"); clanBlock.appendChild(clanStat_table); // clan history retrieval if (!!srv.cs) reqHnd(sc.chApi, chHnd, chHnd_error); clearInterval(clanChecker); } else if (clanCheckSeq == 5 || ct_class !== null) { // clan history retrieval if (!!srv.cs) reqHnd(sc.chApi, chHnd, chHnd_error); clearInterval(clanChecker); } }, 1000); // move fame points block, if it exists var gp_class = d.getElementById('js-glory-points-block'); if (gp_class) { profile_div.appendChild(gp_class); } // move sidebar profile_div.appendChild(sidebar_class); // end profile wrapper // personal data - modify table - add ratings var persDataTable = d.getElementsByClassName('t-personal-data')[0]; persDataTable.rows[0].cells[0].innerHTML = loc.p09; // winrate persDataTable.rows[1].cells[0].innerHTML = s.c.winsR; persDataTable.rows[0].cells[1].innerHTML = loc.p10; // battles persDataTable.rows[1].cells[1].innerHTML = s.c.batsC; persDataTable.rows[0].cells[1].parentNode.insertBefore(elem("th", "t-personal-data_ico t-personal-data_ico__exp", loc.p11), persDataTable.rows[0].cells[1].nextSibling); // xp persDataTable.rows[1].cells[1].parentNode.insertBefore(elem("td", "t-personal-data_value", filter(s.r.expA,2)), persDataTable.rows[1].cells[1].nextSibling); persDataTable.rows[0].cells[4].innerHTML = loc.p70; persDataTable.rows[1].cells[3].innerHTML = s.c.hitsR; // hitrate persDataTable.rows[0].cells[4].className = "t-personal-data_ico t-personal-data_ico__hitrate"; persDataTable.rows[0].cells[5].innerHTML = loc.p71; // damage persDataTable.rows[1].cells[4].innerHTML = s.c.dmgTier; persDataTable.rows[0].appendChild(elem("th", "t-personal-data_ico t-personal-data_ico__tier", loc.p12)); // avg tier persDataTable.rows[1].appendChild(elem("td", "t-personal-data_value", s.a.tier.toFixed(2))); persDataTable.appendChild(elem("tbody", "t-ratings-info", ""+loc.p15+" v"+wnExpVers[1]+""+loc.p30+""+loc.p16+""+loc.p17+""+s.f.wn8.ratCol+""+s.f.wn7.ratCol+""+s.f.eff.ratCol+""+loc.p18+"")); // speedometer - win/loss ratio var smBody_class = d.getElementsByClassName('b-speedometer-body')[0], smWinWeight = (isFinite(s.r.winLR)) ? s.r.winLR.toFixed(2) : 1, smWinArrow = (isFinite(s.r.winLR)) ? Math.min(30*(s.r.winLR-1),31) : 0; smBody_class.appendChild(elem("div", "b-speedometer", "

"+loc.p13+"

"+smWinWeight+"

"+filter(s.r.wins,2)+" / "+filter(s.r.loss,2)+"

")); // performance ratings calculations table var rTable_div = elem("div", "ratings-table", "

"+loc.p19+"

"), rTable = elem("table", "t-table-ratings", ""), ratingsArr = [ [loc.p20, loc.p21, loc.p22, loc.p23, loc.p24, loc.p25, loc.p26, loc.p27, loc.p28], ["wn8", s.f.wn8.pct, loc.p29, s.f.wn8.ratCol, s.f.wn8.scaleCol, s.f.wn8.frag.toFixed(2), s.f.wn8.dmg.toFixed(2), s.f.wn8.spot.toFixed(2), "–", s.f.wn8.def.toFixed(2), s.f.wn8.win.toFixed(2)], ["wn7", s.f.wn7.pct, loc.p30, s.f.wn7.ratCol, s.f.wn7.scaleCol, s.f.wn7.frag.toFixed(2), s.f.wn7.dmg.toFixed(2), s.f.wn7.spot.toFixed(2), "–", s.f.wn7.def.toFixed(2), s.f.wn7.win.toFixed(2)], ["eff", s.f.eff.pct, loc.p31, s.f.eff.ratCol, s.f.eff.scaleCol, s.f.eff.frag.toFixed(2), s.f.eff.dmg.toFixed(2), s.f.eff.spot.toFixed(2), s.f.eff.cap.toFixed(2), s.f.eff.def.toFixed(2), "–" ] ]; for (var _r=0; _r
")); } } rTable_div.appendChild(rTable); userBlockSprk.appendChild(rTable_div); // link to WN thread userBlockSprk.appendChild(elem("div", "wnelink", ""+loc.p32+"")); // end performance ratings calculations table // statistics wrapper var userBlock_div = d.getElementsByClassName('b-userblock-wrpr')[0], statistics_div = d.getElementsByClassName('b-result-classes')[0].parentNode; statistics_div.className = "b-statistics-wrpr"; userBlock_div.parentNode.insertBefore(statistics_div, userBlock_div.nextSibling); // clean the old tables and populate them with new values (master badges, overall results and battle performance) var statTables = [ [ ["", loc.p33, s.b[4].c+"("+s.b[4].p+"%)"], ["", loc.p34, s.b[3].c+"("+s.b[3].p+"%)"], ["", loc.p35, s.b[2].c+"("+s.b[2].p+"%)"], ["", loc.p36, s.b[1].c+"("+s.b[1].p+"%)"], ["", loc.p37, s.b[0].c+"("+s.b[0].p+"%)"], ["", loc.p38, s.b[5].c+"("+s.b[5].p+"%)"] ], [ [loc.p39, filter(s.r.bats,2), s.c.api], [loc.p40, filter(s.r.wins,2), "("+s.c.winsR+")"], [loc.p41, filter(s.r.loss,2), "("+s.c.lossR+")"], [loc.p42, filter(s.r.draw,2), "("+s.c.drawR+")"], [loc.p43, filter(s.r.surv,2), "("+s.c.survR+")"], [loc.p44, "", s.a.bats.toFixed(2)], [loc.p45, "", filter(s.r.exp,2)], [loc.p46, "", filter(s.r.expA,2)], [loc.p47, "", filter(s.r.expM,2)] ], [ [loc.p48, filter(s.r.frag,2), s.a.frag.toFixed(2)], [loc.p49, filter(s.r.dths,2), s.a.dths.toFixed(2)], [loc.p50, filter(s.r.spot,2), s.a.spot.toFixed(2)], [loc.p51, "", s.c.hitsR], [loc.p52, filter(s.r.dmgD,2), s.c.dmgTier], [loc.p53, filter(s.r.dmgR,2), filter(s.a.dmgR.toFixed(0),2)], [loc.p54, filter(s.r.caps,2), s.a.caps.toFixed(2)], [loc.p55, filter(s.r.defs,2), s.a.defs.toFixed(2)], [loc.p56, "", s.a.tier.toFixed(2)] ], [ mb_table, or_table, bp_table ] ]; mb_table.innerHTML = ""; or_table.innerHTML = ""; bp_table.innerHTML = ""; for (var _s=0; _s<(statTables.length-1); ++_s) { for (var _sr=0; _sr"+statTables[_s][_sr][0]+""+statTables[_s][_sr][1]+""+statTables[_s][_sr][2]+"")); } } // cake diagrams - adding tier diagram var diagSector_class = d.getElementsByClassName('b-diagrams-sector')[0], diagTier_div = elem("div", "b-diagram-block b-diagram-tiers js-diagram-block", "

"+loc.p57+"

"+s.v.a+"
"), diagTier_table = elem("table", "t-dotted t-dotted__diagram js-diagram-mechanism-legend", ""), diagTierCol = {1:"496877",2:"2b591f",3:"831818",4:"303766",5:"814f07",6:"1A775F",7:"B0D23A",8:"763D46",9:"936C19",10:"471952"}; diagTier_div.appendChild(diagTier_table); diagSector_class.insertBefore(diagTier_div, diagSector_class.firstElementChild.nextSibling); for (var _t in s.t) { if (s.t.hasOwnProperty(_t)) { if (s.t[_t].c !== 0) { diagTier_table.appendChild(elem("tr", "", ""+filter(s.t[_t].b,2)+"("+(s.t[_t].b/s.r.bats*100).toFixed(2)+"%)"+s.t[_t].c+"("+(s.t[_t].c/s.v.a*100).toFixed(2)+"%)"+loc.p58+" "+_t+"#"+diagTierCol[_t]+"")); } } } diagSector_class.firstElementChild.innerHTML += "

"+loc.p59+" "+s.v.a+"

"; // fix for cake diagram in chrome if (web.chrome) { $('.js-diagram-block').each(function() { var items = [], values = [], colors = [], results = [], legend, result, holder; holder = $('.b-diagram', this).attr('id'); $('.js-diagram-mechanism-legend tr', this).each(function () { items.push($(this)); values.push(parseInt($('.js-value', this).text(), 10)); colors.push($('.js-colors', this).text()); results.push($('.js-results', this).text()); legend = $('.js-diagram-mechanism-legend'); result = $('#' + holder).next().find('.js-result'); }); new Raphael(holder, 630, 630).pieChart(65, 65.5, 53.5, items, values, colors, results, legend, result); }); } // achievements wrapper var medal_div = elem("div", "b-achievements-wrpr", ""), medalHeader_div = elem("div", "b-head-block", ""), medalHeader_class = d.getElementsByClassName('js-achievements-header')[0], medalClassArr = ["b-profile-item-empty","js-achivements-showhide","js-short-achievements","js-full-achievements"]; medalHeader_div.appendChild(medalHeader_class); medal_div.appendChild(medalHeader_div); for (var _m=0; _m"+loc.p60+""+loc.p61+""), vehicles_h3_class = vehTable_class.previousElementSibling.previousElementSibling; vehicles_h3_class.className = "b-profile-ratings_title"; vehiclesHeader_div.insertBefore(vehicles_h3_class, vehiclesHeader_div.firstChild); vehicles_div.appendChild(vehiclesHeader_div); vehTable_class.parentNode.insertBefore(vehicles_div, vehTable_class); vehicles_div.appendChild(vehTable_class); // add a premium tanks table to the vehicle table var premHBody = elem("tbody", "", ""), premTBody = elem("tbody", "sortable", ""); vehTable_class.appendChild(premHBody); if (s.s.p.r.length === 0) { premHBody.appendChild(elem("tr", "t-profile_tankstype t-profile_tankstype-prem t-profile_tankstype__empty", ""+loc.p62+" –––")); } else { premHBody.className = "tablesorter-no-sort"; premHBody.appendChild(elem("tr", "t-profile_tankstype t-profile_tankstype-prem js-table-dropdown-link", ""+loc.p62+" "+s.s.p.r.length+""+filter(s.s.p.b,2)+""+colStat((s.s.p.w/s.s.p.b)*100, "wrv", 0, "%")+""+filter(s.s.p.w,2)+""+s.s.p.bg+"")); premTBody.style.display="none"; vehTable_class.appendChild(premTBody); for (var _p=0; _p"+loc.p68+" –––")); } else { tenHBody.className = "tablesorter-no-sort"; tenHBody.appendChild(elem("tr", "t-profile_tankstype js-table-dropdown-link", ""+loc.p68+" "+s.s.t.r.length+""+filter(s.s.t.b,2)+""+colStat((s.s.t.w/s.s.t.b)*100, "wrv", 0, "%")+""+filter(s.s.t.w,2)+""+s.s.t.bg+"")); tenTBody.style.display="none"; vehTable_class.appendChild(tenTBody); for (var _x=0; _x"; } // end tableBattles } // end wg.player // matches url with clan page else if (wg.clans) { // getting claninfo wg.clan.id = wg.href.match(/\/(\d+)/)[1]; wg.clan.name = d.getElementsByClassName('js-clan-tag')[0].innerHTML.match(/[\w.+\-]+/)[0]; // style contents styleCSS([ ".b-scriptlink {font-size: 12px; padding: 6px 10px 5px;}", ".clan_info {float: left; margin-left: 18px; max-width: 500px;}", ".clan-links {float: right; display: inline-block;}", ".clan-links li.statname {margin: 0;}", ".clan-links li {margin-left: 10px;}" ]); // end style // script link var clanHead_div = elem("li", "global-nav__item", sc.link), navService_class = d.getElementsByClassName('global-nav__service')[0]; navService_class.insertBefore(clanHead_div, navService_class.firstChild); // script link var menu_class = d.getElementsByClassName('js-menu')[2], menuNick = menu_class.getElementsByTagName('a')[0].innerHTML.match(/(\w)+/)[0], menuLink = elem("li", "global-nav__submenu-item", "My Profile"); menu_class.getElementsByTagName('ul')[0].insertBefore(menuLink, menu_class.getElementsByTagName('ul')[0].firstChild); // clan statistic links var clan_class = d.getElementsByClassName('clan')[1], clanStat_list = elem("ul", "clan-links", ""), clanUrl = [ [loc.c01], [srv.wl, "WoTLabs"], [srv.nm, "Noobmeter"], [srv.wn, "Wot-news"], [srv.cs, "WoT-CS"], (wg.srv=="ru") ? [srv.kttc, "KTTC"] : [srv.wlife, "WoT-Life"], [loc.c02], [srv.wr, "WoTReplays"] ]; linksHnd(clanStat_list, clanUrl, "list"); clan_class.appendChild(clanStat_list); } // end wg.clans // helper functions // style handler function styleCSS(text) { style.textContent = text.toString().replace(/\}(,)/g,"}\n"); } // filter function filter(input, type) { var inputStr = input.toString(); switch(type) { case (1): // input string into number return parseFloat(inputStr.replace(/[^\d]/g,"")); case (2): // output number with locale symbol return inputStr.replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1"+loc.sym); case (3): // remove all symbols return inputStr.replace(/[^\w]/g,""); default: console.error("Error filtering: ", input); return input; } } // colouring function colStat(input, type, dec, sym, ext) { var color = colArr.dft[0], output = input.toFixed(dec); if (sym) { output += sym; } switch(type) { case ("bat"): output = filter(input,2); break; case ("dmg"): output = filter(ext.toFixed(0),2); break; default: break; } if (type !== "") { if (s.h[type]) { color = s.h[type]; } else if (type == "wrv") { color = colStatArr(input, "wr"); } else { color = colStatArr(input, type); s.h[type] = color; } } return ""+output+""; } function colStatArr(input, type) { var color; for (var _c in colArr) { if (colArr.hasOwnProperty(_c)) { if (input >= colArr[_c][colArr.id[type]]) { color = colArr[_c][0]; break; } } } return color || colArr.beg[0]; } // quick creation of element function elem(tag, name, html, type) { var element = d.createElement(tag); if (name) {element.className = name;} if (html) {element.innerHTML = html;} if (type) {element.type = type;} return element; } // links handler function linksHnd(parent, links, type) { for (var _l=0; _l 0) { for (var _h=0; _h["+ch[_h].clan_tag+"]"); clanHist_div.insertBefore(clanHist_span, clanHist_div.firstChild.nextSibling); } prevClan = ch[_h].clan_tag; } } else { clanHist_div.appendChild(elem("span", "clantag", loc.p76)); } } // end clan history handler // retrieval function function reqHnd(url, handler, error) { GM_xmlhttpRequest({ method: "GET", url: url, headers: { "Accept": "text/xml" }, onload: function(resp) { if (resp.readyState == 4 && resp.status == 200 && resp.statusText == "OK") { handler(resp); } else { error(resp); } }, onerror: function(resp) { error(resp); } }); } // global functions inserted into head // clipboard helper function copyClipboard() { var cpText = document.getElementsByClassName('ratingsClip-holder')[0].innerHTML, cpLoc = document.getElementsByClassName('ratingsClip-holder')[1].innerHTML; window.prompt(cpLoc, cpText); } // end global functions }());