Location: PHPKode > projects > DynPage > dynpage/logic/dynpage.config_changepwd.inc.php
<?php
/*
DynPage V1.01 - A simple Content Management System
Copyright (C) 2009-2010 Matthias Wiede <hide@address.com>

This program is free software; you can redistribute it and/or modify 
it under the terms of the GNU General Public License as published by 
the Free Software Foundation; either version 3 of the License, or 
(at your option) any later version.

This program is distributed in the hope that it will be useful, but 
WITHOUT ANY WARRANTY; without even the implied warranty of  MERCHANTABILITY 
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 
for more details.

You should have received a copy of the GNU General Public License 
along with this program; if not, see http://www.gnu.org/licenses.
*/

if (!defined ('DYNPAGE_LOGIN')) {
	exit;
}
require_once ("lib/input.inc.php");

$onLoad = "javascript:document.getElementById ('focus_id').focus();";

$FIELDS = array 
(
	"dynpage_password_old" =>  "0;s;m",
	"dynpage_password_new" =>  "0;s;m",
	"dynpage_password_new2" =>  "0;s;m",
	"admin_email" => "0;e;m;".getConf ("admin_email")
);


$values=array ();
$errors=array ();

$fShowErrors = false;
if ($cmd=="changepwd")
	$fShowErrors = true;
$errCnt  = loadInputParams ($FIELDS, $values, 0, $errors, true, $fShowErrors);

$errText = "";
$successText = "";

switch ($cmd) 
{
	case "changepwd":
		if ($errCnt>0)
			$errText = "Please check marked fields.";
		else
		if (isDemo ()) {
			$errText = "Cannot change password in Demo mode.";		
		}
		else
		{
			$hashOld = md5 ("admin:".$values["dynpage_password_old"]);
			if (getConf ("login_hash", getConf ("default_login_hash"))!=$hashOld) {
				$errText = "Old password is not correct.";
			}
			else			
			if (strlen ($values["dynpage_password_new"])<5) {
				$errText = "New password must have at least 5 characters.";		
			}
			else
			if ($values["dynpage_password_new"]!=$values["dynpage_password_new2"]) {
				$errText = "Replied password is not correct.";
			}
			else
			{
				$hashNew = md5 ("admin:".$values["dynpage_password_new"]);
				setConf ("login_hash", $hashNew);
				setConf ("admin_email", $values["admin_email"]);
				$successText = "Your password was changed.";
			}
		}
		break;
}
$values["dynpage_password_old"] = "";
$values["dynpage_password_new"] = "";
$values["dynpage_password_new2"] = "";
?>
Return current item: DynPage