From 434d1d3042c2cc6399068beff1d72d4917ac9804 Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Sun, 16 Feb 2014 18:14:49 +0100 Subject: Install imagemagick in vagrant vm. --- vagrant/bootstrap.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vagrant/bootstrap.sh b/vagrant/bootstrap.sh index 14c42f3..7395aa7 100644 --- a/vagrant/bootstrap.sh +++ b/vagrant/bootstrap.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash pacman -Suyq --noconfirm -pacman -Sq ruby gcc make sqlite3 nodejs --noconfirm +pacman -Sq ruby gcc make sqlite3 nodejs imagemagick --noconfirm echo "export GEM_HOME=`gem env gemdir`" > /etc/profile.d/rubygems.sh source /etc/profile.d/rubygems.sh gem install bundler --no-rdoc --no-ri --no-user-install -- cgit v1.2.3 From 93421980d48b968b825922063c2dab9e9ee8cb4c Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Sun, 16 Feb 2014 19:08:29 +0100 Subject: Add refinery-banners engine. --- Gemfile | 2 ++ Gemfile.lock | 3 ++ .../refinery/pages_controller_decorator.rb | 3 ++ .../refinery/banners/shared/_banner_image.html.erb | 1 + app/views/refinery/pages/home.html.erb | 2 ++ ...5731_create_banners_banners.refinery_banners.rb | 35 ++++++++++++++++++++++ ...reate_banners_banners_pages.refinery_banners.rb | 16 ++++++++++ db/schema.rb | 24 ++++++++++++++- db/seeds.rb | 2 ++ 9 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 app/views/refinery/banners/shared/_banner_image.html.erb create mode 100644 db/migrate/20140216165731_create_banners_banners.refinery_banners.rb create mode 100644 db/migrate/20140216165732_create_banners_banners_pages.refinery_banners.rb diff --git a/Gemfile b/Gemfile index d15a0c5..bc8a239 100644 --- a/Gemfile +++ b/Gemfile @@ -57,3 +57,5 @@ gem 'refinerycms-inquiries', '~> 2.0.0' gem 'refinerycms-search', '~> 2.0.0' gem 'refinerycms-page-images', '~> 2.0.0' gem 'refinerycms-videojs' +gem 'refinerycms-pc_banners', '~> 2.0.2' + diff --git a/Gemfile.lock b/Gemfile.lock index 13c4dfe..cdb99be 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -175,6 +175,8 @@ GEM babosa (!= 0.3.6) refinerycms-core (= 2.0.10) seo_meta (~> 1.3.0) + refinerycms-pc_banners (2.0.2) + refinerycms-pages (~> 2.0.1) refinerycms-resources (2.0.10) dragonfly (~> 0.9.8) rack-cache (>= 0.5.3) @@ -238,6 +240,7 @@ DEPENDENCIES refinerycms-i18n (~> 2.0.0) refinerycms-inquiries (~> 2.0.0) refinerycms-page-images (~> 2.0.0) + refinerycms-pc_banners (~> 2.0.2) refinerycms-search (~> 2.0.0) refinerycms-videojs rvm-capistrano diff --git a/app/decorators/controllers/refinery/pages_controller_decorator.rb b/app/decorators/controllers/refinery/pages_controller_decorator.rb index d93ae9d..2e972e9 100644 --- a/app/decorators/controllers/refinery/pages_controller_decorator.rb +++ b/app/decorators/controllers/refinery/pages_controller_decorator.rb @@ -19,6 +19,9 @@ ApplicationController.class_eval do # find_all_blog_categories find_tags + + # Load active banners + @banners = Refinery::Banners::Banner.active end def populate_home_page diff --git a/app/views/refinery/banners/shared/_banner_image.html.erb b/app/views/refinery/banners/shared/_banner_image.html.erb new file mode 100644 index 0000000..7d0dc25 --- /dev/null +++ b/app/views/refinery/banners/shared/_banner_image.html.erb @@ -0,0 +1 @@ +<%= link_to(image_fu(banner_image.image, '500x'), banner_image.url) %> \ No newline at end of file diff --git a/app/views/refinery/pages/home.html.erb b/app/views/refinery/pages/home.html.erb index 66cd6b7..6207663 100644 --- a/app/views/refinery/pages/home.html.erb +++ b/app/views/refinery/pages/home.html.erb @@ -1,4 +1,6 @@ <% content_for :body do %> + <%= render :partial => 'refinery/banners/shared/banners' %> + <%= raw @page.content_for(Refinery::Pages.default_parts.first.to_sym) if Refinery::Pages.default_parts.any? %> <% if @posts.any? %> diff --git a/db/migrate/20140216165731_create_banners_banners.refinery_banners.rb b/db/migrate/20140216165731_create_banners_banners.refinery_banners.rb new file mode 100644 index 0000000..d2d1968 --- /dev/null +++ b/db/migrate/20140216165731_create_banners_banners.refinery_banners.rb @@ -0,0 +1,35 @@ +# This migration comes from refinery_banners (originally 1) +class CreateBannersBanners < ActiveRecord::Migration + + def up + create_table :refinery_banners do |t| + t.string :name + t.string :title + t.string :description + t.integer :image_id + t.string :url + t.boolean :is_active + t.date :start_date + t.date :expiry_date + t.integer :position + t.integer :position + + t.timestamps + end + + end + + def down + if defined?(::Refinery::UserPlugin) + ::Refinery::UserPlugin.destroy_all({:name => "refinerycms-banners"}) + end + + if defined?(::Refinery::Page) + ::Refinery::Page.delete_all({:link_url => "/banners/banners"}) + end + + drop_table :refinery_banners + + end + +end diff --git a/db/migrate/20140216165732_create_banners_banners_pages.refinery_banners.rb b/db/migrate/20140216165732_create_banners_banners_pages.refinery_banners.rb new file mode 100644 index 0000000..175e593 --- /dev/null +++ b/db/migrate/20140216165732_create_banners_banners_pages.refinery_banners.rb @@ -0,0 +1,16 @@ +# This migration comes from refinery_banners (originally 2) +class CreateBannersBannersPages < ActiveRecord::Migration + def self.up + create_table :refinery_banners_pages, :id => false do |t| + t.integer :page_id + t.integer :banner_id + end + + add_index :refinery_banners_pages, :page_id + add_index :refinery_banners_pages, :banner_id + end + + def self.down + drop_table :refinery_banners_pages + end +end diff --git a/db/schema.rb b/db/schema.rb index 7ef62f9..94a7af9 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,29 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20131223174901) do +ActiveRecord::Schema.define(:version => 20140216165732) do + + create_table "refinery_banners", :force => true do |t| + t.string "name" + t.string "title" + t.string "description" + t.integer "image_id" + t.string "url" + t.boolean "is_active" + t.date "start_date" + t.date "expiry_date" + t.integer "position" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + create_table "refinery_banners_pages", :id => false, :force => true do |t| + t.integer "page_id" + t.integer "banner_id" + end + + add_index "refinery_banners_pages", ["banner_id"], :name => "index_refinery_banners_pages_on_banner_id" + add_index "refinery_banners_pages", ["page_id"], :name => "index_refinery_banners_pages_on_page_id" create_table "refinery_blog_categories", :force => true do |t| t.string "title" diff --git a/db/seeds.rb b/db/seeds.rb index 8364d2f..7391f95 100644 --- a/db/seeds.rb +++ b/db/seeds.rb @@ -17,3 +17,5 @@ Refinery::Inquiries::Engine.load_seed # Added by Refinery CMS Search engine Refinery::Search::Engine.load_seed + +Refinery::Banners::Engine.load_seed -- cgit v1.2.3 From ea5d5dc4fc6923a3701eb0e0b68fdf936217233c Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Sun, 16 Feb 2014 19:08:57 +0100 Subject: Fix styling for banners - Put banners in center of container - Set minimum size of page and elements to make room for banners --- app/assets/stylesheets/_color_scheme.scss | 4 +++- app/assets/stylesheets/hmno_banners.scss | 3 +++ app/assets/stylesheets/hmno_page.scss | 13 +++++-------- 3 files changed, 11 insertions(+), 9 deletions(-) create mode 100644 app/assets/stylesheets/hmno_banners.scss diff --git a/app/assets/stylesheets/_color_scheme.scss b/app/assets/stylesheets/_color_scheme.scss index bec9288..2b9cd79 100644 --- a/app/assets/stylesheets/_color_scheme.scss +++ b/app/assets/stylesheets/_color_scheme.scss @@ -31,4 +31,6 @@ $body-bg: black; $spacing: 10px; $sidebar-width: 200px; - +$sidebar-margin: $sidebar-width + 2 * $spacing; +$min-center-width: 500px; +$min-page-width: 2 * $sidebar-margin + $min-center-width + 4 * $spacing; diff --git a/app/assets/stylesheets/hmno_banners.scss b/app/assets/stylesheets/hmno_banners.scss new file mode 100644 index 0000000..205b7c9 --- /dev/null +++ b/app/assets/stylesheets/hmno_banners.scss @@ -0,0 +1,3 @@ +#slider { + text-align: center; +} diff --git a/app/assets/stylesheets/hmno_page.scss b/app/assets/stylesheets/hmno_page.scss index 132724b..deda694 100644 --- a/app/assets/stylesheets/hmno_page.scss +++ b/app/assets/stylesheets/hmno_page.scss @@ -2,25 +2,22 @@ #page_container { background: $bg; - - margin: { - left: 5em; - right: 5em; - } + min-width: $min-page-width; #page { position: relative; min-height: 1000px; - padding: $spacing; + padding: $spacing / 2; #body_content { + min-width: $min-center-width; margin: { left: $sidebar-width + 3 * $spacing; right: $sidebar-width + 3 * $spacing; } padding: { - left: 0.5em; - right: 0.5em; + left: $spacing / 2; + right: $spacing / 2; } } -- cgit v1.2.3 From d54d4ca358206971540241bb617dc6dacb097136 Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Sun, 16 Feb 2014 19:19:18 +0100 Subject: Render banners from layout instead of modifying all views. --- app/assets/stylesheets/hmno_banners.scss | 6 ++++++ app/views/layouts/application.html.erb | 1 + app/views/refinery/pages/home.html.erb | 2 -- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/assets/stylesheets/hmno_banners.scss b/app/assets/stylesheets/hmno_banners.scss index 205b7c9..d01570e 100644 --- a/app/assets/stylesheets/hmno_banners.scss +++ b/app/assets/stylesheets/hmno_banners.scss @@ -1,3 +1,9 @@ +@import "color_scheme"; + #slider { + margin: { + left: $sidebar-margin; + right: $sidebar-margin; + } text-align: center; } diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 43e0863..6f3b70c 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -11,6 +11,7 @@
<%= render 'common/left_sidebar' %> + <%= render :partial => 'refinery/banners/shared/banners' %> <%= yield %> <%= render 'common/right_sidebar' %>
diff --git a/app/views/refinery/pages/home.html.erb b/app/views/refinery/pages/home.html.erb index 6207663..66cd6b7 100644 --- a/app/views/refinery/pages/home.html.erb +++ b/app/views/refinery/pages/home.html.erb @@ -1,6 +1,4 @@ <% content_for :body do %> - <%= render :partial => 'refinery/banners/shared/banners' %> - <%= raw @page.content_for(Refinery::Pages.default_parts.first.to_sym) if Refinery::Pages.default_parts.any? %> <% if @posts.any? %> -- cgit v1.2.3 From 92f488d04f12324613f17f3cadde3bc131d3f457 Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Sun, 16 Feb 2014 19:29:19 +0100 Subject: Display published ads instead of active. This means that ads will only be shown between their start-publishin date, and their end-publishing date. They will also only be shown on the pages where they are enabled. This allows different ads on different pages, or ads only on some pages, while others completely without ads. --- app/decorators/controllers/refinery/pages_controller_decorator.rb | 3 --- 1 file changed, 3 deletions(-) diff --git a/app/decorators/controllers/refinery/pages_controller_decorator.rb b/app/decorators/controllers/refinery/pages_controller_decorator.rb index 2e972e9..d93ae9d 100644 --- a/app/decorators/controllers/refinery/pages_controller_decorator.rb +++ b/app/decorators/controllers/refinery/pages_controller_decorator.rb @@ -19,9 +19,6 @@ ApplicationController.class_eval do # find_all_blog_categories find_tags - - # Load active banners - @banners = Refinery::Banners::Banner.active end def populate_home_page -- cgit v1.2.3