Style messages sent by admin differently
This commit is contained in:
parent
a2dd26348c
commit
1198f007fa
5 changed files with 40 additions and 9 deletions
|
|
@ -1,5 +1,8 @@
|
|||
@import "@/assets/css/main.scss";
|
||||
|
||||
$admin-bg: black;
|
||||
$admin-fg: white;
|
||||
|
||||
.chat-root {
|
||||
position: absolute;
|
||||
left: 0px;
|
||||
|
|
@ -151,6 +154,9 @@
|
|||
position: relative;
|
||||
max-width: 70%;
|
||||
}
|
||||
&.from-admin .bubble {
|
||||
background-color: $admin-bg;
|
||||
}
|
||||
.audio-bubble {
|
||||
overflow: scroll;
|
||||
display: inline-block;
|
||||
|
|
@ -264,6 +270,9 @@
|
|||
font-size: 0.8rem;
|
||||
color: #888888;
|
||||
}
|
||||
.from-admin & {
|
||||
color: $admin-fg;
|
||||
}
|
||||
}
|
||||
|
||||
.original-message {
|
||||
|
|
@ -332,15 +341,16 @@
|
|||
.quick-reaction-container {
|
||||
position: absolute;
|
||||
background-color: #000000;
|
||||
border: 3px solid white;
|
||||
border-radius: 15px;
|
||||
height: 30px;
|
||||
border: 2px solid white;
|
||||
border-radius: 13px;
|
||||
height: 26px;
|
||||
width: fit-content;
|
||||
right: 10px;
|
||||
top: -12px;
|
||||
top: -15px;
|
||||
padding: 0px 6px;
|
||||
.quick-reaction {
|
||||
margin: 0px 6px;
|
||||
padding: 2px;
|
||||
margin: 0px 0px;
|
||||
padding: 1px;
|
||||
font-size: 10px;
|
||||
&:hover {
|
||||
border: 1px solid #888888;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<div class="messageIn">
|
||||
<div :class="messageClasses">
|
||||
<v-avatar class="avatar" size="32" color="#ededed">
|
||||
<img v-if="messageEventAvatar(event)" :src="messageEventAvatar(event)" />
|
||||
<span v-else class="white--text headline">{{
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<div class="messageIn">
|
||||
<div :class="messageClasses">
|
||||
<v-avatar class="avatar" size="32" color="#ededed">
|
||||
<img v-if="messageEventAvatar(event)" :src="messageEventAvatar(event)" />
|
||||
<span v-else class="white--text headline">{{
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<div class="messageIn">
|
||||
<div :class="messageClasses">
|
||||
<v-avatar class="avatar" size="32" color="#ededed">
|
||||
<img v-if="messageEventAvatar(event)" :src="messageEventAvatar(event)" />
|
||||
<span v-else class="white--text headline">{{
|
||||
|
|
|
|||
|
|
@ -111,6 +111,14 @@ export default {
|
|||
return lines.join('\n');
|
||||
}
|
||||
return this.event.getContent().body;
|
||||
},
|
||||
|
||||
/**
|
||||
* Classes to set for the message. Currently only for "messageIn", TODO: - detect messageIn or messageOut.
|
||||
*/
|
||||
|
||||
messageClasses() {
|
||||
return {'messageIn':true,'from-admin':this.senderIsAdminOrModerator(this.event)}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
@ -154,6 +162,19 @@ export default {
|
|||
return null;
|
||||
},
|
||||
|
||||
/**
|
||||
* Return true if the event sender has a powel level > 0, e.g. is moderator or admin of some sort.
|
||||
*/
|
||||
senderIsAdminOrModerator(event) {
|
||||
if (this.room) {
|
||||
const member = this.room.getMember(event.getSender());
|
||||
if (member) {
|
||||
return member.powerLevel > 0;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
},
|
||||
|
||||
formatTime(time) {
|
||||
const date = new Date();
|
||||
date.setTime(time);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue