|
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 |
|
|
88ef2f64c0
|
admin: ensure _public is created at startup
|
2018-01-17 18:52:36 +01:00 |
|
|
a15b285090
|
admin: fix form to append teams
|
2018-01-17 18:52:35 +01:00 |
|
|
82ecd0d6dd
|
admin: Fix redirections when using baseurl
|
2018-01-17 18:52:35 +01:00 |
|
|
d03350f6b3
|
Fix generated JSON in case of error
|
2018-01-17 18:52:35 +01:00 |
|
|
ce46313dd1
|
admin: make baseurl optional
|
2018-01-17 18:52:35 +01:00 |
|
|
410ab529ae
|
admin: don't need submission directory anymore
|
2018-01-17 18:52:35 +01:00 |
|
|
d0f588e47d
|
Generate DNS from env
|
2018-01-17 18:52:34 +01:00 |
|
|
db210ebc5e
|
admin: improve design of settings page
|
2018-01-17 18:52:34 +01:00 |
|
|
2235470d9d
|
admin: manage team certificate from interface
|
2018-01-17 18:52:34 +01:00 |
|
|
2e8d28542e
|
admin: unify API to revoke certificates
|
2018-01-17 18:52:34 +01:00 |
|
|
31c079701f
|
admin: Add a page to list teams and members
|
2018-01-17 18:52:34 +01:00 |
|
|
6148897dac
|
settings: add title and authors
|
2018-01-17 18:52:33 +01:00 |
|
|
963c6ff4f2
|
admin: fix and generalize team stats
|
2018-01-17 18:52:33 +01:00 |
|
|
dea178b7ba
|
admin: add danger alert in select
|
2018-01-17 18:52:33 +01:00 |
|
|
1ebcdd7687
|
Move PKI scripts at root
|
2018-01-17 18:52:33 +01:00 |
|
|
cc3892463a
|
Compute hint mime type in a variable and display it instead of the hint content
|
2018-01-17 18:52:33 +01:00 |
|
|
50ec3df2d6
|
admin: add a route to simulate time.json on backend machine
|
2018-01-17 18:52:33 +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 |
|
|
4fe641a9f5
|
change the way themes are stored in stats
|
2018-01-17 18:52:31 +01:00 |
|
|
17f51f5e7b
|
admin: can force page regeneration
|
2018-01-17 18:52:31 +01:00 |
|
|
318bc4bc4d
|
Update openssl settings
|
2018-01-17 18:52:31 +01:00 |
|
|
544bbb745c
|
admin: new route /members/
|
2018-01-17 18:52:31 +01:00 |
|
|
416ad65c87
|
admin: add public interface management
|
2018-01-17 18:52:31 +01:00 |
|
|
d4177f6228
|
admin: allow import of remote hint and partials remote parts
|
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 |
|
|
4550f653ea
|
admin: Display time before start in UI
|
2018-01-17 18:52:30 +01:00 |
|
|
67f27d3d8b
|
Force cd into PKI directory
|
2018-01-17 18:52:30 +01:00 |
|
|
b1c4ebfe45
|
settings: admin interface see default params
|
2018-01-17 18:52:30 +01:00 |
|
|
ef4a738672
|
admin: control settings
|
2018-01-17 18:52:29 +01:00 |
|
|
b42016c74a
|
Coefficients transit and display on UI
|
2018-01-17 18:52:29 +01:00 |
|
|
b772a22705
|
Hints can something else than text
|
2018-01-17 18:52:29 +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 |
|
|
3f80b89a4c
|
fill_exercices: flags.txt files can use tabulation char as separator instead of :
|
2018-01-17 18:51:54 +01:00 |
|
|
f3a484fb67
|
fill_exercice: define HINT_COST
|
2018-01-17 18:51:54 +01:00 |
|
|
1bd403cd8c
|
Handle file import digest
|
2018-01-17 18:51:53 +01:00 |
|
|
0b4e8a233c
|
admin: various fixes in fill_exercices
|
2018-01-17 18:51:53 +01:00 |
|
|
119280d814
|
admin: can pass args to fill_exercices to limit the fill to a theme or an exercice
|
2018-01-17 18:51:53 +01:00 |
|
|
63931f73ba
|
admin: new argument --rapidimport to speed up the import but don't ensure consistency
|
2018-01-17 18:51:53 +01:00 |
|
|
f0621fa191
|
[admin] Add new routes to manage hints, files and keys
|
2018-01-17 18:51:53 +01:00 |
|
|
b6782962f1
|
[admin] Add events
|
2018-01-17 18:51:53 +01:00 |
|
|
863070c037
|
[admin] Add exercices related pages
|
2018-01-17 18:51:53 +01:00 |
|
|
6a4868b9b3
|
[admin] Add page title
|
2018-01-17 18:51:52 +01:00 |
|
|
27ca960b2a
|
[admin] Add ng-sanitize
|
2018-01-17 18:51:52 +01:00 |
|
|
2e718b22b6
|
Merge exercices API routes
|
2018-01-17 18:51:52 +01:00 |
|
|
4b4c6881c7
|
Bump new version API
|
2018-01-17 18:51:52 +01:00 |
|
|
3b320469b5
|
Use github.com/julienschmidt/httprouter instead of gorilla
|
2018-01-17 18:51:52 +01:00 |
|
|
5a0b81ba32
|
Merge big splitted files before import
|
2018-01-17 18:51:52 +01:00 |
|
|
7fe35c5f1c
|
WIP misc
|
2018-01-17 18:51:51 +01:00 |
|
|
25bf34e82c
|
Multiple hints
|
2018-01-17 18:51:50 +01:00 |
|
|
1054dd7086
|
admin/api: use gorilla/mux instead of Go router
|
2018-01-17 18:51:44 +01:00 |
|
|
384b6cd212
|
themes: don't expect authors to be dirty
|
2017-11-25 15:01:01 +01:00 |
|
|
9894a91948
|
admin: can give the static dir location
|
2017-11-25 15:01:01 +01:00 |
|
|
5fa19223a9
|
admin: can change the baseurl interface
|
2017-11-25 15:01:01 +01:00 |
|
|
aa7afe1a6a
|
by default, only listen on localhost
|
2017-11-25 15:01:00 +01:00 |
|
|
018282d798
|
fill_team: improve script reliability
|
2017-11-25 15:01:00 +01:00 |
|
|
e0a1aeb053
|
admin: add ability to add files from local storage
|
2017-11-25 15:00:54 +01:00 |
|
|
c137969b6a
|
Add a logger prefix
|
2017-04-05 01:51:20 +02:00 |
|
|
347f317dd9
|
[admin] Improve interface
|
2017-04-05 01:51:20 +02: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 |
|
|
bde582ad4b
|
Don't use the default mux for handling requests
|
2016-10-13 19:56:31 +02:00 |
|
|
fc0834ea4c
|
log.Fatal already do Exit(1)
|
2016-10-13 19:56:31 +02:00 |
|
|
ad95ce6f16
|
admin: display team details instead of members
|
2016-10-13 19:56:30 +02:00 |
|
|
c711f9e78e
|
admin: add exercices/ API to access and modify exercices
|
2016-10-13 19:56:30 +02:00 |
|
|
61f96a643c
|
Use initial name instead of ID
|
2016-10-13 19:56:29 +02: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 |
|
|
bd0deecc89
|
Team colors are uint32
|
2016-10-13 19:56:25 +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 |
|
|
9b293b7d32
|
themes.json: add stat of tries count
|
2016-01-25 03:08:42 +01:00 |
|
|
6863891ba2
|
Improve team interface
|
2016-01-24 16:49:00 +01:00 |
|
|
e207e90c2e
|
my.json now contains team members, instead of teams.json
|
2016-01-24 14:33:16 +01:00 |
|
|
2b2b1a893d
|
admin: page for team binding
|
2016-01-24 14:33:16 +01:00 |
|
|
86d36589d4
|
Generate 12 empty extra teams
|
2016-01-24 14:33:16 +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 |
|
|
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 |
|
|
499346e611
|
Fully automated fill_exercice.sh
|
2016-01-23 12:57:14 +01:00 |
|
|
58fb73f742
|
admin: Don't download file already downloaded
|
2016-01-23 12:57:14 +01:00 |
|
|
46dcff83c3
|
admin: improve human interface
|
2016-01-23 12:57:14 +01:00 |
|
|
61dc38c09c
|
admin: Implement theme modification through PATCH
|
2016-01-23 12:57:13 +01:00 |
|
|
ad6199269b
|
admin: Add /exercices pages to get all exercices of a theme
|
2016-01-23 12:57:13 +01:00 |
|
|
c9e4d3e27c
|
admin: fix static routing
|
2016-01-23 12:57:13 +01:00 |
|
|
db2e286677
|
Minor fix number of imported team
|
2016-01-23 12:57:13 +01:00 |
|
|
4f97d2088d
|
Semi-manual fill_exercice.sh
|
2016-01-23 12:57:13 +01:00 |
|
|
b30d109529
|
Add color and error recovery
|
2016-01-23 12:57:12 +01:00 |
|
|
fa8343405b
|
Use same BASEURI as gosrc
|
2016-01-23 12:57:12 +01:00 |
|
|
763396193e
|
Improve fill_exo
|
2016-01-23 12:57:12 +01:00 |
|
|
2d7a7f67e8
|
Return an error if the file doesn't exists
|
2016-01-23 12:57:12 +01:00 |
|
|
d4ee546a91
|
Add script to append exercices
|
2016-01-23 12:57:12 +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 |
|
|
2f61d4d141
|
Display hash in hexadecimal form
|
2016-01-21 05:33:59 +01:00 |
|
|
69ad64715c
|
Import file from owncloud
|
2016-01-21 05:33:59 +01:00 |
|
|
97bb149eb6
|
Add a script to fill DB with teams
|
2016-01-21 05:33:59 +01:00 |
|
|
ede5bb18b1
|
Add certificate generation and revokation
|
2016-01-21 05:33:59 +01:00 |
|
|
9324f6f5fa
|
API can respond directly []byte (like files)
|
2016-01-21 05:33:58 +01:00 |
|
|
a1d60ee78f
|
Sent keys type in my.json
|
2016-01-21 05:33:58 +01:00 |
|
|
59ae11e68d
|
Add a color field for teams
|
2016-01-21 05:33:58 +01:00 |
|
|
8655997246
|
Add API for keys and files
|
2016-01-21 05:33:58 +01:00 |
|
|
989d5a6349
|
Generate my.json for each team
|
2016-01-21 05:33:57 +01:00 |
|
|
a6a152166e
|
Report errors
|
2016-01-21 05:33:57 +01:00 |
|
|
92b81e467f
|
Move common structs to libfic
|
2016-01-19 14:42:37 +01:00 |
|
|
d841542be4
|
Add a link for generation nginx certificate configuration
|
2016-01-19 14:42:37 +01:00 |
|
|
77fcaa39ff
|
If a function returns a string, just display it
|
2016-01-19 14:42:37 +01:00 |
|
|
c2d26b6053
|
Add/remove/view themes and exercices
|
2016-01-19 14:42:37 +01:00 |
|
|
5bc3395b04
|
Allow team to be added by name, without member first
|
2016-01-19 14:42:36 +01:00 |
|
|
181953a9f0
|
Work on admin web interface
|
2016-01-19 14:42:36 +01:00 |
|
|
d635420a9f
|
Add static page routing, place API under /api/
|
2016-01-15 19:18:04 +01:00 |
|
|
e89af34c5c
|
Change internal variable representation vs JSON one
|
2016-01-15 13:09:12 +01:00 |
|
|
8cf2a36fe1
|
Implement team deletion
|
2016-01-15 13:09:12 +01:00 |
|
|
40f7d7a0be
|
Add theme listing
|
2016-01-15 13:09:12 +01:00 |
|
|
b958b01635
|
Implement team creation
|
2016-01-15 13:09:12 +01:00 |
|
|
5a6bac928e
|
Add team listing
|
2016-01-15 13:09:12 +01:00 |
|
|
6ec37b83ce
|
Add DB objects
|
2016-01-15 13:09:12 +01:00 |
|
|
abd5e2025e
|
Add DB creation from schema
|
2016-01-15 13:09:12 +01:00 |
|
|
a5dc600f28
|
Add API basis
|
2016-01-15 13:09:12 +01:00 |
|