|
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 |
|
|
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 |
|
|
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 |
|
|
6740256a32
|
sync: implement hint dependency on flags
|
2020-01-17 07:02:40 +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 |
|
|
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 |
|
|
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 |
|
|
c8ece39cb2
|
sync: alert about unknown keys in challenge.txt
|
2019-07-21 22:38:45 +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 |
|
|
34d2054e04
|
sync: avoid useless line break at the end of markdown processing
|
2019-02-06 03:40:49 +01:00 |
|
|
58dbd9499b
|
sync: fix report display with some security headers
|
2019-01-22 08:49:44 +01:00 |
|
|
6042f9b477
|
sync: check video file size during import process
|
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 |
|
|
ff3dec059c
|
sync: Refactor exercice flags
|
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 |
|
|
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 |
|
|
0d8505131e
|
sync: automatically add before ponctuation
|
2019-01-21 03:08:06 +01:00 |
|
|
8c87451d80
|
sync: better trim authors lines
|
2019-01-21 03:08:06 +01:00 |
|
|
d89cd2f0ca
|
sync: Allow \r at EOL in DIGESTS
|
2019-01-21 03:08:05 +01:00 |
|
|
dc4a4925e3
|
sync: refactor exercice synchronization
|
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 |
|
|
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 |
|
|
c5b65289d3
|
Add new helper string related to justified MCQ flag
|
2019-01-21 03:07:47 +01:00 |
|
|
3a0c892148
|
sync: import heading theme image
|
2019-01-21 03:07:45 +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 |
|
|
f183985982
|
admin: Add exercice's tags: sync, api, interface done
|
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 |
|
|
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 |
|
|
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 |
|
|
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 |
|
|
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 |
|
|
bcc598ebd5
|
Write docs!
|
2018-05-11 15:03:09 +02:00 |
|
|
62aea5413e
|
use more official blake2b checksum
|
2018-05-11 05:27:51 +02:00 |
|
|
0c540a39eb
|
frontend: beautiful URLs
|
2018-01-26 12:02:32 +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 |
|
|
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 |
|
|
ea3f3b709d
|
admin/sync: import theme introductions
|
2018-01-18 12:08:10 +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 |
|
|
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 |
|
|
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 |
|
|
b079f7891c
|
admin: sync mcq/ucq
|
2018-01-17 18:52:45 +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 |
|
|
8ed23ddc7a
|
admin: localimporter can make symlink instead of copying whole files
|
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 |
|
|
6ef91a92e5
|
Perform full deep synchronisation
|
2018-01-17 18:52:41 +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 |
|
|
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 |
|