chore(users): tweak addNewUser to conform to new model
This commit is contained in:
parent
ed54b666ec
commit
3d1908d71a
@ -460,8 +460,7 @@ upsertAvsUserById api = do
|
|||||||
, audPinPassword = userPin
|
, audPinPassword = userPin
|
||||||
, audEmail = fakeNo -- Email is unknown in this version of the avs query, to be updated later (FUTURE TODO)
|
, audEmail = fakeNo -- Email is unknown in this version of the avs query, to be updated later (FUTURE TODO)
|
||||||
, audIdent = fakeIdent -- use AvsPersonId instead
|
, audIdent = fakeIdent -- use AvsPersonId instead
|
||||||
, audAuth = maybe AuthKindNoLogin (const AuthKindAzure) avsPersonInternalPersonalNo -- FUTURE TODO: if email is known, use AuthKinfPWHash for email invite, if no internal personnel number is known
|
--, audAuth = maybe AuthKindNoLogin (const AuthKindAzure) avsPersonInternalPersonalNo -- FUTURE TODO: if email is known, use AuthKinfPWHash for email invite, if no internal personnel number is known
|
||||||
, audAzureId = Nothing -- TODO
|
|
||||||
}
|
}
|
||||||
mbUid <- addNewUser newUsr -- triggers JobSynchroniseUserdbUser, JobSendPasswordReset and NotificationUserAutoModeUpdate -- TODO: check if these are failsafe
|
mbUid <- addNewUser newUsr -- triggers JobSynchroniseUserdbUser, JobSendPasswordReset and NotificationUserAutoModeUpdate -- TODO: check if these are failsafe
|
||||||
whenIsJust mbUid $ \uid -> runDB $ do
|
whenIsJust mbUid $ \uid -> runDB $ do
|
||||||
|
|||||||
@ -5,31 +5,15 @@
|
|||||||
{-# OPTIONS_GHC -fno-warn-unused-top-binds #-}
|
{-# OPTIONS_GHC -fno-warn-unused-top-binds #-}
|
||||||
|
|
||||||
module Utils.Users
|
module Utils.Users
|
||||||
( AuthenticationKind(..)
|
( AddUserData(..)
|
||||||
, AddUserData(..)
|
|
||||||
, addNewUser
|
, addNewUser
|
||||||
) where
|
) where
|
||||||
|
|
||||||
import Import
|
import Import
|
||||||
|
|
||||||
|
|
||||||
data AuthenticationKind = AuthKindLDAP | AuthKindAzure | AuthKindPWHash | AuthKindNoLogin
|
-- TODO: addNewUser might be redundant; use upsertUser instead?
|
||||||
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic, Universe, Finite)
|
|
||||||
embedRenderMessage ''UniWorX ''AuthenticationKind id
|
|
||||||
nullaryPathPiece ''AuthenticationKind $ camelToPathPiece' 2
|
|
||||||
|
|
||||||
mkAuthMode :: AuthenticationKind -> AuthenticationMode
|
|
||||||
mkAuthMode AuthKindLDAP = AuthLDAP
|
|
||||||
mkAuthMode AuthKindAzure = AuthAzure
|
|
||||||
mkAuthMode AuthKindPWHash = AuthPWHash ""
|
|
||||||
mkAuthMode AuthKindNoLogin = AuthNoLogin
|
|
||||||
|
|
||||||
{-
|
|
||||||
classifyAuth :: AuthenticationMode -> AuthenticationKind
|
|
||||||
classifyAuth AuthLDAP = AuthKindLDAP
|
|
||||||
classifyAuth AuthPWHash{} = AuthKindPWHash
|
|
||||||
classifyAuth AuthNoLogin = AuthKindNoLogin
|
|
||||||
-}
|
|
||||||
|
|
||||||
data AddUserData = AddUserData
|
data AddUserData = AddUserData
|
||||||
{ audTitle :: Maybe Text
|
{ audTitle :: Maybe Text
|
||||||
@ -49,8 +33,6 @@ data AddUserData = AddUserData
|
|||||||
, audPinPassword :: Maybe Text
|
, audPinPassword :: Maybe Text
|
||||||
, audEmail :: UserEmail
|
, audEmail :: UserEmail
|
||||||
, audIdent :: UserIdent
|
, audIdent :: UserIdent
|
||||||
, audAuth :: AuthenticationKind
|
|
||||||
, audAzureId :: Maybe UUID
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -62,6 +44,8 @@ addNewUser AddUserData{..} = do
|
|||||||
let
|
let
|
||||||
newUser = User
|
newUser = User
|
||||||
{ userIdent = audIdent
|
{ userIdent = audIdent
|
||||||
|
, userLastLogin = Nothing
|
||||||
|
, userPasswordHash = Nothing
|
||||||
, userMaxFavourites = userDefaultMaxFavourites
|
, userMaxFavourites = userDefaultMaxFavourites
|
||||||
, userMaxFavouriteTerms = userDefaultMaxFavouriteTerms
|
, userMaxFavouriteTerms = userDefaultMaxFavouriteTerms
|
||||||
, userTheme = userDefaultTheme
|
, userTheme = userDefaultTheme
|
||||||
@ -78,11 +62,6 @@ addNewUser AddUserData{..} = do
|
|||||||
, userCsvOptions = def { csvFormat = review csvPreset CsvPresetXlsx }
|
, userCsvOptions = def { csvFormat = review csvPreset CsvPresetXlsx }
|
||||||
, userTokensIssuedAfter = Nothing
|
, userTokensIssuedAfter = Nothing
|
||||||
, userCreated = now
|
, userCreated = now
|
||||||
, userLastLdapSynchronisation = Nothing
|
|
||||||
, userLdapPrimaryKey = audFPersonalNumber
|
|
||||||
, userLastAzureSynchronisation = Nothing
|
|
||||||
, userAzurePrimaryKey = audAzureId
|
|
||||||
, userLastAuthentication = Nothing
|
|
||||||
, userEmail = audEmail
|
, userEmail = audEmail
|
||||||
, userDisplayName = audDisplayName
|
, userDisplayName = audDisplayName
|
||||||
, userDisplayEmail = audDisplayEmail
|
, userDisplayEmail = audDisplayEmail
|
||||||
@ -100,6 +79,5 @@ addNewUser AddUserData{..} = do
|
|||||||
, userPrefersPostal = audPrefersPostal
|
, userPrefersPostal = audPrefersPostal
|
||||||
, userPinPassword = audPinPassword
|
, userPinPassword = audPinPassword
|
||||||
, userMatrikelnummer = audMatriculation
|
, userMatrikelnummer = audMatriculation
|
||||||
, userAuthentication = mkAuthMode audAuth
|
|
||||||
}
|
}
|
||||||
runDB $ insertUnique newUser
|
runDB $ insertUnique newUser
|
||||||
Reference in New Issue
Block a user