Many fix and improvements

This commit is contained in:
Jonathan Bourdon
2024-08-03 04:15:55 -04:00
parent 0d94d79c77
commit 78ead7e387
37 changed files with 669 additions and 735 deletions

View File

@@ -2,7 +2,7 @@
<div class="flex flex-column">
<div class="flex flex-row p-1 items-center">
<div class="px-2 content-center">
<img :src="message.profileImageUrl ?? '/images/usersmedia/anonyme/profilepictures/profileAnonymeSquare.png'"
<img :src="message.createdByPortraitUrl ?? '/images/usersmedia/anonyme/profilepictures/profileAnonymeSquare.png'"
alt="Profile Image"
class="rounded-full"
width="32px"

View File

@@ -59,7 +59,6 @@ onBeforeMount(async () => {
await load({
page_size: 2,
done: function (status) {
console.log(`Loading status: ${status}`)
}
})
})
@@ -71,8 +70,7 @@ async function load({done, page_size}) {
try {
let uri = `/api/messages/${props.subjectId}?page_size=${page_size}`
if (last_id !== null) uri = uri + `&last_id=${last_id}`
console.log(`Fetching messages at: ${uri}`)
const response = await client.get(uri)
if (response.status >= 200 && response.status < 300) {

View File

@@ -6,7 +6,7 @@
<div class="mx-2 content-center">
<img :src="profileUrl"
<img :src="userStore.portraitUrl"
alt="Profile Image"
class="rounded-full"
width="32px"
@@ -35,10 +35,12 @@
<script setup>
import {useClient} from '@/plugins/api.js';
import {ref} from 'vue';
import {useUserStore} from "@/stores/user.js";
import {v7} from 'uuid'
import {useRouter} from "vue-router";
import {useClient} from '@/plugins/api.js';
import {useUserStore} from "@/stores/userStore.js";
import {useAuthStore} from "@/stores/authStore.js";
const props = defineProps({
subjectId: {
@@ -51,13 +53,19 @@ const emit = defineEmits(['message-posted'])
const client = useClient()
const value = ref("")
const user = useUserStore()
const profileUrl = ref(user.getCurrentUser().storedDataUrls.profilePictureUrl ?? '/images/usersmedia/anonyme/profilepictures/profileAnonymeSquare.png')
const router = useRouter()
const userStore = useUserStore()
const authStore = useAuthStore()
const publish = async () => {
if (!authStore.isAuthenticated) {
await router.push('/login')
}
try {
const messageId = v7()
await client.post(`/api/messages/`,
{
"id": messageId,
@@ -65,17 +73,16 @@ const publish = async () => {
"message": value.value
})
const currentUser = user.getCurrentUser()
emit('message-posted',
{
"id": messageId,
"subjectId": props.subjectId,
"createdBy": currentUser.id,
"createdByName": currentUser.alias ?? `${currentUser.firstName} ${currentUser.lastName}`,
"createdByPortraitUrl": currentUser.storedDataUrls.profilePictureUrl,
"createdBy": userStore.user.id,
"createdByName": userStore.alias,
"createdByPortraitUrl": userStore.portraitUrl,
"createdAt": new Date(Date.now()).toISOString(),
"value": value.value,
parentId: null,
"parentId": null
})
value.value = ''