From e73553dca726703f83e5085560377bfaa202a5f9 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson Date: Mon, 18 Jan 2021 15:26:08 +0200 Subject: wip --- src/modules/reports.js | 41 ++++++++++++++++++++++++++++++++--------- 1 file changed, 32 insertions(+), 9 deletions(-) (limited to 'src/modules/reports.js') diff --git a/src/modules/reports.js b/src/modules/reports.js index fea83e5f..3ede42c6 100644 --- a/src/modules/reports.js +++ b/src/modules/reports.js @@ -1,21 +1,31 @@ +import backendInteractorService from '../services/backend_interactor_service/backend_interactor_service.js' import filter from 'lodash/filter' const reports = { state: { - userId: null, - statuses: [], - preTickedIds: [], - modalActivated: false + reportModal: { + userId: null, + statuses: [], + preTickedIds: [], + activated: false + }, + reports: {} }, mutations: { openUserReportingModal (state, { userId, statuses, preTickedIds }) { - state.userId = userId - state.statuses = statuses - state.preTickedIds = preTickedIds - state.modalActivated = true + state.reportModal.userId = userId + state.reportModal.statuses = statuses + state.reportModal.preTickedIds = preTickedIds + state.reportModal.activated = true }, closeUserReportingModal (state) { - state.modalActivated = false + state.reportModal.modalActivated = false + }, + setReportState (reportsState, { id, state }) { + reportsState.reports[id].state = state + }, + addReport (state, report) { + state.reports[report.id] = report } }, actions: { @@ -31,6 +41,19 @@ const reports = { }, closeUserReportingModal ({ commit }) { commit('closeUserReportingModal') + }, + setReportState ({ commit, rootState }, { id, state }) { + const oldState = rootState.reports.reports[id].state + commit('setReportState', { id, state }) + backendInteractorService.setReportState({ id, state }).then(report => { + console.log(report) + }).catch(e => { + console.error('Failed to set report state', e) + commit('setReportState', { id, oldState }) + }) + }, + addReport ({ commit }, report) { + commit('addReport', report) } } } -- cgit v1.2.3-70-g09d2 From 06f795d1d656d18d87015e3a52e090d6396a03ab Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson Date: Wed, 27 Jan 2021 13:13:10 +0200 Subject: add proper state switcher --- src/components/report/report.js | 9 +++++++-- src/components/report/report.scss | 6 +++++- src/components/report/report.vue | 33 +++++++++++++++------------------ src/modules/reports.js | 7 ++++--- src/services/api/api.service.js | 7 +------ 5 files changed, 32 insertions(+), 30 deletions(-) (limited to 'src/modules/reports.js') diff --git a/src/components/report/report.js b/src/components/report/report.js index 8131dd89..4d9108af 100644 --- a/src/components/report/report.js +++ b/src/components/report/report.js @@ -13,14 +13,19 @@ const Report = { computed: { report () { return this.$store.state.reports.reports[this.reportId] || {} + }, + state: { + get: function () { return this.report.state }, + set: function (val) { this.setReportState(val) } } }, methods: { generateUserProfileLink (user) { return generateProfileLink(user.id, user.screen_name, this.$store.state.instance.restrictedNicknames) }, - setReportState (id, state) { - return this.$store.dispatch('setReportState', { id, state }) + setReportState (state) { + console.log('setting state', state) + return this.$store.dispatch('setReportState', { id: this.report.id, state }) } } } diff --git a/src/components/report/report.scss b/src/components/report/report.scss index 7e9cc2b6..578b4eb1 100644 --- a/src/components/report/report.scss +++ b/src/components/report/report.scss @@ -2,7 +2,11 @@ .Report { .report-content { - margin: 0.5em 0; + margin: 0.5em 0 1em; + } + + .report-state { + margin: 0.5em 0 1em; } .reported-status { diff --git a/src/components/report/report.vue b/src/components/report/report.vue index 638a3aa0..4020773d 100644 --- a/src/components/report/report.vue +++ b/src/components/report/report.vue @@ -1,19 +1,32 @@