Completed
Push — charts ( 02447f )
by Greg
12:32
created

DescendancyChartModule::getChartMenu()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
dl 0
loc 8
rs 9.4285
c 2
b 0
f 0
cc 1
eloc 6
nc 1
nop 1
1
<?php
2
/**
3
 * webtrees: online genealogy
4
 * Copyright (C) 2016 webtrees development team
5
 * This program is free software: you can redistribute it and/or modify
6
 * it under the terms of the GNU General Public License as published by
7
 * the Free Software Foundation, either version 3 of the License, or
8
 * (at your option) any later version.
9
 * This program is distributed in the hope that it will be useful,
10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
 * GNU General Public License for more details.
13
 * You should have received a copy of the GNU General Public License
14
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15
 */
16
namespace Fisharebest\Webtrees\Module;
17
18
use Fisharebest\Webtrees\Auth;
19
use Fisharebest\Webtrees\I18N;
20
use Fisharebest\Webtrees\Menu;
21
use Fisharebest\Webtrees\Individual;
22
23
/**
24
 * Class DescendancyChartModule
25
 */
26
class DescendancyChartModule extends AbstractModule implements ModuleChartInterface {
27
	/**
28
	 * How should this module be labelled on tabs, menus, etc.?
29
	 *
30
	 * @return string
31
	 */
32
	public function getTitle() {
33
		return /* I18N: Name of a module/chart */ I18N::translate('Descendants');
34
	}
35
36
	/**
37
	 * A sentence describing what this module does.
38
	 *
39
	 * @return string
40
	 */
41
	public function getDescription() {
42
		return /* I18N: Description of the “DescendancyChart” module */ I18N::translate('A chart of an individual’s descendants.');
43
	}
44
45
	/**
46
	 * What is the default access level for this module?
47
	 *
48
	 * Some modules are aimed at admins or managers, and are not generally shown to users.
49
	 *
50
	 * @return int
51
	 */
52
	public function defaultAccessLevel() {
53
		return Auth::PRIV_PRIVATE;
54
	}
55
	
56
	/**
57
	 * Return a menu item for this chart.
58
	 *
59
	 * @return Menu|null
0 ignored issues
show
Documentation introduced by
Consider making the return type a bit more specific; maybe use Menu.

This check looks for the generic type array as a return type and suggests a more specific type. This type is inferred from the actual code.

Loading history...
60
	 */
61
	public function getChartMenu(Individual $individual) {
62
		return new Menu(
63
			$this->getTitle(), 
64
			'descendancy.php?rootid=' . $individual->getXref() . '&amp;ged=' . $individual->getTree()->getNameUrl(), 
65
			'menu-chart-descendants', 
66
			array('rel' => 'nofollow')
67
		);
68
	}
69
	
70
	/**
71
	 * Return a menu item for this chart - for use in individual boxes.
72
	 *
73
	 * @return Menu|null
0 ignored issues
show
Documentation introduced by
Consider making the return type a bit more specific; maybe use Menu.

This check looks for the generic type array as a return type and suggests a more specific type. This type is inferred from the actual code.

Loading history...
74
	 */
75
	public function getBoxChartMenu(Individual $individual) {
76
		return $this->getChartMenu($individual);
77
	}
78
}
79