mirror of
https://gitlab.com/MrFry/moodle-test-userscript
synced 2025-04-01 20:22:48 +02:00
Subject disabling, and frame updating
This commit is contained in:
parent
b40d6b61b9
commit
3fcd18670e
2 changed files with 50 additions and 19 deletions
64
main.js
64
main.js
|
@ -20,9 +20,14 @@
|
|||
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
// TODO:
|
||||
// default is not active on new subjects
|
||||
// send version, and check if new is avaible
|
||||
|
||||
var data; // all data, which is in the resource txt
|
||||
var addEventListener; // add event listener function
|
||||
var lastChangeLog = '- Kérdések adatstruktúra változtatás. Ha jól csináltam, akkor semmit se kellene észrevenni. \n Ha nem, akkor weboldalon lehet hibát jelezni!';
|
||||
var lastChangeLog =
|
||||
' - Összes tárgy letiltása alapból, mert sok tárgy van, és belassulhat :c\n- Az azért jó, hogy sok tárgy van c:';
|
||||
var serverAdress = "https://questionmining.tk/";
|
||||
|
||||
// forcing pages for testing. unless you test, do not set these to true!
|
||||
|
@ -629,6 +634,7 @@ function GetRightAnswerFromResultv2(i) {
|
|||
function Init(cwith) {
|
||||
if (false) // reset, only for testing!
|
||||
{
|
||||
GM_setValue("version16", undefined);
|
||||
GM_setValue("version15", undefined);
|
||||
GM_setValue("firstRun", undefined); // GM_getValue("lastVerson") == undefined => firstrun
|
||||
GM_setValue("showQuestions", undefined);
|
||||
|
@ -660,7 +666,16 @@ function Init(cwith) {
|
|||
console.log(e.stack);
|
||||
console.log("------------------------------------------");
|
||||
}
|
||||
// first run is version == undefined !
|
||||
VersionActions();
|
||||
count = Load(cwith); // loads resources
|
||||
if (!url.includes(".pdf")) // showing menu unless its a .pdf page
|
||||
{
|
||||
ShowMenu();
|
||||
}
|
||||
return count;
|
||||
}
|
||||
|
||||
function VersionActions() {
|
||||
var firstRun = GM_getValue("firstRun"); // if the current run is the frst
|
||||
if (firstRun == undefined || firstRun == true) // if its undefined, or true
|
||||
{
|
||||
|
@ -680,13 +695,17 @@ function Init(cwith) {
|
|||
throw "something, so this stuff stops";
|
||||
}
|
||||
|
||||
count = Load(cwith); // loads resources
|
||||
// console.log(data); // logging for debugging
|
||||
if (!url.includes(".pdf")) // showing menu unless its a .pdf page
|
||||
var version16 = GM_getValue("version16"); // if the current run is the frst
|
||||
if (version16 == undefined || version16 == true) // if its undefined, or true
|
||||
{
|
||||
ShowMenu();
|
||||
var i = 0;
|
||||
while (GM_getValue("Is" + i + "Active") != undefined) {
|
||||
GM_setValue("Is" + i + "Active", false);
|
||||
i++;
|
||||
}
|
||||
GM_setValue("version16", false); // setting it to false
|
||||
}
|
||||
return count;
|
||||
|
||||
}
|
||||
|
||||
function ReadFile(cwith) {
|
||||
|
@ -900,6 +919,13 @@ function NLoad(resource, cwith) {
|
|||
console.log("------------------------------------------");
|
||||
count = -1; // returns -1 if error
|
||||
}
|
||||
var i = 0;
|
||||
while (i < data.length && !GM_getValue("Is" + i + "Active")) {
|
||||
i++;
|
||||
}
|
||||
if (i >= data.length)
|
||||
document.getElementById("HelperMenuButton").style.background = "yellow";
|
||||
|
||||
cwith(count);
|
||||
}
|
||||
|
||||
|
@ -980,9 +1006,9 @@ function HandleUI(url, count) {
|
|||
// no new version, everything loaded, and show splash is enabled. otherwise something happened, so showing it
|
||||
if (!newVersion && loaded && showSplash) // ------------------------------------------------------------------------------------------------
|
||||
{
|
||||
timeout = 5;
|
||||
greetMsg = "Moodle/Elearning/KMOOC segéd v. " + GM_info.script.version + ". " + count +
|
||||
" kérdés és " + data.length + " tárgy betöltve. (click for help).";
|
||||
console.log(data);
|
||||
if (data.length > 0) {
|
||||
var toAdd = [];
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
|
@ -994,11 +1020,11 @@ function HandleUI(url, count) {
|
|||
greetMsg += "\nAktív tárgyak: " + toAdd.join(", ") + ".";
|
||||
} else {
|
||||
greetMsg += "\nNincs aktív tárgyad. Menüből válassz ki eggyet!";
|
||||
timeout = undefined;
|
||||
}
|
||||
} else {
|
||||
greetMsg += " Az adatfájlban nem adtál meg nevet. Vagy nem elérhető a szerver. Katt a helpért!";
|
||||
}
|
||||
timeout = 5;
|
||||
}
|
||||
// new version, nothing loaded
|
||||
if (newVersion && !loaded) // --------------------------------------------------------------------------------------------------------------
|
||||
|
@ -1607,17 +1633,18 @@ function ShowMessage(msgItem, timeout, funct) {
|
|||
// shows a fancy menu
|
||||
function ShowMenu() {
|
||||
try {
|
||||
var buttonSize = 25; // button size ;)
|
||||
var buttonWidth = 75; // button size ;)
|
||||
var buttonHeight = 55;
|
||||
var appedtTo = document.body; // will be appended here
|
||||
|
||||
// mainDiv.style.left = (window.innerWidth - width) / 2 + 'px';
|
||||
|
||||
var menuButtonDiv = document.createElement("div");
|
||||
menuButtonDiv.setAttribute("id", "HelperMenuButton");
|
||||
//menuButtonDiv.style.width = buttonSize + 'px';
|
||||
menuButtonDiv.style.height = buttonSize + 'px';
|
||||
menuButtonDiv.style.top = (window.innerHeight - buttonSize * 2) + 'px';
|
||||
menuButtonDiv.style.left = window.innerWidth - buttonSize * 3 + 'px';
|
||||
menuButtonDiv.style.width = buttonWidth + 'px';
|
||||
menuButtonDiv.style.height = buttonHeight + 'px';
|
||||
menuButtonDiv.style.top = (window.innerHeight - buttonHeight * 1.5) + 'px';
|
||||
menuButtonDiv.style.left = window.innerWidth - buttonWidth * 1.5 + 'px';
|
||||
menuButtonDiv.style.zIndex = 999999; // TO THE MAX
|
||||
menuButtonDiv.style.position = "fixed";
|
||||
|
||||
|
@ -1631,7 +1658,7 @@ function ShowMenu() {
|
|||
menuButtonDiv.style.opacity = "0.9"; // setting starting opacity
|
||||
|
||||
// menu text
|
||||
var menuTextBox = CreateNodeWithText(menuButtonDiv, "Menu");
|
||||
var menuTextBox = CreateNodeWithText(menuButtonDiv, "Kérdések\nMenü");
|
||||
|
||||
menuButtonDiv.addEventListener("click", function() {
|
||||
if (document.getElementById("HelperMenu") == null) {
|
||||
|
@ -1643,11 +1670,11 @@ function ShowMenu() {
|
|||
}); // adding click
|
||||
|
||||
//addEventListener(window, 'scroll', function () {
|
||||
// menuButtonDiv.style.top = (pageYOffset + window.innerHeight - buttonSize * 2) + 'px';
|
||||
// menuButtonDiv.style.top = (pageYOffset + window.innerHeight - buttonHeight * 2) + 'px';
|
||||
//})
|
||||
|
||||
addEventListener(window, 'resize', function() {
|
||||
menuButtonDiv.style.left = window.innerWidth - buttonSize * 2 + 'px';
|
||||
menuButtonDiv.style.left = window.innerWidth - buttonWidth * 2 + 'px';
|
||||
});
|
||||
|
||||
appedtTo.appendChild(menuButtonDiv);
|
||||
|
@ -1687,7 +1714,7 @@ function ShowMenuList() {
|
|||
var tbl = document.createElement('table');
|
||||
tbl.style.margin = fiveMargin;
|
||||
tbl.style.textAlign = "left";
|
||||
tbl.style.width = "100%";
|
||||
tbl.style.width = "98%";
|
||||
|
||||
// adding headers ---------------------------------------------------------------------------------------------------------------
|
||||
var tr = tbl.insertRow();
|
||||
|
@ -1703,6 +1730,7 @@ function ShowMenuList() {
|
|||
if (data && data.length > 0) {
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
var subjRow = tbl.insertRow();
|
||||
subjRow.style.border = "1px solid #131319";
|
||||
|
||||
var td = subjRow.insertCell();
|
||||
var textBox = CreateNodeWithText(td, data.Subjects[i].Name + " (" + data.Subjects[i].length +
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue