read notification working

This commit is contained in:
isUnknown 2025-01-15 14:56:17 +01:00
parent 0b472988a2
commit 2071d9bd6d
4 changed files with 57 additions and 48 deletions

View file

@ -86,6 +86,7 @@ import { useDialogStore } from "../../stores/dialog";
import { computed, onMounted, ref, useTemplateRef } from "vue";
import { storeToRefs } from "pinia";
import { usePageStore } from "../../stores/page";
import { useRoute } from "vue-router";
dayjs.locale("fr");
@ -96,6 +97,7 @@ const { comment, commentIndex } = defineProps({
const emits = defineEmits(["update:file", "close:comment"]);
const route = useRoute();
const userStore = useUserStore();
const api = useApiStore();
const dialog = useDialogStore();
@ -146,8 +148,7 @@ async function read() {
if (getStatus.value !== "unread") return;
try {
const newNotification = await api.readNotification(comment, page.value.uri);
console.log(newNotification);
userStore.readNotification(comment.id);
userStore.readNotification(comment.id, route.params.id);
} catch (error) {
console.log("Erreur lors de la lecture de la notification : ", error);
}

View file

@ -2,7 +2,6 @@
<article
class="notification | bg-white rounded-lg | p-16 | flow"
data-type="comment"
@click="router.push(href)"
>
<header>
<p class="flex">
@ -39,31 +38,8 @@
</template>
<script setup>
import { useRouter } from "vue-router";
import { useNotificationsStore } from "../../stores/notifications";
const router = useRouter();
const { notification } = defineProps({ notification: Object });
const { formatDate } = useNotificationsStore();
const href = getTargetPath();
// Functions
function getTargetPath() {
const uri = notification.location.page.uri;
const isDocumentBrief =
notification.location.page.template === "client-brief" &&
notification.location?.file.type === "document";
if (isDocumentBrief) {
return notification.project.uri + "?dialog=client-brief&comments=true";
}
if (notification.location.page.template === "track") {
return notification.project.uri + "?dialog=virtual-sample&comments=true";
}
return uri;
}
</script>