public function deleteAlbumAction() { $this->_helper->layout()->disableLayout(); $albumId = $this->_getParam('id'); $objModelAlbum = new Album_Model_Album(); $objModelAlbumPhoto = new Album_Model_AlbumPhoto(); $objModelAlbumTag = new Album_Model_AlbumTag(); $objModelAlbumPhotoTag = new Album_Model_AlbumPhotoTag(); $objModelPhotoTag = new Album_Model_PhotoTag(); $objModelComment = new Application_Model_Comment(); // Remove all comment for album $whereAlbumComment = "item_type='album_comment' AND item_id='{$albumId}'"; $objModelComment->delete($whereAlbumComment); // Remove all album tag $whereAlbumTag = "album_id='{$albumId}'"; $objModelAlbumTag->delete($whereAlbumTag); // Fetch all photo of album $whereAlbumPhoto = "album_id='{$albumId}'"; $arrPhoto = $objModelAlbumPhoto->fetchAll($whereAlbumPhoto); if (count($arrPhoto) > 0) { foreach ($arrPhoto as $photo) { $photoId = $photo->id; $photoName = $photo->image; $imagePathT = PUBLIC_PATH . "/media/album/thumb/" . $photoName; $imagePathC = PUBLIC_PATH . "/media/album/custom/" . $photoName; $imagePathD = PUBLIC_PATH . "/media/album/default/" . $photoName; unlink($imagePathT); // Remove image from thumb folder unlink($imagePathC); // Remove image from custom folder unlink($imagePathD); // Remove image from default folder // Remove photo comment $wherePhotoComment = "item_type='photo_comment' AND item_id='{$photoId}'"; $objModelComment->delete($wherePhotoComment); // Remove tagged photo $whereTaggedPhoto = "photo_id='{$photoId}'"; $objModelPhotoTag->delete($whereTaggedPhoto); // Remove photo tag $whereAlbumPhotoTag = "photo_id='{$photoId}'"; $objModelAlbumPhotoTag->delete($whereAlbumPhotoTag); } } // Remove all photo $whereAlbumPhoto = "album_id='{$albumId}'"; $objModelAlbumPhoto->delete($whereAlbumPhoto); // Remove Album $whereAlbum = "id='{$albumId}'"; $objModelAlbum->delete($whereAlbum); $this->_redirect('/album/my-photos'); $this->_helper->viewRenderer->setNoRender(true); }
public function albumEditSubmitAction() { $this->_helper->layout()->disableLayout(); $arrPostVal = $this->getRequest()->getParams(); $objModelAlbum = new Album_Model_Album(); $objModelTags = new Application_Model_Tags(); $objModelAlbumTag = new Album_Model_AlbumTag(); $name = addslashes(strip_tags($arrPostVal['name'])); $description = addslashes(strip_tags($arrPostVal['description'])); $location = $arrPostVal['location']; $permission = $arrPostVal['permissions']; $tags = $arrPostVal['tags']; $albumId = $arrPostVal['albumId']; $latlang = $arrPostVal['latlang']; $arrLatLang = explode(",", $latlang); $latitude = substr($arrLatLang[0], 1, strlen($arrLatLang[0])); // Longitude of location $longitude = substr($arrLatLang[1], 0, -1); $valAlbum = $objModelAlbum->find($albumId); $valAlbum->setName($name); $valAlbum->setDescription($description); $valAlbum->setLocation($location); $valAlbum->setPermission($permission); $valAlbum->setLatitude($latitude); $valAlbum->setLongitude($longitude); $valAlbum->save(); /*--------------------- ALBUM TAG ---------------------*/ $arrTag = explode(",", $tags); $objModelAlbumTag->delete("album_id='{$albumId}'"); foreach ($arrTag as $tag) { $newTag = trim($tag); $whereTag = ""; $whereTag = "tag='{$newTag}'"; $arrTags = $objModelTags->fetchAll($whereTag); if (count($arrTags) > 0) { $optionAlbumTag['albumId'] = $albumId; $optionAlbumTag['tagId'] = $arrTags[0]->id; $objModelAlbumTag->setOptions($optionAlbumTag); $objModelAlbumTag->save(); } else { $optionTag['tag'] = $newTag; $objModelTags->setOptions($optionTag); $id = $objModelTags->save(); /*-----------------------------------*/ $optionAlbumTag['albumId'] = $albumId; $optionAlbumTag['tagId'] = $id; $objModelAlbumTag->setOptions($optionAlbumTag); $objModelAlbumTag->save(); } } exit; }