From 983d84e3c93045811dce9266dc8ddaa9a9c72f69 Mon Sep 17 00:00:00 2001 From: Angelina Filippova Date: Wed, 6 Mar 2019 19:44:37 +0000 Subject: [PATCH] Add local users filter --- src/api/users.js | 9 ++++----- src/store/modules/users.js | 18 +++++++++++++----- src/views/users/index.vue | 17 ++++++++++++++++- 3 files changed, 33 insertions(+), 11 deletions(-) diff --git a/src/api/users.js b/src/api/users.js index bfbfd9f4..a6023f9c 100644 --- a/src/api/users.js +++ b/src/api/users.js @@ -1,8 +1,8 @@ import request from '@/utils/request' -export async function fetchUsers(page = 1) { +export async function fetchUsers(page = 1, showLocalUsers) { return await request({ - url: `/api/pleroma/admin/users?page=${page}`, + url: `/api/pleroma/admin/users?page=${page}&local_only=${showLocalUsers}`, method: 'get' }) } @@ -14,11 +14,10 @@ export async function toggleUserActivation(nickname) { }) } -export async function searchUsers(query, page = 1) { +export async function searchUsers(query, page = 1, showLocalUsers) { return await request({ - url: `/api/pleroma/admin/users/search?query=${query}&page=${page}`, + url: `/api/pleroma/admin/users?query=${query}&page=${page}&local_only=${showLocalUsers}`, method: 'get' }) } -export default { fetchUsers, toggleUserActivation } diff --git a/src/store/modules/users.js b/src/store/modules/users.js index 3997165a..e8928334 100644 --- a/src/store/modules/users.js +++ b/src/store/modules/users.js @@ -6,7 +6,8 @@ const user = { loading: true, searchQuery: '', totalUsersCount: 0, - currentPage: 1 + currentPage: 1, + showLocalUsers: false }, mutations: { SET_USERS: (state, users) => { @@ -35,11 +36,14 @@ const user = { }, SET_SEARCH_QUERY: (state, query) => { state.searchQuery = query + }, + SET_LOCAL_USERS_FILTER: (state, value) => { + state.showLocalUsers = value } }, actions: { - async FetchUsers({ commit }, { page }) { - const response = await fetchUsers(page) + async FetchUsers({ commit, state }, { page }) { + const response = await fetchUsers(page, state.showLocalUsers) commit('SET_LOADING', true) @@ -50,7 +54,7 @@ const user = { commit('SWAP_USER', response.data) }, - async SearchUsers({ commit, dispatch }, { query, page }) { + async SearchUsers({ commit, dispatch, state }, { query, page }) { if (query.length === 0) { commit('SET_SEARCH_QUERY', query) dispatch('FetchUsers', page) @@ -58,10 +62,14 @@ const user = { commit('SET_LOADING', true) commit('SET_SEARCH_QUERY', query) - const response = await searchUsers(query, page) + const response = await searchUsers(query, page, state.showLocalUsers) loadUsers(commit, page, response.data) } + }, + async ToggleLocalUsersFilter({ commit, dispatch, state }, value) { + commit('SET_LOCAL_USERS_FILTER', value) + dispatch('SearchUsers', { query: state.searchQuery, page: 1 }) } } } diff --git a/src/views/users/index.vue b/src/views/users/index.vue index 5dfabdd5..fbd167aa 100644 --- a/src/views/users/index.vue +++ b/src/views/users/index.vue @@ -1,7 +1,10 @@