User rappresenta un singolo account utente nel sistema Overleaf. Memorizza i dati di autenticazione, i flag delle funzionalità, le preferenze dell’editor, i permessi di accesso e i metadati sull’attività.
Identità principale e autenticazione
_id: ObjectId MongoDB univoco dell’utente.email/emails: email principale e storico degli indirizzi email.hashedPassword: password con hash BCrypt usata per l’autenticazione locale.first_name/last_name: campi del nome nel profilo utente.role/isAdmin/adminRoles: flag del ruolo e dei privilegi amministrativi.twoFactorAuthentication: configurazione dell’autenticazione a due fattori (se abilitata).samlIdentifiers/thirdPartyIdentifiers: collegamenti a provider di identità esterni.
Stato e ciclo di vita dell’account
signUpDate: timestamp di creazione dell’account.holdingAccount: indica se l’account è in attesa di conferma o soggetto a restrizioni.must_reconfirm: indica se l’utente deve riconfermare la propria email.lastPrimaryEmailCheck: ultima volta in cui l’email principale è stata convalidata.
Tracciamento di accessi e attività
lastLoginIp: indirizzo IP dell’ultimo login riuscito.loginCount: numero totale di login riusciti.loginEpoch: contatore interno delle sessioni di login.lastLoggedIn: timestamp dell’ultimo login.lastActive: timestamp dell’ultima attività registrata.lastFailedLogin: timestamp dell’ultimo tentativo di login non riuscito.
Preferenze dell’editor (ace)
Definisce le preferenze dell’utente per l’editor online:
theme/overallTheme: tema dell’editor e dell’interfaccia.fontSize: dimensione del carattere dell’editor.autoComplete,autoPairDelimiters: funzionalità di assistenza alla scrittura.spellCheckLanguage: lingua usata per il controllo ortografico.pdfViewer: backend del visualizzatore PDF selezionato.syntaxValidation,mathPreview,breadcrumbs: funzionalità di usabilità dell’editor.enableNewEditor: indica se la nuova interfaccia dell’editor è abilitata.
Flag delle funzionalità e limiti (features)
Controlla la disponibilità delle funzionalità per l’utente:
collaborators: numero massimo di collaboratori (-1= illimitati).versioning,trackChanges: funzionalità di cronologia e revisioni tracciate.dropbox,github,gitBridge: disponibilità delle integrazioni esterne.compileTimeout: tempo massimo di compilazione (in secondi).compileGroup: gruppo di risorse di compilazione assegnato.aiErrorAssistant: flag dell’assistente AI per gli errori di compilazione.
Controllo degli accessi e permessi dello staff (staffAccess)
Definisce diritti di accesso granulari per lo staff o gli editori:
- Permessi di metriche e gestione per editori, istituzioni, gruppi, amministratori ed esperimenti.
Iscrizioni e integrazioni
enrollment.sso: iscrizioni SSO collegate.refProviders: integrazioni con provider di riferimenti bibliografici.writefull: stato dell’account dell’assistente di scrittura Writefull.dsMobileApp: configurazione dell’app mobile (se presente).
Programmi ed esperimenti
alphaProgram/betaProgram/labsProgram: partecipazione ai programmi di accesso anticipato.labsExperiments: funzionalità sperimentali abilitate.awareOfV2: indica se l’utente ha preso visione dell’editor V2.
Referral e tutorial
referal_id,refered_users,refered_user_count: tracciamento dei referral.completedTutorials: avanzamento dei tutorial di onboarding e delle funzionalità.
Ecco un esempio reale di utente Overleaf.
Esempio di utente
Esempio di utente

