Skip to content

Commit 378cc95

Browse files
committed
Add log messages from packages on import
1 parent 76a39f2 commit 378cc95

2 files changed

Lines changed: 29 additions & 2 deletions

File tree

‎ProcessMaker/Jobs/ImportProcess.php‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -668,6 +668,7 @@ private function saveBpmn($process)
668668

669669
$manager = app(ExportManager::class);
670670
$manager->updateReferences($this->new);
671+
$this->status = array_merge($this->status, $manager->getLogMessages());
671672
$this->new['process']->save();
672673
}
673674

‎ProcessMaker/Managers/ExportManager.php‎

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ class ExportManager
99
{
1010
private $dependencies = [];
1111

12+
private $logMessages = [];
13+
1214
/**
1315
* Get the value of dependencies
1416
*/
@@ -73,7 +75,7 @@ private function reviewDependenciesOf(Model $owner, array $references = [], arra
7375
$newReferences = [];
7476
foreach ($this->dependencies as $dependencie) {
7577
if (is_a($owner, $dependencie['owner'])) {
76-
$newReferences = call_user_func($dependencie['referencesToExport'], $owner, $newReferences);
78+
$newReferences = call_user_func($dependencie['referencesToExport'], $owner, $newReferences, $this);
7779
}
7880
}
7981
$newReferences = $this->uniqueDiff($newReferences, $references);
@@ -114,7 +116,7 @@ private function updateModelReferences(Model $model, array $newReferences)
114116
{
115117
foreach ($this->dependencies as $dependencie) {
116118
if (is_a($model, $dependencie['owner']) && isset($dependencie['updateReferences'])) {
117-
call_user_func($dependencie['updateReferences'], $model, $newReferences);
119+
call_user_func($dependencie['updateReferences'], $model, $newReferences, $this);
118120
}
119121
}
120122
}
@@ -153,4 +155,28 @@ private function uniqueDiff(array $array, array $references)
153155
}
154156
return $result;
155157
}
158+
159+
/**
160+
* Add a log message about the import process
161+
*
162+
* @param string $key
163+
* @param string $label
164+
* @param bool $success
165+
* @param string $message
166+
* @return void
167+
*/
168+
public function addLogMessage($key, $label, $success, $message)
169+
{
170+
$this->logMessages[$key] = \compact('label', 'success', 'message');
171+
}
172+
173+
/**
174+
* Get logs of the current import process
175+
*
176+
* @return array
177+
*/
178+
public function getLogMessages()
179+
{
180+
return $this->logMessages;
181+
}
156182
}

0 commit comments

Comments
 (0)