31         if ( $aData && isset( $aData[
"oxparams"] ) ) {
 
   33             $iEndPos = $oStr->strpos( $aData[
"oxparams"], 
"#" );
 
   34             $sType = $oStr->substr( $aData[
"oxparams"], 0, $iEndPos );
 
   37             $sType = key( $aList );
 
   56         if ( $aData && isset( $aData[
"oxparams"] ) ) {
 
   58             $iStartPos = $oStr->strpos( $aData[
"oxparams"], 
"#" );
 
   59             $iEndPos = $oStr->strpos( $aData[
"oxparams"], 
"#", $iStartPos + 1 );
 
   60             $iLang = $oStr->substr( $aData[
"oxparams"], $iEndPos + 1 );
 
   62             $aList = reset( $aList );
 
   63             $iLang = key( $aList );
 
   78         if ( $aData && isset( $aData[
"oxparams"] ) ) {
 
   80             $iStartPos = $oStr->strpos( $aData[
"oxparams"], 
"#" );
 
   81             $iEndPos = $oStr->strpos( $aData[
"oxparams"], 
"#", $iStartPos + 1 );
 
   82             $iLen = $oStr->strlen( $aData[
"oxparams"] );
 
   83             $sId = $oStr->substr( $aData[
"oxparams"], $iStartPos + 1, $iEndPos - $iLen );
 
   86             $sId = $oItem->getId();
 
   99         if ( $this->_aSelectionList === null ) {
 
  100             $this->_aSelectionList = array();
 
  102             $oProduct = 
oxNew( 
'oxarticle' );
 
  117             $aLangs = $oProduct->getAvailableInLangs();
 
  118             foreach ( $aLangs as $iLang => $sLangTitle ) {
 
  119                 if ( $oTagList = $this->
_getTagList( $oProduct, $iLang ) ) {
 
  120                     $this->_aSelectionList[
"oxtag"][$iLang] = $oTagList;
 
  138         if ( $oMainCat = $oArticle->getCategory() ) {
 
  139             $sMainCatId = $oMainCat->getId();
 
  146         $sO2CView = getViewName( 
'oxobject2category');
 
  148         $sQ = 
"select oxobject2category.oxcatnid as oxid from $sO2CView as oxobject2category where oxobject2category.oxobjectid=" 
  149               . $oDb->quote( $oArticle->getId() ) . 
" union ".$oArticle->getSqlForPriceCategories(
'oxid');
 
  151         $oRs = $oDb->execute( $sQ );
 
  152         if ( $oRs != 
false && $oRs->recordCount() > 0 ) {
 
  153             while ( !$oRs->EOF ) {
 
  154                 $oCat = 
oxNew(
'oxcategory');
 
  155                 if ( $oCat->loadInLang( $iLang, current( $oRs->fields ) ) ) {
 
  156                     if ( $sMainCatId == $oCat->getId() ) {
 
  158                         $oCat->oxcategories__oxtitle = 
new oxField( $oCat->oxcategories__oxtitle->getRawValue() . 
" " . $sSuffix, 
oxField::T_RAW );
 
  178         if ( $oArticle->oxarticles__oxvendorid->value ) {
 
  179             $oVendor = 
oxNew( 
'oxvendor' );
 
  180             if ( $oVendor->loadInLang( $this->getEditLang(), $oArticle->oxarticles__oxvendorid->value ) ) {
 
  181                 return array( $oVendor );
 
  195         if ( $oArticle->oxarticles__oxmanufacturerid->value ) {
 
  196             $oManufacturer = 
oxNew( 
'oxmanufacturer' );
 
  197             if ( $oManufacturer->loadInLang( $this->getEditLang(), $oArticle->oxarticles__oxmanufacturerid->value ) ) {
 
  198                     return array( $oManufacturer );
 
  213         $oArticleTagList = 
oxNew(
"oxarticletaglist");
 
  214         $oArticleTagList->setLanguage( $iLang );
 
  215         $oArticleTagList->load( $oArticle->getId() );
 
  216         $aTagsList = array();
 
  217         if ( count( $aTags = $oArticleTagList->getArray() ) ) {
 
  218             $sShopId = $this->
getConfig()->getShopId();
 
  219             $iProdId = $oArticle->getId();
 
  220             foreach ( $aTags as $sTitle => $oTagObject ) {
 
  222                 $oTag = 
oxNew( 
"oxManufacturer" );
 
  223                 $oTag->setLanguage( $iLang );
 
  224                 $oTag->setId( md5( strtolower ( $sShopId . $this->
_getStdUrl( $iProdId, 
"oxtag", 
"tag", $iLang, $sTitle ) ) ) );
 
  225                 $oTag->oxmanufacturers__oxtitle = 
new oxField( $sTitle );
 
  226                 $aTagsList[] = $oTag;
 
  240         $oCat = 
oxNew( 
'oxcategory' );
 
  241         return ( $oCat->load( $this->getActCatId() ) ) ? $oCat : null;
 
  256             $oProduct = 
oxNew( 
'oxarticle' );
 
  260             foreach ( $aList as $oTag ) {
 
  261                 if ( $oTag->getId() == $sTagId ) {
 
  262                     return $oTag->getTitle();
 
  275         $oVendor = 
oxNew( 
'oxvendor' );
 
  276         return ( $this->
getActCatType() == 
'oxvendor' && $oVendor->load( $this->getActCatId() ) ) ? $oVendor : null;
 
  286         $oManufacturer = 
oxNew( 
'oxmanufacturer' );
 
  287         return ( $this->
getActCatType() == 
'oxmanufacturer' && $oManufacturer->load( $this->getActCatId() ) ) ? $oManufacturer : null;
 
  300             case 'oxmanufacturer':
 
  301                 return 'manufacturer';
 
  384         $oProduct = 
oxNew( 
'oxarticle' );
 
  385         if ( $oProduct->load( $this->getEditObjectId() ) ) {
 
  389                     return $oEncoder->getArticleVendorUri( $oProduct, $this->
getEditLang() );
 
  390                 case 'oxmanufacturer':
 
  391                     return $oEncoder->getArticleManufacturerUri( $oProduct, $this->
getEditLang() );
 
  393                     return $oEncoder->getArticleTagUri( $oProduct, $this->
getActCatLang() );
 
  396                         return $oEncoder->getArticleUri( $oProduct, $this->
getEditLang() );
 
  398                         return $oEncoder->getArticleMainUri( $oProduct, $this->
getEditLang() );
 
  415     protected function _getStdUrl( $sOxid, $sCatType = null, $sListType = null, $iLang = null, $sTag = null )
 
  417         $iLang = $iLang !== null ? $iLang : $this->
getEditLang();
 
  418         $sCatType  = $sCatType !== null ? $sCatType : $this->
getActCatType();
 
  419         $sListType = $sListType !== null ? $sListType : $this->
getListType();
 
  423             $aParams[
"listtype"] = $sListType;
 
  426         $oProduct = 
oxNew( 
'oxarticle' );
 
  427         $oProduct->loadInLang( $iLang, $sOxid );
 
  430         switch ( $sCatType ) {
 
  434             case 'oxmanufacturer':
 
  438                 $aParams[
"searchtag"] = $sTag !== null ? $sTag : $this->
getTag();
 
  445         return trim( 
oxRegistry::get(
"oxUtilsUrl")->appendUrl( $oProduct->getBaseStdLink( $iLang, 
true, 
false ), $aParams ), 
'&' );
 
  483         $iShopId = $this->
getConfig()->getShopId();
 
  486         $sQ = 
"select oxfixed from oxseo where 
  487                    oxseo.oxobjectid = " . $oDb->quote( $sId ) . 
" and 
  488                    oxseo.oxshopid = '{$iShopId}' and oxseo.oxlang = {$iLang} and oxparams = ".$oDb->quote( $sParam );
 
  490         return (
bool) 
oxDb::getDb()->getOne( $sQ, 
false, 
false );