From a9184050f42e98bb2730922426be119b84ef63d7 Mon Sep 17 00:00:00 2001 From: rozetko Date: Thu, 19 Jan 2023 14:40:36 +0300 Subject: [PATCH] pass timezone to the api --- .../components/Panel.tsx | 11 +++++++---- src/utils/index.ts | 13 ++++++++++++- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/src/panels/corpglory-dataexporter-panel/components/Panel.tsx b/src/panels/corpglory-dataexporter-panel/components/Panel.tsx index e537936..cb45844 100644 --- a/src/panels/corpglory-dataexporter-panel/components/Panel.tsx +++ b/src/panels/corpglory-dataexporter-panel/components/Panel.tsx @@ -1,6 +1,6 @@ import { PanelOptions, ExportTask, DashboardQuery, DatasourceType, ExportStatus, PanelStatus } from '../types'; -import { convertTimestampToDate, getDashboardUid } from '../../../utils'; +import { convertTimestampToDate, convertTimeZoneTypeToName, getDashboardUid } from '../../../utils'; import { CLOSE_ICON_BASE_64, DOWNLOAD_ICON_BASE_64, SELECT_ICON_BASE_64, UNSELECT_ICON_BASE_64 } from '../../../icons'; import { deleteTask, getStaticFile, getTasks, queryApi } from '../../../services/api_service'; @@ -43,7 +43,7 @@ const APP_ID = 'corpglory-dataexporter-app'; interface Props extends PanelProps {} -export function Panel({ width, height, timeRange, eventBus }: Props) { +export function Panel({ width, height, timeRange, eventBus, timeZone }: Props) { // TODO: Dashboard type const [dashboard, setDashboard] = useState(null); const [datasources, setDatasources] = useState(null); @@ -60,6 +60,8 @@ export function Panel({ width, height, timeRange, eventBus }: Props) { const [panelStatus, setPanelStatus] = useState(PanelStatus.LOADING); + const timeZoneName = convertTimeZoneTypeToName(timeZone); + if (contextSrv.user.orgRole !== OrgRole.Admin) { // TODO: it shouldn't be overriten setPanelStatus(PanelStatus.PERMISSION_ERROR); @@ -166,7 +168,7 @@ export function Panel({ width, height, timeRange, eventBus }: Props) { return datasource; } - async function onAddTaskClick(): Promise { + async function onAddTaskClick(timeZoneName: string): Promise { const selectedQueries = _.filter(queries, (query: DashboardQuery) => query.selected); const timerange: [number, number] = [selectedTimeRange.from.unix(), selectedTimeRange.to.unix()]; @@ -185,6 +187,7 @@ export function Panel({ width, height, timeRange, eventBus }: Props) { data: { task, url: window.location.toString(), + timeZoneName, }, }); @@ -437,7 +440,7 @@ export function Panel({ width, height, timeRange, eventBus }: Props) {