Server IP : 195.201.23.43 / Your IP : 3.144.86.78 Web Server : Apache System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 User : kdecoratie ( 1041) PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/self/cwd/administrator/components/com_actionlogs/libraries/ |
Upload File : |
<?php /** * @package Joomla.Administrator * @subpackage com_actionlogs * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\MVC\Model\BaseDatabaseModel; BaseDatabaseModel::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_actionlogs/models', 'ActionlogsModel'); /** * Abstract Action Log Plugin * * @since 3.9.0 */ abstract class ActionLogPlugin extends JPlugin { /** * Application object. * * @var JApplicationCms * @since 3.9.0 */ protected $app; /** * Database object. * * @var JDatabaseDriver * @since 3.9.0 */ protected $db; /** * Load plugin language file automatically so that it can be used inside component * * @var boolean * @since 3.9.0 */ protected $autoloadLanguage = true; /** * Proxy for ActionlogsModelUserlog addLog method * * This method adds a record to #__action_logs contains (message_language_key, message, date, context, user) * * @param array $messages The contents of the messages to be logged * @param string $messageLanguageKey The language key of the message * @param string $context The context of the content passed to the plugin * @param int $userId ID of user perform the action, usually ID of current logged in user * * @return void * * @since 3.9.0 */ protected function addLog($messages, $messageLanguageKey, $context, $userId = null) { $user = Factory::getUser(); foreach ($messages as $index => $message) { if (!array_key_exists('userid', $message)) { $message['userid'] = $user->id; } if (!array_key_exists('username', $message)) { $message['username'] = $user->username; } if (!array_key_exists('accountlink', $message)) { $message['accountlink'] = 'index.php?option=com_users&task=user.edit&id=' . $user->id; } if (array_key_exists('type', $message)) { $message['type'] = strtoupper($message['type']); } if (array_key_exists('app', $message)) { $message['app'] = strtoupper($message['app']); } $messages[$index] = $message; } /** @var ActionlogsModelActionlog $model **/ $model = BaseDatabaseModel::getInstance('Actionlog', 'ActionlogsModel'); $model->addLog($messages, strtoupper($messageLanguageKey), $context, $userId); } }Private