From 58e532dfd4380271ffd53d236545bab939f4f401 Mon Sep 17 00:00:00 2001 From: Marc Alexander Date: Sat, 16 Nov 2013 13:44:11 +0100 Subject: [PATCH] [feature/module_services] Move latest_members to module services --- config/services.yml | 10 +++ migrations/v210_beta1.php | 2 +- .../latest_members.php | 65 ++++++++++++++----- 3 files changed, 58 insertions(+), 19 deletions(-) rename portal/modules/portal_latest_members.php => modules/latest_members.php (60%) diff --git a/config/services.yml b/config/services.yml index 495d6c82..800170c4 100644 --- a/config/services.yml +++ b/config/services.yml @@ -135,6 +135,16 @@ services: tags: - { name: board3.module } + board3.module.latest_members: + class: \board3\portal\modules\latest_members + arguments: + - @config + - @dbal.conn + - @template + - @user + tags: + - { name: board3.module } + board3.module.stylechanger: class: \board3\portal\modules\stylechanger arguments: diff --git a/migrations/v210_beta1.php b/migrations/v210_beta1.php index d59d5fd0..dbbd9dc2 100644 --- a/migrations/v210_beta1.php +++ b/migrations/v210_beta1.php @@ -380,7 +380,7 @@ class v210_beta1 extends \phpbb\db\migration\migration 'module_status' => 1, ), array( - 'module_classname' => 'latest_members', + 'module_classname' => '\board3\portal\modules\latest_members', 'module_column' => 1, 'module_order' => 8, 'module_name' => 'LATEST_MEMBERS', diff --git a/portal/modules/portal_latest_members.php b/modules/latest_members.php similarity index 60% rename from portal/modules/portal_latest_members.php rename to modules/latest_members.php index 1475be99..31b711de 100644 --- a/portal/modules/portal_latest_members.php +++ b/modules/latest_members.php @@ -1,24 +1,18 @@ config = $config; + $this->db = $db; + $this->template = $template; + $this->user = $user; + } + + /** + * @inheritdoc + */ public function get_template_side($module_id) { - global $config, $template, $db, $user; - $sql = 'SELECT user_id, username, user_regdate, user_colour FROM ' . USERS_TABLE . ' WHERE user_type <> ' . USER_IGNORE . ' AND user_inactive_time = 0 ORDER BY user_regdate DESC'; - $result = $db->sql_query_limit($sql, $config['board3_max_last_member_' . $module_id]); + $result = $this->db->sql_query_limit($sql, $this->config['board3_max_last_member_' . $module_id]); - while(($row = $db->sql_fetchrow($result)) && ($row['username'])) + while(($row = $this->db->sql_fetchrow($result)) && ($row['username'])) { - $template->assign_block_vars('latest_members', array( + $this->template->assign_block_vars('latest_members', array( 'USERNAME_FULL' => get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']), - 'JOINED' => $user->format_date($row['user_regdate'], $format = 'd M'), + 'JOINED' => $this->user->format_date($row['user_regdate'], $format = 'd M'), )); } - $db->sql_freeresult($result); + $this->db->sql_freeresult($result); return 'latest_members_side.html'; } + /** + * @inheritdoc + */ public function get_template_acp($module_id) { return array( @@ -82,7 +108,7 @@ class portal_latest_members_module extends \board3\portal\modules\module_base } /** - * API functions + * @inheritdoc */ public function install($module_id) { @@ -90,6 +116,9 @@ class portal_latest_members_module extends \board3\portal\modules\module_base return true; } + /** + * @inheritdoc + */ public function uninstall($module_id, $db) { $del_config = array(