Hey guys,
with the following action I import CSV data in a login table. First I register accounts in neos_flow_security_account
.
The import runs until the end and the I get
An instance of “Neos\Flow\Security\Account” failed to pass validation with 1 error(s):
accountIdentifier:
This property is required.
I think with $this->accountFactory->createAccountWithPassword($username, $password, array($defaultRole), $authenticationProviderName);
all required things are set.
Can you help me?
Thx, Pat
$csv = "/data/releases/current/ImportUser.csv";
$userlist = file($csv);
foreach ($userlist as $user)
{
list($shortcut,$breedernumber,$farmname,$username,$breeder1firstname,$breeder1lastname,$breeder2firstname,$breeder2lastname,$address,$zip,$city,$country,$phone,$fax,$email,$weburl,$deleted,$password,$oldid) = explode(';', $user);
$defaultRole = 'AlpacaAustria.AlpacaConnect:User';
$authenticationProviderName = 'DefaultProvider';
$account = $this->accountFactory->createAccountWithPassword($username, $password, array($defaultRole), $authenticationProviderName);
$account->setCredentialsSource($this->hashService->hashPassword($password));
$this->accountRepository->add($account);
$userdata = new \AlpacaAustria\AlpacaConnect\Domain\Model\Login();
$userdata->setShortcut($shortcut);
$userdata->setBreedernumber($breedernumber);
$userdata->setFarmname($farmname);
$userdata->setUsername($username);
$userdata->setBreeder1firstname($breeder1firstname);
$userdata->setBreeder1lastname($breeder1lastname);
$userdata->setBreeder2firstname($breeder2firstname);
$userdata->setBreeder2lastname($breeder2lastname);
$userdata->setAddress($address);
$userdata->setZip($zip);
$userdata->setCity($city);
$userdata->setCountry($country);
$userdata->setPhone($phone);
$userdata->setFax($fax);
$userdata->setEmail($email);
$userdata->setWeburl($weburl);
$userdata->setDeleted($deleted);
$userdata->setOldid($oldid);
$this->loginRepository->add($userdata);
echo $username." importiert.";
}
echo "Import abgeschlossen";