<%#
# Show

This view is the template for the show page.
It renders the attributes of a resource,
as well as a link to its edit page.

## Local variables:

- `page`:
  An instance of [Administrate::Page::Show][1].
  Contains methods for accessing the resource to be displayed on the page,
  as well as helpers for describing how each attribute of the resource
  should be displayed.

[1]: http://www.rubydoc.info/gems/administrate/Administrate/Page/Show %>

  <% content_for(:title) do
    t("administrate.actions.show_resource", name: page.page_title)
  end %>

  <header class="main-content__header" role="banner">
    <h1 class="main-content__page-title">
      <%= content_for(:title) %>
    </h1>

    <div>
      <%= if accessible_action?(page.resource, :edit)
        link_to("Edit", [:edit, namespace, page.resource], class: "button")
      end %>
    </div>
  </header>

  <section class="main-content__body">
    <div class="pr-16">
      <% page.attributes.each do |title, attributes| %>
        <% if title.present? && title == 'all_features' %>
          <% regular_features, premium_features =
            attributes.partition do |attr|
              !SuperAdmin::AccountFeaturesHelper.account_premium_features.include?(
                attr.data.keys.first,
              )
            end %>

          <div class="space-y-4">
            <% regular_features.each do |attribute| %>
              <div class="attribute-label" id="<%= attribute.name %>">
                <%= t(
                  "helpers.label.#{resource_name}.#{attribute.name}",
                  default: page.resource.class.human_attribute_name(attribute.name),
                ) %>
              </div>

              <div class="attribute-data attribute-data--<%=attribute.html_class%>"><%= render_field attribute, page: page %></div>
            <% end %>
          </div>

          <hr class="my-8 border-n-weak">

          <div class="space-y-4">
            <% premium_features.each do |attribute| %>
              <div class="attribute-label" id="<%= attribute.name %>">
                <%= t(
                  "helpers.label.#{resource_name}.#{attribute.name}",
                  default: page.resource.class.human_attribute_name(attribute.name),
                ) %>
              </div>

              <div class="attribute-data attribute-data--<%=attribute.html_class%>"><%= render_field attribute, page: page %></div>
            <% end %>
          </div>
        <% else %>
          <fieldset class="<%= "field-unit--nested" if title.present? %>">
            <% if title.present? %>
              <legend><%= t "helpers.label.#{page.resource_name}.#{title}", default: title %></legend>
            <% end %>

            <% attributes.each do |attribute| %>
              <div class="attribute-label" id="<%= attribute.name %>">
                <%= t(
                  "helpers.label.#{resource_name}.#{attribute.name}",
                  default: page.resource.class.human_attribute_name(attribute.name),
                ) %>
              </div>

              <div class="attribute-data attribute-data--<%=attribute.html_class%>"><%= render_field attribute, page: page %></div>
            <% end %>
          </fieldset>
        <% end %>
      <% end %>
    </div>
  </section>

  <%= render 'super_admin/shared/account_user_form', page: page, namespace: namespace, resource_type: 'account' %>

  <%= render partial: "seed_data", locals: { page: page } %>

  <%= render partial: "reset_cache", locals: { page: page } %>
