public function testMakeDataProviderBySearchAttributeData() { $account = new Account(); $user = UserTestHelper::createBasicUser('Andy'); $account->name = 'aNewDawn Inc 2'; $account->owner = $user; $this->assertTrue($account->save()); $account->name = 'aNewDawn Inc 3'; $this->assertTrue($account->save()); $searchAttributeData = AuditEventsListControllerUtil::makeModalSearchAttributeDataByAuditedModel($account); $dataProvider = AuditEventsListControllerUtil::makeDataProviderBySearchAttributeData($searchAttributeData); $this->assertTrue($dataProvider instanceof RedBeanModelDataProvider); $data = $dataProvider->getData(); $this->assertEquals(1, count($data)); $firstAuditEvent = current($data); $accountInfo = unserialize($firstAuditEvent->serializedData); $this->assertEquals(strval($account), $accountInfo[0]); $this->assertEquals('name', $accountInfo[1][0]); $this->assertEquals('aNewDawn Inc 2', $accountInfo[2]); $this->assertEquals($account->name, $accountInfo[3]); //For login/logout events $searchAttributeData = AuditEventsListControllerUtil::makeModalSearchAttributeDataByAuditedModel($user); $dataProvider = AuditEventsListControllerUtil::makeDataProviderBySearchAttributeData($searchAttributeData); $this->assertTrue($dataProvider instanceof RedBeanModelDataProvider); $data = $dataProvider->getData(); $count = count($data); AuditEvent::logAuditEvent('UsersModule', UsersModule::AUDIT_EVENT_USER_PASSWORD_CHANGED, $user->username, $user); $searchAttributeData = AuditEventsListControllerUtil::makeModalSearchAttributeDataByAuditedModel($user); $dataProvider = AuditEventsListControllerUtil::makeDataProviderBySearchAttributeData($searchAttributeData); $this->assertTrue($dataProvider instanceof RedBeanModelDataProvider); $data = $dataProvider->getData(); $this->assertEquals($count + 1, count($data)); }
public function actionAuditEventsModalList($id) { $model = $this->resolveModelForAuditEventsModalList($id); ControllerSecurityUtil::resolveAccessCanCurrentUserReadModel($model); $searchAttributeData = AuditEventsListControllerUtil::makeModalSearchAttributeDataByAuditedModel($model); $dataProvider = AuditEventsListControllerUtil::makeDataProviderBySearchAttributeData($searchAttributeData); Yii::app()->getClientScript()->setToAjaxMode(); echo AuditEventsListControllerUtil::renderList($this, $dataProvider); }
public function testMakeDataProviderBySearchAttributeData() { $account = new Account(); $user = UserTestHelper::createBasicUser('Andy'); $account->name = 'aNewDawn Inc 2'; $account->owner = $user; $this->assertTrue($account->save()); $searchAttributeData = AuditEventsListControllerUtil::makeModalSearchAttributeDataByAuditedModel($account); $dataProvider = AuditEventsListControllerUtil::makeDataProviderBySearchAttributeData($searchAttributeData); $this->assertTrue($dataProvider instanceof RedBeanModelDataProvider); $data = $dataProvider->getData(); $this->assertEquals(1, count($data)); $firstAuditEvent = current($data); $accountName = unserialize($firstAuditEvent->serializedData); $this->assertEquals($account->name, $accountName); }