Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
100.00% |
11 / 11 |
|
100.00% |
1 / 1 |
CRAP | |
100.00% |
1 / 1 |
Link | |
100.00% |
11 / 11 |
|
100.00% |
1 / 1 |
3 | |
100.00% |
1 / 1 |
write | |
100.00% |
11 / 11 |
|
100.00% |
1 / 1 |
3 |
1 | <?php |
2 | /** |
3 | * This file is part of PHPWord - A pure PHP library for reading and writing |
4 | * word processing documents. |
5 | * |
6 | * PHPWord is free software distributed under the terms of the GNU Lesser |
7 | * General Public License version 3 as published by the Free Software Foundation. |
8 | * |
9 | * For the full copyright and license information, please read the LICENSE |
10 | * file that was distributed with this source code. For the full list of |
11 | * contributors, visit https://github.com/PHPOffice/PHPWord/contributors. |
12 | * |
13 | * @see https://github.com/PHPOffice/PHPWord |
14 | * |
15 | * @license http://www.gnu.org/licenses/lgpl.txt LGPL version 3 |
16 | */ |
17 | |
18 | namespace PhpOffice\PhpWord\Writer\HTML\Element; |
19 | |
20 | use PhpOffice\PhpWord\Writer\HTML; |
21 | |
22 | /** |
23 | * Link element HTML writer. |
24 | * |
25 | * @since 0.10.0 |
26 | */ |
27 | class Link extends Text |
28 | { |
29 | /** |
30 | * Write link. |
31 | * |
32 | * @return string |
33 | */ |
34 | public function write() |
35 | { |
36 | if (!$this->element instanceof \PhpOffice\PhpWord\Element\Link) { |
37 | return ''; |
38 | } |
39 | |
40 | $prefix = $this->element->isInternal() ? '#' : ''; |
41 | $content = $this->writeOpening(); |
42 | $content .= "<a href=\"{$prefix}" |
43 | . $this->parentWriter->escapeHTML($this->element->getSource()) |
44 | . '">' |
45 | . $this->parentWriter->escapeHTML($this->element->getText()) |
46 | . '</a>'; |
47 | $content .= $this->writeClosing(); |
48 | |
49 | return $content; |
50 | } |
51 | } |