Submit social housing lettings and sales data (CORE)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

172 lines
6.8 KiB

<% content_for :title, current_user == @user ? "Your account" : "#{@user.name.presence || @user.email}’s account" %>
1 year ago
<% if current_user.support? %>
<% content_for :breadcrumbs, govuk_breadcrumbs(breadcrumbs: {
"Home" => root_path,
1 year ago
"Users (#{@user.organisation.name})" => users_organisation_path(@user.organisation),
}) %>
<% else %>
<% content_for :before_content do %>
<%= govuk_back_link(href: users_path) %>
<% end %>
<% end %>
<% if display_pending_email_change_banner?(@user) %>
<%= govuk_notification_banner(title_text: "Important") do %>
<p class="govuk-notification-banner__heading govuk-!-width-full" style="max-width: fit-content">
<%= pending_email_change_title_text(current_user, @user) %>
</p>
<%= pending_email_change_banner_text(current_user) %>
<% end %>
<% end %>
<div class="govuk-grid-row">
<div class="govuk-grid-column-two-thirds">
<h1 class="govuk-heading-l">
<%= content_for(:title) %>
</h1>
<h2 class="govuk-heading-m">
Personal details
</h2>
<%= govuk_summary_list do |summary_list| %>
<%= summary_list.with_row do |row|
row.with_key { "Name" }
row.with_value { @user.name }
if UserPolicy.new(current_user, @user).edit_names?
row.with_action(visually_hidden_text: "name", href: aliased_user_edit(@user, current_user), html_attributes: { "data-qa": "change-name" })
else
row.with_action
end
end %>
<%= summary_list.with_row do |row|
row.with_key { "Email address" }
row.with_value { @user.email }
if UserPolicy.new(current_user, @user).edit_emails?
row.with_action(visually_hidden_text: "email address", href: aliased_user_edit(@user, current_user), html_attributes: { "data-qa": "change-email-address" })
else
row.with_action
end
end %>
<%= summary_list.with_row do |row|
row.with_key { "Telephone number" }
row.with_value { user_details_html(@user, current_user, "phone") }
if UserPolicy.new(current_user, @user).edit_telephone_numbers? && @user.phone.present?
row.with_action(
1 week ago
text: user_action_text(@user, "phone"),
visually_hidden_text: "telephone number",
href: aliased_user_edit(@user, current_user),
html_attributes: { "data-qa": "change-telephone-number" },
)
else
row.with_action
end
end %>
<%= summary_list.with_row do |row|
row.with_key { "Password" }
row.with_value { "••••••••" }
if UserPolicy.new(current_user, @user).edit_password?
row.with_action(
visually_hidden_text: "password",
href: edit_password_account_path,
html_attributes: { "data-qa": "change-password" },
)
else
row.with_action
end
end %>
<%= summary_list.with_row do |row|
row.with_key { "Organisation" }
row.with_value { current_user.support? ? govuk_link_to(@user.organisation.name, lettings_logs_organisation_path(@user.organisation)) : @user.organisation.name }
if UserPolicy.new(current_user, @user).edit_organisation?
row.with_action(
visually_hidden_text: "organisation",
href: aliased_user_edit(@user, current_user),
html_attributes: { "data-qa": "change-organisation" },
)
else
row.with_action
end
end %>
<%= summary_list.with_row do |row|
row.with_key { "Role" }
row.with_value { user_details_html(@user, current_user, "role") }
if UserPolicy.new(current_user, @user).edit_roles? && @user.role
row.with_action(
1 week ago
text: user_action_text(@user, "role"),
visually_hidden_text: "role",
href: aliased_user_edit(@user, current_user),
html_attributes: { "data-qa": "change-role" },
)
else
row.with_action
end
end %>
<%= summary_list.with_row do |row|
row.with_key { "Data protection officer" }
row.with_value { @user.is_data_protection_officer? ? "Yes" : "No" }
if UserPolicy.new(current_user, @user).edit_dpo?
row.with_action(
visually_hidden_text: "if data protection officer",
href: user_edit_dpo_path(@user),
html_attributes: { "data-qa": "change-data-protection-officer" },
)
else
row.with_action
end
end %>
<%= summary_list.with_row do |row|
row.with_key { "Key contact" }
row.with_value { @user.is_key_contact? ? "Yes" : "No" }
if UserPolicy.new(current_user, @user).edit_key_contact?
row.with_action(
visually_hidden_text: "if a key contact",
href: user_edit_key_contact_path(@user),
html_attributes: { "data-qa": "change-key-contact" },
)
else
row.with_action
end
end %>
<%= summary_list.with_row do |row| %>
<% row.with_key { "Status" } %>
<% row.with_value do %>
<%= details_html({ name: "Status", value: status_tag(@user.status), id: "status" }) %>
<% if @user.status == :deactivated && current_user.support? && !UserPolicy.new(current_user, @user).delete? %>
<span class="app-!-colour-muted">This user was active in an open or editable collection year, and cannot be deleted.</span>
<% end %>
<% end %>
<% end %>
<%= summary_list.with_row do |row|
row.with_key { "Last logged in" }
row.with_value { @user.last_sign_in_at&.to_formatted_s(:govuk_date) }
end %>
<% end %>
<% if @user.organisation.active? && current_user.can_toggle_active?(@user) %>
<div class="govuk-button-group">
<% if @user.active? %>
<%= govuk_button_link_to "Deactivate user", deactivate_user_path(@user), warning: true %>
<% if current_user.support? && @user.last_sign_in_at.nil? %>
<%= govuk_button_to "Resend invite link", resend_invite_user_path(@user), secondary: true %>
<% end %>
<% else %>
<span class="app-!-colour-muted govuk-!-margin-right-2">
<%= govuk_button_link_to "Reactivate user", reactivate_user_path(@user) %>
</span>
<% end %>
<% end %>
<% if UserPolicy.new(current_user, @user).delete? %>
<%= delete_user_link(@user) %>
<% end %>
</div>
</div>
</div>