| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- <?php
- namespace app\models;
- class Anime extends \lithium\data\Model {
- protected $_meta = array('key' => '_id', 'source' => 'anime', 'connection' => 'mongo');
- public static function search($query, $page = 1, $by = 'title')
- {
- $defaults = array('limit' => 20);
- $limit = 20;
- switch($by) {
- case 'special_id':
- $anime = self::find('first',
- array('conditions' => array(
- $by => $query
- ),
- 'limit' => $limit,
- 'page' => $page
- ));
- $total = self::count(array($by => $query));
- break;
-
- default:
- if ($query)
- {
- $conditions = null; // TODO
- $anime = self::find('all', array(
- 'conditions' => array($by => array('like' => $query)),
- 'limit' => $limit,
- 'page' => $page
- ));
- $total = Anime::count(array($by => array('like' => $query)));
- }
- else
- {
- $anime = self::find('all', array(
- 'limit' => $limit,
- 'page' => $page
- ));
- $total = Anime::count();
- }
- }
- return compact('anime', 'by', 'limit', 'total', 'page');
- }
- }
|