mirror of https://github.com/MISP/MISP
fix: [stix 1/2 import] Making the publish checkbox work as expected
- Publishing as exxpected when the option is checked AND the user has the right to publishpull/5259/head
parent
de9184d4de
commit
1784b5d76f
|
@ -2080,7 +2080,13 @@ class EventsController extends AppController
|
||||||
$tempFile = new File($tmpDir . DS . $randomFileName, true, 0644);
|
$tempFile = new File($tmpDir . DS . $randomFileName, true, 0644);
|
||||||
$tempFile->write($this->request->input());
|
$tempFile->write($this->request->input());
|
||||||
$tempFile->close();
|
$tempFile->close();
|
||||||
$result = $this->Event->upload_stix($this->Auth->user(), $randomFileName, $stix_version, $original_file);
|
$result = $this->Event->upload_stix(
|
||||||
|
$this->Auth->user(),
|
||||||
|
$randomFileName,
|
||||||
|
$stix_version,
|
||||||
|
$original_file,
|
||||||
|
$this->data['Event']['publish']
|
||||||
|
);
|
||||||
if (is_array($result)) {
|
if (is_array($result)) {
|
||||||
return $this->RestResponse->saveSuccessResponse('Events', 'upload_stix', false, $this->response->type(), 'STIX document imported, event\'s created: ' . implode(', ', $result) . '.');
|
return $this->RestResponse->saveSuccessResponse('Events', 'upload_stix', false, $this->response->type(), 'STIX document imported, event\'s created: ' . implode(', ', $result) . '.');
|
||||||
} elseif (is_numeric($result)) {
|
} elseif (is_numeric($result)) {
|
||||||
|
@ -2098,7 +2104,13 @@ class EventsController extends AppController
|
||||||
$randomFileName = $this->Event->generateRandomFileName();
|
$randomFileName = $this->Event->generateRandomFileName();
|
||||||
$tmpDir = APP . "files" . DS . "scripts" . DS . "tmp";
|
$tmpDir = APP . "files" . DS . "scripts" . DS . "tmp";
|
||||||
move_uploaded_file($this->data['Event']['stix']['tmp_name'], $tmpDir . DS . $randomFileName);
|
move_uploaded_file($this->data['Event']['stix']['tmp_name'], $tmpDir . DS . $randomFileName);
|
||||||
$result = $this->Event->upload_stix($this->Auth->user(), $randomFileName, $stix_version, $original_file);
|
$result = $this->Event->upload_stix(
|
||||||
|
$this->Auth->user(),
|
||||||
|
$randomFileName,
|
||||||
|
$stix_version,
|
||||||
|
$original_file,
|
||||||
|
$this->data['Event']['publish']
|
||||||
|
);
|
||||||
if (is_array($result)) {
|
if (is_array($result)) {
|
||||||
$this->Flash->success(__('STIX document imported, event\'s created: ' . implode(', ', $result) . '.'));
|
$this->Flash->success(__('STIX document imported, event\'s created: ' . implode(', ', $result) . '.'));
|
||||||
$this->redirect(array('action' => 'index'));
|
$this->redirect(array('action' => 'index'));
|
||||||
|
|
|
@ -5818,7 +5818,7 @@ class Event extends AppModel
|
||||||
return $this->save($event);
|
return $this->save($event);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function upload_stix($user, $filename, $stix_version, $original_file)
|
public function upload_stix($user, $filename, $stix_version, $original_file, $publish)
|
||||||
{
|
{
|
||||||
App::uses('Folder', 'Utility');
|
App::uses('Folder', 'Utility');
|
||||||
App::uses('File', 'Utility');
|
App::uses('File', 'Utility');
|
||||||
|
@ -5855,6 +5855,9 @@ class Event extends AppModel
|
||||||
if ($original_file) {
|
if ($original_file) {
|
||||||
$this->add_original_file($tempFile, $original_file, $created_id, $stix_version);
|
$this->add_original_file($tempFile, $original_file, $created_id, $stix_version);
|
||||||
}
|
}
|
||||||
|
if ($publish && $user['Role']['perm_publish']) {
|
||||||
|
$this->publish($this->getID(), null);
|
||||||
|
}
|
||||||
return $created_id;
|
return $created_id;
|
||||||
}
|
}
|
||||||
return $validationIssues;
|
return $validationIssues;
|
||||||
|
|
Loading…
Reference in New Issue