mirror of https://github.com/MISP/MISP
show link between events on the signature level
parent
eef982d18a
commit
b0bb827261
|
@ -47,6 +47,14 @@ class EventsController extends AppController {
|
|||
|
||||
$this->set('event', $this->Event->read(null, $id));
|
||||
$this->set('relatedEvents', $this->Event->getRelatedEvents());
|
||||
|
||||
$related_signatures = array();
|
||||
$this->loadModel('Signature');
|
||||
foreach ($this->Event->data['Signature'] as $signature) {
|
||||
$related_signatures[$signature['id']] = $this->Signature->getRelatedSignatures($signature);
|
||||
}
|
||||
$this->set('relatedSignatures', $related_signatures);
|
||||
|
||||
}
|
||||
|
||||
function add() {
|
||||
|
|
|
@ -191,17 +191,20 @@ class Signature extends AppModel {
|
|||
}
|
||||
|
||||
|
||||
// function getRelatedEvents($signature) {
|
||||
// // LATER write this getRelatedEvents() function
|
||||
// $conditions = array('Signature.value =' => $signature['value'],
|
||||
// 'Signature.id !=' => $signature['id'],
|
||||
// 'Signature.type =' => $signature['type'], );
|
||||
|
||||
function getRelatedSignatures($signature) {
|
||||
// LATER getRelatedSignatures($signature) this might become a performance bottleneck
|
||||
$conditions = array('Signature.value =' => $signature['value'],
|
||||
'Signature.id !=' => $signature['id'],
|
||||
'Signature.type =' => $signature['type'], );
|
||||
// $fields = array('Event.*');
|
||||
$fields = array('Signature.*');
|
||||
|
||||
// $similar_events = $this->find('all',array('conditions' => $conditions,
|
||||
// 'fields' => $fields )
|
||||
// );
|
||||
// return $similar_events;
|
||||
// }
|
||||
$similar_events = $this->find('all',array('conditions' => $conditions,
|
||||
'fields' => $fields,
|
||||
'order' => 'Signature.event_id DESC', )
|
||||
);
|
||||
return $similar_events;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -49,7 +49,10 @@
|
|||
<h3><?php __('Related Events');?></h3>
|
||||
<ul>
|
||||
<?php foreach ($relatedEvents as $relatedEvent): ?>
|
||||
<li><?php echo $this->Html->link($relatedEvent['Event']['date'], array('controller' => 'events', 'action' => 'view', $relatedEvent['Event']['id']));?></li>
|
||||
<li><?php
|
||||
$link_text = $relatedEvent['Event']['date'].' ('.$relatedEvent['Event']['id'].')';
|
||||
echo $this->Html->link($link_text, array('controller' => 'events', 'action' => 'view', $relatedEvent['Event']['id']));
|
||||
?></li>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
@ -76,7 +79,16 @@
|
|||
<tr<?php echo $class;?>>
|
||||
<td><?php echo $signature['type'];?></td>
|
||||
<td><?php echo nl2br(Sanitize::html($signature['value']));?></td>
|
||||
<td></td>
|
||||
<td>
|
||||
<?php
|
||||
if (null != $relatedSignatures[$signature['id']]) {
|
||||
foreach ($relatedSignatures[$signature['id']] as $relatedSignature) {
|
||||
echo $this->Html->link($relatedSignature['Signature']['event_id'], array('controller' => 'events', 'action' => 'view', $relatedSignature['Signature']['event_id']));
|
||||
echo ' ';
|
||||
}
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
<td><?php echo $signature['to_ids'] ? 'Yes' : 'No';?></td>
|
||||
<td class="actions" style="text-align:right;">
|
||||
<?php
|
||||
|
|
Loading…
Reference in New Issue