É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
Éloi Rivard
05a1ff21d1
fix: email address field translations
2023-08-08 14:26:46 +02:00
Éloi Rivard
cdd25d97ce
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-06 17:55:02 +02:00
Hosted Weblate
2315e8f010
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-06 12:16:56 +02:00
Éloi Rivard
000100154f
chore: update catalogs
2023-08-06 12:15:02 +02:00
Éloi Rivard
fd24c704c0
feat: implement email verification
2023-08-06 11:58:16 +02:00
Éloi Rivard
29b1e3c411
chore: bump to htmx 1.9.4
2023-08-06 11:10:34 +02:00
gallegonovato
8a25c8519a
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (334 of 334 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-08-05 16:45:37 +02:00
Éloi Rivard
d5939030f2
Translated using Weblate (French)
...
Currently translated at 100.0% (334 of 334 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-08-03 19:24:48 +02:00
Hosted Weblate
7f12d11ad8
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-03 19:23:09 +02:00
Éloi Rivard
6ba56fc6d4
chore: update babel catalogs
2023-08-03 19:22:58 +02:00
Éloi Rivard
8fe8494587
feat: validate phone numbers
2023-08-03 19:08:34 +02:00
Éloi Rivard
9940a98188
refactor: profile button action renaming
2023-07-30 23:08:29 +02:00
Éloi Rivard
267dbe15e4
Translated using Weblate (French)
...
Currently translated at 100.0% (333 of 333 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-07-30 14:06:44 +02:00
gallegonovato
2d02f424b3
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (333 of 333 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-07-30 14:06:44 +02:00
Hosted Weblate
70d57afffc
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-07-28 19:19:01 +02:00
Éloi Rivard
7176d017a2
feat: password good practice message on the settings page
2023-07-28 19:17:26 +02:00
Éloi Rivard
c3a93c5f6f
fix: babel is required at build by the project metadata
2023-07-24 19:40:43 +02:00
Éloi Rivard
1352752db8
refactor: utilities for form field readonliness
2023-07-24 18:07:35 +02:00
Éloi Rivard
4347fb572a
chore: rename HTMXForm to Form
2023-07-23 23:38:11 +02:00
Éloi Rivard
7446efe373
Translated using Weblate (French)
...
Currently translated at 100.0% (331 of 331 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-07-22 16:06:25 +02:00
gallegonovato
2dc7323165
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (331 of 331 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-07-22 16:06:24 +02:00
Hosted Weblate
066644b43f
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-07-20 16:54:52 +02:00
Éloi Rivard
e8e9a62294
Updated catalogs
2023-07-20 16:54:42 +02:00
Éloi Rivard
b4908d5e57
modals are HTML pages instead of JS elements
...
This will help providing the very same user experience for users with
and without javascript. We will still be able to re-enable javascript
modals in the future, but this should be done from the ground up, HTML
first and javascript after.
2023-07-18 18:34:10 +02:00
Éloi Rivard
54abdaea3b
Dynamic model registration
2023-07-12 12:34:00 +02:00
Éloi Rivard
f5af3e7a0c
split long lines
2023-07-12 11:59:57 +02:00
Brunelie Lauret
ce3fa2a61a
fix no js multiple selector
2023-07-11 10:08:52 +02:00
Éloi Rivard
813a9896df
debug HTML global variable fix
...
So it considers the FLASK_DEBUG environment variable
2023-07-10 20:03:17 +02:00
Éloi Rivard
2da4c92d9e
check command considers default backup values
...
at least until #138 is implement ...
2023-07-10 19:50:05 +02:00
Éloi Rivard
e37aab6cbc
check command fix
...
the check command needs a backend context
2023-07-10 18:52:12 +02:00
Éloi Rivard
43d8f080bd
check command fix
...
the application context was not needed in the unit tests,
but this would cause an exception in real installations
2023-07-10 18:45:54 +02:00
Éloi Rivard
e6a2c0b0ef
conf: documentation flask version update
2023-07-10 18:36:21 +02:00
Éloi Rivard
20300c5be3
profile settings wording
2023-07-07 10:06:01 +02:00
Éloi Rivard
4715f643e2
Add a OIDC.REQUIRE_NONCE option to improve compatibility with clients
2023-07-06 17:57:17 +02:00
Éloi Rivard
5163b11b9a
Updated DEFAULT_USER_FILTER
2023-07-04 19:18:09 +02:00
Éloi Rivard
fd66f86a72
USER_FILTER is parsed with jinja
2023-07-04 18:34:16 +02:00
gallegonovato
f19cc8a497
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (333 of 333 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-07-04 16:53:25 +02:00
Éloi Rivard
10a0ecc090
Added an option to disable javascript
2023-07-03 23:26:39 +02:00
Ettore Atalan
17227ff978
Translated using Weblate (German)
...
Currently translated at 24.0% (80 of 333 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/de/
2023-07-02 10:52:39 +02:00
Éloi Rivard
626a94037c
Translated using Weblate (French)
...
Currently translated at 100.0% (333 of 333 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-07-02 10:52:39 +02:00
Éloi Rivard
5b521d6315
Fixed email previews
2023-07-01 20:02:53 +02:00
Éloi Rivard
1a0a8096eb
Enable jinja2 strict mode in unit tests
2023-07-01 19:56:13 +02:00
Éloi Rivard
f7007544ec
Fixed a variable on the token page
2023-07-01 19:08:56 +02:00
Éloi Rivard
4f42798e39
Refactored keypair management
2023-07-01 19:06:26 +02:00
Éloi Rivard
c30d2f7161
Moved config.sample directly in canaille
2023-07-01 18:08:01 +02:00
Hosted Weblate
a15419b2d4
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-06-30 18:41:27 +02:00
Éloi Rivard
c0cab39478
Updated translation catalogs
2023-06-30 18:41:09 +02:00
Éloi Rivard
2d80eb9ea9
Disabled HTMX boosting on OIDC forms to avoid errors.
2023-06-30 18:39:50 +02:00
Éloi Rivard
f686121f0d
Wording
2023-06-30 18:12:14 +02:00
Éloi Rivard
4a3adf49f8
Fixed htmx initialisation
2023-06-30 18:12:14 +02:00
Éloi Rivard
7527443649
Fixed client deletion validation when the form would not validate
2023-06-30 18:12:14 +02:00
Éloi Rivard
021c1b3d11
Pagination pluralization
2023-06-30 18:12:13 +02:00
Éloi Rivard
fca92b7299
Correct plural labels for multiple fields
2023-06-30 17:39:35 +02:00
Éloi Rivard
966d361381
Restored login form customization
...
That was removed in 4217fc02
2023-06-30 16:22:04 +02:00
Éloi Rivard
860dc23a8b
Fixed user list when users do not have a user_name
2023-06-30 10:22:12 +02:00
Éloi Rivard
ddc1085367
A template variable was misnamed
2023-06-30 10:19:39 +02:00
Éloi Rivard
13dc41f691
Removed unused code
2023-06-29 17:53:32 +02:00
Éloi Rivard
7ff2360174
send reset emails to all the user emails
2023-06-29 17:47:01 +02:00
Éloi Rivard
52482ca19c
Implements flask OIDC converters
2023-06-29 15:55:39 +02:00
Éloi Rivard
7bce9b9a74
ldap backend: make sure to escape special chars in object identifiers
2023-06-29 15:55:39 +02:00
Éloi Rivard
3ecb8b4722
Implements a flask Group converter
2023-06-29 15:55:39 +02:00
Éloi Rivard
f504bb3a66
Implements a flask User converter
2023-06-29 15:55:39 +02:00
Éloi Rivard
e4e49da44a
Renamed configuration entries
...
- USER_ID_ATTRIBUTE is now USER_RDN
- GROUP_ID_ATTRIBUTE is now GROUP_RDN
2023-06-29 15:55:39 +02:00
Éloi Rivard
57af18d557
Use a unique identifier to indentify users in URLS
...
Previously we used the uid since we supposed this value was always
valid, but some users user the mail attribute as the User RDN in their
OpenLDAP installation, and do not have a uuid.
2023-06-29 15:55:39 +02:00
Éloi Rivard
4217fc027c
temporarily remove form customization on the login page
...
At the moment I don't know how to build something that would be generic
enough to bring customization on form fields for regular HTML rendering
and for HTMX inline validation. This is not a blocker feature, so let us
move on on more important things.
2023-06-28 16:23:40 +02:00
Éloi Rivard
df34b1462d
Flat is better than nested
2023-06-28 16:11:30 +02:00
Éloi Rivard
4eda4f6c99
inline validation keep the profile indicator icons
2023-06-28 15:42:35 +02:00
Éloi Rivard
5dc83bc840
Bump to jquery 3.7.0
2023-06-28 13:32:31 +02:00
Éloi Rivard
45ec950f5f
Fixed FieldList readonly state
2023-06-28 13:26:15 +02:00
Éloi Rivard
005c806bf0
Disable htmx boosting for the impersonate form
2023-06-28 12:28:50 +02:00
Éloi Rivard
7b9e97f5e4
Defer and clean up JS scripts
2023-06-26 18:00:58 +02:00
Éloi Rivard
c091ca19cf
Removed html5shiv
2023-06-26 17:48:25 +02:00
Éloi Rivard
dae9db4528
Merge branch 'issue-144-boosting' into 'main'
...
Boosts webpages with HTMX
Closes #145 et #144
See merge request yaal/canaille!137
2023-06-26 15:19:50 +00:00
Éloi Rivard
bb95978376
Boosts webpages with HTMX
...
Fixes #144
Fixes #145
2023-06-26 17:17:07 +02:00
gallegonovato
6ec282c98f
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (332 of 332 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-06-23 23:50:19 +02:00
Éloi Rivard
9b75f4d302
Translated using Weblate (French)
...
Currently translated at 100.0% (332 of 332 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-06-22 21:19:13 +02:00
Hosted Weblate
5388454177
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-06-22 21:19:13 +02:00
Éloi Rivard
1e58abfa34
Translated using Weblate (French)
...
Currently translated at 98.7% (328 of 332 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-06-22 21:19:13 +02:00
Hosted Weblate
f20a1020dd
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-06-22 21:19:13 +02:00
Éloi Rivard
0342e30ec0
Fixed strings inadvertently refactored
2023-06-22 18:12:54 +02:00
Éloi Rivard
51825be678
Updated translations
2023-06-22 18:02:22 +02:00
Éloi Rivard
b7e1590510
User emails and phone numbers are now multiple
2023-06-22 17:55:26 +02:00
Éloi Rivard
8617fc0f2b
Implement multiple fields
2023-06-22 16:56:44 +02:00
Éloi Rivard
42730f72d3
Fixed email unicity check
2023-06-22 16:41:35 +02:00
Éloi Rivard
fb90b6effd
Jinja rendering macro calls uniformization
2023-06-22 15:51:53 +02:00
Éloi Rivard
c12ceca741
Forgotten phone_number plurals in configuration
2023-06-22 15:45:24 +02:00
Éloi Rivard
361fda0386
Renamed User.phone_number in User.phone_numbers
2023-06-22 15:33:03 +02:00
Éloi Rivard
b5bd497d0e
Implemented User.preferred_email
2023-06-22 15:24:13 +02:00
Éloi Rivard
371f806695
Renamed User.email in User.emails
2023-06-22 15:15:46 +02:00
Éloi Rivard
14ec6e9c9e
ldap backend avoid to store empty values
2023-06-22 13:27:43 +02:00
Éloi Rivard
d65dbfbe96
listify utility
2023-06-22 13:09:44 +02:00
Éloi Rivard
ec02aa0ad9
Force OIDC Clients contact field to be a valid email.
2023-06-22 11:39:50 +02:00
Éloi Rivard
0cbac78624
htmx: return a 400 error when a request sends an invalid form
2023-06-21 15:59:28 +02:00
Éloi Rivard
caf434a1fc
debug template variable is available everywhere
2023-06-20 14:22:19 +02:00
Éloi Rivard
40594190d3
Display error description on debug environments
2023-06-20 14:14:35 +02:00
Éloi Rivard
485a0c2ff1
render_field macro passes kwargs to its submethods
2023-06-20 09:33:36 +02:00
Éloi Rivard
e9f17b26d6
form HTML macro refactoring
2023-06-19 18:10:14 +02:00
Éloi Rivard
a9d9d43152
Configuration entries can be loaded from files.
...
Co-authored-by: Sofi <sofi+git@mailbox.org>
2023-06-15 18:38:37 +02:00
Denise
d553d23ef3
Merge branch canaille:main into main
2023-06-12 13:36:07 +00:00
Éloi Rivard
23e9e7e71a
Renamed Backend in BaseBackend
2023-06-05 18:10:37 +02:00
Denise Bitca
c89bb48499
fix up style, attempt at fixing registration redirection bug
2023-06-05 10:38:24 +02:00
Denise Bitca
12a1119f99
fix up style
2023-06-05 10:37:19 +02:00
Denise
db72597cc0
Merge branch canaille:main into main
2023-06-05 07:34:49 +00:00
Éloi Rivard
e5ba0a8c86
compatibility bugfix for flask 2.3
2023-06-03 13:42:23 +02:00
Éloi Rivard
bc8b918bd1
OIDC keypair generation fix
2023-06-01 17:41:17 +02:00
Éloi Rivard
c7f23e845c
datetime-local input fields are transformed in UTC server-side
2023-06-01 13:53:32 +02:00
Éloi Rivard
f112583b09
Translated using Weblate (French)
...
Currently translated at 100.0% (328 of 328 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-05-31 21:28:17 +02:00
gallegonovato
2aae49508f
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (328 of 328 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-05-31 21:28:17 +02:00
Hosted Weblate
111cfab48b
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-05-30 09:44:22 +02:00
Éloi Rivard
e20fb23e6f
typo 'successfuly' -> 'successfully'
2023-05-30 09:44:11 +02:00
Ettore Atalan
d1dad1c505
Translated using Weblate (German)
...
Currently translated at 22.8% (75 of 328 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/de/
2023-05-29 17:50:48 +02:00
gallegonovato
7dbababb8d
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (328 of 328 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-05-29 17:50:47 +02:00
Denise Bitca
4beee2adcb
add( #1 , #2 , #4 , #7 ): implemented registration within canaille
2023-05-29 15:58:30 +02:00
Denise Bitca
212358aaf3
add( #5 ): add method to send a "continue registration" email
2023-05-29 15:54:47 +02:00
Denise Bitca
49a7a70cc3
Merge branch 'main' of gitlab.com:yaal/canaille
2023-05-29 13:58:44 +02:00
Éloi Rivard
cc4b11a113
Translated using Weblate (French)
...
Currently translated at 100.0% (328 of 328 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-05-27 16:50:18 +02:00
Éloi Rivard
38ee26db83
refactored User locking mechanism
2023-05-26 17:48:50 +02:00
Hosted Weblate
e64c759151
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-05-26 15:31:38 +02:00
Éloi Rivard
c140a624d0
Updated translations
2023-05-26 15:31:28 +02:00
Éloi Rivard
17c2f7a5cd
Implemented LDAP ppolicy support.
2023-05-26 15:23:43 +02:00
Éloi Rivard
d8158d6a72
Use ruff linter
2023-05-25 13:37:58 +02:00
Éloi Rivard
77d3a1a656
Do not event attempt to add oauth schema if present
2023-05-24 16:59:36 +02:00
Éloi Rivard
8b68a862bf
Profile settings edition redirects to the same page
2023-05-24 14:12:32 +02:00
Éloi Rivard
a92542cd81
Moved models specificities in the backend module
2023-05-20 21:24:14 +02:00
Éloi Rivard
a9f9eab5a4
password minimum length is not a magic constant anymore
2023-05-20 20:46:39 +02:00
Éloi Rivard
c75108344b
Moved login placeholder mechanism in the backend module
2023-05-20 20:07:40 +02:00
Éloi Rivard
033d436878
Moved LDAP schema installation in the ldap backend module
2023-05-20 20:04:23 +02:00
Éloi Rivard
c1d1706007
Moved every model import to canaille.models
2023-05-20 20:02:00 +02:00
Éloi Rivard
e110c4851b
Backend singleton logic moved to backend.Backend
2023-05-20 18:39:49 +02:00
Éloi Rivard
6f637b8129
Refactored the unit test backend fixtures
2023-05-20 17:17:46 +02:00
Éloi Rivard
30282e633b
The LDAP Backend is now a class
2023-05-20 12:08:04 +02:00
Éloi Rivard
4f9dac8782
Tests the model mechanism
2023-05-17 18:19:05 +02:00
Éloi Rivard
4d64b3fcba
Removed useless import in jinja templates
2023-05-17 16:21:00 +02:00
Éloi Rivard
0c5a559bba
Ensures User.formatted_name is correctly formatted when parts are missing
2023-05-17 16:18:35 +02:00
Éloi Rivard
be78b50e97
Removed User.authenticate method
2023-05-17 12:48:14 +02:00
Éloi Rivard
2f924c4b7e
Fixes calls to the Consent.oauthClient and Consent.oauthSubject attributes
2023-05-17 12:07:52 +02:00
Éloi Rivard
7503ac772f
Fixes calls to the LDAP 'Client.dn' attribute
2023-05-17 12:03:55 +02:00
Éloi Rivard
d66619a01c
OIDC lifetimes are not casted to string anymore
2023-05-17 09:29:32 +02:00
Éloi Rivard
b4014cfd73
Use explicit attributes in Consent.get
2023-05-17 09:19:15 +02:00
Éloi Rivard
572ef585a0
Escape strings in the authorization details view
2023-05-17 08:55:00 +02:00
Éloi Rivard
b346b0db8a
Use generic Consent.consent_id instead of LDAP Consent.cn attribute
2023-05-17 08:54:13 +02:00
Éloi Rivard
a7013f2360
Explicited OIDC authorization admin variable
2023-05-16 22:28:34 +02:00
Éloi Rivard
00b5997a61
Avoid calls to LDAPUser.may and LDAPUser.must
2023-05-16 22:18:38 +02:00
Éloi Rivard
28e7d1c662
LDAPObject __getattr__ filters None values
2023-05-16 16:05:09 +02:00
Éloi Rivard
01c1ae4eef
Rename LDAPObject.attrs to state
2023-05-16 15:48:05 +02:00
Éloi Rivard
8998fe9b62
Explicit arguments when using Model.get
2023-05-16 11:29:40 +02:00
Éloi Rivard
26dc4d425c
Display password recovery button on OIDC login page
2023-05-15 18:06:22 +02:00
Ettore Atalan
5b7aec0959
Translated using Weblate (German)
...
Currently translated at 14.0% (44 of 314 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/de/
2023-05-15 01:49:24 +02:00
Éloi Rivard
8162bd3e24
Fixes calls to the LDAP 'Group.member' attribute
2023-05-13 00:24:24 +02:00
Éloi Rivard
bace94b1f5
Explicit Group.get attributes
2023-05-13 00:19:32 +02:00
Éloi Rivard
ad388d2fac
Fixes a call to the LDAP 'cn' attribute
2023-05-12 20:36:38 +02:00
Éloi Rivard
8f8ac5f31b
Fixes a call to the LDAP 'uid' attribute
2023-05-12 19:53:06 +02:00
Éloi Rivard
6c5053afb1
Fixes a call to a LDAP named attribute, again
2023-05-12 18:51:50 +02:00
Éloi Rivard
534e0a507b
Fixes a call to a LDAP named attribute
2023-05-12 18:45:32 +02:00
Éloi Rivard
c09b2b5321
Implemented LDAPObject __delattr__
2023-05-11 23:34:10 +02:00
Éloi Rivard
ca1ea9ca92
Removed unused code
2023-05-11 23:29:34 +02:00
Éloi Rivard
9480e43ad9
Removed LDAPObject __getitem__ and __setitem__ methods
2023-05-11 23:08:39 +02:00
Éloi Rivard
df60821e29
Rename LDAPObject.attribute_table to attributes
2023-05-11 16:55:33 +02:00
Éloi Rivard
1167d336d9
fixes wrong attribute name in impersonate page flash message
2023-05-11 16:50:06 +02:00
Éloi Rivard
88179b23b8
fix non-generic model attribute calls
2023-05-11 16:02:32 +02:00
Denise Bitca
d067ca4220
refactor( #55 ): removed debug print call
2023-05-08 11:48:49 +02:00
Denise Bitca
518548bb74
add( #55 ): added signup and onboarding routes in account route file
2023-05-08 11:47:23 +02:00
Denise Bitca
7537390fea
add( #55 ): added join and onboarding forms
2023-05-08 11:44:21 +02:00
Denise Bitca
544f7f8c64
add( #55 ): onboarding template for sign-in / sign-up
2023-05-08 11:43:19 +02:00
Éloi Rivard
9e6a1b85f1
Avoid setting 'None' in claims when they are empty
2023-05-05 13:28:02 +02:00
Éloi Rivard
6e6d15fec1
Fixed password initialization mail recipients
2023-05-05 10:53:48 +02:00
Éloi Rivard
6148d8d682
Updated to htmx 1.9.2
2023-05-05 10:43:01 +02:00
Éloi Rivard
00b13c95ad
refer to 'groups' instead of ldap 'memberof' in the group edition page
2023-05-02 17:08:42 +02:00
Éloi Rivard
e8e6060c74
ACL group filter can be simple group name instead of full dn
2023-05-02 16:25:00 +02:00
Éloi Rivard
4883548dc5
Translated using Weblate (French)
...
Currently translated at 100.0% (314 of 314 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-04-28 19:52:42 +02:00
Éloi Rivard
0a500407b6
submit buttons wording
2023-04-27 19:26:05 +02:00
Éloi Rivard
0234c5945a
User.logout excepts IndexError in case of invalid sessions
2023-04-18 20:36:48 +02:00
Éloi Rivard
fa62c16768
Moved canaille.ldap_backend to canaille.backends.ldap
2023-04-18 20:22:55 +02:00
Éloi Rivard
c4676ec572
Update User group when save
is called
2023-04-17 18:43:43 +02:00
Éloi Rivard
571c04de66
Fixed toml inline tables
2023-04-15 13:08:24 +02:00
Éloi Rivard
edb64cbfe1
ACL filters are no more LDAP filters but user attribute mappings.
2023-04-14 19:53:16 +02:00
Éloi Rivard
4bfbeccc1c
Fixed empty models attributes registration
2023-04-13 18:02:20 +02:00
Éloi Rivard
39c5a6fb16
htmx 1.9.0
2023-04-13 14:44:38 +02:00
Éloi Rivard
0376a3bab8
Cleartext password in unit tests
2023-04-10 21:42:14 +02:00
Éloi Rivard
e2b96af1ee
Moved LDAP configuration entry to BACKENDS.LDAP
2023-04-10 20:31:54 +02:00
Éloi Rivard
cc45ed4be9
OIDC.JWT.MAPPING configuration option is really optional
2023-04-10 20:09:47 +02:00
Éloi Rivard
7cd078bf81
Correctly read OIDC dynamic registration config entries
2023-04-10 19:28:26 +02:00
Éloi Rivard
61f5d25f2f
Creates a OIDC configuration section for all the OIDC related entries
2023-04-10 16:24:43 +02:00
Éloi Rivard
8b0dbf2d55
Catch bare exceptions in populate commands instead of ldap specific exceptions
2023-04-09 23:56:06 +02:00
Éloi Rivard
65efece01e
Renamed LDAPObject.initialize in LDAPObject.install
2023-04-09 23:17:24 +02:00
Éloi Rivard
83f67331d3
Split commands in their dedicated modules
2023-04-09 21:58:11 +02:00
Éloi Rivard
79f12b1d0a
'app' submodule
2023-04-09 15:52:55 +02:00
Éloi Rivard
08f8bfbfdb
Moved user and group management in the core submodule
2023-04-09 13:34:38 +02:00
Éloi Rivard
ac64f034f3
Moves some functions from mails.py to utils/mails.py
2023-04-09 13:16:32 +02:00
Éloi Rivard
e0256db017
Moved oidc blueprints in a dedicated file
2023-04-09 11:31:23 +02:00
Éloi Rivard
4c454f6de4
Removed unused imports
2023-04-09 02:13:34 +02:00
Éloi Rivard
01ed1d8013
Avoid to explicitly call User.load_groups
2023-04-09 00:14:51 +02:00
Éloi Rivard
c8b76dc845
Use LDAPObject.reload in tests instead of LDAPObject.get
2023-04-08 21:36:21 +02:00
Éloi Rivard
e738faf52b
Group methods refactoring
2023-04-08 00:33:42 +02:00
Éloi Rivard
52f7276527
Explicitly use User.formatted_name instead of User.name
2023-04-07 22:45:42 +02:00
Éloi Rivard
706d50449a
Split the User.get method
2023-04-07 21:24:09 +02:00
Éloi Rivard
0d96073b90
Removed the 'filter' argument from the User model
2023-04-07 20:49:30 +02:00
Éloi Rivard
18075dd849
Removed the 'conn' argument when it is not needed
2023-04-07 20:43:46 +02:00
Éloi Rivard
db3a4a74ff
Renamed user attributes to match SCIM naming convention
2023-04-07 20:12:24 +02:00
Éloi Rivard
ff87975601
Datetime without timezones are stored as UTC in LDAP
2023-04-07 20:08:31 +02:00
Éloi Rivard
98089a21d7
Preconsent page empty state
2023-04-07 18:31:04 +02:00
Éloi Rivard
01e0e3d3f5
Fixed avatar update with htmx
2023-04-07 18:05:06 +02:00
Éloi Rivard
dfd77d82f1
Revert hyperlink style
2023-04-05 14:27:27 +02:00
Éloi Rivard
cb09667090
Bumped to fomanticui 2.9.2
2023-04-05 14:23:40 +02:00
Éloi Rivard
344559b483
Fixed style CI
2023-04-04 10:57:50 +02:00
Éloi Rivard
3b1497c972
Merge branch 'ux' into 'main'
...
Dark theme improvement
See merge request yaal/canaille!121
2023-04-04 08:53:16 +00:00
Brunelie Lauret
d5e2183304
improving dark theme
2023-04-04 10:18:43 +02:00
Éloi Rivard
3458f94fd3
Disable pagination form dynamic validation
2023-04-04 09:43:56 +02:00
Brunelie Lauret
a704e090d0
dark theme improvement
2023-04-03 10:10:13 +02:00
Éloi Rivard
92ab563489
Fixes wtforms validator translations
2023-04-02 13:30:51 +02:00
Éloi Rivard
d53fdde986
Refactored utils
2023-04-02 00:32:27 +02:00
Éloi Rivard
81e80b8a59
Translated using Weblate (French)
...
Currently translated at 100.0% (314 of 314 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-03-31 15:40:42 +02:00
gallegonovato
2eb9cd7db0
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (314 of 314 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-03-31 15:40:42 +02:00
Éloi Rivard
1f1bb353e0
Dynamic form validation with htmx
2023-03-30 23:22:58 +02:00
Éloi Rivard
c5e33e30ca
Reload UX JS on htmx events
2023-03-30 21:16:22 +02:00
Éloi Rivard
2fb0085d7b
OIDC client form renaming
2023-03-30 00:40:25 +02:00
Éloi Rivard
f1f5c81ada
Form macro input classes cleanups
2023-03-29 23:29:38 +02:00
Hosted Weblate
a2da437ded
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-03-29 23:01:15 +02:00
Éloi Rivard
f7e2195494
Translated using Weblate (French)
...
Currently translated at 100.0% (313 of 313 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-03-29 23:01:14 +02:00
Éloi Rivard
2e6ec739e7
User number field wording
2023-03-29 23:01:02 +02:00
Éloi Rivard
43c6d02ca6
Avoid double crsf HTML input in admin test mail form
2023-03-29 22:43:52 +02:00
Éloi Rivard
78a129d494
Forms validate URIs
2023-03-29 21:33:47 +02:00
Hosted Weblate
d94721d244
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-03-29 19:42:38 +02:00
Éloi Rivard
e6ecfcfecd
Unique email form validator wording
2023-03-29 19:34:17 +02:00
Éloi Rivard
9b4bf87aea
Avoid browser password autofilling when defining new passwords
2023-03-29 19:03:28 +02:00
Éloi Rivard
366c824a6b
Removed useless form macro condition
2023-03-28 23:50:18 +02:00
Éloi Rivard
40c36cdf64
Use the form_render macro when possible
2023-03-28 23:31:35 +02:00
Éloi Rivard
d9f591a73e
Renamed fomanticui.html in form.html
2023-03-28 20:38:19 +02:00
Éloi Rivard
9ac7b4808f
Merge branch 'csrf' into 'main'
...
CSRF protection everywhere
See merge request yaal/canaille!119
2023-03-28 18:34:02 +00:00
Éloi Rivard
f97dc3b2c6
CSRF protection everywhere
2023-03-28 20:30:29 +02:00
Éloi Rivard
e978ec5a84
Translated using Weblate (French)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-03-28 19:41:18 +02:00
Éloi Rivard
98df762666
Fixed user uid and email unicity at creation
2023-03-27 23:16:32 +02:00
Sofi
7e7db25a5c
Translated using Weblate (Norwegian Bokmål)
...
Currently translated at 53.6% (169 of 315 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/nb_NO/
2023-03-24 23:37:00 +01:00
Sofi
91b76785ed
Translated using Weblate (Norwegian Bokmål)
...
Currently translated at 52.6% (166 of 315 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/nb_NO/
2023-03-23 22:41:42 +01:00
Éloi Rivard
47576c541f
Fixed some jinja translation with {% trans %} blocks and new lines.
2023-03-22 19:29:28 +01:00
Éloi Rivard
7e0e0d6068
Profile edition refactoring
2023-03-22 08:52:00 +01:00
Éloi Rivard
bacbb9a3bb
Avoid to display flash messages twice when impersonating or sending a password initialization mail
2023-03-21 22:01:32 +01:00
Éloi Rivard
77d4efe5e5
Translated using Weblate (French)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-03-19 12:40:03 +01:00
gallegonovato
3dd3f995b4
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-03-19 12:40:02 +01:00
Éloi Rivard
dd394391c8
Added last_modified and etag headers on the user photos
2023-03-18 01:29:04 +01:00
Éloi Rivard
61940844e6
Properly handle LDAP date timezones
2023-03-18 00:39:32 +01:00
Éloi Rivard
6b87788d23
Fixed HTML errors
2023-03-17 22:32:53 +01:00
Hosted Weblate
6932fda955
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-03-17 17:38:07 +01:00
gallegonovato
6d6b5564e8
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (313 of 313 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-03-17 17:38:06 +01:00
Éloi Rivard
8e84b016da
Organization field support
2023-03-17 17:36:23 +01:00
Éloi Rivard
7628bd1a41
Fixed submit button display bug
2023-03-17 16:03:44 +01:00
Éloi Rivard
f1e6cd1586
Removed unused template parts
2023-03-17 09:27:48 +01:00
Éloi Rivard
21fa7599ac
Revert "Avoid to use pkg_resources to get the version number"
...
This is not available with python 3.7
This reverts commit 053d39fb43
.
2023-03-16 23:16:55 +01:00
Éloi Rivard
053d39fb43
Avoid to use pkg_resources to get the version number
2023-03-16 23:10:20 +01:00
Éloi Rivard
b839fa76d9
Mail admin message wording
2023-03-16 20:15:44 +01:00
Éloi Rivard
f09db3646a
Avoid carriage returns in HTML head title tag
2023-03-16 19:43:06 +01:00
Éloi Rivard
191f48a4e1
Translated using Weblate (French)
...
Currently translated at 100.0% (313 of 313 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-03-16 19:42:47 +01:00
Hosted Weblate
91b74a9479
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-03-16 19:17:48 +01:00
Éloi Rivard
ccbe8a35c6
Translated using Weblate (French)
...
Currently translated at 100.0% (309 of 309 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-03-16 19:17:47 +01:00
Éloi Rivard
e1c4951639
Updated language catalogs
2023-03-16 19:17:11 +01:00
Éloi Rivard
24f0417460
Split the profile page in two
2023-03-16 18:45:35 +01:00
Éloi Rivard
7e7a1427e5
Form field descriptions are displayed as tooltips
2023-03-16 18:45:35 +01:00
Éloi Rivard
93e159c6cb
Use fomantic ui popups to quicken the apparition of 'title' tooltips
2023-03-16 18:45:35 +01:00
Éloi Rivard
0f93029d2a
Split the consent page in two
2023-03-16 18:45:35 +01:00
Éloi Rivard
69c67345c2
Introduced a submenu
2023-03-16 18:45:34 +01:00
Éloi Rivard
3ef07a955b
Make sure the input HTML class names are displayed in one line
2023-03-16 16:32:37 +01:00
Hosted Weblate
57d0f128b4
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-03-16 16:26:14 +01:00
Éloi Rivard
5aad527454
Unit tests use WebTest .mustcontain method when possible
2023-03-16 16:25:14 +01:00
Éloi Rivard
94af1744ba
pre-commit update
2023-03-14 12:08:37 +01:00
Éloi Rivard
4742ea3ce7
Fixed links in the autorization list admin page
2023-03-13 15:59:22 +01:00
Éloi Rivard
7d5b5ab723
title was a TelField
2023-03-13 13:47:15 +01:00
Éloi Rivard
7eef2748f2
Faker is not imported anymore when the clean command is called
2023-03-13 09:46:17 +01:00
Éloi Rivard
dfb26d087f
Translated using Weblate (French)
...
Currently translated at 100.0% (309 of 309 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/fr/
2023-03-12 23:35:25 +01:00
gallegonovato
f8b94a98cc
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (309 of 309 strings)
Translation: Canaille/Canaille
Translate-URL: https://hosted.weblate.org/projects/canaille/canaille/es/
2023-03-12 23:35:25 +01:00
Éloi Rivard
fb1c6446fa
Users can only search other users based on the fields they can read or write
2023-03-12 19:04:39 +01:00