SearchController.php 936 B

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. namespace app\controllers;
  3. use app\models\Anime;
  4. use app\models\Manga;
  5. use app\models\Kdrama;
  6. class SearchController extends \lithium\action\Controller {
  7. public $publicActions = array('index', 'anime', 'manga', 'kdrama');
  8. public function index() {
  9. if (isset($this->request->query['q']))
  10. {
  11. $q = $this->request->query['q'];
  12. $conditions = array('title' => array('like' => "/$q/i"));
  13. $limit = 7;
  14. $anime = Anime::find('all', compact('conditions', 'limit'));
  15. $manga = Manga::find('all', compact('conditions', 'limit'));
  16. $kdrama = Kdrama::find('all', compact('conditions', 'limit'));
  17. return compact('q', 'anime', 'manga', 'kdrama');
  18. }
  19. }
  20. public function anime($by = 'title')
  21. {
  22. $q = isset($this->request->query['q']) ? '/' . $this->request->query['q'] . '/i' : '';
  23. $page = isset($this->request->query['page']) ? $this->request->query['page'] : 1;
  24. return Anime::search($q, $page, 'title');
  25. }
  26. }