fic/server.git
3 months agofrontend: allow partial settings (used when publicly published) master
Pierre-Olivier Mercier [Mon, 18 Feb 2019 17:00:54 +0000 (18:00 +0100)]
frontend: allow partial settings (used when publicly published)

3 months agobackend: check the team has access to the exercice/flag before doing the action
Pierre-Olivier Mercier [Tue, 5 Feb 2019 02:24:52 +0000 (03:24 +0100)]
backend: check the team has access to the exercice/flag before doing the action

3 months agosynchro: back to the default behaviour: don't synchronize/erase files that aren't...
Pierre-Olivier Mercier [Tue, 5 Feb 2019 02:18:39 +0000 (03:18 +0100)]
synchro: back to the default behaviour: don't synchronize/erase files that aren't treated yet

3 months agopki: fix team association, complement to 68e5c4cd2b9e120967674c464eb95dbd6bd98488
Pierre-Olivier Mercier [Tue, 5 Feb 2019 01:38:43 +0000 (02:38 +0100)]
pki: fix team association, complement to 68e5c4cd2b9e120967674c464eb95dbd6bd98488

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

3 months agoadmin: allow certid to finish by .p12, to permit downloading .p12 file
Pierre-Olivier Mercier [Tue, 5 Feb 2019 00:45:19 +0000 (01:45 +0100)]
admin: allow certid to finish by .p12, to permit downloading .p12 file

3 months agoadmin: display serial in hexadecimal
Pierre-Olivier Mercier [Tue, 5 Feb 2019 00:44:41 +0000 (01:44 +0100)]
admin: display serial in hexadecimal

3 months agoadmin: new route and interface to manage symlink for team association exclusing certi...
Pierre-Olivier Mercier [Mon, 4 Feb 2019 18:59:29 +0000 (19:59 +0100)]
admin: new route and interface to manage symlink for team association exclusing certificates

3 months agosettings: add canJoinTeam parameter
Pierre-Olivier Mercier [Mon, 4 Feb 2019 17:14:46 +0000 (18:14 +0100)]
settings: add canJoinTeam parameter

3 months agofrontend: rely on angular base path
Pierre-Olivier Mercier [Mon, 4 Feb 2019 16:38:12 +0000 (17:38 +0100)]
frontend: rely on angular base path

3 months agoadmin: add a new route to update team history coefficient
Pierre-Olivier Mercier [Sun, 3 Feb 2019 21:49:03 +0000 (22:49 +0100)]
admin: add a new route to update team history coefficient

3 months agoadmin: include coefficient in history.json
Pierre-Olivier Mercier [Sun, 3 Feb 2019 21:40:44 +0000 (22:40 +0100)]
admin: include coefficient in history.json

3 months agoadmin: add exercice history.json
Pierre-Olivier Mercier [Sun, 3 Feb 2019 21:30:29 +0000 (22:30 +0100)]
admin: add exercice history.json

3 months agolibfic: fix checks in handling of team history deletiion
Pierre-Olivier Mercier [Sun, 3 Feb 2019 21:28:12 +0000 (22:28 +0100)]
libfic: fix checks in handling of team history deletiion

3 months agosync: avoid useless line break at the end of markdown processing
Pierre-Olivier Mercier [Sun, 3 Feb 2019 20:14:56 +0000 (21:14 +0100)]
sync: avoid useless line break at the end of markdown processing

3 months agofrontend: display hint cost on public interface
Pierre-Olivier Mercier [Sun, 3 Feb 2019 20:07:25 +0000 (21:07 +0100)]
frontend: display hint cost on public interface

3 months agofrontend: public interface: keep number of tries between refresh
Pierre-Olivier Mercier [Sun, 3 Feb 2019 20:01:17 +0000 (21:01 +0100)]
frontend: public interface: keep number of tries between refresh

3 months agofrontend: don't reuse tries in public interface; use a separate field to store total...
Pierre-Olivier Mercier [Sun, 3 Feb 2019 20:00:41 +0000 (21:00 +0100)]
frontend: don't reuse tries in public interface; use a separate field to store total tries count for an exercice; and display it in interface

3 months agoadmin: show only active team in export
Pierre-Olivier Mercier [Fri, 1 Feb 2019 19:51:36 +0000 (20:51 +0100)]
admin: show only active team in export

3 months agoadmin: thanks to ng-base, don't need other modifications
Pierre-Olivier Mercier [Fri, 1 Feb 2019 19:50:58 +0000 (20:50 +0100)]
admin: thanks to ng-base, don't need other modifications

3 months agoadmin: add a new route to generate a file for movie links
Pierre-Olivier Mercier [Fri, 25 Jan 2019 15:31:48 +0000 (16:31 +0100)]
admin: add a new route to generate a file for movie links

3 months agofrontend: prefer default border color in home public screen
Pierre-Olivier Mercier [Fri, 25 Jan 2019 12:29:51 +0000 (13:29 +0100)]
frontend: prefer default border color in home public screen

3 months agoRemove old unused files
Pierre-Olivier Mercier [Fri, 25 Jan 2019 11:39:27 +0000 (12:39 +0100)]
Remove old unused files

3 months agofrontend: avoid fetching events.json on public interface
Pierre-Olivier Mercier [Fri, 25 Jan 2019 07:29:39 +0000 (08:29 +0100)]
frontend: avoid fetching events.json on public interface

3 months agolibfic: add igncorecase flag to regexp related to ignorecase flag
Pierre-Olivier Mercier [Fri, 25 Jan 2019 06:54:27 +0000 (07:54 +0100)]
libfic: add igncorecase flag to regexp related to ignorecase flag

3 months agofrontend: polish public version checks
Pierre-Olivier Mercier [Fri, 25 Jan 2019 06:26:52 +0000 (07:26 +0100)]
frontend: polish public version checks

3 months agodashboard: improve readability with a legend and bold text in summary table
Pierre-Olivier Mercier [Wed, 23 Jan 2019 17:33:48 +0000 (18:33 +0100)]
dashboard: improve readability with a legend and bold text in summary table

3 months agodashboard: fix solved number in summary table
Pierre-Olivier Mercier [Wed, 23 Jan 2019 17:29:52 +0000 (18:29 +0100)]
dashboard: fix solved number in summary table

3 months agodashboard: avoid fake decimals in score
Pierre-Olivier Mercier [Wed, 23 Jan 2019 17:29:24 +0000 (18:29 +0100)]
dashboard: avoid fake decimals in score

3 months agoadmin: start adding monitor FIC2019
Pierre-Olivier Mercier [Wed, 23 Jan 2019 00:47:56 +0000 (01:47 +0100)]
admin: start adding monitor

3 months agodashboard: use server time to calculate event time
Pierre-Olivier Mercier [Wed, 23 Jan 2019 00:40:14 +0000 (01:40 +0100)]
dashboard: use server time to calculate event time

3 months agofrontend: add a label for hint file b2sum
Pierre-Olivier Mercier [Wed, 23 Jan 2019 00:39:44 +0000 (01:39 +0100)]
frontend: add a label for hint file b2sum

3 months agodashboard: add rank on the side
Pierre-Olivier Mercier [Wed, 23 Jan 2019 00:02:45 +0000 (01:02 +0100)]
dashboard: add rank on the side

3 months agodashboard: better description of COMCYBER?
Pierre-Olivier Mercier [Tue, 22 Jan 2019 23:18:13 +0000 (00:18 +0100)]
dashboard: better description of COMCYBER?

3 months agodashboard: expose others screens
Pierre-Olivier Mercier [Tue, 22 Jan 2019 23:17:46 +0000 (00:17 +0100)]
dashboard: expose others screens

3 months agoadmin: new API route to display local monitoring infos
Pierre-Olivier Mercier [Tue, 22 Jan 2019 07:50:18 +0000 (08:50 +0100)]
admin: new API route to display local monitoring infos

3 months agodb: store file size as unsigned int
Pierre-Olivier Mercier [Mon, 21 Jan 2019 12:36:56 +0000 (13:36 +0100)]
db: store file size as unsigned int

3 months agoadmin: add a button to edit the raw flag value instead of the checksum
Pierre-Olivier Mercier [Mon, 21 Jan 2019 12:35:09 +0000 (13:35 +0100)]
admin: add a button to edit the raw flag value instead of the checksum

3 months agodashboard: add the ability to use a remote dashboard, serve only local files: assets...
Pierre-Olivier Mercier [Mon, 21 Jan 2019 10:36:52 +0000 (11:36 +0100)]
dashboard: add the ability to use a remote dashboard, serve only local files: assets and eventualy public.json (to override given ones)

3 months agofickit: install grub on disks instead of syslinux which cannot be used as both UEFI...
Pierre-Olivier Mercier [Mon, 21 Jan 2019 03:32:50 +0000 (04:32 +0100)]
fickit: install grub on disks instead of syslinux which cannot be used as both UEFI and BIOS bootloader

3 months agofickit-pkg/syslinux: add grub2, as syslinux is crap
Pierre-Olivier Mercier [Mon, 21 Jan 2019 03:31:09 +0000 (04:31 +0100)]
fickit-pkg/syslinux: add grub2, as syslinux is crap

3 months agoadmin: add button to disable inactive teams
Pierre-Olivier Mercier [Mon, 21 Jan 2019 01:54:27 +0000 (02:54 +0100)]
admin: add button to disable inactive teams

3 months agobackend: use a new team field 'active', to avoid some team generation
Pierre-Olivier Mercier [Mon, 21 Jan 2019 01:35:03 +0000 (02:35 +0100)]
backend: use a new team field 'active', to avoid some team generation

3 months agoconfigs: nginx-demo config support both SSL cert + http auth
Pierre-Olivier Mercier [Mon, 21 Jan 2019 01:14:45 +0000 (02:14 +0100)]
configs: nginx-demo config support both SSL cert + http auth

3 months agofrontend: update the page title when navigate
Pierre-Olivier Mercier [Sun, 20 Jan 2019 23:35:07 +0000 (00:35 +0100)]
frontend: update the page title when navigate

3 months agofickit: don't include routing things into frontend
Pierre-Olivier Mercier [Sun, 20 Jan 2019 22:40:53 +0000 (23:40 +0100)]
fickit: don't include routing things into frontend

3 months agolibfic: db: increase db boot time to 90 seconds
Pierre-Olivier Mercier [Sun, 20 Jan 2019 19:00:45 +0000 (20:00 +0100)]
libfic: db: increase db boot time to 90 seconds

3 months agoadmin: read sync import in settings page
Pierre-Olivier Mercier [Sun, 20 Jan 2019 13:27:51 +0000 (14:27 +0100)]
admin: read sync import in settings page

3 months agosync: fix report display with some security headers
Pierre-Olivier Mercier [Sat, 19 Jan 2019 14:12:06 +0000 (15:12 +0100)]
sync: fix report display with some security headers

3 months agolibfic: Fix MCQ dependency on flag
Pierre-Olivier Mercier [Sun, 20 Jan 2019 00:28:46 +0000 (01:28 +0100)]
libfic: Fix MCQ dependency on flag

3 months agofrontend: fix display of timeout message when validating a flag
Pierre-Olivier Mercier [Sat, 19 Jan 2019 23:17:52 +0000 (00:17 +0100)]
frontend: fix display of timeout message when validating a flag

3 months agosettings: new parameter to don't respect flag dependancies
Pierre-Olivier Mercier [Sat, 19 Jan 2019 23:14:20 +0000 (00:14 +0100)]
settings: new parameter to don't respect flag dependancies

3 months agoudev: ready to FIC2019
Pierre-Olivier Mercier [Sat, 19 Jan 2019 23:22:49 +0000 (00:22 +0100)]
udev: ready to FIC2019

3 months agofickit-pkg: find the minimal set of capabilities to run
nemunaire [Sat, 19 Jan 2019 22:40:42 +0000 (23:40 +0100)]
fickit-pkg: find the minimal set of capabilities to run

3 months agoudev: change with the 2019 vendorId/productId
Pierre-Olivier Mercier [Sat, 19 Jan 2019 13:38:13 +0000 (14:38 +0100)]
udev: change with the 2019 vendorId/productId

3 months agofickit: add helper script to simplify nsenter
Pierre-Olivier Mercier [Sat, 19 Jan 2019 13:34:07 +0000 (14:34 +0100)]
fickit: add helper script to simplify nsenter

4 months agofickit: ready for prod
Pierre-Olivier Mercier [Sat, 19 Jan 2019 11:41:35 +0000 (12:41 +0100)]
fickit: ready for prod

4 months agofickit: nginx downloading problem with nginx under pressure
Pierre-Olivier Mercier [Sat, 19 Jan 2019 11:41:32 +0000 (12:41 +0100)]
fickit: nginx downloading problem with nginx under pressure

See: https://hub.docker.com/_/nginx#running-nginx-in-read-only-mode
See: https://stackoverflow.com/questions/25993826/err-content-length-mismatch-on-nginx-and-proxy-on-chrome-when-loading-large-file

4 months agoconfigs: add security headers
Pierre-Olivier Mercier [Sat, 19 Jan 2019 11:15:47 +0000 (12:15 +0100)]
configs: add security headers

For more information, see https://securityheaders.com/?q=fic.srs.epita.fr&hide=on&followRedirects=on

4 months agoAdd udev rule and scripts used to flash the USB sticks
Pierre-Olivier Mercier [Sat, 19 Jan 2019 07:10:23 +0000 (08:10 +0100)]
Add udev rule and scripts used to flash the USB sticks

Original work by Alexis Daviot <alexis.daviot@epita.fr>

4 months agofrontend: new parameters to setup kind of notifications allowed
Pierre-Olivier Mercier [Sat, 19 Jan 2019 07:04:54 +0000 (08:04 +0100)]
frontend: new parameters to setup kind of notifications allowed

4 months agosettings: new option to disable event fetch from server side
Pierre-Olivier Mercier [Sat, 19 Jan 2019 07:04:10 +0000 (08:04 +0100)]
settings: new option to disable event fetch from server side

4 months agodashboard: can now change the sidebar
Pierre-Olivier Mercier [Sat, 19 Jan 2019 07:01:29 +0000 (08:01 +0100)]
dashboard: can now change the sidebar

4 months agodashboard: some improvements
Pierre-Olivier Mercier [Sat, 19 Jan 2019 02:08:07 +0000 (03:08 +0100)]
dashboard: some improvements

4 months agoUpdate bootstrap
Pierre-Olivier Mercier [Sat, 19 Jan 2019 01:55:42 +0000 (02:55 +0100)]
Update bootstrap

4 months agosync: check video file size during import process
Pierre-Olivier Mercier [Sat, 19 Jan 2019 00:13:17 +0000 (01:13 +0100)]
sync: check video file size during import process

4 months agoadmin: add a page to view resolution video
Pierre-Olivier Mercier [Sat, 19 Jan 2019 00:02:10 +0000 (01:02 +0100)]
admin: add a page to view resolution video

4 months agosettings: change param to enable/disable depends by the depth
Pierre-Olivier Mercier [Fri, 18 Jan 2019 19:30:47 +0000 (20:30 +0100)]
settings: change param to enable/disable depends by the depth

4 months agoadmin: API version bump
Pierre-Olivier Mercier [Fri, 18 Jan 2019 16:03:14 +0000 (17:03 +0100)]
admin: API version bump

4 months agoRevert "db: cap the maximum number of simultaneous connections to the database"
Pierre-Olivier Mercier [Fri, 18 Jan 2019 16:01:14 +0000 (17:01 +0100)]
Revert "db: cap the maximum number of simultaneous connections to the database"

This reverts commit 29ea78f0394a175100666894a15de056ce286b57.

4 months agoadmin: add a progression indicator for the deep synchronization
Pierre-Olivier Mercier [Fri, 18 Jan 2019 14:39:58 +0000 (15:39 +0100)]
admin: add a progression indicator for the deep synchronization

4 months agosync: import files first during the full import, to permit file dependency to flag
Pierre-Olivier Mercier [Fri, 18 Jan 2019 13:53:38 +0000 (14:53 +0100)]
sync: import files first during the full import, to permit file dependency to flag

4 months agofrontend: fix undefined variable
Pierre-Olivier Mercier [Fri, 18 Jan 2019 13:44:56 +0000 (14:44 +0100)]
frontend: fix undefined variable

4 months agolibfic: fix wipefiles: it didn't delete its dependencies
Pierre-Olivier Mercier [Fri, 18 Jan 2019 13:41:00 +0000 (14:41 +0100)]
libfic: fix wipefiles: it didn't delete its dependencies

4 months agofrontend: Add a message on submission timeout
Pierre-Olivier Mercier [Fri, 18 Jan 2019 03:41:17 +0000 (04:41 +0100)]
frontend: Add a message on submission timeout

4 months agosync: import MCQ justification as Flag
Pierre-Olivier Mercier [Fri, 18 Jan 2019 03:24:28 +0000 (04:24 +0100)]
sync: import MCQ justification as Flag

4 months agosync: Use hint title if provided
Pierre-Olivier Mercier [Fri, 18 Jan 2019 03:23:56 +0000 (04:23 +0100)]
sync: Use hint title if provided

4 months agofrontend: fix one case hang after submission
Pierre-Olivier Mercier [Fri, 18 Jan 2019 03:23:18 +0000 (04:23 +0100)]
frontend: fix one case hang after submission

4 months agofrontend: treat MCQ justification as key flag, instead of special case
Pierre-Olivier Mercier [Thu, 17 Jan 2019 21:30:39 +0000 (22:30 +0100)]
frontend: treat MCQ justification as key flag, instead of special case

4 months agosync: fix ordered import
Pierre-Olivier Mercier [Thu, 17 Jan 2019 21:29:09 +0000 (22:29 +0100)]
sync: fix ordered import

4 months agofrontend: use the new set of icons for notification
Pierre-Olivier Mercier [Thu, 17 Jan 2019 18:50:16 +0000 (19:50 +0100)]
frontend: use the new set of icons for notification

4 months agoadmin: readd poppler in Dockerfile
Pierre-Olivier Mercier [Thu, 17 Jan 2019 18:49:00 +0000 (19:49 +0100)]
admin: readd poppler in Dockerfile

4 months agofrontend: add new set of icons
Pierre-Olivier Mercier [Thu, 17 Jan 2019 18:42:28 +0000 (19:42 +0100)]
frontend: add new set of icons

4 months agoadmin: add new event button on event-details page
Pierre-Olivier Mercier [Thu, 17 Jan 2019 18:14:09 +0000 (19:14 +0100)]
admin: add new event button on event-details page

4 months agofrontend: fix angular syntax error
Pierre-Olivier Mercier [Thu, 17 Jan 2019 18:13:46 +0000 (19:13 +0100)]
frontend: fix angular syntax error

4 months agoUpdate favicon for 2019
Pierre-Olivier Mercier [Thu, 17 Jan 2019 18:11:49 +0000 (19:11 +0100)]
Update favicon for 2019

4 months agofrontend: browser notifications of challenge events
Pierre-Olivier Mercier [Sat, 1 Dec 2018 17:15:03 +0000 (18:15 +0100)]
frontend: browser notifications of challenge events

4 months agoMake go vet -strictshadow mostly happy
Pierre-Olivier Mercier [Thu, 17 Jan 2019 15:55:54 +0000 (16:55 +0100)]
Make go vet -strictshadow mostly happy

4 months agobackend: rely on configuration instead of started file to determine if the challenge...
Pierre-Olivier Mercier [Thu, 17 Jan 2019 15:48:45 +0000 (16:48 +0100)]
backend: rely on configuration instead of started file to determine if the challenge is launched or not

4 months agoadmin: highlight revoked certificates on PKI page
Pierre-Olivier Mercier [Thu, 17 Jan 2019 15:42:50 +0000 (16:42 +0100)]
admin: highlight revoked certificates on PKI page

4 months agolibfic: fix a potential memory/SQL connection leak
Pierre-Olivier Mercier [Thu, 17 Jan 2019 15:41:37 +0000 (16:41 +0100)]
libfic: fix a potential memory/SQL connection leak

4 months agoadmin: new page to see score details
Pierre-Olivier Mercier [Thu, 17 Jan 2019 12:51:44 +0000 (13:51 +0100)]
admin: new page to see score details

4 months agosettings: add new coefficient for all exercices
Pierre-Olivier Mercier [Thu, 17 Jan 2019 12:26:49 +0000 (13:26 +0100)]
settings: add new coefficient for all exercices

4 months agofrontend: fix label selection
Pierre-Olivier Mercier [Thu, 17 Jan 2019 12:26:27 +0000 (13:26 +0100)]
frontend: fix label selection

4 months agosettings: new option to postpone the activation of the given settings file
Pierre-Olivier Mercier [Thu, 17 Jan 2019 12:03:15 +0000 (13:03 +0100)]
settings: new option to postpone the activation of the given settings file

4 months agolibfic: new way to handle exercice dependancies
Pierre-Olivier Mercier [Thu, 17 Jan 2019 11:03:56 +0000 (12:03 +0100)]
libfic: new way to handle exercice dependancies

4 months agosettings: add coefficient to hint and wchoices
Pierre-Olivier Mercier [Thu, 17 Jan 2019 11:03:18 +0000 (12:03 +0100)]
settings: add coefficient to hint and wchoices

4 months agoadmin: new route to generate htpasswd corresponding to certificate in use by team
Pierre-Olivier Mercier [Thu, 17 Jan 2019 09:51:44 +0000 (10:51 +0100)]
admin: new route to generate htpasswd corresponding to certificate in use by team

4 months agoadmin/api: use libfic struct instead of api one
Pierre-Olivier Mercier [Thu, 17 Jan 2019 08:44:07 +0000 (09:44 +0100)]
admin/api: use libfic struct instead of api one

4 months agofrontend: add missing Biolinum font
Pierre-Olivier Mercier [Thu, 17 Jan 2019 08:35:09 +0000 (09:35 +0100)]
frontend: add missing Biolinum font

4 months agofickit: add mysql backup to backend
Pierre-Olivier Mercier [Thu, 17 Jan 2019 08:26:51 +0000 (09:26 +0100)]
fickit: add mysql backup to backend