Survey questions can be sorted using drag and drop#1373
Survey questions can be sorted using drag and drop#1373beagleknight merged 10 commits intofeature/surveysfrom
Conversation
|
|
||
| def update_survey_questions | ||
| @form.questions.each do |form_question| | ||
| question_attributes = { body: form_question.body, position: form_question.position } |
|
@beagleknight, thanks for your PR! By analyzing the history of the files in this pull request, we identified @mrcasals and @josepjaume to be potential reviewers. |
a64d712 to
8411171
Compare
| @@ -0,0 +1,5 @@ | |||
| class AddPositionToSurveysQuestions < ActiveRecord::Migration[5.0] | |||
| def change | |||
| add_column :decidim_surveys_survey_questions, :position, :integer | |||
Codecov Report
@@ Coverage Diff @@
## feature/surveys #1373 +/- ##
===================================================
+ Coverage 94.81% 94.83% +0.02%
===================================================
Files 444 269 -175
Lines 7543 4593 -2950
===================================================
- Hits 7152 4356 -2796
+ Misses 391 237 -154
Continue to review full report at Codecov.
|
Codecov Report
@@ Coverage Diff @@
## feature/surveys #1373 +/- ##
===================================================
+ Coverage 94.81% 94.81% +<.01%
===================================================
Files 444 444
Lines 7543 7546 +3
===================================================
+ Hits 7152 7155 +3
Misses 391 391
Continue to review full report at Codecov.
|
| it "the questions are ordered by position" do | ||
| visit_feature | ||
|
|
||
| form_fields = all('.answer-survey .field') |
There was a problem hiding this comment.
Prefer double-quoted strings unless you need single quotes to avoid extra backslashes for escaping.
| it "the questions are ordered by position" do | ||
| visit_feature | ||
|
|
||
| form_fields = all('.answer-survey .field') |
There was a problem hiding this comment.
Prefer double-quoted strings unless you need single quotes to avoid extra backslashes for escaping.
* Add basic drag and drop features * Refactor JS and minor adjustments * Add missing documentation * Minor label adjustments * Fix rubocop complains * Add missing index * Add missing feature test * Fix rubocop issues * Fix lint errors * Fix broken specs
* Add basic drag and drop features * Refactor JS and minor adjustments * Add missing documentation * Minor label adjustments * Fix rubocop complains * Add missing index * Add missing feature test * Fix rubocop issues * Fix lint errors * Fix broken specs
* Add basic drag and drop features * Refactor JS and minor adjustments * Add missing documentation * Minor label adjustments * Fix rubocop complains * Add missing index * Add missing feature test * Fix rubocop issues * Fix lint errors * Fix broken specs
* Add Surveys engine MVP (#1364) * Add engine skeleton * Add feature test * An admin can update a survey without questions * Admin can add n questions to a survey * Admin can edit survey questions * An admin can remove questions from surveys * Admin can publish a survey * Minor refactor * Users answer surveys * Fix minor errors * Rubocop * Add model validations * Fix minor things * Fix hound complains * Fix more complains * Fix broken specs * Add some feedback * Add some permissions * Add missing translation * Fix rubocop issues * Add tests to the CI * Fix broken test suite * Normalize locales * Survey questions can be sorted using drag and drop (#1373) * Add basic drag and drop features * Refactor JS and minor adjustments * Add missing documentation * Minor label adjustments * Fix rubocop complains * Add missing index * Add missing feature test * Fix rubocop issues * Fix lint errors * Fix broken specs * Admin can mark question as mandatory * Restore missing PRs in feature/surveys (#1421) * Add custom styles * Change from toc to tos * Fix broken tests * Fix typo * Fix spec * Fix rubocop issues * Add Surveys engine MVP (#1364) * Add engine skeleton * Add feature test * An admin can update a survey without questions * Admin can add n questions to a survey * Admin can edit survey questions * An admin can remove questions from surveys * Admin can publish a survey * Minor refactor * Users answer surveys * Fix minor errors * Rubocop * Add model validations * Fix minor things * Fix hound complains * Fix more complains * Fix broken specs * Add some feedback * Add some permissions * Add missing translation * Fix rubocop issues * Add tests to the CI * Fix broken test suite * Normalize locales * Admin can mark question as mandatory (#1386) * Admin can mark question as mandatory * Users must respond mandatory questions * Fix problems with poltergeist * Fix rubocop complains * Fix i18n-issues * Add feedback * Fix rubocop complains * Huge refactor templates * Fix rubocop issues * Admins can select question type * Factor out auto label position code * Moar refactor * Huge JS refactor * Add dynamic answer options for a question * Admin survey form working with dynamic answer options * Single and multiple options working * Fixed rubocop issues * Fix i18n problems * Ignore unused i18n * Add ignore unused * Add answer option default value * Fix rectify problem * Fix minor issues * Fix a few bad merges * Fix broken specs * Add survey exports (#1417) * Add user answers serializer * Finish export and serializer * Add admin feature specs * Fix rubocop issues * Add allow_answers step setting (#1430) * Admin cannot modify questions if already answered * Add step setting to allow/disallow answers * Fix rubocop issues * Replace answered? with questions_editable? * Use available_locales instead of Decidim locales
🎩 What? Why?
An Admin should be able to reorder survey questions. The list can be reordered using simple drag and drop. I reused some code from @mrcasals #137 and created an abstraction.
📌 Related Issues
📷 Screenshots and 👻 GIF