Also ich hab das jetzt hinbekommen, mit verschiedenen User-Tables und Models. Allerdings hab ich damit noch ein kleines Problem:
Logge ich mich im Händlerbereich ein, findet ein regulärer Login über Auth->login statt. Gleichzeitig wird über eine Komponente eine SessionVar gesetzt, die mir den Zugriff auf den Bereich erlaubt.
Dann browse ich in den Partnerbereich und versuche mich mit dummy-Daten einzuloggen. Das Problem ist nun, dass ich eingeloggt werde, obwohl diese Daten nicht in der Usertabelle für Partner existiert. Ich denke, dass liegt daran, dass Auth->user() vor dem Login ein Ergebnis ausgibt, weil ich ja eigentlich schon eingeloggt bin.
public function login() {
$user = false;
if ($this->SessionAuth->checkLogin())
$this->redirect($this->Auth->loginRedirect);
if ($this->request->is("post")) {
$this->data = Sanitize::clean($this->data);
$user = $this->Partner->find('first', array('conditions' => array('email' => $this->data['Partner']['email']), 'fields' => array('status')));
if ($user && $user['Partner']['status'] != "valid") {
$this->Session->setFlash('Account nicht aktiv');
} else {
if ($this->Auth->login()) {
$this->SessionAuth->setAccess();
} else {
$this->Session->setFlash('Benutzername und/oder Passwort falsch');
}
}
$this->redirect($this->Auth->redirect());
}
}
Wie kann ich nun einen 2. Login ausführen unabhängig eines bereits bestehenden logins?
Gruß
M.