Ejemplo n.º 1
0
 public function testValidFixture()
 {
     $validFixtures = array(array('sort_by' => 'id', 'order' => 'desc'), array('sort_by' => 'date', 'order' => 'desc'), array('sort_by' => 'date', 'order' => 'asc'), array('page' => 0), array('limit' => 1000), array('page' => 100, 'limit' => 100), array('search_phrase' => 100));
     foreach ($validFixtures as $key => $row) {
         $request = new SearchRequest();
         foreach ($row as $field => $value) {
             $request->{$field} = $value;
         }
         try {
             $request->validate();
         } catch (\Exception $e) {
             $this->fail();
         }
     }
 }
Ejemplo n.º 2
0
    public static function select(SearchRequest $request)
    {
        selF::$lastSearchRequest = $request;
        $request->validate();
        $sql = <<<SQL
\tselect SQL_CALC_FOUND_ROWS a.*,l.name as event
\tfrom %s as a
\tinner join %s as l
\ton a.log_id = l.id
\twhere %s
\torder by %s %s
\tlimit %d,%d
SQL;
        $sql = sprintf($sql, Record::tableName, Log::tableName, self::buildSQLSelectCondition(), $request->sort_by, $request->order, $request->page * $request->limit, $request->limit);
        $data = DB::query($sql);
        $result = array();
        foreach ($data as $row) {
            $result[] = array('record' => new Record($row), 'eventInfo' => array('event' => $row['event']));
        }
        return $result;
    }