mattermost-redux
Version:
Common code (API client, Redux stores, logic, utility functions) for building a Mattermost client
29 lines (28 loc) • 1.25 kB
JavaScript
;
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
Object.defineProperty(exports, "__esModule", { value: true });
exports.autoUpdateTimezone = autoUpdateTimezone;
const timezone_1 = require("mattermost-redux/selectors/entities/timezone");
const users_1 = require("mattermost-redux/selectors/entities/users");
const users_2 = require("./users");
function autoUpdateTimezone(deviceTimezone) {
return async (dispatch, getState) => {
const currentUser = (0, users_1.getCurrentUser)(getState());
const currentTimezone = (0, timezone_1.getCurrentTimezoneFull)(getState());
const newTimezoneExists = currentTimezone.automaticTimezone !== deviceTimezone;
if (currentTimezone.useAutomaticTimezone && newTimezoneExists) {
const timezone = {
useAutomaticTimezone: 'true',
automaticTimezone: deviceTimezone,
manualTimezone: currentTimezone.manualTimezone,
};
const updatedUser = {
...currentUser,
timezone,
};
dispatch((0, users_2.updateMe)(updatedUser));
}
return { data: true };
};
}