コード例 #1
0
 public function testGetRecordIds()
 {
     $_GET['Contacts'] = array('firstName' => 't', 'assignedTo' => 'Chris');
     $_GET['Contacts_sort'] = 'id.desc';
     $contact = new Contacts('search');
     $dataProvider = $contact->search(PHP_INT_MAX);
     $dataProvider->calculateChecksum = true;
     $data = $dataProvider->getData();
     $this->assertNotEquals(0, count($data));
     $ids = array();
     foreach ($data as $model) {
         $ids[] = $model->id;
     }
     $this->assertEquals($dataProvider->getRecordIds(), $ids);
     $contact = new Contacts('search');
     // lower page size so that record count is incorrect
     $dataProvider = $contact->search(10);
     $dataProvider->calculateChecksum = true;
     $data = $dataProvider->getData();
     $this->assertNotEquals(0, count($data));
     $ids = array();
     foreach ($data as $model) {
         $ids[] = $model->id;
     }
     $this->assertNotEquals($dataProvider->getRecordIds(), $ids);
     // ensure that default ordering gets applied in both cases (SmartActiveDataProvider applies
     // default id DESC ordering if /\bid\b/ isn't found in sort order)
     $_GET['Contacts'] = array('firstName' => 't', 'assignedTo' => 'Chris');
     $_GET['Contacts_sort'] = 'dupeCheck.desc';
     $contact = new Contacts('search');
     $dataProvider = $contact->search(PHP_INT_MAX);
     $dataProvider->calculateChecksum = true;
     $data = $dataProvider->getData();
     $this->assertNotEquals(0, count($data));
     $ids = array();
     foreach ($data as $model) {
         $ids[] = $model->id;
     }
     $this->assertEquals($dataProvider->getRecordIds(), $ids);
     // more filters, different sort order
     $_GET['Contacts'] = array('firstName' => 't', 'lastName' => '<>t', 'assignedTo' => 'Chloe', 'rating' => '<4');
     $_GET['Contacts_sort'] = 'rating.desc';
     $contact = new Contacts('search');
     $dataProvider = $contact->search(PHP_INT_MAX);
     $dataProvider->calculateChecksum = true;
     $data = $dataProvider->getData();
     $this->assertNotEquals(0, count($data));
     $ids = array();
     foreach ($data as $model) {
         $ids[] = $model->id;
     }
     $this->assertEquals($dataProvider->getRecordIds(), $ids);
 }
コード例 #2
0
ファイル: ContactController.php プロジェクト: zwq/unpei
 public function actionIndex()
 {
     $this->pageTitle = Yii::app()->name . '-' . "业务联系人管理";
     $model = new Contacts();
     if (isset($_GET)) {
         $model->Name = $_GET['name'];
         $model->Phone = $_GET['phone'];
     }
     $dataProvider = $model->search();
     //        $pages=$dataProvider->getPagination();
     $data = array('dataProvider' => $dataProvider, 'organ' => $organ);
     $this->render('list', $data);
 }
コード例 #3
0
<?php

/**
 * ownCloud - ownpad_lite plugin
 *
 * @author Victor Dubiniuk
 * @copyright 2013 Victor Dubiniuk victor.dubiniuk@gmail.com
 *
 * This file is licensed under the Affero General Public License version 3 or
 * later.
 */
namespace OCA\ownpad_lite;

\OCP\JSON::checkLoggedIn();
\OCP\JSON::callCheck();
$search = UrlParam::post(UrlParam::SHARE_SEARCH);
\OCP\JSON::success(array('data' => Contacts::search($search)));
exit;
コード例 #4
0
 /**
  * Ensure that sort order and filters in GET params get saved to session correctly 
  */
 public function testSessionSettings()
 {
     $_SESSION = array();
     $_GET['Contacts'] = array('firstName' => 'test', 'lastName' => 'test', 'email' => '*****@*****.**');
     $_GET["Contacts_sort"] = 'firstName';
     $contact = new Contacts('search');
     X2_TEST_DEBUG_LEVEL > 1 && print_r($contact->getAttributes());
     $dataProvider = $contact->search();
     X2_TEST_DEBUG_LEVEL > 1 && print_r($_SESSION);
     $sort = $contact->asa('ERememberFiltersBehavior')->getSetting('sort');
     $filters = $contact->asa('ERememberFiltersBehavior')->getSetting('filters');
     $this->assertEquals($filters, $_GET['Contacts']);
     $this->assertEquals($sort, $_GET['Contacts_sort']);
 }