bme-db-lab / szglab5-backend

Szglab5 Backend Service
3 stars 0 forks source link

Fajlformatum es fajlnev ellenorzese feltoltes soran #84

Open lordblendi opened 7 years ago

lordblendi commented 7 years ago

A jelenlegi rendszerben a hallgatok barmilyen fajlnevvel es fajlformatummal feltolthetik a hazit. A plagium kereso pedig csak az elvart es megadott formatummal mukodik. Igy nekunk ez jelentos tobbletmunka, hogy ujra bekerjuk a hallgatok hazijat es feltoltsuk a rendszerbe. Raadasul a hallgatok nem figyelnek az eloirasokra sem. Jo lenne, ha ezeket a hazikat a rendszer visszadobna.

markfejes commented 7 years ago

Ehhez szükség lesz a DeliverableTemplates-hez felvenni egy attribútumot, mint requiredFileExtension.

A fájlnévkiterjesztésre viszonylag egyszerűen lehet irni egy validálót, viszont hogy egy adott fájl mondjuk tényleg sql fájl-e, vagy egy zip fájl tényleg zip fájl-e, az már időigényesebb lenne.

A kérdésem még, hogy egy beadandó fájlhoz, egy kiterjesztés tartozik, vagy lehet több is?

jmarton commented 7 years ago

Ennél komolyabbat valóban bonyolult csinálni, mert:

jmarton commented 7 years ago

Ha lesz ismét zip beadás, annál a tartalom mappaszerkezetét és a benne szereplő fájlok listáját szoktuk validálni. A hangsúly a ha részen van: nem tudok róla, hogy idén lesz ilyen, bár az opti-ról még nincs infóm. Tavasszal tipikusan van sok zip beadás.

markfejes commented 7 years ago

Jelenleg a fájlt ilyen névvel menti le a backend: https://github.com/bme-db-lab/szglab5-backend/blob/master/endpoints/deliverables/upload.js#L87 Elég sok infó benne lesz a fájlnévben, illetve az AKÉP helyes működéséhez is a fájl végére kell rakni bizonyos infókat (ha az adott deliverableTemplate-ben az AKÉP flag true értékre van állitva)

A letöltéskor igy adom vissza: https://github.com/bme-db-lab/szglab5-backend/blob/master/endpoints/deliverables/download.js#L79 Ezeken viszonylag egyszerű módosítani

A kiterjesztést fel fogom vinni requiredExtension néven a DeliverableTemplates-be, és ezt hamarosan le is fejlesztem, az olyanra hogy valaki átnevezi a .zip-et .rar-ra más tárgyaknál simán azt mondták hogy köszönik szépen a részvételt...

Jelenleg van egy description attribútum a DeliverableTemplates-ben, ezt a frontendre szántam, amit meg lehet jeleniteni, hogyha ebből csinálunk egy lowercase-t illetve snake_case-t, akkor szerintem megfelel a célra (Jelenleg ilyen értékek vannak benne: "Report", "SQL File")