Add status parameter to getWorkflows method
[MAILPOET-4417]
This commit is contained in:
@ -69,14 +69,22 @@ class WorkflowStorage {
|
||||
}
|
||||
|
||||
/** @return Workflow[] */
|
||||
public function getWorkflows(): array {
|
||||
public function getWorkflows(array $status = null): array {
|
||||
$workflowTable = esc_sql($this->workflowTable);
|
||||
$versionTable = esc_sql($this->versionsTable);
|
||||
$query = "
|
||||
SELECT workflow.*, version.id AS version_id, version.steps, version.trigger_keys
|
||||
$query = $status ?
|
||||
(string)$this->wpdb->prepare("
|
||||
SELECT workflow.*, version.id AS version_id, version.steps, version.trigger_keys
|
||||
FROM $workflowTable AS workflow INNER JOIN $versionTable as version ON (version.workflow_id=workflow.id)
|
||||
WHERE version.id = (SELECT Max(id) FROM $versionTable WHERE workflow_id= version.workflow_id) AND workflow.status IN (%s)
|
||||
ORDER BY workflow.id DESC",
|
||||
implode(",", $status)
|
||||
) :
|
||||
"SELECT workflow.*, version.id AS version_id, version.steps, version.trigger_keys
|
||||
FROM $workflowTable AS workflow INNER JOIN $versionTable as version ON (version.workflow_id=workflow.id)
|
||||
WHERE version.id = (SELECT Max(id) FROM $versionTable WHERE workflow_id= version.workflow_id)
|
||||
ORDER BY workflow.id DESC;";
|
||||
|
||||
$data = $this->wpdb->get_results($query, ARRAY_A);
|
||||
return array_map(function (array $workflowData) {
|
||||
return Workflow::fromArray($workflowData);
|
||||
|
@ -50,7 +50,7 @@ parameters:
|
||||
path: ../../lib/Automation/Engine/Storage/WorkflowRunStorage.php
|
||||
-
|
||||
message: "#^Cannot cast string|void to string\\.$#"
|
||||
count: 4
|
||||
count: 5
|
||||
path: ../../lib/Automation/Engine/Storage/WorkflowStorage.php
|
||||
reportUnmatchedIgnoredErrors: true
|
||||
dynamicConstantNames:
|
||||
|
Reference in New Issue
Block a user