change(ui) - sessions search checking for empty fitler values
This commit is contained in:
parent
77096976ea
commit
fc01ffb6bf
3 changed files with 24 additions and 5 deletions
|
|
@ -1,3 +1,4 @@
|
|||
export const SKIP_TO_ISSUE = "__$session-skipToIssue$__"
|
||||
export const TIMEZONE = "__$session-timezone$__"
|
||||
export const DURATION_FILTER = "__$session-durationFilter$__"
|
||||
export const DURATION_FILTER = "__$session-durationFilter$__"
|
||||
export const SESSION_FILTER = "__$session-filter$__"
|
||||
|
|
@ -4,11 +4,11 @@ import ErrorStack from 'Types/session/errorStack';
|
|||
import Watchdog from 'Types/watchdog';
|
||||
import { clean as cleanParams } from 'App/api_client';
|
||||
import withRequestState, { RequestTypes } from './requestStateCreator';
|
||||
import { getRE } from 'App/utils';
|
||||
import { getRE, setSessionFilter, getSessionFilter, compareJsonObjects } from 'App/utils';
|
||||
import { LAST_7_DAYS } from 'Types/app/period';
|
||||
import { getDateRangeFromValue } from 'App/dateRange';
|
||||
const name = 'sessions';
|
||||
|
||||
const name = 'sessions';
|
||||
const INIT = 'sessions/INIT';
|
||||
const FETCH_LIST = new RequestTypes('sessions/FETCH_LIST');
|
||||
const FETCH = new RequestTypes('sessions/FETCH');
|
||||
|
|
@ -27,7 +27,6 @@ const SET_FUNNEL_PAGE_FLAG = 'sessions/SET_FUNNEL_PAGE_FLAG';
|
|||
const SET_TIMELINE_POINTER = 'sessions/SET_TIMELINE_POINTER';
|
||||
const SET_SESSION_PATH = 'sessions/SET_SESSION_PATH';
|
||||
const LAST_PLAYED_SESSION_ID = `${name}/LAST_PLAYED_SESSION_ID`;
|
||||
|
||||
const SET_ACTIVE_TAB = 'sessions/SET_ACTIVE_TAB';
|
||||
|
||||
const range = getDateRangeFromValue(LAST_7_DAYS);
|
||||
|
|
@ -237,7 +236,13 @@ function init(session) {
|
|||
}
|
||||
}
|
||||
|
||||
export const fetchList = (params = {}, clear = false, live = false) => (dispatch, getState) => {
|
||||
export const fetchList = (params = {}, clear = false, force = false) => (dispatch, getState) => {
|
||||
if (!force) {
|
||||
const oldFilters = getSessionFilter();
|
||||
if (compareJsonObjects(oldFilters, params)) return;
|
||||
}
|
||||
|
||||
setSessionFilter(params)
|
||||
return dispatch({
|
||||
types: FETCH_LIST.toArray(),
|
||||
call: client => client.post('/sessions/search2', params),
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import JSBI from 'jsbi';
|
||||
import chroma from "chroma-js";
|
||||
import * as htmlToImage from 'html-to-image';
|
||||
import { SESSION_FILTER } from 'App/constants/storageKeys'
|
||||
|
||||
export function debounce(callback, wait, context = this) {
|
||||
let timeout = null;
|
||||
|
|
@ -316,3 +317,15 @@ export const fetchErrorCheck = (response: any) => {
|
|||
}
|
||||
return response.json();
|
||||
}
|
||||
|
||||
export const getSessionFilter = () => {
|
||||
return JSON.parse(localStorage.getItem(SESSION_FILTER))
|
||||
}
|
||||
|
||||
export const setSessionFilter = (filter: any) => {
|
||||
localStorage.setItem(SESSION_FILTER, JSON.stringify(filter))
|
||||
}
|
||||
|
||||
export const compareJsonObjects = (obj1: any, obj2: any) => {
|
||||
return JSON.stringify(obj1) === JSON.stringify(obj2);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue