Introduce account preferences to remember user's previous location (#4126)

This commit is contained in:
Apoorv Mishra
2022-09-18 18:31:47 +05:30
committed by GitHub
parent b68e58fad5
commit 6502b108e3
17 changed files with 156 additions and 12 deletions

View File

@@ -1,6 +1,8 @@
import crypto from "crypto";
import Router from "koa-router";
import { has } from "lodash";
import { Op, WhereOptions } from "sequelize";
import { UserPreference } from "@shared/types";
import { UserValidation } from "@shared/validations";
import { RateLimiterStrategy } from "@server/RateLimiter";
import userDemoter from "@server/commands/userDemoter";
@@ -17,7 +19,7 @@ import logger from "@server/logging/Logger";
import auth from "@server/middlewares/authentication";
import { rateLimiter } from "@server/middlewares/rateLimiter";
import { Event, User, Team } from "@server/models";
import { UserFlag, UserRole, UserPreference } from "@server/models/User";
import { UserFlag, UserRole } from "@server/models/User";
import { can, authorize } from "@server/policies";
import { presentUser, presentPolicies } from "@server/presenters";
import {
@@ -188,7 +190,7 @@ router.post("users.update", auth(), async (ctx) => {
}
if (preferences) {
assertKeysIn(preferences, UserPreference);
if (preferences.rememberLastPath) {
if (has(preferences, UserPreference.RememberLastPath)) {
assertBoolean(preferences.rememberLastPath);
user.setPreference(
UserPreference.RememberLastPath,