diff --git a/app/components/admin/site_customization/images/index_component.html.erb b/app/components/admin/site_customization/images/index_component.html.erb new file mode 100644 index 000000000..a6357caed --- /dev/null +++ b/app/components/admin/site_customization/images/index_component.html.erb @@ -0,0 +1,22 @@ +<%= header %> + + + + + + + + + + <% images.each do |image| %> + + + + + <% end %> + +
<%= t("admin.site_customization.images.index.image") %><%= t("admin.actions.actions") %>
+ <%= image.name %> (<%= image.required_width %>x<%= image.required_height %>) + + <%= render Admin::SiteCustomization::Images::TableActionsComponent.new(image) %> +
diff --git a/app/components/admin/site_customization/images/index_component.rb b/app/components/admin/site_customization/images/index_component.rb new file mode 100644 index 000000000..14648cc9b --- /dev/null +++ b/app/components/admin/site_customization/images/index_component.rb @@ -0,0 +1,14 @@ +class Admin::SiteCustomization::Images::IndexComponent < ApplicationComponent + include Header + attr_reader :images + + def initialize(images) + @images = images + end + + private + + def title + t("admin.site_customization.images.index.title") + end +end diff --git a/app/components/admin/site_customization/images/table_actions_component.html.erb b/app/components/admin/site_customization/images/table_actions_component.html.erb new file mode 100644 index 000000000..dbb1e106a --- /dev/null +++ b/app/components/admin/site_customization/images/table_actions_component.html.erb @@ -0,0 +1,12 @@ +
+ <%= form_for([:admin, image], html: { id: "edit_#{dom_id(image)}" }) do |f| %> +
+ <%= image_tag image.image if image.persisted_attachment? %> + <%= f.file_field :image, label: false %> +
+
+ <%= f.submit(t("admin.site_customization.images.index.update"), class: "button hollow") %> + <%= link_to t("admin.site_customization.images.index.delete"), admin_site_customization_image_path(image), method: :delete, class: "button hollow alert" if image.persisted_attachment? %> +
+ <% end %> +
diff --git a/app/components/admin/site_customization/images/table_actions_component.rb b/app/components/admin/site_customization/images/table_actions_component.rb new file mode 100644 index 000000000..ee4b3a20d --- /dev/null +++ b/app/components/admin/site_customization/images/table_actions_component.rb @@ -0,0 +1,7 @@ +class Admin::SiteCustomization::Images::TableActionsComponent < ApplicationComponent + attr_reader :image + + def initialize(image) + @image = image + end +end diff --git a/app/views/admin/site_customization/images/index.html.erb b/app/views/admin/site_customization/images/index.html.erb index 354c3626c..e34996508 100644 --- a/app/views/admin/site_customization/images/index.html.erb +++ b/app/views/admin/site_customization/images/index.html.erb @@ -1,31 +1 @@ -

<%= t("admin.site_customization.images.index.title") %>

- - - - - - - - - - <% @images.each do |image| %> - - - - - <% end %> - -
<%= t("admin.site_customization.images.index.image") %><%= t("admin.actions.actions") %>
- <%= image.name %> (<%= image.required_width %>x<%= image.required_height %>) - - <%= form_for([:admin, image], html: { id: "edit_#{dom_id(image)}" }) do |f| %> -
- <%= image_tag image.image if image.persisted_attachment? %> - <%= f.file_field :image, label: false %> -
-
- <%= f.submit(t("admin.site_customization.images.index.update"), class: "button hollow") %> - <%= link_to t("admin.site_customization.images.index.delete"), admin_site_customization_image_path(image), method: :delete, class: "button hollow alert" if image.persisted_attachment? %> -
- <% end %> -
+<%= render Admin::SiteCustomization::Images::IndexComponent.new(@images) %>