示例#1
0
 /**
  * Отображение списка фотографий категории
  * 
  * @param int $id
  */
 public function action_view($id = null)
 {
     is_null($id) and \Response::redirect('media/photos/categories');
     // Пагинация
     $config = array('pagination_url' => \URI::create('media/photos/categories/view/' . $id), 'total_items' => \Model_Media_Photo::count(array('where' => array(array('category_id', '=', $id)))), 'per_page' => 6, 'uri_segment' => 6);
     $pagination = \Pagination::forge('photos_pagination', $config);
     $data['pagination'] = $pagination->render();
     // Извлекаем данные категории
     $data['photos'] = \Model_Media_Photo::find('all', array('related' => 'category', 'where' => array(array('category_id', '=', $id)), 'order_by' => array('created_at' => 'DESC'), 'offset' => $pagination->offset, 'limit' => $pagination->per_page));
     $this->template->css = array('lightbox.css');
     $this->template->js = array('lightbox.min.js');
     $this->template->page_title = 'Медиа :: Фото :: ' . current($data['photos'])->category->title;
     $this->template->content = \View::forge('media/photos/categories/view', $data, FALSE);
 }
示例#2
0
 /**
  * Удаление фотографии
  * 
  * @param int $id
  */
 public function action_delete($id = null)
 {
     is_null($id) and \Response::redirect_back('admin/media/photos/categories');
     if ($photo = \Model_Media_Photo::find($id, array('related' => 'category'))) {
         // Удаляем также изображение слайда с диска
         unlink(DOCROOT . 'assets/img/gallery/' . $photo->image_path);
         unlink(DOCROOT . 'assets/img/gallery/thumbnails/' . $photo->image_path);
         $category_id = $photo->category->id;
         // Удаляем из БД
         $photo->delete();
         \Session::set_flash('success', 'Фотография удалена.');
     } else {
         \Session::set_flash('error', 'Could not delete Media_Photo #' . $id);
     }
     if (isset($category_id)) {
         \Response::redirect_back('admin/media/photos/list/index/' . $category_id);
     } else {
         \Response::redirect_back('admin/media/photos/categories');
     }
 }