Skip to content

Commit 8937bb9

Browse files
Merge pull request #721 from Fliplet/release/DEV-165
https://weboo.atlassian.net/browse/DEV-165
2 parents f395dc7 + ca514b4 commit 8937bb9

File tree

1 file changed

+21
-6
lines changed

1 file changed

+21
-6
lines changed

js/libs/form.js

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -122,12 +122,27 @@ function setTypeaheadFieldValue(field, value) {
122122

123123
// Wait for form fields to be ready, as they get defined after translations are initialized
124124
Fliplet().then(function() {
125-
Fliplet.Widget.instance('form-builder', function(data) {
126-
var saveDelay = 1000; // save progress after 1s from last input
127-
var selector = '[data-form-builder-id="' + data.id + '"]';
125+
Fliplet.Widget.instance('form-builder', async function(data, vm) {
126+
const saveDelay = 1000; // save progress after 1s from last input
127+
128+
if (vm && vm.entry) {
129+
data.entryId = vm.entry.id;
130+
data.dataSourceId = vm.entry.dataSourceId;
131+
}
132+
133+
const selector = `[data-form-builder-id="${data.id}"]`;
134+
135+
const getRootElement = () => {
136+
if (vm && vm.entry) {
137+
return vm.element.querySelector(selector);
138+
}
139+
140+
return document.querySelector(selector);
141+
};
142+
128143
var progressKey = 'form-builder-progress-' + (data.uuid || data.id);
129144

130-
var entryId = !Fliplet.Env.get('interact') && data.dataSourceId && Fliplet.Navigate.query.dataSourceEntryId;
145+
const entryId = !Fliplet.Env.get('interact') && data.dataSourceId && (data.entryId || Fliplet.Navigate.query.dataSourceEntryId);
131146
var formMode = Fliplet.Navigate.query.mode;
132147
var entry;
133148
var isResetAction = false;
@@ -603,7 +618,7 @@ Fliplet().then(function() {
603618

604619
var $form = new Vue({
605620
i18n: Fliplet.Locale.plugins.vue(),
606-
el: $(selector)[0],
621+
el: getRootElement(),
607622
data: function() {
608623
return {
609624
isFormValid: false,
@@ -1402,7 +1417,7 @@ Fliplet().then(function() {
14021417

14031418
this.saveProgressed = debounce(this.saveProgress, saveDelay);
14041419

1405-
$(selector).removeClass('hidden');
1420+
$(getRootElement()).removeClass('hidden');
14061421

14071422
if (!data.offline) {
14081423
Fliplet.Navigator.onOnline(function() {

0 commit comments

Comments
 (0)