SearchController.php 926 B

123456789101112131415161718192021222324252627282930313233
  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');
  8. public function index() {
  9. if (isset($this->request->query['q']))
  10. {
  11. $q = '/' . $this->request->query['q'] . '/i';
  12. $conditions = array('title' => array('like' => $q));
  13. $limit = 10;
  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('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. }