From 881059811f4f7ebbf41347846102d4701c1d870e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mar=C3=ADa=20Checa?= Date: Fri, 9 Feb 2018 17:52:34 +0100 Subject: [PATCH] Added newsletter admin views --- app/views/admin/_menu.html.erb | 13 ++++-- app/views/admin/newsletters/_form.html.erb | 14 ++++++ app/views/admin/newsletters/edit.html.erb | 4 ++ app/views/admin/newsletters/index.html.erb | 48 +++++++++++++++++++- app/views/admin/newsletters/new.html.erb | 4 ++ app/views/admin/newsletters/show.html.erb | 51 ++++++++++++++++++++++ 6 files changed, 128 insertions(+), 6 deletions(-) create mode 100644 app/views/admin/newsletters/_form.html.erb create mode 100644 app/views/admin/newsletters/edit.html.erb create mode 100644 app/views/admin/newsletters/new.html.erb create mode 100644 app/views/admin/newsletters/show.html.erb diff --git a/app/views/admin/_menu.html.erb b/app/views/admin/_menu.html.erb index 41500e376..6a63583a0 100644 --- a/app/views/admin/_menu.html.erb +++ b/app/views/admin/_menu.html.erb @@ -199,11 +199,16 @@ <% end %> -
  • > - <%= link_to admin_newsletters_path do %> +
  • + - <%= t("admin.menu.newsletter") %> - <% end %> + <%= t("admin.menu.emails") %> + +
  • diff --git a/app/views/admin/newsletters/_form.html.erb b/app/views/admin/newsletters/_form.html.erb new file mode 100644 index 000000000..2631cfc10 --- /dev/null +++ b/app/views/admin/newsletters/_form.html.erb @@ -0,0 +1,14 @@ +<%= form_for [:admin, @newsletter] do |f| %> + <%= render 'shared/errors', resource: @newsletter %> + + <%= f.select :segment_recipient, options_for_select(Newsletter.segment_recipients + .collect { |k,v| [t("admin.segment_recipient.#{k}"), v] }, + @newsletter[:segment_recipient]) %> + <%= f.text_field :subject %> + <%= f.text_field :from %> + <%= f.cktext_area :body, ckeditor: { language: I18n.locale } %> + +
    + <%= f.submit class: "button success" %> +
    +<% end %> diff --git a/app/views/admin/newsletters/edit.html.erb b/app/views/admin/newsletters/edit.html.erb new file mode 100644 index 000000000..bfe641020 --- /dev/null +++ b/app/views/admin/newsletters/edit.html.erb @@ -0,0 +1,4 @@ +<%= back_link_to %> +

    <%= t("admin.newsletters.edit.title") %>

    + +<%= render "form" %> diff --git a/app/views/admin/newsletters/index.html.erb b/app/views/admin/newsletters/index.html.erb index b7b43c6fc..c94a2c046 100644 --- a/app/views/admin/newsletters/index.html.erb +++ b/app/views/admin/newsletters/index.html.erb @@ -1,3 +1,47 @@ -

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

    +

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

    +<%= link_to t("admin.newsletters.index.new_newsletter"), new_admin_newsletter_path, + class: "button float-right" %> -<%= link_to t("admin.newsletters.index.button"), users_admin_newsletters_path, class: "button" %> \ No newline at end of file +<% if @newsletters.any? %> + + + + + + + + + + + <% @newsletters.order(created_at: :desc).each do |newsletter| %> + + + + + + + <% end %> + +
    <%= t("admin.newsletters.index.subject") %><%= t("admin.newsletters.index.segment_recipient") %><%= t("admin.newsletters.index.sent") %><%= t("admin.newsletters.index.actions") %>
    +<% else %> +
    + <%= t("admin.newsletters.index.empty_newsletters") %> +
    +<% end %> diff --git a/app/views/admin/newsletters/new.html.erb b/app/views/admin/newsletters/new.html.erb new file mode 100644 index 000000000..d84cac6bf --- /dev/null +++ b/app/views/admin/newsletters/new.html.erb @@ -0,0 +1,4 @@ +<%= back_link_to %> +

    <%= t("admin.newsletters.new.title") %>

    + +<%= render "form" %> diff --git a/app/views/admin/newsletters/show.html.erb b/app/views/admin/newsletters/show.html.erb new file mode 100644 index 000000000..a4da2a746 --- /dev/null +++ b/app/views/admin/newsletters/show.html.erb @@ -0,0 +1,51 @@ +<%= back_link_to %> + +

    <%= t("admin.newsletters.show.title") %>

    + +<%- recipients_count = @newsletter.list_of_recipients.count %> + +
    +
    +
    +
    + <%= t("admin.newsletters.show.sent_at") %>
    + <% if @newsletter.draft? %> + <%= t("admin.newsletters.index.draft") %> + <% else %> + <%= l @newsletter.sent_at.to_date %> + <% end %> +
    +
    + <%= t("admin.newsletters.show.from") %>
    + <%= @newsletter.from %> +
    +
    + <%= t("admin.newsletters.show.subject") %>
    + <%= @newsletter.subject %> +
    +
    +
    +
    + <%= t("admin.newsletters.show.segment_recipient") %>
    + <%= t("admin.segment_recipient.#{@newsletter.segment_recipient}") %> + <%= t("admin.newsletters.show.affected_users", n: recipients_count) %> +
    +
    +
    + + <%= t("admin.newsletters.show.body") %> +

    + <%= t("admin.newsletters.show.body_help_text") %> +

    + +
    + +<% if @newsletter.draft? %> + <%= link_to t("admin.newsletters.show.send"), deliver_admin_newsletter_path(@newsletter), + "data-alert": t("admin.newsletters.show.send_alert", n: recipients_count), + method: :post, + id: "js-send-newsletter-alert", + class: "button success" %> +<% end %>