diff options
Diffstat (limited to 'phpBB/includes/log/interface.php')
| -rw-r--r-- | phpBB/includes/log/interface.php | 106 | 
1 files changed, 106 insertions, 0 deletions
diff --git a/phpBB/includes/log/interface.php b/phpBB/includes/log/interface.php new file mode 100644 index 0000000000..3b459c9bdf --- /dev/null +++ b/phpBB/includes/log/interface.php @@ -0,0 +1,106 @@ +<?php +/** +* +* @package phpbb_log +* @copyright (c) 2012 phpBB Group +* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2 +* +*/ + +/** +* @ignore +*/ +if (!defined('IN_PHPBB')) +{ +	exit; +} + +/** +* The interface for the log-system. +* +* @package phpbb_log +*/ +interface phpbb_log_interface +{ +	/** +	* This function returns the state of the log system. +	* +	* @param	string	$type	The log type we want to check. Empty to get +	*							global log status. +	* +	* @return	bool	True if log for the type is enabled +	*/ +	public function is_enabled($type = ''); + +	/** +	* Disable log +	* +	* This function allows disabling the log system or parts of it, for this +	* page call. When add_log is called and the type is disabled, +	* the log will not be added to the database. +	* +	* @param	mixed	$type	The log type we want to disable. Empty to +	*						disable all logs. Can also be an array of types. +	* +	* @return	null +	*/ +	public function disable($type = ''); + +	/** +	* Enable log +	* +	* This function allows re-enabling the log system. +	* +	* @param	mixed	$type	The log type we want to enable. Empty to +	*						enable all logs. Can also be an array of types. +	* +	* @return	null +	*/ +	public function enable($type = ''); + +	/** +	* Adds a log entry to the database +	* +	* @param	string	$mode				The mode defines which log_type is used and from which log the entry is retrieved +	* @param	int		$user_id			User ID of the user +	* @param	string	$log_ip				IP address of the user +	* @param	string	$log_operation		Name of the operation +	* @param	int		$log_time			Timestamp when the log entry was added, if empty time() will be used +	* @param	array	$additional_data	More arguments can be added, depending on the log_type +	* +	* @return	int|bool		Returns the log_id, if the entry was added to the database, false otherwise. +	*/ +	public function add($mode, $user_id, $log_ip, $log_operation, $log_time = false, $additional_data = array()); + +	/** +	* Grab the logs from the database +	* +	* @param	string	$mode			The mode defines which log_type is used and ifrom which log the entry is retrieved +	* @param	bool	$count_logs		Shall we count all matching log entries? +	* @param	int		$limit			Limit the number of entries that are returned +	* @param	int		$offset			Offset when fetching the log entries, f.e. when paginating +	* @param	mixed	$forum_id		Restrict the log entries to the given forum_id (can also be an array of forum_ids) +	* @param	int		$topic_id		Restrict the log entries to the given topic_id +	* @param	int		$user_id		Restrict the log entries to the given user_id +	* @param	int		$log_time		Only get log entries newer than the given timestamp +	* @param	string	$sort_by		SQL order option, e.g. 'l.log_time DESC' +	* @param	string	$keywords		Will only return log entries that have the keywords in log_operation or log_data +	* +	* @return	array			The result array with the logs +	*/ +	public function get_logs($mode, $count_logs = true, $limit = 0, $offset = 0, $forum_id = 0, $topic_id = 0, $user_id = 0, $log_time = 0, $sort_by = 'l.log_time DESC', $keywords = ''); + +	/** +	* Get total log count +	* +	* @return	int			Returns the number of matching logs from the last call to get_logs() +	*/ +	public function get_log_count(); + +	/** +	* Get offset of the last valid page +	* +	* @return	int			Returns the offset of the last valid page from the last call to get_logs() +	*/ +	public function get_valid_offset(); +}  | 
