mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-10-16 10:12:49 +00:00
120 lines
3.2 KiB
Vue
120 lines
3.2 KiB
Vue
<template>
|
|
<div :style="style" class="calendar-active">
|
|
<span class="badge-user">
|
|
{{ user.text }}
|
|
<template v-if="invite !== null">
|
|
<i v-if="invite.status === 'accepted'" class="fa fa-check" />
|
|
<i
|
|
v-else-if="invite.status === 'declined'"
|
|
class="fa fa-times"
|
|
/>
|
|
<i
|
|
v-else-if="invite.status === 'pending'"
|
|
class="fa fa-question-o"
|
|
/>
|
|
<i
|
|
v-else-if="invite.status === 'tentative'"
|
|
class="fa fa-question"
|
|
/>
|
|
<span v-else="">{{ invite.status }}</span>
|
|
</template>
|
|
</span>
|
|
<span class="form-check-inline form-switch">
|
|
<input
|
|
class="form-check-input"
|
|
type="checkbox"
|
|
id="flexSwitchCheckDefault"
|
|
v-model="rangeShow"
|
|
/>
|
|
<label
|
|
class="form-check-label"
|
|
for="flexSwitchCheckDefault"
|
|
title="Disponibilités"
|
|
><i class="fa fa-calendar-check-o"
|
|
/></label>
|
|
</span>
|
|
<span class="form-check-inline form-switch">
|
|
<input
|
|
class="form-check-input"
|
|
type="checkbox"
|
|
id="flexSwitchCheckDefault"
|
|
v-model="remoteShow"
|
|
/>
|
|
<label
|
|
class="form-check-label"
|
|
for="flexSwitchCheckDefault"
|
|
title="Agenda"
|
|
><i class="fa fa-calendar"
|
|
/></label>
|
|
</span>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import { mapGetters } from "vuex";
|
|
|
|
export default {
|
|
name: "CalendarActive",
|
|
props: {
|
|
user: {
|
|
type: Object,
|
|
required: true,
|
|
},
|
|
invite: {
|
|
type: Object,
|
|
required: false,
|
|
default: null,
|
|
},
|
|
},
|
|
computed: {
|
|
style() {
|
|
return {
|
|
backgroundColor: this.$store.getters.getUserData(this.user)
|
|
.mainColor,
|
|
};
|
|
},
|
|
rangeShow: {
|
|
set(value) {
|
|
this.$store.commit("showUserOnCalendar", {
|
|
user: this.user,
|
|
ranges: value,
|
|
});
|
|
},
|
|
get() {
|
|
return this.$store.getters.isRangeShownOnCalendarForUser(
|
|
this.user,
|
|
);
|
|
},
|
|
},
|
|
remoteShow: {
|
|
set(value) {
|
|
this.$store.commit("showUserOnCalendar", {
|
|
user: this.user,
|
|
remotes: value,
|
|
});
|
|
},
|
|
get() {
|
|
return this.$store.getters.isRemoteShownOnCalendarForUser(
|
|
this.user,
|
|
);
|
|
},
|
|
},
|
|
},
|
|
};
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
.calendar-active {
|
|
margin: 0 0.25rem 0.25rem 0;
|
|
padding: 0.5rem;
|
|
|
|
border-radius: 0.5rem;
|
|
|
|
color: var(--bs-blue);
|
|
|
|
& > .badge-user {
|
|
margin-right: 0.5rem;
|
|
}
|
|
}
|
|
</style>
|