From 532bec6e564884c2bd5b2bcc7cab929f4f2cabf5 Mon Sep 17 00:00:00 2001
From: Matt Jankowski <mjankowski@thoughtbot.com>
Date: Sat, 22 Apr 2017 22:22:34 -0400
Subject: [PATCH] Clean up flash display in views (#2336)

* Add flashes partial to DRY up admin/auth layouts

* Further consolidate flash messages
---
 app/helpers/flashes_helper.rb            | 7 +++++++
 app/views/application/_flashes.html.haml | 3 +++
 app/views/layouts/admin.html.haml        | 8 +-------
 app/views/layouts/auth.html.haml         | 8 +-------
 4 files changed, 12 insertions(+), 14 deletions(-)
 create mode 100644 app/helpers/flashes_helper.rb
 create mode 100644 app/views/application/_flashes.html.haml

diff --git a/app/helpers/flashes_helper.rb b/app/helpers/flashes_helper.rb
new file mode 100644
index 000000000..6c5e93709
--- /dev/null
+++ b/app/helpers/flashes_helper.rb
@@ -0,0 +1,7 @@
+# frozen_string_literal: true
+
+module FlashesHelper
+  def user_facing_flashes
+    flash.to_hash.slice('alert', 'error', 'notice', 'success')
+  end
+end
diff --git a/app/views/application/_flashes.html.haml b/app/views/application/_flashes.html.haml
new file mode 100644
index 000000000..63587e777
--- /dev/null
+++ b/app/views/application/_flashes.html.haml
@@ -0,0 +1,3 @@
+- user_facing_flashes.each do |key, value|
+  .flash-message{class: key}
+    %strong= value
diff --git a/app/views/layouts/admin.html.haml b/app/views/layouts/admin.html.haml
index 892bcd596..d2cff5e30 100644
--- a/app/views/layouts/admin.html.haml
+++ b/app/views/layouts/admin.html.haml
@@ -13,13 +13,7 @@
       .content
         %h2= yield :page_title
 
-        - if flash[:notice]
-          .flash-message.notice
-            %strong= flash[:notice]
-
-        - if flash[:alert]
-          .flash-message.alert
-            %strong= flash[:alert]
+        = render 'flashes'
 
         = yield
 
diff --git a/app/views/layouts/auth.html.haml b/app/views/layouts/auth.html.haml
index 899690419..b2ceed12a 100644
--- a/app/views/layouts/auth.html.haml
+++ b/app/views/layouts/auth.html.haml
@@ -9,13 +9,7 @@
           = image_tag 'logo.png'
 
     .form-container
-      - if flash[:notice]
-        .flash-message.notice
-          %strong= flash[:notice]
-
-      - if flash[:alert]
-        .flash-message.alert
-          %strong= flash[:alert]
+      = render 'flashes'
 
       = yield
 
-- 
GitLab