8a6d480d17
sync: Make value lowercase if flag is not case sensitive
2021-12-11 02:02:06 +01:00
57d351c6c1
sync: Allow free hint
2021-12-11 02:02:06 +01:00
43be59b97d
admin: Create a GitImporter based on git binaries
2021-12-11 02:02:06 +01:00
9fe1374a77
sync: Try to use a ssh key if no ssh-agent configured
2021-12-11 02:02:06 +01:00
724b00b825
repochecker: Enforce archive types
2021-12-11 02:02:06 +01:00
038abe450d
admin: Add a route and a button to sync the filesystem
2021-12-11 02:02:06 +01:00
a06602a7e8
admin: Add new API route to perform smart theme update controled by hooks
2021-12-11 02:02:06 +01:00
995740e275
admin: Add a new option -4real to avoid mass progression deletion
2021-12-11 02:02:06 +01:00
49664c3dfe
Implement radio flag type
2021-12-11 02:02:06 +01:00
61fccca070
Implement unit property for flags
2021-12-11 02:02:06 +01:00
c3742ade4e
Implement number flags
2021-12-11 02:02:06 +01:00
495b08463f
sync: Check that UCQ value is not 'true' nor 'false'
2021-11-14 17:30:29 +01:00
89ca192890
sync: Add Git Importer
2021-11-14 17:30:29 +01:00
aebfb7bf96
sync: Add Init and Sync functions
...
Init initializes the directory/repository before the first use.
Sync is called to unsure the directory is up-to-date.
2021-11-14 17:30:29 +01:00
08da42e273
dashboard/admin: Adapt to 16/9
2021-09-09 11:33:59 +02:00
105034ec8c
Add global score coefficient
2021-09-09 11:33:59 +02:00
cd73622cae
New settings to only count bad submissions
2021-09-09 11:33:59 +02:00
b887288c78
admin: Update way of modulus calculation
2021-09-09 11:33:59 +02:00
f6fec437f9
admin: Change challenge duration to 6h
2021-09-09 11:33:59 +02:00
cf1d8d9516
settings: Add IgnoreTeamMembers
2021-09-09 11:30:13 +02:00
b6ed4fd966
admin: Hide team's password by default on team page
2021-09-09 11:30:13 +02:00
ac4fc633ce
admin: Bump to 1.
2021-09-09 11:30:13 +02:00
5eeb1a6297
admin: Handle team password
2021-09-09 11:21:29 +02:00
5fa94ecbed
New project remote-scores-sync-zqds
2021-09-08 02:07:37 +02:00
63de5d64b1
fic: Pick HSL function to generate random colors
2021-09-08 02:07:37 +02:00
5c12963da8
fic: Add team's external_id to allow team and score synchronisation
2021-09-08 02:07:37 +02:00
abf0715dbf
admin: Insert $team assignee in db automatically
2021-09-08 02:07:37 +02:00
2b58e707ca
admin: precise kind of error when filling claim
2021-09-08 02:07:37 +02:00
74d77dce9f
sync: Add partner's info
2021-09-08 02:07:37 +02:00
3c42bef298
CI: Fix compilation problems
2021-09-01 01:49:28 +02:00
dcb0cb315b
admin: Can modify help and order props in ui
continuous-integration/drone/push Build is failing
2021-08-31 20:39:24 +02:00
6223d2be36
sync: Also import hints during speed sync
2021-08-31 19:34:47 +02:00
74e8c3801a
fic: Add Order, Help and Type values in struct
2021-08-30 18:33:14 +02:00
867e9bb345
sync: Fix a div by 0 when no exercice detected in theme
2021-08-30 18:31:32 +02:00
7e9c2ccbe9
sync: Ignore some hidden files/dirs
continuous-integration/drone/push Build is passing
2021-07-30 11:32:23 +02:00
29607981e4
admin: Use relative path to call API
2021-07-22 16:17:03 +02:00
8f1b44e3dd
New env variable FIC_BASEURL to change the base URL
2021-07-22 16:17:03 +02:00
7fc860edec
admin: Embed static assets into binary
2021-06-09 23:26:40 +02:00
57fe1a7517
sync: Ignore exercice directories not containing at least - sep
continuous-integration/drone/push Build was killed
2021-05-14 01:25:08 +02:00
8b261011b6
repochecker: new option avoiding failure if resolution.mp4 missing
2021-05-14 01:14:30 +02:00
9fa89e0793
repochecker: fix file concatenation
2021-05-14 00:42:40 +02:00
9dc1f401b7
Use go modules
2021-05-14 00:42:40 +02:00
f4dcaa23a3
QA: Add new script to migrate QA content from a DB to another
2021-02-05 16:56:27 +01:00
1445917fec
Include all existing associations when generating htpasswd
continuous-integration/drone/push Build is passing
2021-01-30 05:13:56 +01:00
8e8fa7c61c
sync: use Separator attribute
continuous-integration/drone/push Build is passing
2020-12-11 21:03:12 +01:00
911bcb032e
Nouvelle option pour avoir un lien vers le rapport QA de l'exercice
2020-11-13 11:38:47 +01:00
1436d9ca81
admin: New route to reset settings to sane default values
2020-11-13 11:34:31 +01:00
a0155c6deb
Replace old Help term by Placeholder
continuous-integration/drone/push Build is passing
2020-09-07 19:34:10 +02:00
c9932cdaf6
admin: change exercice's Delete button to cascade deletion
2020-09-06 12:21:45 +02:00
130bb92dc8
admin: Fix some toast unreadable
2020-05-16 03:53:07 +02:00
5b84e4bfdb
Fix exercices' theme loading in admin
2020-05-16 03:52:43 +02:00
64b9e9a251
New option to disallow team creation: join only
2020-05-16 03:51:36 +02:00
21cc875cc0
Update ficicon
2020-04-15 07:39:57 +02:00
adb424ea03
Use fmt.Errorf
2020-04-15 07:39:38 +02:00
45069d4fbb
admin: replace notifications with bootstrap toast
2020-03-08 12:48:25 +01:00
e017e11f68
dashboard: add graph on side
2020-01-30 19:00:14 +01:00
5849648c70
admin: fix handling of description in claims
2020-01-30 19:00:14 +01:00
83ba3b88a5
dashboard: add trophee scene
2020-01-30 19:00:14 +01:00
66a72633d6
dashboard: generate a special teams.json with members for trophee scene
2020-01-30 19:00:14 +01:00
b9fa5accff
dashboard: add graph score
2020-01-30 18:57:07 +01:00
35bd908374
admin: add graphique in public
2020-01-30 18:55:57 +01:00
7c84301c04
admin: implement Enter keypress on search
2020-01-30 18:55:57 +01:00
cb97af2f8a
admin: redesign home page
2020-01-30 18:55:57 +01:00
4f237677e2
admin: version bump
2020-01-30 18:55:57 +01:00
5df1cc6e93
admin: add some stats about exercices
2020-01-30 18:55:57 +01:00
007efc6118
health: done
2020-01-30 18:55:57 +01:00
23b6b2b005
admin: handle case insensitive ucq
2020-01-30 18:55:56 +01:00
32fe61f557
admin: refresh claims list each 10s
2020-01-30 18:55:56 +01:00
d093f3670b
admin: on pki page, press enter to associate certificate
2020-01-30 18:55:56 +01:00
3f692984c7
admin: new page to display exercices flags
2020-01-30 18:55:56 +01:00
0bc42282aa
frontend: resize heading pictures as thumb file
2020-01-30 18:55:56 +01:00
b387f011d8
admin: add exercices stats accordion
2020-01-30 18:55:56 +01:00
f4c74f57d6
admin: Fix bad names in update choices
2020-01-30 18:55:56 +01:00
3cb4e98bd1
admin: display team and exercice in a new window
2020-01-30 18:55:56 +01:00
d944be349a
admin: increase claim filtering
2020-01-30 18:55:56 +01:00
73eb3ab1c0
admin: count only levels of new claims owned
2020-01-30 18:55:56 +01:00
d8584a8a31
admin: can sort claim by last_update
2020-01-30 18:55:56 +01:00
83b7df7e69
admin: add message on claim state change and assignee change
2020-01-30 18:55:56 +01:00
e45a674937
admin: validate team association on enter press
2020-01-30 18:55:56 +01:00
e945071a10
admin: add a route and buttons to generate/delete fichtpasswd, if needed
2020-01-30 18:55:56 +01:00
a3ffdeae17
frontend: display issues related to the team
2020-01-30 18:55:56 +01:00
7bec409ab8
sync: fix hint dependancies error not reported
2020-01-30 18:55:56 +01:00
9d93331868
admin: display {hint,flag,mcq} dependancies on interface
2020-01-30 18:55:56 +01:00
ac9361b4ce
admin: redesign propagation time button + can use propagation time in public timer
2020-01-30 18:55:56 +01:00
34a2370236
admin: can renew the PKI from interface
2020-01-29 16:02:30 +01:00
5c17dd4605
admin: add indication on how to use exercice dependancies
2020-01-29 16:02:30 +01:00
99e53ccfe6
admin: use hexadecimal certificate ID
2020-01-29 16:02:30 +01:00
e937073588
Files can now depends on MCQ
2020-01-29 16:02:30 +01:00
823328ead2
sync: fix file merging when using symlinks
2020-01-29 16:02:30 +01:00
6f64eaed95
admin: improve claims with menu
2020-01-29 16:02:30 +01:00
9186bbc229
frontend: add players possibility to report problems with exercices
2020-01-23 18:27:14 +01:00
32dc9c1a8c
admin: improve claims with related exercices
2020-01-23 18:27:14 +01:00
2e3f7c6894
admin: claims now reference exercices
2020-01-23 18:27:14 +01:00
56b79cae2d
admin: make claims more responsive
2020-01-23 18:27:14 +01:00
80a4192cb4
admin: add badge of new/mines tasks in menu
2020-01-23 18:27:14 +01:00
a4c87b92a5
admin: introducing speedy deep sync and themed deep sync
2020-01-23 18:26:30 +01:00
f7762c0828
sync: don't try to import part of splitted files, just import the whole file
2020-01-23 18:26:30 +01:00
2bae30a841
admin/api: new route to list remote files and their properties
2020-01-23 18:26:30 +01:00
084d39f6cf
Fix typos
2020-01-23 18:26:30 +01:00
22c4835875
admin: use default bootstrap theme, even when served with frontend
2020-01-23 18:26:30 +01:00
4f6480d7f8
sync: add some precision around Empty flags detection
2020-01-23 18:26:30 +01:00
769158a9d7
repochecker: add new option -skipfiledigests to speed up the checks and avoid downloading lots of content
2020-01-23 18:26:30 +01:00
aee3500fdf
sync: avoid depending on database when importing files
2020-01-23 18:26:30 +01:00
16c337c2bc
Update angularJS, jQuery and bootstrap
2020-01-23 18:26:30 +01:00
aba311aebd
sync: detect bad label wording
2020-01-23 18:26:30 +01:00
47ba134b55
Implement flag type 'text': this is like keys, but on multiple lines
2020-01-23 18:26:30 +01:00
8f998485bb
sync: resize heading pictures
2020-01-23 18:26:30 +01:00
9983542653
admin: always use normalized hexadecimal certificate ID
2020-01-23 18:26:30 +01:00
546cae869b
admin: passwd authentication can be made with team name or certificate ID
2020-01-23 18:26:30 +01:00
e4b740b5bc
admin: Use SSHA password instead of APR1
2020-01-17 14:57:04 +01:00
572082cd5f
fill_teams: also generate apr1 htpasswd
2020-01-17 14:57:04 +01:00
225f6d2c99
fill_team: fix generation of htpasswd
2020-01-17 14:57:04 +01:00
5ffbeabf5b
fill_team: avoid \ char in password + fix substitution of UTF-8 chars
2020-01-17 14:57:04 +01:00
a475617657
admin: heath api now checks untreated files
2020-01-17 14:57:03 +01:00
b4fa57f9c9
sync: introducing showlines property for vectors
...
It allows players to know in advance how many items the vector is composed.
2020-01-17 14:57:03 +01:00
f3a34c00db
sync: implement hint dependency on flags
2020-01-17 14:57:03 +01:00
9693940d8c
sync: add logs on stderr when doing deepsync
2020-01-17 14:57:03 +01:00
d97ecde3fb
sync: return binding between challenge.txt IDs and DB item
2020-01-17 14:57:03 +01:00
4a490b1a33
admin: PKI validity no more hardcoded
2020-01-17 14:57:03 +01:00
14f5cf29b7
dashboard: parametrize URL in welcome team
2020-01-17 14:57:03 +01:00
fbae34ee4f
sync: add error message when missing heading.jpg
2020-01-17 14:57:03 +01:00
26eab7ed67
sync: import heading.jpg only in Sync phase
2020-01-17 14:57:03 +01:00
5dcb13629a
admin: display on interface time synchronization diff
2020-01-17 14:57:03 +01:00
6740256a32
sync: implement hint dependency on flags
2020-01-17 07:02:40 +01:00
cefed3bf23
admin: fix synchronisation when idtheme is not in url
2019-11-25 14:52:19 +01:00
97a3aa713f
sync: fix hash computation by factorizing
2019-11-25 14:52:19 +01:00
0766fbe480
sync: don't rely on map order to import flags
...
Sometimes, maps order doesn't match file order. Return flag ID as
list to keep the order.
2019-11-25 14:52:19 +01:00
Tristan Ruter-Naon
cb7f3326c4
admin: fix typo
2019-11-25 14:52:19 +01:00
f2fc142869
api: remote route takes advantage from builds functions
2019-11-25 14:52:19 +01:00
ca891cd9b2
sync: Fix non-import of MCQ during sync
2019-11-25 14:52:19 +01:00
6265f85149
sync: Implement vector flags
2019-11-25 14:52:19 +01:00
99fcc99e82
sync: turn IgnoreCase on by default with reverse field CaseSensitive
2019-11-25 14:52:19 +01:00
33f7d104e4
sync: MCQ justifications are given in the choice tag directly
2019-11-25 14:52:19 +01:00
d7f0425d8a
repochecker: Fix given URL to documentation
2019-11-25 14:52:19 +01:00
4e01377a29
sync: search theme's label in a title.txt file, fallback on dirname
2019-11-25 14:52:19 +01:00
846f2ce8a4
admin: Double check before doing dangerous actions in settings panel
...
Suggested-by: Nicolas Ribeyrolle <nicolas.ribeyrolle@epita.fr>
2019-11-25 14:52:19 +01:00
8e618565ad
sync: Fix long running bug known as "why my fresh uploaded file is now empty again"
...
Thanks to Nicolas Ribeyrolle
2019-11-25 14:52:19 +01:00
8131fda0e7
admin: display file dependancies and be able to remove them
2019-07-21 23:50:26 +02:00
c8ece39cb2
sync: alert about unknown keys in challenge.txt
2019-07-21 22:38:45 +02:00
936ef09e33
admin: fix strange behaviour when deleting some items
2019-07-21 21:55:36 +02:00
973363b3da
admin/api: refactor file API
2019-07-21 21:55:11 +02:00
3e5b4ebad2
admin: add missing default settings
2019-07-12 19:22:05 +02:00
ba5642da8f
admin: new form to update history coefficient
2019-07-12 19:21:07 +02:00
3bcac39f5f
FIC2020 logo
2019-07-10 17:41:07 +02:00
32f1c86519
sync: ignore directory beginning with . (like .git)
2019-07-10 13:09:08 +02:00
eb95d861d3
sync: Extract function that import hints from importer
2019-07-10 13:09:08 +02:00
4039a394b5
sync: Extract function that import flags from importer
2019-07-10 13:09:08 +02:00
3f55845374
sync: Extract function that import files from importer
2019-07-06 04:08:29 +02:00
3f99771910
sync: Extract function that builds an exercice from importer
2019-07-06 03:28:44 +02:00
682598fdbb
sync: Extract function that builds a theme from importer
2019-07-06 03:28:44 +02:00
771627a0da
pki: fix team association, complement to 68e5c4cd2b
...
The fix introduced in the referenced commit was not working.
This time, it has been tested with the following commands:
# Associate all certificate to a team
curl http://localhost:8081/api/certs/ | jq -r .[].id | while read CERTID; do curl -X PUT -d '{"id_team":1}' http://localhost:8081/api/certs/$CERTID ; done
# For each certificate associated with the team, try to connect to the server with each certificate. Report failing certificates.
curl -s http://localhost:8081/api/teams/1/certificates | jq -r '.[] | .id + " " + .password' | while read CERTID PASSWORD; do curl -sf --cert-type P12 --cert $CERTID.p12:$PASSWORD https://fic.srs.epita.fr/my.json > /dev/null || echo $CERTID; done
2019-02-06 03:40:49 +01:00
b778d29dd9
admin: allow certid to finish by .p12, to permit downloading .p12 file
2019-02-06 03:40:49 +01:00
703eaef880
admin: display serial in hexadecimal
2019-02-06 03:40:49 +01:00
14d31737e0
admin: new route and interface to manage symlink for team association exclusing certificates
2019-02-06 03:40:49 +01:00
2b95995104
settings: add canJoinTeam parameter
2019-02-06 03:40:49 +01:00
a35aa7be70
admin: add a new route to update team history coefficient
2019-02-06 03:40:49 +01:00
6a1f73c895
admin: include coefficient in history.json
2019-02-06 03:40:49 +01:00
60ec9704e3
admin: add exercice history.json
2019-02-06 03:40:49 +01:00
2381fb490b
libfic: fix checks in handling of team history deletiion
2019-02-06 03:40:49 +01:00
34d2054e04
sync: avoid useless line break at the end of markdown processing
2019-02-06 03:40:49 +01:00
473332e101
admin: show only active team in export
2019-02-06 03:40:48 +01:00
73db9da682
admin: thanks to ng-base, don't need other modifications
2019-02-06 03:40:48 +01:00
650f1f4d59
admin: add a new route to generate a file for movie links
2019-02-06 03:40:48 +01:00
1757b40a9c
Remove old unused files
2019-02-06 03:40:48 +01:00
5714e8f41b
admin: start adding monitor
2019-01-23 02:25:19 +01:00
fa2d514bbc
dashboard: add rank on the side
2019-01-23 01:38:00 +01:00
8abe57ffb6
admin: new API route to display local monitoring infos
2019-01-22 08:50:18 +01:00
eee2cd6a2f
admin: add a button to edit the raw flag value instead of the checksum
2019-01-22 08:49:44 +01:00
088c2402cd
admin: add button to disable inactive teams
2019-01-22 08:49:44 +01:00
48fcfec0d0
backend: use a new team field 'active', to avoid some team generation
2019-01-22 08:49:44 +01:00
19b57f5908
admin: read sync import in settings page
2019-01-22 08:49:44 +01:00
58dbd9499b
sync: fix report display with some security headers
2019-01-22 08:49:44 +01:00
7d9ad18f42
settings: new parameter to don't respect flag dependancies
2019-01-22 08:49:44 +01:00
24989c4cfa
settings: new option to disable event fetch from server side
2019-01-21 09:58:36 +01:00
a4e0a90adf
dashboard: can now change the sidebar
2019-01-21 09:58:36 +01:00
8190bbfdc0
Update bootstrap
2019-01-21 09:58:36 +01:00
6042f9b477
sync: check video file size during import process
2019-01-21 09:58:36 +01:00
2ac205bf83
admin: add a page to view resolution video
2019-01-21 09:58:36 +01:00
4ee70a8781
settings: change param to enable/disable depends by the depth
2019-01-21 09:58:36 +01:00
5d432cdcfc
admin: API version bump
2019-01-21 09:58:36 +01:00
7227c7109e
admin: add a progression indicator for the deep synchronization
2019-01-21 09:58:36 +01:00
d9fb261232
sync: import files first during the full import, to permit file dependency to flag
2019-01-21 09:58:36 +01:00
4f98536f91
sync: import MCQ justification as Flag
2019-01-21 09:58:36 +01:00
07ec6cb613
sync: Use hint title if provided
2019-01-21 09:58:36 +01:00
2879b697c0
sync: fix ordered import
2019-01-21 09:58:36 +01:00
cf3c4b998f
admin: add new event button on event-details page
2019-01-21 09:58:36 +01:00
8749a7c164
Make go vet -strictshadow mostly happy
2019-01-21 09:58:36 +01:00
af1cecd3ce
admin: highlight revoked certificates on PKI page
2019-01-21 09:58:36 +01:00
024ae04f45
admin: new page to see score details
2019-01-21 09:58:36 +01:00
4a4d0f634a
settings: add new coefficient for all exercices
2019-01-21 09:58:36 +01:00
9be56fb9a2
settings: new option to postpone the activation of the given settings file
2019-01-21 09:58:36 +01:00
8e6b8829ea
libfic: new way to handle exercice dependancies
2019-01-21 09:58:36 +01:00
c5f8288f39
settings: add coefficient to hint and wchoices
2019-01-21 09:58:36 +01:00
2623d9dd61
admin: new route to generate htpasswd corresponding to certificate in use by team
2019-01-21 09:58:36 +01:00
6925614f49
admin/api: use libfic struct instead of api one
2019-01-21 09:58:36 +01:00
ff3dec059c
sync: Refactor exercice flags
2019-01-21 09:58:35 +01:00
0f9cc39cc7
Update PKI dates
2019-01-21 09:58:35 +01:00
a66d6885e7
Refactor flags
...
Both QCM and Key are Flag
2019-01-21 09:58:35 +01:00
93f36faafe
admin: new route to export nginx translation file from team name to team_id
2019-01-21 09:58:35 +01:00
25b23e7ae0
sync: fix message
2019-01-21 03:08:06 +01:00
ba9bf4ef45
sync: ignore bad named directory when looking for dependancies
2019-01-21 03:08:06 +01:00
d1e98fc4f9
admin: fix bad location change after exercice deletion
2019-01-21 03:08:06 +01:00
0d8505131e
sync: automatically add before ponctuation
2019-01-21 03:08:06 +01:00
0075bdeb52
admin: update public screen presets
2019-01-21 03:08:06 +01:00
8c87451d80
sync: better trim authors lines
2019-01-21 03:08:06 +01:00
f3eabd74fc
admin: add wchoices in team_history.json
2019-01-21 03:08:06 +01:00
99ef5046db
admin: add button to move to previous and next exercice
2019-01-21 03:08:06 +01:00
aa3750bb68
dashboard: improve general design (mostly events related)
2019-01-21 03:08:06 +01:00
83ad6340b2
admin: display important information first
...
No more useless column, link with theme when possible
2019-01-21 03:08:06 +01:00
81ce648b5d
admin: add related theme in exercice list page
2019-01-21 03:08:06 +01:00
69979ced1d
admin: able to download files through /files/ route
2019-01-21 03:08:06 +01:00
85658bb3c6
admin: secondary formating
2019-01-21 03:08:05 +01:00
4de0c64672
fill_teams.sh: add a new option to generate password
2019-01-21 03:08:05 +01:00
a1c94d582d
admin: score grid is a JSON to display scoring detail for a team
2019-01-21 03:08:05 +01:00
5dbf60eaa2
admin: new route to try a flag
2019-01-21 03:08:05 +01:00
d89cd2f0ca
sync: Allow \r at EOL in DIGESTS
2019-01-21 03:08:05 +01:00
910ec94fd8
Add a new setting to don't count same responses in scores
2019-01-21 03:08:05 +01:00
7edd70c3c0
admin: apply settings to internal structures
...
This allows scores and rank to be properly generated in admin interface.
2019-01-21 03:08:05 +01:00
d6dfdbc238
admin: generate events file on delete
2019-01-21 03:08:05 +01:00
7970b552e9
dashboard: move public.json files into a dedicated directory
2019-01-21 03:08:05 +01:00
485ffafc9a
admin: display errmsg
2019-01-21 03:08:05 +01:00
d1ce2a0740
Wording: tentative is better than soumission
2019-01-21 03:08:05 +01:00
819614278f
Update bootstrap
2019-01-21 03:08:05 +01:00
c02b30409b
use clearfix feature from bootstrap
2019-01-21 03:08:05 +01:00
c877da1161
admin: use accordeon on exercice page
2019-01-21 03:08:05 +01:00
07dcc1804b
admin: new button in navbar to regenerate static files
2019-01-21 03:08:05 +01:00
f2e1268398
admin: rearrange settings page
2019-01-21 03:08:05 +01:00
6aacce23ca
admin: add the ability to deep sync from interface
2019-01-21 03:08:05 +01:00
4dba8dc882
admin: improve notify with HTML, margins, ...
2019-01-21 03:08:05 +01:00
b2e639697f
admin: place notify at the bottom of the screen
2019-01-21 03:08:05 +01:00
5ad7d208b3
admin: fix notify closing
2019-01-21 03:08:05 +01:00
d1a41bbcb7
admin: add time progress bar
2019-01-21 03:08:05 +01:00
ff3e83e9ee
admin: theme page format
2019-01-21 03:08:05 +01:00
2ccc59b4fa
admin: add the ability to sync only one exercice
2019-01-21 03:08:05 +01:00
dc4a4925e3
sync: refactor exercice synchronization
2019-01-21 03:08:05 +01:00
c8cbbcb84d
admin: use common.js as well
2019-01-21 03:08:05 +01:00
7f2ae673d0
sync: try to remove old exercice without any player try
2019-01-21 03:08:04 +01:00
0e36a850cf
Array flags can be non-ordered
2019-01-21 03:08:04 +01:00
dbf1985d25
Implement flag arrays
2019-01-21 03:08:04 +01:00
deb12052b5
sync: include headline in exercice overview, as it is difficult to retrieve otherwise
2019-01-21 03:08:04 +01:00
99024ee5ce
admin: Improve public interface
2019-01-21 03:08:04 +01:00
d25462177e
admin: improve claim interface
2019-01-21 03:08:04 +01:00
476f0f553c
implement choices_cost
2019-01-21 03:08:04 +01:00
f9abdd23c6
Dependancy between flags
2019-01-21 03:08:04 +01:00
21697f01ca
New field for exercice to display a text after exercice validation
2019-01-21 03:08:04 +01:00
87471acf98
sync: import files in markdown, relative to theme/exercice dir
2019-01-21 03:08:04 +01:00
8c95782eff
Implement and display headlines in interface
2019-01-21 03:08:02 +01:00
abd7fc6bef
sync: randomize imports: themes order, MCQ and UCQ choices
2019-01-21 03:07:47 +01:00
614003a7cd
libfic: handle mcq in team history
2019-01-21 03:07:47 +01:00
c5b65289d3
Add new helper string related to justified MCQ flag
2019-01-21 03:07:47 +01:00
11e0b46034
pki: fix out-of-bound error when a symlink directory doesn't contain a serial
2019-01-21 03:07:47 +01:00
0f48b27a04
Avoid Atoi to avoid int convertion
2019-01-21 03:07:47 +01:00
ad6fe0394f
admin: API version bump
2019-01-21 03:07:47 +01:00
3a0c892148
sync: import heading theme image
2019-01-21 03:07:45 +01:00
168e7cd636
frontend: use a menu to group scenarii
2018-12-09 20:41:43 +01:00
d7553f0392
Handle justified MCQ in admin and sync part
2018-12-08 20:35:36 +01:00
488a032eba
Handle choices in UCQ (db, sync done)
2018-12-08 20:35:36 +01:00
44d335bc9f
Add issue field for exercice, to be able to communicate about problem with exercice
2018-12-08 20:35:36 +01:00
0654033721
admin: use toolbar inside exercice details
2018-12-08 20:35:36 +01:00
6b54704d59
admin: can perform mass editing on exercices
2018-12-08 20:35:36 +01:00
f183985982
admin: Add exercice's tags: sync, api, interface done
2018-12-08 20:35:36 +01:00
665fd301c6
admin: avoid HTML button without type
2018-12-08 20:35:36 +01:00
1c09ae2fa8
admin: Continue refactoring of exercice view
2018-12-08 20:35:36 +01:00
06dcd0c2b7
admin: Refactor exercice page to include regexp validator
2018-12-08 20:35:36 +01:00
5eaf1926c1
Update angulasJS
2018-12-08 20:35:36 +01:00
ff56ec9fe3
libfic/flag: add validatorRegexp field
2018-12-08 20:35:32 +01:00
d21f3b0b83
Rename Exercice's Keys as Flags
2018-12-08 20:34:04 +01:00
f36e1c4e4d
Stores ignorecase property for flags
2018-12-08 20:33:39 +01:00
3146e75ead
sync: rehandle dependency, trivial processing
2018-12-08 20:32:36 +01:00
2a6fbd4e32
admin&sync: insert format helper in database
2018-12-08 20:32:33 +01:00
971273a185
admin: improve usability of theme edition page
2018-12-08 03:23:08 +01:00
1e2a74f3ca
sync: add dependency on flag to download file
2018-12-08 03:23:08 +01:00
f9e1cf6691
sync: add a new section to allow locking file waiting flag validation
2018-12-08 03:23:08 +01:00
da2a88a3a6
sync: parse complex AUTHORS.txt as described in README
2018-12-08 03:23:08 +01:00
20dfd99ec0
admin: new route to check file on disk
2018-12-08 03:23:08 +01:00
af2fe21d73
admin: initialize directory structure and required files at launch
2018-12-08 03:23:08 +01:00
7da6f5cd0c
settings: add VideosLink parameter
2018-12-08 03:23:08 +01:00
6034246015
Retrieve time through X-FIC-Time header instead of time.json
2018-12-08 03:23:08 +01:00
c33390fa80
sync: import texts as Markdown
2018-12-08 03:23:08 +01:00
be7a159815
sync: Perfers content from challenge.txt to import hints
2018-12-08 03:23:08 +01:00
9ab5738cff
admin/sync: theme's name is now part of the theme's dirname
2018-12-08 03:23:07 +01:00
66391baeef
sync: alert when imported file is empty
2018-12-08 03:23:07 +01:00
a6bc0727b2
admin: use spacing bootstrap utility
2018-12-08 03:23:07 +01:00
3a65363ebb
admin: implement MCQ edition in interface
2018-12-08 03:23:07 +01:00
92ba880006
sync: save import_report into StaticDir
2018-12-08 03:23:07 +01:00
e6b1b932f4
sync: fix synchronized URLId
2018-12-08 03:23:07 +01:00
Thibaut
3b7d9a2a75
sync: handle new sync format: flags
2018-12-08 03:23:07 +01:00
Thibaut
af55c5af9f
sync: handle new sync format: extends challenge defines
2018-12-08 03:23:07 +01:00
Thibaut
d303ecfa38
sync: handle new sync format: filenames and locations
2018-06-22 20:34:35 +02:00
492ab72dcd
sync: read UTF8 string, don't expect sane encoding from imported files, just force it
2018-05-13 14:16:06 +02:00
e126743d69
sync: Update specifications
...
Add same constraint for hint files than files (need DIGESTS.txt).
Update flag_ucq usage (difference between value and label).
2018-05-13 14:16:06 +02:00
dcb67fba63
Docs, docs, docs!
2018-05-13 14:15:07 +02:00
12a85ee804
admin: fix bootstrap 4.0 custom checkbox
2018-05-11 15:03:11 +02:00
0d125071ef
admin/sync: update README.md to introduce new syntax of the year
2018-05-11 15:03:10 +02:00
1a959862f1
admin/sync: fill README.md with synchronisation instructions for students
2018-05-11 15:03:10 +02:00
156a87abc0
admin/pki: use symlink instead of DB to associate certificate to team
2018-05-11 15:03:10 +02:00
b0f81c59d4
Update logo to FIC 2019 developers
2018-05-11 15:03:10 +02:00
bcc598ebd5
Write docs!
2018-05-11 15:03:09 +02:00
c460bb7bf5
Handle graceful http shutdown
2018-05-11 05:27:51 +02:00
0ec90b14c6
Fixes thanks to go vet
2018-05-11 05:27:51 +02:00