Skip to content

Commit

Permalink
Merge pull request #1705 from etalab/features/remove-transfer
Browse files Browse the repository at this point in the history
Remove user transfer feature
  • Loading branch information
skelz0r authored Oct 25, 2024
2 parents 167a88e + 205c164 commit 768dae1
Show file tree
Hide file tree
Showing 22 changed files with 22 additions and 586 deletions.

This file was deleted.

This file was deleted.

38 changes: 0 additions & 38 deletions app/controllers/concerns/transfer_user_account_management.rb

This file was deleted.

12 changes: 0 additions & 12 deletions app/interactors/user/find_or_create_new_owner.rb

This file was deleted.

11 changes: 0 additions & 11 deletions app/interactors/user/notify_new_tokens_owner.rb

This file was deleted.

20 changes: 0 additions & 20 deletions app/interactors/user/transfer_tokens.rb

This file was deleted.

12 changes: 0 additions & 12 deletions app/organizers/user/transfer_account.rb

This file was deleted.

25 changes: 10 additions & 15 deletions app/views/shared/prolong_token_wizard/owner.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
<%= form_for @prolong_token_wizard, url: wizard_path, method: :put do |f| %>
<fieldset class="fr-fieldset">
<legend class="fr-fieldset__legend--regular fr-fieldset__legend">
<%= f.label :owner,
<%= f.label :owner,
t('.label',
link_to_datapass: link_to(
t('shared.links.to_datapass', external_id: @prolong_token_wizard.token.authorization_request.external_id).html_safe,
datapass_authorization_request_url(@prolong_token_wizard.token.authorization_request),
t('shared.links.to_datapass', external_id: @prolong_token_wizard.token.authorization_request.external_id).html_safe,
datapass_authorization_request_url(@prolong_token_wizard.token.authorization_request),
id: :authorization_request_link,
class: %w(fr-link),
class: %w(fr-link),
target: '_blank')
).html_safe %>
</legend>
Expand All @@ -35,16 +35,10 @@
</div>
</fieldset>

<div class="hidden">
<a
href="<%= transfer_account_path %>"
id="<%= dom_id(@prolong_token_wizard, :prolong_token_owner_not_in_charge) %>"
class="fr-btn fr-icon-arrow-right-line fr-btn--icon-right fr-mt-2w"
aria-controls="main-modal"
data-fr-opened="false"
data-turbo-frame="main-modal-content"
>
</a>
<div id="disclaimer_prolong_token_owner_not_in_charge" class="hidden fr-pt-2v">
<div class="fr-alert fr-alert--warning">
<%= t('.not_in_charge_alert.text', api: namespace.gsub('_', '-')).html_safe %>
</div>
</div>

<%= render partial: 'shared/prolong_token_wizard/build/wizard_buttons', locals: { f: f } %>
Expand All @@ -55,7 +49,8 @@
(function() {
document.getElementById('prolong_token_wizard_owner_not_in_charge').addEventListener('click', function() {
if (this.value == 'not_in_charge') {
document.getElementById('<%= dom_id(@prolong_token_wizard, :prolong_token_owner_not_in_charge) %>').click();
document.getElementById('disclaimer_prolong_token_owner_not_in_charge').classList.remove('hidden')
document.getElementById('next_prolong_token_wizard').classList.add('hidden')
}
});
})();
Expand Down
25 changes: 0 additions & 25 deletions app/views/shared/transfer_user_account/_new.html.erb

This file was deleted.

3 changes: 0 additions & 3 deletions app/views/shared/transfer_user_account/new.html.erb

This file was deleted.

5 changes: 0 additions & 5 deletions app/views/shared/transfer_user_account/new.turbo_stream.erb

This file was deleted.

11 changes: 2 additions & 9 deletions app/views/shared/users/_user.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -48,18 +48,11 @@
<h3 class="fr-h6"> <%= t('.transfer_account.subtitle_if_demandeur').html_safe %>
</h3>
<p class="fr-mb-1w">
<%= t('.transfer_account.description_if_demandeur').html_safe %>
</p>
<a id="transfer_account_button" href="<%= transfer_account_path %>" data-turbo-frame="main-modal-content" class="fr-btn fr-btn--secondary fr-btn--icon-left fr-mb-2w" data-fr-opened="false" aria-controls="main-modal">
<span class="ri-user-shared-line"></span>
<%= t('.transfer_account.cta') %>
</a>
<p>
<%= t('.transfer_account.description_if_demandeur_transfer_not_all', api: t("#{namespace}.api")).html_safe %>
<%= t('.transfer_account.description_if_demandeur', api: namespace.gsub('_', '-')).html_safe %>
</p>
</li>
<li>
<h3 class="fr-h6">
<h3 class="fr-h6">
<%= t('.transfer_account.subtitle_if_other_roles').html_safe %>
</h3>
<p class="fr-mb-1w">
Expand Down
40 changes: 9 additions & 31 deletions config/locales/fr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ fr:
label: "Cas d'usage"
link_access: "Demander un accès"
link_list_api: "Liste des API utiles"
legal_context:
legal_context:
title: "Cadre juridique"
request_access:
title: "Demander un accès"
Expand Down Expand Up @@ -127,22 +127,22 @@ fr:
updates_requested_cta: Demande de mise à jour de l'habilitation en attente d'instruction
header:
title: Prolonger le jeton
description: Votre jeton expire le %{humanize_date}. Avant de prolonger votre jeton, nous avons besoin de savoir si les conditions indiquées dans votre habilitation %{link_to_datapass} ont évolué.
description: Votre jeton expire le %{humanize_date}. Avant de prolonger votre jeton, nous avons besoin de savoir si les conditions indiquées dans votre habilitation %{link_to_datapass} ont évolué.
Veuillez répondre aux questions suivantes, ce formulaire vous engage en regard des <a href="https://%{api}.api.gouv.fr/cgu/">CGU d'%{api_name}</a>
steps:
owner: Responsable de la demande
project_purpose: Vérification du projet
contacts: Vérification des contacts
summary: Bilan et confirmation
prolonged:
title: Votre jeton a été prolongé jusqu'au %{humanized_date}
title: Votre jeton a été prolongé jusqu'au %{humanized_date}
description: Merci ! Suite à vos réponses, les conditions de votre habilitation a l'%{api_name} n'ayant pas évolué, votre jeton a été prolongé de 18 mois.
link:
authorization_request: Revenir à votre demande d'habilitation
summary:
prolonged:
owner_not_in_charge: "Suite aux réponses indiquées, vous declarez que le contact principal à changé. Bien que cela ne soit pas bloquant pour
poursuivre la prolongation de votre jetons, l'équipe support vous contactera rapidement afin de procéder au transfert de vos habilitations. Vous pouvez démarrer cette démarche en autonomie
owner_not_in_charge: "Suite aux réponses indiquées, vous declarez que le contact principal à changé. Bien que cela ne soit pas bloquant pour
poursuivre la prolongation de votre jetons, l'équipe support vous contactera rapidement afin de procéder au transfert de vos habilitations. Vous pouvez démarrer cette démarche en autonomie
via votre <a href='https://%{api}.api.gouv.fr/compte'>espace personnel</a>."
description: Suite aux réponses indiquées, déclare qu'aucune des informations indiquées dans votre habilitation n<sup>o</sup>%{external_id} n'a évolué.
cgu: ⚠️ Vos réponses vous engagent en regard des <a href="https://%{api}.api.gouv.fr/cgu/">CGU</a>
Expand Down Expand Up @@ -186,32 +186,12 @@ fr:
still_in_charge: Oui, je suis toujours en charge
will_change_soon: Oui, je suis toujours en charge mais pourrais passer la main d'ici quelques mois
not_in_charge: Non, je ne suis plus en charge de cette habilitation %{api}
not_in_charge_alert:
text: Si vous n'êtes plus en charge de cette habilitation, vous devez la transférer à une autre personne de votre organisation depuis le site de <a href="https://%{api}.v2.datapass.api.gouv.fr" target="_blank">DataPass</a>.<br/><br/>Cette démarche prend 2 minutes. La nouvelle personne en charge devra alors effectuer la prolongation du jeton.
build:
wizard_buttons:
previous: Précédent
next: Suivant
transfer_user_account:
new:
title: Transférer toutes mes habilitations
description: Cette fonctionnalité vous permet de transmettre définitivement toutes les habilitations pour lesquelles vous êtes demandeur à une tierce personne (qui sera le nouveau demandeur).
Une fois le transfert effectué, vous n'aurez plus accès à ces habilitations en tant que demandeur.
<br>
<br>
Attention, nos <a href="https://%{api}.api.gouv.fr/cgu/">CGU</a> vous engagent ! Vous ne devez pas transférer ces habilitations à un tiers non-habilité. Pour en savoir plus sur la procédure,
consultez <a href='https://%{api}.api.gouv.fr/faq#comment-transferer-mes-habilitations-a-une-autre-personne' target='_blank'>notre FAQ</a>.
<br>
<br>
Si vous souhaitez ne transférer qu'une seule de vos habilitations, nous vous invitons à contacter <a href='https://%{api}.api.gouv.fr/faq#une-autre-question'>le support</a>.
email:
label: Adresse e-mail du futur demandeur
placeholder: [email protected]
cta: Transférer toutes mes habilitations
confirm: Êtes-vous sûr de vouloir transférer toutes vos habilitations ?
create:
success:
title: Un e-mail a été envoyé avec succès au destinataire. Assurez-vous qu'il effectue les démarches indiquées dans le mail qu'il a reçu pour que le transfert soit possible. Une fois ces démarches effectuées, une validation manuelle par nos services finalisera le transfert.
error:
title: Quelque chose s'est mal passé. Veuillez envoyer un e-mail à %{target_email}
users:
user:
links:
Expand All @@ -220,9 +200,7 @@ fr:
transfer_account:
title: "Votre équipe évolue ? Vous quittez votre service ? Transmettez vos habilitations à une autre personne&nbsp;:"
subtitle_if_demandeur: "Habilitations où je suis demandeur&nbsp;:"
description_if_demandeur: "Pour transmettre votre rôle de demandeur à une autre personne de votre organisation, utilisez la fonctionnalité suivante&nbsp;:"
description_if_demandeur_transfer_not_all: "Pour léguer une partie de vos habilitations uniquement, veuillez contacter <a href='https://%{api}.api.gouv.fr/faq#une-autre-question'>le support</a>."
cta: Transférer toutes mes habilitations
description_if_demandeur: Pour transmettre votre rôle de demandeur à une autre personne de votre organisation, veuillez vous rendre sur <a href="https://%{api}.v2.datapass.api.gouv.fr" target="_blank">DataPass</a> et transférer chacune de vos habilitations.
subtitle_if_other_roles: "Habilitations où je ne suis pas demandeur&nbsp;:"
description_if_other_roles: "Vous êtes contact métier et/ou technique d'une habilitation et souhaitez léguer ce rôle à une autre personne de votre organisation ? C'est au demandeur de l'habilitation d'effectuer une demande de modification des contacts. <a href='https://%{api}.api.gouv.fr/faq#comment-transferer-mon-compte-a-une-autre-personne'>En savoir plus</a>."
demandeur: "Demandeur"
Expand Down Expand Up @@ -383,7 +361,7 @@ fr:
links:
to_datapass: "Datapass n°%{external_id}"
profile: Vos informations
table:
table:
head:
authorization_request: "Habilitation"
token: Jeton principal
Expand Down
3 changes: 0 additions & 3 deletions config/routes/api_entreprise.rb
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,6 @@
post 'public/magic_link/create', to: 'public_token_magic_links#create'
get 'public/jetons/:access_token', to: 'public_token_magic_links#show', as: :token_show_magic_link

get '/compte/transferer', to: 'transfer_user_account#new', as: :transfer_account
post '/compte/transferer', to: 'transfer_user_account#create'

get '/catalogue', as: :endpoints, to: 'endpoints#index'
get '/catalogue/*uid/exemple', as: :endpoint_example, to: 'endpoints#example'
get '/catalogue/*uid', as: :endpoint, to: 'endpoints#show'
Expand Down
3 changes: 0 additions & 3 deletions config/routes/api_particulier.rb
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,6 @@
get '/compte', to: 'users#profile', as: :user_profile
get '/compte/nouveaux-jetons/telecharger', to: "new_tokens#download", as: :new_tokens_download

get '/compte/transferer', to: 'transfer_user_account#new', as: :transfer_account
post '/compte/transferer', to: 'transfer_user_account#create'

get '/compte/demandes', to: 'authorization_requests#index', as: :authorization_requests
get '/compte/demandes/:id', to: 'authorization_requests#show', as: :authorization_request

Expand Down
7 changes: 1 addition & 6 deletions docs/tech-modal-turbo.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,4 @@ La vue doit renvoyer des balises turbo-frame de cette manière:
De cette manière turbo va prendre le contenu de la balise turbo-frame et
remplacer celle de la modal par ce contenu.

Pour aller plus loin:

1. Il existe un exemple fonctionnel avec
[`TransferUserAccountController`](../app/controllers/transfer_user_account_controller.rb)
qui gère une modal avec erreurs (tutorial associé:
[lien](https://blog.skelz0r.fr/posts/turbo-form-redirect)
Pour aller plus loin: [lien](https://blog.skelz0r.fr/posts/turbo-form-redirect)
13 changes: 0 additions & 13 deletions lib/tasks/user.rake

This file was deleted.

6 changes: 0 additions & 6 deletions spec/features/api_entreprise/user_profile_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,5 @@

expect(page).to have_content(user.email)
end

it 'has a button to transfer the account ownership' do
show_profile

expect(page).to have_css('#transfer_account_button')
end
end
end
Loading

0 comments on commit 768dae1

Please sign in to comment.