Index: trunk/kernel/units/users/users_item.php =================================================================== diff -u -r3576 -r3834 --- trunk/kernel/units/users/users_item.php (.../users_item.php) (revision 3576) +++ trunk/kernel/units/users/users_item.php (.../users_item.php) (revision 3834) @@ -2,7 +2,8 @@ class UsersItem extends kDBItem { var $CustomFields = Array(); - + var $persistantVars = Array(); + function Init($prefix, $special, $event_params = null) { parent::Init($prefix, $special, $event_params); @@ -56,6 +57,30 @@ return true; } + function LoadPersistantVars() + { + $sql = 'SELECT VariableValue, VariableName + FROM '.TABLE_PREFIX.'PersistantSessionData + WHERE PortalUserId = '.$this->GetID(); + $this->persistantVars = $this->Conn->GetCol($sql, 'VariableName'); + } + + function setPersistantVar($var_name, $var_value) + { + $this->persistantVars[$var_name] = $var_value; + + $replace_hash = Array( 'PortalUserId' => $this->GetID(), + 'VariableName' => $var_name, + 'VariableValue' => $var_value + ); + $this->Conn->doInsert($replace_hash, TABLE_PREFIX.'PersistantSessionData', 'REPLACE'); + } + + function getPersistantVar($var_name) + { + return getArrayValue($this->persistantVars, $var_name); + } + function UpdateCustomFields() { $data_table = TABLE_PREFIX.'CustomMetaData'; @@ -91,6 +116,7 @@ if($ret) { $this->LoadCustomFields(); + $this->LoadPersistantVars(); } return $ret; }