aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/install/controller/installer_index.php
blob: c2d95722849d3a9f09632a4644f3932127433e98 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?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\controller;

class installer_index
{
	/**
	 * @var helper
	 */
	protected $helper;

	/**
	 * @var \phpbb\language\language
	 */
	protected $language;

	/**
	 * @var \phpbb\template\template
	 */
	protected $template;

	/**
	 * @var string
	 */
	protected $phpbb_root_path;

	/**
	 * Constructor
	 *
	 * @param helper 					$helper
	 * @param \phpbb\language\language	$language
	 * @param \phpbb\template\template	$template
	 * @param string					$phpbb_root_path
	 */
	public function __construct(helper $helper, \phpbb\language\language $language, \phpbb\template\template $template, $phpbb_root_path)
	{
		$this->helper = $helper;
		$this->language = $language;
		$this->template = $template;
		$this->phpbb_root_path = $phpbb_root_path;
	}

	public function handle($mode)
	{
		$this->helper->handle_language_select();

		switch ($mode)
		{
			case "intro":
				$title = $this->language->lang('INTRODUCTION_TITLE');
				$body = $this->language->lang('INTRODUCTION_BODY');
			break;
			case "support":
				$title = $this->language->lang('SUPPORT_TITLE');
				$body = $this->language->lang('SUPPORT_BODY');
			break;
			case "license":
				$title = $this->language->lang('LICENSE_TITLE');
				$body = implode("<br/>\n", file($this->phpbb_root_path . 'docs/LICENSE.txt'));
			break;
		}

		$this->template->assign_vars(array(
			'TITLE'	=> $title,
			'BODY'	=> $body,
		));

		return $this->helper->render('installer_main.html', $title, true);
	}
}
n class="hl opt">->{dev} =~ /^\Q$_->{device}\E./ } @$hds) { put_in_hash($part, partition_table::hd2minimal_part($hd)); } undef $prev_part if $prev_part && ($prev_part->{rootDevice} || '') ne ($part->{rootDevice} || ''); $part->{device} = $dev; $part->{size} *= 2; # from KB to sectors $part->{start} = $prev_part ? $prev_part->{start} + $prev_part->{size} : 0; require fs::type; put_in_hash($part, fs::type::type_subpart_from_magic($part)) if !$o_ignore_fstype; $prev_part = $part; delete $part->{dev}; # cleanup } @$parts; } sub compare { my ($hd) = @_; eval { $hd->isa('partition_table::lvm') } and return; my @l1 = partition_table::get_normal_parts($hd); my @l2 = grep { $_->{rootDevice} eq $hd->{device} } &read([$hd], 1); #- /proc/partitions includes partition with type "empty" and a non-null size #- so add them for comparison my ($len1, $len2) = (int(@l1) + $hd->{primary}{nb_special_empty}, int(@l2)); if ($len1 != $len2) { if (find { $_->{pt_type} == 0xbf } @l1) { log::l("not using /proc/partitions because of the presence of solaris extended partition"); #- cf #33866 } else { die sprintf( "/proc/partitions does not agree with drakx %d != %d for %s:\n%s\n", $len1, $len2, $hd->{device}, "/proc/partitions: " . join(", ", map { "$_->{device} ($_->{rootDevice})" } @l2)); } } $len2; } sub use_ { my ($hd) = @_; require partition_table::readonly; partition_table::readonly->initialize($hd, [ grep { $_->{rootDevice} eq $hd->{device} } &read([$hd]) ]); } 1;