Pierre de La Morinerie
5e05556ee8
dossiers: add a validation on dossier individual
...
Validate that a dossier on a `for_individual?` procedure always has
an `individual` associated record.
For this, the individual needs to be built before the record is
validated (i.e. even before the `before_create` callback is run).
This should help with #4596 : now if a dossier is created without an
`individual`, or if the `invividual` record is later removed, the
validation will fail.
2020-01-08 10:48:22 +01:00
Pierre de La Morinerie
e32a42cfe6
dossiers: split the dossier creation on several lines
2020-01-08 10:48:22 +01:00
Pierre de La Morinerie
5b2311c851
dossiers: rescue RecordNotFound only for procedures
...
This ensures that we won't rescue an `ActiveRecord::RecordNotFound`
exception related to another object.
2020-01-08 10:48:21 +01:00
simon lehericey
058442c84e
[link to #4557 ] An instructeur cannot change its email on its own
2019-12-11 17:18:21 +01:00
simon lehericey
21910c959e
@current_user -> current_user
2019-12-11 17:18:21 +01:00
Paul Chavard
7b947feae4
Rename demarche archivée to demarche close
2019-11-28 15:07:16 +01:00
Pierre de La Morinerie
f58f9f9950
dossiers: render a valid response after an autosave
...
This helps Firefox DevTools to mark the request as valid and completed
successfuly.
2019-11-27 10:37:33 +00:00
Pierre de La Morinerie
5f9a9d059e
dossiers: render JSON if needed
...
When receiving a request that expects JSON, return a simple '200'.
This avoids the unecessary work of rendering all the HTML page (which
ultimately will not be used).
2019-11-20 11:30:27 +01:00
Pierre de La Morinerie
8b8a96abda
dossiers: save draft by default (instead of submitting)
...
Make the default behavior of `update_brouillon` be to update the draft,
instead of submitting the dossier.
This makes all requests made to `update_brouillon` without specifying
an extra `submit_draft` parameter to just save the draft. It will make
autosaving the draft easier and safer.
2019-11-20 11:24:31 +01:00
Paul Chavard
f5c80f211d
Guard for missing attestation on dossier
2019-11-06 12:54:07 +01:00
Pierre de La Morinerie
cd478b489e
instructeurs: replace calls to Instructeur.find_by(email: …)
2019-11-04 10:44:23 +01:00
simon lehericey
b7434c3132
User can choose its gi
2019-10-17 15:48:14 +02:00
Paul Chavard
8fcf1353f3
Remove duplicated attachments
2019-09-17 18:12:53 +02:00
Nicolas Bouilleaud
99f986b815
Cleanup Procedure retrieval in “Commencer”
...
Make sure to only fetch active (brouillons or published) procedures.
2019-09-17 16:30:48 +02:00
Paul Chavard
3b8d3b7967
Add Style/CollectionMethods to rubocop
2019-09-12 14:48:18 +02:00
Paul Chavard
347f03d2a9
Redirect to pdf attachement old name if not attached
2019-09-10 15:06:47 +02:00
simon lehericey
4da12ed3e8
User/DossierController: dossier are linked to default group by default
2019-09-03 06:47:02 +02:00
benjaminhenkel
73d643d1be
Update flash message for test demarche
2019-08-28 14:54:17 +02:00
Paul Chavard
32563c3675
Redirect to active_storage files when available
2019-08-27 17:43:33 +02:00
simon lehericey
7b9b90a3e0
[ fix #4238 ] When the token does not exist, redirect to home page without sending a new link
2019-08-27 15:01:46 +02:00
simon lehericey
80cb8b87fe
Keep only the FC logic and use devise for the rest
2019-08-16 16:48:22 +02:00
simon lehericey
9c715b2969
SessionController: new User in view
2019-08-16 16:48:22 +02:00
simon lehericey
27085af9b5
SessionController: remove remember_me
...
It is somehow taken care by warden
2019-08-16 16:48:22 +02:00
simon lehericey
002510d5cb
SessionController: remove complicated try_to_authenticate
2019-08-16 16:48:22 +02:00
simon lehericey
67cc2c1a87
SessionController: remove instructeur_signed_in?
2019-08-16 16:48:22 +02:00
simon lehericey
a3b9bf90d4
SessionController: remove useless code
...
- the redirection of a locked user is made by the sign_in method
- because of the paranoid mode it displays the devise.failure.invalid error message
2019-08-16 16:48:22 +02:00
simon lehericey
1b14d85c77
Rerender if wrong credentials
2019-08-16 16:48:22 +02:00
simon lehericey
dab1519b8c
Remove credenticals synchronisation logic
2019-08-16 11:35:19 +02:00
simon lehericey
58ecf18390
ActivateController: add tests and clean a bit
2019-08-16 11:22:36 +02:00
simon lehericey
972b6793f7
Remove useless sessions_controller
2019-08-14 18:04:26 +02:00
simon lehericey
149b0b5797
Fix Sign out
2019-08-14 16:58:50 +02:00
simon lehericey
c380d807ab
Spec: sign_in with administrateur.user
2019-08-14 15:08:14 +02:00
simon lehericey
840be2408e
Remove administrateur devise methods
2019-08-14 15:06:15 +02:00
simon lehericey
5fdac38cb2
Fix instructeur invitation
2019-08-13 15:15:16 +02:00
simon lehericey
ad31822a68
Spec: sign_in with instructeur.user
2019-08-13 15:15:16 +02:00
simon lehericey
47b7dc368b
Remove or fix now nonsense code
2019-08-13 15:15:16 +02:00
simon lehericey
3fde2a6f70
Rename gestionnaire in code to instructeur
2019-08-12 13:47:01 +02:00
clemkeirua
707e8a0004
dossier_controller#new uses info from FC if any
2019-08-01 17:42:32 +02:00
maatinito
8d3e3baabc
#3928 administrator new & edit pwd pages
2019-08-01 17:12:14 +02:00
maatinito
220b38ad2a
#3928 different pwd edit page for administrators
2019-08-01 17:12:14 +02:00
Pierre de La Morinerie
5502f2e42e
dossier: remove UI for uploading old pieces justificatives
2019-07-30 16:11:16 +02:00
pedong
9438f962c5
add alert for account is locked
2019-07-29 17:48:44 +02:00
pedong
0ed9c4cbd4
add check access_locked? when login
2019-07-29 17:48:44 +02:00
Pierre de La Morinerie
a8354bd103
dossiers: unify deletion of dossiers between manager and user
...
The code paths for deleting a dossier were different, depending on
whether the dossier was deleted by the user, or from the Manager.
This commit unifies the two code paths into one.
This has the effect of:
- An operation log is now recorded when an user deletes its own dossier;
- Gestionnaires are now notified even when the dossier is deleted from
the Manager;
- The `support:delete_user_account` task now requires the email address
of the author.
2019-07-16 16:22:20 +02:00
Paul Chavard
3cb39c2840
Refactor message attachements to use active_storage
2019-07-10 15:35:29 +02:00
Pierre de La Morinerie
03fc555edf
profile: send an email when the account is already taken
2019-07-10 11:31:09 +02:00
simon lehericey
d36f6ebcd7
[ fix #1709 ] A user can change its email
2019-07-09 11:55:17 +02:00
simon lehericey
d68d2be798
Profil: accessible to all roles
2019-07-09 11:55:17 +02:00
Paul Chavard
ff44b7a600
Refactor purge pj to be more generic
2019-05-29 15:54:51 +02:00
Paul Chavard
4a9ef5d12e
Always use purge_later
2019-05-21 14:05:33 +02:00
pedong
a226999382
redirect to same path after use signup
2019-05-13 15:28:25 +02:00
Pierre de La Morinerie
e06e32238c
api_entreprise: display a specific error message on network errors
2019-05-02 11:24:38 +02:00
Paul Chavard
1c71355574
Better warnings in test mode
2019-04-30 11:03:24 +02:00
Pierre de La Morinerie
41ad89d8ac
commencer: fix redirection with invalid path
2019-04-04 14:03:40 +02:00
Pierre de La Morinerie
22f2ca105e
commencer: display a FranceConnect button
...
Fix #3640
2019-04-03 16:08:09 +02:00
Pierre de La Morinerie
06e7355d5b
commencer: fix invalid URL on test procedures
...
Fix #3693
2019-03-28 14:15:46 +01:00
Pierre de La Morinerie
d267d782b8
help: add administration contact on /commencer pages
2019-03-28 11:36:24 +01:00
Pierre de La Morinerie
ded5b70444
app: rename new_user
to users
2019-03-25 10:56:39 +01:00
Mathieu Magnin
cf610bbd91
Merge branch 'dev' into enforce-rubocop-timezone
2019-02-18 17:41:41 +01:00
simon lehericey
7de3a18fd1
valid period depend on trusted_device_token.created_at
2019-02-18 17:20:49 +01:00
simon lehericey
23db8a160c
move token validity to trusted_device_token
2019-02-18 17:20:49 +01:00
simon lehericey
bee9a108c5
split login and trusted_device logic
2019-02-18 17:20:00 +01:00
Mathieu Magnin
dd27167c5d
Enforce Timezone rule in Rubocop
2019-02-18 16:19:42 +01:00
Pierre de La Morinerie
ae763d93f3
sign_up: display procedure context if available
2019-01-17 11:07:09 +01:00
Pierre de La Morinerie
4fd9fa6610
sign_in: extract the procedure context to a ProcedureContextConcern
2019-01-17 11:07:09 +01:00
Pierre de La Morinerie
8b95da5ee5
layouts: migrate sign_up to the shared layout
2019-01-16 14:49:51 +01:00
Pierre de La Morinerie
62ee710382
sign_in: remove hack for displaying the procedure context
...
Before there was no way to display the informations about a procedure
without having a dossier. Thus an empty dossier was created.
Now we can display the informations of a procedure using a @procedure
instance variable, so we can move this hack away.
2019-01-16 14:25:12 +01:00
Pierre de La Morinerie
d36696442b
layouts: migrate sign_in to the shared layout
2019-01-16 14:25:12 +01:00
simon lehericey
29fff9ee68
[ fix #3269 ] bufferize login token email
2019-01-10 12:06:35 +01:00
simon lehericey
b38fbc78ef
SessionControllerSpec: remove specific attribut test
...
change user.update(log_in_with_france_connect: nil) as log_in_france_connect is an enum
2019-01-09 13:49:47 +01:00
Pierre de La Morinerie
5a36546485
layouts: rename "application" to "application_old"
2019-01-07 12:17:05 +01:00
Frederic Merizen
4699e515ed
[ Fix #2999 ] Send gestionnaire back to what they were doing after email verification
2018-12-06 10:03:21 +01:00
Paul Chavard
37a7e26fc3
Remove unused users/carte_controller
2018-11-27 16:11:25 +01:00
Frederic Merizen
101e8e2588
[ #2999 ] Rediriger vers la bonne page apres login
...
(ne corrige pas le cas ou l'utilisateur est passe par le mail de confirmation)
2018-11-16 15:44:20 +01:00
Paul Chavard
2eb61bd6ed
Move dossier invites handler to invites controller
2018-11-14 15:16:49 +01:00
simon lehericey
fb76197404
SessionController: flipflop trusted device
2018-11-13 10:41:45 +01:00
simon lehericey
457bc13c75
SessionController: do not display 'Connecté' when a login_link is required
2018-11-13 10:41:45 +01:00
simon lehericey
87967568b7
SessionController: if a admin is login in, redirect to admin page
2018-11-13 10:41:45 +01:00
simon lehericey
0d8d2de5a6
Session: add trusted_device cookie
2018-11-13 10:41:45 +01:00
simon lehericey
5690599289
Session: send a mail to confirm gestionnaire login
2018-11-13 10:41:45 +01:00
Pierre de La Morinerie
c7ac43cfe7
confirmation: add a dedicated page with confirmation instructions
...
Fix #2586
2018-11-08 16:20:05 +01:00
Pierre de La Morinerie
b0541fba79
users: sign-in after confirming an account within a short time
2018-11-06 18:24:34 +01:00
Paul Chavard
cfd1950e17
Migrate commencer to new_user
2018-11-01 13:10:41 +01:00
Paul Chavard
725e88a89a
Rename :procedure_path -> :path
2018-10-30 12:01:45 +01:00
Paul Chavard
641831864b
Refactor commencer actions
2018-10-30 12:01:45 +01:00
Paul Chavard
72db9084a8
Fix old carto exception when no selection is passed
2018-10-24 13:16:50 +02:00
Paul Chavard
e5d8d351ba
Fix sentry errors in old carto module
2018-10-22 15:40:19 +02:00
Pierre de La Morinerie
65bdfacd8c
dossier: remove old SIRET code, controllers and views
2018-10-18 15:46:00 +02:00
Pierre de La Morinerie
54ba0f8e50
dossier: add new page for SIRET identification
2018-10-17 10:37:06 +02:00
gregoirenovel
22beb41240
Unify #generate_qp with #generate_cadastre
2018-10-15 16:45:30 +02:00
gregoirenovel
2ed4c1da1c
Use round brackets
2018-10-15 16:45:30 +02:00
Paul Chavard
c6a28d1444
Cleanup carto save
2018-10-14 12:34:44 +02:00
Paul Chavard
dff4f2116a
Move geographical zones list to a partial
2018-10-14 12:34:43 +02:00
Paul Chavard
b5a3fc76fb
Remove legacy carto routes
2018-10-14 12:34:43 +02:00
gregoirenovel
46d02d3e2b
Remove a return
2018-10-10 10:38:57 +02:00
gregoirenovel
89dec3d363
Add a variable to ease code reading
2018-10-10 10:38:57 +02:00
gregoirenovel
4e2964aec3
Unify code in Users::Dossiers::InvitesController#show
2018-10-10 10:38:57 +02:00
gregoirenovel
662349c8bb
Remove InviteDossierFacades
2018-10-10 09:36:05 +02:00
Paul Chavard
cc96723475
Allow users to fill dossiers on démarches en brouillon
2018-10-09 15:05:08 +02:00
gregoirenovel
5f8e8caeb5
Stop auto copying the FC infos to the dossier identity
2018-10-04 13:54:07 +02:00
Pierre de La Morinerie
627df7a1f3
session: migrate the password pages to the new design
2018-10-03 15:10:02 +02:00
Pierre de La Morinerie
bfd106ba30
session: migrate the "token confirmation" page to the new design
2018-10-03 15:09:30 +02:00
gregoirenovel
c91a1cf474
Enable Style/SymbolArray
2018-10-03 12:15:48 +02:00
Paul Chavard
941c529b2c
Remove CGU checkbox
...
fix #2725
2018-10-03 08:59:02 +02:00
Pierre de La Morinerie
36c1aa118d
dossier: remove RecapitulatifController
...
And add a redirection to the new URLs.
2018-10-02 15:42:29 +02:00
Pierre de La Morinerie
bf9f427299
dossier: remove DescriptionController
2018-10-02 14:40:47 +02:00
Pierre de La Morinerie
3392df0029
dossier: remove CommentairesController
2018-10-02 14:40:38 +02:00
Pierre de La Morinerie
758ccff984
dossier: remove feature flag
2018-10-02 12:25:44 +02:00
gregoirenovel
b994fa4206
Do one thing per line
2018-10-01 16:15:46 +02:00
Pierre de La Morinerie
5f1ce48d2e
invites: update link to dossier
2018-09-27 17:22:59 +02:00
Pierre de La Morinerie
a5419b2f08
dossier: fix redirection to dossiers/invite
2018-09-24 17:05:27 +02:00
gregoirenovel
0c9628c180
Fix some files according the the .editorconfig rules
2018-09-20 16:23:09 +02:00
Pierre de La Morinerie
e5f4056fe2
invite: fix prefilling the invited user email
2018-09-19 12:41:09 +02:00
Pierre de La Morinerie
bc55afba51
invite: clarify logic of sign-up redirection
2018-09-19 12:41:09 +02:00
Pierre de La Morinerie
082ef92a99
invite: move invites link to the after_confirmation
callback
...
Refactored from 6a69d958da
The `after_confirmation_path_for` isn't really made to be a callbback.
For instance, it is not executed during tests.
Moving the invitations linking to a proper documented callback allows
the linking to work in a testing environment, when invoking `user.confirm`.
2018-09-19 12:08:28 +02:00
Pierre de La Morinerie
38f6d11c57
dossier: finish feature-switch for enabled new dossier details
2018-09-18 16:48:27 +02:00
Paul Chavard
f3333595a0
Drop text_summary endpoint
2018-09-07 19:41:34 +01:00
gregoirenovel
5ac8117c69
DossierController#modifier → #brouillon
2018-09-07 10:19:10 +02:00
gregoirenovel
00ecae5f93
Procédure → Démarche
2018-09-05 15:46:24 +02:00
gregoirenovel
47962ef795
Simplify route_authorization
2018-08-30 13:16:14 +02:00
gregoirenovel
4b071ecf06
Use enum to the fullest with Dossier.states
2018-08-29 17:31:08 +02:00
gregoirenovel
16a719922b
Use enum to the fullest with User.loged_in_with_france_connects
2018-08-29 17:31:08 +02:00
Paul Chavard
097b06e314
Fix test dossier page
2018-08-14 16:47:31 +02:00
Paul Chavard
c91abe73c5
Remove old user dossier form
2018-08-07 14:13:27 +02:00
Pierre de La Morinerie
1cac0b80af
invite: add button for invite someone to collaborate on a draft
2018-08-01 17:41:12 +02:00
Pierre de La Morinerie
f5d3adba5e
dossiers: remove unused dossiers list code
...
This code is unused since the user dossiers list uses the new UI.
2018-07-04 12:23:49 +02:00
Pierre de La Morinerie
b4b533f0c5
dossiers: change all links to use the new user dossiers list
2018-07-02 13:58:58 +02:00
Paul Chavard
d0a6957862
Remove old cerfa code
2018-06-28 15:16:20 +02:00
simon lehericey
c3610fc96e
[ fix #2067 ] Resend confirmation mail if the user is not confirmed
2018-06-20 13:30:32 +02:00
gregoirenovel
b88cea3c18
Change a deliver into a deliver_later
2018-06-07 15:14:26 +02:00
Frederic Merizen
07b1c147d9
[ Fix #1972 ] Always send mails asynchronously
2018-05-28 12:02:13 +02:00
Frederic Merizen
cce00e19c6
[ #1972 ] Avoid passing unsaved templates to ActionMailer
...
So that all mail arguments can be serialized
2018-05-28 12:02:13 +02:00
Paul Chavard
d99eed122d
Use new models in controllers and views
2018-05-24 17:54:51 +02:00
simon lehericey
0b87944368
[ #1915 ] Devise: avoid leaking registered people
2018-05-23 15:55:52 +02:00
simon lehericey
d2dc69cde0
Connection: redirect user to its procedure
2018-05-23 15:55:52 +02:00
simon lehericey
6a69d958da
Devise: move after_sign_up to after_confirmation
2018-05-23 15:55:52 +02:00
Frederic Merizen
d1bbb8023a
Remove smartlisting workaround
...
As it was fixed upstream in 1.2.2
2018-05-23 15:53:58 +02:00
Paul Chavard
ceddf65f6c
Fix crash with inexistent paths
2018-05-23 15:36:50 +02:00
Paul Chavard
94d253c6dc
Add commencer/test/:procedure_path route
2018-05-23 11:32:26 +02:00
gregoirenovel
be672e19bc
ApiEntrepriseService #fetch -> #get_etablissement_params_for_siret
2018-04-10 12:26:06 +02:00
gregoirenovel
ace8441ec7
SIRETService -> ApiEntrepriseService
2018-04-10 12:24:49 +02:00
simon lehericey
c019cb623a
Individual: use birthdate as a ... date :)
2018-04-04 13:19:39 +02:00
simon lehericey
1f536c94ab
Individual: missing individual part in old controller
2018-04-04 12:25:54 +02:00
simon lehericey
46fd213ad2
Individual: old controller does not care about individual anymore
2018-04-03 21:16:54 +02:00
simon lehericey
4ec6c72c96
[ fix #1755 ] clean GeoJSON polygones before save
2018-03-30 16:15:30 +02:00
Paul Chavard
fd8674dffc
Give procedure_id to SIRETService
2018-03-29 17:57:09 +02:00
Paul Chavard
6b7d0ccb82
Remove unused rescue in SIRET form controller
2018-03-27 13:56:22 +02:00
Paul Chavard
a17ac5a9db
Remove debug logger
2018-03-26 17:44:51 +02:00
Frederic Merizen
2fa88a432b
Add missing brackets around parameters in method definitions
2018-03-20 17:54:51 +01:00
gregoirenovel
d0a59058e8
Remove the mandataire_social guess
...
Rationale:
- is true for only 0.06% of Dossiers
- is not displayed anymore anyways
- will be a rare case for now
* FC adoption is not insane
* FC used more for personal than professional
matters
* not always the mandataires sociaux that fill
dossiers for their companies, so not that
relevant
- we can add it back later
2018-03-20 16:09:00 +01:00