Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/polls.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/js/store/modules/poll.js')
-rw-r--r--src/js/store/modules/poll.js75
1 files changed, 20 insertions, 55 deletions
diff --git a/src/js/store/modules/poll.js b/src/js/store/modules/poll.js
index aa587336..14aedb22 100644
--- a/src/js/store/modules/poll.js
+++ b/src/js/store/modules/poll.js
@@ -21,12 +21,11 @@
*
*/
-import axios from '@nextcloud/axios'
import moment from '@nextcloud/moment'
-import { generateUrl } from '@nextcloud/router'
import acl from './subModules/acl.js'
import { uniqueArrayOfObjects } from '../../helpers/arrayHelper.js'
-import axiosDefaultConfig from '../../helpers/AxiosDefault.js'
+import { PollsAPI } from '../../Api/polls.js'
+import { PublicAPI } from '../../Api/public.js'
const defaultPoll = () => ({
id: 0,
@@ -173,52 +172,40 @@ const actions = {
},
async get(context) {
- let endPoint = 'apps/polls'
-
- if (context.rootState.route.name === 'publicVote') {
- endPoint = `${endPoint}/s/${context.rootState.route.params.token}/poll`
- } else if (context.rootState.route.name === 'vote') {
- endPoint = `${endPoint}/poll/${context.rootState.route.params.id}/poll`
- } else {
- context.commit('reset')
- context.commit('acl/reset')
- return
- }
try {
- const response = await axios.get(generateUrl(endPoint), {
- ...axiosDefaultConfig,
- params: { time: +new Date() },
- })
+ let response = null
+ if (context.rootState.route.name === 'publicVote') {
+ response = await PublicAPI.getPoll(context.rootState.route.params.token)
+ } else if (context.rootState.route.name === 'vote') {
+ response = await PollsAPI.getPoll(context.rootState.route.params.id)
+ } else {
+ context.commit('reset')
+ context.commit('acl/reset')
+ return
+ }
context.commit('set', response.data)
context.commit('acl/set', response.data)
} catch (e) {
- console.debug('Error loading poll', { error: e.response })
+ console.debug('Error loading poll', { error: e })
throw e
}
},
async add(context, payload) {
- const endPoint = 'apps/polls/poll/add'
try {
- const response = await axios.post(generateUrl(endPoint), {
- title: payload.title,
- type: payload.type,
- }, axiosDefaultConfig)
-
- context.dispatch('polls/list', null, { root: true })
+ const response = await PollsAPI.addPoll(payload.type, payload.title)
return response
} catch (e) {
console.error('Error adding poll:', { error: e.response }, { state: context.state })
throw e
+ } finally {
+ context.dispatch('polls/list', null, { root: true })
}
},
async update(context) {
- const endPoint = `apps/polls/poll/${context.state.id}`
try {
- const response = await axios.put(generateUrl(endPoint), {
- poll: context.state,
- }, axiosDefaultConfig)
+ const response = await PollsAPI.updatePoll(context.state)
context.commit('set', response.data)
context.commit('acl/set', response.data)
} catch (e) {
@@ -231,9 +218,8 @@ const actions = {
},
async delete(context, payload) {
- const endPoint = `apps/polls/poll/${payload.pollId}`
try {
- await axios.delete(generateUrl(endPoint), axiosDefaultConfig)
+ await PollsAPI.deletePoll(payload.pollId)
} catch (e) {
console.error('Error deleting poll', { error: e.response }, { payload })
} finally {
@@ -242,9 +228,8 @@ const actions = {
},
async toggleArchive(context, payload) {
- const endPoint = `apps/polls/poll/${payload.pollId}/toggleArchive`
try {
- await axios.put(generateUrl(endPoint), null, axiosDefaultConfig)
+ await PollsAPI.toggleArchive(payload.pollId)
} catch (e) {
console.error('Error archiving/restoring', { error: e.response }, { payload })
} finally {
@@ -253,34 +238,14 @@ const actions = {
},
async clone(context, payload) {
- const endPoint = `apps/polls/poll/${payload.pollId}/clone`
try {
- const response = await axios.post(generateUrl(endPoint), null, axiosDefaultConfig)
+ const response = await PollsAPI.clonePoll(payload.pollId)
context.dispatch('polls/list', null, { root: true })
return response
} catch (e) {
console.error('Error cloning poll', { error: e.response }, { payload })
}
},
-
- async sendConfirmation(context, payload) {
- const endPoint = `apps/polls/poll/${context.rootState.route.params.id}/confirmation`
- try {
- const response = await axios.post(generateUrl(endPoint), null, axiosDefaultConfig)
- return response.data.confirmations
- } catch (e) {
- console.error('Error sending confirmation', { error: e.response }, { payload })
- }
- },
-
- async getParticipantsEmailAddresses(context) {
- const endPoint = `apps/polls/poll/${context.state.id}/addresses`
- try {
- return await axios.get(generateUrl(endPoint), axiosDefaultConfig)
- } catch (e) {
- console.error('Error retrieving email addresses', { error: e.response })
- }
- },
}
export default { namespaced, state, mutations, getters, actions, modules }