mirror of
https://gitlab.com/MrFry/qmining-page
synced 2025-04-01 20:23:44 +02:00
281 lines
8.5 KiB
JavaScript
281 lines
8.5 KiB
JavaScript
import React, { useState } from 'react'
|
|
|
|
import Sleep from '../components/sleep'
|
|
import Head from 'next/head'
|
|
|
|
function PasswordSection() {
|
|
return (
|
|
<>
|
|
<div className={'manualBody'}>
|
|
<p>
|
|
Ha ezt olvasod valszeg már neked is van. Azért lett bevezetve, hogy
|
|
nagyjából zárt legyen a felhasználók köre.
|
|
</p>
|
|
<ul>
|
|
<li>Minden felhasználónak más jelszava van.</li>
|
|
<li>
|
|
Elvileg elég csak 1 szer beírnod, és többet nem kell, de{' '}
|
|
<b>mentsd le biztos helyre a jelszót, hogy később is meglegyen</b>!
|
|
Ha többször kell megadnod, akkor az bug lesz. Ilyenkor ezt{' '}
|
|
<a
|
|
href="http://qmining.frylabs.net/feedback?man"
|
|
target="_blank"
|
|
rel="noreferrer"
|
|
>
|
|
jelentsd
|
|
</a>
|
|
.
|
|
</li>
|
|
<li>
|
|
<i>
|
|
Jelenleg nincs elfelejtett jelszó funkció, ha elfelejted, akkor az
|
|
örökre eltűnik!
|
|
</i>
|
|
</li>
|
|
<li>
|
|
Ha van jelszavad akkor <b>bizonyos határok között</b> te is{' '}
|
|
<a
|
|
href="https://qmining.frylabs.net/pwRequest?man"
|
|
target="_blank"
|
|
rel="noreferrer"
|
|
>
|
|
tudsz generálni
|
|
</a>{' '}
|
|
másoknak (ncore style).
|
|
</li>
|
|
<li>
|
|
Saját jelszavadat ne oszd meg, mivel egyszerre egy helyen lehetsz
|
|
belépve, máshol automatikusan ki leszel jelentkeztetve. (meg minek,
|
|
ha tudsz adni másoknak az előző pont alapján)
|
|
</li>
|
|
<li>
|
|
Mivel senkinek sincs felhasználóneve, csak egy UserID (amit bal alul
|
|
találsz), így az egész teljesen anonim. Emiatt a jelszavakat nem
|
|
lehet megváltoztatni, hogy a szükséges komplexitás megmaradjon.
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<hr />
|
|
</>
|
|
)
|
|
}
|
|
|
|
function FAQSection() {
|
|
return (
|
|
<>
|
|
<div className={'manualBody'}>
|
|
<ul>
|
|
<li>
|
|
<b>
|
|
Olyan helyeken fut le a script, ahol nem kellene, vagy
|
|
ideiglenesen ki akarod kapcsolni;
|
|
</b>
|
|
<br />
|
|
<i>
|
|
Tampermonkey bővitmény ikon -{'>'} click -{'>'} a scriptet
|
|
kapcsold ki. Csak ne felejtsd el visszakapcsolni ;)
|
|
</i>
|
|
</li>
|
|
<br />
|
|
<li>
|
|
<b>
|
|
Túl nagy a kérdést és a választ megjelenítő ablak, nem tudok a
|
|
válaszra kattintani;
|
|
</b>
|
|
<br />
|
|
<i>
|
|
A felugró ablakot ha minden jól megy akkor a szélénél fogva tudod
|
|
mozgatni, vagy egeret rajtatartva a görgővel tudod állítani az
|
|
áttetszőségét, vagy be tudod zárni jobb felül X-el, vagy egér
|
|
középső gombbal.
|
|
</i>
|
|
</li>
|
|
<br />
|
|
<li>
|
|
<b>Gombok, %-ok, számok;</b>
|
|
<br />
|
|
<img
|
|
style={{ maxWidth: '100%' }}
|
|
src="img/6.png"
|
|
alt="img"
|
|
className={'manual_img'}
|
|
/>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</>
|
|
)
|
|
}
|
|
|
|
function RiskSection() {
|
|
return (
|
|
<>
|
|
<ul>
|
|
<li>
|
|
<b>Bármikor észrevehetik hogy használod a scriptet</b>
|
|
<br />
|
|
A weboldalt már kevésbé, de úgy nem menti el a kérdéseket a script,
|
|
mert nem fut. Később manuálisan is be lehet majd küldeni
|
|
kérdés-válaszokat.
|
|
<p />
|
|
A script shadow-root hoz teszi hozzá az összes megjelenített
|
|
elementet, így ezeket szinte lehetetlen detektálni. A moodle
|
|
semmiféleképpen nem látja, hogy milyen más oldalak vannak megnyitva a
|
|
böngésződben. Nem látja az XMLHttp requesteket se, amit a script
|
|
végez. Egy Matomo nevű script látja hogy milyen oldalarka navigálsz a
|
|
moodle-ről, de a script nem linkekkel irányít át, hanem javascript
|
|
eseménnyel, amit nem tud nyomon követni.
|
|
<p />
|
|
Aztán ki tudja ténylegesen hogy lehet
|
|
</li>
|
|
<li>
|
|
<b>Bármikor leállhat a szerver</b>
|
|
<br />
|
|
És akkor nem bírod megnézni a válaszokat. Erre van az{' '}
|
|
<a
|
|
href="http://qmining.frylabs.net/allqr.txt?man"
|
|
target="_blank"
|
|
rel="noreferrer"
|
|
>
|
|
{' '}
|
|
összes kérdés TXT
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<b>Akármelyik válasz rossz lehet</b>
|
|
<br />
|
|
Pl.: ha a script rosszul menti le, vagy rossz kérdésre ad választ
|
|
</li>
|
|
</ul>
|
|
<hr />
|
|
</>
|
|
)
|
|
}
|
|
|
|
function WebsiteSaveSection() {
|
|
return (
|
|
<>
|
|
<p>
|
|
Ha hibát észlesz, kérlek jelents. Hogy a hibákat a saját gépemen
|
|
reprodukálni tudjam, és könnyen ki bírjam javítani, sokszor jól jön, ha
|
|
egy lementett weboldalt megkapok, amin a hiba történik. Így lehet
|
|
menteni egy oldalt:
|
|
</p>
|
|
<center>
|
|
<img
|
|
style={{ maxWidth: '100%' }}
|
|
src="img/websitesave.png"
|
|
alt="img"
|
|
className={'manual_img'}
|
|
/>
|
|
<br />
|
|
<a href="/feedback" rel="noreferrer">
|
|
Ide tudod feltölteni
|
|
</a>
|
|
</center>
|
|
<p>
|
|
Mivel nincs hozzáférésem semmilyen egyetemi oldalhoz, így csak így tudom
|
|
hatékonyan tesztelni a scriptet. Ezért hatalmas segítség ha feltöltöd
|
|
azt az oldalt amin hibával találkozol.
|
|
</p>
|
|
</>
|
|
)
|
|
}
|
|
|
|
function ScriptReinstallSection() {
|
|
return (
|
|
<>
|
|
<p>
|
|
Jelenleg két helyről lehet telepíteni a scriptet: greasyforkról és a
|
|
weboldalról. A greasyforkos telepítési lehetőség meg fog szűnni, így ha
|
|
onnan telepítetted, akkor nem lesznek frissítések elérhetők (amik nagyon
|
|
fontosak (de tényleg)). Ezért a következő rövid manővert kellene
|
|
végrehajtani, hogy minden zökkenőmentesen menjen:
|
|
</p>
|
|
<ul>
|
|
<li>Böngésző bővítményeidnél kattints a tampermonkey-ra</li>
|
|
<li>Válaszd ki alulról második opciót, ami dashboard néven fut</li>
|
|
<li>
|
|
Ekkor új tabban felugranak telepített scriptjeid. Keresd meg a
|
|
Moodle/Elearning/KMOOC test help-et, és a sor végén kattints a kuka
|
|
gombra
|
|
</li>
|
|
<li>Ha megkérdezi mondd neki, hogy biztos törölni akarod</li>
|
|
<li>
|
|
Ezután simán kattints{' '}
|
|
<a
|
|
href="http://qmining.frylabs.net/install?man"
|
|
target="_blank"
|
|
rel="noreferrer"
|
|
>
|
|
ide
|
|
</a>{' '}
|
|
a script újratelepítéséhez a weboldalról.
|
|
</li>
|
|
<li>
|
|
Kész! Lehet megkérdezi újra, hogy elérheti-e a szervert, de azt csak
|
|
egyszer. Szokásos módon engedélyezd, hogy le bírja kérni a helyes
|
|
válaszokat
|
|
</li>
|
|
</ul>
|
|
Ezzel semmi adat nem vész el, régi jelszó ugyanolyan jó marad (csak ne
|
|
felejtsd azt el)
|
|
</>
|
|
)
|
|
}
|
|
|
|
const pages = {
|
|
faq: { name: 'GYIK', component: FAQSection },
|
|
pw: { name: 'Jelszavak', component: PasswordSection },
|
|
risk: { name: 'Kockázatok', component: RiskSection },
|
|
websitedl: { name: 'Weboldal letöltése', component: WebsiteSaveSection },
|
|
reinstall: {
|
|
name: 'Script újratelepítése',
|
|
component: ScriptReinstallSection,
|
|
},
|
|
}
|
|
|
|
export default function FAQ() {
|
|
const [currPage, setCurrPage] = useState(pages.faq)
|
|
|
|
const renderCurrPage = (page) => {
|
|
if (page) {
|
|
return <page.component />
|
|
} else {
|
|
return null
|
|
}
|
|
}
|
|
|
|
return (
|
|
<div>
|
|
<Head>
|
|
<title>GYIK - Qmining | Frylabs.net</title>
|
|
</Head>
|
|
<div className={'pageHeader'}>
|
|
<h1>Gyakran Ismételt Kérdések</h1>
|
|
</div>
|
|
<br />
|
|
<Sleep />
|
|
<br />
|
|
<div className={'buttonContainer'}>
|
|
{Object.keys(pages).map((key) => {
|
|
const page = pages[key]
|
|
return (
|
|
<div
|
|
className={`${page === currPage && 'activeButton'}`}
|
|
key={key}
|
|
onClick={() => {
|
|
setCurrPage(page)
|
|
}}
|
|
>
|
|
{page.name}
|
|
</div>
|
|
)
|
|
})}
|
|
</div>
|
|
{renderCurrPage(currPage)}
|
|
|
|
<p className={'endofpage'} />
|
|
</div>
|
|
)
|
|
}
|