UNPKG

mattermost-redux

Version:

Common code (API client, Redux stores, logic, utility functions) for building a Mattermost client

29 lines (25 loc) 1.14 kB
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. // See LICENSE.txt for license information. import {getCurrentUser} from 'selectors/entities/users'; import {getUserTimezone} from 'selectors/entities/timezone'; import {updateMe} from './users'; import {DispatchFunc, GetStateFunc} from 'types/actions'; export function autoUpdateTimezone(deviceTimezone: string) { return async (dispatch: DispatchFunc, getState: GetStateFunc) => { const currentUer = getCurrentUser(getState()); const currentTimezone = getUserTimezone(getState(), currentUer.id); const newTimezoneExists = currentTimezone.automaticTimezone !== deviceTimezone; if (currentTimezone.useAutomaticTimezone && newTimezoneExists) { const timezone = { useAutomaticTimezone: 'true', automaticTimezone: deviceTimezone, manualTimezone: currentTimezone.manualTimezone, }; const updatedUser = { ...currentUer, timezone, }; updateMe(updatedUser)(dispatch, getState); } }; }