/**
  * Sets details locator data for articles that came from regular list.
  *
  * @param oxubase   $oLocatorTarget view object
  * @param oxarticle $oCurrArticle   current article
  *
  * @return null
  */
 protected function _setListLocatorData($oLocatorTarget, $oCurrArticle)
 {
     // if no active category is loaded - lets check for category passed by post/get
     if ($oCategory = $oLocatorTarget->getActCategory()) {
         $sCatId = $oCategory->getId();
         $sOrderBy = null;
         if ($oLocatorTarget->showSorting()) {
             $aSorting = $oLocatorTarget->getSorting($sCatId);
             // checking if we have defined sorting parameters in the sessions
             if (!$aSorting && $oCategory->oxcategories__oxdefsort->value) {
                 // if no sorting parameters are set in the session and the category has default
                 // sorting parameters, we use them instead
                 $sSortBy = getViewName('oxarticles') . ".{$oCategory->oxcategories__oxdefsort->value}";
                 $sSortDir = $oCategory->oxcategories__oxdefsortmode->value ? "desc" : null;
                 $oLocatorTarget->setItemSorting($sCatId, $sSortBy, $sSortDir);
             }
             $oLocatorTarget->prepareSortColumns();
             $sOrderBy = $oLocatorTarget->getSortingSql($sCatId);
         }
         $oIdList = $this->_loadIdsInList($oCategory, $oCurrArticle, $sOrderBy);
         //page number
         $iPage = $this->_findActPageNumber($oLocatorTarget->getActPage(), $oIdList, $oCurrArticle);
         // setting product position in list, amount of articles etc
         $oCategory->iCntOfProd = $oIdList->count();
         $oCategory->iProductPos = $this->_getProductPos($oCurrArticle, $oIdList, $oLocatorTarget);
         if (oxUtils::getInstance()->seoIsActive() && $iPage) {
             $oCategory->toListLink = oxSeoEncoderCategory::getInstance()->getCategoryPageUrl($oCategory, $iPage);
         } else {
             $oCategory->toListLink = $this->_makeLink($oCategory->getLink(), $this->_getPageNumber($iPage));
         }
         $oCategory->nextProductLink = $this->_oNextProduct ? $this->_makeLink($this->_oNextProduct->getLink(), '') : null;
         $oCategory->prevProductLink = $this->_oBackProduct ? $this->_makeLink($this->_oBackProduct->getLink(), '') : null;
         // active category
         $oLocatorTarget->setActiveCategory($oCategory);
         // category path
         if ($oCatTree = $oLocatorTarget->getCategoryTree()) {
             $oLocatorTarget->setCatTreePath($oCatTree->getPath());
         }
     }
 }