From 0eed2ccca8a0980c161bb5a52b211c507e0ffef5 Mon Sep 17 00:00:00 2001 From: lain Date: Tue, 18 Jun 2019 20:28:31 +0000 Subject: Feature/polls attempt 2 --- src/modules/statuses.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/modules/statuses.js') diff --git a/src/modules/statuses.js b/src/modules/statuses.js index e6ee5447..5f09b8f5 100644 --- a/src/modules/statuses.js +++ b/src/modules/statuses.js @@ -494,6 +494,10 @@ export const mutations = { const newStatus = state.allStatusesObject[id] newStatus.favoritedBy = favoritedByUsers.filter(_ => _) newStatus.rebloggedBy = rebloggedByUsers.filter(_ => _) + }, + updateStatusWithPoll (state, { id, poll }) { + const status = state.allStatusesObject[id] + status.poll = poll } } @@ -578,6 +582,18 @@ const statuses = { ]).then(([favoritedByUsers, rebloggedByUsers]) => commit('addFavsAndRepeats', { id, favoritedByUsers, rebloggedByUsers }) ) + }, + votePoll ({ rootState, commit }, { id, pollId, choices }) { + return rootState.api.backendInteractor.vote(pollId, choices).then(poll => { + commit('updateStatusWithPoll', { id, poll }) + return poll + }) + }, + refreshPoll ({ rootState, commit }, { id, pollId }) { + return rootState.api.backendInteractor.fetchPoll(pollId).then(poll => { + commit('updateStatusWithPoll', { id, poll }) + return poll + }) } }, mutations -- cgit v1.2.3-70-g09d2