aboutsummaryrefslogtreecommitdiff
path: root/src/modules/statuses.js
diff options
context:
space:
mode:
authortaehoon <th.dev91@gmail.com>2019-04-24 15:34:30 -0400
committertaehoon <th.dev91@gmail.com>2019-05-15 12:04:25 -0400
commitce1d19136de322637695891b11117946664eacd6 (patch)
tree3c03e30e6a0e4f7331a22b2c7bfba606720e7f93 /src/modules/statuses.js
parente8abe1273b5c860b78b219973c2a2926014c0ca5 (diff)
refactor pin/unpin status logic
Diffstat (limited to 'src/modules/statuses.js')
-rw-r--r--src/modules/statuses.js26
1 files changed, 11 insertions, 15 deletions
diff --git a/src/modules/statuses.js b/src/modules/statuses.js
index 8edd2e11..9b4eb0f7 100644
--- a/src/modules/statuses.js
+++ b/src/modules/statuses.js
@@ -545,21 +545,17 @@ const statuses = {
rootState.api.backendInteractor.fetchPinnedStatuses(userId)
.then(statuses => dispatch('addNewStatuses', { statuses, timeline: 'user', userId }))
},
- updatePinned ({ rootState, commit }, status) {
- commit('setPinned', { status })
- if (status.pinned) {
- const statusObj = rootState.statuses.allStatusesObject[status.id]
- const user = rootState.users.currentUser
- commit('addNewStatuses', {
- statuses: [statusObj],
- showImmediately: true,
- timeline: 'pinned',
- user,
- userId: user.id
- })
- } else {
- commit('removeStatus', { timeline: 'pinned', statusId: status.id })
- }
+ pinStatus ({ rootState, commit }, statusId) {
+ return rootState.api.backendInteractor.pinOwnStatus(statusId).then((status) => {
+ if (!status.error) {
+ commit('setPinned', { status })
+ }
+ return status
+ })
+ },
+ unpinStatus ({ rootState, commit }, statusId) {
+ rootState.api.backendInteractor.unpinOwnStatus(statusId)
+ .then((status) => commit('setPinned', { status }))
},
retweet ({ rootState, commit }, status) {
// Optimistic retweeting...