mirror of https://github.com/MISP/MISP
Merge branch '2.4' into develop
commit
c6ccda3cc6
|
@ -1835,6 +1835,7 @@ class Event extends AppModel
|
|||
'blockedAttributeTags',
|
||||
'eventsExtendingUuid',
|
||||
'extended',
|
||||
'extensionList',
|
||||
'excludeGalaxy',
|
||||
'includeCustomGalaxyCluster', // not used
|
||||
'includeRelatedTags',
|
||||
|
@ -2378,6 +2379,11 @@ class Event extends AppModel
|
|||
$results[$k] = $this->__mergeExtensions($user, $result, $options);
|
||||
}
|
||||
}
|
||||
if ($options['extensionList']) {
|
||||
foreach ($results as $k => $result) {
|
||||
$results[$k] = $this->__fetchEventsExtendingEvent($user, $result, $options);
|
||||
}
|
||||
}
|
||||
return $results;
|
||||
}
|
||||
|
||||
|
@ -2555,6 +2561,37 @@ class Event extends AppModel
|
|||
return $event;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $user
|
||||
* @param array $event
|
||||
* @param array $options
|
||||
* @return array
|
||||
* @throws Exception
|
||||
*/
|
||||
private function __fetchEventsExtendingEvent(array $user, array $event, array $options)
|
||||
{
|
||||
$extensions = $this->fetchEvent($user, [
|
||||
'eventsExtendingUuid' => $event['Event']['uuid'],
|
||||
'sgReferenceOnly' => $options['sgReferenceOnly'],
|
||||
'metadata' => 1
|
||||
]);
|
||||
$extensionList = [];
|
||||
foreach ($extensions as $extension) {
|
||||
$extensionList[] = [
|
||||
'id' => $extension['Event']['id'],
|
||||
'uuid' => $extension['Event']['uuid'],
|
||||
'info' => $extension['Event']['info'],
|
||||
'Orgc' => [
|
||||
'id' => $extension['Orgc']['id'],
|
||||
'uuid' => $extension['Orgc']['uuid'],
|
||||
'name' => $extension['Orgc']['name']
|
||||
]
|
||||
];
|
||||
}
|
||||
$event['Event']['ExtendedBy'] = $extensionList;
|
||||
return $event;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $user
|
||||
* @param array $event
|
||||
|
@ -2595,7 +2632,7 @@ class Event extends AppModel
|
|||
$event[$thingToMerge] = array_merge($event[$thingToMerge], $extensionEvent[$thingToMerge]);
|
||||
}
|
||||
// Merge event reports if requested
|
||||
if (!$options['noEventReports']) {
|
||||
if (!$options['noEventReports'] && isset($event['EventReport'])) {
|
||||
$event['EventReport'] = array_merge($event['EventReport'], $extensionEvent['EventReport']);
|
||||
}
|
||||
// Merge just tags that are not already in main event
|
||||
|
|
|
@ -17,7 +17,12 @@
|
|||
}
|
||||
$url_param_data_paths = implode('/', $temp);
|
||||
} else {
|
||||
$url_param_data_paths = h(Hash::extract($row, $field['url_params_data_paths'])[0]);
|
||||
$url_param_data_paths = Hash::extract($row, $field['url_params_data_paths']);
|
||||
if (!empty($url_param_data_paths)) {
|
||||
$url_param_data_paths = $url_param_data_paths[0];
|
||||
} else {
|
||||
$url_param_data_paths = '';
|
||||
}
|
||||
}
|
||||
$urlWithData .= '/' . $url_param_data_paths;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue