function doImport($data, $form) { $loader = new GroupCsvBulkLoader(); // load file $result = $loader->load($data['CsvFile']['tmp_name']); // result message $msgArr = array(); if($result->CreatedCount()) $msgArr[] = sprintf( _t('GroupImportForm.ResultCreated', 'Created %d groups'), $result->CreatedCount() ); if($result->UpdatedCount()) $msgArr[] = sprintf( _t('GroupImportForm.ResultUpdated', 'Updated %d groups'), $result->UpdatedCount() ); if($result->DeletedCount()) $msgArr[] = sprintf( _t('GroupImportForm.ResultDeleted', 'Deleted %d groups'), $result->DeletedCount() ); $msg = ($msgArr) ? implode(',', $msgArr) : _t('MemberImportForm.ResultNone', 'No changes'); $this->sessionMessage($msg, 'good'); $this->controller->redirectBack(); }
public function testImportPermissions() { $loader = new GroupCsvBulkLoader(); $results = $loader->load($this->getCurrentRelativePath() . '/GroupCsvBulkLoaderTest_withExisting.csv'); $created = $results->Created()->toArray(); $this->assertEquals(count($created), 1); $this->assertEquals($created[0]->Code, 'newgroup1'); $this->assertEquals($created[0]->Permissions()->column('Code'), array('CODE1')); $updated = $results->Updated()->toArray(); $this->assertEquals(count($updated), 1); $this->assertEquals($updated[0]->Code, 'existinggroup'); $array1 = $updated[0]->Permissions()->column('Code'); $array2 = array('CODE1', 'CODE2'); sort($array1); sort($array2); $this->assertEquals($array1, $array2); }