flyink13 / petersburgedu.ru utils

// ==UserScript==
// @name         petersburgedu.ru utils
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Показывает средний балл на petersburgedu.ru
// @author       Flyink13
// @match        https://petersburgedu.ru/dnevnik/lessons/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    var marks = document.querySelector("#marks tbody"),
        rmarks = document.querySelector(".marks-summary tbody");

    Array.from(marks.childNodes).map(function(tr, i){
        tr = Array.from(tr.childNodes)
            .map(x => x.textContent.trim())
            .join("").split("")
            .map(x => parseInt(x))
            .filter(x => !isNaN(x));
        if(!tr.length) return 0;
        return tr.reduce((p, v) => p + v, 0) / tr.length;
    }).map(function(m, i){
        var d = rmarks.childNodes[i].childNodes[1];
        if(d && m) d.textContent += " (" + (m.toFixed ? m.toFixed(2) : m) + ")";
    });
})();