public
function verifyNewUser($user_id, $user_activation_hash)
{
if ($this->databaseConnection()) {
$query_update_user = $this->db_connection->prepare('UPDATE users SET user_activation_hash = NULL WHERE user_id = :user_id AND user_activation_hash = :user_activation_hash');
// noch nicht aktiv gesetzt!
$query_update_user->bindValue(':user_id', intval(trim($user_id)) , PDO::PARAM_INT);
$query_update_user->bindValue(':user_activation_hash', $user_activation_hash, PDO::PARAM_STR);
$query_update_user->execute();
if ($query_update_user->rowCount() > 0) {
$this->verification_successful = true;
$this->messages[] = MESSAGE_REGISTRATION_ACTIVATION_SUCCESSFUL;
}
else {
$this->errors[] = MESSAGE_REGISTRATION_ACTIVATION_NOT_SUCCESSFUL;
}
// stattdessen: Mail an den Admin senden
$mail = new PHPMailer;
if (EMAIL_USE_SMTP) {
$mail->IsSMTP();
$mail->SMTPAuth = EMAIL_SMTP_AUTH;
if (defined(EMAIL_SMTP_ENCRYPTION)) {
$mail->SMTPSecure = EMAIL_SMTP_ENCRYPTION;
}
$mail->Host = EMAIL_SMTP_HOST;
$mail->Username = EMAIL_SMTP_USERNAME;
$mail->Password = EMAIL_SMTP_PASSWORD;
$mail->Port = EMAIL_SMTP_PORT;
}
else {
$mail->IsMail();
}
$mail->From = EMAIL_VERIFICATION_FROM;
$mail->FromName = EMAIL_VERIFICATION_FROM_NAME;
$mail->AddAddress("admin@example.com"); //E-Mail-Adresse des Admins
$mail->Subject = "Ein neuer Benutzer muss freigeschaltet werden";
$query_get_user = $this->db_connection->prepare('SELECT * WHERE user_id = :user_id');
$query_get_user->bindValue(':user_id', intval(trim($user_id)) , PDO::PARAM_INT);
$query_get_user->execute();
$user_name = $query_get_user["user_name"];
$mail->Body = "Bitte loggen Sie sich in PHPMyAdmin ein und schalten Sie den Benutzer " . $user_name . " aktiv, indem Sie in der betreffenden Zeile den Wert 'active' auf '1' setzen.";
if ($mail->Send()) {
echo "Account erfolgreich bestätigt. Bitte auf Freischaltung durch Armin warten!";
}
}
}