Merge branch 'release/4.6.2'

This commit is contained in:
James Cole
2017-07-08 09:55:44 +02:00
123 changed files with 1070 additions and 937 deletions

View File

@@ -43,4 +43,4 @@ interface ConfigurationInterface
*/
public function storeConfiguration(array $data): bool;
}
}

View File

@@ -26,6 +26,7 @@ use Log;
class Initial implements ConfigurationInterface
{
private $job;
/**
* @return array
*/
@@ -106,6 +107,21 @@ class Initial implements ConfigurationInterface
Log::error('Could not find anything for csv_import_account.', ['id' => $importId]);
}
$config = $this->storeSpecifics($data, $config);
$this->job->configuration = $config;
$this->job->save();
return true;
}
/**
* @param array $data
* @param array $config
*
* @return array
*/
private function storeSpecifics(array $data, array $config): array
{
// loop specifics.
if (isset($data['specifics']) && is_array($data['specifics'])) {
foreach ($data['specifics'] as $name => $enabled) {
@@ -116,9 +132,7 @@ class Initial implements ConfigurationInterface
}
}
}
$this->job->configuration = $config;
$this->job->save();
return true;
return $config;
}
}
}

View File

@@ -266,4 +266,4 @@ class Map implements ConfigurationInterface
return $column;
}
}
}

View File

@@ -68,6 +68,18 @@ class Roles implements ConfigurationInterface
return $this->data;
}
/**
* @param ImportJob $job
*
* @return ConfigurationInterface
*/
public function setJob(ImportJob $job): ConfigurationInterface
{
$this->job = $job;
return $this;
}
/**
* Store the result.
*
@@ -217,16 +229,20 @@ class Roles implements ConfigurationInterface
*/
private function setRolesComplete(): bool
{
$config = $this->job->configuration;
$count = $config['column-count'];
$assigned = 0;
$config = $this->job->configuration;
$count = $config['column-count'];
$assigned = 0;
$hasAmount = false;
for ($i = 0; $i < $count; $i++) {
$role = $config['column-roles'][$i] ?? '_ignore';
if ($role !== '_ignore') {
$assigned++;
}
if ($role === 'amount') {
$hasAmount = true;
}
}
if ($assigned > 0) {
if ($assigned > 0 && $hasAmount) {
$config['column-roles-complete'] = true;
$this->job->configuration = $config;
$this->job->save();
@@ -248,16 +264,4 @@ class Roles implements ConfigurationInterface
return true;
}
/**
* @param ImportJob $job
*
* @return ConfigurationInterface
*/
public function setJob(ImportJob $job): ConfigurationInterface
{
$this->job = $job;
return $this;
}
}
}