From c323cea1d18bf2b4385385d121793797685a31ac Mon Sep 17 00:00:00 2001 From: Gilgard <Hjelljord.alida@gmail.com> Date: Fri, 22 Apr 2022 11:11:41 +0200 Subject: [PATCH] Profile views designed --- src/assets/defaultUserProfileImage.jpg | Bin 0 -> 5072 bytes .../UserProfileComponents/RatingComponent.vue | 35 ++++++++++ .../UserListItemCard.vue | 64 ++++++++++++++++++ src/views/ProfileView.vue | 30 ++++++++ 4 files changed, 129 insertions(+) create mode 100644 src/assets/defaultUserProfileImage.jpg create mode 100644 src/components/UserProfileComponents/RatingComponent.vue create mode 100644 src/components/UserProfileComponents/UserListItemCard.vue create mode 100644 src/views/ProfileView.vue diff --git a/src/assets/defaultUserProfileImage.jpg b/src/assets/defaultUserProfileImage.jpg new file mode 100644 index 0000000000000000000000000000000000000000..18c8cd70555d36af38f2bf164b0a22740b14cf6b GIT binary patch literal 5072 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 Y+tOkEXp)R*nUv0Q28XR(zmw7b0E=>l;s5{u literal 0 HcmV?d00001 diff --git a/src/components/UserProfileComponents/RatingComponent.vue b/src/components/UserProfileComponents/RatingComponent.vue new file mode 100644 index 0000000..218b35c --- /dev/null +++ b/src/components/UserProfileComponents/RatingComponent.vue @@ -0,0 +1,35 @@ +<template> + <v-row class="mb-6" justify="start" dense> + <v-col cols="5"> + <div>{{ ratingType }} rating:</div> + </v-col> + <v-col cols="2"> + <v-rating + v-model="compRating" + color="amber" + dense + half-increments + readonly + size="14" + ></v-rating> + </v-col> + <v-col cols="1"> + <div class="grey--text ms-4">{{ compRating }}</div> + </v-col> + </v-row> +</template> + +<script> +export default { + name: "RatingComponent", + data() { + return { + compRating: this.rating + 0, + }; + }, + props: { + rating: Number, + ratingType: String, + }, +}; +</script> diff --git a/src/components/UserProfileComponents/UserListItemCard.vue b/src/components/UserProfileComponents/UserListItemCard.vue new file mode 100644 index 0000000..ec8b455 --- /dev/null +++ b/src/components/UserProfileComponents/UserListItemCard.vue @@ -0,0 +1,64 @@ +<template> + <v-card class="pa-2" max-height="100" width="90%" outlined tile> + <v-row align="center" class="spacer" no-gutters> + <v-col cols="4" sm="2" md="1"> + <v-avatar size="60"> + <v-img src="@/assets/defaultUserProfileImage.jpg"></v-img> + </v-avatar> + </v-col> + + <v-col class="hidden-xs-only" sm="5" md="3"> + <v-card-title> {{ name }} </v-card-title> + </v-col> + + <v-col> + <v-card-text> + <div>{{ ratingType }} rating:</div> + + <v-rating + v-model="rating" + color="amber" + dense + half-increments + readonly + size="14" + ></v-rating> + </v-card-text> + </v-col> + + <v-col offset="4"> + <v-card-text> + <v-chip v-if="admin" class="ma-2" color="error" outlined pill> + Fjern bruker + <v-icon right> mdi-trash-can-outline </v-icon> + </v-chip> + <v-chip v-else class="ma-2" color="primary" outlined pill> + Ã…pne chat + <v-icon right> mdi-chat </v-icon> + </v-chip> + </v-card-text> + </v-col> + </v-row> + <v-col> </v-col> + </v-card> +</template> + +<script> +export default { + name: "UserListItem", + data() { + return { + name: "Navn Navnesen", + rating: 3, + admin: true, + }; + }, + computed: { + //user: getUser(userID), + }, + props: { + userID: Number, + ratingType: String, + }, +}; +</script> diff --git a/src/views/ProfileView.vue b/src/views/ProfileView.vue new file mode 100644 index 0000000..09d3228 --- /dev/null +++ b/src/views/ProfileView.vue @@ -0,0 +1,30 @@ +<!-- View for looking at different profile display methods --> +<template> + <v-container> + <v-row align="center" class="pa-2"> + <large-profile-card :isCurrentUser="true" :userID="2" /> + </v-row> + <v-row align="center" class="pa-2"> + <large-profile-card :userID="1" :isCurrentUser="false" /> + </v-row> + <v-row align="center" class="pa-2"> + <user-list-item :userID="1" :ratingType="'Leietaker'" /> + </v-row> + </v-container> +</template> + +<script> +import { defineComponent } from "vue"; + +// Components +import LargeProfileCard from "@/components/UserProfileComponents/LargeProfileCard.vue"; +import UserListItem from "@/components/UserProfileComponents/UserListItemCard.vue"; + +export default defineComponent({ + name: "ProfileView", + components: { + LargeProfileCard, + UserListItem, + }, +}); +</script> -- GitLab