Änderungen

henbug created page: dev/registrator erstellt von Henning Leutz's avatar Henning Leutz
Registrator
======
Die Registrierungs-API erlaubt es Modulen, QUIQQER mit eigenen Registrierungsmethoden zu erweitern. Die E-Mail Registrierung wird von dem Frontend-Users Modul standardmäßig mitgeliefert.
Ablauf einer Registrierung
------
Neuen Registrator realisieren
------
Ein Registrator ist eine Registrierungsklasse welche ein Benutzer am QUIQQER System registriert.
*Vorgehensweise:*
Erweitern Sie die package.xml um einen <registrator> Provider Eintrag. Das src Attribut gibt an, wie Ihr neuer Registrator aufgerufen werden kann.
```xml
<quiqqer>
<package>
<!-- .... PAKET DATEN -->
<provider>
<registrator src="QUI\FrontendUsers\Registrars\Email\Registrator" />
</provider>
</package>
</quiqqer>
```
Registrator Provider realisieren
------
Ein Registrator muss immer von `QUI\FrontendUsers\FrontendUsers\AbstractRegistrator` erben. Die AbstractRegistrator Klasse implementiert das Interface `QUI\FrontendUsers
\RegistratorInterface`. Dieses Interface legt einige Methoden fest welche Ihr Registrator beinhalten muss.
Folgende Methoden benötigt Ihr Registrator.
- public function validate();
- public function getUsername();
- public function getControl();
- public function onRegistered(QUI\Interfaces\Users\User $User);
Ein Grundgerüst für einen Registrator könnte also so aussehen:
```php
<?php
/**
* This file contains QUI\FrontendUsers\Registrars\Email\Registrator
*/
namespace QUI\FrontendUsers\Registrars\Email;
use QUI;
use QUI\FrontendUsers;
/**
* Class EMail
*
* @package QUI\FrontendUsers\Registrars
*/
class Registrator extends FrontendUsers\AbstractRegistrator
{
/**
* @param QUI\Interfaces\Users\User $User
* @return int
*/
public function onRegistered(QUI\Interfaces\Users\User $User)
{
}
/**
* @throws FrontendUsers\Exception
*/
public function validate()
{
}
/**
* @return string
*/
public function getUsername()
{
}
/**
* @return Control
*/
public function getControl()
{
}
}
```