Merge branch 'master' into design_layout

This commit is contained in:
Alberto Garcia Cabeza
2016-01-07 16:21:00 +01:00
13 changed files with 72 additions and 151 deletions

View File

@@ -457,7 +457,7 @@ header {
}
}
.subnavigation-container {
.subnavigation-background {
background: white;
height: rem-calc(50);
margin-top: rem-calc(-50);
@@ -473,7 +473,6 @@ header {
a {
color: white;
display: inline-block;
font-family: $font-sans;
line-height: $line-height*2;
position: relative;
text-align: left;
@@ -502,6 +501,36 @@ header {
}
}
.submenu {
background: white;
border-bottom: 1px solid $border;
clear: both;
margin: $line-height 0 $line-height/2;
a {
color: $text;
display: inline-block;
font-weight: bold;
margin-right: $line-height;
margin-right: 12px\9;
position: relative;
text-align: left;
@media (min-width: $small-breakpoint) {
margin-right: $line-height*1.5;
}
&:hover {
color: $link;
}
&.active {
border-bottom: 2px solid $brand;
color: $brand;
}
}
}
// 03. Footer
// - - - - - - - - - - - - - - - - - - - - - - - - -

View File

@@ -7,7 +7,7 @@ class DebatesController < ApplicationController
before_action :set_search_order, only: :index
before_action :authenticate_user!, except: [:index, :show]
has_orders %w{hot_score confidence_score created_at most_commented random relevance}, only: :index
has_orders %w{hot_score confidence_score created_at relevance}, only: :index
has_orders %w{most_voted newest oldest}, only: :show
load_and_authorize_resource

View File

@@ -7,7 +7,7 @@ class ProposalsController < ApplicationController
before_action :set_search_order, only: :index
before_action :authenticate_user!, except: [:index, :show]
has_orders %w{hot_score confidence_score created_at most_commented random relevance}, only: :index
has_orders %w{hot_score confidence_score created_at relevance}, only: :index
has_orders %w{most_voted newest oldest}, only: :show
load_and_authorize_resource

View File

@@ -24,21 +24,7 @@
<% end %>
</div>
<% if @tag_filter || @search_terms %>
<div class="small-12 medium-5 margin-top inline-block debates-order">
<h6 class="inline-block">
<%= t("debates.index.select_order") %>
</h6>
<%= render 'shared/order_selector', i18n_namespace: "debates.index" %>
</div>
<% else %>
<div class="small-12 inline-block">
<h2 class="inline-block">
<%= t("debates.index.select_order_long") %>
</h2>
<%= render 'shared/order_selector', i18n_namespace: "debates.index" %>
</div>
<% end %>
<%= render 'shared/order_links', i18n_namespace: "debates.index" %>
<div class="show-for-small-only">
<%= link_to t("debates.index.start_debate"), new_debate_path, class: 'button radius expand' %>

View File

@@ -49,7 +49,7 @@
</nav>
</div>
<div class="row-full subnavigation-container"></div>
<div class="row-full subnavigation-background"></div>
<% if home_page? %>
<div class="row home-page">

View File

@@ -24,21 +24,7 @@
<% end %>
</div>
<% if @tag_filter || @search_terms %>
<div class="small-12 medium-5 margin-top margin-top inline-block proposals-order">
<h6 class="inline-block">
<%= t("proposals.index.select_order") %>
</h6>
<%= render 'shared/order_selector', i18n_namespace: "proposals.index" %>
</div>
<% else %>
<div class="small-12 inline-block">
<h2 class="inline-block">
<%= t("proposals.index.select_order_long") %>
</h2>
<%= render 'shared/order_selector', i18n_namespace: "proposals.index" %>
</div>
<% end %>
<%= render 'shared/order_links', i18n_namespace: "proposals.index" %>
<div class="show-for-small-only">
<%= link_to t("proposals.index.start_proposal"), new_proposal_path, class: 'button radius expand' %>

View File

@@ -0,0 +1,7 @@
<section class="submenu">
<% valid_orders.each do |order| %>
<%= link_to t("#{i18n_namespace}.orders.#{order}"),
current_path_with_query_params(order: order, page: 1),
class: order == @current_order ? 'active' : '' %>
<% end %>
</section>

View File

@@ -1,5 +1,5 @@
<form class="inline-block">
<label for="order-selector-participation" class="sr-only"><%= t("debates.index.select_order") %></label>
<label for="order-selector-participation" class="sr-only"><%= t("#{i18n_namespace}.select_order") %></label>
<select class="js-location-changer js-order-selector select-order"
data-order="<%= @current_order %>"
name="order-selector"

View File

@@ -121,8 +121,10 @@ ignore_unused:
- 'moderation.debates.index.filter*'
- 'moderation.debates.index.order*'
- 'users.show.filters.*'
- 'debates.index.select_order'
- 'debates.index.orders.*'
- 'debates.index.search_form.*'
- 'proposals.index.select_order'
- 'proposals.index.orders.*'
- 'proposals.index.search_form.*'
- 'helpers.page_entries_info.*' # kaminari

View File

@@ -82,13 +82,11 @@ en:
featured_debates_html: "Featured<br>debates"
start_debate: "Start a debate"
select_order: "Order by"
select_order_long: "You are viewing debates according to:"
orders:
confidence_score: "highest rated"
hot_score: "most active"
created_at: "newest"
most_commented: "most commented"
random: "random"
relevance: "relevance"
filter_topic:
one: " with topic '%{topic}'"
@@ -158,14 +156,13 @@ en:
title: "Proposals"
featured_proposals_html: "Featured<br>proposals"
start_proposal: "Create a proposal"
select_order: "Order by"
select_order_long: "You are viewing proposals according to:"
select_order: "Order by"
orders:
confidence_score: "highest rated"
hot_score: "most active"
created_at: "newest"
most_commented: "most commented"
random: "random"
relevance: "relevance"
filter_topic:
one: " with topic '%{topic}'"

View File

@@ -82,14 +82,12 @@ es:
featured_debates_html: "Debates<br>destacados"
start_debate: "Empieza un debate"
select_order: "Ordenar por"
select_order_long: "Estás viendo los debates"
orders:
confidence_score: "mejor valorados"
hot_score: "más activos"
created_at: "más nuevos"
most_commented: "más comentados"
random: "aleatorio"
relevance: "relevancia"
confidence_score: "Mejor valorados"
hot_score: "Más activos hoy"
created_at: "Nuevos"
most_commented: "Más comentados"
relevance: "Más relevantes"
filter_topic:
one: " con el tema '%{topic}'"
other: " con el tema '%{topic}'"
@@ -158,15 +156,14 @@ es:
title: "Propuestas ciudadanas"
featured_proposals_html: "Propuestas<br>destacadas"
start_proposal: "Crea una propuesta"
select_order_long: "Estas viendo las propuestas"
select_order: "Ordenar por"
select_order_long: "Estás viendo las propuestas"
orders:
confidence_score: "más apoyadas"
hot_score: "más activas hoy"
created_at: "más nuevas"
most_commented: "más comentadas"
random: "aleatorias"
relevance: "relevancia"
confidence_score: "Más apoyadas"
hot_score: "Más activas hoy"
created_at: "Nuevas"
most_commented: "Más comentadas"
relevance: "Más relevantes"
filter_topic:
one: " con el tema '%{topic}'"
other: " con el tema '%{topic}'"

View File

@@ -419,9 +419,9 @@ feature 'Debates' do
create(:debate, title: 'Medium').update_column(:confidence_score, 5)
visit debates_path
select 'highest rated', from: 'order-selector'
click_link 'highest rated'
expect(page).to have_selector('.js-order-selector[data-order="confidence_score"]')
expect(page).to have_selector('a.active', text: 'highest rated')
within '#debates' do
expect('Best').to appear_before('Medium')
@@ -432,34 +432,15 @@ feature 'Debates' do
expect(current_url).to include('page=1')
end
scenario 'Debates are ordered by most commented', :js do
create(:debate, title: 'Best', comments_count: 10)
create(:debate, title: 'Medium', comments_count: 5)
create(:debate, title: 'Worst', comments_count: 2)
visit debates_path
select 'most commented', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="most_commented"]')
within '#debates' do
expect('Best').to appear_before('Medium')
expect('Medium').to appear_before('Worst')
end
expect(current_url).to include('order=most_commented')
expect(current_url).to include('page=1')
end
scenario 'Debates are ordered by newest', :js do
create(:debate, title: 'Best', created_at: Time.now)
create(:debate, title: 'Medium', created_at: Time.now - 1.hour)
create(:debate, title: 'Worst', created_at: Time.now - 1.day)
visit debates_path
select 'newest', from: 'order-selector'
click_link 'newest'
expect(page).to have_selector('.js-order-selector[data-order="created_at"]')
expect(page).to have_selector('a.active', text: 'newest')
within '#debates' do
expect('Best').to appear_before('Medium')
@@ -469,25 +450,6 @@ feature 'Debates' do
expect(current_url).to include('order=created_at')
expect(current_url).to include('page=1')
end
scenario 'Debates are ordered randomly', :js do
create_list(:debate, 12)
visit debates_path
select 'random', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="random"]')
debates_first_time = find("#debates").text
select 'most commented', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="most_commented"]')
select 'random', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="random"]')
debates_second_time = find("#debates").text
expect(debates_first_time).to_not eq(debates_second_time)
expect(current_url).to include('page=1')
end
end
scenario 'Debate index search' do
@@ -524,7 +486,7 @@ feature 'Debates' do
fill_in "search", with: "Show what you got"
click_button "Search"
expect(page).to have_selector('.js-order-selector[data-order="relevance"]')
expect(page).to have_selector('a.active', text: "relevance")
within("#debates") do
expect(all(".debate")[0].text).to match "Show what you got"
@@ -543,8 +505,8 @@ feature 'Debates' do
fill_in "search", with: "Show what you got"
click_button "Search"
select 'newest', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="created_at"]')
click_link "newest"
expect(page).to have_selector('a.active', text: "Newest")
within("#debates") do
expect(all(".debate")[0].text).to match "Show you got"

View File

@@ -482,9 +482,8 @@ feature 'Proposals' do
create(:proposal, title: 'Medium proposal').update_column(:confidence_score, 5)
visit proposals_path
select 'highest rated', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="confidence_score"]')
click_link 'highest rated'
expect(page).to have_selector('a.active', text: 'highest rated')
within '#proposals' do
expect('Best proposal').to appear_before('Medium proposal')
@@ -495,27 +494,6 @@ feature 'Proposals' do
expect(current_url).to include('page=1')
end
scenario 'Proposals are ordered by most commented', :js do
create_featured_proposals
create(:proposal, title: 'Best proposal', comments_count: 10)
create(:proposal, title: 'Medium proposal', comments_count: 5)
create(:proposal, title: 'Worst proposal', comments_count: 2)
visit proposals_path
select 'most commented', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="most_commented"]')
within '#proposals' do
expect('Best proposal').to appear_before('Medium proposal')
expect('Medium proposal').to appear_before('Worst proposal')
end
expect(current_url).to include('order=most_commented')
expect(current_url).to include('page=1')
end
scenario 'Proposals are ordered by newest', :js do
create_featured_proposals
@@ -524,9 +502,8 @@ feature 'Proposals' do
create(:proposal, title: 'Worst proposal', created_at: Time.now - 1.day)
visit proposals_path
select 'newest', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="created_at"]')
click_link 'newest'
expect(page).to have_selector('a.active', text: 'newest')
within '#proposals' do
expect('Best proposal').to appear_before('Medium proposal')
@@ -536,27 +513,6 @@ feature 'Proposals' do
expect(current_url).to include('order=created_at')
expect(current_url).to include('page=1')
end
scenario 'Proposals are ordered randomly', :js do
create_featured_proposals
create_list(:proposal, 12)
visit proposals_path
select 'random', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="random"]')
proposals_first_time = find("#proposals").text
select 'most commented', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="most_commented"]')
select 'random', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="random"]')
proposals_second_time = find("#proposals").text
expect(proposals_first_time).to_not eq(proposals_second_time)
expect(current_url).to include('page=1')
end
end
scenario 'Proposal index search' do
@@ -593,7 +549,7 @@ feature 'Proposals' do
fill_in "search", with: "Show what you got"
click_button "Search"
expect(page).to have_selector('.js-order-selector[data-order="relevance"]')
expect(page).to have_selector("a.active", text: "relevance")
within("#proposals") do
expect(all(".proposal")[0].text).to match "Show what you got"
@@ -611,9 +567,8 @@ feature 'Proposals' do
visit proposals_path
fill_in "search", with: "Show what you got"
click_button "Search"
select 'newest', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="created_at"]')
click_link 'newest'
expect(page).to have_selector("a.active", text: "newest")
within("#proposals") do
expect(all(".proposal")[0].text).to match "Show you got"