|
|
|
@ -58,7 +58,7 @@
|
|
|
|
|
|
|
|
|
|
<div class="postPresenterContainer">
|
|
|
|
|
<div v-if="status.pf_type === 'photo'" class="w-100">
|
|
|
|
|
<photo-presenter :status="status"></photo-presenter>
|
|
|
|
|
<photo-presenter :status="status" v-on:lightbox="lightbox"></photo-presenter>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div v-else-if="status.pf_type === 'video'" class="w-100">
|
|
|
|
@ -355,6 +355,19 @@
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</b-modal>
|
|
|
|
|
<b-modal
|
|
|
|
|
id="lightbox"
|
|
|
|
|
ref="lightboxModal"
|
|
|
|
|
hide-header="true"
|
|
|
|
|
hide-footer="true"
|
|
|
|
|
centered
|
|
|
|
|
size="lg"
|
|
|
|
|
body-class="p-0"
|
|
|
|
|
>
|
|
|
|
|
<div v-if="lightboxMedia" :class="lightboxMedia.filter_class">
|
|
|
|
|
<img :src="lightboxMedia.url" class="img-fluid">
|
|
|
|
|
</div>
|
|
|
|
|
</b-modal>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
@ -374,12 +387,12 @@
|
|
|
|
|
|
|
|
|
|
<script type="text/javascript">
|
|
|
|
|
export default {
|
|
|
|
|
props: ['scope'],
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
page: 2,
|
|
|
|
|
feed: [],
|
|
|
|
|
profile: {},
|
|
|
|
|
scope: window.location.pathname == '/' ? 'home' : 'local',
|
|
|
|
|
min_id: 0,
|
|
|
|
|
max_id: 0,
|
|
|
|
|
notifications: {},
|
|
|
|
@ -401,7 +414,8 @@
|
|
|
|
|
followerMore: true,
|
|
|
|
|
following: [],
|
|
|
|
|
followingCursor: 1,
|
|
|
|
|
followingMore: true
|
|
|
|
|
followingMore: true,
|
|
|
|
|
lightboxMedia: false
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
@ -437,12 +451,23 @@
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
fetchTimelineApi() {
|
|
|
|
|
let homeTimeline = '/api/v1/timelines/home';
|
|
|
|
|
let localTimeline = '/api/v1/timelines/public';
|
|
|
|
|
let apiUrl = this.scope == 'home' ? homeTimeline : localTimeline;
|
|
|
|
|
let apiUrl = false;
|
|
|
|
|
switch(this.scope) {
|
|
|
|
|
case 'home':
|
|
|
|
|
apiUrl = '/api/v1/timelines/home';
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 'local':
|
|
|
|
|
apiUrl = '/api/v1/timelines/public';
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 'network':
|
|
|
|
|
apiUrl = '/api/v1/timelines/network';
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
axios.get(apiUrl, {
|
|
|
|
|
params: {
|
|
|
|
|
max_id: 0,
|
|
|
|
|
max_id: this.max_id,
|
|
|
|
|
limit: 4
|
|
|
|
|
}
|
|
|
|
|
}).then(res => {
|
|
|
|
@ -459,9 +484,20 @@
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
infiniteTimeline($state) {
|
|
|
|
|
let homeTimeline = '/api/v1/timelines/home';
|
|
|
|
|
let localTimeline = '/api/v1/timelines/public';
|
|
|
|
|
let apiUrl = this.scope == 'home' ? homeTimeline : localTimeline;
|
|
|
|
|
let apiUrl = false;
|
|
|
|
|
switch(this.scope) {
|
|
|
|
|
case 'home':
|
|
|
|
|
apiUrl = '/api/v1/timelines/home';
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 'local':
|
|
|
|
|
apiUrl = '/api/v1/timelines/public';
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 'network':
|
|
|
|
|
apiUrl = '/api/v1/timelines/network';
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
axios.get(apiUrl, {
|
|
|
|
|
params: {
|
|
|
|
|
max_id: this.max_id,
|
|
|
|
@ -894,7 +930,7 @@
|
|
|
|
|
this.following = res.data;
|
|
|
|
|
this.followingCursor++;
|
|
|
|
|
});
|
|
|
|
|
if(res.data.length < 10) {
|
|
|
|
|
if(res.data.length < 10) {
|
|
|
|
|
this.followingMore = false;
|
|
|
|
|
}
|
|
|
|
|
this.$refs.followingModal.show();
|
|
|
|
@ -914,7 +950,7 @@
|
|
|
|
|
this.followers = res.data;
|
|
|
|
|
this.followerCursor++;
|
|
|
|
|
})
|
|
|
|
|
if(res.data.length < 10) {
|
|
|
|
|
if(res.data.length < 10) {
|
|
|
|
|
this.followerMore = false;
|
|
|
|
|
}
|
|
|
|
|
this.$refs.followerModal.show();
|
|
|
|
@ -931,13 +967,12 @@
|
|
|
|
|
this.following.push(...res.data);
|
|
|
|
|
this.followingCursor++;
|
|
|
|
|
}
|
|
|
|
|
if(res.data.length < 10) {
|
|
|
|
|
if(res.data.length < 10) {
|
|
|
|
|
this.followingMore = false;
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
followersLoadMore() {
|
|
|
|
|
axios.get('/api/v1/accounts/'+this.profile.id+'/followers', {
|
|
|
|
|
params: {
|
|
|
|
@ -949,10 +984,15 @@
|
|
|
|
|
this.followers.push(...res.data);
|
|
|
|
|
this.followerCursor++;
|
|
|
|
|
}
|
|
|
|
|
if(res.data.length < 10) {
|
|
|
|
|
if(res.data.length < 10) {
|
|
|
|
|
this.followerMore = false;
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
lightbox(src) {
|
|
|
|
|
this.lightboxMedia = src;
|
|
|
|
|
this.$refs.lightboxModal.show();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|