File: PhperrorController.php

package info (click to toggle)
icingaweb2-module-director 1.11.5-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 11,012 kB
  • sloc: php: 71,265; sql: 10,617; javascript: 580; sh: 353; xml: 32; makefile: 19
file content (43 lines) | stat: -rw-r--r-- 1,624 bytes parent folder | download | duplicates (3)
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

namespace Icinga\Module\Director\Controllers;

use Icinga\Application\Icinga;
use Icinga\Module\Director\Application\DependencyChecker;
use Icinga\Module\Director\Web\Table\Dependency\DependencyInfoTable;
use Icinga\Web\Controller;

class PhperrorController extends Controller
{
    public function errorAction()
    {
        $this->getTabs()->add('error', array(
            'label' => $this->translate('Error'),
            'url'   => $this->getRequest()->getUrl()
        ))->activate('error');
        $msg = $this->translate(
            "PHP version 5.4.x is required for Director >= 1.4.0, you're running %s."
            . ' Please either upgrade PHP or downgrade Icinga Director'
        );
        $this->view->title = $this->translate('Unsatisfied dependencies');
        $this->view->message = sprintf($msg, PHP_VERSION);
    }

    public function dependenciesAction()
    {
        $checker = new DependencyChecker(Icinga::app());
        if ($checker->satisfiesDependencies($this->Module())) {
            $this->redirectNow('director');
        }
        $this->setAutorefreshInterval(15);
        $this->getTabs()->add('error', [
            'label' => $this->translate('Error'),
            'url'   => $this->getRequest()->getUrl()
        ])->activate('error');
        $this->view->title = $this->translate('Unsatisfied dependencies');
        $this->view->table = (new DependencyInfoTable($checker, $this->Module()))->render();
        $this->view->message = $this->translate(
            "Icinga Director depends on the following modules, please install/upgrade as required"
        );
    }
}