aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/install/module/install_finish/task
diff options
context:
space:
mode:
authorMateBartus <mate.bartus@gmail.com>2015-04-19 00:43:51 +0200
committerMate Bartus <mate.bartus@gmail.com>2015-07-08 01:27:58 +0200
commit0b74e3b0dea723cf0e5a83dcd910bc29941d1456 (patch)
tree3cea83aef8dda9bec0a099ef65581a08f1e1da32 /phpBB/install/module/install_finish/task
parent11623dd6718ec12504286db3dfcd042ccb4e3688 (diff)
downloadforums-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.php113
-rw-r--r--phpBB/install/module/install_finish/task/populate_migrations.php54
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);
+ }
+}