diff --git a/app/javascript/vue/forms/show.vue b/app/javascript/vue/forms/show.vue
index cd149c76b..0220759e6 100644
--- a/app/javascript/vue/forms/show.vue
+++ b/app/javascript/vue/forms/show.vue
@@ -89,6 +89,10 @@
@update="updateField"
@delete="deleteField"
/>
+
+ {{ i18n.t('forms.show.no_block') }}
+
@@ -216,7 +220,7 @@ export default {
axios.delete(field.attributes.urls.show).then(() => {
this.fields.splice(index, 1);
if (this.fields.length > 0) {
- [this.activeField] = this.fields;
+ this.activeField = this.fields[index - 1];
} else {
this.activeField = {};
}
diff --git a/app/models/form.rb b/app/models/form.rb
index b9d2e2bb6..eb2f7bd5c 100644
--- a/app/models/form.rb
+++ b/app/models/form.rb
@@ -20,7 +20,7 @@ class Form < ApplicationRecord
belongs_to :restored_by, class_name: 'User', optional: true
belongs_to :default_public_user_role, class_name: 'UserRole', optional: true
- has_many :form_fields, inverse_of: :form, dependent: :destroy
+ has_many :form_fields, -> { order(:position) }, inverse_of: :form, dependent: :destroy
has_many :form_responses, dependent: :destroy
has_many :users, through: :user_assignments
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 59547ffd2..bef843b34 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -1126,6 +1126,7 @@ en:
unit_placeholder: 'Add a unit'
time_label: 'Include time'
range_label: 'Include range'
+ no_block: 'Add your first form block'
validations:
response_validation:
title: 'Response validation'