diff --git a/public/app/core/utils/accessControl.ts b/public/app/core/utils/accessControl.ts index b2ee9fac281..c9e18f65b2b 100644 --- a/public/app/core/utils/accessControl.ts +++ b/public/app/core/utils/accessControl.ts @@ -1,9 +1,9 @@ import config from '../../core/config'; -// addAccessControlQueryParam appends ?accesscontrol=true to a url when accesscontrol is enabled -export function addAccessControlQueryParam(url: string): string { +// accessControlQueryParam adds an additional accesscontrol=true param to params when accesscontrol is enabled +export function accessControlQueryParam(params = {}) { if (!config.featureToggles['accesscontrol']) { - return url; + return params; } - return url + '?accesscontrol=true'; + return { ...params, accesscontrol: true }; } diff --git a/public/app/features/admin/state/actions.ts b/public/app/features/admin/state/actions.ts index 55849aba080..2297783226d 100644 --- a/public/app/features/admin/state/actions.ts +++ b/public/app/features/admin/state/actions.ts @@ -25,7 +25,7 @@ import { } from './reducers'; import { debounce } from 'lodash'; import { contextSrv } from 'app/core/core'; -import { addAccessControlQueryParam } from 'app/core/utils/accessControl'; +import { accessControlQueryParam } from 'app/core/utils/accessControl'; // UserAdminPage export function loadAdminUserPage(userId: number): ThunkResult { @@ -54,7 +54,7 @@ export function loadAdminUserPage(userId: number): ThunkResult { export function loadUserProfile(userId: number): ThunkResult { return async (dispatch) => { - const user = await getBackendSrv().get(addAccessControlQueryParam(`/api/users/${userId}`)); + const user = await getBackendSrv().get(`/api/users/${userId}`, accessControlQueryParam()); dispatch(userProfileLoadedAction(user)); }; } diff --git a/public/app/features/datasources/state/actions.ts b/public/app/features/datasources/state/actions.ts index fdc591630c7..7fd392770c7 100644 --- a/public/app/features/datasources/state/actions.ts +++ b/public/app/features/datasources/state/actions.ts @@ -25,7 +25,7 @@ import { testDataSourceSucceeded, } from './reducers'; import { getDataSource, getDataSourceMeta } from './selectors'; -import { addAccessControlQueryParam } from 'app/core/utils/accessControl'; +import { accessControlQueryParam } from 'app/core/utils/accessControl'; export interface DataSourceTypesLoadedPayload { plugins: DataSourcePluginMeta[]; @@ -155,7 +155,8 @@ export async function getDataSourceUsingUidOrId(uid: string | number): Promise({ method: 'GET', - url: addAccessControlQueryParam(`/api/datasources/uid/${uid}`), + url: `/api/datasources/uid/${uid}`, + params: accessControlQueryParam(), showErrorAlert: false, }) ); @@ -173,7 +174,8 @@ export async function getDataSourceUsingUidOrId(uid: string | number): Promise({ method: 'GET', - url: addAccessControlQueryParam(`/api/datasources/${id}`), + url: `/api/datasources/${id}`, + params: accessControlQueryParam(), showErrorAlert: false, }) ); diff --git a/public/app/features/users/state/actions.ts b/public/app/features/users/state/actions.ts index b4cfc5d1d71..cf07354f1b5 100644 --- a/public/app/features/users/state/actions.ts +++ b/public/app/features/users/state/actions.ts @@ -3,11 +3,11 @@ import { getBackendSrv } from '@grafana/runtime'; import { OrgUser } from 'app/types'; import { inviteesLoaded, usersLoaded } from './reducers'; import { contextSrv } from 'app/core/core'; -import { addAccessControlQueryParam } from 'app/core/utils/accessControl'; +import { accessControlQueryParam } from 'app/core/utils/accessControl'; export function loadUsers(): ThunkResult { return async (dispatch) => { - const users = await getBackendSrv().get(addAccessControlQueryParam('/api/org/users')); + const users = await getBackendSrv().get('/api/org/users', accessControlQueryParam()); dispatch(usersLoaded(users)); }; }