Skip to content

Commit c2e9ec1

Browse files
Anthony KinseyAnthony Kinsey
authored andcommitted
feat: port over permissions for messages view
1 parent 39a48fe commit c2e9ec1

File tree

1 file changed

+18
-7
lines changed

1 file changed

+18
-7
lines changed

src/views/Messages.vue

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -299,11 +299,21 @@ export default {
299299
}
300300
}
301301
const addQuote = message => console.log(message)
302-
const canDeleteConversation = () => true
303-
const canDeleteMessage = () => true
304-
const canCreateConversation = () => true
305-
const canCreateMessage = () => true
306-
const createConversation = convo => window.innerWidth > window.mobile_break_width ?messagesApi.convos.create(convo).then(reload) : messagesApi.convos.create(convo).then(data => preloadConversation(data.conversation_id))
302+
const canDeleteConversation = () => v.loggedIn && $auth.permissionUtils.hasPermission('conversations.delete.allow')
303+
304+
const canDeleteMessage = (messageUserId) => {
305+
if (!v.loggedIn) return false
306+
if (!$auth.permissionUtils.hasPermission('messages.delete.allow')) return false
307+
return messageUserId === v.authedUser.id || $auth.permissionUtils.hasPermission('messages.delete.bypass.owner')
308+
}
309+
310+
const canCreateConversation = () => v.loggedIn && $auth.permissionUtils.hasPermission('conversations.create.allow')
311+
312+
const canCreateMessage = () => v.loggedIn && $auth.permissionUtils.hasPermission('messages.create.allow')
313+
314+
// Stops split view in mobile from breaking after creating new conversation
315+
// Hacky, handle mobile split view
316+
const createConversation = convo => window.innerWidth > window.mobile_break_width ? messagesApi.convos.create(convo).then(reload) : messagesApi.convos.create(convo).then(data => preloadConversation(data.conversation_id))
307317
308318
// Hacky, handle mobile split view
309319
const createMessage = msg => window.innerWidth > window.mobile_break_width ? messagesApi.create(msg).then(reload) : messagesApi.create(msg).then(() => preloadConversation(v.selectedConversationId))
@@ -738,11 +748,10 @@ export default {
738748
@include break-mobile-sm {
739749
background: $base-background-color;
740750
position: absolute;
741-
top: 1rem;
751+
top: 0;
742752
right: 0;
743753
bottom: 0;
744754
left: 0;
745-
margin-top: 1rem;
746755
padding: 0.5rem;
747756
transform: translateX(100%);
748757
transition: all ease-in-out 150ms;
@@ -760,5 +769,7 @@ export default {
760769
.messages {
761770
// @include span-columns(8); @include omega;
762771
}
772+
773+
main { position: relative; }
763774
}
764775
</style>

0 commit comments

Comments
 (0)