1a25f0a04SGreg Roach<?php 2dd04c183SGreg Roachnamespace Fisharebest\Webtrees; 3a25f0a04SGreg Roach 4a25f0a04SGreg Roach/** 5a25f0a04SGreg Roach * webtrees: online genealogy 6a25f0a04SGreg Roach * Copyright (C) 2015 webtrees development team 7a25f0a04SGreg Roach * This program is free software: you can redistribute it and/or modify 8a25f0a04SGreg Roach * it under the terms of the GNU General Public License as published by 9a25f0a04SGreg Roach * the Free Software Foundation, either version 3 of the License, or 10a25f0a04SGreg Roach * (at your option) any later version. 11a25f0a04SGreg Roach * This program is distributed in the hope that it will be useful, 12a25f0a04SGreg Roach * but WITHOUT ANY WARRANTY; without even the implied warranty of 13a25f0a04SGreg Roach * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14a25f0a04SGreg Roach * GNU General Public License for more details. 15a25f0a04SGreg Roach * You should have received a copy of the GNU General Public License 16a25f0a04SGreg Roach * along with this program. If not, see <http://www.gnu.org/licenses/>. 17a25f0a04SGreg Roach */ 18a25f0a04SGreg Roach 19a25f0a04SGreg Roach/** 20a25f0a04SGreg Roach * Class ReportBaseFootnote 21a25f0a04SGreg Roach */ 22a25f0a04SGreg Roachclass ReportBaseFootnote extends ReportBaseElement { 23a25f0a04SGreg Roach /** 24a25f0a04SGreg Roach * The name of the style for this element 25a25f0a04SGreg Roach * 26a25f0a04SGreg Roach * @var string 27a25f0a04SGreg Roach */ 28a25f0a04SGreg Roach public $styleName = ""; 29a25f0a04SGreg Roach 30a25f0a04SGreg Roach /** 31a25f0a04SGreg Roach * Numbers for the links 32a25f0a04SGreg Roach * 33a25f0a04SGreg Roach * @var int 34a25f0a04SGreg Roach */ 35a25f0a04SGreg Roach public $num; 36a25f0a04SGreg Roach 37a25f0a04SGreg Roach /** 38a25f0a04SGreg Roach * The text that will be printed with the number 39a25f0a04SGreg Roach * 40a25f0a04SGreg Roach * @var string 41a25f0a04SGreg Roach */ 42a25f0a04SGreg Roach public $numText = ""; 43a25f0a04SGreg Roach 44a25f0a04SGreg Roach /** 45a25f0a04SGreg Roach * Remaining width of a cell 46a25f0a04SGreg Roach * 47a25f0a04SGreg Roach * @var float User unit (points) 48a25f0a04SGreg Roach */ 49a25f0a04SGreg Roach public $wrapWidthRemaining; 50a25f0a04SGreg Roach 51a25f0a04SGreg Roach /** 52a25f0a04SGreg Roach * Original width of a cell 53a25f0a04SGreg Roach * 54a25f0a04SGreg Roach * @var float User unit (points) 55a25f0a04SGreg Roach */ 56a25f0a04SGreg Roach public $wrapWidthCell; 57a25f0a04SGreg Roach 58a25f0a04SGreg Roach public $addlink; 59a25f0a04SGreg Roach 60a25f0a04SGreg Roach /** 61a25f0a04SGreg Roach * @param string $style 62a25f0a04SGreg Roach */ 63e2d2f0ebSGreg Roach public function __construct($style = "") { 64a25f0a04SGreg Roach $this->text = ""; 65a25f0a04SGreg Roach if (!empty($style)) { 66a25f0a04SGreg Roach $this->styleName = $style; 67a25f0a04SGreg Roach } else { 68a25f0a04SGreg Roach $this->styleName = "footnote"; 69a25f0a04SGreg Roach } 70a25f0a04SGreg Roach 71a25f0a04SGreg Roach return 0; 72a25f0a04SGreg Roach } 73a25f0a04SGreg Roach 74a25f0a04SGreg Roach /** 75a25f0a04SGreg Roach * @param $t 76a25f0a04SGreg Roach * 77*cbc1590aSGreg Roach * @return int 78a25f0a04SGreg Roach */ 79ffd703eaSGreg Roach public function addText($t) { 80a25f0a04SGreg Roach $t = trim($t, "\r\n\t"); 81a25f0a04SGreg Roach $t = str_replace(array("<br>", " "), array("\n", " "), $t); 82a25f0a04SGreg Roach $t = strip_tags($t); 83a25f0a04SGreg Roach $t = htmlspecialchars_decode($t); 84a25f0a04SGreg Roach $this->text .= $t; 85a25f0a04SGreg Roach 86a25f0a04SGreg Roach return 0; 87a25f0a04SGreg Roach } 88a25f0a04SGreg Roach 89a25f0a04SGreg Roach /** 90a25f0a04SGreg Roach * @param $wrapwidth 91a25f0a04SGreg Roach * @param $cellwidth 92a25f0a04SGreg Roach * 93a25f0a04SGreg Roach * @return mixed 94a25f0a04SGreg Roach */ 95ffd703eaSGreg Roach public function setWrapWidth($wrapwidth, $cellwidth) { 96a25f0a04SGreg Roach $this->wrapWidthCell = $cellwidth; 97a25f0a04SGreg Roach if (strpos($this->numText, "\n") !== false) { 98a25f0a04SGreg Roach $this->wrapWidthRemaining = $cellwidth; 99a25f0a04SGreg Roach } else { 100a25f0a04SGreg Roach $this->wrapWidthRemaining = $wrapwidth; 101a25f0a04SGreg Roach } 102a25f0a04SGreg Roach 103a25f0a04SGreg Roach return $this->wrapWidthRemaining; 104a25f0a04SGreg Roach } 105a25f0a04SGreg Roach 106a25f0a04SGreg Roach /** 107a25f0a04SGreg Roach * @param $n 108a25f0a04SGreg Roach * 109*cbc1590aSGreg Roach * @return int 110a25f0a04SGreg Roach */ 111ffd703eaSGreg Roach public function setNum($n) { 112a25f0a04SGreg Roach $this->num = $n; 113a25f0a04SGreg Roach $this->numText = "$n "; 114a25f0a04SGreg Roach 115a25f0a04SGreg Roach return 0; 116a25f0a04SGreg Roach } 117a25f0a04SGreg Roach 118a25f0a04SGreg Roach /** 119a25f0a04SGreg Roach * @param $a 120a25f0a04SGreg Roach * 121*cbc1590aSGreg Roach * @return int 122a25f0a04SGreg Roach */ 123ffd703eaSGreg Roach public function setAddlink($a) { 124a25f0a04SGreg Roach $this->addlink = $a; 125a25f0a04SGreg Roach 126a25f0a04SGreg Roach return 0; 127a25f0a04SGreg Roach } 128a25f0a04SGreg Roach} 129