Should call PendingRegist for DB operations
This commit is contained in:
parent
e25165eaa6
commit
6b75d5a394
|
|
@ -16,6 +16,7 @@ use \OCP\AppFramework\App;
|
|||
|
||||
use \OCA\Registration\Controller\RegisterController;
|
||||
use \OCA\Registration\Wrapper;
|
||||
use \OCA\Registration\Db\PendingRegist;
|
||||
|
||||
|
||||
class Application extends App {
|
||||
|
|
@ -31,7 +32,11 @@ class Application extends App {
|
|||
$container->registerService('RegisterController', function($c) {
|
||||
return new RegisterController(
|
||||
$c->query('AppName'),
|
||||
$c->query('Request')
|
||||
$c->query('Request'),
|
||||
$c->query('Mail'),
|
||||
$c->query('L10N'),
|
||||
$c->query('URLGenerator'),
|
||||
$c->query('PendingRegist')
|
||||
);
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -21,14 +21,15 @@ class RegisterController extends Controller {
|
|||
|
||||
private $mail;
|
||||
private $l10n;
|
||||
private $db;
|
||||
private $urlgenerator;
|
||||
private $pendingreg;
|
||||
|
||||
public function __construct($appName, IRequest $request, Mail $mail, $l10n, $db, $urlgenerator){
|
||||
public function __construct($appName, IRequest $request, Mail $mail, $l10n, $urlgenerator,
|
||||
$pendingreg){
|
||||
$this->mail = $mail;
|
||||
$this->l10n = $l10n;
|
||||
$this->db = $db;
|
||||
$this->urlgenerator = $urlgenerator;
|
||||
$this->pendingreg = $pendingreg;
|
||||
parent::__construct($appName, $request);
|
||||
}
|
||||
|
||||
|
|
@ -57,14 +58,14 @@ class RegisterController extends Controller {
|
|||
return;
|
||||
}
|
||||
|
||||
if ( $this->db->find($email) ) {
|
||||
if ( $this->pendingreg->find($email) ) {
|
||||
$this->displayRegisterPage($this->l10n->t('There is already a pending registration with this email'), true);
|
||||
return;
|
||||
}
|
||||
|
||||
// FEATURE: allow only from specific email domain
|
||||
|
||||
$token = $this->db->savePendingRegistration($email);
|
||||
$token = $this->pendingreg->save($email);
|
||||
$link = $this->urlgenerator->linkToRoute('registration.verify.token', array('token' => $token));
|
||||
$link = OC_Helper::makeURLAbsolute($link);
|
||||
$from = OCP\Util::getDefaultEmailAddress('register');
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ class PendingRegist {
|
|||
$this->db = $db;
|
||||
}
|
||||
|
||||
public function savePendingRegistration($email) {
|
||||
public function save($email) {
|
||||
$query = $this->db->prepareQuery( 'INSERT INTO `*PREFIX*registration`'
|
||||
.' ( `email`, `token`, `requested` ) VALUES( ?, ?, ? )' );
|
||||
$token = hash('sha256', generateRandomBytes(30).OC_Config::getValue('passwordsalt', ''));
|
||||
|
|
|
|||
Loading…
Reference in New Issue