diff --git a/application/views/scripts/setup/index.phtml b/application/views/scripts/setup/index.phtml index d23183990..396f05ea5 100644 --- a/application/views/scripts/setup/index.phtml +++ b/application/views/scripts/setup/index.phtml @@ -6,6 +6,12 @@ $configPages = array_slice($pages, 2, count($pages) - 3, true); $currentPos = array_search($wizard->getCurrentPage(), $pages, true); list($configPagesLeft, $configPagesRight) = array_chunk($configPages, count($configPages) / 2, true); +$visitedPages = array_keys($wizard->getPageData()); +$maxProgress = @max(array_keys(array_filter( + $pages, + function ($page) use ($visitedPages) { return in_array($page->getName(), $visitedPages); } +))); + ?>
@@ -13,7 +19,9 @@ list($configPagesLeft, $configPagesRight) = array_chunk($configPages, count($con

- 0 ? 'complete' : 'active'; ?> + 0 ? 'complete' : ( + $maxProgress > 0 ? 'visited' : 'active' + ); ?> @@ -22,7 +30,11 @@ list($configPagesLeft, $configPagesRight) = array_chunk($configPages, count($con

- 1 ? ' complete' : ''); ?> + 1 ? ' complete' : ( + $maxProgress > 1 ? ' visited' : ( + $currentPos === 1 ? ' active' : '' + ) + ); ?>
@@ -39,7 +51,9 @@ list($configPagesLeft, $configPagesRight) = array_chunk($configPages, count($con $lineWidth = round(100 / count($configPagesLeft), 2, PHP_ROUND_HALF_DOWN); ?> $page): ?> - 1 ? ' active' : ''); ?> + 1 ? ' active' : '') + ); ?>
@@ -50,7 +64,12 @@ list($configPagesLeft, $configPagesRight) = array_chunk($configPages, count($con
-
+
$page): ?> - 1 ? ' active' : ''); ?> + 1 ? ' active' : '') + ); ?>
diff --git a/public/css/icinga/setup.less b/public/css/icinga/setup.less index eef1c66cd..5d4afee15 100644 --- a/public/css/icinga/setup.less +++ b/public/css/icinga/setup.less @@ -83,6 +83,10 @@ &.complete { background-color: #2e8b57; } + + &.visited { + background-color: #77bf97; + } } } }