Commit Graph

351 Commits

Author SHA1 Message Date
2aa1d6eeca libfic: fix bad hints displayed 2018-01-18 12:08:11 +01:00
9a1a64c41c admin: complet API and interface with files checking page 2018-01-18 12:08:11 +01:00
184714aeeb frontend: team registration 2018-01-18 12:08:11 +01:00
ea3f3b709d admin/sync: import theme introductions 2018-01-18 12:08:10 +01:00
e9910fe827 admin: can delete team history item 2018-01-17 18:52:48 +01:00
a0737d91b9 libfic: force MySQL charset 2018-01-17 18:52:47 +01:00
4052969304 libfic/mcq: remove Kind, as we can only handle checkbox; another kind of record should be created to handle select/radio 2018-01-17 18:52:46 +01:00
e630bc3d75 Improve bootstrap 4 support 2018-01-17 18:52:46 +01:00
838918da66 Exercice: add overview field
This field is use as a high level description of the exercice. It will be
displayed on the public interface only: not to players.
2018-01-17 18:52:45 +01:00
830dacd6f5 Save MCQ diff 2018-01-17 18:52:45 +01:00
b079f7891c admin: sync mcq/ucq 2018-01-17 18:52:45 +01:00
d6012dfffb frontend: display MCQ in interface 2018-01-17 18:52:45 +01:00
6903c91df2 Able to check MCQ 2018-01-17 18:52:44 +01:00
c36cd202e8 libfic: start working on MCQ: structures done 2018-01-17 18:52:44 +01:00
9a9d5fcda4 libfic: Type key is now Label 2018-01-17 18:52:41 +01:00
ae7e1ede14 libfic: increase authors field size 2018-01-17 18:52:40 +01:00
38d7cb00b6 libfic: add function to get exercice by title 2018-01-17 18:52:40 +01:00
f97e114a81 libfic: add functions to wipe {files,hints,keys} 2018-01-17 18:52:40 +01:00
38a0f4c9b5 libfic: Add new row in exercices table, to store relative path to exercice 2018-01-17 18:52:40 +01:00
38606f28c7 libfic: new function to get theme by name 2018-01-17 18:52:39 +01:00
8f7de926d3 admin: Implement sychronization backends
We are now able, depending on configuration, to retrieve files from either WebDAV or local file system.
2018-01-17 18:52:39 +01:00
6237f7755a Change Key.Value to Key.Checksum 2018-01-17 18:52:39 +01:00
b84fe87f48 New functions to get file by path 2018-01-17 18:52:39 +01:00
cd5a9d06ea Define global default value at initialisation 2018-01-17 18:52:39 +01:00
e6e6e6c206 Use BLAKE2b checksum instead of SHA-1 and SHA-512 2018-01-17 18:52:38 +01:00
41400a8710 admin: add history route in API 2018-01-17 18:52:37 +01:00
17d983221d libfic: split team removal in two requests 2018-01-17 18:52:36 +01:00
4a97b06520 Set SQL_MODES, waiting https://jira.mariadb.org/browse/MDEV-10426 to be solved 2018-01-17 18:52:35 +01:00
d0f588e47d Generate DNS from env 2018-01-17 18:52:34 +01:00
4f6d4a82b0 db: add constraints to avoid multiple records of unique values 2018-01-17 18:52:32 +01:00
7597fcfe5b admin: add button and route to reset some parts 2018-01-17 18:52:32 +01:00
7478051425 admin: interface to edit teams 2018-01-17 18:52:32 +01:00
cab95b7985 libfic: new function to retrieve exercices from a hint 2018-01-17 18:52:32 +01:00
4fe641a9f5 change the way themes are stored in stats 2018-01-17 18:52:31 +01:00
544bbb745c admin: new route /members/ 2018-01-17 18:52:31 +01:00
b8b1f14806 admin: restore function to add team and members 2018-01-17 18:52:31 +01:00
8e91e7edbe admin: sanitize use of InitialName when needed 2018-01-17 18:52:30 +01:00
49933059f3 certificates: avoid error on noexec partition 2018-01-17 18:52:30 +01:00
b42016c74a Coefficients transit and display on UI 2018-01-17 18:52:29 +01:00
21e4b04c19 frontend: dedicate a field in JSON to file hint 2018-01-17 18:52:29 +01:00
b772a22705 Hints can something else than text 2018-01-17 18:52:29 +01:00
9dd376ba22 libfic: refactor rank/points SQL query 2018-01-17 18:52:28 +01:00
91182b1877 admin: Improve CA API 2018-01-17 18:52:28 +01:00
1c879fe50e squash! WIP: apply a coeff on given points 2018-01-17 18:52:14 +01:00
0cde350c5e WIP: apply a coeff on given points 2018-01-17 18:51:54 +01:00
10fe40e4a8 Settings are now given through TEAMS/settings.json instead of been given through command line arguments 2018-01-17 18:51:54 +01:00
37310e41f5 New rank and score calculation 2018-01-17 18:51:54 +01:00
1bd403cd8c Handle file import digest 2018-01-17 18:51:53 +01:00
c57b612205 Split team.go into multiple files 2018-01-17 18:51:53 +01:00
b6782962f1 [admin] Add events 2018-01-17 18:51:53 +01:00
2e718b22b6 Merge exercices API routes 2018-01-17 18:51:52 +01:00
d1c5a545d9 backend: can open hint 2018-01-17 18:51:51 +01:00
e76d055bdb Partial resolution of exercices 2018-01-17 18:51:51 +01:00
25bf34e82c Multiple hints 2018-01-17 18:51:50 +01:00
636ab65990 backend: new option that unlock all challenges 2017-11-25 15:01:01 +01:00
384b6cd212 themes: don't expect authors to be dirty 2017-11-25 15:01:01 +01:00
e0a1aeb053 admin: add ability to add files from local storage 2017-11-25 15:00:54 +01:00
017adfb2b1 [admin] statistic generation 2017-01-12 11:55:30 +01:00
5e74b3f7ce [admin] Can retrieves tries rate 2017-01-12 11:55:29 +01:00
467641f4f2 Add initial_name field in DB 2016-10-13 19:56:29 +02:00
1c62f61bf0 Backend: extract file generation and team renaming in dedicated files 2016-10-13 19:56:27 +02:00
ee67788d59 Expect full downloadable file pathname (allow CDN) 2016-10-13 19:56:26 +02:00
da84a90b4f Export VideoURI if they are defined 2016-10-13 19:56:25 +02:00
bd0deecc89 Team colors are uint32 2016-10-13 19:56:25 +02:00
e9f2b166a6 Fix submission replay possibility 2016-10-13 19:56:24 +02:00
a8031452f7 New scripts to get files 2016-10-13 19:56:23 +02:00
f3a15b00e9 Too much things 2016-02-01 16:07:41 +01:00
d35bdca3b1 Prepare tries rank 2016-01-25 03:08:42 +01:00
9b293b7d32 themes.json: add stat of tries count 2016-01-25 03:08:42 +01:00
e55804fecb my.json: When solved=false, solved_number now contains tries count 2016-01-25 03:08:42 +01:00
85646fd2d7 Recall ThemeId in my.json exercices 2016-01-25 03:08:42 +01:00
9c1f6c4ab8 theme: new function for getting just the ID of the theme, not all the Theme 2016-01-25 03:08:42 +01:00
7f9581f578 Fix rank order... 2016-01-24 14:33:17 +01:00
136b436af5 Allow teams to change their name 2016-01-24 14:33:16 +01:00
e207e90c2e my.json now contains team members, instead of teams.json 2016-01-24 14:33:16 +01:00
890d3e2fdf Fix segv 2016-01-24 14:33:16 +01:00
fce5b26e5d Points are given through my.json 2016-01-24 14:33:15 +01:00
fdeffbdefe Last minute fixes 2016-01-23 14:12:03 +01:00
645f40f0c6 format 2016-01-23 13:19:28 +01:00
8788eea4f0 Use MySQL instead of SQLite 2016-01-23 13:17:24 +01:00
70b6b30067 backend: treat file found in directory discovered + handle multiple keys + generate my.json 2016-01-23 12:57:15 +01:00
c1746f3dc7 libfic: Can retrieve the Theme from an exercice 2016-01-23 12:57:15 +01:00
859dbc68cb Add authors in themes 2016-01-23 12:57:15 +01:00
e628e7931c Extract my.json generation 2016-01-23 12:57:15 +01:00
992dbfc67d Bufferize file download (to avoid OOM) 2016-01-23 12:57:14 +01:00
52d23b8920 Fix typo 2016-01-23 12:57:14 +01:00
8465f442c6 Change HasSolved behaviour: now return last try if not solved 2016-01-23 12:57:11 +01:00
3aafb15f19 Add rank 2016-01-21 05:34:00 +01:00
5a8d2c36b7 Export themes.json 2016-01-21 05:34:00 +01:00
47610f0e2a Export teams.json 2016-01-21 05:34:00 +01:00
664d78f913 Fix number of previous answered teams 2016-01-21 05:33:59 +01:00
69ad64715c Import file from owncloud 2016-01-21 05:33:59 +01:00
ede5bb18b1 Add certificate generation and revokation 2016-01-21 05:33:59 +01:00
59ae11e68d Add a color field for teams 2016-01-21 05:33:58 +01:00
381aefa597 HasSolved now returns a tuple (bool, Time, int) 2016-01-21 05:33:58 +01:00
c33c2b8e8a Cache file size 2016-01-21 05:33:57 +01:00
c8d1575ee1 Add a function to get all exercices 2016-01-21 05:33:57 +01:00
1bd8374703 Add HasAccess function 2016-01-21 05:33:57 +01:00
5a2a950b1f Use byte slice instead of arrays 2016-01-21 05:33:57 +01:00
e3f7cce80a Able to check submission 2016-01-19 14:42:38 +01:00
92b81e467f Move common structs to libfic 2016-01-19 14:42:37 +01:00