您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Dodaje godziny rozpoczecia zajec na planie
// ==UserScript== // @name Godziny na planie polsl // @description Dodaje godziny rozpoczecia zajec na planie // @version 1.1.0 // @author peXu // @namespace https://greasyfork.org/pl/users/10243-pexu // @include http://plan.polsl.pl/* // @include https://plan.polsl.pl/* // @run-at document-end // @grant unsafeWindow // ==/UserScript== // funkcja konwertujaca czas z postaci liczbowej na tekstowa ( 5.5 -> 05:30) function timeToString(time) { var godz = Math.floor(time); var min = Math.round((time%1)*60); if (godz<10) godz = '0' + godz; if (min<10) min = '0' + min; return String(godz+':'+min); } // funkcja konwertujaca czas z postaci tekstowej na liczbowa ( 05:30 -> 5.5) function stringToTime(string) { string = string.split(":"); return Number(string[0])+Number(string[1])/60; } poczatek = Number(jQuery("div.cd:contains('Tydzień'):eq(1)+div.cd").css('top').slice(0,-2))+1; // pozycja top pierwszego wiersza planu z zajeciami (slice odcina "px" ze stringu), +1 ze wzgledu na ramke startZajec = Number(jQuery("div.cd:contains('Tydzień'):eq(1)+div.cd").text().substr(0,2)); // godzina rozpoczecia pierwszych zajec na planie // wywolanie funkcji dodajacej czas dla wszystkich zajec na planie jQuery('.coursediv').each( function() { var self = jQuery(this); var top = Number(self.css('top').slice(0, -2)); // pozycja top danego zajecia var min = ((top-poczatek)%45)/11*15; // wyliczamy minuty zajec, 45 - wysokosc godziny, 11 - wysokosc 15 minut, 15 - 15 minut ;p var godz = startZajec + Math.floor((top-poczatek)/45); // dodajemy ilosc godzin poprzedzajacych zajecia do startu pierwszych zajec if (godz<10) godz = '0' + godz; // upiekaszanie if (min<10) min = '0' + min; // upiekszanie var rozpoczecie = godz+':'+min; var wys = Number(self.css('height').slice(0, -2)); var dlugoscZajec = Math.floor((wys+11)/11)*15/60; var zakonczenie = timeToString(stringToTime(rozpoczecie)+dlugoscZajec); self.html('<p class="js-czas" style="position:absolute;font-weight:bold;text-align:right;text-shadow: 0px 1px 0px #EEE;color:#111;font-size:9px;right: 2px; background-color: rgba(255, 255, 255, 0.5); border-radius: 5px; padding: 1px; border: 1px solid rgba(0, 0, 0, 0.5);top:-7px;">' + rozpoczecie + '</p>'+self.html()); self.html(self.html()+'<p class="js-czas" style="position:absolute;font-weight:bold;text-align:right;text-shadow: 0px 1px 0px #EEE;color:#111;font-size:9px;right: 2px; background-color: rgba(255, 255, 255, 0.5); border-radius: 5px; padding: 1px; border: 1px solid rgba(0, 0, 0, 0.5); bottom:-7px;">' + zakonczenie + '</p>'); }); jQuery('.coursediv').hover(function() { // ukrywanie godzin po najechaniu myszka na div jQuery(this).children('p.js-czas').fadeOut(122).dequeue(); }, function() { jQuery(this).children('p.js-czas').fadeIn(122).dequeue(); });