parent
6fae333048
commit
e1230eb8ae
|
@ -0,0 +1,45 @@
|
||||||
|
<?php
|
||||||
|
// @codeCoverageIgnoreStart
|
||||||
|
// {{{ICINGA_LICENSE_HEADER}}}
|
||||||
|
// {{{ICINGA_LICENSE_HEADER}}}
|
||||||
|
|
||||||
|
require_once 'Mockery/Loader.php';
|
||||||
|
$mockeryLoader = new \Mockery\Loader;
|
||||||
|
$mockeryLoader->register();
|
||||||
|
|
||||||
|
use \Mockery;
|
||||||
|
use Icinga\Web\Controller\ActionController;
|
||||||
|
|
||||||
|
class InstallController extends ActionController
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Whether the controller requires the user to be authenticated
|
||||||
|
*
|
||||||
|
* The install wizard has its own authentication mechanism.
|
||||||
|
*
|
||||||
|
* @var bool
|
||||||
|
*/
|
||||||
|
protected $requiresAuthentication = false;
|
||||||
|
|
||||||
|
public function indexAction()
|
||||||
|
{
|
||||||
|
$finished = false;
|
||||||
|
$this->view->installer = 'some log info, as html';
|
||||||
|
$this->view->wizard = Mockery::mock();
|
||||||
|
$this->view->wizard->shouldReceive('isFinished')->andReturn($finished)
|
||||||
|
->shouldReceive('getTitle')->andReturn('Web')
|
||||||
|
->shouldReceive('getPages')->andReturnUsing(function () {
|
||||||
|
$a = array(Mockery::mock(array('getTitle' => 'childTest', 'getChildPages' => array(
|
||||||
|
Mockery::mock(array('getTitle' => 'child1')),
|
||||||
|
Mockery::mock(array('getTitle' => 'child2'))
|
||||||
|
), 'isActiveChild' => false))); for ($i=0;$i<10;$i++) { $a[] = Mockery::mock(array('getTitle' => 'title'.$i, 'getChildPages' => array())); } return $a;
|
||||||
|
})
|
||||||
|
->shouldReceive('isActivePage')->andReturnUsing(function ($p) { return $p->getTitle() == 'title4'; })
|
||||||
|
->shouldReceive('isCompletedPage')->andReturnUsing(function ($p) { return $p->getTitle() < 'title4'; })
|
||||||
|
->shouldReceive('getActivePage')->andReturnUsing(function () {
|
||||||
|
return Mockery::mock(array('getTitle' => 'title4', '__toString' => 'teh form elements'));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// @codeCoverageIgnoreEnd
|
|
@ -0,0 +1,34 @@
|
||||||
|
<div class="wizard">
|
||||||
|
<div class="header">
|
||||||
|
<img src="<?= $this->baseUrl('img/logo_icinga-inv.png'); ?>">
|
||||||
|
<h1><?= $wizard->getTitle(); ?></h1>
|
||||||
|
</div>
|
||||||
|
<div class="sidebar">
|
||||||
|
<ul>
|
||||||
|
<?php foreach ($wizard->getPages() as $page): ?>
|
||||||
|
<li class="<?= $wizard->isActivePage($page) ? 'active' : (
|
||||||
|
$wizard->isCompletedPage($page) ? 'complete' : 'pending'
|
||||||
|
); ?>">
|
||||||
|
<?= $page->getTitle(); ?>
|
||||||
|
<ul>
|
||||||
|
<?php foreach ($page->getChildPages() as $child): ?>
|
||||||
|
<li class="child<?= $page->isActiveChild($child) ? ' active' : ''; ?>">
|
||||||
|
<?= $child->getTitle(); ?>
|
||||||
|
</li>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<?php endforeach ?>
|
||||||
|
<li class="install<?= $wizard->isFinished() ? ' active' : ''; ?>">
|
||||||
|
<?= $this->translate('Installation'); ?>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div class="panel">
|
||||||
|
<?php if ($wizard->isFinished()): ?>
|
||||||
|
<?= $this->partial('install/index/installog.phtml', array('installer' => $installer)); ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?= $wizard->getActivePage(); ?>
|
||||||
|
<?php endif ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1 @@
|
||||||
|
<?= $installer; ?>
|
|
@ -22,6 +22,7 @@ class StyleSheet
|
||||||
'css/icinga/monitoring-colors.less',
|
'css/icinga/monitoring-colors.less',
|
||||||
'css/icinga/selection-toolbar.less',
|
'css/icinga/selection-toolbar.less',
|
||||||
'css/icinga/login.less',
|
'css/icinga/login.less',
|
||||||
|
'css/icinga/install.less',
|
||||||
);
|
);
|
||||||
|
|
||||||
public static function compileForPdf()
|
public static function compileForPdf()
|
||||||
|
|
|
@ -0,0 +1,96 @@
|
||||||
|
div.wizard {
|
||||||
|
div.header {
|
||||||
|
padding: 0.6em 0 0 1em;
|
||||||
|
height: 3em;
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
|
||||||
|
color: #eee;
|
||||||
|
background-color: #555;
|
||||||
|
background-image: linear-gradient(top, #777, #555);
|
||||||
|
background-image: -o-linear-gradient(top, #777, #555);
|
||||||
|
background-image: -ms-linear-gradient(top, #777, #555);
|
||||||
|
background-image: -webkit-linear-gradient(top, #777, #555);
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
margin: 0 3.5em;
|
||||||
|
display: inline-block;
|
||||||
|
|
||||||
|
font-size: 2em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar {
|
||||||
|
width: 13em;
|
||||||
|
position: fixed;
|
||||||
|
top: 3.6em;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
|
||||||
|
background-color: #999;
|
||||||
|
box-shadow: inset -0.5em 0 0.5em -0.5em #555;
|
||||||
|
-moz-box-shadow: inset -0.5em 0 0.5em -0.5em #555;
|
||||||
|
-webkit-box-shadow: inset -0.5em 0 0.5em -0.5em #555;
|
||||||
|
|
||||||
|
& > ul {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
list-style: none;
|
||||||
|
|
||||||
|
& > li {
|
||||||
|
color: #f5f5f5;
|
||||||
|
font-size: 1.1em;
|
||||||
|
padding: 0.5em;
|
||||||
|
margin-left: 0.5em;
|
||||||
|
text-shadow: #555 -1px 1px 0px;
|
||||||
|
border-bottom: 1px solid #888;
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
color: black;
|
||||||
|
margin-left: 0;
|
||||||
|
padding-left: 1em;
|
||||||
|
text-shadow: none;
|
||||||
|
background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.complete {
|
||||||
|
color: green;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.pending {
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.install {
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
list-style: none;
|
||||||
|
|
||||||
|
li.child {
|
||||||
|
font-size: 0.9em;
|
||||||
|
padding: 0.4em 0.8em 0;
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
div.panel {
|
||||||
|
padding: 1em;
|
||||||
|
position: fixed;
|
||||||
|
top: 3.6em;
|
||||||
|
left: 13em;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue