From daf083dc88d9612846e6c93c9da68e43761a96ed Mon Sep 17 00:00:00 2001 From: Mathieu Jaumotte Date: Mon, 3 May 2021 21:02:15 +0200 Subject: [PATCH] save checkboxes state in store --- .../Resources/public/scss/chillmain.scss | 15 ++++++--- .../Resources/public/vuejs/_js/i18n.js | 13 ++++++-- .../vuejs/AccompanyingCourse/store/index.js | 10 +++++- .../public/vuejs/_components/AddPersons.vue | 27 ++++++++++++++-- .../vuejs/_components/PersonSuggestion.vue | 31 ++++++++++++++++--- .../Resources/public/vuejs/_js/i18n.js | 1 + 6 files changed, 83 insertions(+), 14 deletions(-) diff --git a/src/Bundle/ChillMainBundle/Resources/public/scss/chillmain.scss b/src/Bundle/ChillMainBundle/Resources/public/scss/chillmain.scss index e9cc68551..288cdcf89 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/scss/chillmain.scss +++ b/src/Bundle/ChillMainBundle/Resources/public/scss/chillmain.scss @@ -96,11 +96,20 @@ div.vue-component { //// AddPersons modal div.results { - padding: 0 1.3em; div.list-item { line-height: 26pt; + padding: 0.3em 0.8em; display: flex; flex-direction: row; + &.checked { + background-color: #ececec; + border-bottom: 1px dotted #d9d9d9; + } + div.container { + & > input { + margin-right: 0.8em; + } + } div.right_actions { margin: 0 0 0 auto; & > * { @@ -110,14 +119,12 @@ div.results { border: 1px solid lightgrey; font-size: 70%; padding: 4px; - } - span { } } } } -a.discret { +.discret { color: grey; margin-right: 1em; } diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/_js/i18n.js b/src/Bundle/ChillMainBundle/Resources/public/vuejs/_js/i18n.js index 0355774cc..2d786039d 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/vuejs/_js/i18n.js +++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/_js/i18n.js @@ -18,6 +18,14 @@ const datetimeFormats = { } } }; +//const pluralizationRules = { +// 'fr': (choice, choicesLength) => { +// if (choice === 0) { +// return 0; +// } +// return (choicesLength < 4) ? 2 : 3; +// } +//}; const messages = { fr: { action: { @@ -43,10 +51,11 @@ const messages = { const _createI18n = (appMessages) => { Object.assign(messages.fr, appMessages.fr); return createI18n({ + locale: 'fr', + fallbackLocale: 'fr', datetimeFormats, messages, - locale: 'fr', - fallbackLocale: 'fr' + //pluralizationRules }) }; diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/store/index.js b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/store/index.js index 04a08a59a..d5e1ca338 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/store/index.js +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/store/index.js @@ -16,7 +16,8 @@ let getDataPromise = getAccompanyingCourse(id) accompanying_course: accompanying_course, add_persons: { query: "", - suggested: [] + suggested: [], + selected: [] }, errorMsg: [] }, @@ -39,6 +40,10 @@ let getDataPromise = getAccompanyingCourse(id) }, loadSuggestions(state, suggestions) { state.add_persons.suggested = suggestions; + }, + updateSelected(state, value) { + //console.log('update value', value); + state.add_persons.selected = value; } }, actions: { @@ -63,6 +68,9 @@ let getDataPromise = getAccompanyingCourse(id) } else { commit('loadSuggestions', []); } + }, + updateSelected({ commit }, payload) { + commit('updateSelected', payload); } } }); diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue index 73bb1da3d..1e8e80864 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue @@ -13,15 +13,27 @@