adds first 3 debates as featured_debates
This commit is contained in:
@@ -10,7 +10,7 @@ class DebatesController < ApplicationController
|
||||
else
|
||||
@debates = Debate.all.order("created_at DESC")
|
||||
end
|
||||
@featured_debates = []
|
||||
@featured_debates = @debates.to_a.shift(3)
|
||||
end
|
||||
|
||||
def show
|
||||
|
||||
41
app/views/debates/_featured_debate.html.erb
Normal file
41
app/views/debates/_featured_debate.html.erb
Normal file
@@ -0,0 +1,41 @@
|
||||
<div class="small-12 medium-4 column debates-list">
|
||||
<div class="row">
|
||||
<div class="debates-featured">
|
||||
<div id="debate-<%= featured_debate.id %>" class="small-12 column end debate">
|
||||
<div class="panel">
|
||||
<div class="debate-content">
|
||||
<span class="label left"><%= t("debates.debate.debate") %></span>
|
||||
<i class="icon-quote-right right"></i>
|
||||
|
||||
<h3><%= link_to featured_debate.title, featured_debate %></h3>
|
||||
<p class="debate-info">
|
||||
<i class="icon-chat-bubble-two"></i> <%= pluralize(featured_debate.comment_threads.count, t("debates.show.comment"), t("debates.show.comments")) %>
|
||||
</p>
|
||||
<p><%= sanitize(truncate(featured_debate.description, length: 200).html_safe) %></p>
|
||||
<p><%= render "shared/tags", debate: featured_debate %></p>
|
||||
</div>
|
||||
|
||||
<div class="row votes">
|
||||
<div class="small-12 column">
|
||||
<%= link_to debate_votes_path(featured_debate, value: "yes"), class: "like", title: t('votes.agree'), method: "post" do %>
|
||||
<i class="icon-like"></i>
|
||||
<span><%= percentage('likes', featured_debate) %></span>
|
||||
<% end %>
|
||||
|
||||
<span class="divider"></span>
|
||||
|
||||
<%= link_to debate_votes_path(featured_debate, value: "no"), class: "unlike", title: t('votes.disagree'), method: "post" do %>
|
||||
<i class="icon-unlike"></i>
|
||||
<span><%= percentage('dislikes', featured_debate) %></span>
|
||||
<% end %>
|
||||
|
||||
<span class="total-votes right">
|
||||
<%= pluralize(featured_debate.total_votes, t("debates.debate.vote"), t("debates.debate.votes")) %>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,42 +0,0 @@
|
||||
<div class="small-12 medium-4 column debates-list">
|
||||
<div class="row">
|
||||
<div class="debates-featured">
|
||||
<div id="debate-<%= debate.id %>" class="small-12 column end debate">
|
||||
<div class="panel">
|
||||
<div class="debate-content">
|
||||
<span class="label left"><%= t("debates.debate.debate") %></span>
|
||||
<i class="icon-quote-right right"></i>
|
||||
|
||||
<h3><%= link_to debate.title, debate %></h3>
|
||||
<p class="debate-info">
|
||||
<i class="icon-chat-bubble-two"></i> <%= pluralize(debate.comment_threads.count, t("debates.show.comment"), t("debates.show.comments")) %>
|
||||
</p>
|
||||
<p><%= sanitize(truncate(debate.description, length: 200).html_safe) %></p>
|
||||
<p><%= render "shared/tags", debate: debate %></p>
|
||||
</div>
|
||||
|
||||
<div class="row votes">
|
||||
<div class="small-12 column">
|
||||
<%= link_to debate_votes_path(debate, value: "yes"), class: "like", title: t('votes.agree'), method: "post" do %>
|
||||
<i class="icon-like"></i>
|
||||
<span><%= percentage('likes', debate) %></span>
|
||||
<% end %>
|
||||
|
||||
<span class="divider"></span>
|
||||
|
||||
<%= link_to debate_votes_path(debate, value: "no"), class: "unlike", title: t('votes.disagree'), method: "post" do %>
|
||||
<i class="icon-unlike"></i>
|
||||
<span><%= percentage('dislikes', debate) %></span>
|
||||
<% end %>
|
||||
|
||||
<span class="total-votes right">
|
||||
<%= pluralize(debate.total_votes, t("debates.debate.vote"), t("debates.debate.votes")) %>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,6 +1,6 @@
|
||||
<section role="main">
|
||||
<div id="featured_debates" class="row">
|
||||
<%= render @featured_debates %>
|
||||
<div id="featured-debates" class="row">
|
||||
<%= render partial: "featured_debate", collection: @featured_debates %>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div id="debates" class="small-12 medium-9 column debates-list">
|
||||
|
||||
@@ -4,10 +4,19 @@ feature 'Debates' do
|
||||
|
||||
scenario 'Index' do
|
||||
debates = [create(:debate), create(:debate), create(:debate)]
|
||||
featured_debates = [create(:debate), create(:debate), create(:debate)]
|
||||
|
||||
visit debates_path
|
||||
|
||||
expect(page).to have_selector('.debate', count: 3)
|
||||
expect(page).to have_selector('#featured-debates .debate', count: 3)
|
||||
featured_debates.each do |debate|
|
||||
within('#featured-debates') do
|
||||
expect(page).to have_content debate.title
|
||||
expect(page).to have_content debate.description
|
||||
end
|
||||
end
|
||||
|
||||
expect(page).to have_selector('#debates .debate', count: 3)
|
||||
debates.each do |debate|
|
||||
within('#debates') do
|
||||
expect(page).to have_content debate.title
|
||||
|
||||
@@ -26,14 +26,12 @@ feature 'Tags' do
|
||||
visit debates_path
|
||||
first(:link, "Salud").click
|
||||
|
||||
within('#debates') do
|
||||
expect(page).to have_css('.debate', count: 2)
|
||||
expect(page).to have_content(debate1.title)
|
||||
expect(page).to have_content(debate2.title)
|
||||
expect(page).to_not have_content(debate3.title)
|
||||
expect(page).to_not have_content(debate4.title)
|
||||
end
|
||||
end
|
||||
|
||||
scenario 'Show' do
|
||||
debate = create(:debate, tag_list: 'Hacienda, Economía')
|
||||
|
||||
Reference in New Issue
Block a user