From 4e281f31b0e0c1410264a99687983f2d309cdd00 Mon Sep 17 00:00:00 2001 From: tsmethurst Date: Mon, 15 Mar 2021 23:05:24 +0100 Subject: whole buncha stuff --- internal/gtsmodel/user.go | 65 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 internal/gtsmodel/user.go (limited to 'internal/gtsmodel/user.go') diff --git a/internal/gtsmodel/user.go b/internal/gtsmodel/user.go new file mode 100644 index 000000000..577590ddf --- /dev/null +++ b/internal/gtsmodel/user.go @@ -0,0 +1,65 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +import ( + "net" + "time" +) + +type User struct { + ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull"` + Email string `pg:",notnull"` + CreatedAt time.Time `pg:"type:timestamp,notnull"` + UpdatedAt time.Time `pg:"type:timestamp,notnull"` + EncryptedPassword string `pg:",notnull"` + ResetPasswordToken string + ResetPasswordSentAt time.Time `pg:"type:timestamp"` + SignInCount int + CurrentSignInAt time.Time `pg:"type:timestamp"` + LastSignInAt time.Time `pg:"type:timestamp"` + CurrentSignInIP net.IP + LastSignInIP net.IP + Admin bool + ConfirmationToken string + ConfirmedAt time.Time `pg:"type:timestamp"` + ConfirmationSentAt time.Time `pg:"type:timestamp"` + UnconfirmedEmail string + Locale string + EncryptedOTPSecret string + EncryptedOTPSecretIv string + EncryptedOTPSecretSalt string + ConsumedTimestamp int + OTPRequiredForLogin bool + LastEmailedAt time.Time `pg:"type:timestamp"` + OTPBackupCodes []string + FilteredLanguages []string + AccountID string `pg:",notnull"` + Disabled bool + Moderator bool + InviteID string + RememberToken string + ChosenLanguages []string + CreatedByApplicationID string + Approved bool + SignInToken string + SignInTokenSentAt time.Time `pg:"type:timestamp"` + WebauthnID string + SignUpIP net.IP +} -- cgit v1.2.3