252 lines
6.2 KiB
PHP
252 lines
6.2 KiB
PHP
<?php
|
|
/**
|
|
* @package FrameworkOnFramework
|
|
* @subpackage table
|
|
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba Ltd. All rights reserved.
|
|
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
|
*/
|
|
// Protect from unauthorized access
|
|
defined('F0F_INCLUDED') or die;
|
|
|
|
/**
|
|
* FrameworkOnFramework table behavior class. It defines the events which are
|
|
* called by a Table.
|
|
*
|
|
* @codeCoverageIgnore
|
|
* @package FrameworkOnFramework
|
|
* @since 2.1
|
|
*/
|
|
abstract class F0FTableBehavior extends F0FUtilsObservableEvent
|
|
{
|
|
/**
|
|
* This event runs before binding data to the table
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param array &$data The data to bind
|
|
*
|
|
* @return boolean True on success
|
|
*/
|
|
public function onBeforeBind(&$table, &$data)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs after binding data to the table
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param object|array &$src The data to bind
|
|
*
|
|
* @return boolean True on success
|
|
*/
|
|
public function onAfterBind(&$table, &$src)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs after loading a record from the database
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param boolean &$result Did the load succeeded?
|
|
*
|
|
* @return void
|
|
*/
|
|
public function onAfterLoad(&$table, &$result)
|
|
{
|
|
|
|
}
|
|
|
|
/**
|
|
* The event which runs before storing (saving) data to the database
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param boolean $updateNulls Should nulls be saved as nulls (true) or just skipped over (false)?
|
|
*
|
|
* @return boolean True to allow saving
|
|
*/
|
|
public function onBeforeStore(&$table, $updateNulls)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs after storing (saving) data to the database
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
*
|
|
* @return boolean True to allow saving without an error
|
|
*/
|
|
public function onAfterStore(&$table)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs before moving a record
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param boolean $updateNulls Should nulls be saved as nulls (true) or just skipped over (false)?
|
|
*
|
|
* @return boolean True to allow moving
|
|
*/
|
|
public function onBeforeMove(&$table, $updateNulls)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs after moving a record
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
*
|
|
* @return boolean True to allow moving without an error
|
|
*/
|
|
public function onAfterMove(&$table)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs before reordering a table
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param string $where The WHERE clause of the SQL query to run on reordering (record filter)
|
|
*
|
|
* @return boolean True to allow reordering
|
|
*/
|
|
public function onBeforeReorder(&$table, $where = '')
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs after reordering a table
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
*
|
|
* @return boolean True to allow the reordering to complete without an error
|
|
*/
|
|
public function onAfterReorder(&$table)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs before deleting a record
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param integer $oid The PK value of the record to delete
|
|
*
|
|
* @return boolean True to allow the deletion
|
|
*/
|
|
public function onBeforeDelete(&$table, $oid)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs after deleting a record
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param integer $oid The PK value of the record which was deleted
|
|
*
|
|
* @return boolean True to allow the deletion without errors
|
|
*/
|
|
public function onAfterDelete(&$table, $oid)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs before hitting a record
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param integer $oid The PK value of the record to hit
|
|
* @param boolean $log Should we log the hit?
|
|
*
|
|
* @return boolean True to allow the hit
|
|
*/
|
|
public function onBeforeHit(&$table, $oid, $log)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs after hitting a record
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param integer $oid The PK value of the record which was hit
|
|
*
|
|
* @return boolean True to allow the hitting without errors
|
|
*/
|
|
public function onAfterHit(&$table, $oid)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The even which runs before copying a record
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param integer $oid The PK value of the record being copied
|
|
*
|
|
* @return boolean True to allow the copy to take place
|
|
*/
|
|
public function onBeforeCopy(&$table, $oid)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The even which runs after copying a record
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param integer $oid The PK value of the record which was copied (not the new one)
|
|
*
|
|
* @return boolean True to allow the copy without errors
|
|
*/
|
|
public function onAfterCopy(&$table, $oid)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs before a record is (un)published
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
* @param integer|array &$cid The PK IDs of the records being (un)published
|
|
* @param integer $publish 1 to publish, 0 to unpublish
|
|
*
|
|
* @return boolean True to allow the (un)publish to proceed
|
|
*/
|
|
public function onBeforePublish(&$table, &$cid, $publish)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The event which runs after the object is reset to its default values.
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
*
|
|
* @return boolean True to allow the reset to complete without errors
|
|
*/
|
|
public function onAfterReset(&$table)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* The even which runs before the object is reset to its default values.
|
|
*
|
|
* @param F0FTable &$table The table which calls this event
|
|
*
|
|
* @return boolean True to allow the reset to complete
|
|
*/
|
|
public function onBeforeReset(&$table)
|
|
{
|
|
return true;
|
|
}
|
|
}
|