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
4b538cdea8
admin: improve exercice-list
2018-05-11 05:27:51 +02:00
a78973be29
admin: fix margin mess in menus
2018-05-11 05:27:51 +02:00
4077431ef0
admin: remove last occurence of initialName
2018-05-11 05:27:51 +02:00
faab83e037
admin: improve claim-list usability
2018-05-11 05:27:51 +02:00
00688cb996
public: news carousel for ranking
2018-05-11 05:27:51 +02:00
62aea5413e
use more official blake2b checksum
2018-05-11 05:27:51 +02:00
1dcebc4eca
public: new carousels in pubic interface: teams and exercices
...
+ fix autocarousel directive
2018-05-11 05:27:51 +02:00
68e5c4cd2b
pki: improve serial number generation + fix team association
...
Replace math/rand by crypto/rand.
Fix big when associating certificate with leading zero: nginx prepend 0 wherehas we don't.
2018-05-11 05:27:51 +02:00
3ed8c619b1
admin: disable revoke button when already revoked
2018-05-11 05:27:51 +02:00
ff98bfa79f
admin: can edit flags after creation
2018-05-11 05:27:51 +02:00
167a6ae1cb
admin: fix some details about times
2018-05-11 05:27:51 +02:00
45620ba4c2
admin: try to generate events.json file
2018-05-11 05:27:51 +02:00
3aadab40b0
public interface: random fixes
2018-05-11 05:27:51 +02:00
e53bcadc05
admin: add happy hour preselect public scene
2018-05-11 05:27:51 +02:00
1110afa058
public front: can choose levels to display in levels table
2018-05-11 05:27:51 +02:00
bd924150eb
public front: add new carousel displaying themes
2018-05-11 05:27:51 +02:00
6d1ef0f51c
admin: new route to fill URLIds if they are not defined
2018-05-11 05:27:50 +02:00
4dbfffef7b
admin: bump new API version
2018-05-11 05:27:50 +02:00
59beafb314
admin/pki: avoid some hard to read characters in password
2018-05-11 05:27:50 +02:00
c18465d498
Reserved directory for public interface now lives in public instead of _public
2018-05-11 05:27:50 +02:00
c118035c33
Introducing new PKI management
2018-05-11 05:27:50 +02:00
5b558bcf00
admin/api: bytes handlers now returned data as application/octet-stream
2018-05-11 05:27:50 +02:00
992221a6da
Remove old PKI
2018-05-11 05:27:50 +02:00
e083da2f72
Remove team's initial_name, replaced by their ID
2018-05-11 05:27:50 +02:00
bbaf0ed9d9
Update to angularJS 1.6.8
2018-01-26 12:02:32 +01:00
0c540a39eb
frontend: beautiful URLs
2018-01-26 12:02:32 +01:00
1eef71923a
admin: new interface to manage claims
2018-01-18 12:08:12 +01:00
ca41e4edee
admin/sync: defines.txt can also contains informations about hints
2018-01-18 12:08:12 +01:00
332aa90931
admin/sync: handle exercice gain from toml file: defines.txt
2018-01-18 12:08:12 +01:00
494ccb740b
admin/sync: tiny refactor
2018-01-18 12:08:12 +01:00
1b852f255e
admin: autofocus search fields
2018-01-18 12:08:12 +01:00
beba0a615f
improve overall exercices interfaces
2018-01-18 12:08:12 +01:00
11d0fe8d1f
admin/sync: handle hint files download
2018-01-18 12:08:12 +01:00
6cc40be36a
admin/sync: rename Indice to Astuce
2018-01-18 12:08:12 +01:00
db9077a85c
admin/sync: add stat method to importer
2018-01-18 12:08:12 +01:00
57758cd018
admin/sync: avoid error when no depends.txt exists
2018-01-18 12:08:12 +01:00
24f527ab8a
admin/sync: includes mcq and ucq in full synchronization
2018-01-18 12:08:12 +01:00
935b1666ac
admin/sync: Add last sync date into full_import_report
2018-01-18 12:08:12 +01:00
809d166a2d
admin/sync: avoid false positive when no files are distributed
2018-01-18 12:08:12 +01:00
fc902e1063
admin/sync: import resolution movies
2018-01-18 12:08:12 +01:00
5e2e03f5e9
admin: can edit theme introductions
2018-01-18 12:08:11 +01:00
0f9c8e0335
admin: use light text on dark background in interface
2018-01-18 12:08:11 +01:00
87428909b2
admin: avoid CSRF: use POST instead of GET, mainly for synchronisation methods
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
bc135d00c5
admin: general statistics page
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
bc9d27aa94
public: can control up to 9 separate displays
2018-01-17 18:52:47 +01:00
baf992bccb
admin: fix camembert size overflow
2018-01-17 18:52:47 +01:00
ba88129580
Improve public screen page
2018-01-17 18:52:47 +01:00
55f87f7a67
Bring back glyphicons to life
2018-01-17 18:52:46 +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
eee1558dd9
admin/sync: new error on flags import
2018-01-17 18:52:46 +01:00
a0a2313924
admin: fix display of b2sums
2018-01-17 18:52:46 +01:00
e630bc3d75
Improve bootstrap 4 support
2018-01-17 18:52:46 +01:00
6329f44d42
admin/sync: escape cloud URL
2018-01-17 18:52:46 +01:00
11c8a56f14
admin/sync: handle dependancy between exercices
2018-01-17 18:52:45 +01:00
edc6ca9b7a
change request log format, close to nginx ones
2018-01-17 18:52:45 +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
48e6ba7861
admin: add route to handle quiz
2018-01-17 18:52:45 +01:00
b079f7891c
admin: sync mcq/ucq
2018-01-17 18:52:45 +01:00
31b80a5b2a
admin: msgbox can contains lists
2018-01-17 18:52:44 +01:00
33bf5a0f34
Update angularJS to 1.6.6
2018-01-17 18:52:44 +01:00
73080d7d0d
Update bootstrap to 4.0-beta
2018-01-17 18:52:43 +01:00
978f260c64
js: compatible with angular 1.6
2018-01-17 18:52:43 +01:00
292fef7d12
admin/sync: remove old exercices no more in tree
2018-01-17 18:52:43 +01:00
68bb0e6b21
admin/sync: hide full URI from error message
2018-01-17 18:52:43 +01:00
1ab94862d0
admin/sync: can only perform one deep sync at a time
2018-01-17 18:52:43 +01:00
de3c78b2ee
admin/sync: don't show error when no hints directory to import
2018-01-17 18:52:42 +01:00
bb3e4547bb
admin/sync: regenerate backend after deep sync
2018-01-17 18:52:42 +01:00
92c7de942b
admin: API version bump
2018-01-17 18:52:42 +01:00
8ed23ddc7a
admin: localimporter can make symlink instead of copying whole files
2018-01-17 18:52:42 +01:00
d81f068eba
admin: new route to display import report
2018-01-17 18:52:42 +01:00
a543be0255
admin: able to sync splitted files
2018-01-17 18:52:42 +01:00
b4057c1a2c
admin/sync: generate report on full import
2018-01-17 18:52:41 +01:00
3d59042802
admin: sync.ImportFile takes Importer as first arg
2018-01-17 18:52:41 +01:00
9a9d5fcda4
libfic: Type key is now Label
2018-01-17 18:52:41 +01:00
a1c6eadbe5
Display read-only settings for information purpose
2018-01-17 18:52:41 +01:00
6ef91a92e5
Perform full deep synchronisation
2018-01-17 18:52:41 +01:00
9225038ffa
admin: interface to synchronize
2018-01-17 18:52:41 +01:00
993b83f8e7
admin: can sync exercices
2018-01-17 18:52:40 +01:00
762d3a5222
admin: synchronization of exercices, files, hints and keys
2018-01-17 18:52:40 +01:00
a033f81f5f
admin: new function to retrieve file content
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
bfd7126e1e
tmp
2018-01-17 18:52:40 +01:00
4d1dde4528
admin: Implement theme synchronization
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
99975d9df4
admin: Take cloud URL, user and pass from environment
2018-01-17 18:52:39 +01:00
cd5a9d06ea
Define global default value at initialisation
2018-01-17 18:52:39 +01:00
bf86e40db0
fill_exercices: we are in 2018!
2018-01-17 18:52:39 +01:00
07a372ab79
fill_teams: fix path to import team members
2018-01-17 18:52:38 +01:00
e6e6e6c206
Use BLAKE2b checksum instead of SHA-1 and SHA-512
2018-01-17 18:52:38 +01:00
9325419002
import: avoid ugly padding = at the end of base32 pathname
2018-01-17 18:52:38 +01:00
f17541e252
Move settings and started file into SETTINGS directory
2018-01-17 18:52:38 +01:00
76a4c09f37
admin: add comments
2018-01-17 18:52:37 +01:00
eefac93091
admin: display publication confirmation; show an alert when empty scene
2018-01-17 18:52:37 +01:00
f2089c4d96
admin: display team history
2018-01-17 18:52:37 +01:00
41400a8710
admin: add history route in API
2018-01-17 18:52:37 +01:00
7b2fdaf0ad
admin: alert can contains yes/no buttons
2018-01-17 18:52:36 +01:00
070807b485
admin: can dismiss alert
2018-01-17 18:52:36 +01:00
df5c9532cd
admin: add confirmation message box on error and some success
2018-01-17 18:52:36 +01:00
1458c71cfa
admin: improve team-print view
2018-01-17 18:52:36 +01:00