ActionController: Don't override `X-Icinga-Title` when it's already set

This commit is contained in:
Yonas Habteab 2022-03-09 21:39:17 +01:00 committed by Johannes Meyer
parent 9225462262
commit 4cff1feb8f
1 changed files with 13 additions and 11 deletions

View File

@ -496,18 +496,20 @@ class ActionController extends Zend_Controller_Action
$resp->setReloadCss(true);
}
if ($this->view->title) {
if (preg_match('~[\r\n]~', $this->view->title)) {
// TODO: Innocent exception and error log for hack attempts
throw new IcingaException('No way, guy');
if ($resp->getHeader('X-Icinga-Title') === null) {
if ($this->view->title) {
if (preg_match('~[\r\n]~', $this->view->title)) {
// TODO: Innocent exception and error log for hack attempts
throw new IcingaException('No way, guy');
}
$resp->setHeader(
'X-Icinga-Title',
rawurlencode($this->view->title . ' :: ' . $this->view->defaultTitle),
true
);
} else {
$resp->setHeader('X-Icinga-Title', rawurlencode($this->view->defaultTitle), true);
}
$resp->setHeader(
'X-Icinga-Title',
rawurlencode($this->view->title . ' :: ' . $this->view->defaultTitle),
true
);
} else {
$resp->setHeader('X-Icinga-Title', rawurlencode($this->view->defaultTitle), true);
}
$layout = $this->_helper->layout();