From 46f53b2405dbf93265f6158b7fa45f66062d5371 Mon Sep 17 00:00:00 2001 From: Angelina Filippova Date: Tue, 26 Mar 2019 23:54:21 +0500 Subject: [PATCH] Update filters names and the way they are passed to api --- src/api/users.js | 8 ++++---- src/store/modules/users.js | 14 ++++++++------ src/views/users/components/UsersFilter.vue | 8 ++++---- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/src/api/users.js b/src/api/users.js index 2ec6a2ab..4b26c162 100644 --- a/src/api/users.js +++ b/src/api/users.js @@ -2,10 +2,10 @@ import request from '@/utils/request' import { getToken } from '@/utils/auth' import { baseName } from './utils' -export async function fetchUsers(showLocalUsersOnly, authHost, token, page = 1) { +export async function fetchUsers(filters, authHost, token, page = 1) { return await request({ baseURL: baseName(authHost), - url: `/api/pleroma/admin/users?page=${page}&local_only=${showLocalUsersOnly}`, + url: `/api/pleroma/admin/users?page=${page}&filters=${filters}`, method: 'get', headers: authHeaders(token) }) @@ -20,10 +20,10 @@ export async function toggleUserActivation(nickname, authHost, token) { }) } -export async function searchUsers(query, showLocalUsersOnly, authHost, token, page = 1) { +export async function searchUsers(query, filters, authHost, token, page = 1) { return await request({ baseURL: baseName(authHost), - url: `/api/pleroma/admin/users?query=${query}&page=${page}&local_only=${showLocalUsersOnly}`, + url: `/api/pleroma/admin/users?query=${query}&page=${page}&filters=${filters}`, method: 'get', headers: authHeaders(token) }) diff --git a/src/store/modules/users.js b/src/store/modules/users.js index b165c563..6927d924 100644 --- a/src/store/modules/users.js +++ b/src/store/modules/users.js @@ -8,10 +8,10 @@ const users = { totalUsersCount: 0, currentPage: 1, filters: { - localUsersOnly: false, - externalUsersOnly: false, - activeUsersOnly: false, - deactivatedUsersOnly: false + local: false, + external: false, + active: false, + deactivated: false } }, mutations: { @@ -48,7 +48,8 @@ const users = { }, actions: { async FetchUsers({ commit, state, getters }, { page }) { - const response = await fetchUsers(state.filters, getters.authHost, getters.token, page) + const filters = Object.keys(state.filters).filter(filter => state.filters[filter]).join() + const response = await fetchUsers(filters, getters.authHost, getters.token, page) commit('SET_LOADING', true) @@ -67,7 +68,8 @@ const users = { commit('SET_LOADING', true) commit('SET_SEARCH_QUERY', query) - const response = await searchUsers(query, state.filters, getters.authHost, getters.token, page) + const filters = Object.keys(state.filters).filter(filter => state.filters[filter]).join() + const response = await searchUsers(query, filters, getters.authHost, getters.token, page) loadUsers(commit, page, response.data) } diff --git a/src/views/users/components/UsersFilter.vue b/src/views/users/components/UsersFilter.vue index 2df1c7f5..aaaccb34 100644 --- a/src/views/users/components/UsersFilter.vue +++ b/src/views/users/components/UsersFilter.vue @@ -28,19 +28,19 @@ export default { label: this.$i18n.t('usersFilter.byUserType'), options: [{ label: this.$i18n.t('usersFilter.local'), - value: 'localUsersOnly' + value: 'local' }, { label: this.$i18n.t('usersFilter.external'), - value: 'externalUsersOnly' + value: 'external' }] }, { label: this.$i18n.t('usersFilter.byStatus'), options: [{ label: this.$i18n.t('usersFilter.active'), - value: 'activeUsersOnly' + value: 'active' }, { label: this.$i18n.t('usersFilter.deactivated'), - value: 'deactivatedUsersOnly' + value: 'deactivated' }] }], value: []