Commit graph

427 commits

Author SHA1 Message Date
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
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
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
Paul Chavard
d5911071f8 Return dossiers on api with stable order 2019-06-04 15:34:49 +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
clemkeirua
afa6711564 refacto suite à simplification virusscan 2019-05-07 08:54:29 +02:00
clemkeirua
b3956bc072 introduce virus scans 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
ce9c5da6e1 dossier: add a messagerie_available? method 2019-03-20 10:42:57 +01:00
Paul Chavard
01b966ff66 Check demarche ownership on multiple administrateurs 2019-03-12 11:59:01 +01:00
Frederic Merizen
a87e3ac697 [#3477] Make filtering by datetimes a proper scope 2019-03-11 17:14:17 +01:00
simon lehericey
a7e068003a [fix #3427] Administration can soft delete a dossier 2019-02-14 18:09:08 +01:00
Paul Chavard
a0a1ce11c8 Add repetition to apercu 2019-02-07 12:29:27 +01:00
Pierre de La Morinerie
a6704c4cd6 dossiers: allow users to delete "en construction" dossiers 2019-02-07 11:07:07 +01:00
Pierre de La Morinerie
d251ebc2f4 dossiers: shorten method name 2019-02-06 18:20:35 +01:00
simon lehericey
5715cdaa4c [fix #3363] use organisation_name in dossier summary 2019-02-05 17:41:51 +01:00
Paul Chavard
071448e1d9 Champ Repetition dossier editor 2019-02-04 16:19:07 +01:00
simon lehericey
6ab2d124f9 Dossier: #accepter_automatiquement! 2019-01-16 17:20:12 +01:00
simon lehericey
0f3dedb0b6 Dossier: #passer_automatiquement_en_instruction! 2019-01-16 17:12:32 +01:00
Paul Chavard
5d1c24f3d8 Add type de champ repetition models (with row) 2018-12-19 15:31:11 +01:00
gregoirenovel
df7e0a9881 Remove dead code 2018-12-19 14:59:15 +01:00
Paul Chavard
35494df78e Procedure export dossiers with champs siret 2018-12-05 17:09:39 +01:00
Paul Chavard
9b39934e8b Destroy dossier_operation_logs when dossier is destroyed 2018-11-28 17:06:54 +01:00
Mathieu Magnin
b51bf759b1 [Fix #3081] If a dossier is destroyed, then destroy the attestation 2018-11-28 16:33:12 +01:00
Paul Chavard
36f6f54337 Remove unused carto models 2018-11-27 16:11:25 +01:00
Paul Chavard
0f0ca2ec65 Lod dossier operations 2018-11-27 12:49:40 +01:00
Paul Chavard
85e3eb04f4 Add DossierOperationLog model 2018-11-27 12:49:40 +01:00
Paul Chavard
9843666bdc Implement state change methods on dossier 2018-11-27 12:49:40 +01:00
Pierre de La Morinerie
e5303fd986 mailers: streamline the NotificationMailer
Notifications are now only for demarche-templated emails.
2018-11-20 14:46:31 +01:00
Paul Chavard
971a08c92a Add expose legacy carto api flag 2018-11-20 10:53:14 +01:00
Paul Chavard
2462e42b53 Stop using legacy api carto after migration 2018-11-20 10:53:14 +01:00
Paul Chavard
33c6ddc452 Remove dead code related to dossier state 2018-11-08 14:56:45 +01:00
Paul Chavard
80189def98 Remove n+1 calls from API queries 2018-11-08 14:45:09 +01:00
simon lehericey
3dad743d56 remove localtime as it uses server timezone 2018-10-26 10:10:20 +00:00
simon lehericey
2238e5bd9f Time.now => Time.zone.now 2018-10-26 10:10:20 +00:00
simon lehericey
13ffa61435 DateTime.now => Time.zone.now 2018-10-26 10:10:20 +00:00
gregoirenovel
22088b167d Remove ApiAdresse::Geocodeur 2018-10-16 09:33:16 +02:00
gregoirenovel
5e9e913dce Carto::Geocodeur → ApiAdresse::Geocodeur 2018-10-15 20:55:46 +02:00
Paul Chavard
c63675461a Add new carto init code 2018-10-14 12:34:43 +02:00
gregoirenovel
c8f872c566 InviteUser → Invite 2018-10-10 12:07:10 +02:00
gregoirenovel
ed11852300 Delete the InviteGestionnaire model 2018-10-10 12:07:10 +02:00
Frederic Merizen
c1f18a164d Remove dead, buggy code 2018-10-10 05:51:17 +02:00
simon lehericey
87e731bc75 Dossier: move state translation to model dossier 2018-10-08 17:55:20 +02:00
Frederic Merizen
33f29f35ab Avoid recreating service too often 2018-10-04 18:09:39 +02:00
Frederic Merizen
eafd0e8348 Evite de cacher la whitelist trop longtemps 2018-10-04 18:09:39 +02:00
gregoirenovel
5107b33af8 Remove FC fields from search 2018-10-04 13:54:07 +02:00
Frederic Merizen
3bb6fd2d47 [#2579] Remove no-op
(sanitize_sql_for_order does not do anything when its argument is a string)
2018-10-03 10:17:46 +02:00
Paul Chavard
941c529b2c Remove CGU checkbox
fix #2725
2018-10-03 08:59:02 +02:00
Frederic Merizen
43d8db88d9 [#1946] Check if a dossier’s retention period has expired 2018-09-20 17:44:31 +02:00
Frederic Merizen
b672377f5b [#1946] Query dossiers by remaining retention time 2018-09-20 17:44:31 +02:00
Frederic Merizen
63fc0b3bc3 [Fix #2584] Move Field related code to a service 2018-09-18 13:49:34 +02:00
gregoirenovel
00ecae5f93 Procédure → Démarche 2018-09-05 15:46:24 +02:00
Frederic Merizen
7326065590 [fix #2486] Include all needed attributes on downloadable_sorted
to avoid N+1 select
2018-08-30 14:13:32 +02:00
Frederic Merizen
9403d4c042 [#2486] followers_gestionnaires should not be a method
To help activerecord caching
2018-08-30 14:13:32 +02:00
Frederic Merizen
37c45f0d29 [#2486] Always order champs
to help activerecord cache the champs collection
2018-08-30 14:13:32 +02:00
gregoirenovel
4b071ecf06 Use enum to the fullest with Dossier.states 2018-08-29 17:31:08 +02:00
Frederic Merizen
3b2919a326 [#2179] Use new updated value for search terms
Rather than old in-database value
2018-08-23 10:34:25 +02:00
Frederic Merizen
333f4e8824 [#2179] update champ and individual association with default
That way, they are safe to read in update_search_terms, and no
reload is needed later
2018-08-23 10:34:25 +02:00
Paul Chavard
46e75ac8ef Only notify on dossier supression if dossier is en_construction 2018-08-02 17:07:24 +02:00
Frederic Merizen
0e639030f9 [#2179] Generate denormalized search terms value for Dossier 2018-07-27 11:11:52 +02:00
Pierre de La Morinerie
13182ad291 dossier: send deletion email also to the following gestionnaires 2018-07-25 13:49:55 +02:00
Mathieu Magnin
9afbd16bbf [Fix #2145] When procedure is archived, usager should not be able to submit a dossier 2018-07-02 11:10:33 +02:00
Paul Chavard
d0a6957862 Remove old cerfa code 2018-06-28 15:16:20 +02:00
Frederic Merizen
7fdb523b1a We can use the shorter syntax fort ordered_champs(_private)
now that the old preview is gone
2018-06-28 10:27:07 +02:00
Mathieu Magnin
ae6e3e345e Task to unhide dossiers with instruction commencee 2018-06-19 10:05:00 +02:00
Mathieu Magnin
89f82ba92e Move email sending in delete method 2018-06-19 10:05:00 +02:00
Mathieu Magnin
e05fb2d0ae Allow dossier deletion if instruction has not started 2018-06-19 10:05:00 +02:00
simon lehericey
e11392981d [fix #2072] DossierController: check the user can update the dossier 2018-06-08 16:24:29 +02:00
gregoirenovel
0329b1db68 Use User#owns_or_invite? instead of Dossier#owner_or_invite? 2018-05-31 14:39:43 +02:00
gregoirenovel
a57e2388f6 Unify NotificationMailer methods’ signatures 2018-05-31 12:10:06 +02:00
Mathieu Magnin
eb1fbb7dbc Delete button, notify user and admin then delete dossier 2018-05-30 18:01:36 +02:00
Frederic Merizen
07b1c147d9 [Fix #1972] Always send mails asynchronously 2018-05-28 12:02:13 +02:00
Paul Chavard
ad24fd5991 Remove entreprise and rna_information models 2018-05-24 17:54:51 +02:00
gregoirenovel
8848abc536 #to_sorted_values -> #sorted_values 2018-05-03 23:35:51 +02:00
gregoirenovel
886431b120 Make some methods private 2018-05-03 23:35:51 +02:00
gregoirenovel
f020fa9e2b Remove some useless self mentions 2018-05-03 23:35:51 +02:00
Paul Chavard
0b7cf3ae75 #full_data_strings_array -> #export_values 2018-05-03 23:35:51 +02:00
gregoirenovel
031522cf42 Checking on entreprise has no sense, check etablissement 2018-05-03 23:35:51 +02:00
gregoirenovel
12cda1739b #export_entreprise_data -> #export_etablissement_data 2018-05-03 23:35:51 +02:00
Paul Chavard
27592ae072 Add simple web hooks to procedures 2018-04-09 11:02:24 +02:00
gregoirenovel
c60c58ff8b Fix issues spotted by @fredZen in #1802 2018-04-06 16:39:54 +02:00
kemar
b42e410da0 [Fix #1494] Display a warning when accepting a dossier if needed
Show the accompagnateur the unspecified demande
champs and attestations privées needed for the
attestation
2018-04-06 16:15:09 +02:00
Frederic Merizen
13d7149b5c [#1677] Extract Dossier#invite_for_user 2018-03-29 16:59:16 +02:00
Frederic Merizen
884c430619 [#1677] No need to use emails when we have users 2018-03-29 16:59:16 +02:00
simon lehericey
66a113c7db Dossier: remove uncessary query on order_champ_v2 2018-03-27 16:48:38 +02:00
Frederic Merizen
2fa88a432b Add missing brackets around parameters in method definitions 2018-03-20 17:54:51 +01:00
gregoirenovel
d0a59058e8 Remove the mandataire_social guess
Rationale:
- is true for only 0.06% of Dossiers
- is not displayed anymore anyways
- will be a rare case for now
  * FC adoption is not insane
  * FC used more for personal than professional
    matters
  * not always the mandataires sociaux that fill
    dossiers for their companies, so not that
    relevant
- we can add it back later
2018-03-20 16:09:00 +01:00
Paul Chavard
19b58a298c Clarify dependent relationships between etablissement and entreprise 2018-03-07 17:42:31 +01:00
gregoirenovel
0a9f442260 Enable some Rails cops 2018-03-06 17:18:44 +01:00
Paul Chavard
896518f3d5 add SIRETService 2018-02-27 16:22:53 +01:00
simon lehericey
d702a0c083 [fix #1411] user: new form ui 2018-02-27 15:24:50 +01:00
Mathieu Magnin
9627ba43c0 [Fix #1409] Identite can be updated 2018-02-20 11:01:47 +01:00
Paul Chavard
52749713ab Remove ChampPublic/ChampPrivate STI 2018-02-13 12:07:13 +01:00
gregoirenovel
29d9b03672 Bump rails to 5.2.0.rc1 2018-02-07 16:18:42 +01:00
gregoirenovel
142241dd16 Remove notifications 2018-02-06 14:07:20 +01:00
gregoirenovel
5b62bc4f12 Use transform_keys when possible 2018-01-30 15:45:32 +01:00
gregoirenovel
db8c3030e3 Use transform_values when possible 2018-01-30 15:45:32 +01:00
Frederic Merizen
db5bf39e32 [#1203] No implicit available_for_states, make it explicit 2018-01-18 18:26:14 +01:00
Frederic Merizen
eebab14954 [Fix #1203] No début d’instruction tag in accusé de réception mails
Doesn’t make sense functionnally
2018-01-18 18:26:14 +01:00
gregoirenovel
897a30da0c Enable the Layout/SpaceInsideBlockBraces cop 2018-01-18 10:53:34 +01:00
gregoirenovel
3e93bd3615 Enable the Layout/SpaceBeforeComma cop 2018-01-18 10:53:34 +01:00
gregoirenovel
7c34807f46 Don’t use unless 2018-01-12 11:32:43 +01:00
Simon Lehericey
40b9a77395 Dossier: replace nouveau scope by en_construction 2017-12-15 17:37:30 +01:00
Simon Lehericey
4be6cb9126 Dossier: delete state_nouveaux which is similar to en_construction 2017-12-15 17:37:30 +01:00
LeSim
7cc69de543 Dossier: remove useless state methods and const 2017-12-15 17:37:30 +01:00
Simon Lehericey
9c354e18eb [fix 363] Dossier: remove next_step! 2017-12-15 15:43:30 +01:00
Simon Lehericey
e78f5b3a2d [fix 363] Dossier: remove next_step! role var 2017-12-15 15:43:30 +01:00
Simon Lehericey
201862d450 [fix 363] Dossier: remove next_step! action = initiate, role = user 2017-12-15 15:43:30 +01:00
Simon Lehericey
907db89371 [fix 363] Dossier: remove next_step! action = follow 2017-12-15 15:43:30 +01:00
Simon Lehericey
11c010859c [fix 363] Dossier: remove next_step! action = update 2017-12-15 15:43:30 +01:00
Simon Lehericey
629cccbf27 [fix 363] Dossier: remove next_step! action = comment 2017-12-15 15:43:30 +01:00
Simon Lehericey
c83552f423 [fix #504] Dossier: without_continuation -> sans_suite 2017-12-15 12:10:54 +01:00
Simon Lehericey
2be9b8d2ba [fix #504] Dossier: refused -> refuse 2017-12-15 12:10:54 +01:00
Simon Lehericey
a13256f73d [fix #504] Dossier: closed -> accepte 2017-12-15 12:10:54 +01:00
LeSim
3dda27b281 [fix #504] Dossier: received -> en_instruction 2017-12-15 12:10:54 +01:00
Simon Lehericey
72bae2c374 [fix #504] Dossier: draft -> brouillon 2017-12-15 11:52:09 +01:00
LeSim
56545933a9 [fix #504] Dossier: initiated -> en_construction
The change must not impact the api
2017-12-15 11:52:09 +01:00
Simon Lehericey
e2bbd2a37a [fix #992] export: dossiers are order by initiated_at 2017-12-01 13:45:53 +01:00
Simon Lehericey
28a047a64b [Fix #508]Api GeoJson: export dossier.json_latlngs to geojson 2017-11-28 14:41:08 +01:00
Simon Lehericey
e28b18d978 Dossier: add statut method 2017-11-23 09:34:18 +01:00
Simon Lehericey
a71574b8dd [fix #445]: add title to pages 2017-11-21 17:47:27 +01:00
Simon Lehericey
155a5f7826 Notification: add methods to retrieve notifications 2017-11-10 16:29:44 +01:00
Simon Lehericey
338911d1a8 [fix #905] Champ: add for_export method which strips tag for textarea champ 2017-10-30 17:14:31 +01:00
Simon Lehericey
3f2419a2a3 Dossier: rename data_with_champs to to_sorted_values 2017-10-30 17:14:31 +01:00
Simon Lehericey
f0373f6bc2 Dossier: remove useless return 2017-10-30 17:14:31 +01:00
Mathieu Magnin
a8ec374252 [Fix #813] When a brouillon is created, send an email to user 2017-10-20 12:13:55 +02:00
gregoirenovel
9ea396cc8b Avoid loading the association for the without_followers scope
As seen in https://stackoverflow.com/questions/5319400/want-to-find-records-with-no-associated-records-in-rails-3
2017-10-17 14:10:34 +02:00
Mathieu Magnin
0f945e2fea Simplify mailer parameters to be serializable (even if mail_template.id is nil) 2017-10-13 21:27:17 +02:00
Mathieu Magnin
3ba5de88b6 [Fix #839] Send notification email in async to avoid sending same email to different users 2017-10-13 17:41:02 +02:00
gregoirenovel
fd08bb8c57 Eager-load data for downloadable dossiers
So that the export is faster
2017-10-11 12:38:00 +02:00
gregoirenovel
3df9356021 Add field sort to the dossiers table 2017-10-02 17:45:22 +02:00
gregoirenovel
88ad986143 Remove the ordering from the dossier scopes 2017-10-02 17:45:22 +02:00
gregoirenovel
e1bdbec815 Allow the customization of the dossiers table 2017-10-02 17:45:22 +02:00
Simon Lehericey
2b760c85c4 [Fix #763] Add annotations_privees to buggy annotation system 2017-09-27 15:08:34 +02:00
Simon Lehericey
04d1e0f0e8 Notification: instruction -> avis 2017-09-27 12:16:33 +02:00
Simon Lehericey
fb5472d3f6 Dossier: remove a_instruire scope
As it s a duplication of en_instruction
2017-09-26 14:42:54 +02:00
Simon Lehericey
1cfeb10ce9 [Fix #503] Dossier: remove updated 2017-09-26 14:42:54 +02:00
Simon Lehericey
633b55aca0 [Fix #503] Dossier: remove replied 2017-09-26 14:42:54 +02:00
Simon Lehericey
030a11d98c [Fix #503] Dossier: remove unused ouvert state 2017-09-26 14:42:54 +02:00
Simon Lehericey
73357c5144 [Fix #503] Dossier: Remove waiting for gestionnaire scope 2017-09-26 14:42:54 +02:00
Simon Lehericey
460cd3e237 [Fix #503] Dossier: Remove waiting for user scope 2017-09-26 14:42:54 +02:00
Simon Lehericey
fdbf34f04b Avis instruction: only authorized avis 2017-09-20 15:42:26 +02:00
Simon Lehericey
a298c48e8f Dossier: add notification icon 2017-09-06 11:13:50 +02:00
Simon Lehericey
fbd16b8c75 Procedure show: add notification icon 2017-09-06 11:11:47 +02:00
Simon Lehericey
3e5d0dce6a NewDesign: can add annotations 2017-09-06 11:11:37 +02:00