133c34396SGreg Roach<?php 23976b470SGreg Roach 333c34396SGreg Roach/** 433c34396SGreg Roach * webtrees: online genealogy 589f7189bSGreg Roach * Copyright (C) 2021 webtrees development team 633c34396SGreg Roach * This program is free software: you can redistribute it and/or modify 733c34396SGreg Roach * it under the terms of the GNU General Public License as published by 833c34396SGreg Roach * the Free Software Foundation, either version 3 of the License, or 933c34396SGreg Roach * (at your option) any later version. 1033c34396SGreg Roach * This program is distributed in the hope that it will be useful, 1133c34396SGreg Roach * but WITHOUT ANY WARRANTY; without even the implied warranty of 1233c34396SGreg Roach * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1333c34396SGreg Roach * GNU General Public License for more details. 1433c34396SGreg Roach * You should have received a copy of the GNU General Public License 1589f7189bSGreg Roach * along with this program. If not, see <https://www.gnu.org/licenses/>. 1633c34396SGreg Roach */ 17fcfa147eSGreg Roach 1833c34396SGreg Roachdeclare(strict_types=1); 1933c34396SGreg Roach 2033c34396SGreg Roachnamespace Fisharebest\Webtrees\Module; 2133c34396SGreg Roach 22a992e8c1SGreg Roachuse Psr\Http\Message\ServerRequestInterface; 230c8c69d4SGreg Roach 2433c34396SGreg Roach/** 2533c34396SGreg Roach * Trait ModuleFooterTrait - default implementation of ModuleFooterInterface 2633c34396SGreg Roach */ 2733c34396SGreg Roachtrait ModuleFooterTrait 2833c34396SGreg Roach{ 2933c746f1SGreg Roach // The default position for this footer. It can be changed in the control panel. 3033c746f1SGreg Roach protected int $footer_order; 3133c34396SGreg Roach 3233c34396SGreg Roach /** 3333c746f1SGreg Roach * Users can change the order of footers using the control panel. 3433c34396SGreg Roach * 3533c34396SGreg Roach * @param int $footer_order 3633c34396SGreg Roach * 3733c34396SGreg Roach * @return void 3833c34396SGreg Roach */ 3933c34396SGreg Roach public function setFooterOrder(int $footer_order): void 4033c34396SGreg Roach { 4133c34396SGreg Roach $this->footer_order = $footer_order; 4233c34396SGreg Roach } 4333c34396SGreg Roach 4433c34396SGreg Roach /** 4533c746f1SGreg Roach * Users can change the order of footers using the control panel. 4633c34396SGreg Roach * 4733c34396SGreg Roach * @return int 4833c34396SGreg Roach */ 4933c34396SGreg Roach public function getFooterOrder(): int 5033c34396SGreg Roach { 5133c34396SGreg Roach return $this->footer_order ?? $this->defaultFooterOrder(); 5233c34396SGreg Roach } 5333c34396SGreg Roach 5433c34396SGreg Roach /** 5533c34396SGreg Roach * The default position for this footer. 5633c34396SGreg Roach * 5733c34396SGreg Roach * @return int 5833c34396SGreg Roach */ 5933c34396SGreg Roach public function defaultFooterOrder(): int 6033c34396SGreg Roach { 6133c34396SGreg Roach return 9999; 6233c34396SGreg Roach } 6333c34396SGreg Roach 6433c34396SGreg Roach /** 6533c34396SGreg Roach * A footer, to be added at the bottom of every page. 6633c34396SGreg Roach * 67a992e8c1SGreg Roach * @param ServerRequestInterface $request 680c8c69d4SGreg Roach * 6933c34396SGreg Roach * @return string 7033c34396SGreg Roach */ 71*a09ea7ccSGreg Roach public function getFooter(/** @scrutinizer ignore-unused */ ServerRequestInterface $request): string 7233c34396SGreg Roach { 7333c34396SGreg Roach return ''; 7433c34396SGreg Roach } 7533c34396SGreg Roach} 76