54 public function getVendorUri( $oVendor, $iLang = null, $blRegenerate =
false )
57 $iLang = $oVendor->getLanguage();
60 if ( $blRegenerate || !( $sSeoUrl = $this->
_loadFromDb(
'oxvendor', $oVendor->getId(), $iLang ) ) ) {
62 if ($iLang != $oVendor->getLanguage()) {
63 $sId = $oVendor->getId();
64 $oVendor =
oxNew(
'oxvendor');
65 $oVendor->loadInLang( $iLang, $sId );
69 if ( $oVendor->getId() !=
'root' ) {
70 if ( !isset( $this->_aRootVendorUri[$iLang] ) ) {
71 $oRootVendor =
oxNew(
'oxvendor');
72 $oRootVendor->loadInLang( $iLang,
'root' );
73 $this->_aRootVendorUri[$iLang] = $this->
getVendorUri( $oRootVendor, $iLang );
75 $sSeoUrl .= $this->_aRootVendorUri[$iLang];
78 $sSeoUrl .= $this->
_prepareTitle( $oVendor->oxvendor__oxtitle->value,
false, $oVendor->getLanguage() ) .
'/';
79 $sSeoUrl = $this->
_processSeoUrl( $sSeoUrl, $oVendor->getId(), $iLang );
82 $this->
_saveToDb(
'oxvendor', $oVendor->getId(), $oVendor->getBaseStdLink($iLang), $sSeoUrl, $iLang );
100 $iLang = $oVendor->getLanguage();
102 $sStdUrl = $oVendor->getBaseStdLink($iLang) .
'&pgNr=' . $iPage;
103 $sParams = (int) ($iPage + 1);
105 $sStdUrl = $this->
_trimUrl( $sStdUrl, $iLang );
106 $sSeoUrl = $this->
getVendorUri( $oVendor, $iLang ) . $sParams .
"/";
108 if ( $blFixed === null ) {
109 $blFixed = $this->
_isFixed(
'oxvendor', $oVendor->getId(), $iLang );
111 return $this->
_getFullUrl( $this->
_getPageUri( $oVendor,
'oxvendor', $sStdUrl, $sSeoUrl, $sParams, $iLang, $blFixed ), $iLang );
124 if (!isset($iLang)) {
125 $iLang = $oVendor->getLanguage();
140 $sIdQuoted = $oDb->quote($oVendor->getId());
141 $oDb->execute(
"delete from oxseo where oxobjectid = $sIdQuoted and oxtype = 'oxvendor'");
142 $oDb->execute(
"delete from oxobject2seodata where oxobjectid = $sIdQuoted");
156 $oVendor =
oxNew(
"oxvendor" );
157 if ( $oVendor->loadInLang( $iLang, $sObjectId ) ) {
158 $sSeoUrl = $this->
getVendorUri( $oVendor, $iLang,
true );