X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmodels%2Faccount%2Fuser-notification-setting.ts;h=de150129922ca57e0dced2524d2a9c222030d331;hb=32a18cbf33a7cdbbe3d4885d32e4b67e19cdc1cf;hp=ba7f739b9c8f5cdbc3821b49d52df1d79a2b62f0;hpb=7ccddd7b5250bd25a917a6e77e58b87b9484a2a4;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/models/account/user-notification-setting.ts b/server/models/account/user-notification-setting.ts index ba7f739b9..de1501299 100644 --- a/server/models/account/user-notification-setting.ts +++ b/server/models/account/user-notification-setting.ts @@ -12,11 +12,12 @@ import { Table, UpdatedAt } from 'sequelize-typescript' -import { throwIfNotValid } from '../utils' -import { UserModel } from './user' -import { isUserNotificationSettingValid } from '../../helpers/custom-validators/user-notifications' +import { MNotificationSettingFormattable } from '@server/types/models' import { UserNotificationSetting, UserNotificationSettingValue } from '../../../shared/models/users/user-notification-setting.model' +import { isUserNotificationSettingValid } from '../../helpers/custom-validators/user-notifications' import { clearCacheByUserId } from '../../lib/oauth-model' +import { throwIfNotValid } from '../utils' +import { UserModel } from './user' @Table({ tableName: 'userNotificationSetting', @@ -27,7 +28,7 @@ import { clearCacheByUserId } from '../../lib/oauth-model' } ] }) -export class UserNotificationSettingModel extends Model { +export class UserNotificationSettingModel extends Model { @AllowNull(false) @Default(null) @@ -50,11 +51,11 @@ export class UserNotificationSettingModel extends Model throwIfNotValid(value, isUserNotificationSettingValid, 'videoAbuseAsModerator') + 'UserNotificationSettingAbuseAsModerator', + value => throwIfNotValid(value, isUserNotificationSettingValid, 'abuseAsModerator') ) @Column - videoAbuseAsModerator: UserNotificationSettingValue + abuseAsModerator: UserNotificationSettingValue @AllowNull(false) @Default(null) @@ -101,6 +102,24 @@ export class UserNotificationSettingModel extends Model throwIfNotValid(value, isUserNotificationSettingValid, 'newInstanceFollower') + ) + @Column + newInstanceFollower: UserNotificationSettingValue + + @AllowNull(false) + @Default(null) + @Is( + 'UserNotificationSettingNewInstanceFollower', + value => throwIfNotValid(value, isUserNotificationSettingValid, 'autoInstanceFollowing') + ) + @Column + autoInstanceFollowing: UserNotificationSettingValue + @AllowNull(false) @Default(null) @Is( @@ -119,6 +138,42 @@ export class UserNotificationSettingModel extends Model throwIfNotValid(value, isUserNotificationSettingValid, 'abuseStateChange') + ) + @Column + abuseStateChange: UserNotificationSettingValue + + @AllowNull(false) + @Default(null) + @Is( + 'UserNotificationSettingAbuseNewMessage', + value => throwIfNotValid(value, isUserNotificationSettingValid, 'abuseNewMessage') + ) + @Column + abuseNewMessage: UserNotificationSettingValue + + @AllowNull(false) + @Default(null) + @Is( + 'UserNotificationSettingNewPeerTubeVersion', + value => throwIfNotValid(value, isUserNotificationSettingValid, 'newPeerTubeVersion') + ) + @Column + newPeerTubeVersion: UserNotificationSettingValue + + @AllowNull(false) + @Default(null) + @Is( + 'UserNotificationSettingNewPeerPluginVersion', + value => throwIfNotValid(value, isUserNotificationSettingValid, 'newPluginVersion') + ) + @Column + newPluginVersion: UserNotificationSettingValue + @ForeignKey(() => UserModel) @Column userId: number @@ -143,18 +198,24 @@ export class UserNotificationSettingModel extends Model