|
|
@@ -1,52 +1,31 @@
|
|
|
<template>
|
|
|
- <div class="benevole-page">
|
|
|
- <div class="panel">
|
|
|
- <div class="panel-item" :class="{ selected: show == 'benevole' }" @click="show = 'benevole'">
|
|
|
- Bénévoles
|
|
|
- </div>
|
|
|
- <div
|
|
|
- class="panel-item"
|
|
|
- :class="{ selected: show == 'questionnaire' }"
|
|
|
- @click="show = 'questionnaire'"
|
|
|
- >
|
|
|
- Gestion du questionnaire
|
|
|
- </div>
|
|
|
- <div
|
|
|
- class="panel-item"
|
|
|
- :class="{ selected: show == 'inscriptions' }"
|
|
|
- @click="show = 'inscriptions'"
|
|
|
- >
|
|
|
- Validations des inscriptions
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="benevole-page-main">
|
|
|
- <div class="page" v-show="show == 'benevole'">
|
|
|
- <data-table
|
|
|
- class="data-table"
|
|
|
- title="Liste des bénévoles"
|
|
|
- :data="data"
|
|
|
- :clickable="true"
|
|
|
- :loadingAnimation="loading"
|
|
|
- :exportable="false"
|
|
|
- locale="fr"
|
|
|
- @row-click="onRowClick"
|
|
|
- :customButtons="customButton"
|
|
|
- ></data-table>
|
|
|
- <editeur-benevole
|
|
|
- :benevole="currentBenevole"
|
|
|
- @create="createBenevole"
|
|
|
- @delete="deleteBenevole"
|
|
|
- />
|
|
|
- <input type="file" ref="loadcsv" @change="importBenevoleTemplate" style="display: none" />
|
|
|
- </div>
|
|
|
- <editeur-questionnaire
|
|
|
- v-if="show == 'questionnaire'"
|
|
|
- :competences="competenceList"
|
|
|
- :uuid="uuid"
|
|
|
+ <navigation v-model="show" :options="navOption">
|
|
|
+ <div class="page" v-show="show == 'benevole'">
|
|
|
+ <data-table
|
|
|
+ class="data-table"
|
|
|
+ title="Liste des bénévoles"
|
|
|
+ :data="data"
|
|
|
+ :clickable="true"
|
|
|
+ :loadingAnimation="loading"
|
|
|
+ :exportable="false"
|
|
|
+ locale="fr"
|
|
|
+ @row-click="onRowClick"
|
|
|
+ :customButtons="customButton"
|
|
|
+ ></data-table>
|
|
|
+ <editeur-benevole
|
|
|
+ :benevole="currentBenevole"
|
|
|
+ @create="createBenevole"
|
|
|
+ @delete="deleteBenevole"
|
|
|
/>
|
|
|
- <manage-registration v-if="show == 'inscriptions'" />
|
|
|
+ <input type="file" ref="loadcsv" @change="importBenevoleTemplate" style="display: none" />
|
|
|
</div>
|
|
|
- </div>
|
|
|
+ <editeur-questionnaire
|
|
|
+ v-if="show == 'questionnaire'"
|
|
|
+ :competences="competenceList"
|
|
|
+ :uuid="uuid"
|
|
|
+ />
|
|
|
+ <manage-registration v-if="show == 'inscriptions'" />
|
|
|
+ </navigation>
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts">
|
|
|
@@ -54,6 +33,7 @@ import Competence from "@/models/Competence";
|
|
|
import EditeurBenevole from "@/components/EditeurBenevole.vue";
|
|
|
import EditeurQuestionnaire from "@/components/EditeurQuestionnaire.vue";
|
|
|
import ManageRegistration from "@/components/ManageRegistration.vue";
|
|
|
+import Navigation from "@/components/NavigationPanel.vue";
|
|
|
import DataTable, {
|
|
|
CustomButton,
|
|
|
DataTableData,
|
|
|
@@ -67,10 +47,16 @@ import dayjs from "dayjs";
|
|
|
import Toast from "@/utils/Toast";
|
|
|
|
|
|
const csvDefaultcolumn = "id,prenom,nom,telephone,email,commentaire";
|
|
|
+const navOption = [
|
|
|
+ { id: "benevole", title: "Bénévoles" },
|
|
|
+ { id: "questionnaire", title: "Gestion du questionnaire" },
|
|
|
+ { id: "inscriptions", title: "Validations des inscriptions" },
|
|
|
+];
|
|
|
export default defineComponent({
|
|
|
name: "EditeurCreneau",
|
|
|
- components: { DataTable, EditeurBenevole, ManageRegistration, EditeurQuestionnaire },
|
|
|
+ components: { DataTable, EditeurBenevole, ManageRegistration, EditeurQuestionnaire, Navigation },
|
|
|
data: () => ({
|
|
|
+ navOption,
|
|
|
show: "benevole",
|
|
|
columns: [
|
|
|
{
|
|
|
@@ -285,13 +271,6 @@ export default defineComponent({
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|
|
|
-.benevole-page {
|
|
|
- width: 100%;
|
|
|
- position: relative;
|
|
|
-}
|
|
|
-.benevole-page-main {
|
|
|
- margin-left: 240px;
|
|
|
-}
|
|
|
.page {
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
@@ -316,20 +295,4 @@ export default defineComponent({
|
|
|
margin-top: 32px;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-.panel {
|
|
|
- height: calc(100% - 3.5rem);
|
|
|
- border-right: solid 1px var(--color-neutral-800);
|
|
|
- position: fixed;
|
|
|
- margin: -8px 8px 0 -8px;
|
|
|
-}
|
|
|
-.panel-item {
|
|
|
- padding: 16px;
|
|
|
- white-space: nowrap;
|
|
|
- cursor: pointer;
|
|
|
-}
|
|
|
-.panel-item.selected {
|
|
|
- background: var(--color-accent-600);
|
|
|
- color: var(--color-neutral-100);
|
|
|
-}
|
|
|
</style>
|