Merge pull request #4997 from consul/legislation_question

Add description to Legislation questions
This commit is contained in:
Sebastia
2023-02-23 15:21:57 +01:00
committed by GitHub
8 changed files with 34 additions and 13 deletions

View File

@@ -191,12 +191,10 @@
margin-bottom: 0;
text-transform: uppercase;
}
}
h4 a {
a {
@include brand-color;
&:hover {
@include header-font-size(h4);
text-decoration: none;
}
}
@@ -232,6 +230,7 @@
}
.quiz-question {
@include header-font-size(h2);
margin-bottom: $line-height;
}

View File

@@ -4,6 +4,7 @@ class Legislation::Question < ApplicationRecord
include Notifiable
translates :title, touch: true
translates :description, touch: true
include Globalizable
belongs_to :author, -> { with_hidden }, class_name: "User", inverse_of: :legislation_questions

View File

@@ -7,7 +7,11 @@
<div class="row">
<%= f.translatable_fields do |translations_form| %>
<div class="small-12 medium-9 column end">
<%= translations_form.text_area :title, rows: 5 %>
<%= translations_form.text_field :title %>
</div>
<div class="small-12 medium-9 column end">
<%= translations_form.text_area :description, class: "html-area admin" %>
</div>
<% end %>
</div>

View File

@@ -5,7 +5,7 @@
<div class="small-12 medium-9 column">
<div class="quiz-title">
<p class="quiz-header-title"><%= t("legislation.questions.show.title") %></p>
<h4><%= link_to @process.title, @process %></h4>
<strong><%= link_to @process.title, @process %></strong>
</div>
</div>
<div class="small-12 medium-3 column">
@@ -28,7 +28,8 @@
</div>
<div class="row">
<div class="small-12 medium-9 column">
<h3 class="quiz-question"><%= @question.title %></h3>
<h1 class="quiz-question"><%= @question.title %></h1>
<%= AdminWYSIWYGSanitizer.new.sanitize(@question.description) %>
<div class="debate-questions" id="legislation-answer-form">
<%= render "answer_form", process: @process, question: @question, answer: @answer %>
</div>
@@ -36,7 +37,7 @@
<aside class="small-12 medium-3 column">
<div id="social-share" class="sidebar-divider"></div>
<h3><%= t("legislation.questions.show.share") %></h3>
<h2><%= t("legislation.questions.show.share") %></h2>
<%= render "/shared/social_share", title: @question.title, url: legislation_process_question_url(@question.process, @question) %>
</aside>
</div>

View File

@@ -0,0 +1,5 @@
class AddDescriptionToLegislationQuestionTranslations < ActiveRecord::Migration[6.0]
def change
add_column :legislation_question_translations, :description, :text
end
end

View File

@@ -861,6 +861,7 @@ ActiveRecord::Schema.define(version: 2023_02_06_141152) do
t.datetime "updated_at", null: false
t.text "title"
t.datetime "hidden_at"
t.text "description"
t.index ["hidden_at"], name: "index_legislation_question_translations_on_hidden_at"
t.index ["legislation_question_id"], name: "index_d34cc1e1fe6d5162210c41ce56533c5afabcdbd3"
t.index ["locale"], name: "index_legislation_question_translations_on_locale"

View File

@@ -32,6 +32,7 @@ describe "Admin legislation questions", :admin do
click_link "Create question"
fill_in "Question", with: "Question 3"
fill_in_ckeditor "Description", with: "A little description about question 3"
click_button "Create question"
expect(page).to have_content "Question 3"
@@ -40,7 +41,7 @@ describe "Admin legislation questions", :admin do
context "Update" do
scenario "Valid legislation question" do
create(:legislation_question, title: "Question 2", process: process)
create(:legislation_question, title: "Question 2", description: "Description 2", process: process)
visit admin_root_path
@@ -57,9 +58,11 @@ describe "Admin legislation questions", :admin do
click_link "Question 2"
fill_in "Question", with: "Question 2b"
fill_in_ckeditor "Description", with: "Description 2b"
click_button "Save changes"
expect(page).to have_content "Question 2b"
expect(page).to have_ckeditor "Description", with: "Description 2b"
end
end

View File

@@ -9,9 +9,9 @@ describe "Legislation" do
end
before do
create(:legislation_question, process: process, title: "Question 1")
create(:legislation_question, process: process, title: "Question 2")
create(:legislation_question, process: process, title: "Question 3")
create(:legislation_question, process: process, title: "Question 1", description: "Description 1")
create(:legislation_question, process: process, title: "Question 2", description: "Description 2")
create(:legislation_question, process: process, title: "Question 3", description: "Description 3")
end
scenario "shows question list" do
@@ -24,16 +24,19 @@ describe "Legislation" do
click_link "Question 1"
expect(page).to have_content("Question 1")
expect(page).to have_content("Description 1")
expect(page).to have_content("NEXT QUESTION")
click_link "Next question"
expect(page).to have_content("Question 2")
expect(page).to have_content("Description 2")
expect(page).to have_content("NEXT QUESTION")
click_link "Next question"
expect(page).to have_content("Question 3")
expect(page).to have_content("Description 3")
expect(page).not_to have_content("NEXT QUESTION")
end
@@ -41,6 +44,7 @@ describe "Legislation" do
visit legislation_process_question_path(process, process.questions.first)
expect(page).to have_content("Question 1")
expect(page).to have_content("Description 1")
expect(page).to have_content("Open answers (0)")
end
@@ -48,16 +52,19 @@ describe "Legislation" do
visit legislation_process_question_path(process, process.questions.first)
expect(page).to have_content("Question 1")
expect(page).to have_content("Description 1")
expect(page).to have_content("NEXT QUESTION")
click_link "Next question"
expect(page).to have_content("Question 2")
expect(page).to have_content("Description 2")
expect(page).to have_content("NEXT QUESTION")
click_link "Next question"
expect(page).to have_content("Question 3")
expect(page).to have_content("Description 3")
expect(page).not_to have_content("NEXT QUESTION")
end