_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 = " " . "\n" ." " . "\n" . " "; $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); } } } /** * HTML view display method * * @param string $tpl The name of the template file to parse * @return void * @since 1.5.5 */ public function display($tpl = null) { $layout = $this->getLayout(); if($layout != 'default' && ($layout != 'list' || JRequest::getCmd('view') != 'favourites')) { JFactory::getLanguage()->load('com_joomgallery.layout.'.$layout); $this->_ambit->set('layout', $layout); if(is_file(JPATH_ROOT.'/media/joomgallery/css/'.$layout.'.css')) { $this->_doc->addStyleSheet($this->_ambit->getStyleSheet($layout.'.css')); } } parent::display($tpl = null); } /** * Returns all found modules published at the given position * * @param string $pos The name of the module position to load * @return string The HTML output of the modules for displaying them * @since 1.5.5 */ public function loadModules($pos) { $html = ''; $modules = JoomHelper::getRenderedModules($pos); if(count($modules)) { ob_start(); foreach($modules as $module): ?>