24 $this->_oTagSet =
oxNew(
'oxTagSet' );
36 $this->
setId( $sArticleId );
46 return $this->
getId();
66 public function load( $sArticleId )
71 $sQ =
"select oxtags from {$sViewName} where oxid = ".$oDb->quote( $sArticleId );
75 $aTags = explode( $this->
get()->getSeparator(), $oDb->getOne( $sQ ) );
76 foreach ( $aTags as $sTag ) {
77 $oTag =
oxNew(
"oxtag" );
78 $oTag->set( $sTag,
false );
79 $oTag->removeUnderscores();
82 return $this->_isLoaded =
true;
94 if ( $sArticleId === null && ( $sArticleId = $this->
getArticleId() ) === null) {
97 return $this->
load( $sArticleId );
110 $oTagSet = $this->
get();
111 foreach ( $oTagSet as $oTag ) {
112 $oTag->addUnderscores();
117 $sTable = getLangTableName(
'oxartextends', $this->
getLanguage() );
120 $sQ =
"insert into {$sTable} (oxid, oxtags$sLangSuffix) value (".$oDb->quote( $this->
getArticleId() ).
", '{$sTags}')
121 on duplicate key update oxtags$sLangSuffix = '{$sTags}'";
123 if ( $oDb->execute( $sQ ) ) {
138 public function set( $sTags )
140 return $this->_oTagSet->set( $sTags );
148 public function get()
160 return $this->_oTagSet->get();
172 return $this->_oTagSet->addTag( $mTag );
185 return $sStdTagLink .
"cl=details&anid=".$this->getId().
"&listtype=tag&searchtag=".rawurlencode( $sTag );
198 if ( isset($aProducts) && $aTags = $aProducts[$this->
getArticleId()] ) {
199 if ( $aTags[$sTagTitle] == 1 ) {
225 $oTagList =
oxNew(
"oxTagList" );
227 $oTagCloud =
oxNew(
"oxTagCloud" );
228 $oTagCloud->setTagList($oTagList);
229 $oTagCloud->resetCache();