/** * set Sef Link * * @param string $link * @param int $useDefaultItemId - (0 - current itemid, 1 - shop page itemid, 2 -manufacturer itemid) * @param int $redirect */ function SEFLink($link, $useDefaultItemId = 0, $redirect = 0, $ssl = null) { $app = JFactory::getApplication(); JPluginHelper::importPlugin('jshoppingproducts'); $dispatcher = JDispatcher::getInstance(); $dispatcher->trigger('onLoadJshopSefLink', array(&$link, &$useDefaultItemId, &$redirect, &$ssl)); $defaultItemid = getDefaultItemid(); if ($useDefaultItemId == 2) { $Itemid = getShopManufacturerPageItemid(); if (!$Itemid) { $Itemid = $defaultItemid; } } elseif ($useDefaultItemId == 1) { $Itemid = $defaultItemid; } else { $Itemid = JRequest::getInt('Itemid'); if (!$Itemid) { $Itemid = $defaultItemid; } } $dispatcher->trigger('onAfterLoadJshopSefLinkItemid', array(&$Itemid, &$link, &$useDefaultItemId, &$redirect, &$ssl)); if (!preg_match('/Itemid=/', $link)) { if (!preg_match('/\\?/', $link)) { $sp = "?"; } else { $sp = "&"; } $link .= $sp . 'Itemid=' . $Itemid; } $link = JRoute::_($link, $redirect ? false : true, $ssl); if ($app->isAdmin()) { $link = str_replace('/administrator', '', $link); } return $link; }
function SEFLinkFromAdmin($link, $fullurl = 0, $langprefix = '') { $config = JFactory::getConfig(); $app = JApplication::getInstance('site'); $router = $app->getRouter(); if (!preg_match('/Itemid/', $link)) { $Itemid = getDefaultItemid(); if (preg_match('/\\?/', $link)) { $sp = "&"; } else { $sp = "?"; } $link .= $sp . 'Itemid=' . $Itemid; } $uri = $router->build($link); $url = $uri->toString(); $url = str_replace('/administrator', '', $url); if ($langprefix != '') { if ($config->get('sef_rewrite')) { $url = "/" . $langprefix . $url; } else { $url = str_replace("index.php", "index.php/" . $langprefix, $url); } } if ($fullurl) { $juri = JURI::getInstance(); $liveurlhost = $juri->toString(array("scheme", 'host', 'port')); $url = $liveurlhost . $url; } return $url; }