From 8b50811b0bccb8494034481073d09a7cedac6d25 Mon Sep 17 00:00:00 2001 From: Jean-Christian Denis Date: Fri, 3 Sep 2021 09:45:21 +0200 Subject: [PATCH] Third pass to clean up code --- inc/class.activity.report.behaviors.php | 342 ++++++------- inc/class.activity.report.php | 638 +++++++++++------------- inc/lib.parselogs.config.php | 108 ++-- index.php | 11 +- 4 files changed, 515 insertions(+), 584 deletions(-) diff --git a/inc/class.activity.report.behaviors.php b/inc/class.activity.report.behaviors.php index e171c1f..92b13e8 100644 --- a/inc/class.activity.report.behaviors.php +++ b/inc/class.activity.report.behaviors.php @@ -11,13 +11,16 @@ * @copyright GPL-2.0 https://www.gnu.org/licenses/gpl-2.0.html */ -if (!defined('DC_RC_PATH')){return;} +if (!defined('DC_RC_PATH')) { + return null; +} -if (!defined('ACTIVITY_REPORT')){return;} +if (!defined('ACTIVITY_REPORT')) { + return null; +} -/* ActivityReport plugin --------------------------*/ -$core->activityReport->addGroup('activityReport',__('ActivityReport messages')); +// ActivityReport plugin +$core->activityReport->addGroup('activityReport', __('ActivityReport messages')); $core->activityReport->addAction( 'activityReport', @@ -25,194 +28,189 @@ $core->activityReport->addAction( __('Special messages'), __('%s'), 'messageActivityReport', - array('activityReportBehaviors','messageActivityReport') + ['activityReportBehaviors', 'messageActivityReport'] ); -/* Blog --------------------------*/ -$core->activityReport->addGroup('blog',__('Actions on blog')); +// Blog +$core->activityReport->addGroup('blog', __('Actions on blog')); -# Not use as it is global : BEHAVIOR adminAfterBlogCreate in admin/blog.php +// Not use as it is global : BEHAVIOR adminAfterBlogCreate in admin/blog.php -# from BEHAVIOR adminAfterBlogUpdate in admin/blog_pref.php +// from BEHAVIOR adminAfterBlogUpdate in admin/blog_pref.php $core->activityReport->addAction( 'blog', 'update', __('updating blog'), __('Blog was updated by "%s"'), 'adminAfterBlogUpdate', - array('activityReportBehaviors','blogUpdate') + ['activityReportBehaviors', 'blogUpdate'] ); -# from BEHAVIOR publicHeadContent in template +// from BEHAVIOR publicHeadContent in template $core->activityReport->addAction( 'blog', 'p404', __('404 error'), __('New 404 error page at "%s"'), 'publicHeadContent', - array('activityReportBehaviors','blogP404') + ['activityReportBehaviors', 'blogP404'] ); -/* Post --------------------------*/ -$core->activityReport->addGroup('post',__('Actions on posts')); +// Post +$core->activityReport->addGroup('post', __('Actions on posts')); -# from BEHAVIOR coreAfterPostCreate in inc/core/class.dc.blog.php (DC 2.2) -# duplicate adminAfterPostCreate in admin/post.php -# duplicate adminAfterPostCreate in admin/services.php +// from BEHAVIOR coreAfterPostCreate in inc/core/class.dc.blog.php (DC 2.2) +// duplicate adminAfterPostCreate in admin/post.php +// duplicate adminAfterPostCreate in admin/services.php $core->activityReport->addAction( 'post', 'create', __('post creation'), __('A new post called "%s" was created by "%s" at %s'), 'adminAfterPostCreate', - array('activityReportBehaviors','postCreate') + ['activityReportBehaviors', 'postCreate'] ); -# Plugin contribute -# from BEHAVIOR publicAfterPostCreate in plugins/contribute/_public.php +// Plugin contribute +// from BEHAVIOR publicAfterPostCreate in plugins/contribute/_public.php $core->activityReport->addAction( 'post', 'create', __('post creation'), __('A new post called "%s" was created by "%s" at %s'), 'publicAfterPostCreate', - array('activityReportBehaviors','postCreate') + ['activityReportBehaviors', 'postCreate'] ); -# from BEHAVIOR coreAfterPostUpdate in inc/core/class.dc.blog.php (DC2.2) -# duplicate adminAfterPostUpdate in admin/post.php +// from BEHAVIOR coreAfterPostUpdate in inc/core/class.dc.blog.php (DC2.2) +// duplicate adminAfterPostUpdate in admin/post.php $core->activityReport->addAction( 'post', 'update', __('updating post'), __('Post called "%s" has been updated by "%s" at %s'), 'adminAfterPostUpdate', - array('activityReportBehaviors','postUpdate') + ['activityReportBehaviors', 'postUpdate'] ); -# from BEHAVIOR adminBeforePostDelete in admin/posts_actions.php -# from BEHAVIOR adminBeforePostDelete in admin/post.php +// from BEHAVIOR adminBeforePostDelete in admin/posts_actions.php +// from BEHAVIOR adminBeforePostDelete in admin/post.php $core->activityReport->addAction( 'post', 'delete', __('post deletion'), __('Post called "%s" has been deleted by "%s"'), 'adminBeforePostDelete', - array('activityReportBehaviors','postDelete') + ['activityReportBehaviors', 'postDelete'] ); -# Wrong attempt on passworded enrty -# from BEHAVIOR urlHandlerServeDocument in inc/public/lib.urlhandlers.php +// Wrong attempt on passworded enrty +// from BEHAVIOR urlHandlerServeDocument in inc/public/lib.urlhandlers.php $core->activityReport->addAction( 'post', 'protection', __('Post protection'), __('An attempt failed on a passworded post with password "%s" at "%s"'), 'urlHandlerServeDocument', - array('activityReportBehaviors','postPasswordAttempt') + ['activityReportBehaviors', 'postPasswordAttempt'] ); -/* Comment --------------------------*/ +// Comment $core->activityReport->addGroup('comment',__('Actions on comments')); -# from BEHAVIOR coreAfterCommentCreate in inc/core/class.dc.blog.php -# duplicate adminAfterCommentCreate in admin/comment.php -# duplicate publicAfterCommentCreate in inc/public/lib.urlhandlers.php +// from BEHAVIOR coreAfterCommentCreate in inc/core/class.dc.blog.php +// duplicate adminAfterCommentCreate in admin/comment.php +// duplicate publicAfterCommentCreate in inc/public/lib.urlhandlers.php $core->activityReport->addAction( 'comment', 'create', __('comment creation'), __('A new comment was created by "%s" on post "%s" at %s'), 'coreAfterCommentCreate', - array('activityReportBehaviors','commentCreate') + ['activityReportBehaviors', 'commentCreate'] ); -# from BEHAVIOR coreAfterCommentUpdate in inc/core/class.dc.blog.php -# duplicate adminAfterCommentUpdate in admin/comment.php +// from BEHAVIOR coreAfterCommentUpdate in inc/core/class.dc.blog.php +// duplicate adminAfterCommentUpdate in admin/comment.php $core->activityReport->addAction( 'comment', 'update', __('updating comment'), __('Comment has been updated by "%s" at %s'), 'coreAfterCommentUpdate', - array('activityReportBehaviors','commentUpdate') + ['activityReportBehaviors', 'commentUpdate'] ); -# Missing coreBeforeCommentDelete in inc/core/class.dc.blog.php -# Missing adminBeforeCommentDelete in admin/comment.php +// Missing coreBeforeCommentDelete in inc/core/class.dc.blog.php +// Missing adminBeforeCommentDelete in admin/comment.php -# from BEHAVIOR coreAfterCommentCreate in inc/core/class.dc.blog.php -# duplicate publicAfterTrackbackCreate in inc/core/class.dc.trackback.php +// from BEHAVIOR coreAfterCommentCreate in inc/core/class.dc.blog.php +// duplicate publicAfterTrackbackCreate in inc/core/class.dc.trackback.php $core->activityReport->addAction( 'comment', 'trackback', __('trackback creation'), __('A new trackback to "%" at "%s" was created on post "%s" at %s'), 'coreAfterCommentCreate', - array('activityReportBehaviors','trackbackCreate') + ['activityReportBehaviors', 'trackbackCreate'] ); -/* Category --------------------------*/ -$core->activityReport->addGroup('category',__('Actions on categories')); +// Category +$core->activityReport->addGroup('category', __('Actions on categories')); -# from BEHAVIOR adminAfterCategoryCreate in admin/category.php +// from BEHAVIOR adminAfterCategoryCreate in admin/category.php $core->activityReport->addAction( 'category', 'create', __('category creation'), __('A new category called "%s" was created by "%s" at %s'), 'adminAfterCategoryCreate', - array('activityReportBehaviors','categoryCreate') + ['activityReportBehaviors', 'categoryCreate'] ); -# from BEHAVIOR adminAfterCategoryUpdate in admin/category.php +// from BEHAVIOR adminAfterCategoryUpdate in admin/category.php $core->activityReport->addAction( 'category', 'update', __('updating category'), __('Category called "%s" has been updated by "%s" at %s'), 'adminAfterCategoryUpdate', - array('activityReportBehaviors','categoryUpdate') + ['activityReportBehaviors', 'categoryUpdate'] ); -# Missing adminBeforeCategoryDelete in admin/category.php +// Missing adminBeforeCategoryDelete in admin/category.php -/* User --------------------------*/ -$core->activityReport->addGroup('user',__('Actions on users')); +// User +$core->activityReport->addGroup('user', __('Actions on users')); -# from BEHAVIOR adminAfterUserCreate in admin/user.php +// from BEHAVIOR adminAfterUserCreate in admin/user.php $core->activityReport->addAction( 'user', 'create', __('user creation'), __('A new user named "%s" was created by "%s"'), 'adminAfterUserCreate', - array('activityReportBehaviors','userCreate') + ['activityReportBehaviors', 'userCreate'] ); -# from BEHAVIOR adminAfterUserUpdated in admin/user.php +// from BEHAVIOR adminAfterUserUpdated in admin/user.php $core->activityReport->addAction( 'user', 'update', __('updating user'), __('User named "%s" has been updated by "%s"'), 'adminAfterUserUpdate', - array('activityReportBehaviors','userUpdate') + ['activityReportBehaviors', 'userUpdate'] ); -# from BEHAVIOR adminBeforeUserDelete in admin/users.php +// from BEHAVIOR adminBeforeUserDelete in admin/users.php $core->activityReport->addAction( 'user', 'delete', __('user deletion'), __('User named "%s" has been deleted by "%"'), 'adminBeforeUserDelete', - array('activityReportBehaviors','userDelete') + ['activityReportBehaviors', 'userDelete'] ); class activityReportBehaviors @@ -220,210 +218,198 @@ class activityReportBehaviors public static function messageActivityReport($message) { global $core; - - $logs = array($message); - - $core->activityReport->addLog('activityReport','message',$logs); + $logs = [$message]; + $core->activityReport->addLog('activityReport', 'message', $logs); } - public static function blogUpdate($cur,$blog_id) + public static function blogUpdate($cur, $blog_id) { global $core; - - $logs = array($core->auth->getInfo('user_cn')); - - $core->activityReport->addLog('blog','update',$logs); + $logs = [$core->auth->getInfo('user_cn')]; + $core->activityReport->addLog('blog', 'update' ,$logs); } public static function blogP404() { global $core; - if ($core->url->type != '404') return; - - $logs = array($core->blog->url.$_SERVER['QUERY_STRING']); - - $core->activityReport->addLog('blog','p404',$logs); + if ($core->url->type != '404') { + return null; + } + $logs = [$core->blog->url . $_SERVER['QUERY_STRING']]; + $core->activityReport->addLog('blog', 'p404', $logs); } - public static function postCreate($cur,$post_id) + public static function postCreate($cur, $post_id) { global $core; - $type = $cur->post_type ? $cur->post_type : 'post'; - $post_url = $core->blog->getPostURL('',$cur->post_dt,$cur->post_title,$post_id); - - $logs = array( + $post_url = $core->blog->getPostURL('', $cur->post_dt, $cur->post_title, $post_id); + $logs = [ $cur->post_title, $core->auth->getInfo('user_cn'), - $core->blog->url.$core->url->getBase($type).'/'.$post_url - ); - - $core->activityReport->addLog('post','create',$logs); + $core->blog->url . $core->url->getBase($type) . '/' . $post_url + ]; + $core->activityReport->addLog('post', 'create', $logs); } - public static function postUpdate($cur,$post_id) + public static function postUpdate($cur, $post_id) { global $core; - $type = $cur->post_type ? $cur->post_type : 'post'; - $post_url = $core->blog->getPostURL('',$cur->post_dt,$cur->post_title,$post_id); - - $logs = array( + $post_url = $core->blog->getPostURL('', $cur->post_dt, $cur->post_title, $post_id); + $logs = [ $cur->post_title, $core->auth->getInfo('user_cn'), - $core->blog->url.$core->url->getBase($type).'/'.$post_url - ); - - $core->activityReport->addLog('post','update',$logs); + $core->blog->url . $core->url->getBase($type) . '/' . $post_url + ]; + $core->activityReport->addLog('post', 'update', $logs); } public static function postDelete($post_id) { global $core; - $posts = $core->blog->getPosts(array('post_id'=>$post_id,'limit'=>1)); - - $logs = array( + $posts = $core->blog->getPosts(['post_id' => $post_id, 'limit' => 1]); + $logs = [ $posts->post_title, $core->auth->getInfo('user_cn') - ); - - $core->activityReport->addLog('post','delete',$logs); + ]; + $core->activityReport->addLog('post', 'delete', $logs); } public static function postPasswordAttempt($result) { global $core; - if ($result['tpl'] != 'password-form.html' || empty($_POST['password'])) return; - - $logs = array( + if ($result['tpl'] != 'password-form.html' || empty($_POST['password'])) { + return null; + } + $logs = [ $_POST['password'], http::getSelfURI() - ); - - $core->activityReport->addLog('post','protection',$logs); + ]; + $core->activityReport->addLog('post', 'protection', $logs); } - public static function commentCreate($blog,$cur) + public static function commentCreate($blog, $cur) { global $core; - if ($cur->comment_trackback) return; - - $posts = $core->blog->getPosts(array('post_id'=>$cur->post_id,'limit'=>1)); - - $logs = array( + if ($cur->comment_trackback) { + return null; + } + $posts = $core->blog->getPosts(['post_id' => $cur->post_id, 'limit' => 1]); + $logs = [ $cur->comment_author, $posts->post_title, - $core->blog->url.$core->url->getBase($posts->post_type). - '/'.$posts->post_url.'#c'.$cur->comment_id - ); - - $core->activityReport->addLog('comment','create',$logs); + $core->blog->url . $core->url->getBase($posts->post_type) . + '/' . $posts->post_url . '#c' . $cur->comment_id + ]; + $core->activityReport->addLog('comment', 'create', $logs); } - public static function commentUpdate($blog,$cur,$old) + public static function commentUpdate($blog, $cur, $old) { global $core; - $posts = $core->blog->getPosts(array('post_id'=>$old->post_id,'limit'=>1)); + $posts = $core->blog->getPosts(['post_id' => $old->post_id, 'limit' => 1]); - $logs = array( + $logs = [ $core->auth->getInfo('user_cn'), $posts->post_title, - $core->blog->url.$core->url->getBase($posts->post_type). - '/'.$posts->post_url.'#c'.$old->comment_id - ); - - $core->activityReport->addLog('comment','update',$logs); + $core->blog->url . $core->url->getBase($posts->post_type) . + '/' . $posts->post_url . '#c' . $old->comment_id + ]; + $core->activityReport->addLog('comment', 'update', $logs); } - public static function trackbackCreate($cur,$comment_id) + public static function trackbackCreate($cur, $comment_id) { global $core; - - // From blog args are $blog,$cur #thks to bruno + // From blog args are $blog, $cur #thks to bruno $c = $cur instanceOf dcBlog ? $comment_id : $cur; - if (!$c->comment_trackback || !$c->comment_site) return; - + if (!$c->comment_trackback || !$c->comment_site) { + return null; + } $posts = $core->blog->getPosts( - array('post_id'=>$c->post_id,'no_content'=>true,'limit'=>1)); - if ($posts->isEmpty()) return; - - $logs = array( + ['post_id' => $c->post_id, 'no_content' => true, 'limit' => 1]); + if ($posts->isEmpty()) { + return null; + } + $logs = [ $c->comment_author, $c->comment_site, $posts->post_title, - $core->blog->url.$core->url->getBase($posts->post_type). - '/'.$posts->post_url - ); - - $core->activityReport->addLog('comment','trackback',$logs); + $core->blog->url . $core->url->getBase($posts->post_type) . + '/' . $posts->post_url + ]; + $core->activityReport->addLog('comment', 'trackback', $logs); } - public static function categoryCreate($cur,$cat_id) + public static function categoryCreate($cur, $cat_id) { global $core; - - $logs = array( + $logs = [ $cur->cat_title, $core->auth->getInfo('user_cn'), - $core->blog->url.$core->url->getBase('category').'/'.$cur->cat_url - ); - - $core->activityReport->addLog('category','create',$logs); + $core->blog->url . $core->url->getBase('category') . '/' . $cur->cat_url + ]; + $core->activityReport->addLog('category', 'create', $logs); } - public static function categoryUpdate($cur,$cat_id) + public static function categoryUpdate($cur, $cat_id) { global $core; - - $logs = array( + $logs = [ $cur->cat_title, $core->auth->getInfo('user_cn'), - $core->blog->url.$core->url->getBase('category').'/'.$cur->cat_url - ); - - $core->activityReport->addLog('category','update',$logs); + $core->blog->url . $core->url->getBase('category') . '/' . $cur->cat_url + ]; + $core->activityReport->addLog('category', 'update', $logs); } - public static function userCreate($cur,$user_id) + public static function userCreate($cur, $user_id) { global $core; - $user_cn = dcUtils::getUserCN($cur->user_id, $cur->user_name, - $cur->user_firstname, $cur->user_displayname); - - $logs = array( + $user_cn = dcUtils::getUserCN( + $cur->user_id, + $cur->user_name, + $cur->user_firstname, + $cur->user_displayname + ); + $logs = [ $user_cn, $core->auth->getInfo('user_cn') - ); - - $core->activityReport->addLog('user','create',$logs); + ]; + $core->activityReport->addLog('user', 'create', $logs); } - public static function usertUpdate($cur,$user_id) + public static function usertUpdate($cur, $user_id) { global $core; - $user_cn = dcUtils::getUserCN($cur->user_id, $cur->user_name, - $cur->user_firstname, $cur->user_displayname); - - $logs = array( + $user_cn = dcUtils::getUserCN( + $cur->user_id, + $cur->user_name, + $cur->user_firstname, + $cur->user_displayname + ); + $logs = [ $user_cn, $core->auth->getInfo('user_cn') - ); - - $core->activityReport->addLog('user','update',$logs); + ]; + $core->activityReport->addLog('user', 'update', $logs); } public static function userDelete($user_id) { global $core; $users = $core->getUser($id); - $user_cn = dcUtils::getUserCN($users->user_id, $users->user_name, - $users->user_firstname, $users->user_displayname); - - $logs = array( + $user_cn = dcUtils::getUserCN( + $users->user_id, + $users->user_name, + $users->user_firstname, + $users->user_displayname + ); + $logs = [ $user_cn, $core->auth->getInfo('user_cn') - ); - - $core->activityReport->addLog('user','delete',$logs); + ]; + $core->activityReport->addLog('user', 'delete', $logs); } } \ No newline at end of file diff --git a/inc/class.activity.report.php b/inc/class.activity.report.php index c801288..9a8a76a 100644 --- a/inc/class.activity.report.php +++ b/inc/class.activity.report.php @@ -24,16 +24,16 @@ class activityReport private $_global = 0; private $blog = null; private $table = ''; - private $groups = array(); - private $settings = array(); + private $groups = []; + private $settings = []; private $lock_blog = null; private $lock_global = null; - public function __construct($core,$ns='activityReport') + public function __construct($core, $ns = 'activityReport') { $this->core =& $core; $this->con = $core->con; - $this->table = $core->prefix.'activity'; + $this->table = $core->prefix . 'activity'; $this->blog = $core->con->escape($core->blog->id); $this->ns = $core->con->escape($ns); @@ -53,101 +53,94 @@ class activityReport $this->_global = 0; } - public function getGroups($group=null,$action=null) + public function getGroups($group = null, $action = null) { - if ($action !== null) - { + if ($action !== null) { return isset($this->groups[$group]['actions'][$action]) ? $this->groups[$group]['actions'][$action] : null; - } - elseif ($group !== null) - { + } elseif ($group !== null) { return isset($this->groups[$group]) ? $this->groups[$group] : null; - } - else - { + } else { return $this->groups; } } - public function addGroup($group,$title) + public function addGroup($group, $title) { - $this->groups[$group] = array( + $this->groups[$group] = [ 'title' => $title, - 'actions'=>array() - ); + 'actions' => [] + ]; return true; } - public function addAction($group,$action,$title,$msg,$behavior,$function) + public function addAction($group, $action, $title, $msg, $behavior, $function) { if (!isset($this->groups[$group])) return false; - $this->groups[$group]['actions'][$action] = array( + $this->groups[$group]['actions'][$action] = [ 'title' => $title, 'msg' => $msg - ); - $this->core->addBehavior($behavior,$function); + ]; + $this->core->addBehavior($behavior, $function); return true; } private function getSettings() { - $settings = array(); - - $settings['active'] = false; - $settings['obsolete'] = 2419200; - $settings['dashboardItem'] = false; - $settings['interval'] = 86400; - $settings['lastreport'] = 0; - $settings['mailinglist'] = array(); - $settings['mailformat'] = 'plain'; - $settings['dateformat'] = '%Y-%m-%d %H:%M:%S'; - $settings['requests'] = array(); - $settings['blogs'] = array(); + $settings = [ + 'active' => false, + 'obsolete' => 2419200, + 'dashboardItem' => false, + 'interval' => 86400, + 'lastreport' => 0, + 'mailinglist' => [], + 'mailformat' => 'plain', + 'dateformat' => '%Y-%m-%d %H:%M:%S', + 'requests' => [], + 'blogs' => [] + ]; $this->settings[0] = $this->settings[1] = $settings; $rs = $this->con->select( - 'SELECT setting_id, setting_value, blog_id '. - 'FROM '.$this->table.'_setting '. - "WHERE setting_type='".$this->ns."' ". - "AND (blog_id='".$this->blog."' OR blog_id IS NULL) ". + 'SELECT setting_id, setting_value, blog_id ' . + 'FROM ' . $this->table . '_setting ' . + "WHERE setting_type='" . $this->ns . "' " . + "AND (blog_id='" . $this->blog . "' OR blog_id IS NULL) " . 'ORDER BY setting_id DESC ' ); - while($rs->fetch()) - { + while($rs->fetch()) { $k = $rs->f('setting_id'); $v = $rs->f('setting_value'); $b = $rs->f('blog_id'); $g = $b === null ? 1 : 0; - if (isset($settings[$k])) - { + if (isset($settings[$k])) { $this->settings[$g][$k] = self::decode($v); } } # Force blog - $this->settings[0]['blogs'] = array(1=>$this->blog); + $this->settings[0]['blogs'] = [1 => $this->blog]; } public function getSetting($n) { - return isset($this->settings[$this->_global][$n]) ? - $this->settings[$this->_global][$n] : - null; + return $this->settings[$this->_global][$n] ?? null; } - public function setSetting($n,$v) + public function setSetting($n, $v) { - if (!isset($this->settings[$this->_global][$n])) return null; + if (!isset($this->settings[$this->_global][$n])) { + return null; + } $c = $this->delSetting($n); - $cur = $this->con->openCursor($this->table.'_setting'); - $this->con->writeLock($this->table.'_setting'); + $cur = $this->con->openCursor($this->table . '_setting'); + $this->con->writeLock($this->table . '_setting'); $cur->blog_id = $this->_global ? null : $this->blog; $cur->setting_id = $this->con->escape($n); @@ -165,195 +158,159 @@ class activityReport private function delSetting($n) { return $this->con->execute( - 'DELETE FROM '.$this->table.'_setting '. - "WHERE blog_id".($this->_global ? ' IS NULL' : "='".$this->blog."'").' '. - "AND setting_id='".$this->con->escape($n)."' ". - "AND setting_type='".$this->ns."' " + 'DELETE FROM ' . $this->table . '_setting ' . + "WHERE blog_id" . ($this->_global ? ' IS NULL' : "='" . $this->blog . "'") . ' ' . + "AND setting_id='" . $this->con->escape($n) . "' " . + "AND setting_type='" . $this->ns . "' " ); } - # Action params to put in params['sql'] + // Action params to put in params['sql'] public static function requests2params($requests) { - $r = array(); - foreach($requests as $group => $actions) - { - foreach($actions as $action => $is) - { - $r[] = "activity_group='".$group."' AND activity_action='".$action."' "; + $r = []; + foreach($requests as $group => $actions) { + foreach($actions as $action => $is) { + $r[] = "activity_group='" . $group ."' AND activity_action='" . $action . "' "; } } - return empty($r) ? '' : 'AND ('.implode('OR ',$r).') '; + return empty($r) ? '' : 'AND (' . implode('OR ', $r) . ') '; } - public function getLogs($p,$count_only=false) + public function getLogs($p, $count_only = false) { - if ($count_only) - { + if ($count_only) { $r = 'SELECT count(E.activity_id) '; - } - else - { + } else { $content_r = empty($p['no_content']) ? 'activity_logs, ' : ''; - if (!empty($params['columns']) && is_array($params['columns'])) - { - $content_r .= implode(', ',$params['columns']).', '; + if (!empty($params['columns']) && is_array($params['columns'])) { + $content_r .= implode(', ', $params['columns']) . ', '; } $r = - 'SELECT E.activity_id, E.blog_id, B.blog_url, B.blog_name, '.$content_r. - 'E.activity_group, E.activity_action, E.activity_dt, '. + 'SELECT E.activity_id, E.blog_id, B.blog_url, B.blog_name, ' . $content_r . + 'E.activity_group, E.activity_action, E.activity_dt, ' . 'E.activity_blog_status, E.activity_super_status '; } $r .= - 'FROM '.$this->table.' E '. - 'LEFT JOIN '.$this->core->prefix.'blog B on E.blog_id=B.blog_id '; + 'FROM ' . $this->table . ' E ' . + 'LEFT JOIN ' . $this->core->prefix . 'blog B on E.blog_id=B.blog_id '; - if (!empty($p['from'])) - { - $r .= $p['from'].' '; + if (!empty($p['from'])) { + $r .= $p['from'] . ' '; } - if ($this->_global) - { + if ($this->_global) { $r .= "WHERE E.activity_super_status = 0 "; - } - else - { + } else { $r .= "WHERE E.activity_blog_status = 0 "; } - if (!empty($p['activity_type'])) - { - $r .= "AND E.activity_type = '".$this->con->escape($p['activity_type'])."' "; - } - else - { - $r .= "AND E.activity_type = '".$this->ns."' "; + if (!empty($p['activity_type'])) { + $r .= "AND E.activity_type = '" . $this->con->escape($p['activity_type']) . "' "; + } else { + $r .= "AND E.activity_type = '" . $this->ns . "' "; } - if (!empty($p['blog_id'])) - { - if(is_array($p['blog_id'])) - { - $r .= 'AND E.blog_id'.$this->con->in($p['blog_id']); + if (!empty($p['blog_id'])) { + if(is_array($p['blog_id'])) { + $r .= 'AND E.blog_id' . $this->con->in($p['blog_id']); + } else { + $r .= "AND E.blog_id = '" . $this->con->escape($p['blog_id']) . "' "; } - else - { - $r .= "AND E.blog_id = '".$this->con->escape($p['blog_id'])."' "; - } - } - elseif($this->_global) - { + } elseif($this->_global) { $r .= 'AND E.blog_id IS NOT NULL '; - } - else - { - $r .= "AND E.blog_id='".$this->blog."' "; + } else { + $r .= "AND E.blog_id='" . $this->blog . "' "; } - if (isset($p['activity_group'])) - { - if (is_array($p['activity_group']) && !empty($p['activity_group'])) - { - $r .= 'AND E.activity_group '.$this->con->in($p['activity_group']); - } - elseif ($p['activity_group'] != '') - { - $r .= "AND E.activity_group = '".$this->con->escape($p['activity_group'])."' "; + if (isset($p['activity_group'])) { + if (is_array($p['activity_group']) && !empty($p['activity_group'])) { + $r .= 'AND E.activity_group ' . $this->con->in($p['activity_group']); + } elseif ($p['activity_group'] != '') { + $r .= "AND E.activity_group = '" . $this->con->escape($p['activity_group']) . "' "; } } - if (isset($p['activity_action'])) - { - if (is_array($p['activity_action']) && !empty($p['activity_action'])) - { - $r .= 'AND E.activity_action '.$this->con->in($p['activity_action']); - } - elseif ($p['activity_action'] != '') - { - $r .= "AND E.activity_action = '".$this->con->escape($p['activity_action'])."' "; + if (isset($p['activity_action'])) { + if (is_array($p['activity_action']) && !empty($p['activity_action'])) { + $r .= 'AND E.activity_action ' . $this->con->in($p['activity_action']); + } elseif ($p['activity_action'] != '') { + $r .= "AND E.activity_action = '" . $this->con->escape($p['activity_action']) . "' "; } } - if (isset($p['activity_blog_status'])) - { - $r .= "AND E.activity_blog_status = ".((integer) $p['activity_blog_status'])." "; + if (isset($p['activity_blog_status'])) { + $r .= "AND E.activity_blog_status = " . ((integer) $p['activity_blog_status']) . " "; } - if (isset($p['activity_super_status'])) - { - $r .= "AND E.activity_super_status = ".((integer) $p['activity_super_status'])." "; + if (isset($p['activity_super_status'])) { + $r .= "AND E.activity_super_status = " . ((integer) $p['activity_super_status']) . " "; } - if (isset($p['from_date_ts'])) - { + if (isset($p['from_date_ts'])) { $dt = date('Y-m-d H:i:s',$p['from_date_ts']); - $r .= "AND E.activity_dt >= TIMESTAMP '".$dt."' "; + $r .= "AND E.activity_dt >= TIMESTAMP '" . $dt . "' "; } - if (isset($p['to_date_ts'])) - { + if (isset($p['to_date_ts'])) { $dt = date('Y-m-d H:i:s',$p['to_date_ts']); - $r .= "AND E.activity_dt < TIMESTAMP '".$dt."' "; + $r .= "AND E.activity_dt < TIMESTAMP '" . $dt . "' "; } - if (!empty($p['sql'])) - { - $r .= $p['sql'].' '; + if (!empty($p['sql'])) { + $r .= $p['sql'] . ' '; } - if (!$count_only) - { - if (!empty($p['order'])) - { - $r .= 'ORDER BY '.$this->con->escape($p['order']).' '; + if (!$count_only) { + if (!empty($p['order'])) { + $r .= 'ORDER BY ' . $this->con->escape($p['order']) . ' '; } else { $r .= 'ORDER BY E.activity_dt DESC '; } } - if (!$count_only && !empty($p['limit'])) - { + if (!$count_only && !empty($p['limit'])) { $r .= $this->con->limit($p['limit']); } return $this->con->select($r); } - public function addLog($group,$action,$logs) + public function addLog($group, $action, $logs) { - try - { + try { $cur = $this->con->openCursor($this->table); $this->con->writeLock($this->table); - $cur->activity_id = $this->getNextId(); - $cur->activity_type = $this->ns; - $cur->blog_id = $this->blog; - $cur->activity_group = $this->con->escape((string) $group); + $cur->activity_id = $this->getNextId(); + $cur->activity_type = $this->ns; + $cur->blog_id = $this->blog; + $cur->activity_group = $this->con->escape((string) $group); $cur->activity_action = $this->con->escape((string) $action); - $cur->activity_logs = self::encode($logs); - $cur->activity_dt = date('Y-m-d H:i:s'); + $cur->activity_logs = self::encode($logs); + $cur->activity_dt = date('Y-m-d H:i:s'); $cur->insert(); $this->con->unlock(); - } - catch (Exception $e) { + } catch (Exception $e) { $this->con->unlock(); $this->core->error->add($e->getMessage()); } - # Test if email report is needed + // Test if email report is needed $this->needReport(); } private function parseLogs($rs) { - if ($rs->isEmpty()) return ''; + if ($rs->isEmpty()) { + return ''; + } - include dirname(__FILE__).'/lib.parselogs.config.php'; + // @todo move this in function + include dirname(__FILE__) . '/lib.parselogs.config.php'; $from = time(); $to = 0; @@ -368,11 +325,9 @@ class activityReport $blog_open = $group_open = false; - while($rs->fetch()) - { - # Blog - if ($rs->blog_id != $blog && $this->_global) - { + while($rs->fetch()) { + // blog + if ($rs->blog_id != $blog && $this->_global) { if ($group_open) { $res .= $tpl['group_close']; $group_open = false; @@ -384,38 +339,50 @@ class activityReport $blog = $rs->blog_id; $group = ''; - $res .= str_replace(array('%TEXT%','%URL%'),array($rs->blog_name.' ('.$rs->blog_id.')',$rs->blog_url),$tpl['blog_title']); + $res .= str_replace( + ['%TEXT%', '%URL%'], + [$rs->blog_name . ' (' . $rs->blog_id . ')', $rs->blog_url], + $tpl['blog_title'] + ) . $tpl['blog_open']; - $res .= $tpl['blog_open']; $blog_open = true; } - if (isset($this->groups[$rs->activity_group])) - { - # Type - if ($rs->activity_group != $group) - { + if (isset($this->groups[$rs->activity_group])) { + // Type + if ($rs->activity_group != $group) { if ($group_open) { $res .= $tpl['group_close']; } $group = $rs->activity_group; - $res .= str_replace('%TEXT%',__($this->groups[$group]['title']),$tpl['group_title']); + $res .= str_replace( + '%TEXT%', + __($this->groups[$group]['title']), + $tpl['group_title'] + ) . $tpl['group_open']; - $res .= $tpl['group_open']; $group_open = true; } - # Action + // Action $time = strtotime($rs->activity_dt); $data = self::decode($rs->activity_logs); - $res .= str_replace(array('%TIME%','%TEXT%'),array(dt::str($dt,$time,$tz),vsprintf(__($this->groups[$group]['actions'][$rs->activity_action]['msg']),$data)),$tpl['action']); + $res .= str_replace( + ['%TIME%', '%TEXT%'], + [dt::str($dt, $time, $tz), vsprintf(__($this->groups[$group]['actions'][$rs->activity_action]['msg']), $data)], + $tpl['action'] + ); # Period - if ($time < $from) $from = $time; - if ($time > $to) $to = $time; + if ($time < $from) { + $from = $time; + } + if ($time > $to) { + $to = $time; + } } } @@ -425,76 +392,84 @@ class activityReport if ($blog_open) { $res .= $tpl['blog_close']; } - if ($to == 0) { - $res .= str_replace('%TEXT%',__('An error occured when parsing report.'),$tpl['error']); + $res .= str_replace('%TEXT%', __('An error occured when parsing report.'), $tpl['error']); } - # Top of msg - if (empty($res)) return ''; - - $period = str_replace('%TEXT%',__('Activity report'),$tpl['period_title']); - $period .= $tpl['period_open']; - - $period .= str_replace('%TEXT%',__("You received a message from your blog's activity report module."),$tpl['info']); - if (!$this->_global) - { - $period .= str_replace('%TEXT%',$rs->blog_name,$tpl['info']); - $period .= str_replace('%TEXT%',$rs->blog_url,$tpl['info']); + // Top of msg + if (empty($res)) { + return ''; } - $period .= str_replace('%TEXT%',sprintf(__('Period from %s to %s'),dt::str($dt,$from,$tz),dt::str($dt,$to,$tz)),$tpl['info']); + + $period = str_replace( + '%TEXT%', + __('Activity report'), + $tpl['period_title'] + ) . $tpl['period_open']; + + $period .= str_replace( + '%TEXT%', + __("You received a message from your blog's activity report module."), + $tpl['info'] + ); + if (!$this->_global) { + $period .= str_replace('%TEXT%', $rs->blog_name,$tpl['info']); + $period .= str_replace('%TEXT%', $rs->blog_url,$tpl['info']); + } + $period .= str_replace( + '%TEXT%', + sprintf(__('Period from %s to %s'), dt::str($dt, $from, $tz), dt::str($dt, $to, $tz)), + $tpl['info']); $period .= $tpl['period_close']; - $res = str_replace(array('%PERIOD%','%TEXT%'),array($period,$res),$tpl['page']); + $res = str_replace(['%PERIOD%', '%TEXT%'], [$period, $res], $tpl['page']); return $res; } private function obsoleteLogs() { - # Get blogs and logs count + // Get blogs and logs count $rs = $this->con->select( - "SELECT blog_id ". - 'FROM '.$this->table.' '. - "WHERE activity_type='".$this->ns."' ". + "SELECT blog_id " . + 'FROM ' . $this->table . ' ' . + "WHERE activity_type='" . $this->ns . "' " . 'GROUP BY blog_id ' ); - if ($rs->isEmpty()) return; + if ($rs->isEmpty()) { + return null; + } - while ($rs->fetch()) - { + while ($rs->fetch()) { $ts = time(); - $obs_blog = dt::str('%Y-%m-%d %H:%M:%S',$ts - (integer) $this->settings[0]['obsolete']); - $obs_global = dt::str('%Y-%m-%d %H:%M:%S',$ts - (integer) $this->settings[1]['obsolete']); + $obs_blog = dt::str('%Y-%m-%d %H:%M:%S', $ts - (integer) $this->settings[0]['obsolete']); + $obs_global = dt::str('%Y-%m-%d %H:%M:%S', $ts - (integer) $this->settings[1]['obsolete']); $this->con->execute( - 'DELETE FROM '.$this->table.' '. - "WHERE activity_type='".$this->ns."' ". - "AND (activity_dt < TIMESTAMP '".$obs_blog."' ". - "OR activity_dt < TIMESTAMP '".$obs_global."') ". - "AND blog_id = '".$this->con->escape($rs->blog_id)."' " + 'DELETE FROM ' . $this->table . ' ' . + "WHERE activity_type='" . $this->ns . "' " . + "AND (activity_dt < TIMESTAMP '" . $obs_blog . "' " . + "OR activity_dt < TIMESTAMP '" . $obs_global . "') " . + "AND blog_id = '" . $this->con->escape($rs->blog_id) ."' " ); - if ($this->con->changes()) - { - try - { + if ($this->con->changes()) { + try { $cur = $this->con->openCursor($this->table); $this->con->writeLock($this->table); - $cur->activity_id = $this->getNextId(); - $cur->activity_type = $this->ns; - $cur->blog_id = $rs->blog_id; - $cur->activity_group = 'activityReport'; + $cur->activity_id = $this->getNextId(); + $cur->activity_type = $this->ns; + $cur->blog_id = $rs->blog_id; + $cur->activity_group = 'activityReport'; $cur->activity_action = 'message'; - $cur->activity_logs = self::encode(__('Activity report deletes some old logs.')); - $cur->activity_dt = date('Y-m-d H:i:s'); + $cur->activity_logs = self::encode(__('Activity report deletes some old logs.')); + $cur->activity_dt = date('Y-m-d H:i:s'); $cur->insert(); $this->con->unlock(); - } - catch (Exception $e) { + } catch (Exception $e) { $this->con->unlock(); $this->core->error->add($e->getMessage()); } @@ -505,43 +480,38 @@ class activityReport private function cleanLogs() { $this->con->execute( - 'DELETE FROM '.$this->table.' '. - "WHERE activity_type='".$this->ns."' ". - "AND activity_blog_status = 1 ". + 'DELETE FROM ' . $this->table . ' ' . + "WHERE activity_type='" . $this->ns . "' " . + "AND activity_blog_status = 1 " . "AND activity_super_status = 1 " ); } public function deleteLogs() { - if (!$this->core->auth->isSuperAdmin()) return; + if (!$this->core->auth->isSuperAdmin()) { + return null; + } return $this->con->execute( - 'DELETE FROM '.$this->table.' '. - "WHERE activity_type='".$this->ns."' " + 'DELETE FROM ' . $this->table . ' ' . + "WHERE activity_type='" . $this->ns . "' " ); } - private function updateStatus($from_date_ts,$to_date_ts) + private function updateStatus($from_date_ts, $to_date_ts) { - $r = - 'UPDATE '.$this->table.' '; + $r = 'UPDATE ' . $this->table . ' '; - if ($this->_global) - { - $r .= - "SET activity_super_status = 1 WHERE blog_id IS NOT NULL "; + if ($this->_global) { + $r .= "SET activity_super_status = 1 WHERE blog_id IS NOT NULL "; + } else { + $r .= "SET activity_blog_status = 1 WHERE blog_id = '" . $this->blog . "' "; } - else - { - $r .= - "SET activity_blog_status = 1 WHERE blog_id = '".$this->blog."' "; - } - $r .= - "AND activity_type = '".$this->ns."' ". - "AND activity_dt >= TIMESTAMP '".date('Y-m-d H:i:s',$from_date_ts)."' ". - "AND activity_dt < TIMESTAMP '".date('Y-m-d H:i:s',$to_date_ts)."' "; + "AND activity_type = '" . $this->ns . "' " . + "AND activity_dt >= TIMESTAMP '" . date('Y-m-d H:i:s',$from_date_ts) . "' " . + "AND activity_dt < TIMESTAMP '" . date('Y-m-d H:i:s',$to_date_ts) . "' "; $this->con->execute($r); } @@ -549,15 +519,14 @@ class activityReport public function getNextId() { return $this->con->select( - 'SELECT MAX(activity_id) FROM '.$this->table + 'SELECT MAX(activity_id) FROM ' . $this->table )->f(0) + 1; } # Lock a file to see if an update is ongoing public function lockUpdate() { - try - { + try { # Need flock function if (!function_exists('flock')) { throw New Exception("Can't call php function named flock"); @@ -571,46 +540,41 @@ class activityReport $cached_file = sprintf('%s/%s/%s/%s/%s.txt', DC_TPL_CACHE, 'activityreport', - substr($f_md5,0,2), - substr($f_md5,2,2), + substr($f_md5, 0, 2), + substr($f_md5, 2, 2), $f_md5 ); # Real path - $cached_file = path::real($cached_file,false); - # Make dir + $cached_file = path::real($cached_file, false); + // make dir if (!is_dir(dirname($cached_file))) { - - files::makeDir(dirname($cached_file),true); + files::makeDir(dirname($cached_file), true); } - # Make file + //ake file if (!file_exists($cached_file)) { !$fp = @fopen($cached_file, 'w'); if ($fp === false) { throw New Exception("Can't create file"); } - fwrite($fp,'1',strlen('1')); + fwrite($fp, '1', strlen('1')); fclose($fp); } - # Open file + // open file if (!($fp = @fopen($cached_file, 'r+'))) { throw New Exception("Can't open file"); } - # Lock file - if (!flock($fp,LOCK_EX)) { + // lock file + if (!flock($fp, LOCK_EX)) { throw New Exception("Can't lock file"); } - if ($this->_global) - { + if ($this->_global) { $this->lock_global = $fp; - } - else - { + } else { $this->lock_blog = $fp; } return true; - } - catch (Exception $e) - { + } catch (Exception $e) { + // what ? throw $e; } return false; @@ -618,13 +582,10 @@ class activityReport public function unlockUpdate() { - if ($this->_global) - { + if ($this->_global) { @fclose($this->lock_global); $this->lock_global = null; - } - else - { + } else { @fclose($this->lock_blog); $this->lock_blog = null; } @@ -635,17 +596,15 @@ class activityReport return function_exists('mail') || function_exists('_mail'); } - public function needReport($force=false) + public function needReport($force = false) { - try - { - # Check if server has mail function - if (!self::hasMailer()) - { + try { + // Check if server has mail function + if (!self::hasMailer()) { throw new Exception('No mail fonction'); } - # Limit to one update at a time + // Limit to one update at a time $this->lockUpdate(); $send = false; @@ -659,115 +618,106 @@ class activityReport $interval = (integer) $this->settings[$this->_global]['interval']; $blogs = $this->settings[$this->_global]['blogs']; - if ($force) $lastreport = 0; + if ($force) { + $lastreport = 0; + } - # Check if report is needed + // Check if report is needed if ($active && !empty($mailinglist) && !empty($requests) && !empty($blogs) - && ($lastreport + $interval) < $now ) - { - # Get datas - $params = array(); - $params['from_date_ts'] = $lastreport; - $params['to_date_ts'] = $now; - $params['blog_id'] = $blogs; - $params['sql'] = self::requests2params($requests); - $params['order'] = 'blog_id ASC, activity_group ASC, activity_action ASC, activity_dt ASC '; + && ($lastreport + $interval) < $now + ) { + // Get datas + $params = [ + 'from_date_ts' => $lastreport, + 'to_date_ts' => $now, + 'blog_id' => $blogs, + 'sql' => self::requests2params($requests), + 'order' => 'blog_id ASC, activity_group ASC, activity_action ASC, activity_dt ASC ' + ]; $logs = $this->getLogs($params); - if (!$logs->isEmpty()) - { - # Datas to readable text + if (!$logs->isEmpty()) { + // Datas to readable text $content = $this->parseLogs($logs); - if (!empty($content)) - { - # Send mails - $send = $this->sendReport($mailinglist,$content,$mailformat); + if (!empty($content)) { + // Send mails + $send = $this->sendReport($mailinglist, $content, $mailformat); } } - # Update db - if ($send || $this->_global) // if global : delete all blog logs even if not selected - { - # Update log status - $this->updateStatus($lastreport,$now); - # Delete old logs + // Update db + if ($send || $this->_global) { // if global : delete all blog logs even if not selected + $this->updateStatus($lastreport, $now); $this->cleanLogs(); - # Then set update time - $this->setSetting('lastreport',$now); + $this->setSetting('lastreport', $now); } } - # If this is on a blog, we need to test superAdmin report - if (!$this->_global) - { + // If this is on a blog, we need to test superAdmin report + if (!$this->_global) { $this->_global = true; $this->needReport(); $this->_global = false; - if ($send) - { - $this->core->callBehavior('messageActivityReport','Activity report has been successfully send by mail.'); + if ($send) { + $this->core->callBehavior('messageActivityReport', 'Activity report has been successfully send by mail.'); } } $this->unlockUpdate(); - } - catch (Exception $e) - { + } catch (Exception $e) { $this->unlockUpdate(); //throw $e; } return true; } - private function sendReport($recipients,$msg,$mailformat='') + private function sendReport($recipients, $msg, $mailformat =' ') { - if (!is_array($recipients) || empty($msg) || !text::isEmail($this->mailer)) return false; + if (!is_array($recipients) || empty($msg) || !text::isEmail($this->mailer)) { + return false; + } $mailformat = $mailformat == 'html' ? 'html' : 'plain'; - # Checks recipients addresses - $rc2 = array(); - foreach ($recipients as $v) - { + // Checks recipients addresses + $rc2 = []; + foreach ($recipients as $v) { $v = trim($v); - if (!empty($v) && text::isEmail($v)) - { + if (!empty($v) && text::isEmail($v)) { $rc2[] = $v; } } $recipients = $rc2; unset($rc2); - if (empty($recipients)) return false; + if (empty($recipients)) { + return false; + } # Sending mails - try - { - $headers = array( - 'From: '.mail::B64Header(__('Activity report module')).' <'.$this->mailer.'>', - 'Reply-To: <'.$this->mailer.'>', - 'Content-Type: text/'.$mailformat.'; charset=UTF-8;', + try { + $headers = [ + 'From: ' . mail::B64Header(__('Activity report module')) . ' <' . $this->mailer . '>', + 'Reply-To: <' . $this->mailer . '>', + 'Content-Type: text/' . $mailformat . '; charset=UTF-8;', 'MIME-Version: 1.0', - 'X-Originating-IP: '.http::realIP(), + 'X-Originating-IP: ' . http::realIP(), 'X-Mailer: Dotclear', - 'X-Blog-Id: '.mail::B64Header($this->core->blog->id), - 'X-Blog-Name: '.mail::B64Header($this->core->blog->name), - 'X-Blog-Url: '.mail::B64Header($this->core->blog->url) - ); + 'X-Blog-Id: ' . mail::B64Header($this->core->blog->id), + 'X-Blog-Name: ' . mail::B64Header($this->core->blog->name), + 'X-Blog-Url: ' . mail::B64Header($this->core->blog->url) + ]; $subject = $this->_global ? mail::B64Header(__('Blog activity report')) : - mail::B64Header('['.$this->core->blog->name.'] '.__('Blog activity report')); + mail::B64Header('[' . $this->core->blog->name . '] ' . __('Blog activity report')); $done = true; - foreach ($recipients as $email) - { - if (true !== mail::sendMail($email,$subject,$msg,$headers)) { + foreach ($recipients as $email) { + if (true !== mail::sendMail($email, $subject, $msg, $headers)) { $done = false; } } - } - catch (Exception $e) - { + } catch (Exception $e) { $done = false; } @@ -777,17 +727,17 @@ class activityReport public function getUserCode() { $code = - pack('a32',$this->core->auth->userID()). - pack('H*',crypt::hmac(DC_MASTER_KEY,$this->core->auth->getInfo('user_pwd'))); + pack('a32', $this->core->auth->userID()) . + pack('H*', crypt::hmac(DC_MASTER_KEY, $this->core->auth->getInfo('user_pwd'))); return bin2hex($code); } public function checkUserCode($code) { - $code = pack('H*',$code); + $code = pack('H*', $code); - $user_id = trim(@pack('a32',substr($code,0,32))); - $pwd = @unpack('H40hex',substr($code,32,40)); + $user_id = trim(@pack('a32', substr($code, 0, 32))); + $pwd = @unpack('H40hex', substr($code, 32, 40)); if ($user_id === false || $pwd === false) { return false; @@ -795,9 +745,9 @@ class activityReport $pwd = $pwd['hex']; - $strReq = 'SELECT user_id, user_pwd '. - 'FROM '.$this->core->prefix.'user '. - "WHERE user_id = '".$this->core->con->escape($user_id)."' "; + $strReq = 'SELECT user_id, user_pwd ' . + 'FROM ' . $this->core->prefix . 'user ' . + "WHERE user_id = '" . $this->core->con->escape($user_id) . "' "; $rs = $this->core->con->select($strReq); diff --git a/inc/lib.parselogs.config.php b/inc/lib.parselogs.config.php index 8248bf1..adfe1cf 100644 --- a/inc/lib.parselogs.config.php +++ b/inc/lib.parselogs.config.php @@ -11,60 +11,54 @@ * @copyright GPL-2.0 https://www.gnu.org/licenses/gpl-2.0.html */ -$format = array( - -'html' => array( - -'blog_title' => '

%TEXT%

', -'blog_open' => '', -'blog_close' => '', -'group_title' => '

%TEXT%

', -'group_open' => '', -'action' => '
  • %TIME%
    %TEXT%
  • ', -'error' => '

    %TEXT%

    ', -'period_title' => '

    %TEXT%

    ', -'period_open' => '', -'info' => '
  • %TEXT%
  • ', -'page' => - -''."\n". -''."\n". -"".__('Activity report')."". -''. -"". -'
    %PERIOD%
    %TEXT%
    '. -'

    Powered by activityReport

    '. -"" - -), -'plain' => array( - -'blog_title' => "\n--- %TEXT% ---\n", -'blog_open' => '', -'blog_close' => '', -'group_title' => "\n-- %TEXT% --\n\n", -'group_open' => '', -'group_close' => '', -'action' => "- %TIME% : %TEXT%\n", -'error' => '%TEXT%', -'period_title' => "%TEXT%\n", -'period_open' => '', -'period_close' => '', -'info' => "%TEXT%\n", -'page' => - -"%PERIOD%\n-----------------------------------------------------------\n%TEXT%" - -)); \ No newline at end of file +$format = [ + 'html' => [ + 'blog_title' => '

    %TEXT%

    ', + 'blog_open' => '', + 'blog_close' => '', + 'group_title' => '

    %TEXT%

    ', + 'group_open' => '', + 'action' => '
  • %TIME%
    %TEXT%
  • ', + 'error' => '

    %TEXT%

    ', + 'period_title' => '

    %TEXT%

    ', + 'period_open' => '', + 'info' => '
  • %TEXT%
  • ', + 'page' => + ''."\n". + ''."\n". + "".__('Activity report')."". + ''. + "". + '
    %PERIOD%
    %TEXT%
    '. + '

    Powered by activityReport

    '. + "" + ], + 'plain' => [ + 'blog_title' => "\n--- %TEXT% ---\n", + 'blog_open' => '', + 'blog_close' => '', + 'group_title' => "\n-- %TEXT% --\n\n", + 'group_open' => '', + 'group_close' => '', + 'action' => "- %TIME% : %TEXT%\n", + 'error' => '%TEXT%', + 'period_title' => "%TEXT%\n", + 'period_open' => '', + 'period_close' => '', + 'info' => "%TEXT%\n", + 'page' => + "%PERIOD%\n-----------------------------------------------------------\n%TEXT%" + ] +]; \ No newline at end of file diff --git a/index.php b/index.php index 3688393..8886a70 100644 --- a/index.php +++ b/index.php @@ -23,10 +23,11 @@ dcPage::check('admin'); require_once dirname(__FILE__) . '/inc/lib.activity.report.index.php'; -$tab = isset($_REQUEST['tab']) ? $_REQUEST['tab'] : 'blog_settings'; +$tab = $_REQUEST['tab'] ?? 'blog_settings'; +$section = $_REQUEST['section'] ?? ''; echo ' -<?php echo __('Activity report'); ?>' . +'. __('Activity report') . '' . dcPage::jsLoad('js/_posts_list.js') . dcPage::jsToolBar() . dcPage::jsPageTabs($tab) . @@ -42,11 +43,11 @@ if (!activityReport::hasMailer()) { echo '

    ' . __('This server has no mail function, activityReport not send email report.') . '

    '; } -activityReportLib::settingTab($core,__('Settings')); -activityReportLib::logTab($core,__('Logs')); +activityReportLib::settingTab($core, __('Settings')); +activityReportLib::logTab($core, __('Logs')); if ($core->auth->isSuperAdmin()) { activityReportLib::settingTab($core, __('Super settings'), true); activityReportLib::logTab($core, __('Super logs'), true); } -echo ''; \ No newline at end of file +echo ''; \ No newline at end of file