Create inserts User object into a database, updates creation time and assigns UID
(user *types.User, private any)
| 290 | |
| 291 | // Create inserts User object into a database, updates creation time and assigns UID |
| 292 | func (usersMapper) Create(user *types.User, private any) (*types.User, error) { |
| 293 | |
| 294 | user.SetUid(Store.GetUid()) |
| 295 | user.InitTimes() |
| 296 | |
| 297 | err := adp.UserCreate(user) |
| 298 | if err != nil { |
| 299 | return nil, err |
| 300 | } |
| 301 | |
| 302 | // Create user's subscription to 'me' && 'fnd'. These topics are ephemeral, the topic object need not to be |
| 303 | // inserted. |
| 304 | err = Subs.Create( |
| 305 | &types.Subscription{ |
| 306 | ObjHeader: types.ObjHeader{CreatedAt: user.CreatedAt}, |
| 307 | User: user.Id, |
| 308 | Topic: user.Uid().UserId(), |
| 309 | ModeWant: types.ModeCMeFnd, |
| 310 | ModeGiven: types.ModeCMeFnd, |
| 311 | Private: private, |
| 312 | }, |
| 313 | &types.Subscription{ |
| 314 | ObjHeader: types.ObjHeader{CreatedAt: user.CreatedAt}, |
| 315 | User: user.Id, |
| 316 | Topic: user.Uid().FndName(), |
| 317 | ModeWant: types.ModeCMeFnd, |
| 318 | ModeGiven: types.ModeCMeFnd, |
| 319 | Private: nil, |
| 320 | }) |
| 321 | if err != nil { |
| 322 | // Best effort to delete incomplete user record. Orphaned user records are not a problem. |
| 323 | // They just take up space. |
| 324 | adp.UserDelete(user.Uid(), true) |
| 325 | return nil, err |
| 326 | } |
| 327 | |
| 328 | return user, nil |
| 329 | } |
| 330 | |
| 331 | // GetAuthRecord takes a user ID and a authentication scheme name, fetches unique scheme-dependent identifier and |
| 332 | // authentication secret. |
nothing calls this directly
no test coverage detected