ultimix
pmsg_access_1_0_0 Class Reference

Public Member Functions

 __construct ()
 set_add_limitations ($theAddLimitation)
 unsafe_select ($Condition)
 select ($Start=false, $Limit=false, $Field=false, $Order=false, $Condition= '1=1')
 delete ($id, $Condition= '1=1')
 get_feedback_admin ()
 create ($Record)
 update ($id, $Record)

Data Fields

 $NativeTable = '`umx_message`'
 $Database = false
 $DatabaseAlgorithms = false
 $Security = false
 $SecurityParser = false
 $AddLimitations = '1 = 1'

Detailed Description

Class provides private messages manipulation routine.

Author
Dodonov A.A.

Definition at line 26 of file pmsg_access.php.

Constructor & Destructor Documentation

__construct ( )

Constructor.

Author
Dodonov A.A.

Definition at line 65 of file pmsg_access.php.

{
try
{
$this->Database = get_package( 'database' , 'last' , __FILE__ );
$this->DatabaseAlgorithms = get_package( 'database::database_algorithms' , 'last' , __FILE__ );
$this->Security = get_package( 'security' , 'last' , __FILE__ );
$this->SecurityParser = get_package( 'security::security_parser' , 'last' , __FILE__ );
}
catch( Exception $e )
{
$a = func_get_args();_throw_exception_object( __METHOD__ , $a , $e );
}
}

Member Function Documentation

create (   $Record)

Creating record.

Parameters
$RecordExample for creation.
Returns
id of the created record.
Exceptions
ExceptionAn exceptionof this type is thrown.
Author
Dodonov A.A.

Definition at line 313 of file pmsg_access.php.

{
try
{
$Record = $this->SecurityParser->parse_parameters(
$Record , 'author:string;recipient:string;subject:string;message:string'
);
list( $Fields , $Values ) = $this->DatabaseAlgorithms->compile_fields_values( $Record );
$Fields [] = 'creation_date';
$Values [] = 'NOW()';
$id = $this->DatabaseAlgorithms->create( $this->NativeTable , $Fields , $Values );
$EventManager = get_package( 'event_manager' , 'last' , __FILE__ );
$EventManager->trigger_event( 'on_after_create_message' , array( 'id' => $id ) );
return( $id );
}
catch( Exception $e )
{
$a = func_get_args();_throw_exception_object( __METHOD__ , $a , $e );
}
}
delete (   $id,
  $Condition = ' 1 = 1' 
)

Deleting messages.

Parameters
$id- Message's identificator.
$Condition- Additional conditions.
Exceptions
ExceptionAn exceptionof this type is thrown.
Author
Dodonov A.A.

Definition at line 244 of file pmsg_access.php.

{
try
{
$id = $this->Security->get( $id , 'integer_list' );
$this->Database->delete( $this->NativeTable , "( $Condition ) AND id IN ( $id )" );
$this->Database->commit();
}
catch( Exception $e )
{
$a = func_get_args();_throw_exception_object( __METHOD__ , $a , $e );
}
}
get_feedback_admin ( )

Function return administrator's ligin.

Returns
Administrator's ligin who processes feedback messages.
Exceptions
ExceptionAn exceptionof this type is thrown.
Author
Dodonov A.A.

Definition at line 276 of file pmsg_access.php.

{
try
{
$Settings = get_package_object( 'settings::settings' , 'last' , __FILE__ );
$Settings->load_file( dirname( __FILE__ ).'/conf/cf_pmsg_settings' );
return( $Settings->get_setting( 'admin_login' , 'admin' ) );
}
catch( Exception $e )
{
$a = func_get_args();_throw_exception_object( __METHOD__ , $a , $e );
}
}
select (   $Start = false,
  $Limit = false,
  $Field = false,
  $Order = false,
  $Condition = '1 = 1' 
)

Function returns list of records.

Parameters
$Start- Number of the first record.
$Limit- Count of records limitation.
$Field- Field to sort by.
$Order- Sorting order.
$Condition- Additional conditions.
Returns
List of records.
Exceptions
ExceptionAn exceptionof this type is thrown.
Author
Dodonov A.A.

Definition at line 205 of file pmsg_access.php.

{
try
{
$Condition = $this->DatabaseAlgorithms->select_condition(
$Start , $Limit , $Field , $Order , $Condition , $this->NativeTable
);
return( $this->unsafe_select( $Condition ) );
}
catch( Exception $e )
{
$a = func_get_args();_throw_exception_object( __METHOD__ , $a , $e );
}
}
set_add_limitations (   $theAddLimitation)

Function sets additional limitations.

Parameters
$theAddLimitation- Additional limitations.
Exceptions
ExceptionAn exceptionof this type is thrown.
Author
Dodonov A.A.

Definition at line 110 of file pmsg_access.php.

{
try
{
if( $this->AddLimitations === '1 = 1' )
{
$this->AddLimitations = $theAddLimitation;
}
else
{
throw( new Exception( '"AddLimitations" was already set' ) );
}
}
catch( Exception $e )
{
$a = func_get_args();_throw_exception_object( __METHOD__ , $a , $e );
}
}
unsafe_select (   $Condition)

Selecting messages.

Parameters
$Condition- records selection condition.
Returns
Array of objects.
Exceptions
ExceptionAn exceptionof this type is thrown.
Author
Dodonov A.A.

Definition at line 151 of file pmsg_access.php.

{
try
{
$this->Database->query_as( DB_OBJECT );
return(
$this->Database->select( '*' , $this->NativeTable , "( $this->AddLimitations ) AND $Condition" )
);
}
catch( Exception $e )
{
$a = func_get_args();_throw_exception_object( __METHOD__ , $a , $e );
}
}
update (   $id,
  $Record 
)

Updating record.

Parameters
$id- Comma separated list of record's id.
$Record- Example for update.
Exceptions
ExceptionAn exceptionof this type is thrown.
Author
Dodonov A.A.

Definition at line 361 of file pmsg_access.php.

{
try
{
$id = $this->Security->get( $id , 'integer_list' );
$Record = $this->SecurityParser->parse_parameters(
$Record , 'deleted:integer;recipient:string;author:string;subject:string;'.
'message:string;`read`:integer' , 'allow_not_set'
);
list( $Fields , $Values ) = $this->DatabaseAlgorithms->compile_fields_values( $Record );
if( isset( $Fields[ 0 ] ) )
{
$this->Database->update(
$this->NativeTable , $Fields , $Values , "( $this->AddLimitations ) AND id IN ( $id )"
);
$this->Database->commit();
}
}
catch( Exception $e )
{
$a = func_get_args();_throw_exception_object( __METHOD__ , $a , $e );
}
}

Field Documentation

$AddLimitations = '1 = 1'

Definition at line 90 of file pmsg_access.php.

$Database = false

Cached objects.

Author
Dodonov A.A.

Definition at line 50 of file pmsg_access.php.

$DatabaseAlgorithms = false

Definition at line 51 of file pmsg_access.php.

$NativeTable = '`umx_message`'

Table name in wich objects of this entity are stored.

Author
Dodonov A.A.

Definition at line 38 of file pmsg_access.php.

$Security = false

Definition at line 52 of file pmsg_access.php.

$SecurityParser = false

Definition at line 53 of file pmsg_access.php.


The documentation for this class was generated from the following file: