chg: [workflow-module:attach_warninglist] Allow providing more than one list at a time

pull/9370/head
Sami Mokaddem 2023-10-25 09:24:12 +02:00
parent 6bbb5e1316
commit 612d40a15e
No known key found for this signature in database
GPG Key ID: 164C473F627A06FA
1 changed files with 13 additions and 4 deletions

View File

@ -3,7 +3,7 @@ include_once APP . 'Model/WorkflowModules/WorkflowBaseModule.php';
class Module_attach_warninglist extends WorkflowBaseActionModule
{
public $version = '0.1';
public $version = '0.2';
public $id = 'attach-warninglist';
public $name = 'Attach warninglist';
public $description = 'Attach selected warninglist result.';
@ -31,7 +31,8 @@ class Module_attach_warninglist extends WorkflowBaseActionModule
[
'id' => 'warninglists',
'label' => __('Warninglists'),
'type' => 'select',
'type' => 'picker',
'multiple' => true,
'options' => $moduleOptions,
'default' => 'ALL',
],
@ -54,11 +55,19 @@ class Module_attach_warninglist extends WorkflowBaseActionModule
}
$warninglists = [];
if ($params['warninglists']['value'] == 'ALL') {
if (empty($params['warninglists']['value'])) {
$errors[] = __('No warninglists selected');
return false;
} else if (is_string($params['warninglists']['value'])) {
$params['warninglists']['value'] = [$params['warninglists']['value']];
}
if (in_array('ALL', $params['warninglists']['value'])) {
$warninglists = $this->warninglists;
} else {
$warninglists = array_filter($this->warninglists, function($wl) use ($params) {
return $wl['Warninglist']['name'] == $params['warninglists']['value'];
return in_array($wl['Warninglist']['name'], $params['warninglists']['value']);
});
}