Load banner config from config/banners.yml
authorBryan Housel <bryan@mapbox.com>
Wed, 22 Jun 2016 17:37:57 +0000 (13:37 -0400)
committerBryan Housel <bryan@mapbox.com>
Wed, 22 Jun 2016 17:37:57 +0000 (13:37 -0400)
app/helpers/banner_helper.rb
config/banners.yml [new file with mode: 0644]
config/initializers/banners.rb [new file with mode: 0644]

index 589df76..af7d5a6 100644 (file)
@@ -1,26 +1,7 @@
 module BannerHelper
 
-  def all_banners()
-    {
-      :sotmus2016 => {
-        :id => 'sotmus2016',
-        :alt => 'State of the Map US 2016',
-        :link => 'http://stateofthemap.us/',
-        :img => 'banners/sotmus-2016.jpg',
-        :enddate => '2016-jul-23'
-      },
-      :sotm2016 => {
-        :id => 'sotm2016',
-        :alt => 'State of the Map 2016',
-        :link => 'http://2016.stateofthemap.org/',
-        :img => 'banners/sotm-2016.jpg',
-        :enddate => '2016-sep-23'
-      }
-    }
-  end
-
   def active_banners()
-    all_banners().reject do |k,v|
+    BANNERS.reject do |k,v|
       enddate = v[:enddate]
       parsed = (enddate and Date.parse enddate rescue nil)
       parsed.is_a?(Date) and parsed.past?
diff --git a/config/banners.yml b/config/banners.yml
new file mode 100644 (file)
index 0000000..040b40e
--- /dev/null
@@ -0,0 +1,13 @@
+sotmus2016:
+  id: sotmus2016
+  alt: State of the Map US 2016
+  link: http://stateofthemap.us/
+  img: banners/sotmus-2016.jpg
+  enddate: 2016-jul-23
+
+sotm2016:
+  id: sotm2016
+  alt: State of the Map 2016
+  link: http://2016.stateofthemap.org/
+  img: banners/sotm-2016.jpg
+  enddate: 2016-sep-23
diff --git a/config/initializers/banners.rb b/config/initializers/banners.rb
new file mode 100644 (file)
index 0000000..5409f45
--- /dev/null
@@ -0,0 +1 @@
+BANNERS = YAML.load_file("#{Rails.root}/config/banners.yml").deep_symbolize_keys rescue {}