Merge pull request #11080 from owncloud/addheader-text-2

Fix the addHeader tag attributes text methods to not ignore the text parameter
This commit is contained in:
Vincent Petry 2014-10-30 18:13:46 +01:00
commit bed81ea854
6 changed files with 31 additions and 39 deletions

View file

@ -21,15 +21,7 @@
<?php foreach ($_['jsfiles'] as $jsfile): ?>
<script type="text/javascript" src="<?php print_unescaped($jsfile); ?>"></script>
<?php endforeach; ?>
<?php foreach ($_['headers'] as $header): ?>
<?php
print_unescaped('<'.$header['tag'].' ');
foreach ($header['attributes'] as $name => $value) {
print_unescaped("$name='$value' ");
};
print_unescaped('/>');
?>
<?php endforeach; ?>
<?php print_unescaped($_['headers']); ?>
</head>
<body id="body-public">
<noscript><div id="nojavascript"><div><?php print_unescaped($l->t('This application requires JavaScript for correct operation. Please <a href="http://enable-javascript.com/" target="_blank">enable JavaScript</a> and reload the page.')); ?></div></div></noscript>

View file

@ -22,16 +22,7 @@
<?php foreach($_['jsfiles'] as $jsfile): ?>
<script type="text/javascript" src="<?php print_unescaped($jsfile); ?>"></script>
<?php endforeach; ?>
<?php foreach($_['headers'] as $header): ?>
<?php
print_unescaped('<'.$header['tag'].' ');
foreach($header['attributes'] as $name=>$value) {
print_unescaped("$name='$value' ");
};
print_unescaped('/>');
?>
<?php endforeach; ?>
<?php print_unescaped($_['headers']); ?>
</head>
<body id="<?php p($_['bodyid']);?>">
<noscript><div id="nojavascript"><div><?php print_unescaped($l->t('This application requires JavaScript for correct operation. Please <a href="http://enable-javascript.com/" target="_blank">enable JavaScript</a> and reload the page.')); ?></div></div></noscript>

View file

@ -29,15 +29,7 @@
<?php foreach($_['jsfiles'] as $jsfile): ?>
<script type="text/javascript" src="<?php print_unescaped($jsfile); ?>"></script>
<?php endforeach; ?>
<?php foreach($_['headers'] as $header): ?>
<?php
print_unescaped('<'.$header['tag'].' ');
foreach($header['attributes'] as $name=>$value) {
print_unescaped("$name='$value' ");
};
print_unescaped('/>');
?>
<?php endforeach; ?>
<?php print_unescaped($_['headers']); ?>
</head>
<body id="<?php p($_['bodyid']);?>">
<noscript><div id="nojavascript"><div><?php print_unescaped($l->t('This application requires JavaScript for correct operation. Please <a href="http://enable-javascript.com/" target="_blank">enable JavaScript</a> and reload the page.')); ?></div></div></noscript>

View file

@ -158,10 +158,15 @@ class OC_Template extends \OC\Template\Base {
* Add a custom element to the header
* @param string $tag tag name of the element
* @param array $attributes array of attributes for the element
* @param string $text the text content for the element
* @param string $text the text content for the element. If $text is null then the
* element will be written as empty element. So use "" to get a closing tag.
*/
public function addHeader( $tag, $attributes, $text='') {
$this->headers[]=array('tag'=>$tag,'attributes'=>$attributes, 'text'=>$text);
public function addHeader($tag, $attributes, $text=null) {
$this->headers[]= array(
'tag' => $tag,
'attributes' => $attributes,
'text' => $text
);
}
/**
@ -178,12 +183,22 @@ class OC_Template extends \OC\Template\Base {
$page = new OC_TemplateLayout($this->renderas, $this->app);
// Add custom headers
$page->assign('headers', $this->headers, false);
$headers = '';
foreach(OC_Util::$headers as $header) {
$page->append('headers', $header);
$headers .= '<'.OC_Util::sanitizeHTML($header['tag']);
foreach($header['attributes'] as $name=>$value) {
$headers .= ' "'.OC_Util::sanitizeHTML($name).'"="'.OC_Util::sanitizeHTML($value).'"';
}
if ($header['text'] !== null) {
$headers .= '>'.OC_Util::sanitizeHTML($header['text']).'</'.OC_Util::sanitizeHTML($header['tag']).'>';
} else {
$headers .= '/>';
}
}
$page->assign( "content", $data, false );
$page->assign('headers', $headers, false);
$page->assign('content', $data, false );
return $page->fetchPage();
}
else{

View file

@ -388,13 +388,13 @@ class OC_Util {
/**
* Add a custom element to the header
*
* If $text is null then the element will be written as empty element.
* So use "" to get a closing tag.
* @param string $tag tag name of the element
* @param array $attributes array of attributes for the element
* @param string $text the text content for the element
* @return void
*/
public static function addHeader($tag, $attributes, $text = '') {
public static function addHeader($tag, $attributes, $text=null) {
self::$headers[] = array(
'tag' => $tag,
'attributes' => $attributes,

View file

@ -147,11 +147,13 @@ class Util {
/**
* Add a custom element to the header
* If $text is null then the element will be written as empty element.
* So use "" to get a closing tag.
* @param string $tag tag name of the element
* @param array $attributes array of attributes for the element
* @param string $text the text content for the element
*/
public static function addHeader( $tag, $attributes, $text='') {
public static function addHeader($tag, $attributes, $text=null) {
\OC_Util::addHeader($tag, $attributes, $text);
}