Advertisement
PersonalUnknown

WOT invite stats

Jul 23rd, 2014
2,025
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name       WOT invite stats
  3. // @version    1.0.2
  4. // @description Show stats
  5. // @updateURL http://pastebin.com/raw.php?i=DLLiVKmc
  6. // @downloadURL http://pastebin.com/raw.php?i=DLLiVKmc
  7. // @include    http://worldoftanks.ru/uc/invites/*
  8. // @match    http://worldoftanks.ru/uc/invites/*
  9. // @grant       none
  10. // ==/UserScript==
  11.  
  12. $('div[id^="js-invite-"]').each(function () {
  13.     var color = {
  14.         "very_bad" : "#FE0E00", // very bad   / очень плохо
  15.         "bad" : "#FE7903", // bad        / плохо
  16.         "normal" : "#F8F400", // normal     / средне
  17.         "good" : "#60FF00", // good       / хорошо
  18.         "very_good" : "#02C9B3", // very good  / очень хорошо
  19.         "unique" : "#D042F3" // unique     / уникально
  20.     };
  21.     $(this).find('.personal-data').remove();
  22.     var obj = $(this).find('.b-header-h3__first');
  23.     console.log(obj.children('a').attr('href'));
  24.     $.ajax({
  25.         type : "GET",
  26.         url : obj.children('a').attr('href'),
  27.         success : function (html) {
  28.             var a = (html.match(/<table class="t-personal-data">([\S\s]*?)<\/table>/gmi) || [''])[0],
  29.             b = (a.match(/<th[^<>]*>([\S\s]*?)<\/th>/gmi) || []).map(function (i) {
  30.                 return i.replace(/<[^<>]*>/gmi, '').trim()
  31.             }),
  32.             c = (a.match(/<td[^<>]*>([\S\s]*?)<\/td>/gmi) || []).map(function (i) {
  33.                 return parseFloat(i.replace(/<[^<>]*>|\%|\s/gmi, '').trim());
  34.             });
  35.             var d = [],
  36.             i = 0;
  37.             while (b.length > 0) {
  38.                 if (i === 2) {
  39.                     var e = b.shift().split("\n");
  40.                     d.push([e[0].trim(), parseFloat(e[1].replace(/\s*/gmi, '').trim())]);
  41.                 } else {
  42.                     d.push([b.shift(), c.shift()]);
  43.                 }
  44.                 i++;
  45.             }
  46.             obj.after('<table class="personal-data">' + d.map(function (i) {
  47.         var setcolor='#FFFFFF';
  48.         if (i[0]==='Процент побед'){
  49.           if (i[1]<46.5) setcolor=color["very_bad"];else
  50.           if (i[1]<48.5) setcolor=color["bad"];else
  51.           if (i[1]<51.5) setcolor=color["normal"];else
  52.           if (i[1]<56.5) setcolor=color["good"];else
  53.           if (i[1]<64.5) setcolor=color["very_good"];else
  54.           if (i[1]<101) setcolor=color["unique"];
  55.         }
  56.         if (i[0]==='Количество боёв'){
  57.           if (i[1]<2000) setcolor=color["very_bad"];else
  58.           if (i[1]<5000) setcolor=color["bad"];else
  59.           if (i[1]<9000) setcolor=color["normal"];else
  60.           if (i[1]<14000) setcolor=color["good"];else
  61.           if (i[1]<20000) setcolor=color["very_good"];else
  62.           if (i[1]<999000) setcolor=color["unique"];
  63.         }
  64.         if (i[0]==='Личный рейтинг'){
  65.           if (i[1]<2000) setcolor=color["very_bad"];else
  66.           if (i[1]<3000) setcolor=color["bad"];else
  67.           if (i[1]<5000) setcolor=color["normal"];else
  68.           if (i[1]<6000) setcolor=color["good"];else
  69.           if (i[1]<7000) setcolor=color["very_good"];else
  70.           if (i[1]<99000) setcolor=color["unique"];
  71.         }
  72.         return '<tr><td>' + i[0] + '&nbsp;</td><td style="text-align:right;"><b style="color:'+setcolor+';">' + i[1] + '<b></td></tr>'
  73.                 }).join('') + '</table>');
  74.         }
  75.     });
  76. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement