您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Počítání váženého průměru známek bakaláři
// ==UserScript== // @name Počítání váženého průměru bakaláři // @namespace none // @version 2 // @description Počítání váženého průměru známek bakaláři // @author Tomáš Falešník (2016) // @match http://znamky.zsunesco.cz/* // @grant none // @require http://code.jquery.com/jquery-latest.js // ==/UserScript== //Prosím upravte @match na vaši školu, jinak to nebude fungovat.. //Př: http://bakalari.nejaka.skola.cz/* - Ta hvězdička za lomítkem tam musí být. (function() { 'use strict'; /* not used var WEIGHT_MAP = { 'D': 6, 'M': 4, 'F': 3, 'T': 2, 'C': 10, 'O': 3, 'P': 6, 'L': 4, 'A': 1, 'U': 6 }; */ var MARKS_TO_SKIP = ['A', 'X', '?', 'N']; var roundTo = 2; if($("#cphmain_roundprub_HTC_labelnadpisprub_0") !== undefined && $("#cphmain_roundprub_HTC_labelnadpisprub_0").html().indexOf("Průběžná klasifikace") !== -1) { $("#cphmain_pravyprub > div > div > div > div").append('<div style="white-space: normal; word-break: break-word; font-size: 13px; font-weight: bold;"> Počítání průměru: </div> <table> <tbody> <tr> <td>Zaokrouhlit na: </td> <td><input type="number" min="0" value="2" id="pz_round"> des. míst</td> </tr> </tbody> </table>'); $("#pz_round").change(function(e) { roundTo = $("#pz_round").val(); count(); }); count(); } function count() { var subjectWraps = $(".nazevprdiv"); var markWraps = $(".detznamka"); var weightWraps = $(".typ"); $(".pz_prumer").remove(); for(var i = 0; subjectWraps.length > i; i++) { var weightedMarks = 0.0; var summedWeights = 0.0; var marks = $(markWraps[i]).find("td"); var weights = $(weightWraps[i]).find("td"); var subjectName = $(subjectWraps[i]).find("a")[0].innerHTML; for(var o = 0; marks.length > o; o++) { var weightsTitle = weights[o].title; var crrWeight = weightsTitle.substring(weightsTitle.length - 1, weightsTitle.length); var crrMark = marks[o].innerHTML; // Badly specified weight, skip it if (crrWeight === undefined) continue; if(MARKS_TO_SKIP.indexOf(crrMark) === -1) { weightedMarks += parseInt(crrWeight) * parseInt(crrMark); summedWeights += parseInt(crrWeight); } } var result = Math.round((parseFloat(weightedMarks) / parseFloat(summedWeights)) * Math.pow(10, roundTo)) / Math.pow(10, roundTo); $(subjectWraps[i]).append('<div class="nazevpr pz_prumer" style="text-align:left;font-size:9pt;text-decoration:none;">' + result + '</div>'); } } })();