No description
Find a file
2020-04-10 15:25:11 +02:00
devel Auth system 2020-04-03 08:54:48 +02:00
middlewares Auth logging prettying 2020-04-09 12:52:19 +02:00
modules Exit signal handling polish, login page info added 2020-04-10 15:24:53 +02:00
public Exit signal handling polish, login page info added 2020-04-10 15:24:53 +02:00
sharedViews Exit signal handling polish, login page info added 2020-04-10 15:24:53 +02:00
utils Added install ling to loginexceptions, changed some http links to https 2020-04-09 20:46:28 +02:00
.gitmodules Removed classes submodule 2020-03-30 15:51:17 +02:00
license Handling old data 2020-01-22 17:16:11 +01:00
make.sh Optional key load in make 2020-04-07 15:31:00 +02:00
makeQminingPage.sh Added make scripts, some new tests, install link now points to greasyfork 2020-03-22 14:46:20 +01:00
modules.json Modules now return a function which creates app-s, qmining module auth handle 2020-04-08 12:11:48 +02:00
package.json Removed express-sessions 2020-04-06 21:44:53 +02:00
README.md Readded classes.js as file, modified files to work with new path 2020-03-30 15:53:23 +02:00
server.js Exit signal handling polish, login page info added 2020-04-10 15:24:53 +02:00
serverStats.sh Added server statistic script 2020-04-10 15:25:11 +02:00

Multifunkcionális Express.js szerver

Rövid leírás:

Ez egy Express.js-re épülő node.js szerver, ami egyszerűen kezelhető modul-rendszerrel és különböző alap funkciókkal lett kiegészítve.

Telepítés / Indítás

Bővebben a devel/readme.md -ben

Eddigi modulok

qmining

Backend és weboldal a Moodle/Kmooc teszt megoldó klienshez. A ./public mappában található data.json fájlból tölti be az összes kérdést, és szolgálja ki a klienseket. Beállított időnként ebbe menti az új kérdéseket is, és a ./public/backs mappába másol biztonsági mentéseket. Főoldalán ./public/qa fájlból jeleníti meg a felhasználók kérdéseit, és az üzemeltető válaszait, amit manuálisan kell szerkeszteni.

Fontosabb oldalak:

név leírás
/legacy Összes kérdés/válasz egy oldalon
/isAdding Erre a címre POST-olja a kliens az új kérdéseket
/ask Ezt a címet kéri le paraméterezve a kliens ha kérdésre keres

stuff

Egyszerű fájlböngésző, ami a ./public/files mappa tartalmát listázza ki böngészőben

sio

Egyszerű oldal a szerverre való fájlfeltöltés megkönnyítésére

main

Főoldal / minta modul

Üzemelés

Új modul létrehozása

Javasol a 'main' modul másolás, és átnevezése a ./modules mappában, abban szinte minden alapvető funkció benne van. Majd a ./modules.json fájlba egy új bejegyzést kell létrehozni a többi alapján. Ezt a ./extraModules fájlban is meg lehet tenni, ami csak azért létezik hogy privát modulokat ne kelljen git-re feltölteni.

A szerver vhost csomagot használ, és több aldomainje van, amikre érdemes figyelni

./stats mappa

Ebben található az összes statisztika és naplófájl

név leírás
./stats/logs részletes request napló
./stats/nlogs fontosabb request napló
./stats/stats összes lekért oldal JSON
./stats/vstats napokba rendezett összes lekérd oldal JSON
./stats/idstats Összes kérdés hozzáadó kliens egyedi azonosító statisztika JSON
./stats/idvstats Összes kérdés hozzáadó kliens egyedi azonosító napokba rendezve JSON

./utils mappa

Különböző hasznos eszközök

név leírás
logger.js minden naplózást kezel
dbcheck.js paraméterként kapott adatbázist ellenőrzi, hogy van-e a kérdéseknek .Q propertyje, ami a régi fajta módszernél volt használatos
actions.js qmining modul beérkező kérdés feldolgozás
utils.js alapvető eszközök, pl fájl beolvasás
motd.js data.json és ./public/motd -be írja a paraméterként kapott szöveget
ids.js egyedi felhasználó azonosítókat írja statisztika fájlba
dataUpdater.js régifajta adatbázist, amiben még van .Q propertyjű kérdés alakít át
changedataversion.js data.json-ban és a ./public/version ban írja át a teszt megoldó kliens aktuális verzióját
merger.js Paraméterként kapott adatbázisból törli az egyező bejegyzéseket, és egyesíti egy fájlba
merge.sh Biztonsági mentést készít, és egyszerűsíti az adatbázist, majd felülírja az újjal
classes.js Összehasonlításhoz és tároláshoz szükséges osztályok

Egyéb

Jelenleg sok optimalizálatlan rész található benne, cél ezek kijavítása, szépítése

Licensz:

GPLv3