xref: /webtrees/app/Module/ModuleSidebarInterface.php (revision a25f0a04682c4c39c1947220c90af4118c713952)
1<?php
2namespace Webtrees;
3
4/**
5 * webtrees: online genealogy
6 * Copyright (C) 2015 webtrees development team
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19/**
20 * Interface ModuleSidebarInterface - Classes and libraries for module system
21 */
22interface ModuleSidebarInterface {
23	/**
24	 * The user can change the order of sidebars.  Until they do this, they are shown in this order.
25	 *
26	 * @return integer
27	 */
28	public function defaultSidebarOrder();
29
30	/**
31	 * Load this sidebar synchronously.
32	 * @return string
33	 */
34	public function getSidebarContent();
35
36	/**
37	 * Load this sidebar asynchronously.
38	 *
39	 * @return string
40	 */
41	public function getSidebarAjaxContent();
42
43	/**
44	 * Does this sidebar have anything to display for this individual?
45	 *
46	 * @return boolean
47	 */
48	public function hasSidebarContent();
49}
50