First version of the newly restructured repository
This commit is contained in:
79
backend/php/src/objects/class.database.php
Normal file
79
backend/php/src/objects/class.database.php
Normal file
@@ -0,0 +1,79 @@
|
||||
<?php
|
||||
/**
|
||||
* <b>Database Connection</b> class.
|
||||
* @author Php Object Generator
|
||||
* @version 3.0d / PHP5.1
|
||||
* @see http://www.phpobjectgenerator.com/
|
||||
* @copyright Free for personal & commercial use. (Offered under the BSD license)
|
||||
*/
|
||||
Class Database
|
||||
{
|
||||
public $connection;
|
||||
|
||||
private function Database()
|
||||
{
|
||||
$databaseName = $GLOBALS['configuration']['db'];
|
||||
$serverName = $GLOBALS['configuration']['host'];
|
||||
$databaseUser = $GLOBALS['configuration']['user'];
|
||||
$databasePassword = $GLOBALS['configuration']['pass'];
|
||||
$databasePort = $GLOBALS['configuration']['port'];
|
||||
$this->connection = mysql_connect ($serverName.":".$databasePort, $databaseUser, $databasePassword);
|
||||
if ($this->connection)
|
||||
{
|
||||
if (!mysql_select_db ($databaseName))
|
||||
{
|
||||
throw new Exception('I cannot find the specified database "'.$databaseName.'". Please edit configuration.php.');
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new Exception('I cannot connect to the database. Please edit configuration.php with your database configuration.');
|
||||
}
|
||||
}
|
||||
|
||||
public static function Connect()
|
||||
{
|
||||
static $database = null;
|
||||
if (!isset($database))
|
||||
{
|
||||
$database = new Database();
|
||||
}
|
||||
return $database->connection;
|
||||
}
|
||||
|
||||
public static function Reader($query, $connection)
|
||||
{
|
||||
$cursor = mysql_query($query, $connection);
|
||||
return $cursor;
|
||||
}
|
||||
|
||||
public static function Read($cursor)
|
||||
{
|
||||
return mysql_fetch_assoc($cursor);
|
||||
}
|
||||
|
||||
public static function NonQuery($query, $connection)
|
||||
{
|
||||
mysql_query($query, $connection);
|
||||
$result = mysql_affected_rows($connection);
|
||||
if ($result == -1)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return $result;
|
||||
|
||||
}
|
||||
|
||||
public static function Query($query, $connection)
|
||||
{
|
||||
$result = mysql_query($query, $connection);
|
||||
return mysql_num_rows($result);
|
||||
}
|
||||
|
||||
public static function InsertOrUpdate($query, $connection)
|
||||
{
|
||||
$result = mysql_query($query, $connection);
|
||||
return intval(mysql_insert_id($connection));
|
||||
}
|
||||
}
|
||||
?>
|
||||
400
backend/php/src/objects/class.onetimepassword.php
Normal file
400
backend/php/src/objects/class.onetimepassword.php
Normal file
@@ -0,0 +1,400 @@
|
||||
<?php
|
||||
/*
|
||||
This SQL query will create the table to store your object.
|
||||
|
||||
CREATE TABLE `onetimepassword` (
|
||||
`onetimepasswordid` int(11) NOT NULL auto_increment,
|
||||
`userid` int(11) NOT NULL,
|
||||
`onetimepasswordstatusid` int(11) NOT NULL,
|
||||
`reference` VARCHAR(255) NOT NULL,
|
||||
`key` VARCHAR(255) NOT NULL,
|
||||
`key_checksum` VARCHAR(255) NOT NULL,
|
||||
`data` TEXT NOT NULL,
|
||||
`version` VARCHAR(255) NOT NULL,
|
||||
`creation_date` TIMESTAMP NOT NULL,
|
||||
`request_date` TIMESTAMP NOT NULL,
|
||||
`usage_date` TIMESTAMP NOT NULL, INDEX(`userid`,`onetimepasswordstatusid`), PRIMARY KEY (`onetimepasswordid`)) ENGINE=MyISAM;
|
||||
*/
|
||||
|
||||
/**
|
||||
* <b>onetimepassword</b> class with integrated CRUD methods.
|
||||
* @author Php Object Generator
|
||||
* @version POG 3.0d / PHP5.1
|
||||
* @copyright Free for personal & commercial use. (Offered under the BSD license)
|
||||
* @link http://www.phpobjectgenerator.com/?language=php5.1&wrapper=pog&objectName=onetimepassword&attributeList=array+%28%0A++0+%3D%3E+%27user%27%2C%0A++1+%3D%3E+%27onetimepasswordstatus%27%2C%0A++2+%3D%3E+%27reference%27%2C%0A++3+%3D%3E+%27key%27%2C%0A++4+%3D%3E+%27key_checksum%27%2C%0A++5+%3D%3E+%27data%27%2C%0A++6+%3D%3E+%27version%27%2C%0A++7+%3D%3E+%27creation_date%27%2C%0A++8+%3D%3E+%27request_date%27%2C%0A++9+%3D%3E+%27usage_date%27%2C%0A%29&typeList=array+%28%0A++0+%3D%3E+%27BELONGSTO%27%2C%0A++1+%3D%3E+%27BELONGSTO%27%2C%0A++2+%3D%3E+%27VARCHAR%28255%29%27%2C%0A++3+%3D%3E+%27VARCHAR%28255%29%27%2C%0A++4+%3D%3E+%27VARCHAR%28255%29%27%2C%0A++5+%3D%3E+%27TEXT%27%2C%0A++6+%3D%3E+%27VARCHAR%28255%29%27%2C%0A++7+%3D%3E+%27TIMESTAMP%27%2C%0A++8+%3D%3E+%27TIMESTAMP%27%2C%0A++9+%3D%3E+%27TIMESTAMP%27%2C%0A%29
|
||||
*/
|
||||
include_once('class.pog_base.php');
|
||||
class onetimepassword extends POG_Base
|
||||
{
|
||||
public $onetimepasswordId = '';
|
||||
|
||||
/**
|
||||
* @var INT(11)
|
||||
*/
|
||||
public $userId;
|
||||
|
||||
/**
|
||||
* @var INT(11)
|
||||
*/
|
||||
public $onetimepasswordstatusId;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $reference;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $key;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $key_checksum;
|
||||
|
||||
/**
|
||||
* @var TEXT
|
||||
*/
|
||||
public $data;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $version;
|
||||
|
||||
/**
|
||||
* @var TIMESTAMP
|
||||
*/
|
||||
public $creation_date;
|
||||
|
||||
/**
|
||||
* @var TIMESTAMP
|
||||
*/
|
||||
public $request_date;
|
||||
|
||||
/**
|
||||
* @var TIMESTAMP
|
||||
*/
|
||||
public $usage_date;
|
||||
|
||||
public $pog_attribute_type = array(
|
||||
"onetimepasswordId" => array('db_attributes' => array("NUMERIC", "INT")),
|
||||
"user" => array('db_attributes' => array("OBJECT", "BELONGSTO")),
|
||||
"onetimepasswordstatus" => array('db_attributes' => array("OBJECT", "BELONGSTO")),
|
||||
"reference" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"key" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"key_checksum" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"data" => array('db_attributes' => array("TEXT", "TEXT")),
|
||||
"version" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"creation_date" => array('db_attributes' => array("NUMERIC", "TIMESTAMP")),
|
||||
"request_date" => array('db_attributes' => array("NUMERIC", "TIMESTAMP")),
|
||||
"usage_date" => array('db_attributes' => array("NUMERIC", "TIMESTAMP")),
|
||||
);
|
||||
public $pog_query;
|
||||
|
||||
|
||||
/**
|
||||
* Getter for some private attributes
|
||||
* @return mixed $attribute
|
||||
*/
|
||||
public function __get($attribute)
|
||||
{
|
||||
if (isset($this->{"_".$attribute}))
|
||||
{
|
||||
return $this->{"_".$attribute};
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function onetimepassword($reference='', $key='', $key_checksum='', $data='', $version='', $creation_date='', $request_date='', $usage_date='')
|
||||
{
|
||||
$this->reference = $reference;
|
||||
$this->key = $key;
|
||||
$this->key_checksum = $key_checksum;
|
||||
$this->data = $data;
|
||||
$this->version = $version;
|
||||
$this->creation_date = $creation_date;
|
||||
$this->request_date = $request_date;
|
||||
$this->usage_date = $usage_date;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets object from database
|
||||
* @param integer $onetimepasswordId
|
||||
* @return object $onetimepassword
|
||||
*/
|
||||
function Get($onetimepasswordId)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select * from `onetimepassword` where `onetimepasswordid`='".intval($onetimepasswordId)."' LIMIT 1";
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$this->onetimepasswordId = $row['onetimepasswordid'];
|
||||
$this->userId = $row['userid'];
|
||||
$this->onetimepasswordstatusId = $row['onetimepasswordstatusid'];
|
||||
$this->reference = $this->Unescape($row['reference']);
|
||||
$this->key = $this->Unescape($row['key']);
|
||||
$this->key_checksum = $this->Unescape($row['key_checksum']);
|
||||
$this->data = $this->Unescape($row['data']);
|
||||
$this->version = $this->Unescape($row['version']);
|
||||
$this->creation_date = $row['creation_date'];
|
||||
$this->request_date = $row['request_date'];
|
||||
$this->usage_date = $row['usage_date'];
|
||||
}
|
||||
return $this;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns a sorted array of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param string $sortBy
|
||||
* @param boolean $ascending
|
||||
* @param int limit
|
||||
* @return array $onetimepasswordList
|
||||
*/
|
||||
function GetList($fcv_array = array(), $sortBy='', $ascending=true, $limit='')
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$sqlLimit = ($limit != '' ? "LIMIT $limit" : '');
|
||||
$this->pog_query = "select * from `onetimepassword` ";
|
||||
$onetimepasswordList = Array();
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
$this->pog_query .= " where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$this->pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) != 1)
|
||||
{
|
||||
$this->pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? "BASE64_DECODE(".$fcv_array[$i][2].")" : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "BASE64_DECODE(`".$fcv_array[$i][0]."`) ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$this->Escape($fcv_array[$i][2])."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($sortBy != '')
|
||||
{
|
||||
if (isset($this->pog_attribute_type[$sortBy]['db_attributes']) && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$sortBy = "BASE64_DECODE($sortBy) ";
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "onetimepasswordid";
|
||||
}
|
||||
$this->pog_query .= " order by ".$sortBy." ".($ascending ? "asc" : "desc")." $sqlLimit";
|
||||
$thisObjectName = get_class($this);
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$onetimepassword = new $thisObjectName();
|
||||
$onetimepassword->onetimepasswordId = $row['onetimepasswordid'];
|
||||
$onetimepassword->userId = $row['userid'];
|
||||
$onetimepassword->onetimepasswordstatusId = $row['onetimepasswordstatusid'];
|
||||
$onetimepassword->reference = $this->Unescape($row['reference']);
|
||||
$onetimepassword->key = $this->Unescape($row['key']);
|
||||
$onetimepassword->key_checksum = $this->Unescape($row['key_checksum']);
|
||||
$onetimepassword->data = $this->Unescape($row['data']);
|
||||
$onetimepassword->version = $this->Unescape($row['version']);
|
||||
$onetimepassword->creation_date = $row['creation_date'];
|
||||
$onetimepassword->request_date = $row['request_date'];
|
||||
$onetimepassword->usage_date = $row['usage_date'];
|
||||
$onetimepasswordList[] = $onetimepassword;
|
||||
}
|
||||
return $onetimepasswordList;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Saves the object to the database
|
||||
* @return integer $onetimepasswordId
|
||||
*/
|
||||
function Save()
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select `onetimepasswordid` from `onetimepassword` where `onetimepasswordid`='".$this->onetimepasswordId."' LIMIT 1";
|
||||
$rows = Database::Query($this->pog_query, $connection);
|
||||
if ($rows > 0)
|
||||
{
|
||||
$this->pog_query = "update `onetimepassword` set
|
||||
`userid`='".$this->userId."',
|
||||
`onetimepasswordstatusid`='".$this->onetimepasswordstatusId."',
|
||||
`reference`='".$this->Escape($this->reference)."',
|
||||
`key`='".$this->Escape($this->key)."',
|
||||
`key_checksum`='".$this->Escape($this->key_checksum)."',
|
||||
`data`='".$this->Escape($this->data)."',
|
||||
`version`='".$this->Escape($this->version)."',
|
||||
`creation_date`='".$this->creation_date."',
|
||||
`request_date`='".$this->request_date."',
|
||||
`usage_date`='".$this->usage_date."' where `onetimepasswordid`='".$this->onetimepasswordId."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->pog_query = "insert into `onetimepassword` (`userid`, `onetimepasswordstatusid`, `reference`, `key`, `key_checksum`, `data`, `version`, `creation_date`, `request_date`, `usage_date` ) values (
|
||||
'".$this->userId."',
|
||||
'".$this->onetimepasswordstatusId."',
|
||||
'".$this->Escape($this->reference)."',
|
||||
'".$this->Escape($this->key)."',
|
||||
'".$this->Escape($this->key_checksum)."',
|
||||
'".$this->Escape($this->data)."',
|
||||
'".$this->Escape($this->version)."',
|
||||
'".$this->creation_date."',
|
||||
'".$this->request_date."',
|
||||
'".$this->usage_date."' )";
|
||||
}
|
||||
$insertId = Database::InsertOrUpdate($this->pog_query, $connection);
|
||||
if ($this->onetimepasswordId == "")
|
||||
{
|
||||
$this->onetimepasswordId = $insertId;
|
||||
}
|
||||
return $this->onetimepasswordId;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Clones the object and saves it to the database
|
||||
* @return integer $onetimepasswordId
|
||||
*/
|
||||
function SaveNew()
|
||||
{
|
||||
$this->onetimepasswordId = '';
|
||||
return $this->Save();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes the object from the database
|
||||
* @return boolean
|
||||
*/
|
||||
function Delete()
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "delete from `onetimepassword` where `onetimepasswordid`='".$this->onetimepasswordId."'";
|
||||
return Database::NonQuery($this->pog_query, $connection);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes a list of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param bool $deep
|
||||
* @return
|
||||
*/
|
||||
function DeleteList($fcv_array)
|
||||
{
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$pog_query = "delete from `onetimepassword` where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) !== 1)
|
||||
{
|
||||
$pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$this->Escape($fcv_array[$i][2])."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$fcv_array[$i][2]."'";
|
||||
}
|
||||
}
|
||||
}
|
||||
return Database::NonQuery($pog_query, $connection);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the user object to this one
|
||||
* @return boolean
|
||||
*/
|
||||
function GetUser()
|
||||
{
|
||||
$user = new user();
|
||||
return $user->Get($this->userId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the user object to this one
|
||||
* @return
|
||||
*/
|
||||
function SetUser(&$user)
|
||||
{
|
||||
$this->userId = $user->userId;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the onetimepasswordstatus object to this one
|
||||
* @return boolean
|
||||
*/
|
||||
function GetOnetimepasswordstatus()
|
||||
{
|
||||
$onetimepasswordstatus = new onetimepasswordstatus();
|
||||
return $onetimepasswordstatus->Get($this->onetimepasswordstatusId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the onetimepasswordstatus object to this one
|
||||
* @return
|
||||
*/
|
||||
function SetOnetimepasswordstatus(&$onetimepasswordstatus)
|
||||
{
|
||||
$this->onetimepasswordstatusId = $onetimepasswordstatus->onetimepasswordstatusId;
|
||||
}
|
||||
}
|
||||
?>
|
||||
368
backend/php/src/objects/class.onetimepasswordstatus.php
Normal file
368
backend/php/src/objects/class.onetimepasswordstatus.php
Normal file
@@ -0,0 +1,368 @@
|
||||
<?php
|
||||
/*
|
||||
This SQL query will create the table to store your object.
|
||||
|
||||
CREATE TABLE `onetimepasswordstatus` (
|
||||
`onetimepasswordstatusid` int(11) NOT NULL auto_increment,
|
||||
`code` VARCHAR(255) NOT NULL,
|
||||
`name` VARCHAR(255) NOT NULL,
|
||||
`description` TEXT NOT NULL, PRIMARY KEY (`onetimepasswordstatusid`)) ENGINE=MyISAM;
|
||||
*/
|
||||
|
||||
/**
|
||||
* <b>onetimepasswordstatus</b> class with integrated CRUD methods.
|
||||
* @author Php Object Generator
|
||||
* @version POG 3.0d / PHP5.1 MYSQL
|
||||
* @see http://www.phpobjectgenerator.com/plog/tutorials/45/pdo-mysql
|
||||
* @copyright Free for personal & commercial use. (Offered under the BSD license)
|
||||
* @link http://www.phpobjectgenerator.com/?language=php5.1&wrapper=pdo&pdoDriver=mysql&objectName=onetimepasswordstatus&attributeList=array+%28%0A++0+%3D%3E+%27onetimepassword%27%2C%0A++1+%3D%3E+%27code%27%2C%0A++2+%3D%3E+%27name%27%2C%0A++3+%3D%3E+%27description%27%2C%0A%29&typeList=array%2B%2528%250A%2B%2B0%2B%253D%253E%2B%2527HASMANY%2527%252C%250A%2B%2B1%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B2%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B3%2B%253D%253E%2B%2527TEXT%2527%252C%250A%2529
|
||||
*/
|
||||
include_once('class.pog_base.php');
|
||||
class onetimepasswordstatus extends POG_Base
|
||||
{
|
||||
public $onetimepasswordstatusId = '';
|
||||
|
||||
/**
|
||||
* @var private array of onetimepassword objects
|
||||
*/
|
||||
private $_onetimepasswordList = array();
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $code;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $name;
|
||||
|
||||
/**
|
||||
* @var TEXT
|
||||
*/
|
||||
public $description;
|
||||
|
||||
public $pog_attribute_type = array(
|
||||
"onetimepasswordstatusId" => array('db_attributes' => array("NUMERIC", "INT")),
|
||||
"onetimepassword" => array('db_attributes' => array("OBJECT", "HASMANY")),
|
||||
"code" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"name" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"description" => array('db_attributes' => array("TEXT", "TEXT")),
|
||||
);
|
||||
public $pog_query;
|
||||
|
||||
|
||||
/**
|
||||
* Getter for some private attributes
|
||||
* @return mixed $attribute
|
||||
*/
|
||||
public function __get($attribute)
|
||||
{
|
||||
if (isset($this->{"_".$attribute}))
|
||||
{
|
||||
return $this->{"_".$attribute};
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function onetimepasswordstatus($code='', $name='', $description='')
|
||||
{
|
||||
$this->_onetimepasswordList = array();
|
||||
$this->code = $code;
|
||||
$this->name = $name;
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets object from database
|
||||
* @param integer $onetimepasswordstatusId
|
||||
* @return object $onetimepasswordstatus
|
||||
*/
|
||||
function Get($onetimepasswordstatusId)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select * from `onetimepasswordstatus` where `onetimepasswordstatusid`='".intval($onetimepasswordstatusId)."' LIMIT 1";
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$this->onetimepasswordstatusId = $row['onetimepasswordstatusid'];
|
||||
$this->code = $this->Unescape($row['code']);
|
||||
$this->name = $this->Unescape($row['name']);
|
||||
$this->description = $this->Unescape($row['description']);
|
||||
}
|
||||
return $this;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns a sorted array of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param string $sortBy
|
||||
* @param boolean $ascending
|
||||
* @param int limit
|
||||
* @return array $onetimepasswordstatusList
|
||||
*/
|
||||
function GetList($fcv_array = array(), $sortBy='', $ascending=true, $limit='')
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$sqlLimit = ($limit != '' ? "LIMIT $limit" : '');
|
||||
$this->pog_query = "select * from `onetimepasswordstatus` ";
|
||||
$onetimepasswordstatusList = Array();
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
$this->pog_query .= " where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$this->pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) != 1)
|
||||
{
|
||||
$this->pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? "BASE64_DECODE(".$fcv_array[$i][2].")" : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "BASE64_DECODE(`".$fcv_array[$i][0]."`) ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$this->Escape($fcv_array[$i][2])."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($sortBy != '')
|
||||
{
|
||||
if (isset($this->pog_attribute_type[$sortBy]['db_attributes']) && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$sortBy = "BASE64_DECODE($sortBy) ";
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "onetimepasswordstatusid";
|
||||
}
|
||||
$this->pog_query .= " order by ".$sortBy." ".($ascending ? "asc" : "desc")." $sqlLimit";
|
||||
$thisObjectName = get_class($this);
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$onetimepasswordstatus = new $thisObjectName();
|
||||
$onetimepasswordstatus->onetimepasswordstatusId = $row['onetimepasswordstatusid'];
|
||||
$onetimepasswordstatus->code = $this->Unescape($row['code']);
|
||||
$onetimepasswordstatus->name = $this->Unescape($row['name']);
|
||||
$onetimepasswordstatus->description = $this->Unescape($row['description']);
|
||||
$onetimepasswordstatusList[] = $onetimepasswordstatus;
|
||||
}
|
||||
return $onetimepasswordstatusList;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Saves the object to the database
|
||||
* @return integer $onetimepasswordstatusId
|
||||
*/
|
||||
function Save($deep = true)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select `onetimepasswordstatusid` from `onetimepasswordstatus` where `onetimepasswordstatusid`='".$this->onetimepasswordstatusId."' LIMIT 1";
|
||||
$rows = Database::Query($this->pog_query, $connection);
|
||||
if ($rows > 0)
|
||||
{
|
||||
$this->pog_query = "update `onetimepasswordstatus` set
|
||||
`code`='".$this->Escape($this->code)."',
|
||||
`name`='".$this->Escape($this->name)."',
|
||||
`description`='".$this->Escape($this->description)."' where `onetimepasswordstatusid`='".$this->onetimepasswordstatusId."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->pog_query = "insert into `onetimepasswordstatus` (`code`, `name`, `description` ) values (
|
||||
'".$this->Escape($this->code)."',
|
||||
'".$this->Escape($this->name)."',
|
||||
'".$this->Escape($this->description)."' )";
|
||||
}
|
||||
$insertId = Database::InsertOrUpdate($this->pog_query, $connection);
|
||||
if ($this->onetimepasswordstatusId == "")
|
||||
{
|
||||
$this->onetimepasswordstatusId = $insertId;
|
||||
}
|
||||
if ($deep)
|
||||
{
|
||||
foreach ($this->_onetimepasswordList as $onetimepassword)
|
||||
{
|
||||
$onetimepassword->onetimepasswordstatusId = $this->onetimepasswordstatusId;
|
||||
$onetimepassword->Save($deep);
|
||||
}
|
||||
}
|
||||
return $this->onetimepasswordstatusId;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Clones the object and saves it to the database
|
||||
* @return integer $onetimepasswordstatusId
|
||||
*/
|
||||
function SaveNew($deep = false)
|
||||
{
|
||||
$this->onetimepasswordstatusId = '';
|
||||
return $this->Save($deep);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes the object from the database
|
||||
* @return boolean
|
||||
*/
|
||||
function Delete($deep = false, $across = false)
|
||||
{
|
||||
if ($deep)
|
||||
{
|
||||
$onetimepasswordList = $this->GetOnetimepasswordList();
|
||||
foreach ($onetimepasswordList as $onetimepassword)
|
||||
{
|
||||
$onetimepassword->Delete($deep, $across);
|
||||
}
|
||||
}
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "delete from `onetimepasswordstatus` where `onetimepasswordstatusid`='".$this->onetimepasswordstatusId."'";
|
||||
return Database::NonQuery($this->pog_query, $connection);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes a list of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param bool $deep
|
||||
* @return
|
||||
*/
|
||||
function DeleteList($fcv_array, $deep = false, $across = false)
|
||||
{
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
if ($deep || $across)
|
||||
{
|
||||
$objectList = $this->GetList($fcv_array);
|
||||
foreach ($objectList as $object)
|
||||
{
|
||||
$object->Delete($deep, $across);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$pog_query = "delete from `onetimepasswordstatus` where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) !== 1)
|
||||
{
|
||||
$pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$this->Escape($fcv_array[$i][2])."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$fcv_array[$i][2]."'";
|
||||
}
|
||||
}
|
||||
}
|
||||
return Database::NonQuery($pog_query, $connection);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets a list of onetimepassword objects associated to this one
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param string $sortBy
|
||||
* @param boolean $ascending
|
||||
* @param int limit
|
||||
* @return array of onetimepassword objects
|
||||
*/
|
||||
function GetOnetimepasswordList($fcv_array = array(), $sortBy='', $ascending=true, $limit='')
|
||||
{
|
||||
$onetimepassword = new onetimepassword();
|
||||
$fcv_array[] = array("onetimepasswordstatusId", "=", $this->onetimepasswordstatusId);
|
||||
$dbObjects = $onetimepassword->GetList($fcv_array, $sortBy, $ascending, $limit);
|
||||
return $dbObjects;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Makes this the parent of all onetimepassword objects in the onetimepassword List array. Any existing onetimepassword will become orphan(s)
|
||||
* @return null
|
||||
*/
|
||||
function SetOnetimepasswordList(&$list)
|
||||
{
|
||||
$this->_onetimepasswordList = array();
|
||||
$existingOnetimepasswordList = $this->GetOnetimepasswordList();
|
||||
foreach ($existingOnetimepasswordList as $onetimepassword)
|
||||
{
|
||||
$onetimepassword->onetimepasswordstatusId = '';
|
||||
$onetimepassword->Save(false);
|
||||
}
|
||||
$this->_onetimepasswordList = $list;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the onetimepassword object to this one
|
||||
* @return
|
||||
*/
|
||||
function AddOnetimepassword(&$onetimepassword)
|
||||
{
|
||||
$onetimepassword->onetimepasswordstatusId = $this->onetimepasswordstatusId;
|
||||
$found = false;
|
||||
foreach($this->_onetimepasswordList as $onetimepassword2)
|
||||
{
|
||||
if ($onetimepassword->onetimepasswordId > 0 && $onetimepassword->onetimepasswordId == $onetimepassword2->onetimepasswordId)
|
||||
{
|
||||
$found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!$found)
|
||||
{
|
||||
$this->_onetimepasswordList[] = $onetimepassword;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
143
backend/php/src/objects/class.pog_base.php
Normal file
143
backend/php/src/objects/class.pog_base.php
Normal file
@@ -0,0 +1,143 @@
|
||||
<?php
|
||||
class POG_Base
|
||||
{
|
||||
/**
|
||||
* Overloading
|
||||
*/
|
||||
function __call($method, $argv)
|
||||
{
|
||||
include_once($GLOBALS['configuration']['plugins_path']."/IPlugin.php");
|
||||
include_once($GLOBALS['configuration']['plugins_path']."/plugin.".strtolower($method).".php");
|
||||
eval('$plugin = new $method($this,$argv);');
|
||||
return $plugin->Execute();
|
||||
}
|
||||
|
||||
/**
|
||||
* constructor
|
||||
*
|
||||
* @return POG_Base
|
||||
*/
|
||||
private function POG_Base()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
function SetFieldAttribute($fieldName, $attributeName, $attributeValue)
|
||||
{
|
||||
if (isset($this->pog_attribute_type[$fieldName]) && isset($this->pog_attribute_type[$fieldName][$attributeName]))
|
||||
{
|
||||
$this->pog_attribute_type[$fieldName][$attributeName] = $attributeValue;
|
||||
}
|
||||
}
|
||||
|
||||
function GetFieldAttribute($fieldName, $attributeName)
|
||||
{
|
||||
if (isset($this->pog_attribute_type[$fieldName]) && isset($this->pog_attribute_type[$fieldName][$attributeName]))
|
||||
{
|
||||
return $this->pog_attribute_type[$fieldName][$attributeName];
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
///////////////////////////
|
||||
// Data manipulation
|
||||
///////////////////////////
|
||||
|
||||
/**
|
||||
* This function will try to encode $text to base64, except when $text is a number. This allows us to Escape all data before they're inserted in the database, regardless of attribute type.
|
||||
* @param string $text
|
||||
* @return string encoded to base64
|
||||
*/
|
||||
public function Escape($text)
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] && !is_numeric($text))
|
||||
{
|
||||
return base64_encode($text);
|
||||
}
|
||||
return addslashes($text);
|
||||
}
|
||||
|
||||
/**
|
||||
* Enter description here...
|
||||
*
|
||||
* @param unknown_type $text
|
||||
* @return unknown
|
||||
*/
|
||||
public function Unescape($text)
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] && !is_numeric($text))
|
||||
{
|
||||
return base64_decode($text);
|
||||
}
|
||||
return stripcslashes($text);
|
||||
}
|
||||
|
||||
|
||||
////////////////////////////////
|
||||
// Table -> Object Mapping
|
||||
////////////////////////////////
|
||||
|
||||
/**
|
||||
* Executes $query against database and returns the result set as an array of POG objects
|
||||
*
|
||||
* @param string $query. SQL query to execute against database
|
||||
* @param string $objectClass. POG Object type to return
|
||||
* @param bool $lazy. If true, will also load all children/sibling
|
||||
*/
|
||||
public function FetchObjects($query, $objectClass, $lazy = true)
|
||||
{
|
||||
$databaseConnection = Database::Connect();
|
||||
$result = Database::Query($query, $databaseConnection);
|
||||
$objectList = $this->CreateObjects($result, $objectClass, $lazy);
|
||||
return $objectList;
|
||||
}
|
||||
|
||||
private function CreateObjects($mysql_result, $objectClass, $lazyLoad = true)
|
||||
{
|
||||
$objectList = array();
|
||||
while ($row = mysql_fetch_assoc($mysql_result))
|
||||
{
|
||||
$pog_object = new $objectClass();
|
||||
$this->PopulateObjectAttributes($row, $pog_object);
|
||||
$objectList[] = $pog_object;
|
||||
}
|
||||
return $objectList;
|
||||
}
|
||||
|
||||
private function PopulateObjectAttributes($fetched_row, $pog_object)
|
||||
{
|
||||
foreach ($this->GetAttributes($pog_object) as $column)
|
||||
{
|
||||
$pog_object->{$column} = $this->Unescape($fetched_row[strtolower($column)]);
|
||||
}
|
||||
return $pog_object;
|
||||
}
|
||||
|
||||
private function GetAttributes($object)
|
||||
{
|
||||
$columns = array();
|
||||
foreach ($object->pog_attribute_type as $att => $properties)
|
||||
{
|
||||
if ($properties['db_attributes'][0] != 'OBJECT')
|
||||
{
|
||||
$columns[] = $att;
|
||||
}
|
||||
}
|
||||
return $columns;
|
||||
}
|
||||
|
||||
//misc
|
||||
public static function IsColumn($value)
|
||||
{
|
||||
if (strlen($value) > 2)
|
||||
{
|
||||
if (substr($value, 0, 1) == '`' && substr($value, strlen($value) - 1, 1) == '`')
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
?>
|
||||
436
backend/php/src/objects/class.record.php
Normal file
436
backend/php/src/objects/class.record.php
Normal file
@@ -0,0 +1,436 @@
|
||||
<?php
|
||||
/*
|
||||
This SQL query will create the table to store your object.
|
||||
|
||||
CREATE TABLE `record` (
|
||||
`recordid` int(11) NOT NULL auto_increment,
|
||||
`userid` int(11) NOT NULL,
|
||||
`reference` VARCHAR(255) NOT NULL,
|
||||
`data` LONGTEXT NOT NULL,
|
||||
`version` VARCHAR(255) NOT NULL,
|
||||
`creation_date` TIMESTAMP NOT NULL,
|
||||
`update_date` TIMESTAMP NOT NULL,
|
||||
`access_date` TIMESTAMP NOT NULL, INDEX(`userid`), PRIMARY KEY (`recordid`)) ENGINE=MyISAM;
|
||||
*/
|
||||
|
||||
/**
|
||||
* <b>record</b> class with integrated CRUD methods.
|
||||
* @author Php Object Generator
|
||||
* @version POG 3.0e / PHP5.1 MYSQL
|
||||
* @see http://www.phpobjectgenerator.com/plog/tutorials/45/pdo-mysql
|
||||
* @copyright Free for personal & commercial use. (Offered under the BSD license)
|
||||
* @link http://www.phpobjectgenerator.com/?language=php5.1&wrapper=pdo&pdoDriver=mysql&objectName=record&attributeList=array+%28%0A++0+%3D%3E+%27user%27%2C%0A++1+%3D%3E+%27recordversion%27%2C%0A++2+%3D%3E+%27reference%27%2C%0A++3+%3D%3E+%27data%27%2C%0A++4+%3D%3E+%27version%27%2C%0A++5+%3D%3E+%27creation_date%27%2C%0A++6+%3D%3E+%27update_date%27%2C%0A++7+%3D%3E+%27access_date%27%2C%0A%29&typeList=array%2B%2528%250A%2B%2B0%2B%253D%253E%2B%2527BELONGSTO%2527%252C%250A%2B%2B1%2B%253D%253E%2B%2527HASMANY%2527%252C%250A%2B%2B2%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B3%2B%253D%253E%2B%2527LONGTEXT%2527%252C%250A%2B%2B4%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B5%2B%253D%253E%2B%2527TIMESTAMP%2527%252C%250A%2B%2B6%2B%253D%253E%2B%2527TIMESTAMP%2527%252C%250A%2B%2B7%2B%253D%253E%2B%2527TIMESTAMP%2527%252C%250A%2529
|
||||
*/
|
||||
include_once('class.pog_base.php');
|
||||
class record extends POG_Base
|
||||
{
|
||||
public $recordId = '';
|
||||
|
||||
/**
|
||||
* @var INT(11)
|
||||
*/
|
||||
public $userId;
|
||||
|
||||
/**
|
||||
* @var private array of recordversion objects
|
||||
*/
|
||||
private $_recordversionList = array();
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $reference;
|
||||
|
||||
/**
|
||||
* @var LONGTEXT
|
||||
*/
|
||||
public $data;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $version;
|
||||
|
||||
/**
|
||||
* @var TIMESTAMP
|
||||
*/
|
||||
public $creation_date;
|
||||
|
||||
/**
|
||||
* @var TIMESTAMP
|
||||
*/
|
||||
public $update_date;
|
||||
|
||||
/**
|
||||
* @var TIMESTAMP
|
||||
*/
|
||||
public $access_date;
|
||||
|
||||
public $pog_attribute_type = array(
|
||||
"recordId" => array('db_attributes' => array("NUMERIC", "INT")),
|
||||
"user" => array('db_attributes' => array("OBJECT", "BELONGSTO")),
|
||||
"recordversion" => array('db_attributes' => array("OBJECT", "HASMANY")),
|
||||
"reference" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"data" => array('db_attributes' => array("TEXT", "LONGTEXT")),
|
||||
"version" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"creation_date" => array('db_attributes' => array("NUMERIC", "TIMESTAMP")),
|
||||
"update_date" => array('db_attributes' => array("NUMERIC", "TIMESTAMP")),
|
||||
"access_date" => array('db_attributes' => array("NUMERIC", "TIMESTAMP")),
|
||||
);
|
||||
public $pog_query;
|
||||
|
||||
|
||||
/**
|
||||
* Getter for some private attributes
|
||||
* @return mixed $attribute
|
||||
*/
|
||||
public function __get($attribute)
|
||||
{
|
||||
if (isset($this->{"_".$attribute}))
|
||||
{
|
||||
return $this->{"_".$attribute};
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function record($reference='', $data='', $version='', $creation_date='', $update_date='', $access_date='')
|
||||
{
|
||||
$this->_recordversionList = array();
|
||||
$this->reference = $reference;
|
||||
$this->data = $data;
|
||||
$this->version = $version;
|
||||
$this->creation_date = $creation_date;
|
||||
$this->update_date = $update_date;
|
||||
$this->access_date = $access_date;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets object from database
|
||||
* @param integer $recordId
|
||||
* @return object $record
|
||||
*/
|
||||
function Get($recordId)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select * from `record` where `recordid`='".intval($recordId)."' LIMIT 1";
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$this->recordId = $row['recordid'];
|
||||
$this->userId = $row['userid'];
|
||||
$this->reference = $this->Unescape($row['reference']);
|
||||
$this->data = $this->Unescape($row['data']);
|
||||
$this->version = $this->Unescape($row['version']);
|
||||
$this->creation_date = $row['creation_date'];
|
||||
$this->update_date = $row['update_date'];
|
||||
$this->access_date = $row['access_date'];
|
||||
}
|
||||
return $this;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns a sorted array of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param string $sortBy
|
||||
* @param boolean $ascending
|
||||
* @param int limit
|
||||
* @return array $recordList
|
||||
*/
|
||||
function GetList($fcv_array = array(), $sortBy='', $ascending=true, $limit='')
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$sqlLimit = ($limit != '' ? "LIMIT $limit" : '');
|
||||
$this->pog_query = "select * from `record` ";
|
||||
$recordList = Array();
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
$this->pog_query .= " where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$this->pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) != 1)
|
||||
{
|
||||
$this->pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? "BASE64_DECODE(".$fcv_array[$i][2].")" : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "BASE64_DECODE(`".$fcv_array[$i][0]."`) ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$this->Escape($fcv_array[$i][2])."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($sortBy != '')
|
||||
{
|
||||
if (isset($this->pog_attribute_type[$sortBy]['db_attributes']) && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$sortBy = "BASE64_DECODE($sortBy) ";
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "recordid";
|
||||
}
|
||||
$this->pog_query .= " order by ".$sortBy." ".($ascending ? "asc" : "desc")." $sqlLimit";
|
||||
$thisObjectName = get_class($this);
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$record = new $thisObjectName();
|
||||
$record->recordId = $row['recordid'];
|
||||
$record->userId = $row['userid'];
|
||||
$record->reference = $this->Unescape($row['reference']);
|
||||
$record->data = $this->Unescape($row['data']);
|
||||
$record->version = $this->Unescape($row['version']);
|
||||
$record->creation_date = $row['creation_date'];
|
||||
$record->update_date = $row['update_date'];
|
||||
$record->access_date = $row['access_date'];
|
||||
$recordList[] = $record;
|
||||
}
|
||||
return $recordList;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Saves the object to the database
|
||||
* @return integer $recordId
|
||||
*/
|
||||
function Save($deep = true)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select `recordid` from `record` where `recordid`='".$this->recordId."' LIMIT 1";
|
||||
$rows = Database::Query($this->pog_query, $connection);
|
||||
if ($rows > 0)
|
||||
{
|
||||
$this->pog_query = "update `record` set
|
||||
`userid`='".$this->userId."',
|
||||
`reference`='".$this->Escape($this->reference)."',
|
||||
`data`='".$this->Escape($this->data)."',
|
||||
`version`='".$this->Escape($this->version)."',
|
||||
`creation_date`='".$this->creation_date."',
|
||||
`update_date`='".$this->update_date."',
|
||||
`access_date`='".$this->access_date."' where `recordid`='".$this->recordId."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->pog_query = "insert into `record` (`userid`, `reference`, `data`, `version`, `creation_date`, `update_date`, `access_date` ) values (
|
||||
'".$this->userId."',
|
||||
'".$this->Escape($this->reference)."',
|
||||
'".$this->Escape($this->data)."',
|
||||
'".$this->Escape($this->version)."',
|
||||
'".$this->creation_date."',
|
||||
'".$this->update_date."',
|
||||
'".$this->access_date."' )";
|
||||
}
|
||||
$insertId = Database::InsertOrUpdate($this->pog_query, $connection);
|
||||
if ($this->recordId == "")
|
||||
{
|
||||
$this->recordId = $insertId;
|
||||
}
|
||||
if ($deep)
|
||||
{
|
||||
foreach ($this->_recordversionList as $recordversion)
|
||||
{
|
||||
$recordversion->recordId = $this->recordId;
|
||||
$recordversion->Save($deep);
|
||||
}
|
||||
}
|
||||
return $this->recordId;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Clones the object and saves it to the database
|
||||
* @return integer $recordId
|
||||
*/
|
||||
function SaveNew($deep = false)
|
||||
{
|
||||
$this->recordId = '';
|
||||
return $this->Save($deep);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes the object from the database
|
||||
* @return boolean
|
||||
*/
|
||||
function Delete($deep = false, $across = false)
|
||||
{
|
||||
if ($deep)
|
||||
{
|
||||
$recordversionList = $this->GetRecordversionList();
|
||||
foreach ($recordversionList as $recordversion)
|
||||
{
|
||||
$recordversion->Delete($deep, $across);
|
||||
}
|
||||
}
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "delete from `record` where `recordid`='".$this->recordId."'";
|
||||
return Database::NonQuery($this->pog_query, $connection);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes a list of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param bool $deep
|
||||
* @return
|
||||
*/
|
||||
function DeleteList($fcv_array, $deep = false, $across = false)
|
||||
{
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
if ($deep || $across)
|
||||
{
|
||||
$objectList = $this->GetList($fcv_array);
|
||||
foreach ($objectList as $object)
|
||||
{
|
||||
$object->Delete($deep, $across);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$pog_query = "delete from `record` where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) !== 1)
|
||||
{
|
||||
$pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$this->Escape($fcv_array[$i][2])."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$fcv_array[$i][2]."'";
|
||||
}
|
||||
}
|
||||
}
|
||||
return Database::NonQuery($pog_query, $connection);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the user object to this one
|
||||
* @return boolean
|
||||
*/
|
||||
function GetUser()
|
||||
{
|
||||
$user = new user();
|
||||
return $user->Get($this->userId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the user object to this one
|
||||
* @return
|
||||
*/
|
||||
function SetUser(&$user)
|
||||
{
|
||||
$this->userId = $user->userId;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets a list of recordversion objects associated to this one
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param string $sortBy
|
||||
* @param boolean $ascending
|
||||
* @param int limit
|
||||
* @return array of recordversion objects
|
||||
*/
|
||||
function GetRecordversionList($fcv_array = array(), $sortBy='', $ascending=true, $limit='')
|
||||
{
|
||||
$recordversion = new recordversion();
|
||||
$fcv_array[] = array("recordId", "=", $this->recordId);
|
||||
$dbObjects = $recordversion->GetList($fcv_array, $sortBy, $ascending, $limit);
|
||||
return $dbObjects;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Makes this the parent of all recordversion objects in the recordversion List array. Any existing recordversion will become orphan(s)
|
||||
* @return null
|
||||
*/
|
||||
function SetRecordversionList(&$list)
|
||||
{
|
||||
$this->_recordversionList = array();
|
||||
$existingRecordversionList = $this->GetRecordversionList();
|
||||
foreach ($existingRecordversionList as $recordversion)
|
||||
{
|
||||
$recordversion->recordId = '';
|
||||
$recordversion->Save(false);
|
||||
}
|
||||
$this->_recordversionList = $list;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the recordversion object to this one
|
||||
* @return
|
||||
*/
|
||||
function AddRecordversion(&$recordversion)
|
||||
{
|
||||
$recordversion->recordId = $this->recordId;
|
||||
$found = false;
|
||||
foreach($this->_recordversionList as $recordversion2)
|
||||
{
|
||||
if ($recordversion->recordversionId > 0 && $recordversion->recordversionId == $recordversion2->recordversionId)
|
||||
{
|
||||
$found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!$found)
|
||||
{
|
||||
$this->_recordversionList[] = $recordversion;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
381
backend/php/src/objects/class.recordversion.php
Normal file
381
backend/php/src/objects/class.recordversion.php
Normal file
@@ -0,0 +1,381 @@
|
||||
<?php
|
||||
/*
|
||||
This SQL query will create the table to store your object.
|
||||
|
||||
CREATE TABLE `recordversion` (
|
||||
`recordversionid` int(11) NOT NULL auto_increment,
|
||||
`recordid` int(11) NOT NULL,
|
||||
`reference` VARCHAR(255) NOT NULL,
|
||||
`header` LONGTEXT NOT NULL,
|
||||
`data` LONGTEXT NOT NULL,
|
||||
`version` VARCHAR(255) NOT NULL,
|
||||
`previous_version_key` VARCHAR(255) NOT NULL,
|
||||
`previous_version_id` INT NOT NULL,
|
||||
`creation_date` TIMESTAMP NOT NULL,
|
||||
`update_date` TIMESTAMP NOT NULL,
|
||||
`access_date` TIMESTAMP NOT NULL, INDEX(`recordid`), PRIMARY KEY (`recordversionid`)) ENGINE=MyISAM;
|
||||
*/
|
||||
|
||||
/**
|
||||
* <b>recordversion</b> class with integrated CRUD methods.
|
||||
* @author Php Object Generator
|
||||
* @version POG 3.0e / PHP5.1 MYSQL
|
||||
* @see http://www.phpobjectgenerator.com/plog/tutorials/45/pdo-mysql
|
||||
* @copyright Free for personal & commercial use. (Offered under the BSD license)
|
||||
* @link http://www.phpobjectgenerator.com/?language=php5.1=pdo&pdoDriver=mysql&objectName=recordversion&attributeList=array+%28%0A++0+%3D%3E+%27record%27%2C%0A++1+%3D%3E+%27reference%27%2C%0A++2+%3D%3E+%27header%27%2C%0A++3+%3D%3E+%27data%27%2C%0A++4+%3D%3E+%27version%27%2C%0A++5+%3D%3E+%27previous_version_key%27%2C%0A++6+%3D%3E+%27previous_version_id%27%2C%0A++7+%3D%3E+%27creation_date%27%2C%0A++8+%3D%3E+%27update_date%27%2C%0A++9+%3D%3E+%27access_date%27%2C%0A%29&typeList=array%2B%2528%250A%2B%2B0%2B%253D%253E%2B%2527BELONGSTO%2527%252C%250A%2B%2B1%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B2%2B%253D%253E%2B%2527LONGTEXT%2527%252C%250A%2B%2B3%2B%253D%253E%2B%2527LONGTEXT%2527%252C%250A%2B%2B4%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B5%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B6%2B%253D%253E%2B%2527INT%2527%252C%250A%2B%2B7%2B%253D%253E%2B%2527TIMESTAMP%2527%252C%250A%2B%2B8%2B%253D%253E%2B%2527TIMESTAMP%2527%252C%250A%2B%2B9%2B%253D%253E%2B%2527TIMESTAMP%2527%252C%250A%2529
|
||||
*/
|
||||
include_once('class.pog_base.php');
|
||||
class recordversion extends POG_Base
|
||||
{
|
||||
public $recordversionId = '';
|
||||
|
||||
/**
|
||||
* @var INT(11)
|
||||
*/
|
||||
public $recordId;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $reference;
|
||||
|
||||
/**
|
||||
* @var LONGTEXT
|
||||
*/
|
||||
public $header;
|
||||
|
||||
/**
|
||||
* @var LONGTEXT
|
||||
*/
|
||||
public $data;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $version;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $previous_version_key;
|
||||
|
||||
/**
|
||||
* @var INT
|
||||
*/
|
||||
public $previous_version_id;
|
||||
|
||||
/**
|
||||
* @var TIMESTAMP
|
||||
*/
|
||||
public $creation_date;
|
||||
|
||||
/**
|
||||
* @var TIMESTAMP
|
||||
*/
|
||||
public $update_date;
|
||||
|
||||
/**
|
||||
* @var TIMESTAMP
|
||||
*/
|
||||
public $access_date;
|
||||
|
||||
public $pog_attribute_type = array(
|
||||
"recordversionId" => array('db_attributes' => array("NUMERIC", "INT")),
|
||||
"record" => array('db_attributes' => array("OBJECT", "BELONGSTO")),
|
||||
"reference" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"header" => array('db_attributes' => array("TEXT", "LONGTEXT")),
|
||||
"data" => array('db_attributes' => array("TEXT", "LONGTEXT")),
|
||||
"version" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"previous_version_key" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"previous_version_id" => array('db_attributes' => array("NUMERIC", "INT")),
|
||||
"creation_date" => array('db_attributes' => array("NUMERIC", "TIMESTAMP")),
|
||||
"update_date" => array('db_attributes' => array("NUMERIC", "TIMESTAMP")),
|
||||
"access_date" => array('db_attributes' => array("NUMERIC", "TIMESTAMP")),
|
||||
);
|
||||
public $pog_query;
|
||||
|
||||
|
||||
/**
|
||||
* Getter for some private attributes
|
||||
* @return mixed $attribute
|
||||
*/
|
||||
public function __get($attribute)
|
||||
{
|
||||
if (isset($this->{"_".$attribute}))
|
||||
{
|
||||
return $this->{"_".$attribute};
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function recordversion($reference='', $header='', $data='', $version='', $previous_version_key='', $previous_version_id='', $creation_date='', $update_date='', $access_date='')
|
||||
{
|
||||
$this->reference = $reference;
|
||||
$this->header = $header;
|
||||
$this->data = $data;
|
||||
$this->version = $version;
|
||||
$this->previous_version_key = $previous_version_key;
|
||||
$this->previous_version_id = $previous_version_id;
|
||||
$this->creation_date = $creation_date;
|
||||
$this->update_date = $update_date;
|
||||
$this->access_date = $access_date;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets object from database
|
||||
* @param integer $recordversionId
|
||||
* @return object $recordversion
|
||||
*/
|
||||
function Get($recordversionId)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select * from `recordversion` where `recordversionid`='".intval($recordversionId)."' LIMIT 1";
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$this->recordversionId = $row['recordversionid'];
|
||||
$this->recordId = $row['recordid'];
|
||||
$this->reference = $this->Unescape($row['reference']);
|
||||
$this->header = $this->Unescape($row['header']);
|
||||
$this->data = $this->Unescape($row['data']);
|
||||
$this->version = $this->Unescape($row['version']);
|
||||
$this->previous_version_key = $this->Unescape($row['previous_version_key']);
|
||||
$this->previous_version_id = $this->Unescape($row['previous_version_id']);
|
||||
$this->creation_date = $row['creation_date'];
|
||||
$this->update_date = $row['update_date'];
|
||||
$this->access_date = $row['access_date'];
|
||||
}
|
||||
return $this;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns a sorted array of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param string $sortBy
|
||||
* @param boolean $ascending
|
||||
* @param int limit
|
||||
* @return array $recordversionList
|
||||
*/
|
||||
function GetList($fcv_array = array(), $sortBy='', $ascending=true, $limit='')
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$sqlLimit = ($limit != '' ? "LIMIT $limit" : '');
|
||||
$this->pog_query = "select * from `recordversion` ";
|
||||
$recordversionList = Array();
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
$this->pog_query .= " where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$this->pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) != 1)
|
||||
{
|
||||
$this->pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? "BASE64_DECODE(".$fcv_array[$i][2].")" : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "BASE64_DECODE(`".$fcv_array[$i][0]."`) ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$this->Escape($fcv_array[$i][2])."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($sortBy != '')
|
||||
{
|
||||
if (isset($this->pog_attribute_type[$sortBy]['db_attributes']) && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$sortBy = "BASE64_DECODE($sortBy) ";
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "recordversionid";
|
||||
}
|
||||
$this->pog_query .= " order by ".$sortBy." ".($ascending ? "asc" : "desc")." $sqlLimit";
|
||||
$thisObjectName = get_class($this);
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$recordversion = new $thisObjectName();
|
||||
$recordversion->recordversionId = $row['recordversionid'];
|
||||
$recordversion->recordId = $row['recordid'];
|
||||
$recordversion->reference = $this->Unescape($row['reference']);
|
||||
$recordversion->header = $this->Unescape($row['header']);
|
||||
$recordversion->data = $this->Unescape($row['data']);
|
||||
$recordversion->version = $this->Unescape($row['version']);
|
||||
$recordversion->previous_version_key = $this->Unescape($row['previous_version_key']);
|
||||
$recordversion->previous_version_id = $this->Unescape($row['previous_version_id']);
|
||||
$recordversion->creation_date = $row['creation_date'];
|
||||
$recordversion->update_date = $row['update_date'];
|
||||
$recordversion->access_date = $row['access_date'];
|
||||
$recordversionList[] = $recordversion;
|
||||
}
|
||||
return $recordversionList;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Saves the object to the database
|
||||
* @return integer $recordversionId
|
||||
*/
|
||||
function Save()
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select `recordversionid` from `recordversion` where `recordversionid`='".$this->recordversionId."' LIMIT 1";
|
||||
$rows = Database::Query($this->pog_query, $connection);
|
||||
if ($rows > 0)
|
||||
{
|
||||
$this->pog_query = "update `recordversion` set
|
||||
`recordid`='".$this->recordId."',
|
||||
`reference`='".$this->Escape($this->reference)."',
|
||||
`header`='".$this->Escape($this->header)."',
|
||||
`data`='".$this->Escape($this->data)."',
|
||||
`version`='".$this->Escape($this->version)."',
|
||||
`previous_version_key`='".$this->Escape($this->previous_version_key)."',
|
||||
`previous_version_id`='".$this->Escape($this->previous_version_id)."',
|
||||
`creation_date`='".$this->creation_date."',
|
||||
`update_date`='".$this->update_date."',
|
||||
`access_date`='".$this->access_date."' where `recordversionid`='".$this->recordversionId."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->pog_query = "insert into `recordversion` (`recordid`, `reference`, `header`, `data`, `version`, `previous_version_key`, `previous_version_id`, `creation_date`, `update_date`, `access_date` ) values (
|
||||
'".$this->recordId."',
|
||||
'".$this->Escape($this->reference)."',
|
||||
'".$this->Escape($this->header)."',
|
||||
'".$this->Escape($this->data)."',
|
||||
'".$this->Escape($this->version)."',
|
||||
'".$this->Escape($this->previous_version_key)."',
|
||||
'".$this->Escape($this->previous_version_id)."',
|
||||
'".$this->creation_date."',
|
||||
'".$this->update_date."',
|
||||
'".$this->access_date."' )";
|
||||
}
|
||||
$insertId = Database::InsertOrUpdate($this->pog_query, $connection);
|
||||
if ($this->recordversionId == "")
|
||||
{
|
||||
$this->recordversionId = $insertId;
|
||||
}
|
||||
return $this->recordversionId;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Clones the object and saves it to the database
|
||||
* @return integer $recordversionId
|
||||
*/
|
||||
function SaveNew()
|
||||
{
|
||||
$this->recordversionId = '';
|
||||
return $this->Save();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes the object from the database
|
||||
* @return boolean
|
||||
*/
|
||||
function Delete()
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "delete from `recordversion` where `recordversionid`='".$this->recordversionId."'";
|
||||
return Database::NonQuery($this->pog_query, $connection);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes a list of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param bool $deep
|
||||
* @return
|
||||
*/
|
||||
function DeleteList($fcv_array)
|
||||
{
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$pog_query = "delete from `recordversion` where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) !== 1)
|
||||
{
|
||||
$pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$this->Escape($fcv_array[$i][2])."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$fcv_array[$i][2]."'";
|
||||
}
|
||||
}
|
||||
}
|
||||
return Database::NonQuery($pog_query, $connection);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the record object to this one
|
||||
* @return boolean
|
||||
*/
|
||||
function GetRecord()
|
||||
{
|
||||
$record = new record();
|
||||
return $record->Get($this->recordId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the record object to this one
|
||||
* @return
|
||||
*/
|
||||
function SetRecord(&$record)
|
||||
{
|
||||
$this->recordId = $record->recordId;
|
||||
}
|
||||
}
|
||||
?>
|
||||
502
backend/php/src/objects/class.user.php
Normal file
502
backend/php/src/objects/class.user.php
Normal file
@@ -0,0 +1,502 @@
|
||||
<?php
|
||||
/*
|
||||
This SQL query will create the table to store your object.
|
||||
|
||||
CREATE TABLE `user` (
|
||||
`userid` int(11) NOT NULL auto_increment,
|
||||
`username` VARCHAR(255) NOT NULL,
|
||||
`srp_s` VARCHAR(255) NOT NULL,
|
||||
`srp_v` VARCHAR(255) NOT NULL,
|
||||
`header` LONGTEXT NOT NULL,
|
||||
`statistics` LONGTEXT NOT NULL,
|
||||
`auth_version` VARCHAR(255) NOT NULL,
|
||||
`version` VARCHAR(255) NOT NULL,
|
||||
`lock` VARCHAR(255) NOT NULL, PRIMARY KEY (`userid`)) ENGINE=MyISAM;
|
||||
*/
|
||||
|
||||
/**
|
||||
* <b>user</b> class with integrated CRUD methods.
|
||||
* @author Php Object Generator
|
||||
* @version POG 3.0e / PHP5.1 MYSQL
|
||||
* @see http://www.phpobjectgenerator.com/plog/tutorials/45/pdo-mysql
|
||||
* @copyright Free for personal & commercial use. (Offered under the BSD license)
|
||||
* @link http://www.phpobjectgenerator.com/?language=php5.1&wrapper=pdo&pdoDriver=mysql&objectName=user&attributeList=array+%28%0A++0+%3D%3E+%27username%27%2C%0A++1+%3D%3E+%27srp_s%27%2C%0A++2+%3D%3E+%27srp_v%27%2C%0A++3+%3D%3E+%27header%27%2C%0A++4+%3D%3E+%27statistics%27%2C%0A++5+%3D%3E+%27auth_version%27%2C%0A++6+%3D%3E+%27version%27%2C%0A++7+%3D%3E+%27lock%27%2C%0A++8+%3D%3E+%27record%27%2C%0A++9+%3D%3E+%27onetimepassword%27%2C%0A%29&typeList=array%2B%2528%250A%2B%2B0%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B1%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B2%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B3%2B%253D%253E%2B%2527LONGTEXT%2527%252C%250A%2B%2B4%2B%253D%253E%2B%2527LONGTEXT%2527%252C%250A%2B%2B5%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B6%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B7%2B%253D%253E%2B%2527VARCHAR%2528255%2529%2527%252C%250A%2B%2B8%2B%253D%253E%2B%2527HASMANY%2527%252C%250A%2B%2B9%2B%253D%253E%2B%2527HASMANY%2527%252C%250A%2529
|
||||
*/
|
||||
include_once('class.pog_base.php');
|
||||
class user extends POG_Base
|
||||
{
|
||||
public $userId = '';
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $username;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $srp_s;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $srp_v;
|
||||
|
||||
/**
|
||||
* @var LONGTEXT
|
||||
*/
|
||||
public $header;
|
||||
|
||||
/**
|
||||
* @var LONGTEXT
|
||||
*/
|
||||
public $statistics;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $auth_version;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $version;
|
||||
|
||||
/**
|
||||
* @var VARCHAR(255)
|
||||
*/
|
||||
public $lock;
|
||||
|
||||
/**
|
||||
* @var private array of record objects
|
||||
*/
|
||||
private $_recordList = array();
|
||||
|
||||
/**
|
||||
* @var private array of onetimepassword objects
|
||||
*/
|
||||
private $_onetimepasswordList = array();
|
||||
|
||||
public $pog_attribute_type = array(
|
||||
"userId" => array('db_attributes' => array("NUMERIC", "INT")),
|
||||
"username" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"srp_s" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"srp_v" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"header" => array('db_attributes' => array("TEXT", "LONGTEXT")),
|
||||
"statistics" => array('db_attributes' => array("TEXT", "LONGTEXT")),
|
||||
"auth_version" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"version" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"lock" => array('db_attributes' => array("TEXT", "VARCHAR", "255")),
|
||||
"record" => array('db_attributes' => array("OBJECT", "HASMANY")),
|
||||
"onetimepassword" => array('db_attributes' => array("OBJECT", "HASMANY")),
|
||||
);
|
||||
public $pog_query;
|
||||
|
||||
|
||||
/**
|
||||
* Getter for some private attributes
|
||||
* @return mixed $attribute
|
||||
*/
|
||||
public function __get($attribute)
|
||||
{
|
||||
if (isset($this->{"_".$attribute}))
|
||||
{
|
||||
return $this->{"_".$attribute};
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function user($username='', $srp_s='', $srp_v='', $header='', $statistics='', $auth_version='', $version='', $lock='')
|
||||
{
|
||||
$this->username = $username;
|
||||
$this->srp_s = $srp_s;
|
||||
$this->srp_v = $srp_v;
|
||||
$this->header = $header;
|
||||
$this->statistics = $statistics;
|
||||
$this->auth_version = $auth_version;
|
||||
$this->version = $version;
|
||||
$this->lock = $lock;
|
||||
$this->_recordList = array();
|
||||
$this->_onetimepasswordList = array();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets object from database
|
||||
* @param integer $userId
|
||||
* @return object $user
|
||||
*/
|
||||
function Get($userId)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select * from `user` where `userid`='".intval($userId)."' LIMIT 1";
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$this->userId = $row['userid'];
|
||||
$this->username = $this->Unescape($row['username']);
|
||||
$this->srp_s = $this->Unescape($row['srp_s']);
|
||||
$this->srp_v = $this->Unescape($row['srp_v']);
|
||||
$this->header = $this->Unescape($row['header']);
|
||||
$this->statistics = $this->Unescape($row['statistics']);
|
||||
$this->auth_version = $this->Unescape($row['auth_version']);
|
||||
$this->version = $this->Unescape($row['version']);
|
||||
$this->lock = $this->Unescape($row['lock']);
|
||||
}
|
||||
return $this;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns a sorted array of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param string $sortBy
|
||||
* @param boolean $ascending
|
||||
* @param int limit
|
||||
* @return array $userList
|
||||
*/
|
||||
function GetList($fcv_array = array(), $sortBy='', $ascending=true, $limit='')
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$sqlLimit = ($limit != '' ? "LIMIT $limit" : '');
|
||||
$this->pog_query = "select * from `user` ";
|
||||
$userList = Array();
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
$this->pog_query .= " where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$this->pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) != 1)
|
||||
{
|
||||
$this->pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? "BASE64_DECODE(".$fcv_array[$i][2].")" : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "BASE64_DECODE(`".$fcv_array[$i][0]."`) ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$this->Escape($fcv_array[$i][2])."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$value = POG_Base::IsColumn($fcv_array[$i][2]) ? $fcv_array[$i][2] : "'".$fcv_array[$i][2]."'";
|
||||
$this->pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." ".$value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($sortBy != '')
|
||||
{
|
||||
if (isset($this->pog_attribute_type[$sortBy]['db_attributes']) && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$sortBy]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
if ($GLOBALS['configuration']['db_encoding'] == 1)
|
||||
{
|
||||
$sortBy = "BASE64_DECODE($sortBy) ";
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "$sortBy ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$sortBy = "userid";
|
||||
}
|
||||
$this->pog_query .= " order by ".$sortBy." ".($ascending ? "asc" : "desc")." $sqlLimit";
|
||||
$thisObjectName = get_class($this);
|
||||
$cursor = Database::Reader($this->pog_query, $connection);
|
||||
while ($row = Database::Read($cursor))
|
||||
{
|
||||
$user = new $thisObjectName();
|
||||
$user->userId = $row['userid'];
|
||||
$user->username = $this->Unescape($row['username']);
|
||||
$user->srp_s = $this->Unescape($row['srp_s']);
|
||||
$user->srp_v = $this->Unescape($row['srp_v']);
|
||||
$user->header = $this->Unescape($row['header']);
|
||||
$user->statistics = $this->Unescape($row['statistics']);
|
||||
$user->auth_version = $this->Unescape($row['auth_version']);
|
||||
$user->version = $this->Unescape($row['version']);
|
||||
$user->lock = $this->Unescape($row['lock']);
|
||||
$userList[] = $user;
|
||||
}
|
||||
return $userList;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Saves the object to the database
|
||||
* @return integer $userId
|
||||
*/
|
||||
function Save($deep = true)
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "select `userid` from `user` where `userid`='".$this->userId."' LIMIT 1";
|
||||
$rows = Database::Query($this->pog_query, $connection);
|
||||
if ($rows > 0)
|
||||
{
|
||||
$this->pog_query = "update `user` set
|
||||
`username`='".$this->Escape($this->username)."',
|
||||
`srp_s`='".$this->Escape($this->srp_s)."',
|
||||
`srp_v`='".$this->Escape($this->srp_v)."',
|
||||
`header`='".$this->Escape($this->header)."',
|
||||
`statistics`='".$this->Escape($this->statistics)."',
|
||||
`auth_version`='".$this->Escape($this->auth_version)."',
|
||||
`version`='".$this->Escape($this->version)."',
|
||||
`lock`='".$this->Escape($this->lock)."'where `userid`='".$this->userId."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->pog_query = "insert into `user` (`username`, `srp_s`, `srp_v`, `header`, `statistics`, `auth_version`, `version`, `lock`) values (
|
||||
'".$this->Escape($this->username)."',
|
||||
'".$this->Escape($this->srp_s)."',
|
||||
'".$this->Escape($this->srp_v)."',
|
||||
'".$this->Escape($this->header)."',
|
||||
'".$this->Escape($this->statistics)."',
|
||||
'".$this->Escape($this->auth_version)."',
|
||||
'".$this->Escape($this->version)."',
|
||||
'".$this->Escape($this->lock)."')";
|
||||
}
|
||||
$insertId = Database::InsertOrUpdate($this->pog_query, $connection);
|
||||
if ($this->userId == "")
|
||||
{
|
||||
$this->userId = $insertId;
|
||||
}
|
||||
if ($deep)
|
||||
{
|
||||
foreach ($this->_recordList as $record)
|
||||
{
|
||||
$record->userId = $this->userId;
|
||||
$record->Save($deep);
|
||||
}
|
||||
foreach ($this->_onetimepasswordList as $onetimepassword)
|
||||
{
|
||||
$onetimepassword->userId = $this->userId;
|
||||
$onetimepassword->Save($deep);
|
||||
}
|
||||
}
|
||||
return $this->userId;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Clones the object and saves it to the database
|
||||
* @return integer $userId
|
||||
*/
|
||||
function SaveNew($deep = false)
|
||||
{
|
||||
$this->userId = '';
|
||||
return $this->Save($deep);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes the object from the database
|
||||
* @return boolean
|
||||
*/
|
||||
function Delete($deep = false, $across = false)
|
||||
{
|
||||
if ($deep)
|
||||
{
|
||||
$recordList = $this->GetRecordList();
|
||||
foreach ($recordList as $record)
|
||||
{
|
||||
$record->Delete($deep, $across);
|
||||
}
|
||||
$onetimepasswordList = $this->GetOnetimepasswordList();
|
||||
foreach ($onetimepasswordList as $onetimepassword)
|
||||
{
|
||||
$onetimepassword->Delete($deep, $across);
|
||||
}
|
||||
}
|
||||
$connection = Database::Connect();
|
||||
$this->pog_query = "delete from `user` where `userid`='".$this->userId."'";
|
||||
return Database::NonQuery($this->pog_query, $connection);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes a list of objects that match given conditions
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param bool $deep
|
||||
* @return
|
||||
*/
|
||||
function DeleteList($fcv_array, $deep = false, $across = false)
|
||||
{
|
||||
if (sizeof($fcv_array) > 0)
|
||||
{
|
||||
if ($deep || $across)
|
||||
{
|
||||
$objectList = $this->GetList($fcv_array);
|
||||
foreach ($objectList as $object)
|
||||
{
|
||||
$object->Delete($deep, $across);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$connection = Database::Connect();
|
||||
$pog_query = "delete from `user` where ";
|
||||
for ($i=0, $c=sizeof($fcv_array); $i<$c; $i++)
|
||||
{
|
||||
if (sizeof($fcv_array[$i]) == 1)
|
||||
{
|
||||
$pog_query .= " ".$fcv_array[$i][0]." ";
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($i > 0 && sizeof($fcv_array[$i-1]) !== 1)
|
||||
{
|
||||
$pog_query .= " AND ";
|
||||
}
|
||||
if (isset($this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes']) && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'NUMERIC' && $this->pog_attribute_type[$fcv_array[$i][0]]['db_attributes'][0] != 'SET')
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$this->Escape($fcv_array[$i][2])."'";
|
||||
}
|
||||
else
|
||||
{
|
||||
$pog_query .= "`".$fcv_array[$i][0]."` ".$fcv_array[$i][1]." '".$fcv_array[$i][2]."'";
|
||||
}
|
||||
}
|
||||
}
|
||||
return Database::NonQuery($pog_query, $connection);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets a list of record objects associated to this one
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param string $sortBy
|
||||
* @param boolean $ascending
|
||||
* @param int limit
|
||||
* @return array of record objects
|
||||
*/
|
||||
function GetRecordList($fcv_array = array(), $sortBy='', $ascending=true, $limit='')
|
||||
{
|
||||
$record = new record();
|
||||
$fcv_array[] = array("userId", "=", $this->userId);
|
||||
$dbObjects = $record->GetList($fcv_array, $sortBy, $ascending, $limit);
|
||||
return $dbObjects;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Makes this the parent of all record objects in the record List array. Any existing record will become orphan(s)
|
||||
* @return null
|
||||
*/
|
||||
function SetRecordList(&$list)
|
||||
{
|
||||
$this->_recordList = array();
|
||||
$existingRecordList = $this->GetRecordList();
|
||||
foreach ($existingRecordList as $record)
|
||||
{
|
||||
$record->userId = '';
|
||||
$record->Save(false);
|
||||
}
|
||||
$this->_recordList = $list;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the record object to this one
|
||||
* @return
|
||||
*/
|
||||
function AddRecord(&$record)
|
||||
{
|
||||
$record->userId = $this->userId;
|
||||
$found = false;
|
||||
foreach($this->_recordList as $record2)
|
||||
{
|
||||
if ($record->recordId > 0 && $record->recordId == $record2->recordId)
|
||||
{
|
||||
$found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!$found)
|
||||
{
|
||||
$this->_recordList[] = $record;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets a list of onetimepassword objects associated to this one
|
||||
* @param multidimensional array {("field", "comparator", "value"), ("field", "comparator", "value"), ...}
|
||||
* @param string $sortBy
|
||||
* @param boolean $ascending
|
||||
* @param int limit
|
||||
* @return array of onetimepassword objects
|
||||
*/
|
||||
function GetOnetimepasswordList($fcv_array = array(), $sortBy='', $ascending=true, $limit='')
|
||||
{
|
||||
$onetimepassword = new onetimepassword();
|
||||
$fcv_array[] = array("userId", "=", $this->userId);
|
||||
$dbObjects = $onetimepassword->GetList($fcv_array, $sortBy, $ascending, $limit);
|
||||
return $dbObjects;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Makes this the parent of all onetimepassword objects in the onetimepassword List array. Any existing onetimepassword will become orphan(s)
|
||||
* @return null
|
||||
*/
|
||||
function SetOnetimepasswordList(&$list)
|
||||
{
|
||||
$this->_onetimepasswordList = array();
|
||||
$existingOnetimepasswordList = $this->GetOnetimepasswordList();
|
||||
foreach ($existingOnetimepasswordList as $onetimepassword)
|
||||
{
|
||||
$onetimepassword->userId = '';
|
||||
$onetimepassword->Save(false);
|
||||
}
|
||||
$this->_onetimepasswordList = $list;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Associates the onetimepassword object to this one
|
||||
* @return
|
||||
*/
|
||||
function AddOnetimepassword(&$onetimepassword)
|
||||
{
|
||||
$onetimepassword->userId = $this->userId;
|
||||
$found = false;
|
||||
foreach($this->_onetimepasswordList as $onetimepassword2)
|
||||
{
|
||||
if ($onetimepassword->onetimepasswordId > 0 && $onetimepassword->onetimepasswordId == $onetimepassword2->onetimepasswordId)
|
||||
{
|
||||
$found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!$found)
|
||||
{
|
||||
$this->_onetimepasswordList[] = $onetimepassword;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
0
backend/php/src/objects/ignore_objects.txt
Normal file
0
backend/php/src/objects/ignore_objects.txt
Normal file
Reference in New Issue
Block a user