diff options
| author | MateBartus <mate.bartus@gmail.com> | 2015-04-19 00:43:51 +0200 |
|---|---|---|
| committer | Mate Bartus <mate.bartus@gmail.com> | 2015-07-08 01:27:58 +0200 |
| commit | 0b74e3b0dea723cf0e5a83dcd910bc29941d1456 (patch) | |
| tree | 3cea83aef8dda9bec0a099ef65581a08f1e1da32 /phpBB/install/module/install_finish/task | |
| parent | 11623dd6718ec12504286db3dfcd042ccb4e3688 (diff) | |
| download | forums-0b74e3b0dea723cf0e5a83dcd910bc29941d1456.tar forums-0b74e3b0dea723cf0e5a83dcd910bc29941d1456.tar.gz forums-0b74e3b0dea723cf0e5a83dcd910bc29941d1456.tar.bz2 forums-0b74e3b0dea723cf0e5a83dcd910bc29941d1456.tar.xz forums-0b74e3b0dea723cf0e5a83dcd910bc29941d1456.zip | |
[ticket/13740] Installer's install tasks and modules
[ci skip]
PHPBB3-13740
Diffstat (limited to 'phpBB/install/module/install_finish/task')
| -rw-r--r-- | phpBB/install/module/install_finish/task/notify_user.php | 113 | ||||
| -rw-r--r-- | phpBB/install/module/install_finish/task/populate_migrations.php | 54 |
2 files changed, 167 insertions, 0 deletions
diff --git a/phpBB/install/module/install_finish/task/notify_user.php b/phpBB/install/module/install_finish/task/notify_user.php new file mode 100644 index 0000000000..d95303fcb5 --- /dev/null +++ b/phpBB/install/module/install_finish/task/notify_user.php @@ -0,0 +1,113 @@ +<?php +/** + * + * This file is part of the phpBB Forum Software package. + * + * @copyright (c) phpBB Limited <https://www.phpbb.com> + * @license GNU General Public License, version 2 (GPL-2.0) + * + * For full copyright and license information, please see + * the docs/CREDITS.txt file. + * + */ + +namespace phpbb\install\module\install_finish\task; + +/** + * Logs installation and sends an email to the admin + */ +class notify_user extends \phpbb\install\task_base +{ + /** + * @var \phpbb\install\helper\config + */ + protected $install_config; + + /** + * @var \phpbb\install\helper\iohandler\iohandler_interface + */ + protected $iohandler; + + /** + * @var \phpbb\auth\auth + */ + protected $auth; + + /** + * @var \phpbb\config\db + */ + protected $config; + + /** + * @var \phpbb\log\log_interface + */ + protected $log; + + /** + * @var \phpbb\user + */ + protected $user; + + /** + * @var string + */ + protected $phpbb_root_path; + + /** + * @var string + */ + protected $php_ext; + + /** + * Constructor + * + * @param \phpbb\install\helper\container_factory $container + * @param \phpbb\install\helper\config $install_config + * @param \phpbb\install\helper\iohandler\iohandler_interface $iohandler + * @param string $phpbb_root_path + * @param string $php_ext + */ + public function __construct(\phpbb\install\helper\container_factory $container, \phpbb\install\helper\config $install_config, \phpbb\install\helper\iohandler\iohandler_interface $iohandler, $phpbb_root_path, $php_ext) + { + $this->install_config = $install_config; + $this->iohandler = $iohandler; + + $this->auth = $container->get('auth'); + $this->config = $container->get('config'); + $this->log = $container->get('log'); + $this->user = $container->get('user'); + $this->phpbb_root_path = $phpbb_root_path; + $this->php_ext = $php_ext; + } + + /** + * {@inheritdoc} + */ + public function run() + { + // @todo + //$this->user->setup('common'); + + //$this->user->session_begin(); + //$this->auth->login($this->install_config->get('admin_name'), $this->install_config->get('admin_pass1'), false, true, true); + + if ($this->config['email_enable']) + { + include ($this->phpbb_root_path . 'includes/functions_messenger.' . $this->php_ext); + + $messenger = new \messenger(false); + $messenger->template('installed', $this->install_config->get('language')); + $messenger->to($this->config['board_email'], $this->install_config->get('admin_name')); + $messenger->anti_abuse_headers($this->config, $this->user); + $messenger->assign_vars(array( + 'USERNAME' => htmlspecialchars_decode($this->install_config->get('admin_name')), + 'PASSWORD' => htmlspecialchars_decode($this->install_config->get('admin_pass1'))) + ); + $messenger->send(NOTIFY_EMAIL); + } + + $this->log->add('admin', $this->user->data['user_id'], $this->user->ip, 'LOG_INSTALL_INSTALLED', false, array($this->config['version'])); + + @unlink($this->phpbb_root_path . 'cache/install_lock'); + } +} diff --git a/phpBB/install/module/install_finish/task/populate_migrations.php b/phpBB/install/module/install_finish/task/populate_migrations.php new file mode 100644 index 0000000000..4f701b84ca --- /dev/null +++ b/phpBB/install/module/install_finish/task/populate_migrations.php @@ -0,0 +1,54 @@ +<?php +/** + * + * This file is part of the phpBB Forum Software package. + * + * @copyright (c) phpBB Limited <https://www.phpbb.com> + * @license GNU General Public License, version 2 (GPL-2.0) + * + * For full copyright and license information, please see + * the docs/CREDITS.txt file. + * + */ + +namespace phpbb\install\module\install_finish\task; + +/** + * Populates migrations + */ +class populate_migrations extends \phpbb\install\task_base +{ + /** + * @var \phpbb\extension\manager + */ + protected $extension_manager; + + /** + * @var \phpbb\db\migrator + */ + protected $migrator; + + /** + * Constructor + * + * @param \phpbb\install\helper\container_factory $container phpBB's DI contianer + */ + public function __construct(\phpbb\install\helper\container_factory $container) + { + $this->extension_manager = $container->get('ext.manager'); + $this->migrator = $container->get('migrator'); + } + + /** + * {@inheritdoc} + */ + public function run() + { + $finder = $this->extension_manager->get_finder(); + + $migrations = $finder + ->core_path('phpbb/db/migration/data/') + ->get_classes(); + $this->migrator->populate_migrations($migrations); + } +} |
