diff --git a/app/controllers/new_password.php b/app/controllers/new_password.php index 1e58659ed9ae372c968d3b5a3cab6a8875a47d34..3a6e6419a9a67374f9b2f0234e47163d4eea07e2 100644 --- a/app/controllers/new_password.php +++ b/app/controllers/new_password.php @@ -41,32 +41,36 @@ class NewPasswordController extends StudipController $users = User::findByEmail(Request::get('mail')); - $user = $users[0]; - setTempLanguage($user->id); - - // there are mutliple accounts with this mail addresses! - $subject = sprintf( - _("[Stud.IP - %s] Passwortänderung angefordert"), - Config::get()->UNI_NAME_CLEAN - ); - - $mailbody = sprintf( - _("Dies ist eine Informationsmail des Stud.IP-Systems\n" - ."(Studienbegleitender Internetsupport von Präsenzlehre)\n- %s -\n\n" - . "Für die Mail-Adresse %s wurde ein Link angefordert\n" - . "um das Passwort zurückzusetzen.\n" - . "Dieser Mail-Adresse sind jedoch mehrere Zugänge zugeordnet,\n" - . "deshalb ist es nicht möglich, das Passwort hierüber zurückzusetzen.\n" - . "Wenden sie sich bitte stattdessen an\n%s" - ), - Config::get()->UNI_NAME_CLEAN, - $users[0]->email, - $GLOBALS['UNI_CONTACT'] - ); - - StudipMail::sendMessage($user->email, $subject, $mailbody); - - restoreLanguage(); + if (count($users) === 1) { + $user = $users[0]; + } else if (count($users) > 1) { + setTempLanguage($users[0]->id); + + // there are mutliple accounts with this mail addresses! + $subject = sprintf( + _("[Stud.IP - %s] Passwortänderung angefordert"), + Config::get()->UNI_NAME_CLEAN + ); + + $mailbody = sprintf( + _("Dies ist eine Informationsmail des Stud.IP-Systems\n" + ."(Studienbegleitender Internetsupport von Präsenzlehre)\n- %s -\n\n" + . "Für die Mail-Adresse %s wurde ein Link angefordert\n" + . "um das Passwort zurückzusetzen.\n" + . "Dieser Mail-Adresse sind jedoch mehrere Zugänge zugeordnet,\n" + . "deshalb ist es nicht möglich, das Passwort hierüber zurückzusetzen.\n" + . "Wenden sie sich bitte stattdessen an\n%s" + ), + Config::get()->UNI_NAME_CLEAN, + $users[0]->email, + $GLOBALS['UNI_CONTACT'] + ); + + StudipMail::sendMessage($users[0]->email, $subject, $mailbody); + + restoreLanguage(); + } + if ($user) { // spam/abuse-protection // if there are more than 5 tokens present, do NOT send another mail