diff --git a/src/helpers/cms-adapter.js b/src/helpers/cms-adapter.js new file mode 100644 index 000000000..721569396 --- /dev/null +++ b/src/helpers/cms-adapter.js @@ -0,0 +1,31 @@ +import { storeActions } from "@/constants/store-actions.js"; +import { widgetNames } from "@/constants/widget-names.js"; +import store from "@/store"; + +export function GetContentFromCms(fmgPage) { + return store.dispatch(storeActions.GET_PAGE_DATA, { pageName: fmgPage }).then((response) => { + + const pageDataFromCms = { + isCmsContentReady: false + }; + + response.data.Result.forEach((widget) => { + if (Object.values(widgetNames).includes(widget.Type)) { + // If we already have this widget, push it on the collection + if (widget.Type in pageDataFromCms) { + pageDataFromCms[widget.Type].push(widget.Model); + return; + } + + pageDataFromCms[widget.Type] = [widget.Model]; + + } + }); + + // Our 'Page' is ready because we have data now + pageDataFromCms.isCmsContentReady = true; + + return pageDataFromCms; + }); +} + diff --git a/src/layouts/component-test/component-test.vue b/src/layouts/component-test/component-test.vue index 7351b2bff..748c2fea6 100644 --- a/src/layouts/component-test/component-test.vue +++ b/src/layouts/component-test/component-test.vue @@ -78,6 +78,11 @@
h6 Heading
+
+
+ +
+
@@ -108,5 +113,13 @@ export default { years: [2023, 2022, 2021, 2020], }; }, + created() { + console.log("App created"); + }, + methods: { + testMethod() { + this.$router.push("/?fmgPage=vehicle-year"); + }, + }, }; diff --git a/src/layouts/vehicle-year/vehicle-year.vue b/src/layouts/vehicle-year/vehicle-year.vue index 0f40a57b6..dc610dac3 100644 --- a/src/layouts/vehicle-year/vehicle-year.vue +++ b/src/layouts/vehicle-year/vehicle-year.vue @@ -1,4 +1,4 @@ -