2016-06-04 01:10:45 +02:00
|
|
|
<?php
|
2013-11-06 10:52:18 +01:00
|
|
|
App::uses('AppShell', 'Console/Command');
|
|
|
|
class AdminShell extends AppShell
|
|
|
|
{
|
2017-01-30 09:16:43 +01:00
|
|
|
public $uses = array('Event', 'Post', 'Attribute', 'Job', 'User', 'Task', 'Whitelist', 'Server', 'Organisation');
|
2016-06-04 01:08:16 +02:00
|
|
|
|
2013-11-06 10:52:18 +01:00
|
|
|
public function jobGenerateCorrelation() {
|
2014-11-27 14:47:13 +01:00
|
|
|
$jobId = $this->args[0];
|
2013-11-06 10:52:18 +01:00
|
|
|
$this->loadModel('Job');
|
2014-11-27 14:47:13 +01:00
|
|
|
$this->Job->id = $jobId;
|
2013-11-06 10:52:18 +01:00
|
|
|
$this->loadModel('Attribute');
|
2015-12-17 10:25:30 +01:00
|
|
|
$this->Attribute->generateCorrelation($jobId, 0);
|
2013-11-06 10:52:18 +01:00
|
|
|
$this->Job->saveField('progress', 100);
|
|
|
|
$this->Job->saveField('message', 'Job done.');
|
2016-02-17 14:43:33 +01:00
|
|
|
$this->Job->saveField('status', 4);
|
|
|
|
}
|
2016-06-04 01:08:16 +02:00
|
|
|
|
2016-12-22 15:30:06 +01:00
|
|
|
public function jobPurgeCorrelation() {
|
|
|
|
$jobId = $this->args[0];
|
|
|
|
$this->loadModel('Job');
|
|
|
|
$this->Job->id = $jobId;
|
|
|
|
$this->loadModel('Attribute');
|
|
|
|
$this->Attribute->purgeCorrelations();
|
|
|
|
$this->Job->saveField('progress', 100);
|
|
|
|
$this->Job->saveField('message', 'Job done.');
|
|
|
|
$this->Job->saveField('status', 4);
|
|
|
|
}
|
|
|
|
|
2016-02-17 14:43:33 +01:00
|
|
|
public function jobGenerateShadowAttributeCorrelation() {
|
|
|
|
$jobId = $this->args[0];
|
|
|
|
$this->loadModel('Job');
|
|
|
|
$this->Job->id = $jobId;
|
|
|
|
$this->loadModel('ShadowAttribute');
|
|
|
|
$this->ShadowAttribute->generateCorrelation($jobId);
|
2013-11-06 10:52:18 +01:00
|
|
|
}
|
2016-06-04 01:08:16 +02:00
|
|
|
|
2015-09-02 01:34:52 +02:00
|
|
|
public function jobUpgrade24() {
|
|
|
|
$jobId = $this->args[0];
|
|
|
|
$user_id = $this->args[1];
|
|
|
|
$this->loadModel('Job');
|
|
|
|
$this->Job->id = $jobId;
|
|
|
|
$this->loadModel('Server');
|
|
|
|
$this->Server->upgrade2324($user_id, $jobId);
|
|
|
|
$this->Job->saveField('progress', 100);
|
|
|
|
$this->Job->saveField('message', 'Job done.');
|
2016-02-17 14:43:33 +01:00
|
|
|
$this->Job->saveField('status', 4);
|
2015-09-02 01:34:52 +02:00
|
|
|
}
|
2017-01-30 09:16:43 +01:00
|
|
|
|
|
|
|
public function prune_update_logs() {
|
|
|
|
$jobId = $this->args[0];
|
|
|
|
$user_id = $this->args[1];
|
|
|
|
$user = $this->User->getAuthUser($user_id);
|
|
|
|
$this->loadModel('Job');
|
|
|
|
$this->Job->id = $jobId;
|
|
|
|
$this->loadModel('Log');
|
|
|
|
$this->Log->pruneUpdateLogs($jobId, $user);
|
|
|
|
$this->Job->saveField('progress', 100);
|
|
|
|
$this->Job->saveField('message', 'Job done.');
|
|
|
|
$this->Job->saveField('status', 4);
|
|
|
|
}
|
2018-04-01 17:31:31 +02:00
|
|
|
|
|
|
|
public function getSetting() {
|
|
|
|
$param = empty($this->args[0]) ? 'all' : $this->args[0];
|
|
|
|
$settings = $this->Server->serverSettingsRead();
|
|
|
|
$result = $settings;
|
|
|
|
if (!empty($param)) {
|
|
|
|
$result = 'No valid setting found for ' . $param;
|
|
|
|
foreach ($settings as $setting) {
|
|
|
|
if ($setting['setting'] == $param) {
|
|
|
|
$result = $setting;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
echo json_encode($result, JSON_PRETTY_PRINT) . PHP_EOL;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function setSetting() {
|
2018-04-08 23:11:51 +02:00
|
|
|
$setting = !isset($this->args[0]) ? null : $this->args[0];
|
|
|
|
$value = !isset($this->args[1]) ? null : $this->args[1];
|
2018-04-01 17:31:31 +02:00
|
|
|
if (empty($setting) || $value === null) {
|
|
|
|
echo 'Invalid parameters. Usage: ' . APP . 'Console/cake Admin setSetting [setting_name] [setting_value]';
|
|
|
|
} else {
|
|
|
|
$this->Server->serverSettingsSaveValue($setting, $value);
|
|
|
|
}
|
|
|
|
}
|
2013-11-06 10:52:18 +01:00
|
|
|
}
|