Add widget header to homepage
This commit is contained in:
@@ -1,11 +1,16 @@
|
|||||||
class Admin::HomepageController < Admin::BaseController
|
class Admin::HomepageController < Admin::BaseController
|
||||||
|
|
||||||
def show
|
def show
|
||||||
|
load_header
|
||||||
load_cards
|
load_cards
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
|
def load_header
|
||||||
|
@header = ::Widget::Card.header
|
||||||
|
end
|
||||||
|
|
||||||
def load_settings
|
def load_settings
|
||||||
settings = /feature.homepage.widgets/
|
settings = /feature.homepage.widgets/
|
||||||
@settings = Setting.select {|setting| setting.key =~ /#{settings}/ }
|
@settings = Setting.select {|setting| setting.key =~ /#{settings}/ }
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ class WelcomeController < ApplicationController
|
|||||||
layout "devise", only: [:welcome, :verification]
|
layout "devise", only: [:welcome, :verification]
|
||||||
|
|
||||||
def index
|
def index
|
||||||
|
@header = Widget::Card.header.first
|
||||||
@cards = Widget::Card.body
|
@cards = Widget::Card.body
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,18 @@
|
|||||||
<h1>Homepage</h1>
|
<h1>Homepage</h1>
|
||||||
|
|
||||||
<p>The active modules appear in the homepage in the same order as here.</p>
|
<p>The active modules appear in the homepage in the same order as here.</p>
|
||||||
|
|
||||||
|
<div id="header">
|
||||||
|
<% if @header.present? %>
|
||||||
|
<%= render "cards", cards: @header %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
|
||||||
<h2>Cards</h2>
|
<h2>Cards</h2>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<%= link_to "Create header", new_admin_widget_card_path(header_card: true) %>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<%= link_to "Create card", new_admin_widget_card_path %>
|
<%= link_to "Create card", new_admin_widget_card_path %>
|
||||||
@@ -14,6 +24,7 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<% @settings.each do |setting| %>
|
<% @settings.each do |setting| %>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
|
|||||||
13
app/views/welcome/_header.html.erb
Normal file
13
app/views/welcome/_header.html.erb
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<% if header.present? %>
|
||||||
|
<%= header.title %>
|
||||||
|
<%= header.description %>
|
||||||
|
|
||||||
|
<% if header.image.present? %>
|
||||||
|
<%= image_tag(header.image_url(:large),
|
||||||
|
class: "margin",
|
||||||
|
alt: header.image.title) %>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<%= link_to header.button_text, header.button_url %>
|
||||||
|
<%= header.alignment %>
|
||||||
|
<% end %>
|
||||||
@@ -23,7 +23,9 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<%= render "header", header: @header %>
|
||||||
<%= render "cards" %>
|
<%= render "cards" %>
|
||||||
|
|
||||||
<% if feature?("user.recommendations") && (@recommended_debates.present? || @recommended_proposals.present?) %>
|
<% if feature?("user.recommendations") && (@recommended_debates.present? || @recommended_proposals.present?) %>
|
||||||
<%= render "recommended",
|
<%= render "recommended",
|
||||||
recommended_debates: @recommended_debates,
|
recommended_debates: @recommended_debates,
|
||||||
|
|||||||
@@ -7,6 +7,9 @@ feature 'Homepage' do
|
|||||||
login_as(admin)
|
login_as(admin)
|
||||||
|
|
||||||
end
|
end
|
||||||
|
scenario "Header" do
|
||||||
|
end
|
||||||
|
|
||||||
scenario "Cards" do
|
scenario "Cards" do
|
||||||
card1 = create(:widget_card, title: "Card text",
|
card1 = create(:widget_card, title: "Card text",
|
||||||
description: "Card description",
|
description: "Card description",
|
||||||
|
|||||||
Reference in New Issue
Block a user