blob: 016b312402b6a7f02740173bbe973e90f908d098 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
<?php
// Icinga Web 2 X.509 Module | (c) 2018 Icinga GmbH | GPLv2
namespace Icinga\Module\X509\Controllers;
use Icinga\Exception\ConfigurationError;
use Icinga\Module\X509\CertificateDetails;
use Icinga\Module\X509\Common\Database;
use Icinga\Module\X509\Controller;
use Icinga\Module\X509\Model\X509Certificate;
use ipl\Stdlib\Filter;
class CertificateController extends Controller
{
public function indexAction()
{
$this->addTitleTab($this->translate('X.509 Certificate'));
$this->getTabs()->disableLegacyExtensions();
$certId = $this->params->getRequired('cert');
try {
$conn = Database::get();
} catch (ConfigurationError $_) {
$this->render('missing-resource', null, true);
return;
}
/** @var ?X509Certificate $cert */
$cert = X509Certificate::on($conn)
->filter(Filter::equal('id', $certId))
->first();
if (! $cert) {
$this->httpNotFound($this->translate('Certificate not found.'));
}
$this->view->certificateDetails = (new CertificateDetails())
->setCert($cert);
}
}
|