1
0
Эх сурвалжийг харах

Update PostComponent, use profileUrl method for comments

Daniel Supernault 4 жил өмнө
parent
commit
7ed65fc9fe

+ 11 - 3
resources/assets/js/components/PostComponent.vue

@@ -149,7 +149,7 @@
 													<div class="media-body">
 														<div v-if="reply.sensitive == true">
 															<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="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>
@@ -159,7 +159,7 @@
 														<div v-else>
 															<p class="d-flex justify-content-between align-items-top read-more" style="overflow-y: hidden;">
 																<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>
 																<span style="min-width:38px;">
@@ -182,7 +182,7 @@
 																	<div class="media-body">
 																		<p class="d-flex justify-content-between align-items-top read-more" style="overflow-y: hidden;">
 																			<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>
 																			<span class="pl-2" style="min-width:38px">
@@ -1567,6 +1567,14 @@ export default {
 				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() {
 				if(!$('body').hasClass('loggedIn') && this.loaded) {
 					return;

+ 25 - 4
resources/assets/js/components/PostMenu.vue

@@ -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>
 			<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-body text-center">
-							<div class="list-group text-dark">
-								<a class="list-group-item text-dark text-decoration-none" :href="status.url">Go to post</a>
+							<div class="list-group">
+								<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">Embed</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>
 								<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>
@@ -199,7 +200,27 @@
 				}).catch(err => {
 					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>