From c37bf021494b1f028f6690dbb01933e754ee55d7 Mon Sep 17 00:00:00 2001 From: Tuan Pham Ngoc Date: Wed, 9 May 2018 21:24:40 +0700 Subject: [PATCH 1/2] Clean up system userlogs plugin --- plugins/system/userlogs/userlogs.php | 47 ++++++++++------------------ 1 file changed, 17 insertions(+), 30 deletions(-) diff --git a/plugins/system/userlogs/userlogs.php b/plugins/system/userlogs/userlogs.php index 43d7d289949c5..1f4a4cc088902 100644 --- a/plugins/system/userlogs/userlogs.php +++ b/plugins/system/userlogs/userlogs.php @@ -120,9 +120,9 @@ protected function addLogsToDb($message, $context) } catch (RuntimeException $e) { - JError::raiseWarning(500, $this->db->getMessage()); + JError::raiseWarning(500, $e->getMessage()); - return false; + return; } $this->app->triggerEvent('onUserLogsAfterMessageLog', array ($json_message, $date, $context, $user->name, $ip)); @@ -151,8 +151,7 @@ protected function checkLoggable($extension) * @param object $article A JTableContent object * @param boolean $isNew If the content is just about to be created * - * @return boolean true if function not enabled, is in front-end or is new. Else true or - * false depending on success of save function. + * @return void * * @since __DEPLOY_VERSION__ */ @@ -470,7 +469,7 @@ public function onUserAfterSave($user, $isnew, $success, $msg) * @param boolean $success True if user was succesfully stored in the database * @param string $msg Message * - * @return boolean + * @return void * * @since __DEPLOY_VERSION__ */ @@ -483,8 +482,6 @@ public function onUserAfterDelete($user, $success, $msg) return; } - $success_string = $success ? 'true' : 'false'; - $message = array( 'deleted_user' => $user['name'], 'event' => 'onUserAfterDelete', @@ -503,7 +500,7 @@ public function onUserAfterDelete($user, $success, $msg) * @param JTable $table DataBase Table object * @param boolean $isNew Is new or not * - * @return boolean + * @return void * * @since __DEPLOY_VERSION__ */ @@ -536,7 +533,7 @@ public function onUserAfterSaveGroup($context, $table, $isNew) * @param boolean $success True if user was succesfully stored in the database * @param string $msg Message * - * @return boolean + * @return void * * @since __DEPLOY_VERSION__ */ @@ -549,11 +546,8 @@ public function onUserAfterDeleteGroup($group, $success, $msg) return; } - $success_string = $success ? 'true' : 'false'; - $message = array( 'deleted_group' => $group['title'], - 'isNew' => $isNew_string, 'event' => 'onUserAfterDeleteGroup', 'group_id' => $group['id'], ); @@ -567,7 +561,7 @@ public function onUserAfterDeleteGroup($group, $success, $msg) * @param string $message Message * @param string $extension Extension that caused this log * - * @return boolean + * @return void * * @since __DEPLOY_VERSION__ */ @@ -628,7 +622,7 @@ public function onLogMessagePrepare(&$message, $extension) } elseif ($message_to_array['value'] == 2) { - $message = JText::sprintf('PLG_SYSTEM_USERLOGS_ON_CONTENT_CHANGE_STATE_ARCHIVED_MESSAGE',$message_to_array['title'] + $message = JText::sprintf('PLG_SYSTEM_USERLOGS_ON_CONTENT_CHANGE_STATE_ARCHIVED_MESSAGE', $message_to_array['title'] ); } elseif ($message_to_array['value'] == -2) @@ -763,19 +757,19 @@ public function onContentPrepareForm($form, $data) /** * Method called after event log is stored to database * - * @param array $message The message - * @param array $date The Date - * @param array $context The Context - * @param array $userName The username - * @param array $ip The user ip + * @param array $message The message + * @param array $date The Date + * @param string $context The Context + * @param array $userName The username + * @param string $ip The user ip * - * @return boolean + * @return void * * @since __DEPLOY_VERSION__ */ public function onUserLogsAfterMessageLog($message, $date, $context, $userName, $ip) { - $query = $this->db->getQuery(true); + $query = $this->db->getQuery(true); $query->select('a.email, a.params') ->from($this->db->quoteName('#__users', 'a')) @@ -789,7 +783,7 @@ public function onUserLogsAfterMessageLog($message, $date, $context, $userName, } catch (RuntimeException $e) { - JError::raiseWarning(500, $this->db->getMessage()); + JError::raiseWarning(500, $e->getMessage()); return; } @@ -818,20 +812,13 @@ public function onUserLogsAfterMessageLog($message, $date, $context, $userName, $displayData = array( 'message' => $message, 'log_date' => $date, - 'extension' => UserlogsHelper::translateExtensionName(strtoupper(strtok($extension), '.')), + 'extension' => UserlogsHelper::translateExtensionName(strtoupper(strtok($context, '.'))), 'username' => $userName, 'ip' => JText::_($ip) ); $body = $layout->render($displayData); $mailer = JFactory::getMailer(); - - $sender = array( - JFactory::getConfig()->get('mailfrom'), - JFactory::getConfig()->get('fromname'), - ); - - $mailer->setSender($sender); $mailer->addRecipient($recipients); $mailer->setSubject(JText::_('PLG_SYSTEM_USERLOGS_EMAIL_SUBJECT')); $mailer->isHTML(true); From 20082cc6888e8a5ec12ec5e070957daa0eb6b8e4 Mon Sep 17 00:00:00 2001 From: Tuan Pham Ngoc Date: Wed, 9 May 2018 21:34:33 +0700 Subject: [PATCH 2/2] Simplify onContentPrepareForm method --- plugins/system/userlogs/userlogs.php | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/plugins/system/userlogs/userlogs.php b/plugins/system/userlogs/userlogs.php index 1f4a4cc088902..c59a0c96ffc6b 100644 --- a/plugins/system/userlogs/userlogs.php +++ b/plugins/system/userlogs/userlogs.php @@ -724,34 +724,23 @@ public function onContentPrepareForm($form, $data) return false; } - $lang = JFactory::getLanguage(); - $lang->load('plg_system_userlogs', JPATH_ADMINISTRATOR); $formName = $form->getName(); $allowedFormNames = array( 'com_users.profile', - 'com_users.registration', - 'com_users.user', 'com_admin.profile', ); - if (!in_array($formName, $allowedFormNames)) + if (!in_array($formName, $allowedFormNames) || !JFactory::getUser()->authorise('core.viewlogs')) { return true; } - if ($formName == 'com_admin.profile' - || $formName == 'com_users.profile') - { - JForm::addFormPath(dirname(__FILE__) . '/forms'); - $form->loadFile('userlogs', false); + $lang = JFactory::getLanguage(); + $lang->load('plg_system_userlogs', JPATH_ADMINISTRATOR); - if (!JFactory::getUser()->authorise('core.viewlogs')) - { - $form->removeField('logs_notification_option'); - $form->removeField('logs_notification_extensions'); - } - } + JForm::addFormPath(dirname(__FILE__) . '/forms'); + $form->loadFile('userlogs', false); } /**