<?php
require_once("dbclass.php");
class UserClass
{
var $m_nUserID;
var $m_sUsername;
var $m_sPassword;
var $m_sEMail;
var $m_nPatenID;
var $m_bAdmin;
var $m_bWriteAccess;
var $m_bDeleted;
var $m_dtmDeleted;
var $m_oDBObject;
function UserClass()
{
$this->initialize();
}
function initialize()
{
$this->m_nUserID = 0;
$this->m_sUsername = "";
$this->m_sPassword = "";
$this->m_sEMail = "";
$this->m_nPatenID = 0;
$this->m_bAdmin = false;
$this->m_bWriteAccess = false;
$this->m_bDeleted = false;
$this->m_dtmDeleted = "";
$this->m_oDBObject = new DBClass();
}
function saveUser()
{
if($this->m_nUserID != 0)
{
$this->updateUser();
}
else
{
$this->insertUser();
}
}
/*
* f�gt einen neuen Paten als Datensatz in die DB ein
*
*/
function insertUser()
{
$dummy = rand(1000000,9999999);
$SQL = "INSERT INTO user
(
strUsername,
strPassword,
strEMail,
lngPaten_IDF,
ysnAdmin
)
VALUES
(
'".addcslashes($dummy, "'")."',
'".addcslashes($this->m_sPassword, "'")."',
'".addcslashes($this->m_sEMail, "'")."',
".intval($this->m_nPatenID).",
".($this->m_bAdmin ? 1 : 0)."
)";
$this->m_oDBObject->executeDBQuery($SQL);
$error = mysql_error();
if($error == "")
{
$SQL = "SELECT lngUserID FROM user WHERE strUsername = '".addcslashes($dummy, "'")."'";
$result = $this->m_oDBObject->executeDBQuery($SQL);
if(mysql_num_rows($result) > 0)
{
$this->m_nUserID = mysql_result($result, 0, "lngUserID");
$SQL = "UPDATE user SET strUsername='". addcslashes($this->m_sUsername, "'") ."' WHERE lngUserID=". $this->m_nUserID;
$this->m_oDBObject->executeDBQuery($SQL);
}
}
else
{
echo $error;
}
}
/*
*
*/
function updateUser()
{
$SQL = "UPDATE user
SET
strUsername = '".addcslashes($this->m_sUsername, "'")."',
strPassword = '".addcslashes($this->m_sPassword, "'")."',
strEMail = '".addcslashes($this->m_sEMail, "'")."',
lngPaten_IDF = ".intval($this->m_nPatenID).",
ysnAdmin = ".($this->m_bAdmin ? 1 : 0)."
WHERE lngUserID=". $this->m_nUserID;
$this->m_oDBObject->executeDBQuery($SQL);
echo mysql_error();
}
/*
* (fertig)
*/
function deleteUser()
{
$SQL = "UPDATE user SET ysnDeleted=1, dtmDeleted=NOW() WHERE lngUserID=". $this->m_nPatenID;
$this->m_oDBObject->executeDBQuery($SQL);
echo mysql_error();
}
/*
*
*/
function getUserByID($PI_nUserID)
{
$SQL = "SELECT * FROM user WHERE lngUserID=".$PI_nUserID;
$result = $this->m_oDBObject->executeDBQuery($SQL);
if(mysql_num_rows($result) > 0)
{
$row = mysql_fetch_object($result);
$this->m_nUserID = $row->lngUserID;
$this->m_sUsername = $row->strUsername;
$this->m_sPassword = $row->strPassword;
$this->m_sEMail = $row->strEmail;
$this->m_bAdmin = ($row->ysnAdmin == 1 ? true : false);
$this->m_bWriteAccess = ($row->ysnWriteAccess == 1 ? true : false);
$this->m_nPatenID = $row->lngPaten_IDF;
$this->m_bDeleted = ($row->ysnDeleted == 1 ? true : false);
$this->m_dtmDeleted = ($row->ysnDeleted == 1 ? $row->dtmDeleted : "");
}
}
function getUserByPatenID($PI_nPatenID)
{
$SQL = "SELECT * FROM user WHERE lngPaten_IDF=".intval($PI_nPatenID);
$result = $this->m_oDBObject->executeDBQuery($SQL);
if(mysql_num_rows($result) > 0)
{
$row = mysql_fetch_object($result);
$this->m_nUserID = $row->lngUserID;
$this->m_sUsername = $row->strUsername;
$this->m_sPassword = $row->strPassword;
$this->m_sEMail = $row->strEmail;
$this->m_bAdmin = ($row->ysnAdmin == 1 ? true : false);
$this->m_nPatenID = $row->lngPaten_IDF;
$this->m_bDeleted = ($row->ysnDeleted == 1 ? true : false);
$this->m_dtmDeleted = ($row->ysnDeleted == 1 ? $row->dtmDeleted : "");
}
}
function getUserList()
{
$SQL = "SELECT * FROM user";
$QueryResult = $this->m_oDBObject->executeDBQuery($SQL);
$returnList = $this->createUserList($QueryResult);
return $returnList;
}
function searchUser($PI_sSearchString)
{
$searchString = addcslashes($PI_sSearchString, "'");
$SQL = "SELECT * FROM user
WHERE
strUsername LIKE '%".$searchString."%'
OR
strEmail LIKE '%".$searchString."%'";
$QueryResult = $this->m_oDBObject->executeDBQuery($SQL);
$returnList = $this->createUserList($QueryResult);
return $returnList;
}
function createUserList($PI_QueryResult)
{
$returnList = array();
while($row = mysql_fetch_object($PI_QueryResult))
{
$user = new UserClass();
$user->m_nUserID = $row->lngUserID;
$user->m_sUsername = $row->strUsername;
$user->m_sPassword = $row->strPassword;
$user->m_sEMail = $row->strEmail;
$user->m_nPatenID = $row->lngPaten_IDF;
$user->m_bAdmin = ($row->ysnAdmin == 1 ? true : false);
$user->m_bDeleted = ($row->ysnDeleted == 1 ? true : false);
$user->m_dtmDeleted = ($row->ysnDeleted == 1 ? $row->dtmDeleted : "");
array_push($returnList, $user);
}
return $returnList;
}
function authorizeUser($PI_sUsername, $PI_sPassword)
{
$bIsAuthorized = false;
$SQL = "SELECT lngUserID
FROM
user
WHERE
BINARY strUsername = '".addcslashes($PI_sUsername, "'")."'
AND
BINARY strPassword = '".addcslashes($PI_sPassword, "'")."'
AND
ysnDeleted = 0";
$result = $this->m_oDBObject->executeDBQuery($SQL);
if(mysql_num_rows($result) > 0)
{
$this->getUserByID(mysql_result($result, 0, "lngUserid"));
$bIsAuthorized = true;
}
return $bIsAuthorized;
}
}
?>