Éloi Rivard
09588e0f48
refactor: move BackendModel.save to Backend.save
2024-05-03 22:22:06 +02:00
Éloi Rivard
44573713ed
refactor: move BackendModel.get to Backend.get
2024-05-03 21:54:03 +02:00
Éloi Rivard
ccde88b1bf
refactor: BackendModel.get() is now Backend.instance
2024-05-03 21:46:28 +02:00
Éloi Rivard
fa6488bcd1
refactor: move BackendModel.fuzzy to Backend.fuzzy
2024-05-03 21:42:55 +02:00
Éloi Rivard
8425b2a3b8
refactor: move BackendModel.query to Backend.query
2024-05-03 21:42:54 +02:00
Éloi Rivard
93fa708b1c
refactor: move LDAPObjectQuery in its own file
2024-05-03 21:36:15 +02:00
Éloi Rivard
222d7676ca
Translated using Weblate (French)
...
Currently translated at 100.0% (377 of 377 strings)
Co-authored-by: Éloi Rivard <eloi.rivard@nubla.fr>
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
Translation: Canaille/Canaille
2024-05-02 19:09:09 +02:00
gallegonovato
95fb442546
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (377 of 377 strings)
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
Translation: Canaille/Canaille
2024-05-02 19:09:07 +02:00
Hosted Weblate
a3a8281ffb
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
Translation: Canaille/Canaille
2024-05-01 18:40:09 +02:00
Éloi Rivard
98b26ee6f3
fix: translatable f-string
2024-05-01 18:39:59 +02:00
Éloi Rivard
340daa21f8
Translated using Weblate (French)
...
Currently translated at 100.0% (375 of 375 strings)
Co-authored-by: Éloi Rivard <eloi.rivard@nubla.fr>
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
Translation: Canaille/Canaille
2024-04-29 20:07:19 +02:00
gallegonovato
82bd37f240
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (375 of 375 strings)
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
Translation: Canaille/Canaille
2024-04-29 20:07:17 +02:00
Hosted Weblate
fec5f58244
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
2024-04-28 19:49:26 +02:00
Éloi Rivard
69019763d4
feat: group member removal can be achieved from the group edition page
2024-04-28 19:47:57 +02:00
Éloi Rivard
69b565e1ad
refactor: LDAP backend tolerates double deletions
2024-04-28 16:18:36 +02:00
Éloi Rivard
867de91740
Translated using Weblate (French)
...
Currently translated at 100.0% (369 of 369 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2024-04-28 15:07:27 +02:00
gallegonovato
00269075c4
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (369 of 369 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2024-04-28 15:07:25 +02:00
Éloi Rivard
e3ab3e0f7d
chore: bump to htmx 1.9.12
2024-04-28 09:31:39 +02:00
Éloi Rivard
288ad161d3
tests: test mail attachments mimetypes
2024-04-27 14:36:34 +02:00
Hosted Weblate
6ac4aadb02
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
2024-04-27 14:08:08 +02:00
Éloi Rivard
22d7c3e336
chore: extract translatable strings
2024-04-27 14:07:55 +02:00
Éloi Rivard
ebcaaeaded
tests: fix GHA
...
For some reasons, webp mimetypes failed to be guessed on GHA.
2024-04-27 14:06:20 +02:00
Éloi Rivard
dc89a20b11
chore: configure ruff
2024-04-23 22:12:04 +02:00
Éloi Rivard
256566df94
refactor: Model identifier_attributes are fixed.
2024-04-22 20:04:24 +02:00
Éloi Rivard
afa0a6ff1e
feat: env_prefix
create_app variable can select the environment var prefix
2024-04-22 18:10:49 +02:00
Éloi Rivard
7fc887a492
feat: ENV_FILE configuration variable can customize the .env file
2024-04-22 16:37:31 +02:00
Éloi Rivard
9c86f5e9af
refactor: Use annotations to mark model attributes
2024-04-21 11:48:39 +02:00
Éloi Rivard
acf8acf29f
fix: locked users cannot use OIDC authorization codes
2024-04-17 13:05:14 +02:00
Éloi Rivard
382dbcaf1a
feat: add 'autocomplete' tag on the password form
2024-04-17 12:36:39 +02:00
Éloi Rivard
fc8c0da912
fix: locked users cannot use refresh tokens
2024-04-17 12:07:11 +02:00
Éloi Rivard
31423cde1a
refactor: split oidc.authorize endpoint in several smaller functions
2024-04-17 11:56:44 +02:00
Éloi Rivard
6601abaeb4
refactor: memory model clears its cache when reading a model
2024-04-17 10:51:53 +02:00
Éloi Rivard
0ba1c93152
chore: add typing to Model._attributes
2024-04-17 09:03:54 +02:00
Éloi Rivard
d811c3473d
refactor: use one single Faker object to generate users
2024-04-16 21:43:34 +02:00
Éloi Rivard
fa6949e5c6
tests: speed up tests
...
by avoiding to create more faker.Faker objects than necessary
2024-04-16 21:25:20 +02:00
Éloi Rivard
f9989a960b
feat: locked users cannot be impersonated
2024-04-12 12:12:08 +02:00
Éloi Rivard
d9d5c85b51
refactor: memory backend clears its cache on save() calls
2024-04-12 10:55:24 +02:00
Éloi Rivard
6e26656cc4
tests: move test_model_references_set_unsaved_object to the ldap tests directory
2024-04-12 10:49:56 +02:00
Éloi Rivard
d8b5c837d7
Translated using Weblate (French)
...
Currently translated at 100.0% (368 of 368 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2024-04-10 11:01:48 +02:00
gallegonovato
c2f6a1d176
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (368 of 368 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2024-04-10 11:01:47 +02:00
Éloi Rivard
42dc023288
fix: display the menu bar on error pages
2024-04-09 22:06:08 +02:00
Éloi Rivard
7ad592c4de
fix: compatibility with old session IDs
2024-04-09 15:45:47 +02:00
Éloi Rivard
4037c296cf
fix: JAVASCRIPT and HTMX configuration settings were ignored
2024-04-09 12:07:00 +02:00
Éloi Rivard
f3bcdafb23
fix: clean the session cookie after logout
2024-04-09 11:56:51 +02:00
Hosted Weblate
7244f900a5
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
2024-04-09 10:04:43 +02:00
Éloi Rivard
920395c27f
feat: sign in/out events are logged in #177
2024-04-09 10:04:26 +02:00
Éloi Rivard
053156ec18
feat: additional messages on password endpoint errors
...
when attempt_login is not found on the session, add a warning to be
displayed on the login page after redirection
2024-04-09 09:20:38 +02:00
Hosted Weblate
18f1229f85
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
2024-04-08 14:56:52 +02:00
Éloi Rivard
3e5161e72b
Translated using Weblate (French)
...
Currently translated at 100.0% (366 of 366 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2024-04-08 14:56:52 +02:00
Éloi Rivard
5aaccca4cf
fix: display an error message when trying to remove the last user from a group
2024-04-08 14:44:15 +02:00
Éloi Rivard
fe2665ae32
fix: LDAP user group removal
2024-04-08 14:15:28 +02:00
Éloi Rivard
cbde5ba7b7
fix: LDAP objectClass guessing exception
2024-04-08 11:00:36 +02:00
Éloi Rivard
8c16a9dd6d
fix: Lazy permission loading exception
2024-04-08 10:50:37 +02:00
Éloi Rivard
fbbcd2fe78
fix: saving an object with the LDAP backend keeps the objectClass un-managed by Canaille
2024-04-08 10:29:47 +02:00
Éloi Rivard
fecfcfa8f3
refactor: factorize Model.__html__
2024-04-07 20:23:43 +02:00
Éloi Rivard
702eec7aca
fix: MemoryModel.model_attribute type hint
2024-04-07 20:21:30 +02:00
Éloi Rivard
88832b5b3b
refactor: move User.check_password and User.set_password methods to Backend
2024-04-07 20:17:15 +02:00
Éloi Rivard
5a6ce24074
refactor: move User.get_from_login method to Backend
2024-04-07 20:17:15 +02:00
Hosted Weblate
2082e19480
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
2024-04-07 19:50:35 +02:00
Éloi Rivard
e9c4f4c1c9
refactor: differenciate between login and username in forms
2024-04-07 19:50:26 +02:00
Éloi Rivard
6251455a1d
perf: cache the class attributes
2024-04-07 19:22:54 +02:00
Éloi Rivard
2cab4bfa66
refactor: use User.get instead of User.get_from_login when this is pertinent
2024-04-07 18:46:08 +02:00
Éloi Rivard
e339d1169d
refactor: User.has_password factorization
2024-04-07 18:33:43 +02:00
Éloi Rivard
e317780e1d
fix: infinite recursion due to a typo
2024-04-07 17:43:20 +02:00
Éloi Rivard
ebf790a5bd
doc: add User permissions docstrings
2024-04-07 17:34:19 +02:00
Éloi Rivard
c0a28c1480
refactor: set default values for core models
2024-04-07 16:51:55 +02:00
Éloi Rivard
b6c59b3eda
refactor: add some typing to models
2024-04-07 16:39:05 +02:00
Éloi Rivard
1fbb074cc5
refactor: user permissions lazy loading
2024-04-07 15:21:32 +02:00
Éloi Rivard
30bd71c5b5
tests: fix coverage
2024-04-07 09:33:56 +02:00
Éloi Rivard
f113188368
refactor: factorize match_filter in the main User class
2024-04-07 01:25:44 +02:00
Éloi Rivard
76cd3dc169
refactor: remove LDAPObject.get unused parameter
2024-04-07 00:36:52 +02:00
Éloi Rivard
945daee715
refactor: prefer typing.get_type_hints to __annotations__
2024-04-06 23:22:38 +02:00
Éloi Rivard
75837fa207
refactor: model attributes are walked from the top to the bottom
2024-04-06 22:46:11 +02:00
Éloi Rivard
fe809161ff
refactor: factorized User.load_permissions
2024-04-06 19:22:47 +02:00
Éloi Rivard
e02b54f327
refactor: locally store the model names in lowercase
2024-04-06 18:21:50 +02:00
Éloi Rivard
f06f0c4e25
doc: fix references to BackendModel
2024-04-05 16:09:20 +02:00
Éloi Rivard
7734ed185e
refactor: the id attribute is attached to the Model class
2024-04-05 16:05:17 +02:00
Éloi Rivard
47ef573917
refactor: fix coverage
2024-04-05 15:59:17 +02:00
Éloi Rivard
ec7a721336
refactor: ldap objects id attribute is based on entryUUID instead of dn
2024-04-05 15:35:49 +02:00
Éloi Rivard
7b054bb571
refactor: ldap backend use a server control to re-read objects after update
2024-04-05 14:34:48 +02:00
Éloi Rivard
ab17137cd6
refactor: ldapbackend explicitly uses the DN attribute for LDAP operations
2024-04-03 09:40:10 +02:00
Éloi Rivard
951ad364f1
doc: fix references to native python types
2024-04-02 09:27:47 +02:00
Éloi Rivard
09391f0a1d
doc: fix reference to DEBUG setting
2024-04-02 09:22:12 +02:00
Éloi Rivard
4344bfacbc
refactor: set default values for models
2024-04-01 18:55:13 +02:00
Éloi Rivard
18e3f8cde5
refactor: split the base model class in two
2024-04-01 18:55:05 +02:00
Éloi Rivard
0363a0a76e
refactor: remove unused var
2024-04-01 15:02:26 +02:00
Éloi Rivard
89354e281f
refactor: memory backend use __getattribute__ instead of __getattr__
2024-04-01 15:02:19 +02:00
Éloi Rivard
a795c8460b
refactor: memory model keys are not models anymore
2024-04-01 15:01:53 +02:00
Éloi Rivard
b571818755
refactor: MemoryModel - rename klass in model
2024-04-01 15:01:12 +02:00
Éloi Rivard
fbd0d3029e
refactor: rename User read/write/permissions attributes
2024-04-01 14:59:56 +02:00
Éloi Rivard
48d6065e1c
refactor: memory model variable renaming
2024-04-01 14:59:40 +02:00
Éloi Rivard
006bf08b3d
refactor: improve memory model serialization
...
do not systematically store every attributes as a list
2024-03-31 12:06:19 +02:00
Éloi Rivard
8834c65bea
refactor: backend memory deserialize method
2024-03-31 01:20:39 +01:00
Éloi Rivard
d2df12236d
refactor: move memory backend methods as classmethods
2024-03-31 01:05:48 +01:00
Éloi Rivard
fa45ef6907
refactor: delete an unused index layer in the memory backend
2024-03-31 00:23:43 +01:00
Éloi Rivard
642e6fcd3f
fix: use one single faker generator for fake groups generation
2024-03-31 00:12:56 +01:00
Éloi Rivard
0a2d3d4629
fix: permissions loading with the SQL backend
2024-03-31 00:07:16 +01:00
Éloi Rivard
58b967a43e
refactor: reliably detect the model attribute cardinality
2024-03-30 23:39:09 +01:00
Éloi Rivard
7418d10efb
refactor: make User and Group directly inherit from Model
2024-03-30 18:48:03 +01:00
Éloi Rivard
efe3a3c4c4
refactor: assume ACL have default values
2024-03-30 17:21:40 +01:00
Éloi Rivard
f2dbda8c89
doc: fixed logging example
2024-03-30 11:40:05 +01:00
Éloi Rivard
06049d27a4
feat: better error messages when Canaille is launched without configuration
2024-03-29 19:31:01 +01:00
Éloi Rivard
163c0155b7
fix: OIDC JWT settings initialization
2024-03-29 17:30:12 +01:00
Éloi Rivard
e9c36dffd5
fix: OIDC feature detection
2024-03-29 17:17:06 +01:00
Éloi Rivard
e299c84cab
fix: default LDAP USER_FILTER
2024-03-29 14:45:04 +01:00
Éloi Rivard
4cd3d51de5
doc: fix LOGGING code snippet
2024-03-29 12:17:24 +01:00
Éloi Rivard
a6bd3e6002
chore: remove unused guard
2024-03-29 12:00:20 +01:00
Éloi Rivard
3592b40f03
fix: i18n warnings on project installation
2024-03-29 11:16:13 +01:00
Éloi Rivard
37d17b43aa
fix: python<3.10 union types
2024-03-29 10:56:21 +01:00
Éloi Rivard
be2fa8b7f5
doc: minor various improvements
2024-03-29 09:35:29 +01:00
Éloi Rivard
4067634c40
Merge branch 'conf-class' into 'main'
...
use pydantic to validate the configuration
See merge request yaal/canaille!170
2024-03-28 16:45:28 +00:00
Éloi Rivard
8625318341
feat: use pydantic to validate the configuration
2024-03-28 17:44:26 +01:00
gallegonovato
02656516e0
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (365 of 365 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2024-03-28 15:01:52 +01:00
Éloi Rivard
97470bffe6
doc: better translation documentation
2024-03-28 14:22:07 +01:00
Hosted Weblate
7aaef0d606
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
2024-03-27 14:08:11 +01:00
Éloi Rivard
5cbb157e02
Translated using Weblate (French)
...
Currently translated at 100.0% (366 of 366 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2024-03-27 14:08:11 +01:00
Éloi Rivard
bd003ec53d
fix: wording uniformization
2024-03-27 14:07:52 +01:00
Hosted Weblate
3ee6533432
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
2024-03-27 14:01:59 +01:00
Éloi Rivard
9dac4185b9
feat: use flask-babel to format the number of consents
2024-03-27 14:01:43 +01:00
Éloi Rivard
f0fe9c2fb5
feat: use flask-babel to format the number of group members
2024-03-27 13:59:02 +01:00
Éloi Rivard
ffa12b0f71
feat: created
and last_modified
model attributes
2024-03-27 13:57:38 +01:00
Éloi Rivard
62d29a00bb
feat: use flask-babel to format numbers
2024-03-26 20:22:32 +01:00
Éloi Rivard
265f266638
chore: use the standard tomllib python module instead of toml
starting from python 3.11
2024-03-26 13:57:14 +01:00
Éloi Rivard
ad71934a28
chore: bump to htmx 1.9.11
2024-03-21 16:19:15 +01:00
Éloi Rivard
2dd5b09afe
doc: update flask doc link
2024-03-16 13:48:55 +01:00
Éloi Rivard
edebf189dd
doc: update flask doc link
2024-03-16 13:47:49 +01:00
Éloi Rivard
dc81832159
feat: usedefault python logging configuration format
2024-03-15 20:12:07 +01:00
Éloi Rivard
4edffcaa9f
chore: use isort instead of reoder-python-imports
2024-03-15 19:58:37 +01:00
Éloi Rivard
9af9a303ba
refactor: use modern faker calls
...
https://github.com/joke2k/faker/pull/1991
2024-02-16 09:15:41 +01:00
Éloi Rivard
d49e669cab
fix: avoid to fail on imports if cryptography is missing
2023-12-29 17:17:19 +01:00
Éloi Rivard
395b6ab4f3
chore: add docformatter pre-commit
2023-12-28 18:31:57 +01:00
Éloi Rivard
e8b620588e
refactor: LDAP backend initialization
2023-12-27 10:57:22 +01:00
Éloi Rivard
a237fa0198
chore: pre-commit update
2023-12-26 01:13:11 +01:00
Éloi Rivard
a4a381d088
refactor: gather endpoints in a 'endpoints' directory
2023-12-26 00:30:19 +01:00
Éloi Rivard
38038d8db9
refactor: use 'url_for' in templates instead of static urls
2023-12-25 20:15:21 +01:00
Éloi Rivard
5c11ebf0d3
feat: ldap connection is lazilly opened
2023-12-25 14:26:08 +01:00
Éloi Rivard
d0dbaa588c
refactor: no more explicit conn argument in the LDAP backend
2023-12-25 14:03:47 +01:00
Éloi Rivard
95882c737b
fix: LDAP backend connection error display
2023-12-25 13:56:57 +01:00
Éloi Rivard
d4712b7971
refactor: backend cleanups
2023-12-25 13:22:43 +01:00
Éloi Rivard
6dac4a1ca8
tests: fix github CI, again
2023-12-24 13:14:38 +01:00
Éloi Rivard
92c2e864af
tests: fix github CI
2023-12-24 13:03:35 +01:00
Éloi Rivard
772a364128
fix: group field error prevented the registration form validation
2023-12-24 12:05:29 +01:00
Éloi Rivard
06b60e1747
fix: post_logout_redirect_uris was ignored during OIDC dynamic registration
2023-12-23 21:32:31 +01:00
Éloi Rivard
c847ef9284
feat: OIDC prompt=create implementation
2023-12-23 19:37:48 +01:00
Éloi Rivard
521ed75f18
fix: correctly set up Client audience during OIDC dynamic registration
2023-12-23 19:37:14 +01:00
Éloi Rivard
9ff0411e9e
tests: extracted the prompt tests in a dedicated file
2023-12-22 21:18:02 +01:00
Éloi Rivard
445d854af1
feat: THEME can be a relative path
2023-12-22 18:00:07 +01:00
Éloi Rivard
97394823bf
fix: return a 403 error when users are missing permissions for OIDC authentication
2023-12-22 16:39:20 +01:00
Éloi Rivard
52fc93a481
refactor: avoid to directly use the 'configuration' fixture in tests
2023-12-19 18:28:04 +01:00
Éloi Rivard
7fed235437
fix: redirection after password reset
2023-12-15 16:12:33 +01:00
Éloi Rivard
67733699aa
fix: OIDC Userinfo endpoint is also available in POST
2023-12-15 12:03:21 +01:00
Éloi Rivard
7c06d8d51e
refactor: custom error pages are only loaded when themer is loaded
2023-12-15 11:58:25 +01:00
Éloi Rivard
214b16db37
fix: another mimetype guard
2023-12-15 11:02:31 +01:00
Éloi Rivard
3255eaa31c
fix: a crash when no ACL was defined
2023-12-15 10:50:53 +01:00
Éloi Rivard
11f969a71f
fix: don't crash when mimetype detection fails
2023-12-15 10:25:08 +01:00
Éloi Rivard
8f4a402c84
doc: client attribute description based on oauth/oidc specs
2023-12-14 23:22:33 +01:00
Éloi Rivard
c0f0114496
doc: user and group attribute description based on scim specs
2023-12-14 23:08:17 +01:00
Éloi Rivard
88aa9e27fb
fix: get_mail_domain ignores the server port
2023-12-14 19:24:09 +01:00
Éloi Rivard
02a7e84833
feat: raise an exception when toml is not installed and a configuration file is passed in the environment
2023-12-14 16:04:46 +01:00
Éloi Rivard
066aed7735
feat: convert the png in webp
2023-12-01 22:09:54 +01:00
Éloi Rivard
e09a3071d4
fix: handle 4xx and 5xx error codes with htmx
2023-12-01 11:49:09 +01:00
Éloi Rivard
a7e574f754
feat: use sqlalchemy-utils PasswordType to store and hash user passwords
2023-12-01 09:29:59 +01:00
Éloi Rivard
410d464242
refactor: force objects to be string for hashing
2023-11-28 18:51:28 +01:00
Éloi Rivard
969f3e980c
fix: password comparision was too permissive on login
2023-11-28 18:10:47 +01:00
Éloi Rivard
aa07059357
fix: password and initalization emails were only sent to the preferred user email address
2023-11-28 17:59:50 +01:00
Éloi Rivard
15124f29bb
fix: incorrect user photo and group description cardinality
2023-11-28 15:54:41 +01:00
Éloi Rivard
98e8aa9b39
fix: only the first password letter was used
2023-11-28 15:51:14 +01:00
Éloi Rivard
c2250ec77e
fix: password reset and initialization mail sending
...
Password reset and initialization mails were not sent at all the user
addresses if one email address could not be reached.
2023-11-28 15:27:08 +01:00
Éloi Rivard
d9dbd8ad0e
fix: crash when LDAP groups are refering to unexisting users
2023-11-28 09:37:37 +01:00
Éloi Rivard
e1f54fffbc
fix: demo client issue date
2023-11-24 15:24:46 +01:00
Éloi Rivard
4e380436d3
fix: disable HTMX boosting during the OIDC dance
2023-11-24 14:45:59 +01:00
Éloi Rivard
d55489f24c
chore: bump to htmx 1.9.9
2023-11-24 14:10:42 +01:00
Éloi Rivard
27639081f0
feat: implement sqlalchemy backend
...
Co-authored-by: Loan Robert <loan@yaal.coop>
2023-11-24 13:57:46 +01:00
Éloi Rivard
ff2ff68023
refactor: additional guards on user profile edition
2023-11-24 12:47:09 +01:00
Éloi Rivard
9cf17953ee
refactor: remove an useless OIDC guard
2023-11-24 12:45:41 +01:00
Éloi Rivard
8c2814c852
refactor: Backend.session can take parameters
2023-11-24 12:43:40 +01:00
Éloi Rivard
ac149a2120
fix: group name displaying
2023-11-24 11:47:09 +01:00
Éloi Rivard
02c8f0b177
refactor: Backend.install calls uniformization
2023-11-24 11:13:17 +01:00
Éloi Rivard
8a5dd04c87
refactor: OIDC client management factorization, again
2023-11-24 09:30:52 +01:00
Éloi Rivard
a308a40b11
refactor: OIDC client management factorization
2023-11-24 09:26:15 +01:00
Éloi Rivard
7494800e57
fix: OIDC client 'client_secret_expires_at' claim must be 0, not None
2023-11-23 09:15:40 +01:00
Éloi Rivard
79e547fc10
refactor: OIDC token scopes are stored as lists
2023-11-22 16:36:42 +01:00
Éloi Rivard
fd77bd5637
refactor: OIDC authorization codes scopes are stored as lists
2023-11-22 16:30:38 +01:00
Éloi Rivard
e504c73b38
chore: remove useless var
2023-11-22 12:30:17 +01:00
Éloi Rivard
1e9c77ad6d
refactor: compare models in memory backend user.load_permissions
2023-11-22 12:20:53 +01:00
Éloi Rivard
62a9c320c3
fix: user formatted_name cardinality on user creation form
2023-11-22 11:44:44 +01:00
Éloi Rivard
b6cfa1517c
refactor: form model attributes coercion
2023-11-22 11:30:30 +01:00
Éloi Rivard
3752693480
refactor: use wtforms readonly validator
2023-11-21 18:34:59 +01:00
Éloi Rivard
bc56105b28
fix: remove useless print
2023-11-21 17:59:11 +01:00
Éloi Rivard
f2e5eb36ee
fix: fake user generate attribute cardinality
2023-11-21 16:36:31 +01:00
Éloi Rivard
4616725651
refactor: fix group edition attribute cardinality
2023-11-21 16:30:12 +01:00
Éloi Rivard
ce022ec8fe
refactor: simplify user profile form data initialization
2023-11-21 16:07:11 +01:00
Éloi Rivard
3a39fc191a
refactor: remove models __delattr__ methods
2023-11-21 14:57:28 +01:00
Éloi Rivard
771d3952a3
feat: OIDC password grant supports other client authentication methods
2023-11-18 19:20:14 +01:00
Éloi Rivard
1fd8af2cf4
refactor: models attributes cardinality is closer to SCIM models
2023-11-17 21:21:25 +01:00
Éloi Rivard
0ee374dea7
tests: back to 100% coverage
2023-11-16 18:06:23 +01:00
Éloi Rivard
134b4c5f50
fix: better logout error message
2023-11-13 18:40:01 +01:00
Éloi Rivard
e760c34942
feat: collapse the icon column in the list tables
2023-10-06 15:36:02 +02:00
Éloi Rivard
0574460fe6
fix: when LDAP servers are down, rendering error pages would raise an exception
2023-10-02 14:06:06 +02:00
Éloi Rivard
88dcf94750
Revert "tests: domain is localhost.local"
...
This reverts commit 44aed27719
.
2023-10-01 15:42:16 +02:00
Éloi Rivard
5b039d8f4f
chore: bump to htmx 1.9.6
2023-09-29 12:57:37 +02:00
Éloi Rivard
9c5ef421d0
fix: user deletion on instances without account lockability
2023-09-28 18:27:43 +02:00
Éloi Rivard
44aed27719
tests: domain is localhost.local
2023-09-20 09:54:17 +02:00
Éloi Rivard
f5083d0b15
fix: unique type in token memory model
2023-09-18 23:55:46 +02:00
Éloi Rivard
d7c6896093
refactor: move get_jkws method in oauth.py
2023-09-18 23:02:48 +02:00
Éloi Rivard
46c795b3b5
refactor: only load oidc module if OIDC is configured
2023-09-15 17:56:23 +02:00
Éloi Rivard
7e3cb6ba53
fix: inline form validation in the profile edition page
2023-09-11 18:28:47 +02:00
Éloi Rivard
17f84e4ce4
fix: silence faker debug logs
2023-09-11 18:20:17 +02:00
Éloi Rivard
4d397906bd
fix: translation compilation warnings
2023-09-11 18:15:42 +02:00
Éloi Rivard
c2e6158bf5
fix: use fomantic-ui equal width menu on submenus
2023-09-08 09:07:04 +02:00
Éloi Rivard
cbecb34c4e
chore: bump to fomanticui 2.9.3
2023-09-08 09:07:03 +02:00
Éloi Rivard
a2e3fce204
feat: flask-babel and pytz are now part of the front extras
2023-09-01 10:46:56 +02:00
Éloi Rivard
c0bf10dce7
chore: remove remaning datatables files
2023-09-01 09:27:52 +02:00
Éloi Rivard
a7b3d4be88
feat: user login redirections
...
if users login during the authorization phase, they
get redirected to the authorization page afterwards
2023-09-01 09:12:40 +02:00
Éloi Rivard
8be771e41d
tests: fix CI
2023-08-31 22:44:06 +02:00
Éloi Rivard
f6abd1e22f
refactor: avoid to build one form per button in the pagination toolbar
2023-08-27 16:33:48 +02:00
Éloi Rivard
c718f7b258
refactor: remove unnecessary htmx 1506 workarounds
...
fixes #143
2023-08-27 16:25:30 +02:00
Éloi Rivard
89f5c09a6a
chore: bump to htmx 1.9.5
2023-08-27 16:19:23 +02:00
Éloi Rivard
21ea0238b5
OIDC jwks endpoint do not return empty kid claim
2023-08-26 19:59:44 +02:00
Éloi Rivard
26f1a0fbc5
fix: use importlib instead of the deprecated pkg_resources
2023-08-26 16:50:01 +02:00
Éloi Rivard
2a38bcb3fc
chore: typo
2023-08-23 16:48:40 +02:00
Éloi Rivard
77cccc3a10
doc: better model inheritance to generate a clearer documentation
2023-08-23 16:41:41 +02:00
Éloi Rivard
67b0669fa8
doc: models types draft
2023-08-23 15:18:43 +02:00
Éloi Rivard
8b98726348
refactor: User.login and User.logout methods moved to app.flask module
2023-08-23 14:56:56 +02:00
Éloi Rivard
553595c5ed
doc: model documentation
2023-08-17 16:11:24 +02:00
Éloi Rivard
96ccf12ad9
feat: split installation in different extras packages
2023-08-17 14:34:30 +02:00
Éloi Rivard
588ec8792e
Implement a dummy inmemory backend
2023-08-17 12:33:45 +02:00
Éloi Rivard
4f89f4ff29
Translated using Weblate (French)
...
Currently translated at 100.0% (367 of 367 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-08-16 17:54:29 +02:00
gallegonovato
be27345ee3
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (367 of 367 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-08-16 17:54:28 +02:00
Éloi Rivard
37c2a7d4de
refactor: joinform email validation in a separate method
2023-08-16 17:45:39 +02:00
Hosted Weblate
4504650ea5
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
2023-08-15 17:04:36 +02:00
Éloi Rivard
0cd713ed09
Translated using Weblate (French)
...
Currently translated at 100.0% (367 of 367 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-08-15 17:04:35 +02:00
gallegonovato
3ceeb3efe1
Translated using Weblate (Spanish)
...
Currently translated at 98.6% (362 of 367 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-08-15 17:04:35 +02:00
Éloi Rivard
ccaba0b9d5
feat: registration email admin debug page
2023-08-15 17:00:38 +02:00
Éloi Rivard
c4274d1030
fix: fix impersonate success message
2023-08-15 16:48:21 +02:00
Hosted Weblate
4c06fe7faf
Update translation files
...
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/
2023-08-15 16:39:19 +02:00
Éloi Rivard
78d7e43971
chore: update babel catalogs
2023-08-15 16:36:58 +02:00
Éloi Rivard
5a9df64f68
feat: implement registration process
2023-08-15 16:31:44 +02:00
Éloi Rivard
29b50dc25e
remove onboarding screen
2023-08-15 12:40:18 +02:00
Éloi Rivard
b60dbebd28
Merge branch 'main' into registration
2023-08-15 00:48:49 +02:00
Éloi Rivard
fc252acaaa
refactor: user permission sugar
2023-08-14 16:25:12 +02:00
Éloi Rivard
e55b56419d
refactor: extract auth.py from account.py
2023-08-14 16:15:41 +02:00
Éloi Rivard
321eb487ad
refactor: moved template logic from 'theme/base.html' to 'template/base.html'
2023-08-14 15:48:56 +02:00
Éloi Rivard
191791ac72
fix: import render_template from flask_themer instead of flask
2023-08-14 15:45:25 +02:00
Éloi Rivard
324b36c829
refactor: template overhaul
2023-08-14 15:28:20 +02:00
Éloi Rivard
d27aab8651
refactor: the core module has its own main blueprint
2023-08-14 13:52:24 +02:00
Éloi Rivard
c6a543535c
tests: fix coverage
2023-08-13 22:17:00 +02:00
Éloi Rivard
c895366684
refactor: store user profile in g.user
2023-08-13 22:08:28 +02:00
Éloi Rivard
03af0bd249
Translated using Weblate (French)
...
Currently translated at 100.0% (357 of 357 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-08-09 16:52:28 +02:00
gallegonovato
0cc7a2a8cb
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (357 of 357 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-08-09 16:52:28 +02:00