- content_for(:title, t('.profile'))

= render partial: 'administrateurs/breadcrumbs',
  locals: { steps: [['Tableau de bord', tableau_de_bord_helper_path],
                    [t('.profile')]] }

#profil-page.container
  %h1= t('.profile')

  - if @waiting_merge_emails.present?
    .card
      .card-title Demande de fusion de comptes
      %p
        Acceptez-vous d’absorber le compte de
        %span.email-address= @waiting_merge_emails.join(', ')

      = link_to 'Refuser la fusion', refuse_merge_path, method: :post, class: 'fr-btn fr-btn--secondary', data: { confirm: "Confirmez-vous le refus ?" }
      = link_to 'Accepter la fusion', accept_merge_path, method: :post, class: 'fr-btn fr-btn--secondary', data: { confirm: "Confirmez-vous la fusion des comptes ?" }

  .card
    .card-title= t('.contact')
    %p
      = t('.your_email')
      %span.email-address= current_user.email

    - waiting_email = current_user.unconfirmed_email || current_user.requested_merge_into&.email

    - if waiting_email.present?
      %p.mb-4
        = t('.pending_change')
        %span.email-address= waiting_email
        %br
        = t('.finalize_email_change')

    - if current_user.instructeur?
      %p.mb-4
        = t('.email_explications_html',
          contact_email: CONTACT_EMAIL,
          application_name: APPLICATION_NAME,
          legit_admin_domains: LEGIT_ADMIN_DOMAINS.join(', '))

    = form_for current_user, url: update_email_path, method: :patch do |f|
      = render Dsfr::InputComponent.new(form: f, attribute: :email, input_type: :email_field, opts: { value: nil, placeholder: t('.new_email_address') })
      = f.submit t('.change_address'), class: 'fr-btn fr-btn--secondary'

  - if !instructeur_signed_in?
    .card
      .card-title= t('.transfer_title')
      = t('.transfer_explication_html')

      = form_tag transfer_all_dossiers_path  do
        .fr-input-group
          = label_tag 'next_owner', class: "fr-label"  do
            = t('.transfer_next_owner_label')
            = render EditableChamp::AsteriskMandatoryComponent.new
            %span.fr-hint-text= t('activerecord.attributes.user.hints.email')

          = email_field_tag :next_owner, nil, required: true, id: 'next_owner', class: 'fr-input'

        = submit_tag t('.transfer_my_files'), class: 'fr-btn fr-btn--secondary', data: { confirm: t('.transfer_confirmation') }

      - if @waiting_transfers.present?
        = render Dsfr::AlertComponent.new(title: t('.waiting_transfers'), state: :warning, heading_level: 'h2', extra_class_names: 'fr-mt-2w') do |c|
          - c.body do
            %ul
              - @waiting_transfers.each do |email, nb_dossier|
                %li= t('.one_waiting_transfer', email: email, count: nb_dossier)

  = render Profile::APITokenCardComponent.new

  - if @france_connect_informations.present?
    .card
      .card-title= t('.identities', count: @france_connect_informations.count, application_name: APPLICATION_NAME)
      %p= t('.linked_identities', count: @france_connect_informations.count, application_name: APPLICATION_NAME)
      %ul
        - @france_connect_informations.each do |fci|
          %li
            #{fci.given_name} #{fci.family_name} (#{fci.email_france_connect})
            = link_to t('.forbid_access'),
              france_connect_information_path(fci_id: fci.id),
              method: :delete,
              data: { confirm: t('.unlink_confirmation', full_name: fci.full_name) },
              class: 'fr-btn fr-btn--secondary fr-ml-2w'

- content_for :footer do
  = render partial: 'users/dossiers/index_footer'