diff options
| author | taehoon <th.dev91@gmail.com> | 2019-04-24 15:34:30 -0400 |
|---|---|---|
| committer | taehoon <th.dev91@gmail.com> | 2019-05-15 12:04:25 -0400 |
| commit | ce1d19136de322637695891b11117946664eacd6 (patch) | |
| tree | 3c03e30e6a0e4f7331a22b2c7bfba606720e7f93 /src/modules/statuses.js | |
| parent | e8abe1273b5c860b78b219973c2a2926014c0ca5 (diff) | |
refactor pin/unpin status logic
Diffstat (limited to 'src/modules/statuses.js')
| -rw-r--r-- | src/modules/statuses.js | 26 |
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... |
