<%= f.label :title, t("proposals.form.proposal_title") %>
- <%= f.text_field :title, maxlength: Proposal.title_max_length, placeholder: t("proposals.form.proposal_title"), label: false, data: {ajax_target: "ajax_suggest", ajax_show: "#ajax_suggest_show", ajax_url: suggest_proposals_path}%>
+ <%= f.text_field :title, maxlength: Proposal.title_max_length, placeholder: t("proposals.form.proposal_title"), label: false, data: {js_suggest_result: "js_suggest_result", js_suggest: "#js-suggest", js_url: suggest_proposals_path}%>
<%= f.label :question, t("proposals.form.proposal_question") %>
diff --git a/app/views/proposals/_suggest.html.erb b/app/views/proposals/_suggest.html.erb
new file mode 100644
index 000000000..fe94f7fc9
--- /dev/null
+++ b/app/views/proposals/_suggest.html.erb
@@ -0,0 +1,22 @@
+
+ <% if @search_terms && @resources_count > 0 %>
+
+
+ <%= t("proposals.new.suggestions.found", count: @resources_count, query: @search_terms)%>
+
+
+ <% @proposals.take(@reg_show).each do |proposal| %>
+ - <%= link_to proposal.title, proposal %>
+ <% end %>
+
+ <% if @resources_count > @reg_show %>
+
+ <%= t("proposals.new.suggestions.message", count: @resources_count,
+ query: @search_terms,
+ limit: @reg_show) %>
+ <%= link_to t("proposals.new.suggestions.see_all"), proposals_path(search: @search_terms)%>
+
+ <% end %>
+
+ <% end %>
+
\ No newline at end of file
diff --git a/app/views/proposals/suggest.html.erb b/app/views/proposals/suggest.html.erb
deleted file mode 100644
index 4d66be41f..000000000
--- a/app/views/proposals/suggest.html.erb
+++ /dev/null
@@ -1,25 +0,0 @@
-
- <% if @search_terms && @proposals.count >0 %>
- <% proposals_count = @proposals.count %>
- <% query = @search_terms %>
- <% limit = 5 %>
-
-
- <%= t("proposals.new.suggestions.found", count: proposals_count, query: query)%>
-
-
- <% @proposals.take(limit).each do |proposal| %>
- - <%= link_to proposal.title, proposal %>
- <% end %>
-
- <% if proposals_count > limit %>
-
- <%= t("proposals.new.suggestions.message", count: proposals_count,
- query: query,
- limit: limit)%>
- <%= link_to t("proposals.new.suggestions.see_all"), proposals_path(:search => query)%>
-
- <% end %>
-
- <% end %>
-
\ No newline at end of file
diff --git a/app/views/proposals/suggest.js.erb b/app/views/proposals/suggest.js.erb
new file mode 100644
index 000000000..de10bc0ad
--- /dev/null
+++ b/app/views/proposals/suggest.js.erb
@@ -0,0 +1 @@
+<%= render "suggest" %>
\ No newline at end of file
diff --git a/config/locales/en.yml b/config/locales/en.yml
index d0bd253ca..583fcf496 100755
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -125,7 +125,7 @@ en:
found:
one: "There is a debate with the term '%{query}', you can participate in it instead of opening a new one."
other: "There are debates with the term '%{query}', you can participate in them instead of opening a new one."
- message: "You are seeing %{limit} of %{count} debates containing the term %{query}"
+ message: "You are seeing %{limit} of %{count} debates containing the term '%{query}'"
see_all: "See all"
show:
author_deleted: User deleted
@@ -308,9 +308,9 @@ en:
start_new: Create new proposal
suggestions:
found:
- one: "There is a proposal by the term '%{query}', you can contribute to it instead of creating a new"
- other: "There are proposals by the term '%{query}', you can contribute to them instead of creating a new"
- message: "You are seeing %{limit} of %{count} proposals containing the term %{query}"
+ one: "There is a proposal with the term '%{query}', you can contribute to it instead of creating a new"
+ other: "There are proposals with the term '%{query}', you can contribute to them instead of creating a new"
+ message: "You are seeing %{limit} of %{count} proposals containing the term '%{query}'"
see_all: "See all"
proposal:
already_supported: You have already supported this proposal. Share it!
diff --git a/config/locales/es.yml b/config/locales/es.yml
index e810365fc..9dfb2147f 100755
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -126,7 +126,7 @@ es:
found:
one: "Existe un debate con el término '%{query}', puedes participar en él en vez de abrir uno nuevo."
other: "Existen debates con el término '%{query}', puedes participar en ellos en vez de abrir uno nuevo."
- message: "Estás viendo %{limit} de %{count} debates que contienen el término %{query}"
+ message: "Estás viendo %{limit} de %{count} debates que contienen el término '%{query}'"
see_all: "Ver todos"
show:
author_deleted: Usuario eliminado
@@ -308,11 +308,11 @@ es:
recommendations_title: Recomendaciones para crear una propuesta
start_new: Crear una propuesta
suggestions:
- found:
- one: "Existe un debate con el término '%{query}', puedes participar en él en vez de abrir uno nuevo."
- other: "Existen debates con el término '%{query}', puedes participar en ellos en vez de abrir uno nuevo."
- message: "Estás viendo %{limit} de %{count} debates que contienen el término %{query}"
- see_all: "Ver todos"
+ found:
+ one: "Existe una propuesta con el término '%{query}', puedes contribuir en ella en vez de crear una nueva."
+ other: "Existen propuestas con el término '%{query}', puedes contribuir en ellas en vez de crear una nueva."
+ message: "Estás viendo %{limit} de %{count} propuestas que contienen el término '%{query}'"
+ see_all: "Ver todas"
proposal:
already_supported: "¡Ya has apoyado esta propuesta, compártela!"
comments:
diff --git a/db/query b/db/schema.rb
similarity index 97%
rename from db/query
rename to db/schema.rb
index fea940496..ce259bc39 100644
--- a/db/query
+++ b/db/schema.rb
@@ -114,10 +114,11 @@ ActiveRecord::Schema.define(version: 20160126090634) do
t.datetime "ignored_flag_at"
t.integer "comments_count", default: 0
t.datetime "confirmed_hide_at"
- t.integer "cached_anonymous_votes_total", default: 0
- t.integer "cached_votes_score", default: 0
- t.integer "hot_score", limit: 8, default: 0
- t.integer "confidence_score", default: 0
+ t.integer "cached_anonymous_votes_total", default: 0
+ t.integer "cached_votes_score", default: 0
+ t.integer "hot_score", limit: 8, default: 0
+ t.integer "confidence_score", default: 0
+ t.string "external_link", limit: 100
t.integer "geozone_id"
end
@@ -128,6 +129,7 @@ ActiveRecord::Schema.define(version: 20160126090634) do
add_index "debates", ["cached_votes_total"], name: "index_debates_on_cached_votes_total", using: :btree
add_index "debates", ["cached_votes_up"], name: "index_debates_on_cached_votes_up", using: :btree
add_index "debates", ["confidence_score"], name: "index_debates_on_confidence_score", using: :btree
+ add_index "debates", ["description"], name: "index_debates_on_description", using: :btree
add_index "debates", ["geozone_id"], name: "index_debates_on_geozone_id", using: :btree
add_index "debates", ["hidden_at"], name: "index_debates_on_hidden_at", using: :btree
add_index "debates", ["hot_score"], name: "index_debates_on_hot_score", using: :btree
@@ -201,7 +203,7 @@ ActiveRecord::Schema.define(version: 20160126090634) do
create_table "locks", force: :cascade do |t|
t.integer "user_id"
t.integer "tries", default: 0
- t.datetime "locked_until", default: '2000-01-01 07:01:01', null: false
+ t.datetime "locked_until", default: '2000-01-01 00:01:01', null: false
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
@@ -261,6 +263,7 @@ ActiveRecord::Schema.define(version: 20160126090634) do
add_index "proposals", ["author_id"], name: "index_proposals_on_author_id", using: :btree
add_index "proposals", ["cached_votes_up"], name: "index_proposals_on_cached_votes_up", using: :btree
add_index "proposals", ["confidence_score"], name: "index_proposals_on_confidence_score", using: :btree
+ add_index "proposals", ["description"], name: "index_proposals_on_description", using: :btree
add_index "proposals", ["geozone_id"], name: "index_proposals_on_geozone_id", using: :btree
add_index "proposals", ["hidden_at"], name: "index_proposals_on_hidden_at", using: :btree
add_index "proposals", ["hot_score"], name: "index_proposals_on_hot_score", using: :btree
@@ -319,8 +322,8 @@ ActiveRecord::Schema.define(version: 20160126090634) do
t.boolean "featured", default: false
t.integer "debates_count", default: 0
t.integer "proposals_count", default: 0
- t.string "kind"
t.integer "spending_proposals_count", default: 0
+ t.string "kind"
end
add_index "tags", ["debates_count"], name: "index_tags_on_debates_count", using: :btree
@@ -396,8 +399,8 @@ ActiveRecord::Schema.define(version: 20160126090634) do
t.boolean "public_activity", default: true
t.boolean "newsletter", default: false
t.integer "notifications_count", default: 0
- t.string "locale"
t.boolean "registering_with_oauth", default: false
+ t.string "locale"
t.string "oauth_email"
end
diff --git a/spec/features/debates_spec.rb b/spec/features/debates_spec.rb
index 0945056b6..477994c1f 100644
--- a/spec/features/debates_spec.rb
+++ b/spec/features/debates_spec.rb
@@ -865,7 +865,6 @@ feature 'Debates' do
expect(page).to have_content('User deleted')
end
-<<<<<<< HEAD
context "Filter" do
pending "By category" do
@@ -948,43 +947,43 @@ feature 'Debates' do
end
end
- context 'Suggesting debates' do
- scenario 'Shows up to 5 suggestions per debate', :js do
+ context 'Suggesting debates' do
+ scenario 'Shows up to 5 suggestions', :js do
author = create(:user)
login_as(author)
- debate1 = create(:debate, title: "1 - El Quijote: En un lugar de la Mancha", cached_votes_up: 1)
- debate2 = create(:debate, title: "2 - El Quijote: de cuyo nombre no quiero acordarme", cached_votes_up: 2)
- debate3 = create(:debate, title: "3 - El Quijote: no ha mucho tiempo que vivía ", cached_votes_up: 3)
- debate4 = create(:debate, title: "4 - un hidalgo de los de lanza en astillero", description: "El Quijote un hidalgo de los de lanza en astillero", cached_votes_up: 4)
- debate5 = create(:debate, title: "5 - El Quijote: adarga antigua, rocín flaco y galgo corredor", cached_votes_up: 5)
- debate6 = create(:debate, title: "6 - Una olla de algo más vaca que carnero", description: 'El Quijote', cached_votes_up: 6)
- debate7 = create(:debate, title: "7 - No se sugiere", cached_votes_up: 7)
+ debate1 = create(:debate, title: "First debate has 1 vote", cached_votes_up: 1)
+ debate2 = create(:debate, title: "Second debate has 2 votes", cached_votes_up: 2)
+ debate3 = create(:debate, title: "Third debate has 3 votes", cached_votes_up: 3)
+ debate4 = create(:debate, title: "This one has 4 votes", description: "This is the fourth debate", cached_votes_up: 4)
+ debate5 = create(:debate, title: "Fifth debate has 5 votes", cached_votes_up: 5)
+ debate6 = create(:debate, title: "Sixth debate has 6 votes", description: 'This is the sixth debate', cached_votes_up: 6)
+ debate7 = create(:debate, title: "This has seven votes, and is not suggest", description: 'This is the seven', cached_votes_up: 7)
visit new_debate_path
- fill_in 'debate_title', with: 'Quijote'
- page.find("body").click
+ fill_in 'debate_title', with: 'debate'
+ check "debate_terms_of_service"
- within('div#ajax_suggest_show') do
- expect(page.html).to have_content ("You are seeing 5 of 6 debates containing the term Quijote")
+ within('div#js-suggest') do
+ expect(page).to have_content ("You are seeing 5 of 6 debates containing the term 'debate'")
end
end
- scenario 'No found suggestions for debate', :js do
+ scenario 'No found suggestions', :js do
author = create(:user)
login_as(author)
- debate1 = create(:debate, title: "El Quijote: En un lugar de la Mancha", cached_votes_up: 10)
- debate2 = create(:debate, title: "El Quijote: de cuyo nombre no quiero acordarme")
+ debate1 = create(:debate, title: "First debate has 10 vote", cached_votes_up: 10)
+ debate2 = create(:debate, title: "Second debate has 2 votes", cached_votes_up: 2)
visit new_debate_path
- fill_in 'debate_title', with: 'La Celestina'
- page.find("body").click
+ fill_in 'debate_title', with: 'proposal'
+ check "debate_terms_of_service"
- within('div#ajax_suggest_show') do
- expect(page.html).to_not have_content ('You are seeing')
+ within('div#js-suggest') do
+ expect(page).to_not have_content ('You are seeing')
end
end
end
-end
\ No newline at end of file
+end
diff --git a/spec/features/proposals_spec.rb b/spec/features/proposals_spec.rb
index e807dfaa3..acd2a6e0d 100644
--- a/spec/features/proposals_spec.rb
+++ b/spec/features/proposals_spec.rb
@@ -1023,7 +1023,6 @@ feature 'Proposals' do
expect(page).to have_content('User deleted')
end
-<<<<<<< HEAD
context "Filter" do
scenario "By category" do
@@ -1107,28 +1106,28 @@ feature 'Proposals' do
end
context 'Suggesting proposals' do
-
- scenario 'Shows up to 5 suggestions per proposal', :js do
+ scenario 'Show up to 5 suggestions', :js do
author = create(:user)
login_as(author)
- create(:proposal, title: 'First proposal').update_column(:confidence_score, 10)
- create(:proposal, title: 'Second proposal').update_column(:confidence_score, 8)
- create(:proposal, title: 'Third proposal').update_column(:confidence_score, 6)
- create(:proposal, title: 'Fourth proposal').update_column(:confidence_score, 4)
- create(:proposal, title: 'Fifth proposal').update_column(:confidence_score, 3)
- create(:proposal, title: 'Sixth proposal').update_column(:confidence_score, 1)
+ create(:proposal, title: 'First proposal, has search term')
+ create(:proposal, title: 'Second title')
+ create(:proposal, title: 'Third proposal, has search term')
+ create(:proposal, title: 'Fourth proposal, has search term')
+ create(:proposal, title: 'Fifth proposal, has search term')
+ create(:proposal, title: 'Sixth proposal, has search term')
+ create(:proposal, title: 'Seventh proposal, has search term')
visit new_proposal_path
- fill_in 'proposal_title', with: 'proposal'
- page.find("body").click
-
- within('div#ajax_suggest_show') do
- expect(page.html).to have_content ("You are seeing 5 of 6 proposals containing the term proposal")
+ fill_in 'proposal_title', with: 'search'
+ check "proposal_terms_of_service"
+
+ within('div#js-suggest') do
+ expect(page).to have_content ("You are seeing 5 of 6 proposals containing the term 'search'")
end
end
- scenario 'No found suggestions for debate', :js do
+ scenario 'No found suggestions', :js do
author = create(:user)
login_as(author)
@@ -1137,10 +1136,10 @@ feature 'Proposals' do
visit new_proposal_path
fill_in 'proposal_title', with: 'debate'
- page.find("body").click
+ check "proposal_terms_of_service"
- within('div#ajax_suggest_show') do
- expect(page.html).to_not have_content ('You are seeing')
+ within('div#js-suggest') do
+ expect(page).to_not have_content ('You are seeing')
end
end
end