TYPO3 CMS  TYPO3_7-6
ExternalViewHelper.php
Go to the documentation of this file.
1 <?php
3 
4 /* *
5  * This script is backported from the TYPO3 Flow package "TYPO3.Fluid". *
6  * *
7  * It is free software; you can redistribute it and/or modify it under *
8  * the terms of the GNU Lesser General Public License, either version 3 *
9  * of the License, or (at your option) any later version. *
10  * *
11  * The TYPO3 project - inspiring people to share! *
12  * */
13 
36 {
40  protected $tagName = 'a';
41 
48  public function initializeArguments()
49  {
51  $this->registerTagAttribute('name', 'string', 'Specifies the name of an anchor');
52  $this->registerTagAttribute('rel', 'string', 'Specifies the relationship between the current document and the linked document');
53  $this->registerTagAttribute('rev', 'string', 'Specifies the relationship between the linked document and the current document');
54  $this->registerTagAttribute('target', 'string', 'Specifies where to open the linked document');
55  }
56 
63  public function render($uri, $defaultScheme = 'http')
64  {
65  $scheme = parse_url($uri, PHP_URL_SCHEME);
66  if ($scheme === null && $defaultScheme !== '') {
67  $uri = $defaultScheme . '://' . $uri;
68  }
69  $this->tag->addAttribute('href', $uri);
70  $this->tag->setContent($this->renderChildren());
71  $this->tag->forceClosingTag(true);
72 
73  return $this->tag->render();
74  }
75 }
registerTagAttribute($name, $type, $description, $required=false, $default=null)