Commit graph

5634 commits

Author SHA1 Message Date
Chaïb Martinez
47b177fd31 RGAA A : L'attribut alt est absent pour le logo des demarches
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-11-06 16:50:10 +01:00
clemkeirua
04c13190c3 introduce smtp_key in order to use 2 different sendinblue keys
client_key is exposed to the client via gon, so if we use it for sending email too we are exposing a key so anybody could send an email.
The current client_key has a different level of right and can't send emails so it's ok to expose it.
2019-11-06 13:34:36 +01:00
clemkeirua
959aacdea5 Sendinblue email balancing using proper credentials
This reverts commit c61981e795.
2019-11-06 13:34:36 +01:00
Paul Chavard
0562e2728f Fix type_de_champ validation error 2019-11-06 12:54:07 +01:00
Paul Chavard
ee62d6fca4 Fix move type de champs 2019-11-06 12:54:07 +01:00
Paul Chavard
a708b071dd Do not crash with champ repetable with no children 2019-11-06 12:54:07 +01:00
Paul Chavard
f5c80f211d Guard for missing attestation on dossier 2019-11-06 12:54:07 +01:00
Paul Chavard
95f98fe605 API v1 correctly handle resultats_par_page 2019-11-06 12:54:07 +01:00
Pierre de La Morinerie
8df91df9fa assigns: strip and lowercase the search filter 2019-11-06 12:16:30 +01:00
Pierre de La Morinerie
0eeac59ecd assigns: fix search among the unassigned instructeurs
This was broken since moving the email out of the Instructeur column.
2019-11-06 12:16:30 +01:00
Paul Chavard
08b1a0f90d [API Carto]: use typhoeus and correctly handle errors 2019-11-06 11:10:56 +01:00
simon lehericey
9f5169eb7d Remove unused Administrateur.reset_password method 2019-11-05 14:10:39 +01:00
simon lehericey
395aba8bbc Remove administrateur active notion 2019-11-05 14:10:39 +01:00
simon lehericey
5643e671a0 Code use user.active? 2019-11-05 14:10:39 +01:00
simon lehericey
b193dd1465 User get the active notion 2019-11-05 14:10:39 +01:00
Pierre de La Morinerie
c37bfc7349 instructeurs: fix email casing in invitation
When inviting an instructeur, the code first looked up an existing
instructeur using the normalized (downcased) email address–but then
tried to promote it using the non-normalized version, which failed.

This fixes the issue by always using the normalized email.
2019-11-05 10:54:58 +01:00
simon lehericey
e3d7688e66 [fix #4473] Invite_administrateur!: do not reset password if the user is active 2019-11-05 10:29:39 +01:00
simon lehericey
243bc2887f Invite_administrateur!: remove unused return 2019-11-05 10:29:39 +01:00
Pierre de La Morinerie
f63cd86811 webhook: fix a crash when the Helpscout customer is unknown 2019-11-04 18:36:52 +01:00
clemkeirua
c61981e795 Revert "Sendinblue email balancing using interceptor"
This reverts commit b2135b6576.
2019-11-04 15:55:08 +01:00
Chaïb Martinez
b2135b6576 Sendinblue email balancing using interceptor
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-11-04 15:30:44 +01:00
Pierre de La Morinerie
2e8d365b93 instructeurs: disable the email column 2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
f8358b3ae9 instructeurs: create without providing the email 2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
f131dbb80d instructeurs: make the create form not using email directly
Before the form attempted to read an email value from the Instructeur
model, and failed (because the empty Instructeur had no user yet).

We could let `Instructeur#email` return `nil` if there is no User –
but as a created Instructeur is always supposed to have a User, this
seems like a nice safeguard to keep.

So instead this commit rewrites the create form, which now doesn’t
depend on an Instructeur model. Seems easy enough for now.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
d78d206544 instructeurs: fix expert creation not to use Instructeur.email
It kind of worked until now, because the email field is disabled, and
thus never accessed.

But better make it clean, by accessing an object (User) where the email
field actually exists.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
8e6930d257 instructeurs: fix ProcedurePresentation to use instructeur.user.email
The `joins` are declared explicitely in order to associate a predictable
name to the joined table.

Otherwise, when the query is joined with `:users`, ActiveRecord will
alias the join automatically  to solve the conflict. Unfortunately, the
automatic resolution means that the table name becomes unpredictable,
and thus unsuitable to perform queries on.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
8b8213c301 instructeurs: always eager load the user relationship
Now that `Instructeur.email` is merely an alias to `instructeur.user.email`,
and we changed every occurence of `instructeurs.pluck(:email)` to
`instructeurs.map(&:email)`, the new version using `map` may cause N+1 queries
if the users have not been preloaded.

It makes sense to always preload the user when fetching an Instructeur:

- Instructeur and User have a strongly coupled relationship
- It avoids N+1 queries everywhere in the app

Of course fetching an instructeur without needing its user will now do an
unecessary fetch of the associated user. But it seems better than leaving
a risk of N+1 queries in many places.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
a462edb9bc instructeurs: alias instructeur.email
This also means we need to replace instances of `pluck` on the email
column.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
cd478b489e instructeurs: replace calls to Instructeur.find_by(email: …) 2019-11-04 10:44:23 +01:00
Paul Chavard
839b0d7e6d Add Entreprise raison sociale to dossier export
fix #4422
2019-10-31 17:11:46 +01:00
Paul Chavard
18e91e7ca3 Extend old export format till mid-November 2019-10-31 17:11:46 +01:00
Pierre de La Morinerie
627d30191f manager: allow hidden procedures to be searched
The Manager::DossiersController already allow hidden dossiers to be
searched and displayed. Give the same behavior to Procedures.
2019-10-31 17:03:02 +01:00
Pierre de La Morinerie
076e3a9294 procedure: improve layout of the "webhook" field 2019-10-31 16:04:47 +01:00
Pierre de La Morinerie
817662f7d9 procedure: move description to views/shared
Now that the description is used not only in the layout, but also in the
procedure form, better to make it an official shared partial.
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
2e0ef84941 images: rename 'attachment' icon to 'attached'
This avoids conflicts with the 'attachment' component.
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
aea93779cc procedure: use the attachment view to upload files 2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
1c61f2de58 views: refactor the attachment/edit view
Make it more reusable, by:

- Renaming `attachment/update` to `attachment/edit`
- Refactoring the CSS styles into their own stylesheet
- Allow to specify the 'accept' option
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
5be83bd01e procedure: make the layout more similar to the mockup 2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
02384b078c procedure: remove UI to edit the european flag
This is an option we want to deprecate, and remove entirely in the
future.

Admins can still add the EU flag manually to their uploaded logo.
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
112b44bdea procedure: align radio buttons vertically
- Remove the unused `.radios.vertical`
- Add a `.editable-champ-radio.vertical` variant for vertical radios
- Add an example of vertical radios to the patron
- Use vertical radios to display the procedure options
2019-10-31 10:27:19 +01:00
Nicolas Bouilleaud
72b7ff221c move procedure to new design 2019-10-31 10:27:19 +01:00
simon lehericey
652e95d0c5 Add link from instructeur procedure view 2019-10-30 14:27:51 +01:00
simon lehericey
477f7c9837 Remove instructeur 2019-10-30 14:27:51 +01:00
simon lehericey
79b808470c Add instructeur 2019-10-30 14:27:51 +01:00
simon lehericey
94081a3997 Show Groupe Instructeur 2019-10-30 14:27:51 +01:00
simon lehericey
4491dca19a Index Groupe Instructeur 2019-10-30 14:27:51 +01:00
simon lehericey
def9c67c56 Clean html 2019-10-30 14:27:51 +01:00
Paul Chavard
6a3d725134 Revert "Revert "Decommission ActiveStorage proxy service and use openstack service""
This reverts commit 71227be37f.
2019-10-30 12:11:45 +01:00
simon lehericey
71227be37f Revert "Decommission ActiveStorage proxy service and use openstack service"
This reverts commit 0ff6c793ae.
2019-10-29 10:30:40 +01:00
simon lehericey
4febf1851f notifications_for_procedure is now based on instructeur.groupe_instructeurs 2019-10-25 09:42:17 +02:00
simon lehericey
d411bfddc8 We can send a dossier to instructeurs from the same groupe 2019-10-25 09:42:17 +02:00
simon lehericey
e290fc3674 No need to update column as the sign_up process activates the user 2019-10-24 18:32:48 +02:00
simon lehericey
8ae592fe25 [fix #4361] administrateur active 2019-10-24 18:32:48 +02:00
Pierre de La Morinerie
dc1f3b4220 champs: add a "plus" icon to the "Add row" button 2019-10-24 16:52:29 +02:00
Pierre de La Morinerie
906f0fc468 champs: fix margin of "Add row" button in the Preview 2019-10-24 16:52:29 +02:00
Pierre de La Morinerie
35e97ac617 patron: add content to the repetition champ 2019-10-24 16:52:29 +02:00
Pierre de La Morinerie
8f4ead96b0 patron: make the labels more readable 2019-10-24 16:52:29 +02:00
clemkeirua
d9e993571c add a warning during export generation 2019-10-24 16:27:10 +02:00
clemkeirua
cb5f922bb6 cleanup the queue flag during cleanup job 2019-10-24 16:27:10 +02:00
clemkeirua
da590cc73a sequence async file generation so that the queue flag is cleared 2019-10-24 16:27:10 +02:00
Pierre de La Morinerie
bb024d1850 javascript: display a localized message on upload errors 2019-10-24 16:12:56 +02:00
Pierre de La Morinerie
a3057afc22 javascript: report upload errors to Sentry 2019-10-24 16:12:56 +02:00
Paul Chavard
a192924ee5 Fix infinit rerendering of TypeDeChamp component
fix #4428
2019-10-24 13:31:54 +02:00
simon lehericey
90ae4181bf fix dossier_linked_path in routed procedure 2019-10-23 21:47:20 +02:00
simon lehericey
fbe93e0fce Fix pluralization in search page 2019-10-23 21:47:20 +02:00
simon lehericey
35bba62297 Update routing critéria name 2019-10-23 21:47:20 +02:00
simon lehericey
d136d023cd Add feature flipped link in admin nav bar 2019-10-23 21:47:20 +02:00
simon lehericey
a5ffe9f54b Remove instructeur from the group 2019-10-23 21:47:20 +02:00
simon lehericey
a6deafd885 Add instructeurs to groupe 2019-10-23 21:47:20 +02:00
simon lehericey
3dd3af8482 Groupe instructeur update 2019-10-23 21:47:20 +02:00
simon lehericey
9a6336f508 Groupe instructeur create 2019-10-23 21:47:20 +02:00
simon lehericey
733e83cc54 Groupe instructeur show 2019-10-23 21:47:20 +02:00
simon lehericey
2749c00ce3 Groupe instructeur index 2019-10-23 21:47:20 +02:00
simon lehericey
6a974663b0 An instructeur owns procedure with groupe instructeur mechanisme 2019-10-23 21:47:20 +02:00
simon lehericey
1fa149575c Add constraints to GroupeInstructeur 2019-10-23 21:47:20 +02:00
simon lehericey
4b058001aa Fix active link in left panel 2019-10-23 21:47:20 +02:00
Paul Chavard
0ff6c793ae Decommission ActiveStorage proxy service and use openstack service
We are making these changes in order to always use DS_Proxy. Before this change DS_Proxy was not used to write files when ActiveStorage was used directly and not through “direct upload”.
2019-10-23 17:58:00 +02:00
Paul Chavard
86b271997b Invite experts to linked dossiers
closes #3669
2019-10-23 13:10:09 +02:00
Pierre de La Morinerie
d542bca8de admin: relabel the number champ
Avoid two type de champs having the same label.

Soon this champ will even be deprecated and disappear.

Ref #4414
2019-10-22 15:59:43 +02:00
clemkeirua
ec78c99a2a ajout d'un job de suppression des vieux exports 2019-10-22 15:23:49 +02:00
clemkeirua
7290214624 uniformize export wording in UI 2019-10-22 12:15:49 +02:00
clemkeirua
4a6893d88b migrate sendinblue API to v3 2019-10-22 10:06:53 +02:00
clemkeirua
87741f4b49 introduce constant for exports 2019-10-22 09:51:14 +02:00
clemkeirua
cdab08b198 UI work 2019-10-22 09:51:14 +02:00
clemkeirua
43424e4f4e merge with the work of paul, using 3 links 2019-10-22 09:51:14 +02:00
clemkeirua
70ea5e167e procedure download is performed through a controller in order not to leak the URL 2019-10-22 09:50:58 +02:00
clemkeirua
1af2b63ed1 initial implementation of async export 2019-10-22 09:50:58 +02:00
simon lehericey
18de25fac7 Display the dossier.groupe_instructeur.label on various screens 2019-10-17 15:48:14 +02:00
simon lehericey
b7434c3132 User can choose its gi 2019-10-17 15:48:14 +02:00
simon lehericey
6b8cefa551 Procedure: defaut_groupe_instructeur is the first group
Especially useful when the defaut groupe is renamed ...
2019-10-17 15:48:14 +02:00
simon lehericey
5897464224 Build Dossier champ only once 2019-10-17 15:48:14 +02:00
Pierre de La Morinerie
db0fede521 views: improve the state button
- Turn the "accepted" infos into standard dropdown sections
- Display the justificatif even if there is no motivation
2019-10-15 12:48:14 +02:00
Pierre de La Morinerie
dd57953b76 views: refactor the state button
Now that all states have a dropdown, we can simplify the code.

This also brings the "Repasser en instruction" action for all states
(including when no attestation or motivation is present).
2019-10-15 12:48:14 +02:00
Pierre de La Morinerie
07f75ff20e views: fix missing attestation link
- Fix the missing link to see attestations (see #4400)
- Fix the "Repasser en instruction" wording being confusing for
  accepted state
- Add lot of tests
2019-10-15 12:48:14 +02:00
Pierre de La Morinerie
0e5f66c5ba views: make the "Voir l'attestation" UI simpler
Instead of adding a button, just turn the "attestation" text into a link
2019-10-15 12:41:37 +02:00
Pierre de La Morinerie
0064c2c610 views: tell an attestation will be sent only if it is true
Previously the message stating "an attestation will be sent" was
displayed even when the attestation was disabled.
2019-10-15 12:41:37 +02:00
Pierre de La Morinerie
e0571a8ae3 avis: improve layout and wording 2019-10-14 16:03:08 +02:00
Pierre de La Morinerie
c2e82e4145 champ_policy: allow instructeurs to access private annotations
Fix #4388
2019-10-08 14:34:12 +02:00
Pierre de La Morinerie
a20b6b73a2 policies: rename "Scope" to "ApplicationScope"
For clarity.
2019-10-08 14:28:26 +02:00
simon lehericey
785b8fd78f Remove simple form from mail_templates 2019-10-08 10:57:35 +02:00
simon lehericey
0c15326df6 User: inactive user have never signed_in 2019-10-08 10:09:16 +02:00
simon lehericey
3e0f1b9c66 User: eager load instructeur and administrateur to remove 2 db requests per http request 2019-10-08 09:53:40 +02:00
simon lehericey
5143d341ec Admin: 1 query for crips 2019-10-08 09:53:40 +02:00
Paul Chavard
e7ed408e08 Auto-link valeur des champs
closes #2865
2019-10-07 21:20:24 +02:00
clemkeirua
053cc5cfc5 [fix #4058] instructeur peut passer accepte → instruction 2019-10-07 15:17:33 +02:00
clemkeirua
d3063c0b63 remove download_as_zip feature flag 2019-10-03 10:48:24 +02:00
clemkeirua
d8bc73b972 fix wording 2019-10-01 15:32:03 +02:00
clemkeirua
49cc3d4ba5 merci: ne pas afficher qu'un dossier peut être modifié si pas possible 2019-10-01 15:32:03 +02:00
Chaïb Martinez
d71ab9a7a8 Add "continuer" button 👉
[fix #4369]

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:26:42 +02:00
Chaïb Martinez
19590d9814 add "sortir" link
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:16:02 +02:00
Chaïb Martinez
4225951a1d minor fix
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:16:02 +02:00
Chaïb Martinez
9b98bcd176 remove duplicate link
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:16:02 +02:00
Chaïb Martinez
8b895df34c Update "nouveauté" link
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:16:01 +02:00
simon lehericey
451387d32d Dossier: add conditions on joins for with_notifications scope 2019-09-26 15:46:20 +02:00
Paul Chavard
3f36153807 [GraphQL] Add groupe_instructeurs to demarche 2019-09-26 11:25:14 +02:00
Nicolas Bouilleaud
03c950ea97 Move followed_dossiers_with_notifications to a Dossier scope
Instead of instructeur.followed_dossiers_with_notifications, we can now write instructeur.followed_dossiers.with_notifications.

Yay composition!
2019-09-25 14:10:00 +02:00
Nicolas Bouilleaud
1505d45be1 Optimize notifications queries for badges by using exists?, not present?
`ActiveRecord::Relation.exists?` yields a SQL EXISTS query, while `present?` is a method of Enumerable, which needs the actual result array to be queried.
2019-09-25 14:10:00 +02:00
Nicolas Bouilleaud
a4166d3c57 Refactor Instructeur.notifications_* methods
- rename `dossiers_id_with_notifications` to `followed_dossiers_with_notifications`,
- rename `notifications_per_procedure` to `procedures_with_notifications`,
- return an ActiveRecord::Relation instead of the result of the query, so that the call place can compose it,
- `merge` with the wanted Dossier scope in the call places, don’t bother passing it as a parameter,
- use the “state” (now “scope”) parameter as a scope method that can be just applied on `Dossier`.
2019-09-25 14:10:00 +02:00
Nicolas Bouilleaud
650e973d0a Fix plural in entreprise(s).data.gouv.fr 2019-09-24 16:20:34 +02:00
Vini75
8c977dca09
Adjust link to entreprisedatagouv 2019-09-24 16:14:31 +02:00
Vini75
9968eb69c0
Adjust link to entreprisedatagouv 2019-09-24 16:14:23 +02:00
Vini75
7f1b34926f
link to entreprisedatagouv.fr on user 2019-09-24 15:55:06 +02:00
Vini75
606c084914
Add link to entreprises datagouv.fr 2019-09-24 15:49:25 +02:00
Paul Chavard
da4523612a Update graphql schema 2019-09-24 10:47:21 +02:00
Paul Chavard
5a7e415474 Put graphql behind a feature flag 2019-09-24 10:47:21 +02:00
Paul Chavard
eb7aba18e6 Add dossier champs and annotations types 2019-09-24 10:47:21 +02:00
Paul Chavard
1c10718c11 Add messages and avis types 2019-09-24 10:47:21 +02:00
Paul Chavard
8928eaba11 Add demarche champs and annotations types 2019-09-24 10:47:21 +02:00
Paul Chavard
bf6fbbf2b6 Add graphql end point 2019-09-24 10:47:21 +02:00
Paul Chavard
5a7eb734ff Dump graphql schema for reference 2019-09-24 10:47:21 +02:00
Paul Chavard
ba683a107c Add authorizations to root queries 2019-09-24 10:47:21 +02:00
Paul Chavard
a7fc4df09b Resolve models and types 2019-09-24 10:47:21 +02:00
Paul Chavard
e06051bc96 Add graphql root types 2019-09-24 10:47:21 +02:00
Paul Chavard
52e84f2ffe Add graphql object types 2019-09-24 10:47:21 +02:00
Paul Chavard
9bb52dfb8c Add graphql base types 2019-09-24 10:47:21 +02:00
Paul Chavard
d2fdaacb5d Add Api::V2::Schema 2019-09-24 10:47:21 +02:00
Paul Chavard
2e854f2ac3 Add graph loading scopes to Dossier and Procedure 2019-09-24 10:47:21 +02:00
Nicolas Bouilleaud
e962fb26e0 Allow sorting Dossiers by “has notifications” in traites
fixes #4351
2019-09-24 09:37:42 +02:00
Nicolas Bouilleaud
00b1aa0ea1 Disable turbolinks for links to Stats pages
This is a workaround for #350
2019-09-23 14:25:04 +02:00
Nicolas Bouilleaud
f74fde3f80 Avoid sending notification emails about archived dossiers 2019-09-20 11:06:33 +02:00
Nicolas Bouilleaud
a2131d0fcc Don’t unfollow when archiving
It was slightly broken in two ways:
- it doesn’t make other instructeurs unfollow the dossier
- if the dossier is unarchived, instructeurs don’t refollow automatically.
2019-09-20 11:06:33 +02:00
Nicolas Bouilleaud
769621de46 Explicitly pass the “state” param in notifications_*_procedure methods 2019-09-20 11:06:33 +02:00
Nicolas Bouilleaud
8a06c01f13 Reorder methods in instructeur.rb
Move token stuff together, out of notification-related stuff.
2019-09-20 10:48:08 +02:00
Nicolas Bouilleaud
4f0871dab0 Use a single query in dossiers_id_with_notifications (instead of four)
This is used in /procedures#show and /procedures#index, to display badges on the “suivis” and “traités” tabs of each procedure. Rails cache helps when it’s the exact same query, but it’s not the case for different tabs.

I’m not certain it’ll be a visible performance improvement but it shouldn’t hurt.
2019-09-20 09:45:59 +02:00
simon lehericey
faddbc23ef Eager load procedure: :groupe_instructeurs for export 2019-09-19 12:30:12 +02:00
simon lehericey
a2f82ab8be Add groupe_instructeur_label to export v2 2019-09-19 12:30:12 +02:00
simon lehericey
f577484aa2 Add groupe_instructeur_label to export v1 2019-09-19 12:30:12 +02:00
simon lehericey
3bc20bdb06 Procedure.routee? 2019-09-19 12:30:12 +02:00
simon lehericey
8660d4af30 Instructeur: only export its dossiers 2019-09-19 12:24:40 +02:00
Paul Chavard
f4d4a896a0
Merge pull request #4342 from tchak/revert-proxy
Revert "Upload through proxy"
2019-09-19 09:14:32 +02:00
Paul Chavard
6533ec420b Revert "Upload through proxy"
This reverts commit 91815ad709.
2019-09-19 09:13:41 +02:00
simon lehericey
e2acb0a946 ProcedurePresentation: can use groupe instructeur 2019-09-18 15:51:02 +02:00
simon lehericey
f5bbc9e2f9 InstructeurProcedureShow: show dossier for all the gi involved 2019-09-18 15:51:02 +02:00
simon lehericey
9b16bd2037 Dossier: retrieve all dossiers for a procedure 2019-09-18 15:51:02 +02:00
simon lehericey
21577a0f0b Instructeur: dedup procedures with multiple gi 2019-09-18 15:51:02 +02:00
Paul Chavard
8fcf1353f3 Remove duplicated attachments 2019-09-17 18:12:53 +02:00
simon lehericey
dec42e4886 Instructeur procedure index: show stats by procedure
Also sum the count from differents groupe_instructeur from the same procedure
2019-09-17 17:19:14 +02:00
Paul Chavard
91815ad709 Upload through proxy 2019-09-17 17:04:52 +02:00
Pierre de La Morinerie
4b883a57bf stylesheets: make the actions bar sticky 2019-09-17 16:58:11 +02:00
Pierre de La Morinerie
1f8f38f492 stylesheets: align the buttons vertically 2019-09-17 16:58:11 +02:00
Pierre de La Morinerie
974c1b1150 stylesheets: move the dossier floating bar CSS to dossier_edit.scss
forms.scss is supposed to be for generic elements.
2019-09-17 16:58:11 +02:00
pedong
09a0f21cac use same look with .champs-editor.buttons 2019-09-17 16:58:11 +02:00
pedong
d2a78abc3a [fix #3975] set buttons floating in dossier page 2019-09-17 16:58:11 +02:00
Nicolas Bouilleaud
0c98f29d59 Move the cached procedure stats queries to a ProcedureStatsConcern 2019-09-17 16:43:48 +02:00
Nicolas Bouilleaud
06d60cd943 Cache requests in procedures/stats 2019-09-17 16:43:48 +02:00
Nicolas Bouilleaud
3e2985b305 First attempt at procedure stats
fixes #3945, #3946, #3948
2019-09-17 16:43:48 +02:00
Nicolas Bouilleaud
543f9894c1 Make sure the “commencer” link uses the proper test path 2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
c26a701a17 Refactor and redesign publish modal
* remove the autocomplete menu
* use ujs to pre-validate the procedure
* tweak the UI
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
bd1e0aba38 Add Procedure path suggestion 2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
8806eab8d6 Properly validate Procedure.lien_site_web is set when publishing 2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
00c37eccb3 Simplify procedure.path and publish event
* Get rid of the “reopen” event, merge it with “publish” (it’s the same code)
* Remove the “availability” states; “available with brouillon” makes no sense since the brouillons path are always uuids
* Instead of checking if publish can happen, just try it and handle the errors
2019-09-17 16:30:48 +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
Nicolas Bouilleaud
92e6032115 Remove path availability dead code when creating/editing a procedure
There’s no “path” field anymore in the Procedure form, it can only be set when publishing.
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
b9968b76b0 Remove “avec_lien” helpers now that Procedure.path cannot be nil 2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
8fa630d2bb Remove Gestionnaire.visible_procedures
It is actually the same thing as Gestionnaire.procedures. It already included the procedures with paths as well as the archived procedures, and in production, there were no Gestionnaire for who procedures was returning a different result than visible_procedures (expect for two baddata brouillon procedures with a nil path).

In addition, Procedure.path is now nonnull, which means the Procedure.avec_lien scope is pointless.

Finally, the current spec showed that the only procedure not visible to the gestion was the one he was not assigned to.
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
e9c6ed80e4 Migration: Index and make Procedure.path nonnull 2019-09-17 16:30:48 +02:00
maatinito
ae34e48624 [fix #4311] Unable to reinvite admin 2019-09-17 16:15:04 +02:00
clemkeirua
949a0c21e6 gestion des 2 formats de bouton monavis 2019-09-17 13:39:45 +02:00
Paul Chavard
ff2b6ca3ea Fix service controller 2019-09-17 12:37:37 +02:00
Paul Chavard
8a691d534a Fix AdministrateurUsageStatisticsService 2019-09-17 12:37:37 +02:00
Paul Chavard
adfa80142a Cleanup application_controller and current_user 2019-09-17 12:37:37 +02:00
Paul Chavard
88842918f9 Prepare to drop columns 2019-09-17 12:37:37 +02:00
Paul Chavard
3eeebd62eb Use built in active_storage helper 2019-09-17 11:11:08 +02:00
simon lehericey
acb99609ba Move defaut_groupe_instructeur as has_one and eager_load 2019-09-16 15:57:07 +02:00
simon lehericey
afa0237349 remove logo n+1 2019-09-16 15:48:19 +02:00
Paul Chavard
b97cbd3402 Serialize champ repetition for tags
closes #4272
2019-09-12 17:23:18 +02:00
Paul Chavard
3b8d3b7967 Add Style/CollectionMethods to rubocop 2019-09-12 14:48:18 +02:00
simon lehericey
82bef0f651 use notifications_per_procedure properly 2019-09-11 20:49:48 +02:00
Pierre de La Morinerie
503c393a87 helpscout: use replies_sent to compute contact rate
The `conversations_count` we previously used counts replies, but also
all conversations that were tagged or re-tagged during the month – with
made counting the actual work spent on user support brittle.

Counting the replies is a better estimation of what we get.

Unfortunately this also removes the filtering-by-tag feature. To
mitigate this, the reports are now scoped to a specific mailbox. This
allows to create extra mailboxes for conversations that should't be
counted in the stats.
2019-09-11 17:26:10 +02:00
Paul Chavard
c370c2f475 Cleanup FlipFlop 2019-09-10 23:52:44 +02:00
Paul Chavard
65e227c44b Migrate to flipper 2019-09-10 16:10:14 +02:00
clemkeirua
feb9c32537 search attachments inside bloc repetables 2019-09-10 15:30:44 +02:00
Paul Chavard
347f03d2a9 Redirect to pdf attachement old name if not attached 2019-09-10 15:06:47 +02:00
Paul Chavard
3eb3ae001e Rename “Passé en construction le” to 'Déposé le' for clarity 2019-09-10 14:59:10 +02:00
Chaïb Martinez
dd6c6bfe7a mailers: add a NO_REPLY address to transactional emails 2019-09-10 13:37:28 +02:00
Pierre de La Morinerie
aa1cf6788b mailers: turn revert_to_instruction into a notification email 2019-09-10 13:29:06 +02:00
pedong
a7d3bbb8cc Del SIRET in service for API 2019-09-10 11:06:28 +02:00
pedong
25596ca2f2 [fix #4181] add service to procedure API 2019-09-10 11:06:28 +02:00
Paul Chavard
d8402fbd2c Remove last reference to commentaire.file 2019-09-10 10:49:12 +02:00
Paul Chavard
434210de2e Ignore to be removed columns 2019-09-10 10:49:12 +02:00
Paul Chavard
7ffb98e616 Remove carrierwave uploaders 2019-09-10 10:49:12 +02:00
Pierre de La Morinerie
2724f4667b groupe_instructeur: unsassign instructeurs on group destroy
Fix #4282
2019-09-09 17:29:29 +02:00
clemkeirua
6849fd6afe change le texte de la messagerie selon le type d'utilisateur 2019-09-09 16:25:02 +02:00
Pierre de La Morinerie
c26da5ec37 mailers: prevent the signature from being auto-linked
Some emails clients (Gmail or Mail.app) may turn the signature into
a clickable link.

This can distract users, and make them think we are a good point of
contact (where they should contact their administration or use the
website directly instead).
2019-09-09 11:43:57 +02:00
Chaïb Martinez
9f60365500 [fix #4266] Add 'Revenir sur le site de mon administration' on commencer page 2019-09-03 15:46:25 +02:00
simon lehericey
6a83adf336 StatController: work by groupe_instructeur 2019-09-03 06:47:02 +02:00
simon lehericey
ad7ef6c739 Link assign_to and procedure by groupe_instructeur 2019-09-03 06:47:02 +02:00
simon lehericey
4da12ed3e8 User/DossierController: dossier are linked to default group by default 2019-09-03 06:47:02 +02:00
simon lehericey
d582af0962 Fix Instructeur Procedure Index 2019-09-03 06:47:02 +02:00
simon lehericey
d0bfb62fec Procedure Factory: use procedure.new_dossier 2019-09-03 06:47:02 +02:00
simon lehericey
3cc8f0c792 Link Dossier and GroupeInstructeur 2019-09-03 06:47:02 +02:00
simon lehericey
a82d49aa60 Procedure: save procedure while cloning
This is required to be able to assign the administrateur.instructeur to the defaut_groupe_instructeur of the new procedure
2019-09-02 11:41:12 +02:00
simon lehericey
31cb056351 Procedure: remove direct instructeurs access
Add shortcut for the spec to assign instructeurs directly to the defaut groupe
2019-09-02 11:41:12 +02:00
simon lehericey
b541ef0b41 Procedure has many instructeurs with defaut_groupe_instructeur 2019-09-02 11:41:12 +02:00
simon lehericey
ba24958035 Procedure add missing_instructeurs? 2019-09-02 11:41:12 +02:00
simon lehericey
64d28dba2f cleaning : use missing_steps 2019-09-02 11:41:12 +02:00
simon lehericey
85499365a0 Instructeur has_many procedures through groupe_instructeur 2019-09-02 11:41:12 +02:00
simon lehericey
25991c2892 Assign a procedure assign a group as well 2019-09-02 11:41:12 +02:00
simon lehericey
97884c4349 Link AssignTo et GroupeInstructeur 2019-09-02 11:41:12 +02:00
simon lehericey
115d91387c A procedure has a default groupe instructeur 2019-09-02 11:41:12 +02:00
simon lehericey
f296318072 Create GroupeInstructeur 2019-09-02 11:41:12 +02:00
clemkeirua
c2916e9d05 remove possibility to create carte with parcelle agricole 2019-08-29 16:01:35 +02:00
Paul Chavard
3c6b35d720 Fix attestation preview 2019-08-28 16:33:51 +02:00
benjaminhenkel
2b510a15a2 Update _informations.html.haml 2019-08-28 15:02:44 +02:00
benjaminhenkel
73d643d1be Update flash message for test demarche 2019-08-28 14:54:17 +02:00
clemkeirua
4032fc61e3 move to only one pipedrive account 2019-08-28 12:16:25 +02:00
Paul Chavard
0ecf5b47eb Call ActiveStorage::Filename.to_s 2019-08-28 11:01:58 +02:00
Paul Chavard
64dccbab5c Only rename logo param if it is present 2019-08-28 11:01:58 +02:00
Paul Chavard
15148a4fe1 Fix invalid characters in repetition champs sheet_name for xls export 2019-08-28 10:47:58 +02:00
Paul Chavard
5edbc08542 Render attesation apercu inline 2019-08-27 17:44:02 +02:00
Paul Chavard
32563c3675 Redirect to active_storage files when available 2019-08-27 17:43:33 +02:00
Paul Chavard
a19b10b118 Migrate attestation files to active_storage 2019-08-27 17:42:52 +02:00
clemkeirua
188e0fd6b2 removed ask_birthday for new procedures & dossiers 2019-08-27 15:32:17 +02:00
maatinito
ae059dc029 Corrected placeholder on champ carte 2019-08-27 15:13:10 +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
Chaïb Martinez
5f20d657d0 Add target blank
[fix #3536]

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-08-27 10:45:26 +02:00
Chaïb Martinez
7640911ab9 Remove sign up form sign in
Add link to sign up help

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-08-27 10:45:26 +02:00
Paul Chavard
d02e0fc556 Fix and test migrate_procedure_logo task 2019-08-22 11:28:03 +02:00
Paul Chavard
cc35a04e26 Migrate procedure logo to active_storage 2019-08-21 11:15:00 +02:00
Paul Chavard
6215ccb3d7 Fix carte initialize 2019-08-21 10:48:49 +02:00
Paul Chavard
b7b46e9a82 Improve clone of procedure attachements 2019-08-20 17:30:44 +02:00
Philémon
0528026631 retrait d'un s
par souci de cohérence entre "satisfaction usagerø" et "contact usagerø" :) 
la bise!
2019-08-20 13:53:24 +02:00
Philémon
e6e0f5ed31 changement de wording
changement de wording "Connectez-vous pour donner votre avis" > "Cliquez ici pour donner votre avis", ça permet de clarifier (sinon les usagers peuvent penser que c'est le lien pour se connecter à ds (/sign_in).
c'est le fruit de discussion avec des admin :)
2019-08-20 13:53:24 +02:00
simon lehericey
b7f8bb2fea Simplify ip_service 2019-08-20 13:29:29 +02:00
simon lehericey
c1a622efa1 Add User.create_or_promote_to_administrateur 2019-08-20 12:20:12 +02:00
simon lehericey
01a91e68ca Simply avis controller 2019-08-20 12:20:12 +02:00
simon lehericey
98a24bea51 Simplify invite_instructeur 2019-08-20 12:20:12 +02:00
simon lehericey
97d0855d47 add User.create_or_promote_to_instructeur 2019-08-20 12:20:12 +02:00
simon lehericey
e913b01c52 fix_manager_reset_password 2019-08-20 12:12:20 +02:00
simon lehericey
ebe871819d Fix admin deletion by an administration 2019-08-20 12:01:36 +02:00
Paul Chavard
e9ba7700d4 Remove commentaire file uploader 2019-08-20 10:24:13 +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
416a07d2dd SessionView: simplify 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
d5ddd182a7 remove useless session views 2019-08-14 18:04:26 +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
e3e6bc7689 ! NEED JOB REBOOT Move remind activation logic to user 2019-08-14 16:34:50 +02:00
simon lehericey
d0ac1c3301 Fix manager invite administrateur 2019-08-14 16:34:50 +02:00
simon lehericey
c380d807ab Spec: sign_in with administrateur.user 2019-08-14 15:08:14 +02:00
simon lehericey
1b38d4071d temporary remove password complexity check 2019-08-14 15:06:16 +02:00
simon lehericey
4142acf8d3 Replace administrateur devise methods in app 2019-08-14 15:06:16 +02:00
simon lehericey
840be2408e Remove administrateur devise methods 2019-08-14 15:06:15 +02:00
simon lehericey
81f44fa76b Link user and administrateur 2019-08-14 15:06:15 +02:00
Paul Chavard
e68d2cf5e2 Enable champ repetition for all 2019-08-14 12:53:51 +01:00
Paul Chavard
9eaf14968f Enable export v2 for all 2019-08-14 12:53:51 +01:00
Paul Chavard
0969b1f85f Enable email_login_token for all gestionnaires 2019-08-14 12:53:51 +01:00
Pierre de La Morinerie
182a9a5df2 service: remove the mandatory SIRET field 2019-08-14 10:38:36 +02:00
Paul Chavard
ef66defcd1 Fix invite instructeur from manager 2019-08-13 20:12:46 +01:00
Pierre de La Morinerie
4e9895c11b app: mark the contact forms as not sensitive to trusted tokens
Instructeurs waiting for a confirmation token should be able to
access the contact form (especially to ask for help).

Fix #4198
2019-08-13 19:48:11 +02:00
Paul Chavard
86b9ed2079 Run load scripts after ujs responces 2019-08-13 17:03:55 +01:00
simon lehericey
8fa3c9e4f7 Fix expert invitation 2019-08-13 15:15:16 +02:00
simon lehericey
5fdac38cb2 Fix instructeur invitation 2019-08-13 15:15:16 +02:00
simon lehericey
efd793f266 AdminProcedureController: fix self assignation as instructeur 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
c8a7bde5e0 Replace instructeur devise methods in app 2019-08-13 15:15:16 +02:00
simon lehericey
a84e07a376 Remove instructeur devise methods 2019-08-13 15:15:16 +02:00
simon lehericey
dd4ffb926c Link user and instructeur 2019-08-13 15:15:16 +02:00
simon lehericey
e3fd1cc33a Remove weird switch_devise_profile_service 2019-08-13 15:15:16 +02:00
Pierre de La Morinerie
79784089a4 dossiers: refresh the whole header actions bar on status change
This ensure the other state-dependant buttons get updated to–like the
"Follow" or "Archive" button.

Fix #4186
2019-08-13 15:07:22 +02:00
Pierre de La Morinerie
3a37c1eeae dossiers: rename .mixed-buttons-bar to .header-actions 2019-08-13 15:07:22 +02:00
Pierre de La Morinerie
219f690b96 dossiers: move header actions to a partial 2019-08-13 15:07:22 +02:00
simon lehericey
5bda753735 Remove all devise route and controller for instructeur and administrateur 2019-08-13 14:13:48 +02:00
simon lehericey
a4b9eecded Remove unused devise session controller 2019-08-13 14:13:48 +02:00
benjaminhenkel
6ed5cd6feb navbar: improve wording, and allow two-lines layout 2019-08-13 12:26:11 +02:00
benjaminhenkel
efb7883bd1 Update _monavis.html.haml 2019-08-12 16:54:00 +02:00
simon lehericey
3fde2a6f70 Rename gestionnaire in code to instructeur 2019-08-12 13:47:01 +02:00
simon lehericey
6902f84b85 Brutally rename gestionnaire filename to instructeur 2019-08-12 13:47:01 +02:00
simon lehericey
bb8d65c6b4 Subtly rename admin/instructeurs to admin/assigns 2019-08-12 13:47:01 +02:00
simon lehericey
7ac243ac44 Use proper token to find the administrateur ... how can it works otherwise ? 2019-08-12 13:43:03 +02:00
simon lehericey
7e78b7d62d Administrateur password, remove one level of indirection 2019-08-12 13:43:03 +02:00
clemkeirua
6c56fc73d7 used new constant for genders 2019-08-01 20:46:58 +02:00
clemkeirua
1e6847bc6f introduce constants for M./Mme 2019-08-01 17:42:32 +02:00
clemkeirua
d7105cb6f8 added spec for dossier#update_with_france_connect 2019-08-01 17:42:32 +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
maatinito
3bf32b6d43 #3928 redesign of password panel (complexity bar & explanation) 2019-08-01 17:12:14 +02:00
maatinito
0b0ef8a318 #3928 Zxcvbn service to compute password complexity 2019-08-01 17:12:14 +02:00
Paul Chavard
02904f55b1 Fix champ policy 2019-08-01 16:41:53 +02:00
Paul Chavard
b8d3e4c41b Fix attestation url for dossiers with no attestation 2019-08-01 15:53:50 +02:00
Paul Chavard
c75e39884e Save selection utilisateur as geo area 2019-08-01 11:38:09 +02:00
clemkeirua
f5d3818e3c remove unnecessary retransition methods 2019-08-01 10:40:08 +02:00
Keirua
2f82dd9a3d improve typography and texts
Co-Authored-By: Nicolas Bouilleaud <nico@bou.io>
2019-08-01 10:29:51 +02:00
clemkeirua
38b48f4217 transition from accepte to instruction as superadmin 2019-08-01 10:29:51 +02:00
Paul Chavard
b266915892 Add repetitions to api 2019-08-01 10:04:35 +02:00
Paul Chavard
fba195c0b5 Add attestation url to dossier on api 2019-07-31 18:30:40 +02:00
Paul Chavard
6cfad01d12 Stop using Flipflop as switch for weekly_overview 2019-07-31 15:15:09 +02:00
Paul Chavard
25db21467d Stop using Flipflop as switch for Fog 2019-07-31 15:15:09 +02:00
Paul Chavard
6f3fde21f2
Merge pull request #4139 from Keirua/fix/confirm-on-delete-champ
#4137 - Ajout d'un confirm à la suppression d'un champ
2019-07-31 12:31:44 +02:00
Paul Chavard
fc75580a3c Start using pundit 2019-07-30 18:09:28 +02:00
Paul Chavard
8c72470a6c Add default etablissement champ name 2019-07-30 17:17:36 +02:00
Paul Chavard
ab1170bcfc Fix export dossier n+1 query 2019-07-30 17:17:36 +02:00
Paul Chavard
5a9468aa95 Fix repetition data export 2019-07-30 17:17:36 +02:00
Pierre de La Morinerie
02a5234bde lib: remove FileSizeValidator
It was only used by the PieceJustificative model.
2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
65e7489b4f uploaders: remove PieceJustificativeUploader 2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
95e24392f9 models: remove old pieces justificatives 2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
ea1c8ea7e3 models: remove associations to old pieces justificatives 2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
f6a1c7ded3 manager: remove support for old pj 2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
0da0a2b446 model: remove support for cloning procedures with old pj 2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
f69f325236 api: remove export of old pieces justificatives 2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
e975fe4ade tasks: remove task to migrate old pieces justificatives 2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
0018f36b44 gestionnaire: remove UI for filtering pieces justificatives 2019-07-30 16:11:16 +02:00
Pierre de La Morinerie
f825f62ce5 dossier: remove UI for viewing old pieces justificatives 2019-07-30 16:11:16 +02:00
Pierre de La Morinerie
5502f2e42e dossier: remove UI for uploading old pieces justificatives 2019-07-30 16:11:16 +02:00
Pierre de La Morinerie
0c4cb3b498 admin: remove UI for managing old pj 2019-07-30 16:11:16 +02:00
Nicolas Bouilleaud
7205f4da9e L'enfer du Nord Paris-Roubaix (Tour de France, Tour de France) 2019-07-30 14:47:48 +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
pedong
8d03a6747c add lockable to User, Gestionnaire, administration, Administrateur 2019-07-29 17:48:44 +02:00
Nicolas Bouilleaud
b066ccbc89 Make sure Procedure.path is not null in our data 2019-07-29 13:53:33 +02:00
Pierre de La Morinerie
bcd5182446 dossier: hide the draft explanation when already submitted 2019-07-29 10:54:19 +02:00
Pierre de La Morinerie
e99edda7b1 dossiers: hide the Edit button on the actual edit page
Otherwise the "Edit" button may be confused for a "Save" button.
2019-07-29 10:49:49 +02:00
Pierre de La Morinerie
7b345365fd dossiers: fix the layout of the Edit button 2019-07-29 10:45:49 +02:00
Pierre de La Morinerie
f1838f3767 dossiers: fix edit button being visible on locked dossiers
Fix #4143
2019-07-29 10:41:58 +02:00
clemkeirua
314b0f5dc0 fix tests 2019-07-25 17:15:19 +02:00
clemkeirua
6f47655301 rendu lien_site_web obligatoire au moment de la publication 2019-07-25 15:46:04 +02:00
clemkeirua
6b19432d47 deplacement de l'URL qui envoie vers la procédure 2019-07-25 15:46:04 +02:00
Pierre de La Morinerie
2174172e34 admin: display CTA buttons in emails preview 2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
1c837eb901 mailers: improve wording of transactional emails and default templates 2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
8313752663 mailers: add CTA to templated emails 2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
6195ee41f3 mailers: add CTA to new_draft email 2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
45c62cefb2 helpers: add vertical_margin helper for mailers 2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
2c612f6448 helpers: add variants to mailer_round_button 2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
3abb0a1c44 helpers: prevent information leakage from round_button links 2019-07-25 12:25:50 +02:00
clemkeirua
2ff6958ad6 better spacing 2019-07-25 11:40:46 +02:00
clemkeirua
a9708bff5d ajout d'infos pratiques pour aller chercher son siret 2019-07-25 11:39:16 +02:00
Pierre de La Morinerie
079ac3da33 invite: signal that the message is optional 2019-07-25 11:10:49 +02:00
clemkeirua
caa90613fd ajout d'un confirm à la suppression d'un champ 2019-07-25 10:46:40 +02:00
Chaïb Martinez
14192916f1 Add edit dossier link
[fix #4114]

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-24 12:21:35 +02:00
pedong
4a0873c5af add quote show the message invite 2019-07-23 19:05:56 +02:00
pedong
0f957ec77b [fixe #3974] add message for invite mail 2019-07-23 18:54:58 +02:00
Chaïb Martinez
ff395b8c4b Add a triggered message in chat box for new admins 😎
Remove useless text
[fix #4052]

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-23 17:08:35 +02:00
clemkeirua
af436500fd better button 2019-07-23 16:11:15 +02:00
clemkeirua
f166077f5e ajout d'un bouton de suppression des admin dans le manager 2019-07-23 16:11:15 +02:00
Pierre de La Morinerie
858b093314 mailers: use the standard view mechanism to render notifications
Instead of rendering a view as a template, consider the view as a normal
view.
2019-07-23 14:53:50 +02:00
Pierre de La Morinerie
5bbcd600fb mailers: extract more of the template to partials
This will allow to re-use these partials in other emails
2019-07-23 14:53:32 +02:00
Pierre de La Morinerie
45abb6ebc2 mailers: move default templates to a specific subdirectory
It makes more understandable that they are templates (and not views
rendered directly by Rails).
2019-07-22 16:22:20 +02:00
Pierre de La Morinerie
dbe03d4f74 suivi: remove link to stats dashboard
The dashboard is currently private–and it currently contains sensitive
informations that are hard to filter out.
2019-07-22 11:49:09 +02:00
Pierre de La Morinerie
af6172d0e8 suivi: explain how to disable tracking 2019-07-22 11:48:28 +02:00
clemkeirua
50ddf723b0 garde le bandeau bleu de navigation après MAJ 2019-07-22 10:27:33 +02:00
clemkeirua
2e107babfb meilleures marges monavis 2019-07-18 17:39:06 +02:00
clemkeirua
d62740c198 extraction de la taille max des fichiers dans une constante 2019-07-18 17:19:39 +02:00
clemkeirua
f7842fa4bd ajout d'un message lorsque le dossier fait plus de 50Mo 2019-07-18 16:39:59 +02:00
Pierre de La Morinerie
3c0ba5e698 emails: improve wording of the messagerie nudge 2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
f88d7c28fa emails: add a "Read message" button to the new answer email 2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
630ae06542 emails: sign the new answer email as the administration 2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
8b80c48679 emails: use the notification template for more messages
This allow to display the procedure logo and contact footer
at the bottom of these emails.
2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
b157d860d2 emails: adjust notification footer for dossiers without messagerie 2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
37c93e634e emails: clarify the notify_new_draft action 2019-07-18 12:38:13 +02:00
clemkeirua
ee8a1092e4 extracted MonAvisEmbedValidator 2019-07-17 18:04:32 +02:00
clemkeirua
91d10c0cf7 added navbar for mon avis 2019-07-17 18:04:32 +02:00
clemkeirua
6d43465ee5 renammed into monavis_embed 2019-07-17 18:04:32 +02:00
clemkeirua
8d2c5cfa14 validation par regex 2019-07-17 18:04:32 +02:00
clemkeirua
d8b63cd4c9 added 'monavis' inside the procedure and for users 2019-07-17 18:04:32 +02:00
Pierre de La Morinerie
727702ad4b emails: mention the procedure name in the email title 2019-07-17 15:01:19 +02:00
Pierre de La Morinerie
71dfb38787 emails: improve typography of titles 2019-07-17 15:01:19 +02:00
Pierre de La Morinerie
bc42c90fe5 emails: make signature more compact 2019-07-17 14:55:55 +02:00
Pierre de La Morinerie
bd39eb3453 emails: remove dead code 2019-07-17 14:55:55 +02:00
clemkeirua
7eeddc0b79 using a shared example + scoped to state TERMINE 2019-07-17 11:53:16 +02:00
clemkeirua
b8fa567c81 ajout du tag 'lien document justificatif' 2019-07-17 11:53:16 +02:00
Pierre de La Morinerie
d86030fb76 dossier: add a reply icon near to "Reply to message" button 2019-07-17 11:43:21 +02:00
Pierre de La Morinerie
b4fe6e236e messagerie: improve the textarea placeholder 2019-07-17 11:43:21 +02:00
Pierre de La Morinerie
92dd91a31b messagerie: add a reply button next to the latest message 2019-07-17 11:43:21 +02:00
Pierre de La Morinerie
09efd06dff forms: add a focus indicator to focused fields 2019-07-17 11:43:21 +02:00
Pierre de La Morinerie
80efe27ff2 pj migration: retry when changing the content type fails 2019-07-16 17:51:29 +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
clemkeirua
25f81f1d3c download a dossier as zip with all attachments 2019-07-16 09:11:25 +02:00
Pierre de La Morinerie
76335511c8 omniauth: protect against CSRF
See https://github.com/omniauth/omniauth/wiki/Resolving-CVE-2015-9284
2019-07-15 18:16:00 +02:00
Pierre de La Morinerie
36eca3d059 dossier: rename the "Submit" action 2019-07-15 17:18:28 +02:00
Pierre de La Morinerie
862b08427b status_overview: remove extraneous line 2019-07-15 15:55:25 +02:00
Pierre de La Morinerie
d9c01c0af6 status_overview: improve wording 2019-07-15 15:45:16 +02:00
Benjamin-Doberset
8ea8e52431 Update _status_overview.html.haml 2019-07-15 15:45:16 +02:00
Pierre de La Morinerie
077082c381 dossier: improve estimated delay wording 2019-07-15 15:27:22 +02:00
Benjamin-Doberset
77d825ae63 Update _estimated_delay.html.haml 2019-07-15 15:27:22 +02:00
Chaïb Martinez
5cb6ba2f3b Fix tests
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Chaïb Martinez
3f9f67eb78 admin: fix the "Valider" button being hidden by Crisp
Fix #4021

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Chaïb Martinez
d968e7e6bd Add some admin usage info for contextual help with crisp
Fix #4052

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Chaïb Martinez
04e204c740 Minor text fix
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Chaïb Martinez
535d032b73 Send URL page view to Crisp to trigger contextual help
Fix #4052

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Pierre de La Morinerie
d5f360c85f manager: fix the deletion email not being sent
When deleting a dossier from the manager, the deletion notification
email was not being sent. This is because the returned object from
`Dossier#hide!` was invalid.
2019-07-15 10:01:16 +02:00
Pierre de La Morinerie
619f663e1a procedure: remove individual_with_siret column 2019-07-11 15:57:46 +02:00
Pierre de La Morinerie
a047ee356b procedure: remove expects_multiple_submissions column 2019-07-11 15:57:46 +02:00
clemkeirua
6838e69986 ajout de textes explicatifs pour les instructeurs 2019-07-11 15:48:00 +02:00
Pierre de La Morinerie
35c3795f56 dossier: make messagerie available on archived procedures
An Admin may archive a procedure to make it unavailable to
the general public, but before all dossiers are handled. In this case,
the messagerie needs to be available.

Fix #4089
2019-07-11 15:37:04 +02:00
Pierre de La Morinerie
10065df8ce champs: put champ label in numeric fields validation messages
Replaces

> La valeur du champ doit être un nombre entier (sans chiffres après
> la virgule)

by

> La valeur du champ « Nombre de parents » doit être un nombre entier
> (sans chiffres après la virgule)
2019-07-11 15:12:48 +02:00
simon lehericey
768a298c2d Same for go back in instruction 2019-07-11 12:50:15 +02:00
simon lehericey
5f39d3eac8 Fix bug when instruction repasse en construction twice 2019-07-11 12:50:15 +02:00
simon lehericey
6de1e2ec58 Fix bug when an instructeur closes a dossier already closed 2019-07-11 12:50:15 +02:00
Pierre de La Morinerie
fdca7c025a procedure: ignore :expects_multiple_submissions on the correct model 2019-07-11 12:14:25 +02:00
Pierre de La Morinerie
c2c9b19b3b procedure: remove individual_with_siret
It isn't used anymore (see #3077)
2019-07-11 11:58:21 +02:00
Pierre de La Morinerie
7ca3d5fce2 procedure: select for_individual by default 2019-07-10 18:47:34 +02:00
Pierre de La Morinerie
9616df192d procedure: use the model value for checking the radio buttons
Previously `checked: true` forced the checked status, disregarding the
actual value of the model.

Fix #4080
2019-07-10 18:47:28 +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
Pierre de La Morinerie
80074d6d82 profile: improve layout and wording of the confirmation message 2019-07-10 11:31:09 +02:00
Pierre de La Morinerie
f8a1911625 profile: display profile page even for single-role users 2019-07-10 11:31:09 +02:00
benjaminhenkel
c36b884adf Update _state_button.html.haml
changement faute d'orthographe
2019-07-10 10:41:13 +02:00
simon lehericey
f6c402deec better default value for linked_drop_down_list 2019-07-10 10:21:34 +02:00
clemkeirua
d29be1fe41 suppression de redouane de Pipedrive 2019-07-09 17:29:25 +02:00
clemkeirua
4c9846dcd1 Mise à jour du mail d'activation admin 2019-07-09 17:29:25 +02:00
clemkeirua
1f3015e24f suppression de camille de la liste pipedrive 2019-07-09 17:29:25 +02:00
Pierre de La Morinerie
06afc3890f france_connect: raise an error if some validation error occurs
If a validation error occurs in `find_or_create`, an object without `id`
will be returned–and the code will crash soon after.

Ensure that we crash immediately, so that we can report the root cause
(the validation error) instead of a seemingly-unrelated crash later.
2019-07-09 15:50:28 +02:00
Pierre de La Morinerie
6b27ac8514 france_connect: make existing user lookup case-insensitive
Fix #4053
2019-07-09 15:50:28 +02:00
Pierre de La Morinerie
ecfccae6f0 dossiers: remove support for Dossier#expects_multiple_submissions 2019-07-09 14:50:11 +02:00
Pierre de La Morinerie
d77a5552b7 dossiers: allow to start a new dossier after submitting one 2019-07-09 14:44:36 +02:00
Pierre de La Morinerie
b5ed74c09d dossiers: always allow to create a new dossier
Turns out this is confusing for users (some UI elements are present for
some procedures, but not for others).

Better enable it for everyone.
2019-07-09 14:44:30 +02:00
simon lehericey
ea79b9a595 typo: use ’ 2019-07-09 11:55:17 +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
clemkeirua
39f72a2be3 courbage d'apostrophes 2019-07-09 10:59:42 +02:00
clemkeirua
44fa210e34 changement du choix particulier/entreprise lors de creation d'une procedure 2019-07-09 10:59:42 +02:00
Paul Chavard
ad0a74ea7c Fix dates in dossiers export 2019-07-09 10:02:08 +02:00
Pierre de La Morinerie
422f4b9cdb dossiers_controller: warn properly when instructing a dossier twice
Fix #4055
2019-07-08 17:58:45 +02:00
Nicolas Bouilleaud
930fd345de Validate messagerie_available? when creating a new Commentaire
Commentaires bu Users and Gestionnaire need the messagerie to be available; Automatic system Commentaires can be created anytime.

This reintroduces Commentaire validation that was introduced in #3979 and disabled in #4018
2019-07-08 16:13:43 +02:00
Nicolas Bouilleaud
3f439ac07a Add Commentaire.is_sent_by_system? and .is_sent_by(someone)
And use it in CommentaireHelper and in the _message_icon and _message_issuer partials
2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
2abd93d360 Display the full User email in Commentaires
* Only redact gestionnaires’ emails
* Also, rename Commentaire.sender to Commentaire.redacted_email
2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
3bf19de124 Remove Commentaire::columns override
It was used for a cleanup migration a long time ago (see #233, #3033, #3043)
2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
7e98213829 Pass the signed-in user as the commentaire author from /contact 2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
72fd5d250f Respect dossier.messagerie_available? in SupportController (/contact) 2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
12008728d2 Actually respect dossier.messagerie_available? in _messagerie.html.haml
instead of dossier.archived?

(fixup after #3979)
2019-07-08 16:06:44 +02:00
Chaïb Martinez
c43b0c00db minor text change [fix #4050]
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-08 14:46:47 +02:00
Chaïb Martinez
94d340d25c Remove phone number
Add chat link

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-08 14:32:55 +02:00
Chaïb Martinez
0fdae2456b We will not quibble
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-08 14:20:49 +02:00
Nicolas Bouilleaud
4d73275bab Drop Procedure.administrateur_id 2019-07-04 17:01:12 +02:00
maatinito
fee3ef8f4f A4 output and allows large logos (headers) to take the whole width of the page 2019-07-03 15:31:34 -10:00
Paul Chavard
05987223db Avoid crashing when demarche have no service 2019-07-03 17:18:44 +02:00
Paul Chavard
e582ff729c Add aasm to dossiers state 2019-07-03 13:37:27 +02:00
Mathieu Magnin
10d3ba10f2 Before save copy body in rich_body 2019-07-03 13:15:49 +02:00
Mathieu Magnin
d13b7f953f Migrate mail body to ActionText 2019-07-03 13:15:49 +02:00
Mathieu Magnin
b34f8fbe3d Add ActionText 2019-07-03 13:15:49 +02:00
simon lehericey
4b154983fb Landing: voir les démarches -> comment trouver ma démarche 2019-07-03 12:59:09 +02:00
Paul Chavard
860588b216 Upgrade javascript dependencies and add actiontext 2019-07-03 11:42:25 +02:00
simon lehericey
522d7684ea dossier state button in red when refused 2019-07-02 18:40:20 +02:00
simon lehericey
c7e10fc43f Manager: remove repasser_en_instruction 2019-07-02 18:40:20 +02:00
simon lehericey
b2c987ff0d [fix #3683] Dossier: add repasser_en_instruction! 2019-07-02 18:40:20 +02:00
simon lehericey
b79220e711 UI 2019-07-02 18:35:47 +02:00
Paul Chavard
8cb6b348a4
Update app/views/gestionnaires/procedures/_download_dossiers.html.haml
Co-Authored-By: Nicolas Bouilleaud <nico@bou.io>
2019-07-02 14:52:56 +02:00
Paul Chavard
fb0ef15e3c Export dossiers v2 2019-07-02 14:20:29 +02:00
Paul Chavard
46c1bbbc6f Official support for declarative demarches 2019-07-02 14:12:26 +02:00
Nicolas Bouilleaud
bd666a53af Reallow automatic Commentaires for archived/closed Dossier 2019-07-01 11:59:29 +02:00
Nicolas Bouilleaud
3fee1c7644 Fix UpdateAdministrateurUsageStatisticsJob not being properly scheduled 2019-07-01 11:14:26 +02:00
Chaïb Martinez
e7b868c16f Bug fix
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-01 11:13:36 +02:00
Chaïb Martinez
017f914e21 Add admin roi low and high
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-01 11:13:36 +02:00
Nicolas Bouilleaud
bd47bf2691 Disable Messagerie in archived Dossiers and procedures
* Use the existing Dossier#messagerie_available? method
* Raise when attempting to build a Commentaire if not messagerie_available?
* Disable the Messagerie form if not messagerie_available?
* Add tests :)
* Tweak the Horaires formatting while we’re here.
2019-07-01 09:39:39 +02:00
Paul Chavard
0d80c48b7e Add avis to api 2019-06-27 14:40:17 +02:00
Paul Chavard
7f8079b5bb Download active_storage blobs through proxy 2019-06-26 15:32:57 +02:00
Paul Chavard
aad4025ce0 Revert "Download active_storage blobs through proxy"
This reverts commit 0b39da7080.
2019-06-26 15:31:35 +02:00
Paul Chavard
0b39da7080 Download active_storage blobs through proxy 2019-06-26 15:07:40 +02:00
Paul Chavard
7a2e9fe8a4
Merge pull request #3990 from betagouv/benjamin-alerte
Minor text change
2019-06-25 16:39:38 +01:00
Paul Chavard
c5704fa22f Remove unused code from Commentaire 2019-06-25 17:04:29 +02:00
benjaminhenkel
1200d25f26
Update _list.html.haml 2019-06-24 17:00:10 +02:00
Pierre de La Morinerie
50cf6059e6 tasks: ensure creating an empty champ doesn’t display a notification 2019-06-24 15:49:02 +02:00
Nicolas Bouilleaud
44b9a2ef12 Include application_helper in ApplicationMailer
fixes a crash in activate_before_expiration.haml (sentry RAILS-40)
2019-06-21 09:50:33 +02:00
Paul Chavard
1781a49932 Add order param to API 2019-06-20 15:28:16 +02:00
Pierre de La Morinerie
9ce92d5c3b champs: show attachment actions only when the atachment is persisted
Fix #3961
2019-06-20 11:03:08 +02:00
Pierre de La Morinerie
d561936863 task: ensure that hidden dossiers are rolled back 2019-06-20 10:48:56 +02:00
Pierre de La Morinerie
f8dda3ae45 tasks: don't abort rollback when a dossier fails
Instead print a warning, and continue rolling back the other dossiers.
2019-06-20 10:31:23 +02:00
Pierre de La Morinerie
91393be13c tasks: extract rollback to a separate method 2019-06-20 10:31:23 +02:00
Nicolas Bouilleaud
43f936ec77 Do not check for path availability when in the “new procedure” form
The user can’t even enter the path here, it’s nil.

fixes #3918

The @availability was always PATH_NOT_AVAILABLE when the form was reloaded after an error, because Procedure::path_availability always found an (archived) procedure with a nil path. It got confused and concluded its path was conflicting.

🤷🏻‍♂️
2019-06-18 14:31:12 +02:00
Nicolas Bouilleaud
eb592f8ddf Add manager controller for bill signatures 2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
925edb01c7 Add OperationsSignatureJob 2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
ad3553f0be Add BillSignature Service 2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
f355f849a6 Add BillSignature Model 2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
dace9a53d3 Add Universign timestamp API query 2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
e16cb731c5 Add poor man’s ASN1 parsing 2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
7e80b8a4dc Enable the Rails/InverseOf cop and add missing inverse_of 2019-06-17 13:44:07 +02:00
Pierre de La Morinerie
51aacabf13 models: fix touch not propagating when using nested attributes
Sometimes, when using nested attributes, touch doesn’t propagate to
parent relationships. (see https://github.com/rails/rails/issues/26726)

Specifically, this happens in our app when updating a dossier with
only new attachements (but without changing the value of any fields).

To work around this, we need to define the parent relationship
explicitely. This is good practice anyway.

Fix #3906
2019-06-17 13:44:07 +02:00
Pierre de La Morinerie
1a832388fe brouillon: clarify the "How to save" explanations 2019-06-17 11:12:26 +02:00
Pierre de La Morinerie
f12668fbfb tasks: prevent the PJ migrations task updating from touching dossiers 2019-06-12 19:07:45 +02:00
Pierre de La Morinerie
60a61da644 tasks: extract dossier migration to a separate method 2019-06-12 18:58:47 +02:00
pedong
7ef1a558f4 change date format for all, use try_format_date of helper 2019-06-12 17:48:12 +02:00
simon lehericey
ee296f2b44 Use default format for date and datetime champ 2019-06-12 17:48:12 +02:00
pedong
abcd58c35d [fix #3710] date with letter
Co-Authored-By: simon lehericey <mail@simon.lehericey.net>
2019-06-12 17:48:12 +02:00
Nicolas Bouilleaud
5acb7a3f1b Make rubocop happy
I did make some changes some lines above this 🤷.
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
1ac6cad132 Display previous followers in “personnes impliquées” 2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
6b90bc1ea1 Add “previously followed” dossiers and gestionnaires
Using an “inactive” Follow scope, similar to the “active” scope.

(I was tempted to use a default_scope, but this breaks when trying to `unscope` it in associations.)
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
be4c575622 Add Follow.unfollowed_at
The active scopes is used indirectly in the dossier<->gestionnaire associations: the existing tests in dossier and gestionnaire just work™.
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
d417907f36 Just rely on the constraints to avoid duplicate Follows
Don’t check manually in advance: just try to create the new Follow and silently fail.

Since we have both Rails validation and DB constraints in place, we have two types of errors to check. I’m not actually sure this change improves the legibility of the code.
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
ba48a1da6e Ensure Follow dates can not be not null
* Add Follow.unfollowed_at
* Change the unicity constraint to gestionnaire/dossier AND unfollowed_at
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
8e04b4f0c9 Clear the “add admin” field after submit
Extract the add_admin form to its own partial and re-render it when an admin is successfully added.
2019-06-12 16:58:30 +02:00
Pierre de La Morinerie
55c9dfc001 api_entreprise: display better error message when SIRET is private
Previously we blamed the network.

Now we say that the entreprise infos cannot be retrieved. Which is not
ideal, but better.
2019-06-12 11:58:04 +02:00
Pierre de La Morinerie
78f75744e3 javascript: fix payload of ActiveStorage events missing on IE 11
Under some circumstances (like dispatching events just before a page
navigation), IE 11 events will be dispatched twice by the browser: once
with the payload, and a second time without.

To prevent these errors, ignore the events if the payload is missing.
2019-06-06 15:00:57 +02:00
Chaïb Martinez
eccd456325 Add crisp
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-06-05 17:41:47 +02:00
Paul Chavard
5a216b5583 Fix default button type
fix #3924
2019-06-04 17:59:02 +02:00
Chaïb Martinez
9198f7f437 Remove useless select options
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-06-04 16:55:11 +02:00
Chaïb Martinez
3b513af32a Add nb_of_dossiers by years and deadline to PipeDrive Person
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-06-04 16:55:11 +02:00
Paul Chavard
6d312e1716 spec: refactor wait_for_ajax to work with out new ajax utils
`wait_for_ajax` is not used anymore, but it may be in the future.
2019-06-04 16:30:36 +02:00
Paul Chavard
d5911071f8 Return dossiers on api with stable order 2019-06-04 15:34:49 +02:00
Pierre de La Morinerie
1f69c6c6eb stylesheets: fix font of dropdown items on Firefox
Styling `<select>` elements is notoriously hard. Here, it seems that
Firefox doesn't handle custom fonts on `<option>` elements. As we have
no fallback font, the browser uses its default font, Times.

Having fallback fonts is good practice anyway.
2019-06-04 11:37:40 +02:00
Pierre de La Morinerie
f2f16e2580 carte: disable tiles layer during tests
During integration tests, we don't want to load the tiles from OSM:

- It hits OSM servers during every test run;
- It it slow (Capybara waits for the tiles to be loaded to proceed);
- It makes test time out when tiles cannot be loaded for some reason.

Fix #3913
2019-06-03 17:24:15 +02:00
Paul Chavard
ff44b7a600 Refactor purge pj to be more generic 2019-05-29 15:54:51 +02:00
Pierre de La Morinerie
a8847e40ea pj migration: add comments and notices 2019-05-29 14:46:49 +02:00
Pierre de La Morinerie
6cb02f2927 pj migration: handle signal interrupts 2019-05-29 14:46:49 +02:00
Pierre de La Morinerie
1a256b37f8 pj migration: print a notice when migrating missing files 2019-05-29 12:20:10 +02:00
Pierre de La Morinerie
a168ae3a72 pj migration: reduce the number of queries by preloading champs 2019-05-29 12:20:10 +02:00
Pierre de La Morinerie
10df7b70ee carrierwave: when migrating, create an empty blob if file is missing 2019-05-28 18:19:33 +02:00
Pierre de La Morinerie
44c410d40d piece_justificative_service: fix for missing order_place
In production some pieces justificatives don't have an order place.

In this case, insert the champs after the ones that have an order place.
2019-05-28 17:20:07 +02:00
Pierre de La Morinerie
d410e31344 active_storage: document the virus scan hooks 2019-05-28 11:39:22 +02:00
Pierre de La Morinerie
52b7a82932 services: mark attachments migrated from CarrierWave as safe
This avoids to enqueue thousands of scans when migrating the PJs of
a whole procedure.
2019-05-28 11:39:22 +02:00
Pierre de La Morinerie
4cf54e0d28 tasks: add progress report to the pjs migration task
Progress is indicated per migrated champ.
2019-05-28 10:42:18 +02:00
Pierre de La Morinerie
21ac60ad04 tasks: add a task to migrate pjs of procedures in batches 2019-05-28 10:42:18 +02:00
Chaïb Martinez
920c8c0c32 Add Gestionnaire ID and ROLES
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-05-27 16:30:03 +02:00
clemkeirua
f06ae1631f no crash when q is missing on RechercheController::index 2019-05-22 15:02:57 +02:00
Paul Chavard
6797c01b69 Properly handle justificatif_motivation case 2019-05-22 14:11:08 +02:00
Paul Chavard
6a3413018a Refresh attachments with virus scan result 2019-05-21 14:21:55 +02:00
Paul Chavard
f6421e081a Refactor attachment view 2019-05-21 14:21:13 +02:00
Paul Chavard
f833f57e45 Add PurgeUnattachedBlobsJob 2019-05-21 14:05:33 +02:00
Paul Chavard
4a9ef5d12e Always use purge_later 2019-05-21 14:05:33 +02:00
Chaïb Martinez
49f0127300 [fix #3856] Add form contact admin link
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-05-20 15:30:28 +02:00
Chaïb Martinez
855d4d0245 [fix #3867] Add legal text
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-05-20 13:43:46 +02:00
Nicolas Bouilleaud
e423da9319 Fix unclosed div tags in manager views 2019-05-20 13:30:52 +02:00
Paul Chavard
42235e81b1 Use active storage load hook to extend blob 2019-05-16 20:43:01 +02:00
Paul Chavard
348b15f595 Put devtools behind feature flags 2019-05-15 18:10:25 +02:00
Keirua
a0b2e504dd
Merge branch 'dev' into fix/add-refresh-for-pj 2019-05-15 17:16:35 +02:00
Paul Chavard
2817e571e8 Remove unused sendinblue import 2019-05-15 16:00:12 +02:00
clemkeirua
285e75f470 correction wording 2019-05-15 15:08:37 +02:00
clemkeirua
131f1aacc4 ajout de plus d'informations utilisateur pour télécharger le justificatif 2019-05-15 14:56:03 +02:00
Paul Chavard
0265c10474 Safari throw if deleting inexistent property 2019-05-14 17:12:27 +02:00
Paul Chavard
9725f2a418 Enable new champs editor for all 2019-05-14 16:18:29 +02:00
Paul Chavard
3446782cd0 Remove deprecated editor 2019-05-14 16:18:29 +02:00
Paul Chavard
9ce1f0d0a6 Set keep_until on operation_log if available on procedure 2019-05-14 14:31:03 +02:00
Paul Chavard
b8bf662c6d Track dossier demander un avis 2019-05-14 14:31:03 +02:00
Paul Chavard
9c472e6524 Track dossier private annotations modifications 2019-05-14 14:31:03 +02:00
Paul Chavard
dba8d65137 Track dossier operations with author and subject 2019-05-14 14:31:03 +02:00
Paul Chavard
c93b1bb276 Add intersection-observer polyfill 2019-05-14 10:55:16 +02:00
Paul Chavard
c4dc2adcea Add new type de champ after type de champ on screen 2019-05-14 10:55:16 +02:00
Chaïb Martinez
3004f96cf5 Add video and webinar URLs to admin pages
Fix #3850

Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-05-13 17:47:02 +02:00
simon lehericey
5f18b07eda webpacker stays mysterious 2019-05-13 17:35:11 +02:00
Pierre de La Morinerie
d36cb85f6a notification_mailer: send procedure id when reporting a missing logo 2019-05-13 16:23:11 +02:00
Pierre de La Morinerie
f5f7dfba40 france_connect: fix for params entirely missing from the callback
Fix a Sentry exception encountered in production.
2019-05-13 15:45:12 +02:00
pedong
a226999382 redirect to same path after use signup 2019-05-13 15:28:25 +02:00
Pierre de La Morinerie
e66e78b4db helpscout: remove integration of custom fields
Our new HelpScout plan doesn't allow custom fields
anymore.
2019-05-13 12:33:29 +02:00
clemkeirua
25bcd51fce add log for virus_scanner 2019-05-13 12:22:19 +02:00
pedong
f0ed61cce8 Carrierwave: change the method name to extension_whitelist for filter uploader file extension 2019-05-07 13:20:20 +02:00
clemkeirua
afa6711564 refacto suite à simplification virusscan 2019-05-07 08:54:29 +02:00
clemkeirua
d0794f42d1 fix tag_substitution_concern links for lien attestation 2019-05-07 08:54:29 +02:00
clemkeirua
c98655be52 ellipsis on file input overflow 2019-05-07 08:54:29 +02:00
clemkeirua
67a3d435d0 added some space after the optionnal justificatif button 2019-05-07 08:54:29 +02:00
clemkeirua
0e26bda186 cleanup the tag substitution concern & uniformization 2019-05-07 08:54:29 +02:00
clemkeirua
653eff01f0 add download link for instructeur 2019-05-07 08:54:29 +02:00
clemkeirua
486a6eccd6 fix invalid refactoring 2019-05-07 08:54:29 +02:00
clemkeirua
e4259466b4 nettoyage du tag_substitution_concern 2019-05-07 08:54:29 +02:00
clemkeirua
b3956bc072 introduce virus scans 2019-05-07 08:54:29 +02:00
clemkeirua
f8a2598647 ajout du lien vers le justificatif dans la balise --lien attestation-- 2019-05-07 08:54:29 +02:00
clemkeirua
ec2e17032e suppression de la double confirmation 2019-05-07 08:54:29 +02:00
clemkeirua
183f1a5fa8 suppression de l'ajout en PJ 2019-05-07 08:54:29 +02:00
clemkeirua
4aab72be68 implementation du systeme de PJ de motivation 2019-05-07 08:54:29 +02:00
Pierre de La Morinerie
67fb561119 Apply suggestions from code review
Co-Authored-By: n-b <nico@bou.io>
2019-05-06 16:19:08 +02:00
Nicolas Bouilleaud
0590cc1e28 Ignore the Procedure.administrateur_id column again
following #3822
2019-05-06 16:19:08 +02:00
Nicolas Bouilleaud
df865e71dc Make sure that there always is at least one administrator per Procedure 2019-05-06 16:19:08 +02:00
Nicolas Bouilleaud
8d84dba3f2 Link to multi-admin settings from the left panel
refs #1626
2019-05-06 16:19:08 +02:00
Nicolas Bouilleaud
3ff0c83485 Add multi-admin UI
refs #1626
2019-05-06 16:19:08 +02:00
maatinito
2308b3bc5c [Fix 3827] Champ Pays: la ligne de tirets ne devrait pas être selectionnable 2019-05-06 14:55:29 +02:00
clemkeirua
64b858ef19 handle Gon + add report-uri URL 2019-05-06 10:07:51 +02:00
Paul Chavard
96b3547788 Exercices and RNA information are optional and should not block the request 2019-05-03 18:23:21 +02:00
Paul Chavard
91f2d7d706 Remove deprecated virus_scan model 2019-05-03 11:07:19 +02:00
Paul Chavard
6e8b9cf668 Refactor piece_jointe template to avoid repetition 2019-05-02 15:58:09 +02:00
Paul Chavard
f113d108c9 Save virus scan status to blob metadata 2019-05-02 15:58:09 +02:00
Paul Chavard
2f633b5d23 Load leaflet from a separate chunk 2019-05-02 14:10:48 +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
Pierre de La Morinerie
ad4a89f0f6 api_entreprise: raise on network error 2019-05-02 11:24:22 +02:00
Pierre de La Morinerie
6c8280fba6 api_entreprise: add a feature flag for toggling API INSEE v3 2019-04-30 17:27:58 +02:00
Pierre de La Morinerie
b74fdd3cc8 Revert "Fix API Entreprise call"
This reverts commit 7deb228477.
2019-04-30 17:19:46 +02:00
Pierre de La Morinerie
54813db0ad dossiers: fix the cache not actually caching
As the expensive `procedure.usual_traitement_time` was called outside of
the cache, the cache was useless.
2019-04-30 15:56:27 +02:00
Pierre de La Morinerie
d855468cb6 dossiers: display the estimate of the entire processing time
Displaying separate estimations for en_construction and en_instruction
doesn't really make sense for the users: they want to know how
long it is going to take overall, not the petty details of our workflow.
2019-04-30 15:56:27 +02:00
Pierre de La Morinerie
10fee7a12b dossiers: decrease estimation cache duration
Some badly outdated data where shown to the users.
2019-04-30 15:56:27 +02:00
Paul Chavard
1c71355574 Better warnings in test mode 2019-04-30 11:03:24 +02:00
Paul Chavard
1d67005545 Add a default value for drop_down_list_value to avoid validation error on new type_de_champ 2019-04-30 10:39:27 +02:00
simon lehericey
7deb228477 Fix API Entreprise call 2019-04-30 10:27:35 +02:00
Pierre de La Morinerie
9c6aa209c9 sign_in: fix line breaks on form header 2019-04-29 17:59:11 +02:00
Pierre de La Morinerie
8bd1064532 tasks: populate Procedure.administrateurs even for hidden procedures
The previous procedure migration (created in
f7af01e0dc) worked fine, but didn't run
on hidden procedures (due to the default scope).
2019-04-29 16:35:34 +02:00
simon lehericey
14c3686969 ApiAdresse: add timeout 2019-04-23 14:31:01 +02:00
Paul Chavard
8d093bd9ba Fix missing dossier_id on champs inside repetition 2019-04-18 16:55:35 +02:00
simon lehericey
e65e21a72f Email notification: use the right method for procedures 2019-04-18 15:07:01 +02:00
Pierre de La Morinerie
1f955db2c7 gestionnaire: ignore when the gestionnaire already follows the dossier
Fix #3720
2019-04-18 11:41:24 +02:00
simon lehericey
1d051dc3ef Can change a piece_justificative_template on a type_de_champ 2019-04-18 11:13:35 +02:00
simon lehericey
11f8e7a3f9 Small refactor 2019-04-18 11:13:35 +02:00
Nicolas Bouilleaud
562fe90d42 Fix signout arrow direction 2019-04-18 11:03:58 +02:00
Philémon
d533abedbc Ajout rappel enregistrement nécessaire 2019-04-18 10:25:16 +02:00
Mathieu Magnin
0770362fb4 Fix when missing logo on remote storage crash email sending 2019-04-11 15:32:52 +02:00
Paul Chavard
9beff5ee9a Always create menu deroulant champs with a value 2019-04-11 14:38:21 +02:00
Mathieu Magnin
1a97cd42de Fix missing helper in notification mailer 2019-04-11 12:25:55 +02:00
Mathieu Magnin
28f9208ce8 When mail template is updated, stay on edit page to easily preview it 2019-04-11 11:03:13 +02:00
Mathieu Magnin
b3f3106888 [Fix #3064] Change logo size 2019-04-11 11:03:13 +02:00
Mathieu Magnin
9c6c11027c [Fix #3064] Add service footer on notification emails 2019-04-11 11:03:13 +02:00
Mathieu Magnin
60d66f0422 [Fix #3064] Add logo and cancel link on preview 2019-04-11 11:03:13 +02:00
Mathieu Magnin
7e551a9d8d [Fix #3064] If procedure has logo, then display it in emails 2019-04-11 11:03:13 +02:00
Mathieu Magnin
b3970a5e6f [Fix #3064] Change default signature 2019-04-11 11:03:13 +02:00
Mathieu Magnin
14c3fb7224 [Fix #3064] Add a preview button for state notifications emails 2019-04-11 11:03:13 +02:00
Mathieu Magnin
e91b412254 [Fix #3064] Use a different layout for state notifications emails 2019-04-11 11:03:12 +02:00
Nicolas Bouilleaud
c5122ee7f5 Allow filtering ProcedurePresentation by followers_gestionnaires
fixes #3464
2019-04-10 14:32:51 +02:00
Nicolas Bouilleaud
988df15c6b Refactor ProcedurePresentation::sanitize_columns to use model reflection
The passed “table” is actually an association, and may not match the table name. Use model reflection instead of manually pluralizing.
2019-04-10 14:32:51 +02:00
Nicolas Bouilleaud
2fb1b19e09 Hide other motivation fields when switching between states 2019-04-10 10:32:43 +02:00
Paul Chavard
833bafaba6 Align with behaviour on user dossier form 2019-04-09 17:16:18 +02:00
Paul Chavard
adb6255d5d Do not crash if element to remove is not found 2019-04-09 17:15:45 +02:00
Paul Chavard
a60943a173 Polyfill insertAdjacentElement and dataset on old browsers 2019-04-09 15:26:42 +02:00
Mathieu Magnin
052bd9a9fc [Fix #3682] Remove placeholder on textarea champ 2019-04-08 16:30:16 +02:00
Nicolas Bouilleaud
c1d1754236 Fix a typo in admin/procedures 2019-04-08 16:20:43 +02:00
Pierre de La Morinerie
8ca683c515 mailers: fix last_week_overview crash when the overview is missing
This is because procedures may be unpublished between the time where
the job is enqueued and the time the mailer is run

Fix #3745
2019-04-04 17:32:12 +02:00
Pierre de La Morinerie
e90b1cdcc0 api_entreprise: use API v3 again
This reverts commit 10e1408a88.
2019-04-04 17:14:58 +02:00
Mathieu Magnin
3de9148e33 Change WeeklyOverviewJob hour and day 2019-04-04 15:42:06 +02:00
Mathieu Magnin
f768cb2dae [Fix #3721] Change notification screen to make it understandable 2019-04-04 15:42:06 +02:00
Paul Chavard
4fb889f10a Send browser support information and format user id 2019-04-04 14:21:32 +02:00
Paul Chavard
8e6e730c80 Send user information to sentry without email 2019-04-04 14:21:32 +02:00
Pierre de La Morinerie
41ad89d8ac commencer: fix redirection with invalid path 2019-04-04 14:03:40 +02:00
Paul Chavard
1cbd348569 Fix scope error 2019-04-04 10:31:24 +02:00
Pierre de La Morinerie
158d6e1ae6 avis: format newlines in avis
Fix #3738
2019-04-04 10:20:57 +02:00
Paul Chavard
8157fd0127 Fix type de champ menu déroulant 2019-04-03 21:53:57 +02:00
Paul Chavard
b9be186d2c Sentry should send environment information 2019-04-03 18:19:16 +02:00
Paul Chavard
8e20b6dec2 Make buttons bar wider 2019-04-03 17:59:42 +02:00
Paul Chavard
2374877e98 Add plus icon to ajouter un champ button 2019-04-03 17:59:42 +02:00
Paul Chavard
a197459e4d Fix react props warning 2019-04-03 17:59:42 +02:00
Pierre de La Morinerie
253008e666 types_de_champ_editor: add title to actions 2019-04-03 17:49:03 +02:00
Pierre de La Morinerie
d79fee7040 types_de_champ_editor: improve the move handle 2019-04-03 17:15:35 +02:00
Pierre de La Morinerie
1880e5161b types_de_champs_editor: improve apparence of Move buttons 2019-04-03 17:15:35 +02:00
Pierre de La Morinerie
adefd26413 procedure_context: hide the description on auth pages 2019-04-03 17:14:48 +02:00
Pierre de La Morinerie
e896310e34 procedure_context: display the procedure description on small screens
Fix #3658
2019-04-03 17:14:48 +02:00
Mathieu Magnin
a997f683f5 Fix pétouille on service form placeholder 2019-04-03 16:52:15 +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
28dcbcb85b auth: move the FranceConnect button to a partial 2019-04-03 16:08:09 +02:00
simon lehericey
65370b20a9 Use IPService to remove secure connexion from trusted networks 2019-04-03 15:21:19 +02:00
simon lehericey
52e6632175 Add IPService 2019-04-03 15:21:19 +02:00
Paul Chavard
b3f0b41441 Use new editor 2019-04-03 14:38:57 +02:00
Paul Chavard
47694d286e Revrite types de champ editor using React 2019-04-03 14:38:57 +02:00
Paul Chavard
5a032d344d Activate React components loader 2019-04-03 14:38:57 +02:00
Paul Chavard
25c4391118 Update type de champ serialization for editor 2019-04-03 14:38:07 +02:00
Paul Chavard
639facaf2a Add new types_de_champ#move api 2019-04-03 14:38:07 +02:00
Paul Chavard
f5a66df802 Remove old vue editor 2019-04-03 14:38:07 +02:00
Paul Chavard
51c79ba6a6 Update webpacker and replace vue with react 2019-04-03 14:38:07 +02:00
Pierre de La Morinerie
10e1408a88 api_entreprise: revert to API v2
Fix a production error
2019-04-03 12:19:28 +02:00
Pierre de La Morinerie
2b09d16688
Merge pull request #3725 from betagouv/fix-fat-blue-button
commencer: fix fat two-lines button on small screens
2019-04-02 18:48:51 +02:00
Pierre de La Morinerie
015a591efd commencer: fix fat two-lines button on small screens 2019-04-02 18:47:02 +02:00
Paul Chavard
e71cdcd12c Move all the trackers to a separate js pack 2019-04-02 17:33:53 +02:00
Pierre de La Morinerie
a8050ce136 stats: display only the last year of contact rate 2019-04-02 17:22:38 +02:00
Pierre de La Morinerie
031c40aa55 stats: display 12 weeks of feedbacks 2019-04-02 17:22:38 +02:00
Mathieu Magnin
8525761332 Revert english dates 2019-04-02 14:38:47 +02:00
simon lehericey
f945b9ec63 Champ Siret: Fix siret-champ save
When a user enter a siret, it calls siret_controller in ajax. The champ value is stil nil, so champ.present? is false because champ.blank is redefined to focus on value. Thus the champ is not updated.
2019-04-02 14:17:21 +02:00
Paul Chavard
418466ca7a Supprimer le code mort carto 2019-04-02 12:42:28 +02:00
Chaïb Martinez
4b5c5171f7 admin: minor text changes
Fix #3493
2019-04-01 10:40:31 +02:00
Chaïb Martinez
7b9e7718a3 admin: redesign the account request page
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-04-01 10:39:59 +02:00
Mathieu Magnin
71e0969bc0 [Fix #3692] Ensure SIRET is correct on server 2019-03-28 18:03:53 +01:00
Mathieu Magnin
7ed1e5ac82 [Fix #3692] Add HTML5 validation to ensure SIRET length is 14 2019-03-28 18:03:53 +01:00
Frederic Merizen
c5f8aa2e0d [#2180] Fix updated_at for migration PJ champs 2019-03-28 17:55:16 +01:00
Mathieu Magnin
27c8e9dcb8 Use the same clone_attachment method for all attributes on procedure.clone 2019-03-28 17:17:29 +01:00
Frederic Merizen
4d021f1d85 [#2180] Handle additionnal wrapping layer in production 2019-03-28 16:05:09 +01:00
clemkeirua
0d71120f98 [fix #306] Possibilité de joindre un document à un avis 2019-03-28 15:45:14 +01:00
Pierre de La Morinerie
abeb58caa5 dossiers: displays an "Start an other dossier" item in action dropdown 2019-03-28 15:26:15 +01:00
Pierre de La Morinerie
d03e340345 dossiers: add an actions menu 2019-03-28 15:26:15 +01:00
Pierre de La Morinerie
dd4eae7d62 admin: add a expects_multiple_submissions property on procedures 2019-03-28 15:26:15 +01:00
Pierre de La Morinerie
48b89062c8 stylesheet: fix clickable area of dropdown items 2019-03-28 15:26:15 +01:00
Pierre de La Morinerie
75c37e25f6 stylesheet: fix dropdown triangle overflowing 2019-03-28 15:26:15 +01:00
Pierre de La Morinerie
06e7355d5b commencer: fix invalid URL on test procedures
Fix #3693
2019-03-28 14:15:46 +01:00
Frederic Merizen
cbec49aa0f Revert "Revert "Redesign admin roles menu"" 2019-03-28 14:01:47 +01:00
Frederic Merizen
5e21ebd93f Move procedure library to new design 2019-03-28 13:50:29 +01:00
Pierre de La Morinerie
1daf523695 layout: extract part of the header to a partial 2019-03-28 11:36:24 +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
e6351b5b1c help: move all partials to shared/help 2019-03-28 11:36:24 +01:00
Pierre de La Morinerie
27c5d01fa4 support: add nudge to send a screenshot 2019-03-28 11:09:00 +01:00
Pierre de La Morinerie
6c350befd5 support: use constants rather than strings 2019-03-28 11:09:00 +01:00
Pierre de La Morinerie
4e2e8e9a57 support: toggle correct elements on page load 2019-03-28 11:09:00 +01:00
philemon95
bc408e3374 support: allow toggling any element depending on the question type 2019-03-28 11:09:00 +01:00
Frederic Merizen
9aebb76e77 [#2180] Avoid sending spurious notifications to instructeurs 2019-03-27 17:36:13 +01:00
Frederic Merizen
7d316b8369 [#2180] High-level PJ to champ PJ migration service 2019-03-27 17:36:13 +01:00
Frederic Merizen
e24242e4b2 [#2180] Low-level Carrierwave to ActiveStorage migration 2019-03-27 17:36:13 +01:00
Frederic Merizen
21dbe44e07 [#2180] Fix ordering of piece jointe champs 2019-03-27 17:36:13 +01:00
pedong
f82fdef45f [fix #3342] format letter for date SIRET 2019-03-27 16:10:54 +01:00
pedong
fb29d30826 [fix #3342] show date with format letter 2019-03-27 15:27:20 +01:00
pedong
c0a928ac7a [fix #3440] use attachment.download for get attachment file 2019-03-26 17:11:59 +01:00
Mathieu Magnin
40d644ea3f Add a confirm before procedure deletion 2019-03-26 15:54:43 +01:00
Mathieu Magnin
4e27872a25 [Fix #3650] when cloning a procedure, do not forget pj_templates 2019-03-26 15:31:09 +01:00
Pierre de La Morinerie
97af31d54f app: rename references to betagouv/tps
Github has an automatic redirection, but better be clean.
2019-03-26 11:10:30 +01:00
Pierre de La Morinerie
30d11e0dac app: rename new_gestionnaire to gestionnaires 2019-03-26 10:48:59 +01:00
Chaïb Martinez
caadf5667a Minor text changes in new admin email [fix #3628]
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-03-25 17:40:10 +01:00
Chaïb Martinez
dc220dc362 lint fix
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-03-25 17:03:45 +01:00
Chaïb Martinez
bad5822bf3 Remove useless variable
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-03-25 17:03:45 +01:00
Chaïb Martinez
dae51ced74 Add Sendinblue js tracking for admin logged users
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-03-25 17:03:45 +01:00
Chaïb Martinez
9968d24af6 Remove old sendinblue interface through JavaScript [fix #3622]
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-03-25 17:03:45 +01:00
Chaïb Martinez
f229688988 Add sendinblue JS
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-03-25 17:03:45 +01:00
pedong
0d7c30c9dd [fix #3476] add notify email for the dossier change state to instruction 2019-03-25 16:04:33 +01:00
simon lehericey
39b710fdde Annotation: can use repetable 2019-03-25 11:08:53 +01:00
Pierre de La Morinerie
ded5b70444 app: rename new_user to users 2019-03-25 10:56:39 +01:00
Pierre de La Morinerie
b1a7018d30 procedure: ignore bad data when computing usual_instruction_time
Fix #3655
2019-03-20 17:48:54 +01:00
Pierre de La Morinerie
afac5e3b16 stylesheet: fix logo layout on Chrome
The new layout hits a bug where the logo are not laid out properly.
See https://github.com/philipwalton/flexbugs/issues/225
2019-03-20 17:01:29 +01:00
Pierre de La Morinerie
5e4660b827 stylesheet: fix header logo URL 2019-03-20 15:23:35 +01:00
Mathieu Magnin
6570bed09c [Fix #3641] Do not change PJ value in API if PJ is safe 2019-03-20 11:37:31 +01:00
Pierre de La Morinerie
20bff93f0d header: make the header even narrower on mobile
This ensures that the help button is displayed on mobile devices.
2019-03-20 11:06:54 +01:00
Pierre de La Morinerie
69580288a4 help: add a custom help dropdown in gestionnaire context 2019-03-20 11:06:54 +01:00
Pierre de La Morinerie
549b17f75e help: add a custom help dropdown in dossier context 2019-03-20 11:06:54 +01:00
Pierre de La Morinerie
ce9c5da6e1 dossier: add a messagerie_available? method 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
ad57c6ef99 helpers: add ServiceHelper#formatted_horaires 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
c7d247e9a1 stylesheet: add help, phone and clock icons 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
23f8c63f6a stylesheet: add a small size for icons 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
04a4513452 stylesheet: rename .description to .dropdown-description 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
f57985626e stylesheet: danger buttons don't react on hover 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
3725a43f79 patron: add dropdown menus 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
69a6f1bd79 header: add a link to the Help in the navigation bar 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
9dea126431 header: center the account button vertically 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
abcc46f4cd icon: fix trash color 2019-03-20 10:42:57 +01:00
Pierre de La Morinerie
36f9909066 webhook: make helpscout email search case-insensitive
Fix #3636
2019-03-20 10:41:13 +01:00
Paul Chavard
69a51e3296 Save SIRET data on search 2019-03-19 16:22:42 +01:00
Pierre de La Morinerie
ed1f6ec38d procedure: fix verification delay
The verification delay was ignoring all dossiers not closed yet.
2019-03-19 15:51:51 +01:00
Mathieu Magnin
2c1e1db37d [Fix #3617] 404 when filter[value] contains a "." 2019-03-19 14:25:57 +01:00
Pierre de La Morinerie
1e63ee764a stylesheet: improve the procedure description layout 2019-03-19 14:19:25 +01:00
Pierre de La Morinerie
9fbcf4313a stylesheet: center the procedure title on narrow screens 2019-03-19 14:19:25 +01:00
Pierre de La Morinerie
a6380f8cbb stylesheet: center the column on narrow screens 2019-03-19 14:19:25 +01:00
Pierre de La Morinerie
ce2df5cd25 stylesheet: refactor the two-columns layout with adaptative margins
This allow to break to the single-column layout later, and thus to
display the two-columns variant of the layout on narrower screens.
2019-03-19 14:19:25 +01:00
Pierre de La Morinerie
5a0fd84e98 stylesheet: fix two-columns breakpoint
The two-columns breakpoints was too large, and trigerred way before it
was actually needed.
2019-03-19 14:19:25 +01:00
Pierre de La Morinerie
00b41454a7 support: fix the support page not being responsive 2019-03-19 14:18:47 +01:00
simon lehericey
9b4d9dc26c [fix #1449] Notification: add job 2019-03-18 16:37:51 +01:00
simon lehericey
6607de4827 Notification: add service to send notifications 2019-03-18 16:37:51 +01:00
simon lehericey
ed6828c66c Notification: UI 2019-03-18 16:37:51 +01:00
simon lehericey
1644fd9059 Notification: add gestionnaire.procedures_with_email_notifications scope 2019-03-18 16:19:36 +01:00
philemon95
536f0ccf02
suppression de l'option SIRET personnes physiques
car existe dans tous les cas dans le type de champ "SIRET", davantage source de confusion qu'autre chose
2019-03-18 15:11:18 +01:00
Pierre de La Morinerie
459acb3b77 stylesheet: increase contrast of gray texts 2019-03-14 15:28:13 +01:00
Pierre de La Morinerie
dfba2b8e16 procedure: move the webhook field to the end of the form 2019-03-13 15:22:36 +01:00
philemon95
75b7024c81
modification typos 2019-03-13 13:57:58 +01:00
Mathieu Magnin
6b9dbb22af Remove unused stats 2019-03-13 11:00:14 +01:00
philemon95
d735b4ded8 suppression délai RGAA
suppression de tout horizon temporel quant à la mise en conformité RGAA
2019-03-13 10:37:35 +01:00
philemon95
eebbff1fd1 remplacement archivage par "clôture" 2019-03-13 10:06:59 +01:00
Mathieu Magnin
ff0356e698 Fix Sentry 165 : api crash when siret is unknown 2019-03-12 17:53:11 +01:00
Paul Chavard
4a9ff29391 Fix administration page 2019-03-12 15:34:30 +01:00