<?php
title("Passwort setzen");
$show = 'token';
if (isset($_REQUEST['customerno']) and isset($_REQUEST['token']))
{
$customerno = (int) $_REQUEST['customerno'];
$token = $_REQUEST['token'];
require_once('newpass.php');
require_once('inc/security.php');
if (validate_token($customerno, $token))
{
$show = 'password';
if (isset($_POST['password']))
{
if ($_POST['password'] != $_POST['password2'])
input_error("Die beiden Passwort-Eingaben stimmen nicht überein.");
elseif ($_POST['password'] == '')
input_error("Es kann kein leeres Passwort gesetzt werden");
elseif (($result = strong_password($_POST['password'])) !== true)
input_error("Das Passwort ist zu einfach (cracklib sagt: {$result})!");
else
{
require_once('session/checkuser.php');
require_once('inc/base.php');
logger(LOG_INFO, "modules/index/validate_token", "pwrecovery", "customer »{$customerno}« set a new password");
set_customer_password($customerno, $_POST['password']);
success_msg('Das Passwort wurde gesetzt!');
set_customer_verified($customerno);
set_customer_lastlogin($customerno);
invalidate_customer_token($customerno);
$_SESSION['role'] = ROLE_CUSTOMER;
$_SESSION['customerinfo'] = get_customer_info($customerno);
title("Passwort gesetzt");
output('<p>Ihr neues Passwort wurde gesetzt, Sie können jetzt '.internal_link("index", "die Web-Oberfläche sofort benutzen").'.</p>');
$show = NULL;
}
}
}
else
{
input_error("Der eingegebene Code war nicht korrekt. Bitte benutzen Sie die Kopieren & Einfügen-Operation!");
}
}
if ($show == 'password')
{
output('<p>Bitte legen Sie jetzt Ihr neues Kunden-Passwort fest.</p>
<form action="" method="post">