Advertisement
lukassz111

vulcan.user

Oct 26th, 2016
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name        vulcan
  3. // @namespace   com.lukassz111.vulcan
  4. // @description Pokazuje Srednia ocen
  5. // @include     https://uonetplus-opiekun.vulcan.net.pl/*/*/Oceny.mvc/Wszystkie
  6. // @version     4
  7. // @downloadURL http://lukassz111.cba.pl/gm/vulcan.user.js
  8. // @updateURL   http://lukassz111.cba.pl/gm/vulcan.user.js
  9. // @grant       none
  10. // ==/UserScript==
  11. //****************************************************************************
  12. //zmienić "var prog = <liczba>" gdzie w miejsce liczby dać próg na ocene wyżej
  13. var prog = 0.76;
  14. //****************************************************************************
  15. var table = document.getElementsByClassName('ocenyZwykle-table');
  16. table = table[0];
  17. var body_table = table.getElementsByTagName('tbody');
  18. body_table = body_table[0];
  19. ///////////////////////////////////Usuwanie pustych
  20. var tr = body_table.getElementsByTagName('tr');
  21. for (var i = 0; i < tr.length; i++)
  22. {
  23.   var td = tr[i].getElementsByTagName('td');
  24.   if (td[4].innerHTML == '-' && td[3].innerHTML == '-' && td[2].innerHTML == '-')
  25.   {
  26.     tr[i].remove();
  27.   }
  28. }
  29. tr = body_table.getElementsByTagName('tr');
  30. for (var i = 0; i < tr.length; i++)
  31. {
  32.   var td = tr[i].getElementsByTagName('td');
  33.   if (td[4].innerHTML == '-' && td[3].innerHTML == '-' && td[2].innerHTML == '-')
  34.   {
  35.     tr[i].remove();
  36.   }
  37. } /////////////////////////////////////////////////////
  38. /////////////////////////////////////Zmiana na liczby
  39.  
  40. var tr = body_table.getElementsByTagName('tr');
  41. for (var i = 0; i < tr.length; i++)
  42. {
  43.   var td = tr[i].getElementsByTagName('td');
  44.   for (var c = 3; c <= 4; c++)
  45.   {
  46.     console.log(td[c].innerHTML);
  47.     switch (td[c].innerHTML)
  48.       {
  49.       case 'niedostateczny':
  50.         td[c].innerHTML = '1';
  51.         break;
  52.       case 'dopuszczający':
  53.         td[c].innerHTML = '2';
  54.         break;
  55.       case 'dostateczny':
  56.         td[c].innerHTML = '3';
  57.         break;
  58.       case 'dobry':
  59.         td[c].innerHTML = '4';
  60.         break;
  61.       case 'bardzo dobry':
  62.         td[c].innerHTML = '5';
  63.         break;
  64.       case 'celujący':
  65.         td[c].innerHTML = '6';
  66.         break;
  67.     }
  68.   }
  69. } /////////////////////////////////////////////////////
  70. ////////////////////////////////////Liczenie średniej
  71.  
  72. tr = body_table.getElementsByTagName('tr');
  73. var sumaocen = 0;
  74. var iloscprzedmiotow = 0;
  75. for (var i = 0; i < tr.length; i++)
  76. {
  77.   var td = tr[i].getElementsByTagName('td');
  78.   //alert(isNaN(parseFloat(td[2].innerHTML)));
  79.   var ocena = '';
  80.   if (td[4].innerHTML != '-')
  81.   {
  82.     ocena = td[4].innerHTML;
  83.   }
  84.   else if (td[3].innerHTML != '-')
  85.   {
  86.     ocena = td[3].innerHTML;
  87.   }
  88.   else
  89.   {
  90.     var ocena = td[2].innerHTML;
  91.   }
  92.   ocena = ocena.replace(',', '.');
  93.   ocena = parseFloat(ocena);
  94.   if (isNaN(ocena))
  95.   {
  96.     //td[2].innerHTML = 'Brak Oceny';
  97.     //tr[i].remove();
  98.   }
  99.   else
  100.   {
  101.     var mod = ocena;
  102.     while (mod >= 1)
  103.     {
  104.       mod -= 1;
  105.     }
  106.     if (prog <= mod)
  107.     {
  108.       ocena = Math.ceil(ocena);
  109.     }
  110.     else
  111.     {
  112.       ocena = Math.floor(ocena);
  113.     }
  114.     if (td[3].innerHTML == '-')
  115.     {
  116.       td[3].innerHTML = '#' + ocena;
  117.     }
  118.     else
  119.     {
  120.       td[3].innerHTML = '@' + ocena;
  121.     }
  122.     sumaocen += ocena;
  123.     iloscprzedmiotow += 1;
  124.   }
  125. }
  126. var output = '<tr><td>Średnia na koniec</td><td colspan="4">' + (sumaocen / iloscprzedmiotow) + '</tr>';
  127. body_table.innerHTML += output;
  128. var header = document.getElementById('trescStrony');
  129. header.innerHTML += ' Średnia ocen to: ' + (sumaocen / iloscprzedmiotow) + '<br> Suma Ocen to: ' + sumaocen + '<br>Ilość przedmiotów: ' + iloscprzedmiotow;
  130. header.innerHTML += 'Legenda:<br> @-Ocena Proponowana została wstawiona przez nauczyciela<br> #-Ocena została uzupełniona na podstawie średniej przez skrypt';
  131. //alert('Suma ocen to: ' + sumaocen + ' Ilość Przedmiotów to: ' + iloscprzedmiotow + ' Srednia to: ' + (sumaocen / iloscprzedmiotow));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement