Updated frontend
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
'use strict';
|
||||
|
||||
const Table = require('.');
|
||||
|
||||
class UserVerification extends Table {
|
||||
static _key = 'uid';
|
||||
static _keyMap = {
|
||||
uid: {isRequired: true, type: 'string'},
|
||||
created_by: {isRequired: true, type: 'string'},
|
||||
email_verified: {default: false, type: 'boolean'},
|
||||
phone_verified: {default: false, type: 'boolean'},
|
||||
tos_accepted: {default: false, type: 'boolean'},
|
||||
password_must_change: {default: false, type: 'boolean'},
|
||||
email_verified_at: {type: 'number'},
|
||||
phone_verified_at: {type: 'number'},
|
||||
tos_accepted_at: {type: 'number'},
|
||||
};
|
||||
|
||||
static async getOrCreate(uid) {
|
||||
const list = await this.listDetail({uid});
|
||||
if (list.length) return list[0];
|
||||
return this.create({uid, created_by: uid});
|
||||
}
|
||||
|
||||
async markEmailVerified() {
|
||||
return this.update({email_verified: true, email_verified_at: Date.now()});
|
||||
}
|
||||
|
||||
async markPhoneVerified() {
|
||||
return this.update({phone_verified: true, phone_verified_at: Date.now()});
|
||||
}
|
||||
|
||||
async markTosAccepted() {
|
||||
return this.update({tos_accepted: true, tos_accepted_at: Date.now()});
|
||||
}
|
||||
}
|
||||
UserVerification.register();
|
||||
|
||||
module.exports = {UserVerification};
|
||||
Reference in New Issue
Block a user