public function action_delete($id = false) { if (is_numeric($id)) { // Get news item to edit if ($item = Model_News::find_one_by_id($id)) { // Delete other content data like images, files, etc. if (!empty($item->images)) { foreach ($item->images as $image) { $this->delete_image($image->image); $image->delete(); } } if (!empty($item->files)) { foreach ($item->files as $file) { $this->delete_file($file->file); $file->delete(); } } if (!empty($item->videos)) { foreach ($item->videos as $video) { $this->delete_image($video->thumbnail, 'video'); $video->delete(); } } if (!empty($item->accordions)) { foreach ($item->accordions as $accordion) { \Request::forge('admin/news/accordion/delete/' . $accordion->id)->execute(); } } try { $item->seo->delete(); $item->delete(); \Messages::success('News successfully deleted.'); } catch (\Database_Exception $e) { // show validation errors \Messages::error('<strong>There was an error while trying to delete news</strong>'); // Uncomment lines below to show database errors //$errors = $e->getMessage(); //\Messages::error($errors); } } } \Response::redirect(\Input::referrer()); }