User

Responsible: Kurt Junghanns


objectid = {

type: 'string',

maxLength: 24,

minLength: 24
};


user = 

propertytyperequiredformat checkingstate of implementation (master branch) in terms of attribute added and connected with the frontend
_idinteger, autoincrementyesisInteger
  • autoincrement - implemented
emailstringyesisEmail, unique
  • unique - implemented
  • isEmail - controlled by ajv
usernamestringyesunique, is alphanumeric plus .-_~
  • unique - implemented
passwordstring (contains SHA512)yesalphanumerical
  • hash is generated on frontend and rehashed on service
defaults[ object ]nonormally just an array of an object with one key
  • not correctly implemented for now
  • should decide on the preferences data model
registereddatepassivedatetime
  • UTC - implemented (no container in frontend planned)
surnamestringyes
implemented
forenamestringyes
implemented
countrystringnoentry from a list of statesnot implemented (list of countries is missing)
spokenLanguagesarray of languagesnolanguage (see below)
  • see language - not implemented
frontendLanguagestringyesISO-639: 2-5 charactersimplemented, We started using 5 letters as this is more specific, but the library for our different UI languages uses 2 characters
picturestringno

implemented

  • contain a link or the actual image as base64
interestsstringno

not implemented

descriptionstringno
implemented
birthday

date

nodatenot implemented - should not used for now
infodeckobjectnoobject which contains the id and revision of a decknot implemented
organizationstringno
implemented
lastLogindatetimepassivedatetimeUTC - not implemented
deactivatedbooleanyesbooleanimplemented - SWIK-692
authorisedbooleanyesbooleanimplemented - have to be merged from SWIK-668
providersArray of Providerno
implemented
reviewedbooleanno
in master - introduced with review users functionality
isReviewerbooleanno
in master - introduced with review users functionality
suspendedbooleanno
in master - introduced with review users functionality
lastReviewDoneByintegernouseridin master - introduced with review users functionality





displayNamestringno
implemented


Not yet implemented: preferences = 

propertytyperequiredformat checkingstate of implementation
_idinteger, autoincrementyesisInteger


languagelanguageyesisValidLanguage
themeobjectIdyestheme exists with the id

Provider:

propertytyperequiredformat checking
providerstringtruename of the provider - facebook/github/google
tokenstringtrue
expiresnumber

integer

extra_tokenstring

scopestring

token_creationDatetrueISO format
idstring

identifierstringtruedepends on provider - number or date as string
emailstring
email

LTI Group

propertytyperequiredformat checkingstate of implementation
_idinteger, autoincrementyesisInteger

implemented

keystringyes
implemented
secretstringyes
implemented

LTI user is assigned a username with suffix "@lti.org" and dummy email in the format 'lti-{lti._id}-user{number of lti group members}@slidewiki.org'.