File manager - Edit - /home/verseaumee/ptitsanes/plugins/solidres/experience/components/com_solidres/views/experiences/view.html.php
Back
<?php /** ------------------------------------------------------------------------ SOLIDRES - Accommodation booking extension for Joomla ------------------------------------------------------------------------ * @author Solidres Team <contact@solidres.com> * @website https://www.solidres.com * @copyright Copyright (C) 2013 - 2019 Solidres. All Rights Reserved. * @license GNU General Public License version 3, or later ------------------------------------------------------------------------ */ defined('_JEXEC') or die; class SolidresViewExperiences extends SRViewLegacy { protected $items; protected $state; protected $pagination; protected $hub = false; protected $hubNavbar = null; protected $defaultHubContent; public $filterForm; public $activeFilters; public function display($tpl = null) { $app = JFactory::getApplication(); SRLayoutHelper::addIncludePath(SRPlugin::getPluginPath('experience') . '/layouts'); if ($app->input->get('ctrl') == 'hub') { $user = JFactory::getUser(); if ($user->guest) { $return = JUri::getInstance()->toString(); $app->redirect(JRoute::_('index.php?option=com_users&view=login&return=' . base64_encode($return), false)); return false; } $partnerId = SRUtilities::getPartnerId(); if (!$partnerId) { throw new JAccessExceptionNotallowed(JText::_('JERROR_ALERTNOAUTHOR'), 403); } JModelLegacy::addIncludePath(SRPlugin::getAdminPath('experience') . '/models'); $model = JModelLegacy::getInstance('ExperiencesBase', 'SolidresModel'); $model->setState('filter.partner_id', $partnerId); $this->setModel($model, true); $this->set('isAdmin', false); $this->set('hub', true); if (SRPlugin::isEnabled('hub')) { $options = ['relative' => true, 'version' => plgSolidresHub::getHashVersion()]; JHtml::_('stylesheet', 'plg_solidres_hub/assets/hub.min.css', $options); JHtml::_('script', 'plg_solidres_hub/assets/hub.min.js', $options); SRLayoutHelper::addIncludePath(SRPlugin::getSitePath('hub') . '/layouts'); $this->hubNavbar = SRLayoutHelper::render('hub.navbar'); } } else { $this->_prepareDocument(); } $this->items = $this->get('Items'); $this->state = $this->get('State'); $this->pagination = $this->get('Pagination'); if (isset($model)) { $this->addToolbar(); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); ob_start(); include SRPlugin::getAdminPath('experience') . '/views/experiences/tmpl/default.php'; $this->defaultHubContent = ob_get_clean(); } if ($errors = $this->get('Errors')) { throw new Exception(implode("\n", $errors), 500); } JHtml::_('stylesheet', 'plg_solidres_experience/assets/experience.min.css', ['relative' => true, 'version' => plgSolidresExperience::getHashVersion()]); parent::display($tpl); } protected function addToolbar() { JLoader::register('SolidresHelper', JPATH_ADMINISTRATOR . '/components/com_solidres/helpers/helper.php'); $canDo = SolidresHelper::getActions(); if ($canDo->get('core.create')) { JToolbarHelper::addNew('experience.add'); } if ($canDo->get('core.edit.state')) { JToolbarHelper::publish('experiences.publish'); JToolbarHelper::unpublish('experiences.unpublish'); } if ($this->state->get('filter.state') != -2 && $canDo->get('core.edit.state')) { JToolbarHelper::trash('experiences.trash'); } elseif ($canDo->get('core.delete')) { JToolbarHelper::deleteList('', 'experiences.delete'); } } protected function _prepareDocument() { $document = JFactory::getDocument(); if ($document->getType() != 'html') { return; } $app = JFactory::getApplication(); $menu = $app->getMenu()->getActive(); if ($menu && isset($menu->query['option']) && isset($menu->query['view']) && $menu->query['option'] == 'com_solidres' && $menu->query['view'] == 'experiences' ) { $params = $menu->getParams(); $title = trim($params->get('page_title')); if (empty($title)) { $title = $app->get('sitename'); } elseif ($app->get('sitename_pagetitles', 0) == 1) { $title = JText::sprintf('JPAGETITLE', $app->get('sitename'), $title); } elseif ($app->get('sitename_pagetitles', 0) == 2) { $title = JText::sprintf('JPAGETITLE', $title, $app->get('sitename')); } if ($title) { if (!empty($menu->query['filter_tag'])) { $tags = Joomla\Utilities\ArrayHelper::toInteger((array) $menu->query['filter_tag']); $db = JFactory::getDbo(); $query = $db->getQuery(true) ->select('a.title') ->from($db->quoteName('#__tags', 'a')) ->where('a.id IN (' . join(',', $tags) . ')'); $db->setQuery($query); if ($results = $db->loadColumn()) { $title .= ' - ' . join(' | ', $results); } } $document->setTitle($title); } if ($desc = $params->get('menu-meta_description')) { $document->setDescription(trim($desc)); } if ($keyWords = $params->get('menu-meta_keywords')) { $document->setMetadata('keywords', $keyWords); } if ($app->input->get('ordering', null) === null) { $ordering = $menu->params->get('ordering', 'name_asc'); switch ($ordering) { case 'name_asc': case 'name_desc': $app->input->set('ordering', 'name'); $app->input->set('direction', substr($ordering, 5)); break; case 'distance_asc': case 'distance_desc': $app->input->set('ordering', 'distance'); $app->input->set('direction', substr($ordering, 9)); break; case 'review': $app->input->set('ordering', 'review'); $app->input->set('direction', 'desc'); break; } } $document->addHeadLink(JUri::getInstance()->toString(), 'canonical'); } } }
| ver. 1.4 |
Github
|
.
| PHP 8.5.7 | Generation time: 0 |
proxy
|
phpinfo
|
Settings