Éloi Rivard
c0f0114496
doc: user and group attribute description based on scim specs
2023-12-14 23:08:17 +01:00
Éloi Rivard
066aed7735
feat: convert the png in webp
2023-12-01 22:09:54 +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
4e380436d3
fix: disable HTMX boosting during the OIDC dance
2023-11-24 14:45:59 +01:00
Éloi Rivard
ff2ff68023
refactor: additional guards on user profile edition
2023-11-24 12:47:09 +01:00
Éloi Rivard
ac149a2120
fix: group name displaying
2023-11-24 11:47:09 +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
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
1fd8af2cf4
refactor: models attributes cardinality is closer to SCIM models
2023-11-17 21:21:25 +01:00
Éloi Rivard
e760c34942
feat: collapse the icon column in the list tables
2023-10-06 15:36:02 +02:00
Éloi Rivard
9c5ef421d0
fix: user deletion on instances without account lockability
2023-09-28 18:27:43 +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
c2e6158bf5
fix: use fomantic-ui equal width menu on submenus
2023-09-08 09:07:04 +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
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
c718f7b258
refactor: remove unnecessary htmx 1506 workarounds
...
fixes #143
2023-08-27 16:25:30 +02:00
Éloi Rivard
26f1a0fbc5
fix: use importlib instead of the deprecated pkg_resources
2023-08-26 16:50:01 +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
37c2a7d4de
refactor: joinform email validation in a separate method
2023-08-16 17:45:39 +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
É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
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
05a1ff21d1
fix: email address field translations
2023-08-08 14:26:46 +02:00
Éloi Rivard
fd24c704c0
feat: implement email verification
2023-08-06 11:58:16 +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
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
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
f5af3e7a0c
split long lines
2023-07-12 11:59:57 +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
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
7ff2360174
send reset emails to all the user emails
2023-06-29 17:47:01 +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
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
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
0342e30ec0
Fixed strings inadvertently refactored
2023-06-22 18:12:54 +02:00
Éloi Rivard
b7e1590510
User emails and phone numbers are now multiple
2023-06-22 17:55:26 +02:00
Éloi Rivard
42730f72d3
Fixed email unicity check
2023-06-22 16:41:35 +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
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
c7f23e845c
datetime-local input fields are transformed in UTC server-side
2023-06-01 13:53:32 +02:00
Éloi Rivard
e20fb23e6f
typo 'successfuly' -> 'successfully'
2023-05-30 09:44:11 +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
38ee26db83
refactored User locking mechanism
2023-05-26 17:48:50 +02:00
Éloi Rivard
17c2f7a5cd
Implemented LDAP ppolicy support.
2023-05-26 15:23:43 +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
c1d1706007
Moved every model import to canaille.models
2023-05-20 20:02:00 +02:00
Éloi Rivard
6f637b8129
Refactored the unit test backend fixtures
2023-05-20 17:17:46 +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
01c1ae4eef
Rename LDAPObject.attrs to state
2023-05-16 15:48:05 +02:00
Éloi Rivard
26dc4d425c
Display password recovery button on OIDC login page
2023-05-15 18:06:22 +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
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
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