# Setup ## Linux ./make.sh ## Windows Install linux just kidding, windowson még sosem próbáltam, ha valaki rájön ott hogy működik, akkor az jól jönne, ty. A `make.sh` script futtatása minden eddigi szerver által használt/generált adatot felülír! # Futtatás Szükséges könyvtár struktúrát és egyéb fájlokat automatikusan létrehozza a `make.sh` script Majd: `npm run dev` vagy `npm start` ## Környezeti változók * `NS_SQL_DEBUG_LOG` Ha `true`, akkor minden SQL utasítás ki lesz írva a konzolra * `NS_LOGLEVEL` Egy szám lehet, ami minél nagyobb annál részletesebben történik a logolás konzolra. Jelenleg ez ilyen 1-4 közötti skálán mozog. * `NS_DEVEL` 'Devel' ként futtatja a szervert. Jelenleg ez azt jelenti, hogy pár helyen https helyett http-re redirectel. ## Adatbázis előkészítése A szerver egy felhasználókat, session-öket és ehhez tartozó segéd táblákat tartalmazó adatbázist használ. Az adatbázis struktúrát a `modules/api/apiDBStruct.json` tartalmazza, és az adatbázis módosításához szükséges függvények az `utils/dbtools.js` fájlban vannak megvalósítva. Így nem kell SQL lekérdezéseket írni, csak ezeket meghívni. A `make.sh` script automatikusan létrehoz egy üres adatbázist a `utils/dbSetup.js` segítségével. Később ezt manuálisan futtatva alaphelyzetbe lehet állítani az adatbázist. Ha létezik egy `utils/ids` fájl, ami sorokban felhasználó kliens ID-kat tartalmaz, akkor a `utils/dbSetup.js` automatikusan létrehoz ezek alapján felhasználókat. ## Hogy az API és a többi modul tudjon kommunikálni: __Ezt a rész csak nagyon kevés esetben kell megcsinálni, ajánlott kihagyni! Ennélkül is működik lokálisan az API és a usercript!__ 1. Ezt a pár sort add hozzá a `/etc/hosts` fájlhoz: ``` 127.0.0.1 api.frylabs.net 127.0.0.1 qmining.frylabs.net ``` Figyelj rá, hogy az IP cím és az url közötti spacing az pontosan 1 tab! Firefox nem mindig használja a hosts filet! Ennélkül a qmining modul nem bír kommunikálni az api-val, ahonnan szedi a kérdéseket, motd-t, felhasználó kérdéseket és ilyesmiket. 2. Ezután a server.js-ben a portot írd át 80-ra és superuserként kell indítani a szervert 3. Ezután a böngészőben a qmining.frylabs.net-en a gépen futó szerver lesz elérhető A frylabs.net-es url-ek helyett lehet mást is használni, de néhány helyen előfordulhat hogy be van még égetve, ezért ezek ajánlottak 4. Ha végeztél ne felejtsd el kitörölni a `hosts` fájlból a bemásolt sorokat, mert annélkül nem lesz elérhető az eredeti szerver! # stats mappa ### logs Szuper részletes log, minden requestről, ajánlatos egy `tail -f stats/logs`-al nézni mi történik ### msgs A feedback oldalra írt üzenetek ebbe mentődnek ### stats JSON file, kulcsok az url-ek, az értékek pedig hogy hányszor lettek lekérve ### vstats Ugyanaz mint a `stats` file, csak napokba rendezve ### idstats Cliens ID összes statisztika ### idvstats Cliens ID összes statisztika napokba rendezve ### recdata Az az adat, amit a szerver az `/isadding` végpontra kap ### dataEdits Néhány fontos log amit az api generál mikor a felhasználók a dataEditor modult használják