Changed checkoutPage email search behaviour

Now a default domain is appended on email string that don't contain an @ character
This commit is contained in:
Erik Thuning 2021-09-22 15:34:33 +02:00
parent 5e21567204
commit 5ace3ea42e

@ -25,12 +25,12 @@ class CheckoutPage extends Page {
$emailuser = null;
if($name) {
try {
$nameuser = new User($this->userstr, 'name');
$nameuser = new User($name, 'name');
} catch(Exception $ue) {
# The user wasn't found locally
try {
$this->ldap->get_user($this->userstr);
$nameuser = User::create_user($this->userstr);
$this->ldap->get_user($name);
$nameuser = User::create_user($name);
} catch(Exception $le) {
$err = "Användarnamnet '$name' kunde inte hittas.";
throw new Exception($err);
@ -39,11 +39,15 @@ class CheckoutPage extends Page {
}
if($email) {
try {
$search = $email;
if(strpos($email, '@') === false) {
$search = $email .'@dsv.su.se';
}
# Lookup email directly in ldap since we don't store it
$emailuser = new User($this->ldap->search_email($email),
$emailuser = new User($this->ldap->search_email($search),
'name');
} catch(Exception $ue) {
$err = "E-postadressen '$emailuser' kunde inte hittas.";
$err = "E-postadressen '$search' kunde inte hittas.";
throw new Exception($err);
}
}
@ -61,8 +65,8 @@ class CheckoutPage extends Page {
}
protected function render_body() {
$username = '';
$email = '';
$username = $this->userstr;
$email = $this->emailstr;
$displayname = '';
$notes = '';
$loan_table = '';