File manager - Edit - /home/jardides/www/Jardi-design/images/administrator/router.php.tar
Back
home/jardides/www/Jardi-design/components/com_banners/router.php 0000644 00000005232 15247074132 0021120 0 ustar 00 <?php /** * @package Joomla.Site * @subpackage com_banners * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; /** * Routing class from com_banners * * @since 3.3 */ class BannersRouter extends JComponentRouterBase { /** * Build the route for the com_banners component * * @param array &$query An array of URL arguments * * @return array The URL arguments to use to assemble the subsequent URL. * * @since 3.3 */ public function build(&$query) { $segments = array(); if (isset($query['task'])) { $segments[] = $query['task']; unset($query['task']); } if (isset($query['id'])) { $segments[] = $query['id']; unset($query['id']); } $total = count($segments); for ($i = 0; $i < $total; $i++) { $segments[$i] = str_replace(':', '-', $segments[$i]); } return $segments; } /** * Parse the segments of a URL. * * @param array &$segments The segments of the URL to parse. * * @return array The URL attributes to be used by the application. * * @since 3.3 */ public function parse(&$segments) { $total = count($segments); $vars = array(); for ($i = 0; $i < $total; $i++) { $segments[$i] = preg_replace('/-/', ':', $segments[$i], 1); } // View is always the first element of the array $count = count($segments); if ($count) { $count--; $segment = array_shift($segments); if (is_numeric($segment)) { $vars['id'] = $segment; } else { $vars['task'] = $segment; } } if ($count) { $segment = array_shift($segments); if (is_numeric($segment)) { $vars['id'] = $segment; } } return $vars; } } /** * Build the route for the com_banners component * * This function is a proxy for the new router interface * for old SEF extensions. * * @param array &$query An array of URL arguments * * @return array The URL arguments to use to assemble the subsequent URL. * * @since 3.3 * @deprecated 4.0 Use Class based routers instead */ function bannersBuildRoute(&$query) { $router = new BannersRouter; return $router->build($query); } /** * Parse the segments of a URL. * * This function is a proxy for the new router interface * for old SEF extensions. * * @param array $segments The segments of the URL to parse. * * @return array The URL attributes to be used by the application. * * @since 3.3 * @deprecated 4.0 Use Class based routers instead */ function bannersParseRoute($segments) { $router = new BannersRouter; return $router->parse($segments); } home/jardides/www/Jardi-design/components/com_j2store/router.php 0000644 00000040321 15247116720 0021056 0 ustar 00 <?php /** * @package J2Store * @copyright Copyright (c)2014-17 Ramesh Elamathi / J2Store.org * @license GNU GPL v3 or later */ // No direct access to this file defined ( '_JEXEC' ) or die (); // Load FOF // Include F0F if(!defined('F0F_INCLUDED')) { require_once JPATH_LIBRARIES . '/f0f/include.php'; } require_once(JPATH_ADMINISTRATOR.'/components/com_j2store/helpers/router.php'); function J2StoreBuildRoute(&$query) { $router = new J2StoreRouter(); return $router->build($query); } function J2StoreParseRoute($segments) { $router = new J2StoreRouter(); return $router->parse($segments); } class J2StoreRouter extends JComponentRouterBase { public function build(&$query) { $segments = array (); // If there is only the option and Itemid, let Joomla! decide on the naming scheme if (isset ( $query ['option'] ) && isset ( $query ['Itemid'] ) && ! isset ( $query ['view'] ) && ! isset ( $query ['task'] ) && ! isset ( $query ['layout'] ) && ! isset ( $query ['id'] ) && ! isset ( $query ['filter_tag'] )) { return $segments; } $menus = JMenu::getInstance ( 'site' ); $view = J2StoreRouterHelper::getAndPop ( $query, 'view', 'carts' ); $task = J2StoreRouterHelper::getAndPop ( $query, 'task' ); $layout = J2StoreRouterHelper::getAndPop ( $query, 'layout' ); $id = J2StoreRouterHelper::getAndPop ( $query, 'id' ); $Itemid = J2StoreRouterHelper::getAndPop ( $query, 'Itemid' ); $catid = J2StoreRouterHelper::getAndPop ( $query, 'catid' ); $tag = J2StoreRouterHelper::getAndPop ( $query, 'tag' ); $filter_tag = J2StoreRouterHelper::getAndPop ( $query, 'filter_tag' ); $parent_tag = J2StoreRouterHelper::getAndPop ( $query, 'parent_tag' ); $j2storesource = J2StoreRouterHelper::getAndPop ( $query, 'j2storesource' ); $lang = J2StoreRouterHelper::getAndPop ( $query, 'lang' ); // $orderpayment_type = J2StoreRouterHelper::getAndPop($query, 'orderpayment_type'); // $paction = J2StoreRouterHelper::getAndPop($query, 'paction'); $qoptions = array ( 'option' => 'com_j2store', 'view' => $view, 'task' => $task, 'filter_tag' => $filter_tag, 'parent_tag' => $parent_tag, 'tag' => $tag, 'id' => $id ); switch ($view) { case 'carts' : case 'cart' : // Is it a mycart menu? if ($Itemid) { $menu = $menus->getItem ( $Itemid ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'carts'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : ''; // No, we have to find another root if (($mView != 'cart' && $mView != 'carts')) $Itemid = null; } if (empty ( $Itemid )) { $menu = J2StoreRouterHelper::findMenuCarts ( $qoptions ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'carts'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : ''; $Itemid = empty ( $menu ) ? null : $menu->id; } if (empty ( $Itemid )) { // No menu found, let's add a segment manually $segments [] = 'carts'; if (isset ( $task )) { $segments [] = $task; } } else { // sometimes we need task // $segments [] = 'carts'; if (isset ( $mTask ) && ! empty ( $mTask )) { $segments [] = $mTask; } elseif (isset ( $task )) { $segments [] = $task; } // Joomla! will let the menu item naming work its magic $query ['Itemid'] = $Itemid; } break; case 'checkouts' : case 'checkout' : // Is it a browser menu? if ($Itemid) { $menu = $menus->getItem ( $Itemid ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'checkout'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : ''; // $mOPType = isset($menu->query['orderpayment_type']) ? $menu->query['orderpayment_type'] : ''; // $mPaction = isset($menu->query['paction']) ? $menu->query['paction'] : ''; // No, we have to find another root if (($mView != 'checkout' && $mView != 'checkouts')) $Itemid = null; } if (empty ( $Itemid )) { $menu = J2StoreRouterHelper::findMenu ( $qoptions ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'checkout'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : ''; $Itemid = empty ( $menu ) ? null : $menu->id; } if (empty ( $Itemid )) { // No menu found, let's add a segment based on the layout $segments [] = 'checkout'; if (isset ( $task )) { $segments [] = $task; } // if(isset($orderpayment_type)) { // $segments[] = $orderpayment_type; // } // if(isset($paction)) { // $segments[] = $paction; // } } else { // sometimes we need task $is_task_set = false; if (isset ( $mTask )) { if (!empty($mTask)) { $segments [] = $mTask; $is_task_set = true; } } if ($is_task_set==false && isset($task)) { if (!empty($task)) { $segments [] = $task; $is_task_set = true; } } // add the order payment type /* * if(isset($mOPType)) { $segments[] = $mOPType; } if(isset($mPaction)) { $segments[] = $mPaction; } */ // Joomla! will let the menu item naming work its magic $query ['Itemid'] = $Itemid; } break; case 'myprofile' : // Is it a browser menu? if ($Itemid) { $menu = $menus->getItem ( $Itemid ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'myprofile'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : ''; // $mOPType = isset($menu->query['orderpayment_type']) ? $menu->query['orderpayment_type'] : ''; // $mPaction = isset($menu->query['paction']) ? $menu->query['paction'] : ''; // No, we have to find another root if (($mView != 'myprofile')) $Itemid = null; } if (empty ( $Itemid )) { $menu = J2StoreRouterHelper::findMenu ( $qoptions ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'myprofile'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : ''; $Itemid = empty ( $menu ) ? null : $menu->id; } if (empty ( $Itemid )) { // No menu found, let's add a segment based on the layout $segments [] = 'myprofile'; if (isset ( $task )) { $segments [] = $task; } } else { // sometimes we need task if (isset ( $mTask ) && ! empty ( $mTask ) && $mView != 'checkout') { $segments [] = $mTask; } elseif (isset ( $qoptions ['task'] ) && $mView != 'checkout') { $segments [] = $qoptions ['task']; } // Joomla! will let the menu item naming work its magic $query ['Itemid'] = $Itemid; } break; case 'products' : $other_tasks = array('compare','wishlist'); if ( isset ( $task ) && in_array($task, $other_tasks) ) { $Itemid = null; } // Is it a browser menu? if ($Itemid) { $menu = $menus->getItem ( $Itemid ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'products'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : $task; $mId = isset ( $menu->query ['id'] ) ? $menu->query ['id'] : $id; // No, we have to find another root if (($mView != 'products')) $Itemid = null; } if (empty ( $Itemid )) { // special find. Needed because we will be using order links under checkout view $menu = J2StoreRouterHelper::findProductMenu ( $qoptions ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'products'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : $task; $mId = isset ( $menu->query ['id'] ) ? $menu->query ['id'] : $id; $Itemid = isset ( $menu->id ) ? $menu->id : null; } if (empty ( $Itemid )) { // No menu found, let's add a segment based on the layout $segments [] = 'products'; if (isset ( $id )) { if (strpos ( $id, ':' ) === false) { $segments [] = J2StoreRouterHelper::getItemAlias ( $id , $lang ); } } elseif (isset ( $mId )) { if (strpos ( $mId, ':' ) === false) { $segments [] = J2StoreRouterHelper::getItemAlias ( $mId , $lang); } } $other_tasks = array('compare','wishlist', 'removeproductprice', 'deleteProductOptionvalues'); if ( isset ( $task ) && in_array($task, $other_tasks) ) { $segments [] = $task ; } } else { // Joomla! will let the menu item naming work its magic if (isset ( $mId )) { if (strpos ( $mId, ':' ) === false) { $segments [] = J2StoreRouterHelper::getItemAlias ( $mId , $lang); } } elseif (isset ( $id )) { if (strpos ( $id, ':' ) === false) { $segments [] = J2StoreRouterHelper::getItemAlias ( $id , $lang); } } $query ['Itemid'] = $Itemid; } break; case 'producttags': $other_tasks = array('compare','wishlist'); if ( isset ( $task ) && in_array($task, $other_tasks) ) { $Itemid = null; } // Is it a browser menu? if ($Itemid) { $menu = $menus->getItem ( $Itemid ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'producttags'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : $task; //we might not have task here. We will however have a tag $mTag = isset($menu->query['tag']) ? $menu->query ['tag'] : $tag; $mId = isset ( $menu->query ['id'] ) ? $menu->query ['id'] : $id; // No, we have to find another root if (($mView != 'producttags')) $Itemid = null; } if (empty ( $Itemid )) { //Find the correct menu. $menu = J2StoreRouterHelper::findProductTagsMenu( $qoptions ); $mView = isset ( $menu->query ['view'] ) ? $menu->query ['view'] : 'producttags'; $mTask = isset ( $menu->query ['task'] ) ? $menu->query ['task'] : $task; $mTag = isset($menu->query['tag']) ? $menu->query ['tag'] : $tag; $mId = isset ( $menu->query ['id'] ) ? $menu->query ['id'] : $id; $Itemid = isset ( $menu->id ) ? $menu->id : null; } if (empty ( $Itemid )) { // No menu found, let's add a segment based on the layout $segments [] = 'producttags'; if(!empty( $filter_tag )){ $segments [] = $filter_tag; } if (isset ( $id )) { if (strpos ( $id, ':' ) === false) { if(count ( $segments ) == 1){ $segments [] = J2StoreRouterHelper::getTagAliasByItem ( $id ); } $segments [] = J2StoreRouterHelper::getItemAlias ( $id, $lang ); } } elseif (isset ( $mId )) { if (strpos ( $mId, ':' ) === false) { $segments [] = J2StoreRouterHelper::getItemAlias ( $mId , $lang); } } $other_tasks = array('compare','wishlist', 'removeproductprice', 'deleteProductOptionvalues'); if ( isset ( $task ) && in_array($task, $other_tasks) ) { $segments [] = $task ; } } else { if (isset ( $mId )) { //we have an id. That indicates a product detail view. Set the task to view if (strpos ( $mId, ':' ) === false) { $segments [] = J2StoreRouterHelper::getItemAlias ( $mId , $lang); } } elseif (isset ( $id )) { if (strpos ( $id, ':' ) === false) { if(count ( $segments ) == 1){ $segments [] = J2StoreRouterHelper::getTagAliasByItem ( $id ); } $segments [] = J2StoreRouterHelper::getItemAlias ( $id , $lang); } } $query ['Itemid'] = $Itemid; } break; } return $segments; } /** * @param array $segments * @return array * @throws Exception */ public function parse(&$segments) { $query = array (); $menus = JMenu::getInstance ( 'site' ); $menu = $menus->getActive (); $vars = array (); $total = count ( $segments ); /*for($i = 0; $i < $total; $i ++) { $segments [$i] = preg_replace ( '/-/', ':', $segments [$i], 1 ); }*/ if (is_null ( $menu ) && count ( $segments )) { if ($segments [0] == 'cart' || $segments [0] == 'carts') { $vars ['view'] = $segments [0]; if (isset ( $segments [1] )) { $vars ['task'] = $segments [1]; } } if ($segments [0] == 'checkout' || $segments [0] == 'checkouts') { $vars ['view'] = $segments [0]; if (isset ( $segments [1] )) { $vars ['task'] = $segments [1]; } } if ($segments [0] == 'myprofile') { $vars ['view'] = $segments [0]; if (isset ( $segments [1] )) { $vars ['task'] = $segments [1]; } } if ($segments [0] == 'products') { $vars ['view'] = $segments [0]; $other_tasks = array('compare','wishlist', 'removeproductprice', 'deleteProductOptionvalues'); if ( isset ( $segments [1] ) && in_array($segments [1], $other_tasks) ) { $vars['task'] = $segments [1]; }elseif (isset ( $segments [1] ) && $segments[1] != 'view' ) { $vars ['task'] = 'view'; // fixed for mod_j2products showed in home page $vars ['id'] = J2StoreRouterHelper::getArticleByAlias($segments [1]); }elseif(isset($segments[1]) && $segments[1] == 'view') { // old routing pattern detected. Send the customer to the correct page $vars ['task'] = 'view'; if(isset($segments[2])) { // fixed for mod_j2products showed in home page $vars ['id'] = J2StoreRouterHelper::getArticleByAlias($segments [2]); } } } if ($segments [0] == 'producttags') { $vars ['view'] = $segments [0]; $vars ['task'] = 'browse'; if(isset($segments[1])) { $vars['tag'] = $segments[1]; } if(isset($segments[2])) { $vars['filter_tag'] = $segments[2]; } } } else { if (count ( $segments )) { $mView = $menu->query ['view']; if (isset ( $mView ) && ($mView == 'cart' || $mView == 'carts')) { $vars ['view'] = $mView; if (isset ( $segments [0] )) { $vars ['task'] = $segments [0]; } } elseif ($segments [0] == 'cart' || $segments [0] == 'carts') { $vars ['view'] = $segments [0]; if (isset ( $segments [1] )) { $vars ['task'] = $segments [1]; } } if (isset ( $mView ) && ($mView == 'checkout' || $mView == 'checkouts')) { $vars ['view'] = $mView; if (isset ( $segments [0] )) { $vars ['task'] = $segments [0]; } } elseif ($segments [0] == 'checkout' || $segments [0] == 'checkouts') { $vars ['view'] = $segments [0]; if (isset ( $segments [1] )) { $vars ['task'] = $segments [1]; } } if (isset ( $mView ) && $mView == 'myprofile') { $vars ['view'] = $mView; if (isset ( $segments [0] )) { $vars ['task'] = $segments [0]; } } elseif ($segments [0] == 'myprofile') { $vars ['view'] = $segments [0]; if (isset ( $segments [1] )) { $vars ['task'] = $segments [1]; } } if (isset ( $mView ) && $mView == 'products') { $vars ['view'] = 'products'; $other_tasks = array('compare','wishlist'); if ( isset ( $segments [0] ) && in_array($segments [0], $other_tasks) ) { $vars['task'] = $segments [0]; }elseif (isset ( $segments [0] ) && $segments[0] != 'view' ) { $vars ['task'] = 'view'; $vars ['id'] = J2StoreRouterHelper::getArticleByAlias($segments [0]); }elseif(isset($segments[0]) && $segments[0] == 'view') { //old routing pattern. Re-route correct $vars['task'] = 'view'; if (isset ( $segments [1] )) { $vars ['id'] = J2StoreRouterHelper::getArticleByAlias($segments [1]); } } } elseif ($segments [0] == 'products') { $vars ['view'] = $segments [0]; $other_tasks = array('compare','wishlist'); if ( isset ( $segments [1] ) && in_array($segments [1], $other_tasks) ) { $vars['task'] = $segments [1]; }elseif (isset ( $segments [1] ) && $segments[1] != 'view') { // this will be the id of the product or the alias $vars ['task'] = 'view'; $vars ['id'] = J2StoreRouterHelper::getArticleByAlias($segments [2]); }elseif (isset ( $segments [1] ) && $segments[1] == 'view') { $vars ['task'] = 'view'; if (isset ( $segments [2] )) { $vars ['id'] = J2StoreRouterHelper::getArticleByAlias($segments[2]); } } } if (isset ( $mView ) && $mView == 'producttags') { $vars ['view'] = 'producttags'; if(isset($segments[0])) { $vars['task'] = 'view'; //we also have an id $vars['id'] = J2StoreRouterHelper::getArticleByAlias($segments [0]); $vars['tag'] = $menu->query['tag']; } } } } return $vars; } } home/jardides/www/Jardi-design/components/com_phocadownload/router.php 0000644 00000012552 15247117322 0022314 0 ustar 00 <?php /* * @package Joomla 1.5 * @copyright Copyright (C) 2005 Open Source Matters. All rights reserved. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php * * @component Phoca Download * @copyright Copyright (C) Jan Pavelka www.phoca.cz * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL */ /** * Method to build Route * @param array $query */ function PhocaDownloadBuildRoute(&$query) { static $items; $segments = array(); $itemid = null; // Break up the weblink/category id into numeric and alias values. if (isset($query['id']) && strpos($query['id'], ':')) { list($query['id'], $query['alias']) = explode(':', $query['id'], 2); } // Break up the category id into numeric and alias values. /* if (isset($query['catid']) && strpos($query['catid'], ':')) { list($query['catid'], $query['catalias']) = explode(':', $query['catid'], 2); }*/ // Get the menu items for this component. if (!$items) { $app = JFactory::getApplication(); $menu = $app->getMenu(); $items = $menu->getItems('component', 'com_phocadownload'); } // Search for an appropriate menu item. if (is_array($items)) { // If only the option and itemid are specified in the query, return that item. if (!isset($query['view']) && !isset($query['id']) && !isset($query['catid']) && !isset($query['download']) && isset($query['Itemid'])) { $itemid = (int) $query['Itemid']; } // ------------------------------------------------------ // Search for a specific link based on the critera given. if (!$itemid) { foreach ($items as $item) { // Check if this menu item links to this view. if (isset($item->query['view']) && $item->query['view'] == 'category' && isset($query['view']) && $query['view'] != 'file' && isset($query['view']) && $query['view'] != 'play' && isset($item->query['id']) && isset($query['id']) && $item->query['id'] == $query['id']) { $itemid = $item->id; } else if (isset($item->query['view']) && $item->query['view'] == 'file' && isset($query['view']) && $query['view'] != 'category' && isset($query['view']) && $query['view'] != 'play' && isset($item->query['id']) && isset($query['id']) && $item->query['id'] == $query['id']) { $itemid = $item->id; } else if (isset($item->query['view']) && $item->query['view'] == 'play' && isset($query['view']) && $query['view'] != 'category' && isset($query['view']) && $query['view'] != 'file' && isset($item->query['id']) && isset($query['id']) && $item->query['id'] == $query['id']) { $itemid = $item->id; } } } } // Check if the router found an appropriate itemid. if (!$itemid) { // Check if a category was specified if (isset($query['id'])) { // Check if a id was specified. if (isset($query['alias'])) { $query['id'] .= ':'.$query['alias']; } // Push the id onto the stack. //$segments[] = $query['id']; if(isset($query['view'])) {$segments[] = $query['view'];} $segments[] = $query['id']; unset($query['view']); unset($query['id']); unset($query['alias']); unset($query['catid']); unset($query['catalias']); } else { // Categories view. unset($query['view']); } } else { $query['Itemid'] = $itemid; // Remove the unnecessary URL segments. unset($query['view']); unset($query['id']); unset($query['alias']); } return $segments; } /** * Method to parse Route * @param array $segments */ function PhocaDownloadParseRoute($segments) { $vars = array(); //Get the active menu item $app = JFactory::getApplication(); $menu = $app->getMenu(); $item = $menu->getActive(); // Count route segments $count = count($segments); //Standard routing if(!isset($item)) { if($count == 3 ) { $vars['view'] = $segments[$count - 3]; } else if ($count == 2) { $vars['view'] = $segments[$count - 2]; } else { $vars['view'] = 'category'; } $vars['id'] = $segments[$count - 1]; } else { //Handle View and Identifier switch($item->query['view']) { case 'categories' : if($count == 1) { $vars['view'] = 'categories'; $vars['id'] = $segments[$count-1]; } if($count == 2) { $vars['view'] = $segments[$count-2]; $vars['id'] = $segments[$count-1]; } break; case 'category' : if($count == 1) { $vars['view'] = 'category'; } if($count == 2) { $vars['view'] = $segments[$count-2]; $vars['id'] = $segments[$count-1]; } break; case 'file' : if($count == 1) { $vars['view'] = 'file'; } if($count == 2) { $vars['view'] = $segments[$count-2]; $vars['id'] = $segments[$count-1]; } break; case 'play' : if($count == 1) { $vars['view'] = 'play'; } if($count == 2) { $vars['view'] = $segments[$count-2]; $vars['id'] = $segments[$count-1]; } break; // Guestbook Report case 'guestbook' : if($count == 1) { $vars['view'] = 'guestbook'; } if($count == 2) { $vars['view'] = $segments[$count-2]; $vars['id'] = $segments[$count-1]; } break; case 'download' : if($count == 1) { $vars['view'] = 'download'; } if($count == 2) { $vars['view'] = $segments[$count-2]; $vars['id'] = $segments[$count-1]; } break; } } return $vars; } ?>