feat(POS-FIX-7): completed feature
This commit is contained in:
@@ -1,39 +1,30 @@
|
||||
/* eslint-disable @typescript-eslint/naming-convention */
|
||||
'use strict';
|
||||
|
||||
/**
|
||||
* FEAT-199: Adds email confirmation to user registration.
|
||||
* - confirmation_token: random string sent in confirmation email (null after confirmed)
|
||||
* - confirmed_at: timestamp when email was confirmed (null until confirmed)
|
||||
* - confirmed users can login; unconfirmed cannot.
|
||||
*/
|
||||
exports.up = function (db) {
|
||||
db.addColumn('identity_users', 'confirmation_token', {
|
||||
|
||||
export const up = (pgm) => {
|
||||
pgm.addColumn('identity_users', 'confirmation_token', {
|
||||
type: 'string',
|
||||
notNull: false,
|
||||
default: null,
|
||||
});
|
||||
db.addColumn('identity_users', 'confirmed_at', {
|
||||
pgm.addColumn('identity_users', 'confirmed_at', {
|
||||
type: 'timestamp',
|
||||
notNull: false,
|
||||
default: null,
|
||||
});
|
||||
db.addColumn('identity_users', 'email_confirmed', {
|
||||
pgm.addColumn('identity_users', 'email_confirmed', {
|
||||
type: 'boolean',
|
||||
notNull: true,
|
||||
default: false,
|
||||
});
|
||||
// FEAT-199: migrate existing users to confirmed (they already verified their email during signup)
|
||||
return db.execute('UPDATE identity_users SET email_confirmed = true');
|
||||
pgm.sql('UPDATE identity_users SET email_confirmed = true');
|
||||
};
|
||||
|
||||
exports.down = function (db) {
|
||||
db.removeColumn('identity_users', 'email_confirmed');
|
||||
db.removeColumn('identity_users', 'confirmed_at');
|
||||
db.removeColumn('identity_users', 'confirmation_token');
|
||||
return null;
|
||||
};
|
||||
|
||||
exports._meta = {
|
||||
version: 58,
|
||||
export const down = (pgm) => {
|
||||
pgm.dropColumns('identity_users', ['email_confirmed', 'confirmed_at', 'confirmation_token']);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user