Fix switching pages in builder
This commit is contained in:
@@ -120,8 +120,6 @@
|
||||
{{ labels.clone || $t('label.saveAsCopy') }}
|
||||
</b-button>
|
||||
|
||||
<slot name="end-actions" />
|
||||
|
||||
<b-button
|
||||
v-if="!inEditing && isCreated && !(hideEdit || settings.hideEdit)"
|
||||
data-test-id="button-edit"
|
||||
@@ -168,6 +166,8 @@
|
||||
{{ labels.submit || $t('label.save') }}
|
||||
</span>
|
||||
</b-button>
|
||||
|
||||
<slot name="end-actions" />
|
||||
</template>
|
||||
</b-col>
|
||||
</b-row>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
<portal to="topbar-tools">
|
||||
<b-form-select
|
||||
v-if="layout"
|
||||
v-if="layout && layouts.length > 1"
|
||||
ref="layoutSelect"
|
||||
size="sm"
|
||||
:value="layout.pageLayoutID"
|
||||
@@ -318,6 +318,8 @@ export default {
|
||||
|
||||
data () {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
processing: false,
|
||||
|
||||
page: undefined,
|
||||
@@ -350,13 +352,6 @@ export default {
|
||||
},
|
||||
},
|
||||
|
||||
title () {
|
||||
let { title = '', handle } = this.page || {}
|
||||
title = title || handle
|
||||
|
||||
return this.$t('label.pageBuilder') + ' - ' + (title ? `"${title}"` : this.$t('label.noHandle'))
|
||||
},
|
||||
|
||||
showEditor () {
|
||||
return this.editor && this.editor.index !== undefined
|
||||
},
|
||||
@@ -433,21 +428,21 @@ export default {
|
||||
pageID: {
|
||||
immediate: true,
|
||||
handler (pageID) {
|
||||
this.page = undefined
|
||||
this.layout = undefined
|
||||
this.layouts = []
|
||||
this.unsavedBlocks.clear()
|
||||
this.layouts = []
|
||||
this.layout = undefined
|
||||
|
||||
if (pageID) {
|
||||
const { namespaceID, name } = this.namespace
|
||||
this.findPageByID({ namespaceID, pageID, force: true }).then(page => {
|
||||
document.title = [page.title, name, this.$t('general:label.app-name.private')].filter(v => v).join(' | ')
|
||||
this.page = page.clone()
|
||||
return this.fetchPageLayouts()
|
||||
}).then(() => {
|
||||
this.setLayout()
|
||||
})
|
||||
}
|
||||
const { namespaceID, name } = this.namespace
|
||||
this.findPageByID({ namespaceID, pageID, force: true }).then(page => {
|
||||
let { title = '', handle } = page
|
||||
title = title || handle
|
||||
this.title = `${this.$t('label.pageBuilder')} - "${title}"`
|
||||
document.title = [page.title, name, this.$t('general:label.app-name.private')].filter(v => v).join(' | ')
|
||||
this.page = page.clone()
|
||||
return this.fetchPageLayouts()
|
||||
}).then(() => {
|
||||
this.setLayout()
|
||||
})
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user