<?php
require_once('inc/debug.php');
require_once('inc/security.php');
require_role(array(ROLE_SYSTEMUSER, ROLE_CUSTOMER, ROLE_SUBUSER));
title("Passwort ändern");
$error = '';
if (isset($_POST['password1'])) {
check_form_token('index_chpass');
$result = null;
if ($_SESSION['role'] & ROLE_SYSTEMUSER) {
if ($_SESSION['role'] & ROLE_SUBUSER) {
$result = find_role($_SESSION['subuser'], $_POST['old_password']);
} else {
$result = find_role($_SESSION['userinfo']['uid'], $_POST['old_password']);
}
} else {
$result = find_role($_SESSION['customerinfo']['customerno'], $_POST['old_password']);
}
if ($result == null) {
input_error('Das bisherige Passwort ist nicht korrekt!');
} elseif ($_POST['password2'] != $_POST['password1']) {
input_error('Die Bestätigung ist nicht identisch mit dem neuen Passwort!');
} elseif ($_POST['password2'] == '') {
input_error('Sie müssen das neue Passwort zweimal eingeben!');
} elseif ($_POST['old_password'] == '') {
input_error('Altes Passwort nicht angegeben!');
} elseif (($check = strong_password($_POST['password1'])) !== true) {
input_error("Das Passwort ist zu einfach ({$check})!");
} else {
if ($result & ROLE_SYSTEMUSER) {
set_systemuser_password($_SESSION['userinfo']['uid'], $_POST['password1']);