/** * Constructor * * @return void * @since 1.5.5 */ public function __construct($config = array()) { parent::__construct($config); $this->_ambit = JoomAmbit::getInstance(); $this->_config = JoomConfig::getInstance(); $this->_mainframe = JFactory::getApplication('site'); $this->_user = JFactory::getUser(); $this->_doc = JFactory::getDocument(); JHtml::addIncludePath(JPATH_COMPONENT_ADMINISTRATOR . '/helpers/html'); // If we are just displaying an image we don't need anything else if (JRequest::getCmd('format') == 'raw' || JRequest::getCmd('format') == 'jpg' || JRequest::getCmd('format') == 'json' || JRequest::getCmd('format') == 'feed') { return; } // Add the CSS file generated from backend settings $this->_doc->addStyleSheet($this->_ambit->getStyleSheet($this->_config->getStyleSheetName())); // Add the main CSS file $this->_doc->addStyleSheet($this->_ambit->getStyleSheet('joomgallery.css')); // Add the RTL CSS file if an RTL language is used if (JFactory::getLanguage()->isRTL()) { $this->_doc->addStyleSheet($this->_ambit->getStyleSheet('joomgallery_rtl.css')); } // Add individual CSS file if it exists if (file_exists(JPATH_ROOT . '/media/joomgallery/css/joom_local.css')) { $this->_doc->addStyleSheet($this->_ambit->getStyleSheet('joom_local.css')); } $pngbehaviour = " <!-- Do not edit IE conditional style below -->" . "\n" . " <!--[if lte IE 6]>" . "\n" . " <style type=\"text/css\">\n" . " .pngfile {\n" . " behavior:url('" . JURI::root() . "media/joomgallery/js/pngbehavior.htc') !important;\n" . " }\n" . " </style>\n" . " <![endif]-->" . "\n" . " <!-- End Conditional Style -->"; $this->_doc->addCustomTag($pngbehaviour); // Set documents meta data taken from menu entry definition $params = $this->_mainframe->getParams(); if ($params->get('menu-meta_description')) { $this->_doc->setDescription($params->get('menu-meta_description')); } if ($params->get('menu-meta_keywords')) { $this->_doc->setMetadata('keywords', $params->get('menu-meta_keywords')); } if ($params->get('robots')) { $this->_doc->setMetadata('robots', $params->get('robots')); } // Page title $pagetitle = JoomHelper::addSitenameToPagetitle($this->_doc->getTitle()); $this->_doc->setTitle($pagetitle); // Check for alternative layout only if this is not the active menu item $active = $this->_mainframe->getMenu()->getActive(); if (!$active || strpos($active->link, 'view=' . $this->getName()) === false) { // Get the default layout from the configuration if ($layout = $this->_config->get('jg_alternative_layout')) { $this->setLayout($layout); } } }