Parcourir la source

Allow to create a user for a specific backend

Signed-off-by: Joas Schilling <coding@schilljs.com>
tags/v12.0.0beta1
Joas Schilling il y a 7 ans
Parent
révision
9e6ac3de70
Aucun compte lié à l'adresse e-mail de l'auteur
2 fichiers modifiés avec 27 ajouts et 0 suppressions
  1. 18
    0
      lib/private/User/Manager.php
  2. 9
    0
      lib/public/IUserManager.php

+ 18
- 0
lib/private/User/Manager.php Voir le fichier

@@ -38,6 +38,7 @@ use OCP\IUser;
use OCP\IUserBackend;
use OCP\IUserManager;
use OCP\IConfig;
use OCP\UserInterface;

/**
* Class Manager
@@ -321,9 +322,26 @@ class Manager extends PublicEmitter implements IUserManager {
return $user;
}
}

return false;
}

/**
* @param string $uid
* @param string $password
* @param UserInterface $backend
* @return IUser|null
*/
public function createUserFromBackend($uid, $password, UserInterface $backend) {
$this->emit('\OC\User', 'preCreateUser', [$uid, $password]);
$backend->createUser($uid, $password);
$user = $this->getUserObject($uid, $backend);
if ($user instanceof IUser) {
$this->emit('\OC\User', 'postCreateUser', [$user, $password]);
}
return $user;
}

/**
* returns how many users per backend exist (if supported by backend)
*

+ 9
- 0
lib/public/IUserManager.php Voir le fichier

@@ -129,6 +129,15 @@ interface IUserManager {
*/
public function createUser($uid, $password);

/**
* @param string $uid
* @param string $password
* @param UserInterface $backend
* @return IUser|null
* @since 12.0.0
*/
public function createUserFromBackend($uid, $password, UserInterface $backend);

/**
* returns how many users per backend exist (if supported by backend)
*

Chargement…
Annuler
Enregistrer