Update PostComponent, use profileUrl method for comments

This commit is contained in:
Daniel Supernault 2021-07-20 18:06:57 -06:00
parent c571bd90ef
commit 7ed65fc9fe
No known key found for this signature in database
GPG key ID: 0DEF1C662C9033F7
2 changed files with 36 additions and 7 deletions

View file

@ -149,7 +149,7 @@
<div class="media-body"> <div class="media-body">
<div v-if="reply.sensitive == true"> <div v-if="reply.sensitive == true">
<span class="py-3"> <span class="py-3">
<a class="text-dark font-weight-bold mr-1" :href="reply.account.url" v-bind:title="reply.account.username">{{truncate(reply.account.username,15)}}</a> <a class="text-dark font-weight-bold mr-1" :href="profileUrl(reply)" v-bind:title="reply.account.username">{{!reply.account.local ? '@' : '' }}{{truncate(reply.account.username,15)}}</a>
<span class="text-break"> <span class="text-break">
<span class="font-italic text-muted">This comment may contain sensitive material</span> <span class="font-italic text-muted">This comment may contain sensitive material</span>
<span class="text-primary cursor-pointer pl-1" @click="reply.sensitive = false;">Show</span> <span class="text-primary cursor-pointer pl-1" @click="reply.sensitive = false;">Show</span>
@ -159,7 +159,7 @@
<div v-else> <div v-else>
<p class="d-flex justify-content-between align-items-top read-more" style="overflow-y: hidden;"> <p class="d-flex justify-content-between align-items-top read-more" style="overflow-y: hidden;">
<span> <span>
<a class="text-dark font-weight-bold mr-1 text-break" :href="reply.account.url" v-bind:title="reply.account.username">{{truncate(reply.account.username,15)}}</a> <a class="text-dark font-weight-bold mr-1 text-break" :href="profileUrl(reply)" v-bind:title="reply.account.username">{{!reply.account.local ? '@' : '' }}{{truncate(reply.account.username,15)}}</a>
<span class="text-break comment-body" style="word-break: break-all;" v-html="reply.content"></span> <span class="text-break comment-body" style="word-break: break-all;" v-html="reply.content"></span>
</span> </span>
<span style="min-width:38px;"> <span style="min-width:38px;">
@ -182,7 +182,7 @@
<div class="media-body"> <div class="media-body">
<p class="d-flex justify-content-between align-items-top read-more" style="overflow-y: hidden;"> <p class="d-flex justify-content-between align-items-top read-more" style="overflow-y: hidden;">
<span> <span>
<a class="text-dark font-weight-bold mr-1" :href="s.account.url" :title="s.account.username">{{s.account.username}}</a> <a class="text-dark font-weight-bold mr-1" :href="profileUrl(s)" :title="s.account.username">{{!s.account.local ? '@' : '' }}{{s.account.username}}</a>
<span class="text-break comment-body" style="word-break: break-all;" v-html="s.content"></span> <span class="text-break comment-body" style="word-break: break-all;" v-html="s.content"></span>
</span> </span>
<span class="pl-2" style="min-width:38px"> <span class="pl-2" style="min-width:38px">
@ -1567,6 +1567,14 @@ export default {
return '/i/web/post/_/' + status.account.id + '/' + status.id; return '/i/web/post/_/' + status.account.id + '/' + status.id;
}, },
profileUrl(status) {
if(status.local == true) {
return status.account.url;
}
return '/i/web/profile/_/' + status.account.id;
},
showTaggedPeopleModal() { showTaggedPeopleModal() {
if(!$('body').hasClass('loggedIn') && this.loaded) { if(!$('body').hasClass('loggedIn') && this.loaded) {
return; return;

View file

@ -49,16 +49,17 @@
<span v-bind:class="[size =='lg' ? 'fas fa-ellipsis-v fa-lg text-muted' : 'fas fa-ellipsis-v fa-sm text-lighter']"></span> <span v-bind:class="[size =='lg' ? 'fas fa-ellipsis-v fa-lg text-muted' : 'fas fa-ellipsis-v fa-sm text-lighter']"></span>
</span> </span>
<div class="modal" tabindex="-1" role="dialog" :id="'mt_pid_'+status.id"> <div class="modal" tabindex="-1" role="dialog" :id="'mt_pid_'+status.id">
<div class="modal-dialog modal-sm" role="document"> <div class="modal-dialog modal-sm modal-dialog-centered" role="document">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body text-center"> <div class="modal-body text-center">
<div class="list-group text-dark"> <div class="list-group">
<a class="list-group-item text-dark text-decoration-none" :href="status.url">Go to post</a> <a class="list-group-item text-dark text-decoration-none" :href="statusUrl(status)">Go to post</a>
<!-- a class="list-group-item font-weight-bold text-decoration-none" :href="status.url">Share</a> <!-- a class="list-group-item font-weight-bold text-decoration-none" :href="status.url">Share</a>
<a class="list-group-item font-weight-bold text-decoration-none" :href="status.url">Embed</a> --> <a class="list-group-item font-weight-bold text-decoration-none" :href="status.url">Embed</a> -->
<a class="list-group-item text-dark text-decoration-none" href="#" @click.prevent="hidePost(status)">Hide</a> <a class="list-group-item text-dark text-decoration-none" href="#" @click.prevent="hidePost(status)">Hide</a>
<a v-if="activeSession == true && !statusOwner(status)" class="list-group-item text-danger font-weight-bold text-decoration-none" :href="reportUrl(status)">Report</a> <a v-if="activeSession == true && !statusOwner(status)" class="list-group-item text-danger font-weight-bold text-decoration-none" :href="reportUrl(status)">Report</a>
<div v-if="activeSession == true && statusOwner(status) == true || profile.is_admin == true" class="list-group-item text-danger font-weight-bold cursor-pointer" @click.prevent="deletePost">Delete</div> <div v-if="activeSession == true && statusOwner(status) == true || profile.is_admin == true" class="list-group-item text-danger font-weight-bold cursor-pointer" @click.prevent="deletePost">Delete</div>
<a class="list-group-item text-lighter text-decoration-none" href="#" @click.prevent="closeModal()">Close</a>
</div> </div>
</div> </div>
</div> </div>
@ -199,7 +200,27 @@
}).catch(err => { }).catch(err => {
swal('Error', 'Something went wrong. Please try again later.', 'error'); swal('Error', 'Something went wrong. Please try again later.', 'error');
}); });
},
statusUrl(status) {
if(status.local == true) {
return status.url;
}
return '/i/web/post/_/' + status.account.id + '/' + status.id;
},
profileUrl(status) {
if(status.local == true) {
return status.account.url;
}
return '/i/web/profile/_/' + status.account.id;
},
closeModal() {
$('#mt_pid_'+this.status.id).modal('hide');
} }
} }
} }
</script> </script>