diff --git a/administrator/templates/atum/index.php b/administrator/templates/atum/index.php
index a3d988cfc0a14..681f1a1fbca5a 100644
--- a/administrator/templates/atum/index.php
+++ b/administrator/templates/atum/index.php
@@ -62,7 +62,9 @@
-
+
+
+
diff --git a/libraries/joomla/document/renderer/html/head.php b/libraries/joomla/document/renderer/html/head.php
index dc31ea72c7b60..d1017f36eb0e0 100644
--- a/libraries/joomla/document/renderer/html/head.php
+++ b/libraries/joomla/document/renderer/html/head.php
@@ -9,8 +9,6 @@
defined('JPATH_PLATFORM') or die;
-use Joomla\Utilities\ArrayHelper;
-
/**
* JDocument head renderer
*
@@ -31,335 +29,11 @@ class JDocumentRendererHtmlHead extends JDocumentRenderer
*/
public function render($head, $params = array(), $content = null)
{
- return $this->fetchHead($this->_doc);
- }
-
- /**
- * Generates the head HTML and return the results as a string
- *
- * @param JDocumentHtml $document The document for which the head will be created
- *
- * @return string The head hTML
- *
- * @since 3.5
- * @deprecated 4.0 Method code will be moved into the render method
- */
- public function fetchHead($document)
- {
- // Convert the tagids to titles
- if (isset($document->_metaTags['name']['tags']))
- {
- $tagsHelper = new JHelperTags;
- $document->_metaTags['name']['tags'] = implode(', ', $tagsHelper->getTagNames($document->_metaTags['name']['tags']));
- }
-
- if ($document->getScriptOptions())
- {
- JHtml::_('behavior.core');
- }
-
- // Trigger the onBeforeCompileHead event
- $app = JFactory::getApplication();
- $app->triggerEvent('onBeforeCompileHead');
-
- // Get line endings
- $lnEnd = $document->_getLineEnd();
- $tab = $document->_getTab();
- $tagEnd = ' />';
- $buffer = '';
- $mediaVersion = $document->getMediaVersion();
-
- // Generate charset when using HTML5 (should happen first)
- if ($document->isHtml5())
- {
- $buffer .= $tab . '' . $lnEnd;
- }
-
- // Generate base tag (need to happen early)
- $base = $document->getBase();
-
- if (!empty($base))
- {
- $buffer .= $tab . '' . $lnEnd;
- }
-
- // Generate META tags (needs to happen as early as possible in the head)
- foreach ($document->_metaTags as $type => $tag)
- {
- foreach ($tag as $name => $content)
- {
- if ($type == 'http-equiv' && !($document->isHtml5() && $name == 'content-type'))
- {
- $buffer .= $tab . '' . $lnEnd;
- }
- elseif ($type != 'http-equiv' && !empty($content))
- {
- $buffer .= $tab . '' . $lnEnd;
- }
- }
- }
-
- // Don't add empty descriptions
- $documentDescription = $document->getDescription();
-
- if ($documentDescription)
- {
- $buffer .= $tab . '' . $lnEnd;
- }
-
- // Don't add empty generators
- $generator = $document->getGenerator();
-
- if ($generator)
- {
- $buffer .= $tab . '' . $lnEnd;
- }
-
- $buffer .= $tab . '' . htmlspecialchars($document->getTitle(), ENT_COMPAT, 'UTF-8') . '' . $lnEnd;
-
- // Generate link declarations
- foreach ($document->_links as $link => $linkAtrr)
- {
- $buffer .= $tab . '_styleSheets as $src => $attribs)
- {
- // Check if stylesheet uses IE conditional statements.
- $conditional = isset($attribs['options']) && isset($attribs['options']['conditional']) ? $attribs['options']['conditional'] : null;
-
- // Check if script uses media version.
- if (isset($attribs['options']['version']) && $attribs['options']['version'] && strpos($src, '?') === false
- && ($mediaVersion || $attribs['options']['version'] !== 'auto'))
- {
- $src .= '?' . ($attribs['options']['version'] === 'auto' ? $mediaVersion : $attribs['options']['version']);
- }
-
- $buffer .= $tab;
-
- // This is for IE conditional statements support.
- if (!is_null($conditional))
- {
- $buffer .= '';
- }
-
- $buffer .= $lnEnd;
- }
-
- // Generate stylesheet declarations
- foreach ($document->_style as $type => $content)
- {
- $buffer .= $tab . '' . $lnEnd;
- }
-
- // Generate scripts options
- $scriptOptions = $document->getScriptOptions();
-
- if (!empty($scriptOptions))
- {
- $buffer .= $tab . '' . $lnEnd;
- }
-
- $defaultJsMimes = array('text/javascript', 'application/javascript', 'text/x-javascript', 'application/x-javascript');
- $html5NoValueAttributes = array('defer', 'async');
- $mediaVersion = $document->getMediaVersion();
-
- // Generate script file links
- foreach ($document->_scripts as $src => $attribs)
- {
- // Check if script uses IE conditional statements.
- $conditional = isset($attribs['options']) && isset($attribs['options']['conditional']) ? $attribs['options']['conditional'] : null;
-
- // Check if script uses media version.
- if (isset($attribs['options']['version']) && $attribs['options']['version'] && strpos($src, '?') === false
- && ($mediaVersion || $attribs['options']['version'] !== 'auto'))
- {
- $src .= '?' . ($attribs['options']['version'] === 'auto' ? $mediaVersion : $attribs['options']['version']);
- }
-
- $buffer .= $tab;
-
- // This is for IE conditional statements support.
- if (!is_null($conditional))
- {
- $buffer .= '';
- }
-
- $buffer .= $lnEnd;
- }
-
- // Generate script declarations
- foreach ($document->_script as $type => $content)
- {
- $buffer .= $tab . '' . $lnEnd;
- }
-
- // Output the custom tags - array_unique makes sure that we don't output the same tags twice
- foreach (array_unique($document->_custom) as $custom)
- {
- $buffer .= $tab . $custom . $lnEnd;
- }
+ $buffer = '';
+ $buffer .= (new JDocumentRendererHtmlMetas($this->_doc))->render($head, $params, $content);
+ $buffer .= (new JDocumentRendererHtmlStyles($this->_doc))->render($head, $params, $content);
+ $buffer .= (new JDocumentRendererHtmlScripts($this->_doc))->render($head, $params, $content);
- return ltrim($buffer, $tab);
+ return $buffer;
}
}
diff --git a/libraries/joomla/document/renderer/html/metas.php b/libraries/joomla/document/renderer/html/metas.php
new file mode 100644
index 0000000000000..d9c2287d0e706
--- /dev/null
+++ b/libraries/joomla/document/renderer/html/metas.php
@@ -0,0 +1,121 @@
+_doc->_metaTags['name']['tags']))
+ {
+ $tagsHelper = new JHelperTags;
+ $this->_doc->_metaTags['name']['tags'] = implode(', ', $tagsHelper->getTagNames($this->_doc->_metaTags['name']['tags']));
+ }
+
+ if ($this->_doc->getScriptOptions())
+ {
+ JHtml::_('behavior.core');
+ }
+
+ // Trigger the onBeforeCompileHead event
+ $app = JFactory::getApplication();
+ $app->triggerEvent('onBeforeCompileHead');
+
+ // Get line endings
+ $lnEnd = $this->_doc->_getLineEnd();
+ $tab = $this->_doc->_getTab();
+ $buffer = '';
+
+ // Generate charset when using HTML5 (should happen first)
+ if ($this->_doc->isHtml5())
+ {
+ $buffer .= $tab . '' . $lnEnd;
+ }
+
+ // Generate base tag (need to happen early)
+ $base = $this->_doc->getBase();
+
+ if (!empty($base))
+ {
+ $buffer .= $tab . '' . $lnEnd;
+ }
+
+ // Generate META tags (needs to happen as early as possible in the head)
+ foreach ($this->_doc->_metaTags as $type => $tag)
+ {
+ foreach ($tag as $name => $contents)
+ {
+ if ($type == 'http-equiv' && !($this->_doc->isHtml5() && $name == 'content-type'))
+ {
+ $buffer .= $tab . '' . $lnEnd;
+ }
+ elseif ($type != 'http-equiv' && !empty($contents))
+ {
+ $buffer .= $tab . '' . $lnEnd;
+ }
+ }
+ }
+
+ // Don't add empty descriptions
+ $documentDescription = $this->_doc->getDescription();
+
+ if ($documentDescription)
+ {
+ $buffer .= $tab . '' . $lnEnd;
+ }
+
+ // Don't add empty generators
+ $generator = $this->_doc->getGenerator();
+
+ if ($generator)
+ {
+ $buffer .= $tab . '' . $lnEnd;
+ }
+
+ $buffer .= $tab . '' . htmlspecialchars($this->_doc->getTitle(), ENT_COMPAT, 'UTF-8') . '' . $lnEnd;
+
+ // Generate link declarations
+ foreach ($this->_doc->_links as $link => $linkAtrr)
+ {
+ $buffer .= $tab . '_doc->_getLineEnd();
+ $tab = $this->_doc->_getTab();
+ $buffer = '';
+ $mediaVersion = $this->_doc->getMediaVersion();
+
+ $defaultJsMimes = array('text/javascript', 'application/javascript', 'text/x-javascript', 'application/x-javascript');
+ $html5NoValueAttributes = array('defer', 'async');
+
+ // Generate script file links
+ foreach ($this->_doc->_scripts as $src => $attribs)
+ {
+ // Check if script uses IE conditional statements.
+ $conditional = isset($attribs['options']) && isset($attribs['options']['conditional']) ? $attribs['options']['conditional'] : null;
+
+ // Check if script uses media version.
+ if (isset($attribs['options']['version']) && $attribs['options']['version'] && strpos($src, '?') === false
+ && ($mediaVersion || $attribs['options']['version'] !== 'auto'))
+ {
+ $src .= '?' . ($attribs['options']['version'] === 'auto' ? $mediaVersion : $attribs['options']['version']);
+ }
+
+ $buffer .= $tab;
+
+ // This is for IE conditional statements support.
+ if (!is_null($conditional))
+ {
+ $buffer .= '';
+ }
+
+ $buffer .= $lnEnd;
+ }
+
+ // Generate script declarations
+ foreach ($this->_doc->_script as $type => $contents)
+ {
+ $buffer .= $tab . '' . $lnEnd;
+ }
+
+
+ // Output the custom tags - array_unique makes sure that we don't output the same tags twice
+ foreach (array_unique($this->_doc->_custom) as $custom)
+ {
+ $buffer .= $tab . $custom . $lnEnd;
+ }
+
+ return ltrim($buffer, $tab);
+ }
+}
diff --git a/libraries/joomla/document/renderer/html/styles.php b/libraries/joomla/document/renderer/html/styles.php
new file mode 100644
index 0000000000000..bcd08156cb67d
--- /dev/null
+++ b/libraries/joomla/document/renderer/html/styles.php
@@ -0,0 +1,151 @@
+_doc->_getLineEnd();
+ $tab = $this->_doc->_getTab();
+ $tagEnd = ' />';
+ $buffer = '';
+ $mediaVersion = $this->_doc->getMediaVersion();
+
+ $defaultCssMimes = array('text/css');
+
+ // Generate stylesheet links
+ foreach ($this->_doc->_styleSheets as $src => $attribs)
+ {
+ // Check if stylesheet uses IE conditional statements.
+ $conditional = isset($attribs['options']) && isset($attribs['options']['conditional']) ? $attribs['options']['conditional'] : null;
+
+ // Check if script uses media version.
+ if (isset($attribs['options']['version']) && $attribs['options']['version'] && strpos($src, '?') === false
+ && ($mediaVersion || $attribs['options']['version'] !== 'auto'))
+ {
+ $src .= '?' . ($attribs['options']['version'] === 'auto' ? $mediaVersion : $attribs['options']['version']);
+ }
+
+ $buffer .= $tab;
+
+ // This is for IE conditional statements support.
+ if (!is_null($conditional))
+ {
+ $buffer .= '';
+ }
+
+ $buffer .= $lnEnd;
+ }
+
+ // Generate stylesheet declarations
+ foreach ($this->_doc->_style as $type => $contents)
+ {
+ $buffer .= $tab . '' . $lnEnd;
+ }
+
+ // Generate scripts options
+ $scriptOptions = $this->_doc->getScriptOptions();
+
+ if (!empty($scriptOptions))
+ {
+ $buffer .= $tab . '' . $lnEnd;
+ }
+
+ return ltrim($buffer, $tab);
+ }
+}
diff --git a/templates/aurora/index.php b/templates/aurora/index.php
index e60b55b7d03f7..c8971183d932c 100644
--- a/templates/aurora/index.php
+++ b/templates/aurora/index.php
@@ -89,7 +89,9 @@
-
+
+
+