32         if ($aData && isset($aData[
"oxparams"])) {
 
   34             $iEndPos = $oStr->strpos($aData[
"oxparams"], 
"#");
 
   35             $sType = $oStr->substr($aData[
"oxparams"], 0, $iEndPos);
 
   57         if ($aData && isset($aData[
"oxparams"])) {
 
   59             $iStartPos = $oStr->strpos($aData[
"oxparams"], 
"#");
 
   60             $iEndPos = $oStr->strpos($aData[
"oxparams"], 
"#", $iStartPos + 1);
 
   61             $iLang = $oStr->substr($aData[
"oxparams"], $iEndPos + 1);
 
   63             $aList = reset($aList);
 
   79         if ($aData && isset($aData[
"oxparams"])) {
 
   81             $iStartPos = $oStr->strpos($aData[
"oxparams"], 
"#");
 
   82             $iEndPos = $oStr->strpos($aData[
"oxparams"], 
"#", $iStartPos + 1);
 
   83             $iLen = $oStr->strlen($aData[
"oxparams"]);
 
   84             $sId = $oStr->substr($aData[
"oxparams"], $iStartPos + 1, $iEndPos - $iLen);
 
   87             $sId = $oItem->getId();
 
  100         if ($this->_aSelectionList === null) {
 
  101             $this->_aSelectionList = array();
 
  103             $oProduct = 
oxNew(
'oxarticle');
 
  118             $aLangs = $oProduct->getAvailableInLangs();
 
  119             foreach ($aLangs as $iLang => $sLangTitle) {
 
  120                 if ($oTagList = $this->
_getTagList($oProduct, $iLang)) {
 
  121                     $this->_aSelectionList[
"oxtag"][$iLang] = $oTagList;
 
  139         if ($oMainCat = $oArticle->getCategory()) {
 
  140             $sMainCatId = $oMainCat->getId();
 
  147         $sView = getViewName(
'oxobject2category');
 
  149         $sSqlForPriceCategories = $oArticle->getSqlForPriceCategories(
'oxid');
 
  150         $sQuotesArticleId = $oDb->quote($oArticle->getId());
 
  151         $sQ = 
"select oxobject2category.oxcatnid as oxid from {$sView} as oxobject2category " .
 
  152               "where oxobject2category.oxobjectid=" . $sQuotesArticleId . 
" union " . $sSqlForPriceCategories;
 
  154         $oRs = $oDb->execute($sQ);
 
  155         if ($oRs != 
false && $oRs->recordCount() > 0) {
 
  157                 $oCat = 
oxNew(
'oxcategory');
 
  158                 if ($oCat->loadInLang($iLang, current($oRs->fields))) {
 
  159                     if ($sMainCatId == $oCat->getId()) {
 
  161                         $sTitleField = 
'oxcategories__oxtitle';
 
  162                         $sTitle = $oCat->$sTitleField->getRawValue() . 
" " . $sSuffix;
 
  183         if ($oArticle->oxarticles__oxvendorid->value) {
 
  184             $oVendor = 
oxNew(
'oxvendor');
 
  185             if ($oVendor->loadInLang($this->getEditLang(), $oArticle->oxarticles__oxvendorid->value)) {
 
  186                 return array($oVendor);
 
  200         if ($oArticle->oxarticles__oxmanufacturerid->value) {
 
  201             $oManufacturer = 
oxNew(
'oxmanufacturer');
 
  202             if ($oManufacturer->loadInLang($this->getEditLang(), $oArticle->oxarticles__oxmanufacturerid->value)) {
 
  203                 return array($oManufacturer);
 
  218         $oArticleTagList = 
oxNew(
"oxarticletaglist");
 
  219         $oArticleTagList->setLanguage($iLang);
 
  220         $oArticleTagList->load($oArticle->getId());
 
  221         $aTagsList = array();
 
  222         if (count($aTags = $oArticleTagList->getArray())) {
 
  223             $sShopId = $this->
getConfig()->getShopId();
 
  224             $iProdId = $oArticle->getId();
 
  225             foreach ($aTags as $sTitle => $oTagObject) {
 
  227                 $oTag = 
oxNew(
"oxManufacturer");
 
  228                 $oTag->setLanguage($iLang);
 
  229                 $oTag->setId(md5(strtolower($sShopId . $this->
_getStdUrl($iProdId, 
"oxtag", 
"tag", $iLang, $sTitle))));
 
  230                 $oTag->oxmanufacturers__oxtitle = 
new oxField($sTitle);
 
  231                 $aTagsList[] = $oTag;
 
  245         $oCat = 
oxNew(
'oxcategory');
 
  247         return ($oCat->load($this->getActCatId())) ? $oCat : null;
 
  262             $oProduct = 
oxNew(
'oxarticle');
 
  266             foreach ($aList as $oTag) {
 
  267                 if ($oTag->getId() == $sTagId) {
 
  268                     return $oTag->getTitle();
 
  281         $oVendor = 
oxNew(
'oxvendor');
 
  283         return ($this->
getActCatType() == 
'oxvendor' && $oVendor->load($this->getActCatId())) ? $oVendor : null;
 
  293         $oManufacturer = 
oxNew(
'oxmanufacturer');
 
  296         return ($blLoaded) ? $oManufacturer : null;
 
  309             case 'oxmanufacturer':
 
  310                 return 'manufacturer';
 
  393         $oProduct = 
oxNew(
'oxarticle');
 
  394         if ($oProduct->load($this->getEditObjectId())) {
 
  398                     return $oEncoder->getArticleVendorUri($oProduct, $this->
getEditLang());
 
  399                 case 'oxmanufacturer':
 
  400                     return $oEncoder->getArticleManufacturerUri($oProduct, $this->
getEditLang());
 
  402                     return $oEncoder->getArticleTagUri($oProduct, $this->
getActCatLang());
 
  405                         return $oEncoder->getArticleUri($oProduct, $this->
getEditLang());
 
  407                         return $oEncoder->getArticleMainUri($oProduct, $this->
getEditLang());
 
  424     protected function _getStdUrl($sOxid, $sCatType = null, $sListType = null, $iLang = null, $sTag = null)
 
  426         $iLang = $iLang !== null ? $iLang : $this->
getEditLang();
 
  427         $sCatType = $sCatType !== null ? $sCatType : $this->
getActCatType();
 
  428         $sListType = $sListType !== null ? $sListType : $this->
getListType();
 
  432             $aParams[
"listtype"] = $sListType;
 
  435         $oProduct = 
oxNew(
'oxarticle');
 
  436         $oProduct->loadInLang($iLang, $sOxid);
 
  443             case 'oxmanufacturer':
 
  447                 $aParams[
"searchtag"] = $sTag !== null ? $sTag : $this->
getTag();
 
  456         return trim($oUtilsUrl->appendUrl($oProduct->getBaseStdLink($iLang, 
true, 
false), $aParams), 
'&');
 
  495         $iShopId = $this->
getConfig()->getShopId();
 
  498         $sQ = 
"select oxfixed from oxseo where 
  499                    oxseo.oxobjectid = " . $oDb->quote($sId) . 
" and 
  500                    oxseo.oxshopid = '{$iShopId}' and oxseo.oxlang = {$iLang} and oxparams = " . $oDb->quote($sParam);
 
  502         return (
bool) 
oxDb::getDb()->getOne($sQ, 
false, 
false);