/** * Edit image * * @param PluginLsgallery_ModuleImage_EntityImage $oImage * @return boolean */ public function UpdateImage($oImage) { $oImageOld = $this->GetImageById($oImage->getId()); $oImage->setDateEdit(); /* @var $oAlbum PluginLsgallery_ModuleAlbum_EntityAlbum */ $oAlbum = $this->PluginLsgallery_Album_GetAlbumById($oImage->getAlbumId()); $this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array("image_update")); $this->Cache_Delete("image_{$oImage->getId()}"); $this->oMapper->UpdateImage($oImage); if ($oImage->getImageTags() != $oImageOld->getImageTags()) { /** * Обновляем теги */ $aTags = explode(',', $oImage->getImageTags()); $this->DeleteImageTagsByImageId($oImage->getId()); if ($oAlbum->getType() == PluginLsgallery_ModuleAlbum_EntityAlbum::TYPE_OPEN) { foreach ($aTags as $sTag) { $oTag = Engine::GetEntity('PluginLsgallery_ModuleImage_EntityImageTag'); $oTag->setImageId($oImage->getId()); $oTag->setAlbumId($oImage->getAlbumId()); $oTag->setText(trim($sTag)); $this->oMapper->AddImageTag($oTag); } } } return true; }