This commit is contained in:
Matthieu Bessat 2020-07-17 11:25:50 +02:00
parent b8d7b53308
commit 4a94799602
11 changed files with 71 additions and 53 deletions

1
index.html Normal file
View file

@ -0,0 +1 @@
2cf5ddea54d

View file

@ -1,6 +1,8 @@
<template>
<v-app>
<router-view/>
<v-main>
<router-view/>
</v-main>
<GlobalSnackbar />
</v-app>
</template>

View file

@ -1,11 +1,12 @@
<template>
<div>
<v-snackbar
right
bottom
:right="!$vuetify.breakpoint.mobile"
:color="$store.state.alert.color"
multi-line
:vertical="$vuetify.breakpoint.mobile"
:multi-line="$vuetify.breakpoint.mobile"
v-model="$store.state.alert.enabled"
:timeout="500000"
>
{{ $store.state.alert.text }}

View file

@ -1,5 +1,5 @@
<template>
<v-main>
<div>
<div v-if="enabled">
<v-app-bar
app
@ -51,11 +51,11 @@
</v-card-title>
<v-card-text>
<p>
Vous n'êtes pas encore connecté à l'interface d'administration veuillez copier-coller la clée administrateur dans la boîte ci-dessous.
Vous n'êtes pas encore connecté à l'interface d'administration veuillez copier-coller la clé administrateur dans la boîte ci-dessous.
</p>
<v-text-field
autofocus
label="Clée"
label="Clé"
v-model="token"
:type="showPassword ? 'text' : 'password'"
:append-icon="showPassword ? 'mdi-eye' : 'mdi-eye-off'"
@ -73,7 +73,7 @@
</v-card-actions>
</v-card>
</div>
</v-main>
</div>
</template>
<script>
@ -120,7 +120,7 @@ export default {
if (this.token !== '') {
this.$store.commit('ADD_ALERT', {
color: 'error',
text: 'Clée administrateur invalide !'
text: 'Clé administrateur invalide !'
})
}
})

View file

@ -1,5 +1,5 @@
<template>
<v-main>
<div>
<div v-if="enabled">
<v-toolbar
color="orange darken-3"
@ -53,13 +53,13 @@
ref="tabs"
>
<v-tab @click="navigate('DelegateMain')">
Résumé
Présentation
</v-tab>
<v-tab @click="navigate('DelegateGallery')">
Images/vidéos
</v-tab>
<v-tab @click="navigate('DelegatePresentation')">
Présentation
Description
</v-tab>
<v-tab @click="navigate('DelegateSchedule')">
Horaires
@ -125,10 +125,10 @@
</v-card-title>
<v-card-text>
<p>
Vous n'êtes pas encore connecté à l'interface de modification de votre association, veuillez copier-coller la clée qui vous a été envoyé par e-mail dans la boîte ci-dessous.
Vous n'êtes pas encore connecté à l'interface de modification de votre association, veuillez copier-coller la clé qui vous a été envoyé par e-mail dans la boîte ci-dessous.
</p>
<v-text-field
label="Clée"
label="Clé"
autofocus
v-model="token"
:type="showPassword ? 'text' : 'password'"
@ -205,7 +205,7 @@
</v-card-actions>
</v-card>
</v-dialog>
</v-main>
</div>
</template>
<script>
@ -322,7 +322,7 @@ export default {
if (this.token !== '' || inUrl) {
this.$store.commit('ADD_ALERT', {
color: 'error',
text: 'Clée invalide !'
text: 'Clé invalide !'
})
}
})
@ -382,7 +382,7 @@ export default {
const data = this.$store.state.data
this.canPublish =
data.name.length > 0 &&
data.descriptionShort.length > 15
data.descriptionShort.length > 10
},
askApproval () {
this.askingApprovalLoading = true

View file

@ -42,17 +42,17 @@
<v-text-field
v-model="editedItem.adminName"
required
label="Nom (interne) de l'associatiton">
label="Nom de l'associatiton">
</v-text-field>
<v-text-field
v-model="editedItem.email"
label="E-mail utilisé pour recevoir le lien/la clé d'identification">
</v-text-field>
<v-select
<!-- <v-select
:items="validationState"
v-model="editedItem.validationState"
label="DEBUG: status de la validation"
></v-select>
></v-select> -->
<v-textarea
rows="2"
row-height="15"
@ -94,7 +94,7 @@
</v-chip>
</template>
<template v-slot:item.actions="{ item }">
<v-tooltip top>
<v-tooltip top v-if="item.validationState === 'published' || item.validationState === 'rejected'">
<template v-slot:activator="{ on, attrs }">
<v-btn icon small color="success">
<v-icon
@ -107,7 +107,7 @@
</v-icon>
</v-btn>
</template>
<span>Ouvrir la page publique (version non publié)</span>
<span>Ouvrir la page publique (version publié)</span>
</v-tooltip>
<v-tooltip top>
<template v-slot:activator="{ on, attrs }">
@ -163,11 +163,11 @@
v-bind="attrs"
v-on="on"
>
done
grading
</v-icon>
</v-btn>
</template>
<span>Valider les changements</span>
<span>Vérifier les changements</span>
</v-tooltip>
</template>
<template v-slot:no-data>
@ -207,7 +207,7 @@
</v-list-item-icon>
<v-list-item-content>
<v-list-item-title>{{ toSeeItem.token }}</v-list-item-title>
<v-list-item-subtitle>Token/clée</v-list-item-subtitle>
<v-list-item-subtitle>Token/clé</v-list-item-subtitle>
</v-list-item-content>
</v-list-item>
@ -285,11 +285,13 @@
:dialogTitle="approveModalTitle"
@close="approveModal = false"
>
<v-btn outlined dark text @click="rejectionModal = true">
<v-icon>clear</v-icon>
<v-btn outlined text dark class="error" @click="rejectionModal = true">
<v-icon :left="!$vuetify.breakpoint.mobile">rate_review</v-icon>
<span v-if="!$vuetify.breakpoint.mobile">Refuser</span>
</v-btn>
<v-btn outlined dark text @click="approve()">
<v-icon>done</v-icon>
<v-btn outlined text dark class="success" @click="approve()">
<v-icon :left="!$vuetify.breakpoint.mobile">check_circle</v-icon>
<span v-if="!$vuetify.breakpoint.mobile">Publier</span>
</v-btn>
</Preview>
<v-dialog max-width="500px" v-model="rejectionModal">
@ -325,7 +327,7 @@ export default {
const item = {
adminName: '',
email: '',
validationState: 'none',
validationState: 'unaware',
rejectionDescription: '',
slug: ''
}
@ -483,19 +485,19 @@ export default {
},
generateToken (item) {
if (!confirm('Êtes vous sur de reinitialiser la clée de cette association ? Les liens de connexions existants seront inutilisables.')) {
if (!confirm('Êtes vous sur de reinitialiser la clé de cette association ? Les liens de connexions existants seront inutilisables.')) {
return
}
this.$apitator.post('/admin/organizations/' + item._id + '/reset-token', {}, { withAuth: true }).then(() => {
this.detailsModal = false
this.$store.commit('ADD_ALERT', {
color: 'success',
text: 'La clée de cette association a été reinitialisé'
text: 'La clé de cette association a été reinitialisé'
})
}).catch(() => {
this.$store.commit('ADD_ALERT', {
color: 'error',
text: 'Impossible de reinitialiser la clée de cette association'
text: 'Impossible de reinitialiser la clé de cette association'
})
})
},
@ -505,7 +507,7 @@ export default {
this.detailsModal = false
this.$store.commit('ADD_ALERT', {
color: 'success',
text: 'Un email va être envoyé à cette association contenant la clée'
text: 'Un email va être envoyé à cette association contenant la clé'
})
}).catch(() => {
this.$store.commit('ADD_ALERT', {

View file

@ -39,6 +39,7 @@
<span class="headline">{{ formTitle }}</span>
</v-card-title>
<v-card-text>
<a href="https://fontawesome.com/icons?d=gallery&m=free">https://fontawesome.com/icons?d=gallery&m=free</a>
<v-text-field
v-model="editedItem.name"
required

View file

@ -15,7 +15,6 @@
label="Personne responsable"
outlined
v-model="$store.state.data.contacts.person" />
<v-text-field
prepend-icon="alternate_email"
label="Email"
@ -36,22 +35,26 @@
prepend-icon="room"
label="Adresse"
outlined
v-model="$store.state.data.contacts.address" />
v-model="$store.state.data.contacts.address"
:rules="rules.address" />
<v-text-field
prepend-icon="$vuetify.icons.facebook"
label="Compte facebook"
outlined
v-model="$store.state.data.contacts.facebook" />
v-model="$store.state.data.contacts.facebook"
:rules="rules.facebook" />
<v-text-field
prepend-icon="$vuetify.icons.twitter"
label="Compte twitter"
outlined
v-model="$store.state.data.contacts.twitter" />
v-model="$store.state.data.contacts.twitter"
:rules="rules.twitter" />
<v-text-field
prepend-icon="$vuetify.icons.instagram"
label="Compte instagram"
outlined
v-model="$store.state.data.contacts.instagram" />
v-model="$store.state.data.contacts.instagram"
:rules="rules.instagram" />
</div>
</template>
@ -59,17 +62,23 @@
export default {
data: () => ({
rules: {
website: [
v => v === '' || /.+@.+\..+/.test(v) || "L'email doit être valide"
],
email: [
v => /.+@.+\..+/.test(v) || "L'email doit être valide"
v => v === '' || /.+@.+\..+/.test(v) || "L'email doit être valide"
],
address: [
v => v.length < 200 || 'Maximum 200 caractères'
],
facebook: [
v => /(http(s)?:\/\/)?(www\.)?facebook\.com\/(\S+){3,}/.test(v) || 'Ce champs doit être une url facebook valide'
v => v === '' || /(http(s)?:\/\/)?(www\.)?facebook\.com\/(\S+){3,}/g.test(v) || 'Ce champs doit être une url facebook valide'
],
twitter: [
v => /(http(s)?:\/\/)?(www\.)?twitter\.com\/(\S+){3,}/.test(v) || 'Ce champs doit être une url twitter valide'
v => v === '' || /(http(s)?:\/\/)?(www\.)?twitter\.com\/(\S+){3,}/g.test(v) || 'Ce champs doit être une url twitter valide'
],
instagram: [
v => /(http(s)?:\/\/)?(www\.)?instagram\.com\/(\S+){3,}/.test(v) || 'Ce champs doit être une url instagram valide'
v => v === '' || /(http(s)?:\/\/)?(www\.)?instagram\.com\/(\S+){3,}/g.test(v) || 'Ce champs doit être une url instagram valide'
]
}
}),

View file

@ -63,6 +63,13 @@ export default {
}
}),
// mounted () {
// this.$store.commit('ADD_ALERT', {
// color: 'error',
// text: 'Dolor sadipscing tempor consetetur et tempor accusam nonumy. Ut sit nonumy magna ea aliquyam no. Elitr et elitr est ut,.'
// })
// },
methods: {
handleAvatarEditorSubmitted: function (blob) {
const form = new FormData()

View file

@ -15,7 +15,7 @@
outlined
type="info"
>
Aucune catégorie horaires ajoutées pour le moment
Aucun tarifs ajoutée pour le moment
</v-alert>
</div>
<v-row v-else class="justify-content: center">

View file

@ -15,7 +15,7 @@
outlined
type="info"
>
Aucune catégorie horaires ajoutées pour le moment
Aucune catégorie horaire ajoutée pour le moment
</v-alert>
</div>
<div v-else>
@ -89,7 +89,7 @@
</div>
</v-list>
<div v-else class="grey--text text--darken-1">
Pas d'interval horaires pour cette catégorie pour l'instant
Pas d'intervalles horaires pour cette catégorie pour l'instant
</div>
</div>
</div>
@ -151,7 +151,7 @@
max-width="500px"
v-model="whenModal">
<v-card>
<v-card-title v-text="modalTitle + ' un interval horaire'" />
<v-card-title v-text="modalTitle + ' un intervalle horaire'" />
<v-card-text>
<v-select
prepend-icon="event"
@ -233,7 +233,7 @@
v-model="deleteWhenModal">
<v-card>
<v-card-title>
Voulez vous vraiment supprimer cette interval horaire ?
Voulez vous vraiment supprimer cette intervalle horaire ?
</v-card-title>
<v-card-actions>
<v-btn @click="deleteWhenModal = false" text color="primary">
@ -425,11 +425,6 @@ export default {
return i
})
}
this.when = {
day: '',
from: '10:00',
to: '11:00'
}
this.$store.commit('SET_DATA', { schedule })
this.whenModal = false
},