diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/App.vue b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/App.vue
new file mode 100644
index 000000000..0f566f464
--- /dev/null
+++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/App.vue
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/i18n.js b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/i18n.js
new file mode 100644
index 000000000..3cba67149
--- /dev/null
+++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/i18n.js
@@ -0,0 +1,24 @@
+const ontheflyMessages = {
+ fr: {
+ onthefly: {
+ show: {
+ person: "Détails de l'usager",
+ thirdparty: "Détails du tiers",
+ file_person: "Ouvrir la fiche de l'usager",
+ file_thirdparty: "Voir le Tiers",
+ },
+ edit: {
+ person: "Modifier un usager",
+ thirdparty: "Modifier un tiers"
+ },
+ create: {
+ button: "Créer \"{q}\"",
+ title: "Création d'un nouvel usager ou d'un tiers professionnel",
+ person: "un nouvel usager",
+ thirdparty: "un nouveau tiers professionnel"
+ },
+ }
+ }
+}
+
+export { ontheflyMessages };
diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/index.js b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/index.js
new file mode 100644
index 000000000..2b78a569a
--- /dev/null
+++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/index.js
@@ -0,0 +1,28 @@
+import { createApp } from "vue";
+import { _createI18n } from 'ChillMainAssets/vuejs/_js/i18n';
+import { ontheflyMessages } from './i18n.js';
+import App from "./App.vue";
+
+const i18n = _createI18n( ontheflyMessages );
+
+let containers = document.querySelectorAll('.onthefly-container');
+
+containers.forEach((container) => {
+
+ const app = createApp({
+ template: ``,
+ data() {
+ return {
+ onTheFly: {
+ context: {},
+ options: {}
+ }
+ }
+ }
+ })
+ .use(i18n)
+ .component('app', App)
+ .mount(container);
+
+ console.log('container dataset', container.dataset);
+});
diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/_js/i18n.js b/src/Bundle/ChillMainBundle/Resources/public/vuejs/_js/i18n.js
index 5e001a21b..c16b4c65d 100644
--- a/src/Bundle/ChillMainBundle/Resources/public/vuejs/_js/i18n.js
+++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/_js/i18n.js
@@ -53,24 +53,6 @@ const messages = {
top: "Haut",
bottom: "Bas",
},
- onthefly: {
- show: {
- person: "Détails de l'usager",
- thirdparty: "Détails du tiers",
- file_person: "Ouvrir la fiche de l'usager",
- file_thirdparty: "Voir le Tiers",
- },
- edit: {
- person: "Modifier un usager",
- thirdparty: "Modifier un tiers"
- },
- create: {
- button: "Créer \"{q}\"",
- title: "Création d'un nouvel usager ou d'un tiers professionnel",
- person: "un nouvel usager",
- thirdparty: "un nouveau tiers professionnel"
- },
- },
renderbox: {
person: "Usager",
birthday: {
diff --git a/src/Bundle/ChillMainBundle/Resources/views/OnTheFly/_insert_vue_onthefly.html.twig b/src/Bundle/ChillMainBundle/Resources/views/OnTheFly/_insert_vue_onthefly.html.twig
new file mode 100644
index 000000000..f43101bbb
--- /dev/null
+++ b/src/Bundle/ChillMainBundle/Resources/views/OnTheFly/_insert_vue_onthefly.html.twig
@@ -0,0 +1,13 @@
+{#
+ This Twig template include load vue_onthefly component.
+ It push all variables from context in OnTheFly/App.vue.
+
+ OPTIONS
+ *
+#}
+
+
+{{ encore_entry_script_tags('vue_onthefly') }}
+{{ encore_entry_link_tags('vue_onthefly') }}
diff --git a/src/Bundle/ChillMainBundle/chill.webpack.config.js b/src/Bundle/ChillMainBundle/chill.webpack.config.js
index 7ba42ed97..0204166d0 100644
--- a/src/Bundle/ChillMainBundle/chill.webpack.config.js
+++ b/src/Bundle/ChillMainBundle/chill.webpack.config.js
@@ -61,5 +61,6 @@ module.exports = function(encore, entries)
// Vue entrypoints
encore.addEntry('vue_address', __dirname + '/Resources/public/vuejs/Address/index.js');
+ encore.addEntry('vue_onthefly', __dirname + '/Resources/public/vuejs/OnTheFly/index.js');
};
diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/js/i18n.js b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/js/i18n.js
index 5d1451ff3..f742a6ea0 100644
--- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/js/i18n.js
+++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/js/i18n.js
@@ -1,6 +1,7 @@
import { personMessages } from 'ChillPersonAssets/vuejs/_js/i18n';
import { thirdpartyMessages } from 'ChillThirdPartyAssets/vuejs/_js/i18n';
import { addressMessages } from 'ChillMainAssets/vuejs/Address/i18n';
+import { ontheflyMessages } from 'ChillMainAssets/vuejs/OnTheFly/i18n';
const appMessages = {
fr: {
@@ -142,7 +143,7 @@ const appMessages = {
}
};
-Object.assign(appMessages.fr, personMessages.fr, thirdpartyMessages.fr, addressMessages.fr);
+Object.assign(appMessages.fr, personMessages.fr, thirdpartyMessages.fr, addressMessages.fr, ontheflyMessages.fr);
export {
appMessages