AnimeController.php 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace app\controllers;
  3. use app\models\Anime;
  4. class AnimeController extends \lithium\action\Controller {
  5. public $publicActions = array('index', 'view', 'cast');
  6. public function index()
  7. {
  8. $page = isset($this->request->query['page']) ? $this->request->query['page'] : 1;
  9. $anime = Anime::find('all', array('limit' => '10'), compact('page'));
  10. return compact('page', 'anime');
  11. }
  12. public function view($id = null)
  13. {
  14. if (is_numeric($id))
  15. {
  16. $data = Anime::search($id, null, 'special_id');
  17. $related = $data['anime']->related;
  18. $str = '';
  19. for ($i = 0; $i < count($related); $i++)
  20. {
  21. if ($i > 0) $str .= ', ';
  22. $ra = Anime::search($related[$i], null, 'special_id');
  23. $str .= '<a href="' . $related[$i] . '">' . $ra['anime']->title . '</a>';
  24. }
  25. $data['related'] = $str;
  26. return $data;
  27. }
  28. else
  29. {
  30. return $this->redirect(array('controller' => 'search','q' => array('search' => $id)));
  31. }
  32. }
  33. public function cast($id = null)
  34. {
  35. if (is_numeric($id))
  36. {
  37. return Anime::search($id, null, 'special_id');
  38. }
  39. }
  40. }