diff --git a/.puppet/profiles/icingaweb2_dev/manifests/init.pp b/.puppet/profiles/icingaweb2_dev/manifests/init.pp index b8bea040f..33f29df3b 100644 --- a/.puppet/profiles/icingaweb2_dev/manifests/init.pp +++ b/.puppet/profiles/icingaweb2_dev/manifests/init.pp @@ -90,7 +90,7 @@ class icingaweb2_dev ( source => $name, } - icingaweb2::config::general { [ 'config', 'resources' ]: + icingaweb2::config::general { [ 'config', 'resources', 'roles' ]: source => $name, replace => false, } diff --git a/.puppet/profiles/icingaweb2_dev/templates/roles.ini.erb b/.puppet/profiles/icingaweb2_dev/templates/roles.ini.erb new file mode 100644 index 000000000..98a885fd0 --- /dev/null +++ b/.puppet/profiles/icingaweb2_dev/templates/roles.ini.erb @@ -0,0 +1,3 @@ +[admins] +users = icingaadmin +permissions = * diff --git a/AUTHORS b/AUTHORS index 30365cbd0..8a0bc91d0 100644 --- a/AUTHORS +++ b/AUTHORS @@ -1,5 +1,6 @@ Alexander Fuhr Alexander Klimov +ayoubabid baufrecht Bernd Erk Boden Garman @@ -11,8 +12,9 @@ Goran Rakic Gunnar Beutner Jannis Moßhammer Johannes Meyer -Marius Hein +Louis Sautier Marcus Cobden +Marius Hein Markus Frosch Matthias Jentsch Michael Friedrich @@ -22,4 +24,3 @@ Sylph Lin Thomas Gelf Tom Ford Ulf Lange -ayoubabid diff --git a/VERSION b/VERSION index 2f8540190..a00bf2444 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -v2.0.0-beta2 +v2.0.0-beta3 diff --git a/application/controllers/AuthenticationController.php b/application/controllers/AuthenticationController.php index 933a97357..7d492f8c1 100644 --- a/application/controllers/AuthenticationController.php +++ b/application/controllers/AuthenticationController.php @@ -102,21 +102,21 @@ class AuthenticationController extends ActionController $this->view->form->addError( $this->translate( 'No authentication methods available. Did you create' - . ' authentication.ini when setting up Icinga Web 2?' + . ' authentication.ini when setting up Icinga Web 2?' ) ); } else if ($backendsTried === $backendsWithError) { $this->view->form->addError( $this->translate( 'All configured authentication methods failed.' - . ' Please check the system log or Icinga Web 2 log for more information.' + . ' Please check the system log or Icinga Web 2 log for more information.' ) ); } elseif ($backendsWithError) { $this->view->form->addError( $this->translate( 'Please note that not all authentication methods were available.' - . ' Check the system log or Icinga Web 2 log for more information.' + . ' Check the system log or Icinga Web 2 log for more information.' ) ); } @@ -144,7 +144,7 @@ class AuthenticationController extends ActionController $this->view->form->addError($e->getMessage()); } - $this->view->requiresExternalAuth = $triedOnlyExternalAuth && !$auth->isAuthenticated(); + $this->view->requiresExternalAuth = $triedOnlyExternalAuth && ! $auth->isAuthenticated(); $this->view->requiresSetup = Icinga::app()->requiresSetup(); } diff --git a/application/controllers/ConfigController.php b/application/controllers/ConfigController.php index 5ad822e12..370b8f5d0 100644 --- a/application/controllers/ConfigController.php +++ b/application/controllers/ConfigController.php @@ -11,19 +11,19 @@ use Icinga\Forms\Config\GeneralConfigForm; use Icinga\Forms\Config\ResourceConfigForm; use Icinga\Forms\ConfirmRemovalForm; use Icinga\Security\SecurityException; -use Icinga\Web\Controller\ActionController; +use Icinga\Web\Controller; use Icinga\Web\Notification; use Icinga\Web\Widget; /** * Application and module configuration */ -class ConfigController extends ActionController +class ConfigController extends Controller { /** * The first allowed config action according to the user's permissions * - * @type string + * @var string */ protected $firstAllowedAction; @@ -37,7 +37,7 @@ class ConfigController extends ActionController $tabs = $this->getTabs(); $auth = $this->Auth(); $allowedActions = array(); - if ($auth->hasPermission('system/config/application')) { + if ($auth->hasPermission('config/application/general')) { $tabs->add('application', array( 'title' => $this->translate('Adjust the general configuration of Icinga Web 2'), 'label' => $this->translate('Application'), @@ -45,7 +45,7 @@ class ConfigController extends ActionController )); $allowedActions[] = 'application'; } - if ($auth->hasPermission('system/config/authentication')) { + if ($auth->hasPermission('config/application/authentication')) { $tabs->add('authentication', array( 'title' => $this->translate('Configure how users authenticate with and log into Icinga Web 2'), 'label' => $this->translate('Authentication'), @@ -53,7 +53,7 @@ class ConfigController extends ActionController )); $allowedActions[] = 'authentication'; } - if ($auth->hasPermission('system/config/resources')) { + if ($auth->hasPermission('config/application/resources')) { $tabs->add('resource', array( 'title' => $this->translate('Configure which resources are being utilized by Icinga Web 2'), 'label' => $this->translate('Resources'), @@ -61,7 +61,7 @@ class ConfigController extends ActionController )); $allowedActions[] = 'resource'; } - if ($auth->hasPermission('system/config/roles')) { + if ($auth->hasPermission('config/application/roles')) { $tabs->add('roles', array( 'title' => $this->translate( 'Configure roles to permit or restrict users and groups accessing Icinga Web 2' @@ -72,7 +72,6 @@ class ConfigController extends ActionController $allowedActions[] = 'roles'; } $this->firstAllowedAction = array_shift($allowedActions); - $this->getTabs()->setTitle($this->translate('Config Navigation')); } public function devtoolsAction() @@ -103,7 +102,7 @@ class ConfigController extends ActionController */ public function applicationAction() { - $this->assertPermission('system/config/application'); + $this->assertPermission('config/application/general'); $form = new GeneralConfigForm(); $form->setIniConfig(Config::app()); $form->handleRequest(); @@ -131,26 +130,35 @@ class ConfigController extends ActionController ->order('enabled', 'desc') ->order('name') ->paginate(); + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->modules); + // TODO: Not working + /*$this->setupSortControl(array( + 'name' => $this->translate('Modulename'), + 'path' => $this->translate('Installation Path'), + 'enabled' => $this->translate('State') + ));*/ } public function moduleAction() { - $name = $this->getParam('name'); $app = Icinga::app(); $manager = $app->getModuleManager(); + $name = $this->getParam('name'); if ($manager->hasInstalled($name)) { - $this->view->moduleData = Icinga::app() - ->getModuleManager() - ->select() - ->from('modules') - ->where('name', $name) - ->fetchRow(); - $module = new Module($app, $name, $manager->getModuleDir($name)); + $this->view->moduleData = $manager->select()->from('modules')->where('name', $name)->fetchRow(); + if ($manager->hasLoaded($name)) { + $module = $manager->getModule($name); + } else { + $module = new Module($app, $name, $manager->getModuleDir($name)); + } + $this->view->module = $module; + $this->view->tabs = $module->getConfigTabs()->activate('info'); } else { $this->view->module = false; + $this->view->tabs = null; } - $this->view->tabs = $module->getConfigTabs()->activate('info'); } /** @@ -158,12 +166,11 @@ class ConfigController extends ActionController */ public function moduleenableAction() { - $this->assertPermission('system/config/modules'); + $this->assertPermission('config/modules'); $module = $this->getParam('name'); $manager = Icinga::app()->getModuleManager(); try { $manager->enableModule($module); - $manager->loadModule($module); Notification::success(sprintf($this->translate('Module "%s" enabled'), $module)); $this->rerenderLayout()->reloadCss()->redirectNow('config/modules'); } catch (Exception $e) { @@ -179,7 +186,7 @@ class ConfigController extends ActionController */ public function moduledisableAction() { - $this->assertPermission('system/config/modules'); + $this->assertPermission('config/modules'); $module = $this->getParam('name'); $manager = Icinga::app()->getModuleManager(); try { @@ -199,7 +206,7 @@ class ConfigController extends ActionController */ public function authenticationAction() { - $this->assertPermission('system/config/authentication'); + $this->assertPermission('config/application/authentication'); $form = new AuthenticationBackendReorderForm(); $form->setIniConfig(Config::app('authentication')); $form->handleRequest(); @@ -214,7 +221,7 @@ class ConfigController extends ActionController */ public function createauthenticationbackendAction() { - $this->assertPermission('system/config/authentication'); + $this->assertPermission('config/application/authentication'); $form = new AuthenticationBackendConfigForm(); $form->setTitle($this->translate('Create New Authentication Backend')); $form->addDescription($this->translate( @@ -236,7 +243,7 @@ class ConfigController extends ActionController */ public function editauthenticationbackendAction() { - $this->assertPermission('system/config/authentication'); + $this->assertPermission('config/application/authentication'); $form = new AuthenticationBackendConfigForm(); $form->setTitle($this->translate('Edit Backend')); $form->setIniConfig(Config::app('authentication')); @@ -254,7 +261,7 @@ class ConfigController extends ActionController */ public function removeauthenticationbackendAction() { - $this->assertPermission('system/config/authentication'); + $this->assertPermission('config/application/authentication'); $form = new ConfirmRemovalForm(array( 'onSuccess' => function ($form) { $configForm = new AuthenticationBackendConfigForm(); @@ -292,7 +299,7 @@ class ConfigController extends ActionController */ public function resourceAction() { - $this->assertPermission('system/config/resources'); + $this->assertPermission('config/application/resources'); $this->view->resources = Config::app('resources', true)->keys(); $this->view->tabs->activate('resource'); } @@ -302,7 +309,7 @@ class ConfigController extends ActionController */ public function createresourceAction() { - $this->assertPermission('system/config/resources'); + $this->assertPermission('config/application/resources'); $form = new ResourceConfigForm(); $form->setTitle($this->translate('Create A New Resource')); $form->addDescription($this->translate('Resources are entities that provide data to Icinga Web 2.')); @@ -319,7 +326,7 @@ class ConfigController extends ActionController */ public function editresourceAction() { - $this->assertPermission('system/config/resources'); + $this->assertPermission('config/application/resources'); $form = new ResourceConfigForm(); $form->setTitle($this->translate('Edit Existing Resource')); $form->setIniConfig(Config::app('resources')); @@ -335,7 +342,7 @@ class ConfigController extends ActionController */ public function removeresourceAction() { - $this->assertPermission('system/config/resources'); + $this->assertPermission('config/application/resources'); $form = new ConfirmRemovalForm(array( 'onSuccess' => function ($form) { $configForm = new ResourceConfigForm(); diff --git a/application/controllers/ErrorController.php b/application/controllers/ErrorController.php index 6b75c6488..b1343dc81 100644 --- a/application/controllers/ErrorController.php +++ b/application/controllers/ErrorController.php @@ -3,6 +3,7 @@ use Icinga\Application\Icinga; use Icinga\Application\Logger; +use Icinga\Exception\MissingParameterException; use Icinga\Security\SecurityException; use Icinga\Web\Controller\ActionController; @@ -33,7 +34,11 @@ class ErrorController extends ActionController $path = preg_split('~/~', $path); $path = array_shift($path); $this->getResponse()->setHttpResponseCode(404); - $this->view->message = $this->translate('Page not found.'); + $title = preg_replace('/\r?\n.*$/s', '', $exception->getMessage()); + $this->view->title = 'Server error: ' . $title; + if ($this->getInvokeArg('displayExceptions')) { + $this->view->stackTrace = $exception->getTraceAsString(); + } if ($modules->hasInstalled($path) && ! $modules->hasEnabled($path)) { $this->view->message .= ' ' . sprintf( $this->translate('Enabling the "%s" module might help!'), @@ -42,19 +47,26 @@ class ErrorController extends ActionController } break; - case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_OTHER: - if ($exception instanceof SecurityException) { - $this->getResponse()->setHttpResponseCode(403); - $this->view->message = $exception->getMessage(); - break; - } - // Move to default default: + switch (true) { + case $exception instanceof SecurityException: + $this->getResponse()->setHttpResponseCode(403); + break; + case $exception instanceof MissingParameterException: + $this->getResponse()->setHttpResponseCode(400); + $this->getResponse()->setHeader( + 'X-Status-Reason', + 'Missing parameter ' . $exception->getParameter() + ); + break; + default: + $this->getResponse()->setHttpResponseCode(500); + break; + } $title = preg_replace('/\r?\n.*$/s', '', $exception->getMessage()); - $this->getResponse()->setHttpResponseCode(500); $this->view->title = 'Server error: ' . $title; $this->view->message = $exception->getMessage(); - if ($this->getInvokeArg('displayExceptions') == true) { + if ($this->getInvokeArg('displayExceptions')) { $this->view->stackTrace = $exception->getTraceAsString(); } break; diff --git a/application/controllers/ListController.php b/application/controllers/ListController.php index d55381987..ca7265f0e 100644 --- a/application/controllers/ListController.php +++ b/application/controllers/ListController.php @@ -3,6 +3,9 @@ use Icinga\Module\Monitoring\Controller; use Icinga\Web\Url; +use Icinga\Web\Widget\Tabextension\DashboardAction; +use Icinga\Web\Widget\Tabextension\OutputFormat; +use Icinga\Application\Config; use Icinga\Application\Logger; use Icinga\Data\ConfigObject; use Icinga\Protocol\File\FileReader; @@ -28,7 +31,7 @@ class ListController extends Controller 'list/' . str_replace(' ', '', $action) ) - ))->activate($action); + ))->extend(new OutputFormat())->extend(new DashboardAction())->activate($action); } /** @@ -41,16 +44,16 @@ class ListController extends Controller } $this->addTitleTab('application log'); - $pattern = '/^(?[0-9]{4}(-[0-9]{2}){2}' // date - . 'T[0-9]{2}(:[0-9]{2}){2}([\\+\\-][0-9]{2}:[0-9]{2})?)' // time - . ' - (?[A-Za-z]+)' // loglevel - . ' - (?.*)$/'; // message - $loggerWriter = Logger::getInstance()->getWriter(); $resource = new FileReader(new ConfigObject(array( - 'filename' => $loggerWriter->getPath(), - 'fields' => $pattern + 'filename' => Config::app()->get('logging', 'file'), + 'fields' => '/(?[0-9]{4}(?:-[0-9]{2}){2}' // date + . 'T[0-9]{2}(?::[0-9]{2}){2}(?:[\+\-][0-9]{2}:[0-9]{2})?)' // time + . ' - (?[A-Za-z]+) - (?.*)(?!.)/msS' // loglevel, message ))); $this->view->logData = $resource->select()->order('DESC')->paginate(); + + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->logData); } } diff --git a/application/controllers/RolesController.php b/application/controllers/RolesController.php index 2b7b520c5..d4b7b7c63 100644 --- a/application/controllers/RolesController.php +++ b/application/controllers/RolesController.php @@ -20,24 +20,24 @@ class RolesController extends ActionController */ public function init() { - $this->assertPermission('system/config/roles'); + $this->assertPermission('config/application/roles'); $tabs = $this->getTabs(); $auth = $this->Auth(); - if ($auth->hasPermission('system/config/application')) { + if ($auth->hasPermission('config/application/general')) { $tabs->add('application', array( 'title' => $this->translate('Adjust the general configuration of Icinga Web 2'), 'label' => $this->translate('Application'), 'url' => 'config' )); } - if ($auth->hasPermission('system/config/authentication')) { + if ($auth->hasPermission('config/application/authentication')) { $tabs->add('authentication', array( 'title' => $this->translate('Configure how users authenticate with and log into Icinga Web 2'), 'label' => $this->translate('Authentication'), 'url' => 'config/authentication' )); } - if ($auth->hasPermission('system/config/resources')) { + if ($auth->hasPermission('config/application/resources')) { $tabs->add('resource', array( 'title' => $this->translate('Configure which resources are being utilized by Icinga Web 2'), 'label' => $this->translate('Resources'), @@ -51,7 +51,6 @@ class RolesController extends ActionController 'label' => $this->translate('Roles'), 'url' => 'roles' )); - $this->getTabs()->setTitle($this->translate('Role Configuration')); } /** diff --git a/application/forms/AutoRefreshForm.php b/application/forms/AutoRefreshForm.php index e1e436d34..1d2eda2be 100644 --- a/application/forms/AutoRefreshForm.php +++ b/application/forms/AutoRefreshForm.php @@ -21,6 +21,8 @@ class AutoRefreshForm extends Form public function init() { $this->setName('form_auto_refresh'); + // Post against the current location + $this->setAction(''); } /** diff --git a/application/forms/Config/Authentication/DbBackendForm.php b/application/forms/Config/Authentication/DbBackendForm.php index 619c7dd5d..e96b9637c 100644 --- a/application/forms/Config/Authentication/DbBackendForm.php +++ b/application/forms/Config/Authentication/DbBackendForm.php @@ -34,7 +34,7 @@ class DbBackendForm extends Form * * @param array $resources The resources to choose from * - * @return self + * @return $this */ public function setResources(array $resources) { diff --git a/application/forms/Config/Authentication/ExternalBackendForm.php b/application/forms/Config/Authentication/ExternalBackendForm.php index e25661596..86087eb66 100644 --- a/application/forms/Config/Authentication/ExternalBackendForm.php +++ b/application/forms/Config/Authentication/ExternalBackendForm.php @@ -53,7 +53,7 @@ class ExternalBackendForm extends Form return @preg_match($value, '') !== false; }); $callbackValidator->setMessage( - $this->translate('"%value%" is not a valid regular expression'), + $this->translate('"%value%" is not a valid regular expression.'), Zend_Validate_Callback::INVALID_VALUE ); $this->addElement( @@ -62,9 +62,10 @@ class ExternalBackendForm extends Form array( 'label' => $this->translate('Filter Pattern'), 'description' => $this->translate( - 'The regular expression to use to strip specific parts off from usernames.' - . ' Leave empty if you do not want to strip off anything' + 'The filter to use to strip specific parts off from usernames.' + . ' Leave empty if you do not want to strip off anything.' ), + 'requirement' => $this->translate('The filter pattern must be a valid regular expression.'), 'validators' => array($callbackValidator) ) ); diff --git a/application/forms/Config/Authentication/LdapBackendForm.php b/application/forms/Config/Authentication/LdapBackendForm.php index 4c7a027a7..562526788 100644 --- a/application/forms/Config/Authentication/LdapBackendForm.php +++ b/application/forms/Config/Authentication/LdapBackendForm.php @@ -35,7 +35,7 @@ class LdapBackendForm extends Form * * @param array $resources The resources to choose from * - * @return self + * @return $this */ public function setResources(array $resources) { @@ -55,7 +55,7 @@ class LdapBackendForm extends Form 'required' => true, 'label' => $this->translate('Backend Name'), 'description' => $this->translate( - 'The name of this authentication provider that is used to differentiate it from others' + 'The name of this authentication provider that is used to differentiate it from others.' ) ) ); @@ -64,8 +64,10 @@ class LdapBackendForm extends Form 'resource', array( 'required' => true, - 'label' => $this->translate('LDAP Resource'), - 'description' => $this->translate('The resource to use for authenticating with this provider'), + 'label' => $this->translate('LDAP Connection'), + 'description' => $this->translate( + 'The LDAP connection to use for authenticating with this provider.' + ), 'multiOptions' => false === empty($this->resources) ? array_combine($this->resources, $this->resources) : array() @@ -77,10 +79,40 @@ class LdapBackendForm extends Form array( 'required' => true, 'label' => $this->translate('LDAP User Object Class'), - 'description' => $this->translate('The object class used for storing users on the ldap server'), + 'description' => $this->translate('The object class used for storing users on the LDAP server.'), 'value' => 'inetOrgPerson' ) ); + $this->addElement( + 'text', + 'filter', + array( + 'allowEmpty' => true, + 'label' => $this->translate('LDAP Filter'), + 'description' => $this->translate( + 'An additional filter to use when looking up users using the specified connection. ' + . 'Leave empty to not to use any additional filter rules.' + ), + 'requirement' => $this->translate( + 'The filter needs to be expressed as standard LDAP expression, without' + . ' outer parentheses. (e.g. &(foo=bar)(bar=foo) or foo=bar)' + ), + 'validators' => array( + array( + 'Callback', + false, + array( + 'callback' => function ($v) { + return strpos($v, '(') !== 0; + }, + 'messages' => array( + 'callbackValue' => $this->translate('The filter must not be wrapped in parantheses.') + ) + ) + ) + ) + ) + ); $this->addElement( 'text', 'user_name_attribute', @@ -88,7 +120,7 @@ class LdapBackendForm extends Form 'required' => true, 'label' => $this->translate('LDAP User Name Attribute'), 'description' => $this->translate( - 'The attribute name used for storing the user name on the ldap server' + 'The attribute name used for storing the user name on the LDAP server.' ), 'value' => 'uid' ) @@ -106,10 +138,10 @@ class LdapBackendForm extends Form 'base_dn', array( 'required' => false, - 'label' => $this->translate('Base DN'), + 'label' => $this->translate('LDAP Base DN'), 'description' => $this->translate( - 'The path where users can be found on the ldap server. Leave ' . - 'empty to select all users available on the specified resource.' + 'The path where users can be found on the LDAP server. Leave ' . + 'empty to select all users available using the specified connection.' ) ) ); @@ -142,11 +174,17 @@ class LdapBackendForm extends Form ResourceFactory::createResource($form->getResourceConfig()), $form->getElement('user_class')->getValue(), $form->getElement('user_name_attribute')->getValue(), - $form->getElement('base_dn')->getValue() + $form->getElement('base_dn')->getValue(), + $form->getElement('filter')->getValue() ); $ldapUserBackend->assertAuthenticationPossible(); } catch (AuthenticationException $e) { - $form->addError($e->getMessage()); + if (($previous = $e->getPrevious()) !== null) { + $form->addError($previous->getMessage()); + } else { + $form->addError($e->getMessage()); + } + return false; } catch (Exception $e) { $form->addError(sprintf($form->translate('Unable to validate authentication: %s'), $e->getMessage())); diff --git a/application/forms/Config/AuthenticationBackendConfigForm.php b/application/forms/Config/AuthenticationBackendConfigForm.php index 276d73b94..86322902b 100644 --- a/application/forms/Config/AuthenticationBackendConfigForm.php +++ b/application/forms/Config/AuthenticationBackendConfigForm.php @@ -38,7 +38,7 @@ class AuthenticationBackendConfigForm extends ConfigForm * * @param Config $resources The resource configuration * - * @return self + * @return $this */ public function setResourceConfig(Config $resourceConfig) { @@ -82,7 +82,7 @@ class AuthenticationBackendConfigForm extends ConfigForm * * @param array $values The values to extend the configuration with * - * @return self + * @return $this * * @throws InvalidArgumentException In case the backend does already exist */ @@ -159,7 +159,7 @@ class AuthenticationBackendConfigForm extends ConfigForm * @param string $name The name of the backend to be moved * @param int $position The new (absolute) position of the backend * - * @return self + * @return $this * * @throws InvalidArgumentException In case the backend does not exist */ diff --git a/application/forms/Config/AuthenticationBackendReorderForm.php b/application/forms/Config/AuthenticationBackendReorderForm.php index e4ac90c12..34f20d851 100644 --- a/application/forms/Config/AuthenticationBackendReorderForm.php +++ b/application/forms/Config/AuthenticationBackendReorderForm.php @@ -51,7 +51,7 @@ class AuthenticationBackendReorderForm extends ConfigForm try { if ($configForm->move($backendName, $position)->save()) { - Notification::success($this->translate('Authentication order updated!')); + Notification::success($this->translate('Authentication order updated')); } else { return false; } diff --git a/application/forms/Config/General/LoggingConfigForm.php b/application/forms/Config/General/LoggingConfigForm.php index 1c4e090c4..bd62f4490 100644 --- a/application/forms/Config/General/LoggingConfigForm.php +++ b/application/forms/Config/General/LoggingConfigForm.php @@ -66,6 +66,7 @@ class LoggingConfigForm extends Form 'description' => $this->translate( 'The name of the application by which to prefix syslog messages.' ), + 'requirement' => $this->translate('The application prefix must not contain whitespace.'), 'value' => 'icingaweb2', 'validators' => array( array( diff --git a/application/forms/Config/Resource/DbResourceForm.php b/application/forms/Config/Resource/DbResourceForm.php index 7bf0cb8ff..0ee64eda3 100644 --- a/application/forms/Config/Resource/DbResourceForm.php +++ b/application/forms/Config/Resource/DbResourceForm.php @@ -49,6 +49,7 @@ class DbResourceForm extends Form 'db', array( 'required' => true, + 'autosubmit' => true, 'label' => $this->translate('Database Type'), 'description' => $this->translate('The type of SQL database'), 'multiOptions' => $dbChoices @@ -68,10 +69,11 @@ class DbResourceForm extends Form 'number', 'port', array( - 'required' => true, - 'label' => $this->translate('Port'), - 'description' => $this->translate('The port to use'), - 'value' => 3306 + 'required' => true, + 'preserveDefault' => true, + 'label' => $this->translate('Port'), + 'description' => $this->translate('The port to use'), + 'value' => ! array_key_exists('db', $formData) || $formData['db'] === 'mysql' ? 3306 : 5432 ) ); $this->addElement( diff --git a/application/forms/Config/Resource/FileResourceForm.php b/application/forms/Config/Resource/FileResourceForm.php index b1bb0c6ae..184a5c18a 100644 --- a/application/forms/Config/Resource/FileResourceForm.php +++ b/application/forms/Config/Resource/FileResourceForm.php @@ -3,6 +3,7 @@ namespace Icinga\Forms\Config\Resource; +use Zend_Validate_Callback; use Icinga\Web\Form; /** @@ -42,13 +43,22 @@ class FileResourceForm extends Form 'validators' => array('ReadablePathValidator') ) ); + $callbackValidator = new Zend_Validate_Callback(function ($value) { + return @preg_match($value, '') !== false; + }); + $callbackValidator->setMessage( + $this->translate('"%value%" is not a valid regular expression.'), + Zend_Validate_Callback::INVALID_VALUE + ); $this->addElement( 'text', 'fields', array( 'required' => true, 'label' => $this->translate('Pattern'), - 'description' => $this->translate('The regular expression by which to identify columns') + 'description' => $this->translate('The pattern by which to identify columns.'), + 'requirement' => $this->translate('The column pattern must be a valid regular expression.'), + 'validators' => array($callbackValidator) ) ); diff --git a/application/forms/Config/Resource/LdapResourceForm.php b/application/forms/Config/Resource/LdapResourceForm.php index 499d39941..fea16c4e5 100644 --- a/application/forms/Config/Resource/LdapResourceForm.php +++ b/application/forms/Config/Resource/LdapResourceForm.php @@ -7,6 +7,7 @@ use Exception; use Icinga\Web\Form; use Icinga\Data\ConfigObject; use Icinga\Data\ResourceFactory; +use Icinga\Protocol\Ldap\Connection; /** * Form class for adding/modifying ldap resources @@ -26,6 +27,10 @@ class LdapResourceForm extends Form */ public function createElements(array $formData) { + $defaultPort = ! array_key_exists('encryption', $formData) || $formData['encryption'] !== Connection::LDAPS + ? 389 + : 636; + $this->addElement( 'text', 'name', @@ -51,12 +56,48 @@ class LdapResourceForm extends Form 'number', 'port', array( - 'required' => true, - 'label' => $this->translate('Port'), - 'description' => $this->translate('The port of the LDAP server to use for authentication'), - 'value' => 389 + 'required' => true, + 'preserveDefault' => true, + 'label' => $this->translate('Port'), + 'description' => $this->translate('The port of the LDAP server to use for authentication'), + 'value' => $defaultPort ) ); + $this->addElement( + 'select', + 'encryption', + array( + 'required' => true, + 'autosubmit' => true, + 'label' => $this->translate('Encryption'), + 'description' => $this->translate( + 'Whether to encrypt communication. Choose STARTTLS or LDAPS for encrypted communication or' + . ' none for unencrypted communication' + ), + 'multiOptions' => array( + 'none' => $this->translate('None', 'resource.ldap.encryption'), + Connection::STARTTLS => 'STARTTLS', + Connection::LDAPS => 'LDAPS' + ) + ) + ); + + if (isset($formData['encryption']) && $formData['encryption'] !== 'none') { + // TODO(jom): Do not show this checkbox unless the connection is actually failing due to certificate errors + $this->addElement( + 'checkbox', + 'reqcert', + array( + 'required' => true, + 'label' => $this->translate('Require Certificate'), + 'description' => $this->translate( + 'When checked, the LDAP server must provide a valid and known (trusted) certificate.' + ), + 'value' => 1 + ) + ); + } + $this->addElement( 'text', 'root_dn', @@ -119,12 +160,15 @@ class LdapResourceForm extends Form $form->getElement('bind_pw')->getValue() ) ) { - throw new Exception(); + throw new Exception(); // TODO: Get the exact error message } } catch (Exception $e) { - $form->addError( - $form->translate('Connectivity validation failed, connection to the given resource not possible.') - ); + $msg = $form->translate('Connectivity validation failed, connection to the given resource not possible.'); + if (($error = $e->getMessage())) { + $msg .= ' (' . $error . ')'; + } + + $form->addError($msg); return false; } diff --git a/application/forms/Config/ResourceConfigForm.php b/application/forms/Config/ResourceConfigForm.php index ce99d1e4c..5d1eeaa9b 100644 --- a/application/forms/Config/ResourceConfigForm.php +++ b/application/forms/Config/ResourceConfigForm.php @@ -53,7 +53,7 @@ class ResourceConfigForm extends ConfigForm * * @param array $values The values to extend the configuration with * - * @return self + * @return $this * * @thrwos InvalidArgumentException In case the resource does already exist */ diff --git a/application/forms/ConfigForm.php b/application/forms/ConfigForm.php index e3602966a..58d550793 100644 --- a/application/forms/ConfigForm.php +++ b/application/forms/ConfigForm.php @@ -25,7 +25,7 @@ class ConfigForm extends Form * * @param Config $config The configuration to use * - * @return self + * @return $this */ public function setIniConfig(Config $config) { diff --git a/application/forms/Dashboard/DashletForm.php b/application/forms/Dashboard/DashletForm.php index 59ae41582..d25001a23 100644 --- a/application/forms/Dashboard/DashletForm.php +++ b/application/forms/Dashboard/DashletForm.php @@ -148,9 +148,9 @@ class DashletForm extends Form $this->populate(array( 'pane' => $dashlet->getPane()->getName(), 'org_pane' => $dashlet->getPane()->getName(), - 'dashlet' => $dashlet->getTitle(), - 'org_dashlet' => $dashlet->getTitle(), - 'url' => $dashlet->getUrl() + 'dashlet' => $dashlet->getTitle(), + 'org_dashlet' => $dashlet->getTitle(), + 'url' => $dashlet->getUrl()->getRelativeUrl() )); } } diff --git a/application/forms/PreferenceForm.php b/application/forms/PreferenceForm.php index 09aa6b652..d098cb781 100644 --- a/application/forms/PreferenceForm.php +++ b/application/forms/PreferenceForm.php @@ -48,7 +48,7 @@ class PreferenceForm extends Form * * @param Preferences $preferences The preferences to work with * - * @return self + * @return $this */ public function setPreferences(Preferences $preferences) { @@ -61,17 +61,18 @@ class PreferenceForm extends Form * * @param PreferencesStore $store The preference store to use * - * @return self + * @return $this */ public function setStore(PreferencesStore $store) { $this->store = $store; + return $this; } /** * Persist preferences * - * @return self + * @return $this */ public function save() { diff --git a/application/forms/Security/RoleForm.php b/application/forms/Security/RoleForm.php index 85691de24..07b09ce17 100644 --- a/application/forms/Security/RoleForm.php +++ b/application/forms/Security/RoleForm.php @@ -18,39 +18,39 @@ class RoleForm extends ConfigForm /** * Provided permissions by currently loaded modules * - * @type array + * @var array */ protected $providedPermissions = array( - '*' => '*', - 'system/config/*' => 'system/config/*', - 'system/config/application' => 'system/config/application', - 'system/config/authentication' => 'system/config/authentication', - 'system/config/modules' => 'system/config/modules', - 'system/config/resources' => 'system/config/resources', - 'system/config/roles' => 'system/config/roles' + '*' => '*', + 'config/*' => 'config/*', + 'config/application/*' => 'config/application/*', + 'config/application/general' => 'config/application/general', + 'config/application/authentication' => 'config/application/authentication', + 'config/application/resources' => 'config/application/resources', + 'config/application/roles' => 'config/application/roles', + 'config/modules' => 'config/modules' ); /** * Provided restrictions by currently loaded modules * - * @type array + * @var array */ protected $providedRestrictions = array(); /** - * (non-PHPDoc) - * @see \Icinga\Web\Form::init() For the method documentation. + * {@inheritdoc} */ public function init() { $helper = new Zend_Form_Element('bogus'); foreach (Icinga::app()->getModuleManager()->getLoadedModules() as $module) { foreach ($module->getProvidedPermissions() as $permission) { - /** @type object $permission */ + /** @var object $permission */ $this->providedPermissions[$permission->name] = $permission->name . ': ' . $permission->description; } foreach ($module->getProvidedRestrictions() as $restriction) { - /** @type object $restriction */ + /** @var object $restriction */ $name = $helper->filterName($restriction->name); // Zend only permits alphanumerics, the underscore, // the circumflex and any ASCII character in range // \x7f to \xff (127 to 255) @@ -68,8 +68,7 @@ class RoleForm extends ConfigForm } /** - * (non-PHPDoc) - * @see \Icinga\Web\Form::createElements() For the method documentation. + * {@inheritdoc} */ public function createElements(array $formData = array()) { @@ -253,8 +252,7 @@ class RoleForm extends ConfigForm } /** - * (non-PHPDoc) - * @see \Zend_Form::getValues() For the method documentation. + * {@inheritdoc} */ public function getValues($suppressArrayNotation = false) { diff --git a/application/layouts/scripts/body.phtml b/application/layouts/scripts/body.phtml index 03c0f5905..78bb4f91d 100644 --- a/application/layouts/scripts/body.phtml +++ b/application/layouts/scripts/body.phtml @@ -29,7 +29,16 @@ if ($notifications->hasMessages()) { } ?> diff --git a/application/layouts/scripts/parts/navigation.phtml b/application/layouts/scripts/parts/navigation.phtml index 2136c0fd5..92273e4b4 100644 --- a/application/layouts/scripts/parts/navigation.phtml +++ b/application/layouts/scripts/parts/navigation.phtml @@ -21,7 +21,7 @@ if (! $this->auth()->isAuthenticated()) { - diff --git a/modules/doc/application/views/scripts/pdf.phtml b/modules/doc/application/views/scripts/pdf.phtml index e76ded957..2666efb1c 100644 --- a/modules/doc/application/views/scripts/pdf.phtml +++ b/modules/doc/application/views/scripts/pdf.phtml @@ -1,5 +1,5 @@
-

- - +

+ +
diff --git a/modules/doc/application/views/scripts/search/index.phtml b/modules/doc/application/views/scripts/search/index.phtml index 272ab3a79..3311c47a1 100644 --- a/modules/doc/application/views/scripts/search/index.phtml +++ b/modules/doc/application/views/scripts/search/index.phtml @@ -1,5 +1,5 @@
- $search): ?> + $search): ?> isEmpty()): ?>

escape($title) ?>

diff --git a/modules/doc/application/views/scripts/toc.phtml b/modules/doc/application/views/scripts/toc.phtml index daec9b177..5a57e5bda 100644 --- a/modules/doc/application/views/scripts/toc.phtml +++ b/modules/doc/application/views/scripts/toc.phtml @@ -1,7 +1,7 @@
- showOnlyCloseButton() ?> -

+ showOnlyCloseButton() ?> +

- +
diff --git a/modules/doc/configuration.php b/modules/doc/configuration.php index fdbada7af..031a62e64 100644 --- a/modules/doc/configuration.php +++ b/modules/doc/configuration.php @@ -1,7 +1,7 @@ menuSection($this->translate('Documentation'), array( 'title' => 'Documentation', @@ -21,4 +21,4 @@ $section->add($this->translate('Developer - Style'), array( 'priority' => 200, )); -$this->provideSearchUrl($this->translate('Doc'), 'doc/search'); +$this->provideSearchUrl($this->translate('Doc'), 'doc/search', -10); diff --git a/modules/doc/library/Doc/DocController.php b/modules/doc/library/Doc/DocController.php index de02a3bae..36abe6b10 100644 --- a/modules/doc/library/Doc/DocController.php +++ b/modules/doc/library/Doc/DocController.php @@ -5,9 +5,9 @@ namespace Icinga\Module\Doc; use Icinga\Module\Doc\Renderer\DocSectionRenderer; use Icinga\Module\Doc\Renderer\DocTocRenderer; -use Icinga\Web\Controller\ModuleActionController; +use Icinga\Web\Controller; -class DocController extends ModuleActionController +class DocController extends Controller { /** * Render a chapter diff --git a/modules/doc/library/Doc/DocIterator.php b/modules/doc/library/Doc/DocIterator.php index cbea037d6..430d25445 100644 --- a/modules/doc/library/Doc/DocIterator.php +++ b/modules/doc/library/Doc/DocIterator.php @@ -19,7 +19,7 @@ class DocIterator implements Countable, IteratorAggregate /** * Ordered files * - * @type array + * @var array */ protected $fileInfo; diff --git a/modules/doc/library/Doc/DocParser.php b/modules/doc/library/Doc/DocParser.php index 9077d3ef9..a35ebc05b 100644 --- a/modules/doc/library/Doc/DocParser.php +++ b/modules/doc/library/Doc/DocParser.php @@ -18,14 +18,14 @@ class DocParser /** * Path to the documentation * - * @type string + * @var string */ protected $path; /** * Iterator over documentation files * - * @type DocIterator + * @var DocIterator */ protected $docIterator; @@ -130,7 +130,7 @@ class DocParser $tree = new SimpleTree(); $stack = new SplStack(); foreach ($this->docIterator as $fileInfo) { - /** @type $fileInfo \SplFileInfo */ + /** @var $fileInfo \SplFileInfo */ $file = $fileInfo->openFile(); $lastLine = null; foreach ($file as $line) { @@ -143,7 +143,7 @@ class DocParser if ($id === null) { $path = array(); foreach ($stack as $section) { - /** @type $section DocSection */ + /** @var $section DocSection */ $path[] = $section->getTitle(); } $path[] = $title; diff --git a/modules/doc/library/Doc/DocSection.php b/modules/doc/library/Doc/DocSection.php index 4b97db282..4121fd69e 100644 --- a/modules/doc/library/Doc/DocSection.php +++ b/modules/doc/library/Doc/DocSection.php @@ -13,35 +13,35 @@ class DocSection extends TreeNode /** * Chapter the section belongs to * - * @type DocSection + * @var DocSection */ protected $chapter; /** * Content of the section * - * @type array + * @var array */ protected $content = array(); /** * Header level * - * @type int + * @var int */ protected $level; /** * Whether to instruct search engines to not index the link to the section * - * @type bool + * @var bool */ protected $noFollow; /** * Title of the section * - * @type string + * @var string */ protected $title; diff --git a/modules/doc/library/Doc/DocSectionFilterIterator.php b/modules/doc/library/Doc/DocSectionFilterIterator.php index 1087d1584..fa92583ca 100644 --- a/modules/doc/library/Doc/DocSectionFilterIterator.php +++ b/modules/doc/library/Doc/DocSectionFilterIterator.php @@ -19,7 +19,7 @@ class DocSectionFilterIterator extends RecursiveFilterIterator implements Counta /** * Chapter to filter for * - * @type string + * @var string */ protected $chapter; @@ -44,7 +44,7 @@ class DocSectionFilterIterator extends RecursiveFilterIterator implements Counta public function accept() { $section = $this->current(); - /** @type \Icinga\Module\Doc\DocSection $section */ + /** @var \Icinga\Module\Doc\DocSection $section */ if ($section->getChapter()->getId() === $this->chapter) { return true; } diff --git a/modules/doc/library/Doc/Renderer/DocRenderer.php b/modules/doc/library/Doc/Renderer/DocRenderer.php index 4d7ddd0ed..3574f24b0 100644 --- a/modules/doc/library/Doc/Renderer/DocRenderer.php +++ b/modules/doc/library/Doc/Renderer/DocRenderer.php @@ -16,21 +16,21 @@ abstract class DocRenderer extends RecursiveIteratorIterator /** * URL to replace links with * - * @type string + * @var string */ protected $url; /** * Additional URL parameters * - * @type array + * @var array */ protected $urlParams = array(); /** * View * - * @type View|null + * @var View|null */ protected $view; diff --git a/modules/doc/library/Doc/Renderer/DocSearchRenderer.php b/modules/doc/library/Doc/Renderer/DocSearchRenderer.php index 31445dfc8..a89e49333 100644 --- a/modules/doc/library/Doc/Renderer/DocSearchRenderer.php +++ b/modules/doc/library/Doc/Renderer/DocSearchRenderer.php @@ -19,7 +19,7 @@ class DocSearchRenderer extends DocRenderer /** * The content to render * - * @type array + * @var array */ protected $content = array(); @@ -105,7 +105,7 @@ class DocSearchRenderer extends DocRenderer $path, array('highlight-search' => $this->getInnerIterator()->getSearch()->getInput()) ); - /** @type \Icinga\Web\Url $url */ + /** @var \Icinga\Web\Url $url */ $url->setAnchor($this->encodeAnchor($section->getId())); $urlAttributes = array( 'data-base-target' => '_next', diff --git a/modules/doc/library/Doc/Renderer/DocSectionRenderer.php b/modules/doc/library/Doc/Renderer/DocSectionRenderer.php index e6f0ea186..088c5d617 100644 --- a/modules/doc/library/Doc/Renderer/DocSectionRenderer.php +++ b/modules/doc/library/Doc/Renderer/DocSectionRenderer.php @@ -26,28 +26,28 @@ class DocSectionRenderer extends DocRenderer /** * Content to render * - * @type array + * @var array */ protected $content = array(); /** * Search criteria to highlight * - * @type string + * @var string */ protected $highlightSearch; /** * Parsedown instance * - * @type Parsedown + * @var Parsedown */ protected $parsedown; /** * Documentation tree * - * @type SimpleTree + * @var SimpleTree */ protected $tree; @@ -169,7 +169,7 @@ class DocSectionRenderer extends DocRenderer $doc->loadHTML($match[0]); $xpath = new DOMXPath($doc); $blockquote = $xpath->query('//blockquote[1]')->item(0); - /** @type \DOMElement $blockquote */ + /** @var \DOMElement $blockquote */ if (strtolower(substr(trim($blockquote->nodeValue), 0, 5)) === 'note:') { $blockquote->setAttribute('class', 'note'); } @@ -189,7 +189,7 @@ class DocSectionRenderer extends DocRenderer $doc->loadHTML($match[0]); $xpath = new DOMXPath($doc); $img = $xpath->query('//img[1]')->item(0); - /** @type \DOMElement $img */ + /** @var \DOMElement $img */ $img->setAttribute('src', Url::fromPath($img->getAttribute('src'))->getAbsoluteUrl()); return substr_replace($doc->saveXML($img), '', -2, 1); // Replace '/>' with '>' } @@ -206,7 +206,7 @@ class DocSectionRenderer extends DocRenderer if (($section = $this->tree->getNode($this->decodeAnchor($match['fragment']))) === null) { return $match[0]; } - /** @type \Icinga\Module\Doc\DocSection $section */ + /** @var \Icinga\Module\Doc\DocSection $section */ $path = $this->getView()->getHelper('Url')->url( array_merge( $this->urlParams, @@ -219,7 +219,7 @@ class DocSectionRenderer extends DocRenderer false ); $url = $this->getView()->url($path); - /** @type \Icinga\Web\Url $url */ + /** @var \Icinga\Web\Url $url */ $url->setAnchor($this->encodeAnchor($section->getId())); return sprintf( 'url($path); - /** @type \Icinga\Web\Url $url */ + /** @var \Icinga\Web\Url $url */ $url->setAnchor($this->encodeAnchor($section->getId())); $urlAttributes = array( 'data-base-target' => '_next', diff --git a/modules/doc/library/Doc/Search/DocSearch.php b/modules/doc/library/Doc/Search/DocSearch.php index 36f249ed6..459cef208 100644 --- a/modules/doc/library/Doc/Search/DocSearch.php +++ b/modules/doc/library/Doc/Search/DocSearch.php @@ -11,14 +11,14 @@ class DocSearch /** * Search string * - * @type string + * @var string */ protected $input; /** * Search criteria * - * @type array + * @var array */ protected $search; diff --git a/modules/doc/library/Doc/Search/DocSearchIterator.php b/modules/doc/library/Doc/Search/DocSearchIterator.php index 66ccc8c37..b239254aa 100644 --- a/modules/doc/library/Doc/Search/DocSearchIterator.php +++ b/modules/doc/library/Doc/Search/DocSearchIterator.php @@ -19,14 +19,14 @@ class DocSearchIterator extends RecursiveFilterIterator /** * Search criteria * - * @type DocSearch + * @var DocSearch */ protected $search; /** * Current search matches * - * @type DocSearchMatch[]|null + * @var DocSearchMatch[]|null */ protected $matches; @@ -51,7 +51,7 @@ class DocSearchIterator extends RecursiveFilterIterator public function accept() { $section = $this->current(); - /** @type $section \Icinga\Module\Doc\DocSection */ + /** @var $section \Icinga\Module\Doc\DocSection */ $matches = array(); if (($match = $this->search->search($section->getTitle())) !== null) { $matches[] = $match->setMatchType(DocSearchMatch::MATCH_HEADER); diff --git a/modules/doc/library/Doc/Search/DocSearchMatch.php b/modules/doc/library/Doc/Search/DocSearchMatch.php index 4f067d43b..52bd528c9 100644 --- a/modules/doc/library/Doc/Search/DocSearchMatch.php +++ b/modules/doc/library/Doc/Search/DocSearchMatch.php @@ -15,56 +15,56 @@ class DocSearchMatch /** * CSS class for highlighting matches * - * @type string + * @var string */ const HIGHLIGHT_CSS_CLASS = 'search-highlight'; /** * Header match * - * @type int + * @var int */ const MATCH_HEADER = 1; /** * Content match * - * @type int + * @var int */ const MATCH_CONTENT = 2; /** * Line * - * @type string + * @var string */ protected $line; /** * Line number * - * @type int + * @var int */ protected $lineno; /** * Type of the match * - * @type int + * @var int */ protected $matchType; /** * Matches * - * @type array + * @var array */ protected $matches = array(); /** * View * - * @type View|null + * @var View|null */ protected $view; diff --git a/modules/doc/module.info b/modules/doc/module.info index 1689fd940..2c6f48ac9 100644 --- a/modules/doc/module.info +++ b/modules/doc/module.info @@ -1,4 +1,4 @@ Module: doc Version: 2.0.0 Description: Documentation module - Extracts, shows and exports documentation for Icinga Web 2 and it's modules. + Extracts, shows and exports documentation for Icinga Web 2 and its modules. diff --git a/modules/monitoring/application/controllers/AlertsummaryController.php b/modules/monitoring/application/controllers/AlertsummaryController.php index cc1d75193..dcc805286 100644 --- a/modules/monitoring/application/controllers/AlertsummaryController.php +++ b/modules/monitoring/application/controllers/AlertsummaryController.php @@ -6,6 +6,7 @@ use Icinga\Chart\Unit\LinearUnit; use Icinga\Chart\Unit\StaticAxis; use Icinga\Module\Monitoring\Controller; use Icinga\Module\Monitoring\Web\Widget\SelectBox; +use Icinga\Web\Widget\Tabextension\DashboardAction; use Icinga\Web\Url; class Monitoring_AlertsummaryController extends Controller @@ -44,7 +45,7 @@ class Monitoring_AlertsummaryController extends Controller 'label' => $this->translate('Alert Summary'), 'url' => Url::fromRequest() ) - )->activate('alertsummary')->setTitle($this->translate('Alertsummary Navigation')); + )->extend(new DashboardAction())->activate('alertsummary'); $this->view->title = $this->translate('Alert Summary'); $this->view->intervalBox = $this->createIntervalBox(); @@ -59,18 +60,20 @@ class Monitoring_AlertsummaryController extends Controller $query = $this->backend->select()->from( 'notification', array( - 'host', + 'host_name', 'host_display_name', - 'service', + 'service_description', 'service_display_name', 'notification_output', - 'notification_contact', + 'notification_contact_name', 'notification_start_time', 'notification_state' ) ); - $this->view->notifications = $query->paginate(); + + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->notifications); } /** @@ -85,12 +88,7 @@ class Monitoring_AlertsummaryController extends Controller $query = $this->backend->select()->from( 'notification', array( - 'host', - 'service', - 'notification_output', - 'notification_contact', - 'notification_start_time', - 'notification_state' + 'notification_start_time' ) ); @@ -138,12 +136,7 @@ class Monitoring_AlertsummaryController extends Controller $query = $this->backend->select()->from( 'notification', array( - 'host', - 'service', - 'notification_output', - 'notification_contact', - 'notification_start_time', - 'notification_state' + 'notification_start_time' ) ); @@ -210,12 +203,7 @@ class Monitoring_AlertsummaryController extends Controller $query = $this->backend->select()->from( 'notification', array( - 'host', - 'service', - 'notification_output', - 'notification_contact', - 'notification_start_time', - 'notification_state' + 'notification_start_time' ) ); @@ -263,20 +251,9 @@ class Monitoring_AlertsummaryController extends Controller $interval = $this->getInterval(); $query = $this->backend->select()->from( - 'EventHistory', + 'eventHistory', array( - 'host_name', - 'service_description', - 'object_type', - 'timestamp', - 'state', - 'attempt', - 'max_attempts', - 'output', - 'type', - 'host', - 'service', - 'service_host_name' + 'timestamp' ) ); @@ -324,11 +301,11 @@ class Monitoring_AlertsummaryController extends Controller public function createHealingChart() { $gridChart = new GridChart(); - $gridChart->title = t('Healing Chart'); - $gridChart->description = t('Notifications and average reaction time per hour.'); + $gridChart->title = $this->translate('Healing Chart'); + $gridChart->description = $this->translate('Notifications and average reaction time per hour.'); $gridChart->alignTopLeft(); - $gridChart->setAxisLabel($this->createPeriodDescription(), mt('monitoring', 'Notifications')) + $gridChart->setAxisLabel($this->createPeriodDescription(), $this->translate('Notifications')) ->setXAxis(new StaticAxis()) ->setYAxis(new LinearUnit(10)) ->setAxisMin(null, 0); @@ -338,11 +315,7 @@ class Monitoring_AlertsummaryController extends Controller $query = $this->backend->select()->from( 'notification', array( - 'host', - 'service', 'notification_object_id', - 'notification_output', - 'notification_contact', 'notification_start_time', 'notification_state', 'acknowledgement_entry_time' @@ -440,7 +413,7 @@ class Monitoring_AlertsummaryController extends Controller 'color' => '#ffaa44', 'data' => $dAvg, 'showPoints' => true, - 'tooltip' => t('{title}: {value}m min. reaction time') + 'tooltip' => $this->translate('{title}: {value}m min. reaction time') ) ); @@ -450,7 +423,7 @@ class Monitoring_AlertsummaryController extends Controller 'color' => '#ff5566', 'data' => $dMax, 'showPoints' => true, - 'tooltip' => t('{title}: {value}m max. reaction time') + 'tooltip' => $this->translate('{title}: {value}m max. reaction time') ) ); @@ -465,11 +438,11 @@ class Monitoring_AlertsummaryController extends Controller public function createDefectImage() { $gridChart = new GridChart(); - $gridChart->title = t('Defect Chart'); - $gridChart->description = t('Notifications and defects per hour'); + $gridChart->title = $this->translate('Defect Chart'); + $gridChart->description = $this->translate('Notifications and defects per hour'); $gridChart->alignTopLeft(); - $gridChart->setAxisLabel($this->createPeriodDescription(), mt('monitoring', 'Notifications')) + $gridChart->setAxisLabel($this->createPeriodDescription(), $this->translate('Notifications')) ->setXAxis(new StaticAxis()) ->setYAxis(new LinearUnit(10)) ->setAxisMin(null, 0); @@ -507,12 +480,12 @@ class Monitoring_AlertsummaryController extends Controller $query = $this->backend->select()->from( 'notification', array( - 'host', + 'host_name', 'host_display_name', - 'service', + 'service_description', 'service_display_name', 'notification_output', - 'notification_contact', + 'notification_contact_name', 'notification_start_time', 'notification_state' ) @@ -533,12 +506,12 @@ class Monitoring_AlertsummaryController extends Controller $box = new SelectBox( 'intervalBox', array( - '1d' => mt('monitoring', 'One day'), - '1w' => mt('monitoring', 'One week'), - '1m' => mt('monitoring', 'One month'), - '1y' => mt('monitoring', 'One year') + '1d' => $this->translate('One day'), + '1w' => $this->translate('One week'), + '1m' => $this->translate('One month'), + '1y' => $this->translate('One year') ), - mt('monitoring', 'Report interval'), + $this->translate('Report interval'), 'interval' ); $box->applyRequest($this->getRequest()); @@ -637,16 +610,16 @@ class Monitoring_AlertsummaryController extends Controller $int = $this->getInterval(); switch ($int) { case '1d': - return t('Hour'); + return $this->translate('Hour'); break; case '1w'; - return t('Day'); + return $this->translate('Day'); break; case '1m': - return t('Day'); + return $this->translate('Day'); break; case '1y': - return t('Month'); + return $this->translate('Month'); break; } } diff --git a/modules/monitoring/application/controllers/ChartController.php b/modules/monitoring/application/controllers/ChartController.php index f19d3f458..39f60c304 100644 --- a/modules/monitoring/application/controllers/ChartController.php +++ b/modules/monitoring/application/controllers/ChartController.php @@ -16,11 +16,6 @@ use Icinga\Chart\Unit\LinearUnit; class Monitoring_ChartController extends Controller { - public function init() - { - $this->view->compact = $this->_request->getParam('view') === 'compact'; - } - private function drawLogChart1() { $chart = new GridChart(); @@ -236,39 +231,39 @@ class Monitoring_ChartController extends Controller $unknownBars[] = array($servicegroup->servicegroup, $servicegroup->services_unknown_unhandled); } $this->view->chart = new GridChart(); - $this->view->chart->title = t('Service Group Chart'); - $this->view->chart->description = t('Contains service states for each service group.'); + $this->view->chart->title = $this->translate('Service Group Chart'); + $this->view->chart->description = $this->translate('Contains service states for each service group.'); $this->view->chart->alignTopLeft(); - $this->view->chart->setAxisLabel('', mt('monitoring', 'Services')) + $this->view->chart->setAxisLabel('', $this->translate('Services')) ->setXAxis(new StaticAxis()) ->setAxisMin(null, 0); - $tooltip = mt('monitoring', '{title}:
{value} of {sum} services are {label}'); + $tooltip = $this->translate('{title}:
{value} of {sum} services are {label}'); $this->view->chart->drawBars( array( - 'label' => mt('monitoring', 'Ok'), + 'label' => $this->translate('Ok'), 'color' => '#44bb77', 'stack' => 'stack1', 'data' => $okBars, 'tooltip' => $tooltip ), array( - 'label' => mt('monitoring', 'Warning'), + 'label' => $this->translate('Warning'), 'color' => '#ffaa44', 'stack' => 'stack1', 'data' => $warningBars, 'tooltip' => $tooltip ), array( - 'label' => mt('monitoring', 'Critical'), + 'label' => $this->translate('Critical'), 'color' => '#ff5566', 'stack' => 'stack1', 'data' => $critBars, 'tooltip' => $tooltip ), array( - 'label' => mt('monitoring', 'Unknown'), + 'label' => $this->translate('Unknown'), 'color' => '#dd66ff', 'stack' => 'stack1', 'data' => $unknownBars, @@ -293,32 +288,32 @@ class Monitoring_ChartController extends Controller (string)$i, rand(1, 200), rand(1, 200) ); } - $tooltip = mt('monitoring', '{title}:
{value} of {sum} hosts are {label}'); + $tooltip = $this->translate('{title}:
{value} of {sum} hosts are {label}'); $this->view->chart = new GridChart(); - $this->view->chart->title = t('Host Group Chart'); - $this->view->chart->description = t('Contains host states of each service group.'); + $this->view->chart->title = $this->translate('Host Group Chart'); + $this->view->chart->description = $this->translate('Contains host states of each service group.'); $this->view->chart->alignTopLeft(); - $this->view->chart->setAxisLabel('', mt('monitoring', 'Hosts')) + $this->view->chart->setAxisLabel('', $this->translate('Hosts')) ->setXAxis(new StaticAxis()) ->setAxisMin(null, 0); $this->view->chart->drawBars( array( - 'label' => mt('monitoring', 'Up'), + 'label' => $this->translate('Up'), 'color' => '#44bb77', 'stack' => 'stack1', 'data' => $upBars, 'tooltip' => $tooltip ), array( - 'label' => mt('monitoring', 'Down'), + 'label' => $this->translate('Down'), 'color' => '#ff5566', 'stack' => 'stack1', 'data' => $downBars, 'tooltip' => $tooltip ), array( - 'label' => mt('monitoring', 'Unreachable'), + 'label' => $this->translate('Unreachable'), 'color' => '#dd66ff', 'stack' => 'stack1', 'data' => $unreachableBars, @@ -345,13 +340,13 @@ class Monitoring_ChartController extends Controller 'colors' => array('#44bb77', '#ff4444', '#ff0000', '#ffff00', '#ffff33', '#E066FF', '#f099FF', '#fefefe'), 'labels'=> array( $query->services_ok . ' Up Services', - $query->services_warning_handled . mt('monitoring', ' Warning Services (Handled)'), - $query->services_warning_unhandled . mt('monitoring', ' Warning Services (Unhandled)'), - $query->services_critical_handled . mt('monitoring', ' Down Services (Handled)'), - $query->services_critical_unhandled . mt('monitoring', ' Down Services (Unhandled)'), - $query->services_unknown_handled . mt('monitoring', ' Unreachable Services (Handled)'), - $query->services_unknown_unhandled . mt('monitoring', ' Unreachable Services (Unhandled)'), - $query->services_pending . mt('monitoring', ' Pending Services') + $query->services_warning_handled . $this->translate(' Warning Services (Handled)'), + $query->services_warning_unhandled . $this->translate(' Warning Services (Unhandled)'), + $query->services_critical_handled . $this->translate(' Down Services (Handled)'), + $query->services_critical_unhandled . $this->translate(' Down Services (Unhandled)'), + $query->services_unknown_handled . $this->translate(' Unreachable Services (Handled)'), + $query->services_unknown_unhandled . $this->translate(' Unreachable Services (Unhandled)'), + $query->services_pending . $this->translate(' Pending Services') ) )); } @@ -378,12 +373,12 @@ class Monitoring_ChartController extends Controller '#fefefe' ), 'labels'=> array( - (int) $query->hosts_up . mt('monitoring', ' Up Hosts'), - (int) $query->hosts_down_handled . mt('monitoring', ' Down Hosts (Handled)'), - (int) $query->hosts_down_unhandled . mt('monitoring', ' Down Hosts (Unhandled)'), - (int) $query->hosts_unreachable_handled . mt('monitoring', ' Unreachable Hosts (Handled)'), - (int) $query->hosts_unreachable_unhandled . mt('monitoring', ' Unreachable Hosts (Unhandled)'), - (int) $query->hosts_pending . mt('monitoring', ' Pending Hosts') + (int) $query->hosts_up . $this->translate(' Up Hosts'), + (int) $query->hosts_down_handled . $this->translate(' Down Hosts (Handled)'), + (int) $query->hosts_down_unhandled . $this->translate(' Down Hosts (Unhandled)'), + (int) $query->hosts_unreachable_handled . $this->translate(' Unreachable Hosts (Handled)'), + (int) $query->hosts_unreachable_unhandled . $this->translate(' Unreachable Hosts (Unhandled)'), + (int) $query->hosts_pending . $this->translate(' Pending Hosts') ) ), array( 'data' => array( @@ -398,14 +393,14 @@ class Monitoring_ChartController extends Controller ), 'colors' => array('#44bb77', '#ff4444', '#ff0000', '#ffff00', '#ffff33', '#E066FF', '#f099FF', '#fefefe'), 'labels'=> array( - $query->services_ok . mt('monitoring', ' Up Services'), - $query->services_warning_handled . mt('monitoring', ' Warning Services (Handled)'), - $query->services_warning_unhandled . mt('monitoring', ' Warning Services (Unhandled)'), - $query->services_critical_handled . mt('monitoring', ' Down Services (Handled)'), - $query->services_critical_unhandled . mt('monitoring', ' Down Services (Unhandled)'), - $query->services_unknown_handled . mt('monitoring', ' Unreachable Services (Handled)'), - $query->services_unknown_unhandled . mt('monitoring', ' Unreachable Services (Unhandled)'), - $query->services_pending . mt('monitoring', ' Pending Services') + $query->services_ok . $this->translate(' Up Services'), + $query->services_warning_handled . $this->translate(' Warning Services (Handled)'), + $query->services_warning_unhandled . $this->translate(' Warning Services (Unhandled)'), + $query->services_critical_handled . $this->translate(' Down Services (Handled)'), + $query->services_critical_unhandled . $this->translate(' Down Services (Unhandled)'), + $query->services_unknown_handled . $this->translate(' Unreachable Services (Handled)'), + $query->services_unknown_unhandled . $this->translate(' Unreachable Services (Unhandled)'), + $query->services_pending . $this->translate(' Pending Services') ) )); } diff --git a/modules/monitoring/application/controllers/CommentController.php b/modules/monitoring/application/controllers/CommentController.php new file mode 100644 index 000000000..c3fcd18f8 --- /dev/null +++ b/modules/monitoring/application/controllers/CommentController.php @@ -0,0 +1,100 @@ +params->get('comment_id'); + + $this->comment = $this->backend->select()->from('comment', array( + 'id' => 'comment_internal_id', + 'objecttype' => 'comment_objecttype', + 'comment' => 'comment_data', + 'author' => 'comment_author_name', + 'timestamp' => 'comment_timestamp', + 'type' => 'comment_type', + 'persistent' => 'comment_is_persistent', + 'expiration' => 'comment_expiration', + 'host_name', + 'service_description', + 'host_display_name', + 'service_display_name' + ))->where('comment_internal_id', $commentId)->getQuery()->fetchRow(); + + if (false === $this->comment) { + throw new Zend_Controller_Action_Exception($this->translate('Comment not found')); + } + + $this->getTabs()->add( + 'comment', + array( + 'title' => $this->translate( + 'Display detailed information about a comment.' + ), + 'icon' => 'comment', + 'label' => $this->translate('Comment'), + 'url' =>'monitoring/comments/show' + ) + )->activate('comment')->extend(new DashboardAction()); + } + + /** + * Display comment detail view + */ + public function showAction() + { + $listCommentsLink = Url::fromPath('monitoring/list/comments') + ->setQueryString('comment_type=(comment|ack)'); + + $this->view->comment = $this->comment; + if ($this->hasPermission('monitoring/command/comment/delete')) { + $this->view->delCommentForm = $this->createDelCommentForm(); + $this->view->delCommentForm->populate( + array( + 'redirect' => $listCommentsLink, + 'comment_id' => $this->comment->id, + 'comment_is_service' => isset($this->comment->service_description) + ) + ); + } + } + + /** + * Create a command form to delete a single comment + * + * @return DeleteCommentsCommandForm + */ + private function createDelCommentForm() + { + $this->assertPermission('monitoring/command/comment/delete'); + + $delCommentForm = new DeleteCommentCommandForm(); + $delCommentForm->setAction( + Url::fromPath('monitoring/comment/show') + ->setParam('comment_id', $this->comment->id) + ); + $delCommentForm->handleRequest(); + return $delCommentForm; + } +} diff --git a/modules/monitoring/application/controllers/CommentsController.php b/modules/monitoring/application/controllers/CommentsController.php new file mode 100644 index 000000000..e9a885dbe --- /dev/null +++ b/modules/monitoring/application/controllers/CommentsController.php @@ -0,0 +1,100 @@ +filter = Filter::fromQueryString(str_replace( + 'comment_id', + 'comment_internal_id', + (string)$this->params + )); + $this->comments = $this->backend->select()->from('comment', array( + 'id' => 'comment_internal_id', + 'objecttype' => 'comment_objecttype', + 'comment' => 'comment_data', + 'author' => 'comment_author_name', + 'timestamp' => 'comment_timestamp', + 'type' => 'comment_type', + 'persistent' => 'comment_is_persistent', + 'expiration' => 'comment_expiration', + 'host_name', + 'service_description', + 'host_display_name', + 'service_display_name' + ))->addFilter($this->filter)->getQuery()->fetchAll(); + + if (false === $this->comments) { + throw new Zend_Controller_Action_Exception($this->translate('Comment not found')); + } + + $this->getTabs()->add( + 'comments', + array( + 'title' => $this->translate( + 'Display detailed information about multiple comments.' + ), + 'icon' => 'comment', + 'label' => $this->translate('Comments'), + 'url' =>'monitoring/comments/show' + ) + )->activate('comments'); + } + + /** + * Display the detail view for a comment list + */ + public function showAction() + { + $this->view->comments = $this->comments; + $this->view->listAllLink = Url::fromPath('monitoring/list/comments') + ->setQueryString($this->filter->toQueryString()); + $this->view->removeAllLink = Url::fromPath('monitoring/comments/delete-all') + ->setParams($this->params); + } + + /** + * Display the form for removing a comment list + */ + public function deleteAllAction() + { + $this->assertPermission('monitoring/command/comment/delete'); + + $listCommentsLink = Url::fromPath('monitoring/list/comments') + ->setQueryString('comment_type=(comment|ack)'); + $delCommentForm = new DeleteCommentsCommandForm(); + $delCommentForm->setTitle($this->view->translate('Remove all Comments')); + $delCommentForm->addDescription(sprintf( + $this->translate('Confirm removal of %d comments.'), + count($this->comments) + )); + $delCommentForm->setComments($this->comments) + ->setRedirectUrl($listCommentsLink) + ->handleRequest(); + $this->view->delCommentForm = $delCommentForm; + $this->view->comments = $this->comments; + $this->view->listAllLink = Url::fromPath('monitoring/list/comments') + ->setQueryString($this->filter->toQueryString()); + } +} diff --git a/modules/monitoring/application/controllers/ConfigController.php b/modules/monitoring/application/controllers/ConfigController.php index 2571b071e..33bf142f3 100644 --- a/modules/monitoring/application/controllers/ConfigController.php +++ b/modules/monitoring/application/controllers/ConfigController.php @@ -4,7 +4,7 @@ use Icinga\Web\Notification; use Icinga\Data\ResourceFactory; use Icinga\Forms\ConfirmRemovalForm; -use Icinga\Web\Controller\ModuleActionController; +use Icinga\Web\Controller; use Icinga\Module\Monitoring\Forms\Config\BackendConfigForm; use Icinga\Module\Monitoring\Forms\Config\InstanceConfigForm; use Icinga\Module\Monitoring\Forms\Config\SecurityConfigForm; @@ -12,7 +12,7 @@ use Icinga\Module\Monitoring\Forms\Config\SecurityConfigForm; /** * Configuration controller for editing monitoring resources */ -class Monitoring_ConfigController extends ModuleActionController +class Monitoring_ConfigController extends Controller { /** * Display a list of available backends and instances diff --git a/modules/monitoring/application/controllers/DowntimeController.php b/modules/monitoring/application/controllers/DowntimeController.php new file mode 100644 index 000000000..c06e0311d --- /dev/null +++ b/modules/monitoring/application/controllers/DowntimeController.php @@ -0,0 +1,141 @@ +params->get('downtime_id'); + + $this->downtime = $this->backend->select()->from('downtime', array( + 'id' => 'downtime_internal_id', + 'objecttype' => 'downtime_objecttype', + 'comment' => 'downtime_comment', + 'author_name' => 'downtime_author_name', + 'start' => 'downtime_start', + 'scheduled_start' => 'downtime_scheduled_start', + 'scheduled_end' => 'downtime_scheduled_end', + 'end' => 'downtime_end', + 'duration' => 'downtime_duration', + 'is_flexible' => 'downtime_is_flexible', + 'is_fixed' => 'downtime_is_fixed', + 'is_in_effect' => 'downtime_is_in_effect', + 'entry_time' => 'downtime_entry_time', + 'host_state' => 'downtime_host_state', + 'service_state' => 'downtime_service_state', + 'host_name', + 'host', + 'service', + 'service_description', + 'host_display_name', + 'service_display_name' + ))->where('downtime_internal_id', $downtimeId)->getQuery()->fetchRow(); + + if (false === $this->downtime) { + throw new Zend_Controller_Action_Exception($this->translate('Downtime not found')); + } + + if (isset($this->downtime->service_description)) { + $this->isService = true; + } else { + $this->isService = false; + } + + $this->getTabs() + ->add( + 'downtime', + array( + 'title' => $this->translate( + 'Display detailed information about a downtime.' + ), + 'icon' => 'plug', + 'label' => $this->translate('Downtime'), + 'url' =>'monitoring/downtimes/show' + ) + )->activate('downtime')->extend(new DashboardAction()); + } + + /** + * Display the detail view for a downtime + */ + public function showAction() + { + $this->view->downtime = $this->downtime; + $this->view->isService = $this->isService; + $this->view->stateName = isset($this->downtime->service_description) ? + Service::getStateText($this->downtime->service_state) : + Host::getStateText($this->downtime->host_state); + $this->view->listAllLink = Url::fromPath('monitoring/list/downtimes'); + $this->view->showHostLink = Url::fromPath('monitoring/host/show') + ->setParam('host', $this->downtime->host); + $this->view->showServiceLink = Url::fromPath('monitoring/service/show') + ->setParam('host', $this->downtime->host) + ->setParam('service', $this->downtime->service_description); + if ($this->hasPermission('monitoring/command/downtime/delete')) { + $this->view->delDowntimeForm = $this->createDelDowntimeForm(); + $this->view->delDowntimeForm->populate( + array( + 'redirect' => Url::fromPath('monitoring/list/downtimes'), + 'downtime_id' => $this->downtime->id, + 'downtime_is_service' => $this->isService + ) + ); + } + } + + /** + * Receive DeleteDowntimeCommandForm post from other controller + */ + public function removeAction() + { + $this->assertHttpMethod('POST'); + $this->createDelDowntimeForm(); + } + + /** + * Create a command form to delete a single comment + * + * @return DeleteDowntimeCommandForm + */ + private function createDelDowntimeForm() + { + $this->assertPermission('monitoring/command/downtime/delete'); + $delDowntimeForm = new DeleteDowntimeCommandForm(); + $delDowntimeForm->setAction( + Url::fromPath('monitoring/downtime/show') + ->setParam('downtime_id', $this->downtime->id) + ); + $delDowntimeForm->handleRequest(); + return $delDowntimeForm; + } +} diff --git a/modules/monitoring/application/controllers/DowntimesController.php b/modules/monitoring/application/controllers/DowntimesController.php new file mode 100644 index 000000000..49424ed3a --- /dev/null +++ b/modules/monitoring/application/controllers/DowntimesController.php @@ -0,0 +1,130 @@ +filter = Filter::fromQueryString(str_replace( + 'downtime_id', + 'downtime_internal_id', + (string)$this->params + )); + $this->downtimes = $this->backend->select()->from('downtime', array( + 'id' => 'downtime_internal_id', + 'objecttype' => 'downtime_objecttype', + 'comment' => 'downtime_comment', + 'author_name' => 'downtime_author_name', + 'start' => 'downtime_start', + 'scheduled_start' => 'downtime_scheduled_start', + 'scheduled_end' => 'downtime_scheduled_end', + 'end' => 'downtime_end', + 'duration' => 'downtime_duration', + 'is_flexible' => 'downtime_is_flexible', + 'is_fixed' => 'downtime_is_fixed', + 'is_in_effect' => 'downtime_is_in_effect', + 'entry_time' => 'downtime_entry_time', + 'host_state' => 'downtime_host_state', + 'service_state' => 'downtime_service_state', + 'host_name', + 'host', + 'service', + 'service_description', + 'host_display_name', + 'service_display_name' + ))->addFilter($this->filter)->getQuery()->fetchAll(); + + if (false === $this->downtimes) { + throw new Zend_Controller_Action_Exception( + $this->translate('Downtime not found') + ); + } + + $this->getTabs()->add( + 'downtimes', + array( + 'title' => $this->translate( + 'Display detailed information about multiple downtimes.' + ), + 'icon' => 'plug', + 'label' => $this->translate('Downtimes'), + 'url' =>'monitoring/downtimes/show' + ) + )->activate('downtimes'); + + foreach ($this->downtimes as $downtime) { + if (isset($downtime->service_description)) { + $downtime->isService = true; + } else { + $downtime->isService = false; + } + + if ($downtime->isService) { + $downtime->stateText = Service::getStateText($downtime->service_state); + } else { + $downtime->stateText = Host::getStateText($downtime->host_state); + } + } + } + + /** + * Display the detail view for a downtime list + */ + public function showAction() + { + $this->view->downtimes = $this->downtimes; + $this->view->listAllLink = Url::fromPath('monitoring/list/downtimes') + ->setQueryString($this->filter->toQueryString()); + $this->view->removeAllLink = Url::fromPath('monitoring/downtimes/delete-all') + ->setParams($this->params); + } + + /** + * Display the form for removing a downtime list + */ + public function deleteAllAction() + { + $this->assertPermission('monitoring/command/downtime/delete'); + $this->view->downtimes = $this->downtimes; + $this->view->listAllLink = Url::fromPath('monitoring/list/downtimes') + ->setQueryString($this->filter->toQueryString()); + $delDowntimeForm = new DeleteDowntimesCommandForm(); + $delDowntimeForm->setTitle($this->view->translate('Remove all Downtimes')); + $delDowntimeForm->addDescription(sprintf( + $this->translate('Confirm removal of %d downtimes.'), + count($this->downtimes) + )); + $delDowntimeForm->setRedirectUrl(Url::fromPath('monitoring/list/downtimes')); + $delDowntimeForm->setDowntimes($this->downtimes)->handleRequest(); + $this->view->delDowntimeForm = $delDowntimeForm; + } +} \ No newline at end of file diff --git a/modules/monitoring/application/controllers/HostController.php b/modules/monitoring/application/controllers/HostController.php index 4a29750e3..f820fc27f 100644 --- a/modules/monitoring/application/controllers/HostController.php +++ b/modules/monitoring/application/controllers/HostController.php @@ -1,11 +1,13 @@ params->get('host') === null) { + throw new MissingParameterException( + $this->translate('Required parameter \'%s\' is missing'), + 'host' + ); + } + $host = new Host($this->backend, $this->params->get('host')); $this->applyRestriction('monitoring/hosts/filter', $host); if ($host->fetch() === false) { - throw new Zend_Controller_Action_Exception($this->translate('Host not found')); + throw new Zend_Controller_Action_Exception( + sprintf($this->translate('Host \'%s\' not found'), $this->params->get('host')), + 404 + ); } $this->object = $host; $this->createTabs(); @@ -118,4 +130,16 @@ class Monitoring_HostController extends MonitoredObjectController $form->setTitle($this->translate('Submit Passive Host Check Result')); $this->handleCommandForm($form); } + + /** + * Send a custom notification for host + */ + public function sendCustomNotificationAction() + { + $this->assertPermission('monitoring/command/send-custom-notification'); + + $form = new SendCustomNotificationCommandForm(); + $form->setTitle($this->translate('Send Custom Host Notification')); + $this->handleCommandForm($form); + } } diff --git a/modules/monitoring/application/controllers/HostsController.php b/modules/monitoring/application/controllers/HostsController.php index b20f8b13c..c390894bf 100644 --- a/modules/monitoring/application/controllers/HostsController.php +++ b/modules/monitoring/application/controllers/HostsController.php @@ -11,10 +11,12 @@ use Icinga\Module\Monitoring\Forms\Command\Object\RemoveAcknowledgementCommandFo use Icinga\Module\Monitoring\Forms\Command\Object\ScheduleHostCheckCommandForm; use Icinga\Module\Monitoring\Forms\Command\Object\ScheduleHostDowntimeCommandForm; use Icinga\Module\Monitoring\Forms\Command\Object\AddCommentCommandForm; +use Icinga\Module\Monitoring\Forms\Command\Object\SendCustomNotificationCommandForm; use Icinga\Module\Monitoring\Object\Host; use Icinga\Module\Monitoring\Object\HostList; use Icinga\Web\Url; use Icinga\Web\Widget\Chart\InlinePie; +use Icinga\Web\Widget\Tabextension\DashboardAction; class Monitoring_HostsController extends Controller { @@ -30,7 +32,7 @@ class Monitoring_HostsController extends Controller $filterString = preg_replace('/(service=[^)&]*)/', '', (string)$this->params); $hostList = new HostList($this->backend); - $hostList->setFilter(Filter::fromQueryString($filterString)); + $hostList->setFilter(Filter::fromQueryString((string) $this->params->without('view'))); $this->hostList = $hostList; $this->getTabs()->add( @@ -44,7 +46,7 @@ class Monitoring_HostsController extends Controller 'url' => Url::fromRequest(), 'icon' => 'host' ) - )->activate('show'); + )->extend(new DashboardAction()); $this->getTabs()->add( 'services', @@ -163,6 +165,7 @@ class Monitoring_HostsController extends Controller $this->view->commentsLink = Url::fromRequest()->setPath('monitoring/list/comments'); $this->view->baseFilter = $this->hostList->getFilter(); + $this->view->sendCustomNotificationLink = Url::fromRequest()->setPath('monitoring/hosts/send-custom-notification'); } /** @@ -236,4 +239,16 @@ class Monitoring_HostsController extends Controller $form->setTitle($this->translate('Submit Passive Host Check Results')); $this->handleCommandForm($form); } + + /** + * Send a custom notification for hosts + */ + public function sendCustomNotificationAction() + { + $this->assertPermission('monitoring/command/send-custom-notification'); + + $form = new SendCustomNotificationCommandForm(); + $form->setTitle($this->translate('Send Custom Host Notification')); + $this->handleCommandForm($form); + } } diff --git a/modules/monitoring/application/controllers/ListController.php b/modules/monitoring/application/controllers/ListController.php index b1b96b477..518bd6528 100644 --- a/modules/monitoring/application/controllers/ListController.php +++ b/modules/monitoring/application/controllers/ListController.php @@ -9,7 +9,6 @@ use Icinga\Web\Url; use Icinga\Web\Widget\Tabextension\DashboardAction; use Icinga\Web\Widget\Tabextension\OutputFormat; use Icinga\Web\Widget\Tabs; -use Icinga\Web\Widget\SortBox; use Icinga\Data\Filter\Filter; use Icinga\Web\Widget; use Icinga\Module\Monitoring\Forms\StatehistoryForm; @@ -22,11 +21,6 @@ class Monitoring_ListController extends Controller public function init() { $this->createTabs(); - $this->view->compact = $this->_request->getParam('view') === 'compact'; - if ($this->_request->getParam('view') === 'inline') { - $this->view->compact = true; - $this->view->inline = true; - } } /** @@ -123,18 +117,8 @@ class Monitoring_ListController extends Controller 'host_current_check_attempt', 'host_max_check_attempts' ), $this->extraColumns())); - $this->filterQuery($query); - $this->applyRestriction('monitoring/hosts/filter', $query); - - $this->setupSortControl(array( - 'host_severity' => $this->translate('Severity'), - 'host_state' => $this->translate('Current State'), - 'host_display_name' => $this->translate('Hostname'), - 'host_address' => $this->translate('Address'), - 'host_last_check' => $this->translate('Last Check') - )); $this->view->hosts = $query->paginate(); $this->view->stats = $this->backend->select()->from('statusSummary', array( @@ -148,6 +132,16 @@ class Monitoring_ListController extends Controller 'hosts_unreachable_unhandled', 'hosts_pending', ))->getQuery()->fetchRow(); + + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->hosts); + $this->setupSortControl(array( + 'host_severity' => $this->translate('Severity'), + 'host_state' => $this->translate('Current State'), + 'host_display_name' => $this->translate('Hostname'), + 'host_address' => $this->translate('Address'), + 'host_last_check' => $this->translate('Last Check') + )); } /** @@ -170,10 +164,8 @@ class Monitoring_ListController extends Controller $this->addTitleTab('services', $this->translate('Services'), $this->translate('List services')); $this->view->showHost = true; - if ($host = $this->_getParam('host')) { - if (strpos($host, '*') === false) { - $this->view->showHost = false; - } + if (strpos($this->params->get('host_name', '*'), '*') === false) { + $this->view->showHost = false; } $this->setAutorefreshInterval(10); @@ -213,11 +205,12 @@ class Monitoring_ListController extends Controller 'max_check_attempts' => 'service_max_check_attempts' ), $this->extraColumns()); $query = $this->backend->select()->from('serviceStatus', $columns); - $this->filterQuery($query); - $this->applyRestriction('monitoring/services/filter', $query); + $this->view->services = $query->paginate(); + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->services); $this->setupSortControl(array( 'service_severity' => $this->translate('Service Severity'), 'service_state' => $this->translate('Current Service State'), @@ -229,14 +222,6 @@ class Monitoring_ListController extends Controller 'host_address' => $this->translate('Host Address'), 'host_last_check' => $this->translate('Last Host Check') )); - $limit = $this->params->get('limit'); - $this->view->limit = $limit; - if ($limit === 0) { - $this->view->services = $query->getQuery()->fetchAll(); - } else { - // TODO: Workaround, paginate should be able to fetch limit from new params - $this->view->services = $query->paginate($this->params->get('limit')); - } $this->view->stats = $this->backend->select()->from('statusSummary', array( 'services_total', @@ -255,7 +240,6 @@ class Monitoring_ListController extends Controller 'services_unknown_handled', 'services_pending', ))->getQuery()->fetchRow(); - } /** @@ -266,13 +250,15 @@ class Monitoring_ListController extends Controller if ($url = $this->hasBetterUrl()) { return $this->redirectNow($url); } + $this->addTitleTab('downtimes', $this->translate('Downtimes'), $this->translate('List downtimes')); $this->setAutorefreshInterval(12); + $query = $this->backend->select()->from('downtime', array( 'id' => 'downtime_internal_id', 'objecttype' => 'downtime_objecttype', 'comment' => 'downtime_comment', - 'author' => 'downtime_author', + 'author_name' => 'downtime_author_name', 'start' => 'downtime_start', 'scheduled_start' => 'downtime_scheduled_start', 'scheduled_end' => 'downtime_scheduled_end', @@ -282,16 +268,18 @@ class Monitoring_ListController extends Controller 'is_fixed' => 'downtime_is_fixed', 'is_in_effect' => 'downtime_is_in_effect', 'entry_time' => 'downtime_entry_time', - 'host' => 'downtime_host', - 'service' => 'downtime_service', 'host_state' => 'downtime_host_state', 'service_state' => 'downtime_service_state', + 'host_name', + 'service_description', 'host_display_name', 'service_display_name' )); - $this->filterQuery($query); + $this->view->downtimes = $query->paginate(); + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->downtimes); $this->setupSortControl(array( 'downtime_is_in_effect' => $this->translate('Is In Effect'), 'host_display_name' => $this->translate('Host'), @@ -305,10 +293,9 @@ class Monitoring_ListController extends Controller 'downtime_duration' => $this->translate('Duration') )); - $this->view->downtimes = $query->paginate(); - if ($this->Auth()->hasPermission('monitoring/command/downtime/delete')) { $this->view->delDowntimeForm = new DeleteDowntimeCommandForm(); + $this->view->delDowntimeForm->handleRequest(); } } @@ -320,17 +307,19 @@ class Monitoring_ListController extends Controller if ($url = $this->hasBetterUrl()) { return $this->redirectNow($url); } + $this->addTitleTab( 'notifications', $this->translate('Notifications'), $this->translate('List notifications') ); $this->setAutorefreshInterval(15); + $query = $this->backend->select()->from('notification', array( - 'host', - 'service', + 'host_name', + 'service_description', 'notification_output', - 'notification_contact', + 'notification_contact_name', 'notification_start_time', 'notification_state', 'host_display_name', @@ -338,6 +327,9 @@ class Monitoring_ListController extends Controller )); $this->filterQuery($query); $this->view->notifications = $query->paginate(); + + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->notifications); $this->setupSortControl(array( 'notification_start_time' => $this->translate('Notification Start') )); @@ -348,7 +340,9 @@ class Monitoring_ListController extends Controller if ($url = $this->hasBetterUrl()) { return $this->redirectNow($url); } + $this->addTitleTab('contacts', $this->translate('Contacts'), $this->translate('List contacts')); + $query = $this->backend->select()->from('contact', array( 'contact_name', 'contact_id', @@ -372,6 +366,8 @@ class Monitoring_ListController extends Controller $this->filterQuery($query); $this->view->contacts = $query->paginate(); + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->contacts); $this->setupSortControl(array( 'contact_name' => $this->translate('Name'), 'contact_alias' => $this->translate('Alias'), @@ -429,11 +425,13 @@ class Monitoring_ListController extends Controller if ($url = $this->hasBetterUrl()) { return $this->redirectNow($url); } + $this->addTitleTab( 'contactgroups', $this->translate('Contact Groups'), $this->translate('List contact groups') ); + $query = $this->backend->select()->from('contactgroup', array( 'contactgroup_name', 'contactgroup_alias', @@ -441,7 +439,7 @@ class Monitoring_ListController extends Controller 'contact_alias', 'contact_email', 'contact_pager', - ))->order('contactgroup_alias'); + )); $this->filterQuery($query); // Fetch and prepare all contact groups: @@ -458,6 +456,11 @@ class Monitoring_ListController extends Controller } // TODO: Find a better naming $this->view->groupData = $groupData; + + $this->setupSortControl(array( + 'contactgroup_name' => $this->translate('Contactgroup Name'), + 'contactgroup_alias' => $this->translate('Contactgroup Alias') + )); } public function commentsAction() @@ -465,25 +468,29 @@ class Monitoring_ListController extends Controller if ($url = $this->hasBetterUrl()) { return $this->redirectNow($url); } + $this->addTitleTab('comments', $this->translate('Comments'), $this->translate('List comments')); $this->setAutorefreshInterval(12); + $query = $this->backend->select()->from('comment', array( 'id' => 'comment_internal_id', 'objecttype' => 'comment_objecttype', 'comment' => 'comment_data', - 'author' => 'comment_author', + 'author' => 'comment_author_name', 'timestamp' => 'comment_timestamp', 'type' => 'comment_type', 'persistent' => 'comment_is_persistent', 'expiration' => 'comment_expiration', - 'host' => 'comment_host', - 'service' => 'comment_service', + 'host_name', + 'service_description', 'host_display_name', 'service_display_name' )); $this->filterQuery($query); $this->view->comments = $query->paginate(); + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->comments); $this->setupSortControl( array( 'comment_timestamp' => $this->translate('Comment Timestamp'), @@ -496,6 +503,7 @@ class Monitoring_ListController extends Controller if ($this->Auth()->hasPermission('monitoring/command/comment/delete')) { $this->view->delCommentForm = new DeleteCommentCommandForm(); + $this->view->delCommentForm->handleRequest(); } } @@ -504,14 +512,16 @@ class Monitoring_ListController extends Controller if ($url = $this->hasBetterUrl()) { return $this->redirectNow($url); } + $this->addTitleTab( 'servicegroups', $this->translate('Service Groups'), $this->translate('List service groups') ); $this->setAutorefreshInterval(12); + $query = $this->backend->select()->from('groupsummary', array( - 'servicegroup', + 'servicegroup_name', 'servicegroup_alias', 'hosts_up', 'hosts_unreachable_handled', @@ -541,6 +551,9 @@ class Monitoring_ListController extends Controller // service groups. We should separate them. $this->filterQuery($query); $this->view->servicegroups = $query->paginate(); + + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->servicegroups); $this->setupSortControl(array( 'services_severity' => $this->translate('Severity'), 'servicegroup_alias' => $this->translate('Service Group Name'), @@ -558,10 +571,12 @@ class Monitoring_ListController extends Controller if ($url = $this->hasBetterUrl()) { return $this->redirectNow($url); } + $this->addTitleTab('hostgroups', $this->translate('Host Groups'), $this->translate('List host groups')); $this->setAutorefreshInterval(12); + $query = $this->backend->select()->from('groupsummary', array( - 'hostgroup', + 'hostgroup_name', 'hostgroup_alias', 'hosts_up', 'hosts_unreachable_handled', @@ -591,6 +606,9 @@ class Monitoring_ListController extends Controller // service groups. We should separate them. $this->filterQuery($query); $this->view->hostgroups = $query->paginate(); + + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->hostgroups); $this->setupSortControl(array( 'services_severity' => $this->translate('Severity'), 'hostgroup_alias' => $this->translate('Host Group Name'), @@ -608,6 +626,7 @@ class Monitoring_ListController extends Controller if ($url = $this->hasBetterUrl()) { return $this->redirectNow($url); } + $this->addTitleTab( 'eventhistory', $this->translate('Event Overview'), @@ -625,17 +644,17 @@ class Monitoring_ListController extends Controller 'attempt', 'max_attempts', 'output', - 'type', - 'host', - 'service' + 'type' )); $this->filterQuery($query); + $this->view->history = $query->paginate(); + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->history); $this->setupSortControl(array( 'timestamp' => $this->translate('Occurence') )); - $this->view->history = $query->paginate(); } public function servicegridAction() @@ -667,12 +686,15 @@ class Monitoring_ListController extends Controller { $editor = Widget::create('filterEditor') ->setQuery($query) - ->preserveParams('limit', 'sort', 'dir', 'format', 'view', 'backend', 'stateType', 'addColumns') + ->preserveParams( + 'limit', 'sort', 'dir', 'format', 'view', 'backend', + 'stateType', 'addColumns', '_dev' + ) ->ignoreParams('page') ->handleRequest($this->getRequest()); $query->applyFilter($editor->getFilter()); - $this->view->filterEditor = $editor; + $this->setupFilterControl($editor); $this->view->filter = $editor->getFilter(); if ($sort = $this->params->get('sort')) { @@ -686,7 +708,7 @@ class Monitoring_ListController extends Controller { $columns = preg_split( '~,~', - $this->params->shift('addcolumns', ''), + $this->params->shift('addColumns', ''), -1, PREG_SPLIT_NO_EMPTY ); @@ -694,21 +716,6 @@ class Monitoring_ListController extends Controller return $columns; } - /** - * Create a sort control box at the 'sortControl' view parameter - * - * @param array $columns An array containing the sort columns, with the - * submit value as the key and the value as the label - */ - private function setupSortControl(array $columns) - { - $this->view->sortControl = new SortBox( - 'sortbox-' . $this->getRequest()->getActionName(), - $columns - ); - $this->view->sortControl->applyRequest($this->getRequest()); - } - protected function addTitleTab($action, $title, $tip) { $this->getTabs()->add($action, array( @@ -726,16 +733,6 @@ class Monitoring_ListController extends Controller */ private function createTabs() { - $tabs = $this->getTabs(); - $tabs->setTitle($this->translate('Monitoring Navigation')); - if (in_array($this->_request->getActionName(), array( - 'hosts', - 'services', - 'eventhistory', - 'eventgrid', - 'notifications' - ))) { - $tabs->extend(new OutputFormat())->extend(new DashboardAction()); - } + $this->getTabs()->extend(new OutputFormat())->extend(new DashboardAction()); } } diff --git a/modules/monitoring/application/controllers/ProcessController.php b/modules/monitoring/application/controllers/ProcessController.php index efca3d520..2e52733bd 100644 --- a/modules/monitoring/application/controllers/ProcessController.php +++ b/modules/monitoring/application/controllers/ProcessController.php @@ -1,6 +1,7 @@ $this->translate('Monitoring Health'), 'url' =>'monitoring/process/info' ) - )->setTitle($this->translate('Process Information')); + )->extend(new DashboardAction()); } /** @@ -48,8 +49,10 @@ class Monitoring_ProcessController extends Controller array( 'is_currently_running', 'process_id', + 'endpoint_name', 'program_start_time', 'status_update_time', + 'program_version', 'last_command_check', 'last_log_rotation', 'global_service_event_handler', diff --git a/modules/monitoring/application/controllers/ServiceController.php b/modules/monitoring/application/controllers/ServiceController.php index d717a8e1c..4df109b3e 100644 --- a/modules/monitoring/application/controllers/ServiceController.php +++ b/modules/monitoring/application/controllers/ServiceController.php @@ -1,11 +1,13 @@ params->get('host') === null || $this->params->get('service') === null) { + throw new MissingParameterException( + $this->translate('One of the required parameters \'%s\' is missing'), + 'host or service' + ); + } + $service = new Service($this->backend, $this->params->get('host'), $this->params->get('service')); $this->applyRestriction('monitoring/services/filter', $service); if ($service->fetch() === false) { - throw new Zend_Controller_Action_Exception($this->translate('Service not found')); + throw new Zend_Controller_Action_Exception( + sprintf($this->translate('Service \'%s\' not found'), $this->params->get('service')), + 404 + ); } $this->object = $service; $this->createTabs(); @@ -95,4 +107,16 @@ class Monitoring_ServiceController extends MonitoredObjectController $form->setTitle($this->translate('Submit Passive Service Check Result')); $this->handleCommandForm($form); } + + /** + * Send a custom notification for a service + */ + public function sendCustomNotificationAction() + { + $this->assertPermission('monitoring/command/send-custom-notification'); + + $form = new SendCustomNotificationCommandForm(); + $form->setTitle($this->translate('Send Custom Service Notification')); + $this->handleCommandForm($form); + } } diff --git a/modules/monitoring/application/controllers/ServicesController.php b/modules/monitoring/application/controllers/ServicesController.php index edee89878..7148aae57 100644 --- a/modules/monitoring/application/controllers/ServicesController.php +++ b/modules/monitoring/application/controllers/ServicesController.php @@ -12,6 +12,7 @@ use Icinga\Module\Monitoring\Forms\Command\Object\ScheduleServiceCheckCommandFor use Icinga\Module\Monitoring\Forms\Command\Object\ScheduleServiceDowntimeCommandForm; use Icinga\Module\Monitoring\Forms\Command\Object\AddCommentCommandForm; use Icinga\Module\Monitoring\Forms\Command\Object\DeleteCommentCommandForm; +use Icinga\Module\Monitoring\Forms\Command\Object\SendCustomNotificationCommandForm; use Icinga\Module\Monitoring\Object\Host; use Icinga\Module\Monitoring\Object\Service; use Icinga\Module\Monitoring\Object\ServiceList; @@ -19,6 +20,7 @@ use Icinga\Util\String; use Icinga\Web\Url; use Icinga\Web\UrlParams; use Icinga\Web\Widget\Chart\InlinePie; +use Icinga\Web\Widget\Tabextension\DashboardAction; class Monitoring_ServicesController extends Controller { @@ -30,7 +32,9 @@ class Monitoring_ServicesController extends Controller public function init() { $serviceList = new ServiceList($this->backend); - $serviceList->setFilter(Filter::fromQueryString((string) $this->params->without('service_problem', 'service_handled'))); + $serviceList->setFilter(Filter::fromQueryString( + (string) $this->params->without(array('service_problem', 'service_handled', 'view')) + )); $this->serviceList = $serviceList; $this->view->listAllLink = Url::fromRequest()->setPath('monitoring/list/services'); @@ -44,7 +48,7 @@ class Monitoring_ServicesController extends Controller 'url' => Url::fromPath('monitoring/hosts/show')->setParams(Url::fromRequest()->getParams()), 'icon' => 'host' ) - )->activate('show'); + )->extend(new DashboardAction()); $this->getTabs()->add( 'show', @@ -189,6 +193,9 @@ class Monitoring_ServicesController extends Controller $this->view->commentsLink = Url::fromRequest() ->setPath('monitoring/list/comments'); $this->view->baseFilter = $this->serviceList->getFilter(); + $this->view->sendCustomNotificationLink = Url::fromRequest()->setPath( + 'monitoring/services/send-custom-notification' + ); } /** @@ -201,6 +208,7 @@ class Monitoring_ServicesController extends Controller $form = new AddCommentCommandForm(); $form->setTitle($this->translate('Add Service Comments')); $this->handleCommandForm($form); + } @@ -264,4 +272,16 @@ class Monitoring_ServicesController extends Controller $form->setTitle($this->translate('Submit Passive Service Check Results')); $this->handleCommandForm($form); } + + /** + * Send a custom notification for services + */ + public function sendCustomNotificationAction() + { + $this->assertPermission('monitoring/command/send-custom-notification'); + + $form = new SendCustomNotificationCommandForm(); + $form->setTitle($this->translate('Send Custom Service Notification')); + $this->handleCommandForm($form); + } } diff --git a/modules/monitoring/application/controllers/ShowController.php b/modules/monitoring/application/controllers/ShowController.php index 4550b20ae..c1522d2a1 100644 --- a/modules/monitoring/application/controllers/ShowController.php +++ b/modules/monitoring/application/controllers/ShowController.php @@ -1,7 +1,6 @@ view->history = $this->view->object->eventhistory->getQuery()->paginate($this->params->get('limit', 50)); $this->handleFormatRequest($this->view->object->eventhistory); $this->fetchHostStats(); + + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->history); } public function servicesAction() @@ -115,11 +115,11 @@ class Monitoring_ShowController extends Controller public function contactAction() { - $contactName = $this->getParam('contact'); + $contactName = $this->getParam('contact_name'); if (! $contactName) { throw new Zend_Controller_Action_Exception( - $this->translate('The parameter `contact\' is required'), + $this->translate('The parameter `contact_name\' is required'), 404 ); } @@ -145,9 +145,7 @@ class Monitoring_ShowController extends Controller 'contact_notify_host_flapping', 'contact_notify_host_downtime', )); - $query->where('contact_name', $contactName); - $contact = $query->getQuery()->fetchRow(); if ($contact) { @@ -159,10 +157,10 @@ class Monitoring_ShowController extends Controller $this->view->commands = $commands->paginate(); $notifications = $this->backend->select()->from('notification', array( - 'host', - 'service', + 'host_name', + 'service_description', 'notification_output', - 'notification_contact', + 'notification_contact_name', 'notification_start_time', 'notification_state', 'host_display_name', @@ -170,9 +168,9 @@ class Monitoring_ShowController extends Controller )); $notifications->where('contact_object_id', $contact->contact_object_id); - - $this->view->compact = true; $this->view->notifications = $notifications->paginate(); + $this->setupLimitControl(); + $this->setupPaginationControl($this->view->notifications); } $this->view->contact = $contact; diff --git a/modules/monitoring/application/controllers/TacticalController.php b/modules/monitoring/application/controllers/TacticalController.php index 33681528c..d9da6d3d5 100644 --- a/modules/monitoring/application/controllers/TacticalController.php +++ b/modules/monitoring/application/controllers/TacticalController.php @@ -2,6 +2,7 @@ /* Icinga Web 2 | (c) 2013-2015 Icinga Development Team | GPLv2+ */ use Icinga\Module\Monitoring\Controller as MonitoringController; +use Icinga\Web\Widget\Tabextension\DashboardAction; use Icinga\Web\Url; class Monitoring_TacticalController extends MonitoringController @@ -18,7 +19,7 @@ class Monitoring_TacticalController extends MonitoringController 'label' => $this->translate('Tactical Overview'), 'url' => Url::fromRequest() ) - )->activate('tactical_overview'); + )->extend(new DashboardAction())->activate('tactical_overview'); $this->view->statusSummary = $this->backend->select()->from( 'statusSummary', diff --git a/modules/monitoring/application/controllers/TimelineController.php b/modules/monitoring/application/controllers/TimelineController.php index 4abe53c4b..25827c766 100644 --- a/modules/monitoring/application/controllers/TimelineController.php +++ b/modules/monitoring/application/controllers/TimelineController.php @@ -10,6 +10,7 @@ use Icinga\Module\Monitoring\Controller; use Icinga\Module\Monitoring\Timeline\TimeLine; use Icinga\Module\Monitoring\Timeline\TimeRange; use Icinga\Module\Monitoring\Web\Widget\SelectBox; +use Icinga\Web\Widget\Tabextension\DashboardAction; class Monitoring_TimelineController extends Controller { @@ -22,7 +23,7 @@ class Monitoring_TimelineController extends Controller 'label' => $this->translate('Timeline'), 'url' => Url::fromRequest() ) - )->activate('timeline')->setTitle($this->translate('Timeline Navigation')); + )->extend(new DashboardAction())->activate('timeline'); $this->view->title = $this->translate('Timeline'); // TODO: filter for hard_states (precedence adjustments necessary!) diff --git a/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php b/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php index 6147ed5ff..1c8144475 100644 --- a/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php +++ b/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php @@ -4,12 +4,13 @@ namespace Icinga\Module\Monitoring\Forms\Command\Object; use Icinga\Module\Monitoring\Command\Object\DeleteCommentCommand; +use Icinga\Module\Monitoring\Forms\Command\CommandForm; use Icinga\Web\Notification; /** * Form for deleting host or service comments */ -class DeleteCommentCommandForm extends ObjectsCommandForm +class DeleteCommentCommandForm extends CommandForm { /** * (non-PHPDoc) @@ -17,7 +18,7 @@ class DeleteCommentCommandForm extends ObjectsCommandForm */ public function init() { - $this->setAttrib('class', 'inline link-like'); + $this->setAttrib('class', 'inline'); } /** @@ -26,19 +27,34 @@ class DeleteCommentCommandForm extends ObjectsCommandForm */ public function createElements(array $formData = array()) { - $this->addElements(array( + $this->addElements( array( - 'hidden', - 'comment_id', array( - 'required' => true + 'hidden', + 'comment_id', + array( + 'required' => true, + 'validators' => array('NotEmpty'), + 'decorators' => array('ViewHelper') + ) + ), + array( + 'hidden', + 'comment_is_service', + array( + 'filters' => array('Boolean'), + 'decorators' => array('ViewHelper') + ) + ), + array( + 'hidden', + 'redirect', + array( + 'decorators' => array('ViewHelper') + ) ) - ), - array( - 'hidden', - 'redirect' ) - )); + ); return $this; } @@ -49,11 +65,14 @@ class DeleteCommentCommandForm extends ObjectsCommandForm public function addSubmitButton() { $this->addElement( - 'submit', + 'button', 'btn_submit', array( 'ignore' => true, - 'label' => 'X', + 'escape' => false, + 'type' => 'submit', + 'class' => 'link-like', + 'label' => $this->getView()->icon('trash'), 'title' => $this->translate('Delete this comment'), 'decorators' => array('ViewHelper') ) @@ -67,14 +86,10 @@ class DeleteCommentCommandForm extends ObjectsCommandForm */ public function onSuccess() { - foreach ($this->objects as $object) { - /** @var \Icinga\Module\Monitoring\Object\MonitoredObject $object */ - $delComment = new DeleteCommentCommand(); - $delComment - ->setObject($object) - ->setCommentId($this->getElement('comment_id')->getValue()); - $this->getTransport($this->request)->send($delComment); - } + $cmd = new DeleteCommentCommand(); + $cmd->setIsService($this->getElement('comment_is_service')->getValue()) + ->setCommentId($this->getElement('comment_id')->getValue()); + $this->getTransport($this->request)->send($cmd); $redirect = $this->getElement('redirect')->getValue(); if (! empty($redirect)) { $this->setRedirectUrl($redirect); diff --git a/modules/monitoring/application/forms/Command/Object/DeleteCommentsCommandForm.php b/modules/monitoring/application/forms/Command/Object/DeleteCommentsCommandForm.php new file mode 100644 index 000000000..805002922 --- /dev/null +++ b/modules/monitoring/application/forms/Command/Object/DeleteCommentsCommandForm.php @@ -0,0 +1,88 @@ +setAttrib('class', 'inline'); + } + + /** + * (non-PHPDoc) + * @see \Icinga\Web\Form::createElements() For the method documentation. + */ + public function createElements(array $formData = array()) + { + $this->addElements(array( + array( + 'hidden', + 'redirect', + array('decorators' => array('ViewHelper')) + ) + )); + return $this; + } + + /** + * (non-PHPDoc) + * @see \Icinga\Web\Form::getSubmitLabel() For the method documentation. + */ + public function getSubmitLabel() + { + return $this->translatePlural('Remove', 'Remove All', count($this->downtimes)); + } + + /** + * (non-PHPDoc) + * @see \Icinga\Web\Form::onSuccess() For the method documentation. + */ + public function onSuccess() + { + foreach ($this->comments as $comment) { + $cmd = new DeleteCommentCommand(); + $cmd->setCommentId($comment->id) + ->setIsService(isset($comment->service_description)); + $this->getTransport($this->request)->send($cmd); + } + $redirect = $this->getElement('redirect')->getValue(); + if (! empty($redirect)) { + $this->setRedirectUrl($redirect); + } + Notification::success($this->translate('Deleting comment..')); + return true; + } + + /** + * Set the comments to be deleted upon success + * + * @param array $comments + * + * @return this fluent interface + */ + public function setComments(array $comments) + { + $this->comments = $comments; + return $this; + } +} diff --git a/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php b/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php index 2bbd22a4a..31ec778fa 100644 --- a/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php +++ b/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php @@ -4,12 +4,13 @@ namespace Icinga\Module\Monitoring\Forms\Command\Object; use Icinga\Module\Monitoring\Command\Object\DeleteDowntimeCommand; +use \Icinga\Module\Monitoring\Forms\Command\CommandForm; use Icinga\Web\Notification; /** * Form for deleting host or service downtimes */ -class DeleteDowntimeCommandForm extends ObjectsCommandForm +class DeleteDowntimeCommandForm extends CommandForm { /** * (non-PHPDoc) @@ -17,31 +18,46 @@ class DeleteDowntimeCommandForm extends ObjectsCommandForm */ public function init() { - $this->setAttrib('class', 'inline link-like'); + $this->setAttrib('class', 'inline'); } - + /** * (non-PHPDoc) * @see \Icinga\Web\Form::createElements() For the method documentation. */ public function createElements(array $formData = array()) { - $this->addElements(array( + $this->addElements( array( - 'hidden', - 'downtime_id', array( - 'required' => true + 'hidden', + 'downtime_id', + array( + 'required' => true, + 'validators' => array('NotEmpty'), + 'decorators' => array('ViewHelper') + ) + ), + array( + 'hidden', + 'downtime_is_service', + array( + 'filters' => array('Boolean'), + 'decorators' => array('ViewHelper') + ) + ), + array( + 'hidden', + 'redirect', + array( + 'decorators' => array('ViewHelper') + ) ) - ), - array( - 'hidden', - 'redirect' ) - )); + ); return $this; } - + /** * (non-PHPDoc) * @see \Icinga\Web\Form::addSubmitButton() For the method documentation. @@ -49,37 +65,37 @@ class DeleteDowntimeCommandForm extends ObjectsCommandForm public function addSubmitButton() { $this->addElement( - 'submit', + 'button', 'btn_submit', array( 'ignore' => true, - 'label' => 'X', + 'escape' => false, + 'type' => 'submit', + 'class' => 'link-like', + 'label' => $this->getView()->icon('trash'), 'title' => $this->translate('Delete this downtime'), 'decorators' => array('ViewHelper') ) ); return $this; } - + /** * (non-PHPDoc) - * @see \Icinga\Web\Form::onSuccess() For the method documentation. + * @see \Icinga\Web\Form::onSuccess() For the method documentation. */ public function onSuccess() { - foreach ($this->objects as $object) { - /** @var \Icinga\Module\Monitoring\Object\MonitoredObject $object */ - $delDowntime = new DeleteDowntimeCommand(); - $delDowntime - ->setObject($object) - ->setDowntimeId($this->getElement('downtime_id')->getValue()); - $this->getTransport($this->request)->send($delDowntime); - } + $cmd = new DeleteDowntimeCommand(); + $cmd->setDowntimeId($this->getElement('downtime_id')->getValue()); + $cmd->setIsService($this->getElement('downtime_is_service')->getValue()); + $this->getTransport($this->request)->send($cmd); + $redirect = $this->getElement('redirect')->getValue(); if (! empty($redirect)) { $this->setRedirectUrl($redirect); } - Notification::success($this->translate('Deleting downtime..')); + Notification::success($this->translate('Deleting downtime.')); return true; } } diff --git a/modules/monitoring/application/forms/Command/Object/DeleteDowntimesCommandForm.php b/modules/monitoring/application/forms/Command/Object/DeleteDowntimesCommandForm.php new file mode 100644 index 000000000..4a19cac96 --- /dev/null +++ b/modules/monitoring/application/forms/Command/Object/DeleteDowntimesCommandForm.php @@ -0,0 +1,88 @@ +setAttrib('class', 'inline'); + } + + /** + * (non-PHPDoc) + * @see \Icinga\Web\Form::createElements() For the method documentation. + */ + public function createElements(array $formData = array()) + { + $this->addElements(array( + array( + 'hidden', + 'redirect', + array('decorators' => array('ViewHelper')) + ) + )); + return $this; + } + + /** + * (non-PHPDoc) + * @see \Icinga\Web\Form::getSubmitLabel() For the method documentation. + */ + public function getSubmitLabel() + { + return $this->translatePlural('Remove', 'Remove All', count($this->downtimes)); + } + + /** + * (non-PHPDoc) + * @see \Icinga\Web\Form::onSuccess() For the method documentation. + */ + public function onSuccess() + { + foreach ($this->downtimes as $downtime) { + $delDowntime = new DeleteDowntimeCommand(); + $delDowntime->setDowntimeId($downtime->id); + $delDowntime->setIsService(isset($downtime->service_description)); + $this->getTransport($this->request)->send($delDowntime); + } + $redirect = $this->getElement('redirect')->getValue(); + if (! empty($redirect)) { + $this->setRedirectUrl($redirect); + } + Notification::success($this->translate('Deleting downtime.')); + return true; + } + + /** + * Set the downtimes to be deleted upon success + * + * @param type $downtimes + * + * @return $this + */ + public function setDowntimes(array $downtimes) + { + $this->downtimes = $downtimes; + return $this; + } +} diff --git a/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php b/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php new file mode 100644 index 000000000..b9ab60065 --- /dev/null +++ b/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php @@ -0,0 +1,101 @@ +addDescription( + $this->translate('This command is used to send custom notifications about hosts or services.') + ); + } + + /** + * {@inheritdoc} + */ + public function getSubmitLabel() + { + return $this->translatePlural('Send custom notification', 'Send custom notifications', count($this->objects)); + } + + /** + * {@inheritdoc} + */ + public function createElements(array $formData = array()) + { + $this->addElements(array( + array( + 'textarea', + 'comment', + array( + 'required' => true, + 'label' => $this->translate('Comment'), + 'description' => $this->translate( + 'If you work with other administrators, you may find it useful to share information about the' + . ' the host or service that is having problems. Make sure you enter a brief description of' + . ' what you are doing.' + ) + ) + ), + array( + 'checkbox', + 'forced', + array( + 'label' => $this->translate('Forced'), + 'value' => false, + 'description' => $this->translate( + 'If you check this option, the notification is sent out regardless of time restrictions and' + . ' whether or not notifications are enabled.' + ) + ) + ), + array( + 'checkbox', + 'broadcast', + array( + 'label' => $this->translate('Broadcast'), + 'value' => false, + 'description' => $this->translate( + 'If you check this option, the notification is sent out to all normal and escalated contacts.' + ) + ) + ) + )); + return $this; + } + + /** + * {@inheritdoc} + */ + public function onSuccess() + { + foreach ($this->objects as $object) { + /** @var \Icinga\Module\Monitoring\Object\MonitoredObject $object */ + $notification = new SendCustomNotificationCommand(); + $notification + ->setObject($object) + ->setComment($this->getElement('comment')->getValue()) + ->setAuthor($this->request->getUser()->getUsername()) + ->setForced($this->getElement('forced')->isChecked()) + ->setBroadcast($this->getElement('broadcast')->isChecked()); + $this->getTransport($this->request)->send($notification); + } + Notification::success($this->translatePlural( + 'Sending custom notification..', + 'Sending custom notifications..', + count($this->objects) + )); + return true; + } +} diff --git a/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php b/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php index a6c20f630..34fbb4c2c 100644 --- a/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php +++ b/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php @@ -30,7 +30,7 @@ class ToggleObjectFeaturesCommandForm extends ObjectsCommandForm */ public function createElements(array $formData = array()) { - $toggleDisabled = $this->hasPermission('monitoring/command/feature/instance') ? null : ''; + $toggleDisabled = $this->hasPermission('monitoring/command/feature/object') ? null : ''; $this->addElements(array( array( 'checkbox', diff --git a/modules/monitoring/application/forms/Config/BackendConfigForm.php b/modules/monitoring/application/forms/Config/BackendConfigForm.php index 62e3858a9..d89c6623f 100644 --- a/modules/monitoring/application/forms/Config/BackendConfigForm.php +++ b/modules/monitoring/application/forms/Config/BackendConfigForm.php @@ -17,7 +17,7 @@ class BackendConfigForm extends ConfigForm /** * The available monitoring backend resources split by type * - * @type array + * @var array */ protected $resources; diff --git a/modules/monitoring/application/forms/Config/InstanceConfigForm.php b/modules/monitoring/application/forms/Config/InstanceConfigForm.php index c05dc41a9..b2baea89c 100644 --- a/modules/monitoring/application/forms/Config/InstanceConfigForm.php +++ b/modules/monitoring/application/forms/Config/InstanceConfigForm.php @@ -60,7 +60,7 @@ class InstanceConfigForm extends ConfigForm * * @param array $values The values to extend the configuration with * - * @return self + * @return $this * * @throws InvalidArgumentException In case the resource already exists */ diff --git a/modules/monitoring/application/locale/de_DE/LC_MESSAGES/monitoring.mo b/modules/monitoring/application/locale/de_DE/LC_MESSAGES/monitoring.mo index 96f792026..3be118e1c 100644 Binary files a/modules/monitoring/application/locale/de_DE/LC_MESSAGES/monitoring.mo and b/modules/monitoring/application/locale/de_DE/LC_MESSAGES/monitoring.mo differ diff --git a/modules/monitoring/application/locale/de_DE/LC_MESSAGES/monitoring.po b/modules/monitoring/application/locale/de_DE/LC_MESSAGES/monitoring.po index d21fec919..4d8b6c0c2 100644 --- a/modules/monitoring/application/locale/de_DE/LC_MESSAGES/monitoring.po +++ b/modules/monitoring/application/locale/de_DE/LC_MESSAGES/monitoring.po @@ -1,5 +1,5 @@ # Icinga Web 2 - Head for multiple monitoring backends. -# Copyright (C) 2014 Icinga Development Team +# Copyright (C) 2015 Icinga Development Team # This file is distributed under the same license as Monitoring Module. # FIRST AUTHOR , YEAR. # @@ -7,1574 +7,4550 @@ msgid "" msgstr "" "Project-Id-Version: Monitoring Module (2.0.0~alpha4)\n" "Report-Msgid-Bugs-To: dev@icinga.org\n" -"POT-Creation-Date: 2014-08-22 18:04+0200\n" -"PO-Revision-Date: 2014-08-22 18:05+0100\n" +"POT-Creation-Date: 2015-03-13 16:08+0100\n" +"PO-Revision-Date: 2015-03-13 16:48+0100\n" "Last-Translator: Thomas Gelf \n" +"Language: de_DE\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.5.4\n" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:235 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:382 msgid " Down Hosts (Handled)" msgstr "Hosts Down (bestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:236 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:383 msgid " Down Hosts (Unhandled)" msgstr "Hosts Down (unbestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:257 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:350 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:404 msgid " Down Services (Handled)" msgstr "Hosts Down (bestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:258 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:351 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:405 msgid " Down Services (Unhandled)" -msgstr "" +msgstr "Services Down (Unbestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:41 -msgid " If you work with other administrators you may find it useful to share information about a host or service that is having problems if more than one of you may be working on it. Make sure you enter a brief description of what you are doing." -msgstr "Wenn du mit anderen Administratoren zusammenarbeitest wirst du es als nützlich empfinden, Informationen über Probleme auf Hosts oder Services an denen du arbeitest zu teilen. Stell sicher eine kurze Beschreibung von dem was du gerade machst zu hinterlassen." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:239 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:386 msgid " Pending Hosts" msgstr "Ungeprüfte Hosts" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:261 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:354 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:408 msgid " Pending Services" msgstr "Ungeprüfte Services" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:237 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:384 msgid " Unreachable Hosts (Handled)" msgstr "Nicht erreichbare Hosts (bestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:238 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:385 msgid " Unreachable Hosts (Unhandled)" msgstr "Nicht erreichbare Hosts (unbestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:259 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:352 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:406 msgid " Unreachable Services (Handled)" msgstr "Nicht erreichbare Services (bestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:260 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:353 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:407 msgid " Unreachable Services (Unhandled)" msgstr "Nicht erreichbare Services (unbestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:255 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:381 +msgid " Up Hosts" +msgstr "Hosts UP" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:401 +msgid " Up Services" +msgstr "Services UP" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:348 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:402 msgid " Warning Services (Handled)" msgstr "Service-Warnungen (bestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:256 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:349 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:403 msgid " Warning Services (Unhandled)" msgstr "Service-Warnungen (unbestätigt)" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:10 -#, php-format -msgid "%d Hosts DOWN" -msgstr "%d Hosts DOWN" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:73 +#, fuzzy, php-format +msgid "%d Active" +msgid_plural "%d Active" +msgstr[0] "Aktiv" +msgstr[1] "Aktiv" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:22 -#, php-format -msgid "%d Hosts PENDING" -msgstr "%d Hosts UNGEPRÜFT" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:109 +#, fuzzy, php-format +msgid "%d Disabled" +msgid_plural "%d Disabled" +msgstr[0] "Deaktiviert" +msgstr[1] "Deaktiviert" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:17 -#, php-format -msgid "%d Hosts UNREACHABLE" -msgstr "%d Hosts NICHT ERREICHBAR" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:35 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:91 +#, fuzzy, php-format +msgid "%d Passive" +msgid_plural "%d Passive" +msgstr[0] "Passiv" +msgstr[1] "Passiv" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:43 #, php-format -msgid "%d Hosts UP" -msgstr "%d Hosts UP" +msgid "%d hosts down on %s" +msgstr "%d hosts down auf %s" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:57 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:127 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:197 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:232 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:267 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:21 #, php-format -msgid "%d are not checked at all" -msgstr "%d werden nicht überwacht" +msgid "%d hosts ok on %s" +msgstr "%d hosts OK auf %s" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:32 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:102 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:172 -#, php-format -msgid "%d are passively checked" -msgstr "%d werden passiv überwacht" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:20 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:87 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:138 -#, php-format -msgid "%d hosts disabled" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:26 +#, fuzzy, php-format +msgid "%d hosts unreachable on %s" msgstr "%d deaktivierte Hosts" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:36 -#, php-format -msgid "%d hosts flapping" -msgstr "%d flapping Hosts" +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:64 +#, fuzzy, php-format +msgid "%d more ..." +msgstr "und %d weitere" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:62 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:132 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:202 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:237 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:272 -#, php-format -msgid "%d is not checked at all" -msgstr "%d wird nicht überwacht" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:37 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:107 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:177 -#, php-format -msgid "%d is passively checked" -msgstr "%d wird passiv überwacht" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:48 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:107 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:158 -#, php-format -msgid "%d services disabled" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:31 +#, fuzzy, php-format +msgid "%d services critical on %s" msgstr "%d deaktivierte Services" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:64 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:53 +#, fuzzy, php-format +msgid "%d services ok on %s" +msgstr "%d deaktivierte Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:48 #, php-format -msgid "%d services flapping" +msgid "%d services unknown on %s" +msgstr "%d services unbekannt auf %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:37 +#, fuzzy, php-format +msgid "%d services warning on %s" msgstr "%d flapping services" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hosts.phtml:105 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Plugin/Perfdata.php:437 #, php-format -msgid "%d unhandled services" -msgstr "%d unbestätigte Services" +msgid "%s %s (%s%%)" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/notifications.phtml:22 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:28 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:32 +#, php-format +msgid "%s ago" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:40 +#, php-format +msgctxt "timespan" +msgid "%s ago" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:57 +#, fuzzy, php-format +msgid "%s has been up and running with PID %d since %s" +msgstr "läuft mit PID %d" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:8 +#, fuzzy, php-format +msgid "%s hosts:" +msgstr "%d Hosts UP" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/not-running.phtml:5 +#, php-format +msgid "%s is currently not up and running" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:64 +#, fuzzy, php-format +msgid "%s is not running" +msgstr "läuft nicht" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:43 #, php-format msgid "%s notications have been sent for this issue" msgstr "%s Benachrichtigungen wurden für dieses Problem versandt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:3 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Link.php:54 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:142 +#, php-format +msgctxt "Service running on host" +msgid "%s on %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:9 #, php-format msgid "%s services:" msgstr "%s Services:" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:91 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:84 +#, fuzzy, php-format +msgid "%u Acknowledged Host Problem" +msgid_plural "%u Acknowledged Host Problems" +msgstr[0] "Problem bestätigen" +msgstr[1] "Problem bestätigen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:84 +#, fuzzy, php-format +msgid "%u Acknowledged Service Problem" +msgid_plural "%u Acknowledged Service Problems" +msgstr[0] "Problem bestätigen" +msgstr[1] "Problem bestätigen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:17 +#, fuzzy, php-format +msgid "%u Active" +msgid_plural "%u Active" +msgstr[0] "Aktiv" +msgstr[1] "Aktiv" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:8 +#, fuzzy, php-format +msgid "%u Host" +msgid_plural "%u Hosts" +msgstr[0] "%d Hosts UP" +msgstr[1] "%d Hosts UP" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:10 +#, fuzzy, php-format +msgid "%u Host DOWN" +msgid_plural "%u Hosts DOWN" +msgstr[0] "%d Hosts DOWN" +msgstr[1] "%d Hosts DOWN" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:18 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:139 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:218 +#, fuzzy, php-format +msgid "%u Host Disabled" +msgid_plural "%u Hosts Disabled" +msgstr[0] "%d deaktivierte Hosts" +msgstr[1] "%d deaktivierte Hosts" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:48 +#, fuzzy, php-format +msgid "%u Host Flapping" +msgid_plural "%u Hosts Flapping" +msgstr[0] "%d flapping Hosts" +msgstr[1] "%d flapping Hosts" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:33 +#, fuzzy, php-format +msgid "%u Host PENDING" +msgid_plural "%u Hosts PENDING" +msgstr[0] "%d Hosts UNGEPRÜFT" +msgstr[1] "%d Hosts UNGEPRÜFT" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:29 +#, fuzzy, php-format +msgid "%u Host UNREACHABLE" +msgid_plural "%u Hosts UNREACHABLE" +msgstr[0] "%d Hosts NICHT ERREICHBAR" +msgstr[1] "%d Hosts NICHT ERREICHBAR" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:15 +#, fuzzy, php-format +msgid "%u Host UP" +msgid_plural "%u Hosts UP" +msgstr[0] "%d Hosts UP" +msgstr[1] "%d Hosts UP" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:8 +#, fuzzy, php-format +msgid "%u Service" +msgid_plural "%u Services" +msgstr[0] "Service" +msgstr[1] "Service" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:73 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:173 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:252 +#, fuzzy, php-format +msgid "%u Service Disabled" +msgid_plural "%u Services Disabled" +msgstr[0] "%d deaktivierte Services" +msgstr[1] "%d deaktivierte Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:103 +#, fuzzy, php-format +msgid "%u Service Flapping" +msgid_plural "%u Services Flapping" +msgstr[0] "%d flapping services" +msgstr[1] "%d flapping services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:46 +#, fuzzy, php-format +msgid "%u Unhandled Host Problem" +msgid_plural "%u Unhandled Host Problems" +msgstr[0] "Unbestätigte Hosts" +msgstr[1] "Unbestätigte Hosts" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:46 +#, fuzzy, php-format +msgid "%u Unhandled Service Problem" +msgid_plural "%u Unhandled Service Problems" +msgstr[0] "Unbestätigte Services" +msgstr[1] "Unbestätigte Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:13 +#, fuzzy, php-format +msgid "%u configured service:" +msgid_plural "%u configured services:" +msgstr[0] "%d unbestätigte Services" +msgstr[1] "%d unbestätigte Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:80 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:179 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:278 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:325 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:372 +#, fuzzy, php-format +msgid "%u is not checked at all" +msgid_plural "%u are not checked at all" +msgstr[0] "%d wird nicht überwacht" +msgstr[1] "%d wird nicht überwacht" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:152 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:251 +#, fuzzy, php-format +msgid "%u is passively checked" +msgid_plural "%u are passively checked" +msgstr[0] "%d wird passiv überwacht" +msgstr[1] "%d wird passiv überwacht" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:110 +#, fuzzy, php-format +msgid "%u unhandled service" +msgid_plural "%u unhandled services" +msgstr[0] "%d unbestätigte Services" +msgstr[1] "%d unbestätigte Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:73 +msgid "1 Year" +msgstr "1 Jahr" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:74 +msgid "2 Years" +msgstr "2 Jahre" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:70 +msgid "3 Months" +msgstr "3 Monate" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:97 msgid "4 Hours" msgstr "4 Stunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/notifications.phtml:17 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:71 +msgid "4 Months" +msgstr "4 Monate" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:72 +msgid "8 Months" +msgstr "8 Monate" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Plugin/Perfdata.php:437 +#, php-format +msgid "%s %s (%s%%)" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:453 +msgid "{title}: {value}m max. reaction time" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:443 +msgid "{title}: {value}m min. reaction time" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:296 +msgid "{title}:
{value} of {sum} hosts are {label}" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:247 +msgid "{title}:
{value} of {sum} services are {label}" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:38 #, php-format msgid "A notication has been sent for this issue %s ago" msgstr "Eine Benachrichtigung für dieses Problem wurde vor %s gesendet" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:93 -msgid "Accept passive host checks" -msgstr "Akzeptiere passive Host Checks" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:71 -msgid "Accept passive service checks" -msgstr "Akzeptiere passive Service-Checks" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:43 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:78 msgid "Ack removed" msgstr "Bestätigung entfernt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:38 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:73 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:39 msgid "Acknowledge" msgstr "Bestätigen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:116 -msgid "Acknowledge Problem" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:68 +#, fuzzy, php-format +msgid "Acknowledge %u unhandled host problem" +msgid_plural "Acknowledge %u unhandled host problems" +msgstr[0] "Problem bestätigen" +msgstr[1] "Problem bestätigen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:68 +#, fuzzy, php-format +msgid "Acknowledge %u unhandled service problem" +msgid_plural "Acknowledge %u unhandled service problems" +msgstr[0] "%d unbestätigte Services" +msgstr[1] "%d unbestätigte Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:71 +#, fuzzy +msgid "Acknowledge Host Problem" msgstr "Problem bestätigen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/comments.phtml:14 -msgid "Acknowledge all problems on the selected hosts or services" -msgstr "Bestätige alle Probleme auf den ausgewählten Hosts oder Services" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:184 +#, fuzzy +msgid "Acknowledge Host Problems" +msgstr "Problem bestätigen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicegroups.phtml:59 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicegroups.phtml:89 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicegroups.phtml:155 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicegroups.phtml:189 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicegroups.phtml:223 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hostgroups.phtml:56 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hostgroups.phtml:86 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hostgroups.phtml:152 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hostgroups.phtml:186 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hostgroups.phtml:220 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:16 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:86 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:156 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:48 +#, fuzzy +msgid "Acknowledge Service Problem" +msgstr "Problem bestätigen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:233 +#, fuzzy +msgid "Acknowledge Service Problems" +msgstr "Problem bestätigen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:34 +#, fuzzy +msgid "Acknowledge problem" +msgid_plural "Acknowledge problems" +msgstr[0] "Problem bestätigen" +msgstr[1] "Problem bestätigen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:46 +msgid "" +"Acknowledge this problem, suppress all future notifications for it and tag " +"it as being handled" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:75 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:130 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:229 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:9 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:9 msgid "Acknowledged" msgstr "Bestätigt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:45 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:51 msgid "Acknowledgement" msgstr "Bestätigung" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:945 -msgid "Acknowledgement has been sent" -msgstr "Bestätigung wurde gesendet" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:967 -msgid "Acknowledgement removal has been requested" -msgstr "Löschung der Bestätigung wurde angefragt" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:53 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:59 msgid "Acknowledgements" msgstr "Bestätigungen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:20 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:52 -msgid "Active" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:157 +#, fuzzy +msgid "Acknowledging problem.." +msgid_plural "Acknowledging problems.." +msgstr[0] "Problem bestätigen" +msgstr[1] "Problem bestätigen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/actions.phtml:44 +#, fuzzy +msgid "Actions" msgstr "Aktiv" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/flags.phtml:24 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:70 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:98 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:24 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:24 +#, fuzzy +msgid "Active And Passive Checks Disabled" +msgstr "Passive Checks nicht mehr akzeptieren" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:39 msgid "Active Checks" msgstr "Aktive Checks" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/comments.phtml:47 -msgid "Add comment" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:72 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:100 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:22 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:22 +#, fuzzy +msgid "Active Checks Disabled" +msgstr "Aktive Checks" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:88 +msgid "Active Host Checks Being Executed" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:97 +msgid "Active Service Checks Being Executed" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:120 +#, fuzzy +msgid "Active checks" +msgstr "Aktive Checks" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:83 +#, fuzzy +msgid "Add Host Comment" +msgstr "Kommentar absenden" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:48 +msgid "Add New Backend" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:164 +msgid "Add New Instance" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:60 +#, fuzzy +msgid "Add Service Comment" msgstr "Kommentar hinzufügen" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:109 -msgid "All Events" -msgstr "Alle Ereignisse" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:14 +msgid "Add a new comment to this host" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:28 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:95 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:146 -msgid "All hosts enabled" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:25 +msgid "Add a new comment to this service" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:28 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:19 +#, fuzzy +msgid "Add comment" +msgid_plural "Add comments" +msgstr[0] "Kommentar hinzufügen" +msgstr[1] "Kommentar hinzufügen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:83 +#, fuzzy +msgid "Adding comment.." +msgid_plural "Adding comments.." +msgstr[0] "Kommentar hinzufügen" +msgstr[1] "Kommentar hinzufügen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:135 +msgid "Address" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:201 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:44 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:48 +msgid "Alert Summary" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:11 +msgid "Alert summary" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:377 +msgid "Alias" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:158 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:237 +#, fuzzy +msgid "All Hosts Enabled" msgstr "Alle Hosts aktiviert" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/services.phtml:3 -msgid "All services configured on this host" -msgstr "Alle auf diesem Host konfigurierten Services" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostCheckCommandForm.php:26 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:28 +#, fuzzy +msgid "All Services" +msgstr "Services" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:56 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:115 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:166 -msgid "All services enabled" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:92 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:192 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:271 +#, fuzzy +msgid "All Services Enabled" msgstr "Alle Services aktiviert" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CommandForm.php:93 -msgid "Author (Your Name)" -msgstr "Autor (Dein Name)" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:178 +#, fuzzy +msgid "All backends are disabled" +msgstr "Alle Services aktiviert" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CustomNotificationForm.php:63 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:16 +msgid "Allow acknowledging host and service problems" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:24 +msgid "Allow adding and deleting host and service comments" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:8 +msgid "Allow all commands" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:28 +msgid "Allow commenting on hosts and services" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:32 +msgid "Allow deleting host and service comments" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:44 +msgid "Allow deleting host and service downtimes" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:52 +msgid "" +"Allow processing commands for toggling features on an instance-wide basis" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:56 +msgid "" +"Allow processing commands for toggling features on host and service objects" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:48 +#, fuzzy +msgid "Allow processing host and service check results" +msgstr "Service-Checks verfolgen" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:20 +#, fuzzy +msgid "Allow removing problem acknowledgements" +msgstr "Problembestätigung entfernen" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:36 +msgid "Allow scheduling and deleting host and service downtimes" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:12 +#, fuzzy +msgid "Allow scheduling host and service checks" +msgstr "Service-Checks verfolgen" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:40 +msgid "Allow scheduling host and service downtimes" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:60 +msgid "Allow sending custom notifications for hosts and services" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:21 +msgid "Apply" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:131 +msgid "Are you sure you want to remove this instance?" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:300 +msgid "Author" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:33 +msgid "Average" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:108 +msgid "Average services per host" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:439 +msgid "Avg (min)" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:78 +#, php-format +msgid "Backend \"%s\" successfully removed." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:216 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:28 +msgid "Backend Name" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:226 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:44 +msgid "Backend Type" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:75 +msgid "Backends" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:77 msgid "Broadcast" msgstr "Broadcast" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:52 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:52 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:184 msgid "CRITICAL" msgstr "KRITISCH" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:140 -msgid "Check Output" -msgstr "Check Ausgabe" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:62 +#, fuzzy +msgctxt "icinga.state" +msgid "CRITICAL" +msgstr "KRITISCH" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:116 -msgid "Check Result" -msgstr "Check-Ergebnis" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/checksource.phtml:3 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checksource.phtml:4 msgid "Check Source" msgstr "Check-Quelle" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/RescheduleNextCheckForm.php:33 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:51 msgid "Check Time" msgstr "Ausführungszeit" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:32 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:61 +#, fuzzy +msgid "Check attempts" +msgstr "Check Ausgabe" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:70 msgid "Check execution time" msgstr "Check-Ausführungsdauer" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:38 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:76 msgid "Check latency" msgstr "Check-Latenz" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:37 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:39 msgid "Check now" msgstr "Jetzt prüfen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:253 -msgid "Child Objects" -msgstr "Kind-Objekte" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:78 +msgid "" +"Check this to not to validate connectivity with the given Livestatus socket" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/command.phtml:7 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:77 +msgid "" +"Check this to not to validate connectivity with the given database server" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:38 +#, fuzzy +msgid "Child Hosts" +msgstr "Unbestätigte Hosts" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:58 +msgid "" +"Comma separated case insensitive list of protected custom variables. Use * " +"as a placeholder for zero or more wildcard characters. Existance of those " +"custom variables will be shown, but their values will be masked." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:9 msgid "Command" msgstr "Befehl" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:290 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:721 -msgid "Command has been sent, active checks will be disabled" -msgstr "Befehl wurde gesendet, aktive Checks werden deaktiviert" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/LocalInstanceForm.php:30 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:64 +#, fuzzy +msgid "Command File" +msgstr "Befehl" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:315 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:741 -msgid "Command has been sent, active checks will be enabled" -msgstr "Befehl wurde gesendet, aktive Checks werden aktiviert" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:49 +#, fuzzy +msgid "Commands" +msgstr "Befehl" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:334 -msgid "Command has been sent, check will be rescheduled" -msgstr "Befehl wurde gesendet, Check wird neu geplant" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:701 -msgid "Command has been sent, checks will be rescheduled" -msgstr "Befehl wurde gesendet, Checks werden neu geplant" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:772 -msgid "Command has been sent, event handlers will be disabled" -msgstr "Befehl wurde gesendet, Eventhandler werden deaktiviert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:804 -msgid "Command has been sent, event handlers will be enabled" -msgstr "Befehl wurde gesendet, Eventhandler werden aktiviert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:837 -msgid "Command has been sent, flap detection will be disabled" -msgstr "Befehl wurde gesendet, Flap-Erkennung wird deaktiviert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:870 -msgid "Command has been sent, flap detection will be enabled" -msgstr "Befehl wurde gesendet, Flap-Erkennung wird aktiviert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1047 -msgid "Command has been sent, monitoring process will restart now" -msgstr "Befehl wurde gesendet, der Monitoring-Prozess wird jetzt neustarten" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:510 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:538 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:661 -msgid "Command has been sent, notifications will be disabled" -msgstr "Befehl wurde gesendet, Benachrichtigungen werden deaktiviert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:568 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:682 -msgid "Command has been sent, notifications will be enabled" -msgstr "Befehl wurde gesendet, Benachrichtigungen werden aktiviert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:391 -msgid "Command has been sent, obsessing will be disabled" -msgstr "Befehl wurde gesendet, Verfolgung wird deaktiviert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:425 -msgid "Command has been sent, obsessing will be enabled" -msgstr "Befehl wurde gesendet, Verfolgung wird aktiviert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:492 -msgid "Command has been sent, passive check results will be accepted" -msgstr "Befehl wurde gesendet, passive Checks werden akzeptiert werden" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:459 -msgid "Command has been sent, passive check results will be refused" -msgstr "Befehl wurde gesendet, passive Checks werden abgewiesen werden" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1069 -msgid "Command has been sent, performance data processing will be disabled" -msgstr "Befehl wurde gesendet, Performancedatenverarbeitung wird deaktiviert werden" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1091 -msgid "Command has been sent, performance data processing will be enabled" -msgstr "Befehl wurde gesendet, Performancedatenverarbeitung wird aktiviert werden" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1026 -msgid "Command has been sent, process will shut down" -msgstr "Befehl wurde gesendet, der Monitoringprozess wird herunterfahren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:32 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:28 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:36 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CommentForm.php:30 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CustomNotificationForm.php:34 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:134 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:49 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:43 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:65 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:52 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:62 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:67 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:63 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:54 msgid "Comment" msgstr "Kommentar" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:33 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:489 +#, fuzzy +msgid "Comment Timestamp" +msgstr "Kommentare" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:492 +#, fuzzy +msgid "Comment Type" +msgstr "Kommentar" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:68 msgid "Comment deleted" msgstr "Kommentar gelöscht" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:909 -msgid "Comment removal has been requested" -msgstr "Löschung des Kommentars wurde angefordert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:42 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:36 msgid "Comment was caused by a downtime." msgstr "Kommentar wurde durch eine Downtime erstellt." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:32 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:26 msgid "Comment was caused by a flapping host or service." msgstr "Kommentar wurde durch einen flappenden Host oder service erstellt." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:40 msgid "Comment was caused by an acknowledgement." msgstr "Kommentar wurde durch eine Bestätigung erstellt." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:31 msgid "Comment was created by an user." msgstr "Kommentar wurde von einem Benutzer erstellt." -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:86 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:48 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/comments.phtml:45 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/comments.phtml:6 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:163 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:468 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:54 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:66 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:2 msgid "Comments" msgstr "Kommentare" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:78 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/contacts.phtml:33 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:196 +#, php-format +msgid "Configuration for backend %s is disabled" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:79 +msgid "" +"Configure how to protect your monitoring environment against prying eyes" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:74 +msgid "Configure how to retrieve monitoring information" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:434 +#, fuzzy +msgid "Contact Groups" +msgstr "Kontaktgruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:4 +#, fuzzy +msgid "Contact details" +msgstr "Kontakte" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:159 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:37 msgid "Contactgroups" msgstr "Kontaktgruppen" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:90 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/contacts.phtml:14 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:155 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:351 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:17 msgid "Contacts" msgstr "Kontakte" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:160 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:299 +msgid "Contains host states of each service group." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:240 +msgid "Contains service states for each service group." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:55 +msgid "Could not find any valid monitoring backend resources" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:53 +msgid "Create New Instance" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:9 +#, fuzzy +msgid "Create New Monitoring Backend" +msgstr "Monitoring-Prozess neu starten" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:264 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:118 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 msgid "Critical" msgstr "Kritisch" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:101 -msgid "Critical Events" -msgstr "Kritische Ereignisse" - -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:45 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:123 msgid "Current Downtimes" msgstr "Aktuelle Downtimes" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:584 -msgid "Custom notification has been sent" -msgstr "Benutzerdefinierte Bestätigung wurde gesendet" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:227 +#, fuzzy +msgid "Current Host State" +msgstr "Host-Status" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CustomNotificationForm.php:52 -msgid "Custom notifications normally follow the regular notification logic in Icinga. Selecting this option will force the notification to be sent out, regardless of time restrictions, whether or not notifications are enabled, etc." -msgstr "Benutzeredefinierte Benachrichtigungen verhalten sich gemäß der gewöhnlichen Benachrichtigungslogik in Icinga. Wenn du diese Option wählst wird eine Benachrichtigung erzwungen. Einschränkungen durch Zeitspannen und durch eventuell deaktivierte Benachrichtigungen werden dabei ignoriert." +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:217 +#, fuzzy +msgid "Current Incidents" +msgstr "Aktuelle Downtimes" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:47 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:223 +#, fuzzy +msgid "Current Service State" +msgstr "Service-Zustand" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:133 +#, fuzzy +msgid "Current State" +msgstr "Aktuelle Downtimes" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:176 msgid "DOWN" msgstr "DOWN" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/DelayNotificationForm.php:51 -msgid "Delay Notification" -msgstr "Benachrichtigung verzögern" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:57 +#, fuzzy +msgctxt "icinga.state" +msgid "DOWN" +msgstr "DOWN" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/comments.phtml:13 -msgid "Delay Notifications" -msgstr "Benachrichtigungen verzögern" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:104 +msgid "Database Name" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:997 -msgid "Delete Downtime" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:83 +msgid "Database Resource" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:92 +#, fuzzy +msgid "Database Type" +msgstr "Downtime-Typ" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:643 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:646 +msgid "Day" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:468 +msgid "Defect Chart" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:489 +msgid "Defects" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:46 +msgid "Define what should be done with the child hosts of the hosts." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php:64 +#, fuzzy +msgid "Delete this comment" msgstr "Downtime löschen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:999 -msgid "Delete a single downtime with the id shown above" -msgstr "Lösche eine einzelne Downtime mit der oben gezeigten ID." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php:64 +#, fuzzy +msgid "Delete this downtime" +msgstr "Downtime löschen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:278 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:713 -msgid "Disable Active Checks" -msgstr "Aktive Checks deaktivieren" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php:89 +#, fuzzy +msgid "Deleting comment.." +msgstr "Kommentar entfernen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:753 -msgid "Disable Event Handler" -msgstr "Event-Handler deaktivieren" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php:89 +#, fuzzy +msgid "Deleting downtime.." +msgstr "Downtime löschen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:816 -msgid "Disable Flapping Detection" -msgstr "Flap-Erkennung deaktivieren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:523 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:652 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:99 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:24 msgid "Disable Notifications" msgstr "Benachrichtigungen deaktivieren" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1060 -msgid "Disable Performance Data" -msgstr "Performancedaten deaktivieren" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:208 +msgid "Disable This Backend" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:714 -msgid "Disable active checks for this host and its services." -msgstr "Deaktiviere aktive Service-Checks für diesen Host und seine Service-Checks." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:283 -msgid "Disable active checks for this object." -msgstr "Deaktiviere aktive Service-Checks für dieses Objekt." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:281 -msgid "Disable active checks on a program-wide basis." -msgstr "Deaktiviere applikationsweit sämtliche aktiven Service-Checks." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:756 -msgid "Disable event handler for the whole system." -msgstr "Dektiviere Event-Handler für das ganze System." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:758 -msgid "Disable event handler for this object." -msgstr "Dektiviere Event-Handler für dieses Objekt." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:821 -msgid "Disable flapping detection for this object." -msgstr "Deaktiviere die Flap-Erkennnung für dieses Objekt." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:819 -msgid "Disable flapping detection on a program-wide basis." -msgstr "Deaktiviere die Flap-Erkennnung applikationsweit." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:49 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:67 msgid "Disable notifications for a specific time on a program-wide basis" -msgstr "Deaktivieren Benachrichtigungen applikationsweit für eine bestimmte Zeitspanne." +msgstr "" +"Deaktivieren Benachrichtigungen applikationsweit für eine bestimmte " +"Zeitspanne." -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:526 -msgid "Disable notifications on a program-wide basis." -msgstr "Deaktiviere die Flap-Erkennnung applikationsweit." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:69 +msgid "Disable temporarily" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:372 -msgid "Disable obsessing on a program-wide basis." -msgstr "Deaktiviere die Verfolgung applikationsweit." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:61 +#, fuzzy +msgid "Disabling host and service notifications.." +msgstr "Benachrichtigungen deaktivieren" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:440 -msgid "Disable passive checks on a program-wide basis." -msgstr "Deaktiviere Passive Checks applikationsweit." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1061 -msgid "Disable processing of performance data on a program-wide basis." -msgstr "Deaktiviere die Verarbeitung von Performance-Daten applikationsweit." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:40 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:72 -msgid "Disabled" -msgstr "Deaktiviert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:256 -msgid "Do nothing with child objects" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:41 +#, fuzzy +msgid "Do nothing with child hosts" msgstr "Mach nichts mit Kind-Objekten" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:205 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:314 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:139 msgid "Down" msgstr "Down" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:41 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:35 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:68 msgid "Downtime" msgstr "Downtime" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:77 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:93 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:88 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:120 msgid "Downtime End" msgstr "Downtime Ende" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:72 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:88 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:83 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:115 msgid "Downtime Start" msgstr "Downtime Beginn" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:185 -msgid "Downtime Type" -msgstr "Downtime-Typ" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1006 -msgid "Downtime removal has been requested" -msgstr "Entfernung dieser Downtime wurde angefordert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:640 -msgid "Downtime removal requested" -msgstr "Entfernung dieser Downtime wurde angefordert" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:88 msgid "Downtime removed" msgstr "Downtime entfernt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:603 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:621 -msgid "Downtime scheduling requested" -msgstr "Die Planung dieser Downtime wurde angefordert" - -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:82 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/downtime.phtml:55 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:167 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:269 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:56 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:2 msgid "Downtimes" msgstr "Downtimes" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/contacts.phtml:28 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/contact.phtml:18 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:305 +#, fuzzy +msgid "Duration" +msgstr "Flexible Dauer" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:33 +msgid "Edit Existing Backend" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:150 +msgid "Edit Existing Instance" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:27 +#, fuzzy, php-format +msgid "Edit monitoring backend %s" +msgstr "Monitoring-Prozess neu starten" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:71 +#, fuzzy, php-format +msgid "Edit monitoring instance %s" +msgstr "Monitoring-Prozess neu starten" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:378 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:28 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:22 msgid "Email" msgstr "E-Mail" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:305 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:733 -msgid "Enable Active Checks" -msgstr "Aktive Checks aktivieren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:785 -msgid "Enable Event Handler" -msgstr "Eventhandler aktivieren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:849 -msgid "Enable Flapping Detection" -msgstr "Flap-Erkennung aktivieren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:553 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:673 -msgid "Enable Notifications" -msgstr "Benachrichtigungen aktivieren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1082 -msgid "Enable Performance Data" -msgstr "Performancedaten aktivieren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:734 -msgid "Enable active checks for this host and its services." -msgstr "Aktive Checks für diesen Host und seine Services aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:309 -msgid "Enable active checks for this object." -msgstr "Aktive Checks für dieses Objekt aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:307 -msgid "Enable active checks on a program-wide basis." -msgstr "Aktive Checks anwendungsweit aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:790 -msgid "Enable event handler for this object." -msgstr "Event-Handler für dieses Objekt aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:788 -msgid "Enable event handlers on the whole system." -msgstr "Event-Handler für das gesamte System aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:854 -msgid "Enable flapping detection for this object." -msgstr "Flap-Erkennung für dieses Objekt aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:852 -msgid "Enable flapping detection on a program-wide basis." -msgstr "Flap-Erkennung anwendungsweit aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:556 -msgid "Enable notifications on a program-wide basis." -msgstr "Benachrichtigungen anwendungsweit aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:406 -msgid "Enable obsessing on a program-wide basis." -msgstr "Verfolgung anwendungsweit aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:474 -msgid "Enable passive checks on a program-wide basis." -msgstr "Passive Checks anwendungsweit aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1083 -msgid "Enable processing of performance data on a program-wide basis." -msgstr "Performancedaten-Verarbeitung anwendungsweit aktivieren." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:173 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:302 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:88 msgid "End Time" msgstr "Endzeitpunkt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:63 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:69 msgid "Ended downtimes" msgstr "Beendete Downtimes" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:238 -msgid "Enter here the duration of the downtime. Icinga will automatically delete the downtime after this time expired." -msgstr "Die gewünschte Dauer der Downtime hier eintragen. Icinga wird die Downtime nach Ablauf dieser Zeit automatisch löschen." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:159 +#, fuzzy +msgid "" +"Enter here the duration of the downtime. The downtime will be automatically " +"deleted after this time expired." +msgstr "" +"Die gewünschte Dauer der Downtime hier eintragen. Icinga wird die Downtime " +"nach Ablauf dieser Zeit automatisch löschen." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:81 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/DisableNotificationWithExpireForm.php:32 -msgid "Enter the expire date/time for this acknowledgement here. Icinga will delete the acknowledgement after this date expired." -msgstr "Den gewünschten Verfallszeitpunkt der Downtime hier eintragen. Icinga wird die Downtime bei Überschreitung dieses Zeitpunkts löschen." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:90 +#, fuzzy +msgid "" +"Enter the expire date and time for this acknowledgement here. Icinga will " +"delete the acknowledgement after this time expired." +msgstr "" +"Den gewünschten Verfallszeitpunkt der Downtime hier eintragen. Icinga wird " +"die Downtime bei Überschreitung dieses Zeitpunkts löschen." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/flags.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:299 +#, fuzzy +msgid "Entry Time" +msgstr "Endzeitpunkt" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:183 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:390 +#, fuzzy +msgid "Event Grid" +msgstr "Ereignisse" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:75 msgid "Event Handler" msgstr "Eventhandler" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:124 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:126 -msgid "Event handlers" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:206 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:208 +#, fuzzy +msgid "Event Handlers" msgstr "Eventhandler" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:104 -msgid "Eventhandlers enabled" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:106 +#, fuzzy +msgid "Event Handlers Enabled" msgstr "Eventhandler aktiviert" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:108 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:188 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:613 +#, fuzzy +msgid "Event Overview" +msgstr "Übersicht" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:187 msgid "Events" msgstr "Ereignisse" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:82 -msgid "Execute active host checks" -msgstr "Aktiven Host Check ausführen" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:127 +#, fuzzy +msgid "Execution time" +msgstr "Check-Ausführungsdauer" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:60 -msgid "Execute active service checks" -msgstr "Aktive Service-Checks ausführen" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:493 +msgid "Expiration" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:77 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/DisableNotificationWithExpireForm.php:28 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:43 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:87 msgid "Expire Time" msgstr "Verfallszeitpunkt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/downtimes.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:43 msgid "Expires" msgstr "Verfällt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:144 -msgid "Fill in the check output string which should be send to Icinga." -msgstr "Ausgabetext des Checkergebnisses welches an Icinga gesendet werden soll hier eintragen." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:29 +#, fuzzy +msgid "Feature Commands" +msgstr "Liste unterstützter Befehle" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:155 -msgid "Fill in the performance data string which should be send to Icinga." -msgstr "Performancedaten des Checkergebnisses welches an Icinga gesendet werden soll hier eintragen." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:52 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:107 msgid "Fixed" msgstr "Fix" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/contact.phtml:35 -msgid "Flags (host)" -msgstr "Flags (Host)" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/contact.phtml:31 -msgid "Flags (service)" -msgstr "Flags (Service)" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/flags.phtml:57 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:84 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:6 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:8 msgid "Flap Detection" msgstr "Flap-Erkennung" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:6 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:8 -msgid "Flap detection" -msgstr "Flap-Erkennung" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:137 -msgid "Flap detection enabled" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:115 +#, fuzzy +msgid "Flap Detection Enabled" msgstr "Flap-Erkennung aktiv" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:31 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:47 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:86 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:25 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:61 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:57 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:81 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:93 msgid "Flapping" msgstr "Flapping" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:63 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:66 +#, fuzzy +msgid "Flapping Stopped" +msgstr "Flapping beendet" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:98 msgid "Flapping stopped" msgstr "Flapping beendet" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:53 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:108 msgid "Flexible" msgstr "Flexibel" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:209 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:157 msgid "Flexible Duration" msgstr "Flexible Dauer" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/RescheduleNextCheckForm.php:46 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:62 msgid "Force Check" msgstr "Check erzwingen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CustomNotificationForm.php:50 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:64 msgid "Forced" msgstr "Erzwungen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:31 -msgid "Global host event handler" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:67 +msgid "From" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:47 +#, fuzzy +msgid "Global Host Event Handler" msgstr "Globaler Host Event Handler" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:35 -msgid "Global service event handler" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:41 +#, fuzzy +msgid "Global Service Event Handler" msgstr "Globaler Service Event Handler" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:34 -#, php-format -msgid "Handled services with state %s" -msgstr "Bestätigte Services mit Status %s" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:43 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:49 msgid "Hard state changes" msgstr "Harte Status-Änderungen" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:98 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:327 +msgid "Healing Chart" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:180 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:258 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:69 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:233 msgid "History" msgstr "Historie" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:37 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:297 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:490 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:211 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:63 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/command/objects-command-form.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:96 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:186 +#, fuzzy +msgid "Host" +msgstr "Hosts" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/objects-header.phtml:6 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/objects-header.phtml:21 +#, php-format +msgid "Host (%u)" +msgid_plural "Hosts (%u)" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:229 +#, fuzzy +msgid "Host Address" +msgstr "Host-Probleme" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:133 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:155 +#, fuzzy +msgid "Host Checks" +msgstr "Aktive Checks" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:25 +#, fuzzy +msgid "Host Group" +msgstr "Hostgruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:298 +#, fuzzy +msgid "Host Group Chart" +msgstr "Hostgruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:596 +#, fuzzy +msgid "Host Group Name" +msgstr "Hostgruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:561 +#, fuzzy +msgid "Host Groups" +msgstr "Hostgruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:381 +#, fuzzy +msgid "Host Notification Timeperiod" +msgstr "Host-Benachrichtigungszeitraum" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:111 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:227 msgid "Host Problems" msgstr "Host-Probleme" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/MultiController.php:60 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/MultiController.php:128 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:226 +#, fuzzy +msgid "Host Severity" +msgstr "Host-Status" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:64 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:158 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:85 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:207 msgid "Host State" msgstr "Host-Status" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/contacts.phtml:44 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/contact.phtml:43 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:2 +#, fuzzy +msgid "Host and Service Checks" +msgstr "Host- und Servicechecks" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/disable-notifications.phtml:8 +#, fuzzy +msgid "Host and service notifications are already disabled." +msgstr "Befehl wurde gesendet, Benachrichtigungen werden deaktiviert" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:34 +#, fuzzy +msgid "Host not found" +msgstr "Kein Host gefunden" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:48 msgid "Host notification period" msgstr "Host-Benachrichtigungszeitraum" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:2 -msgid "Host- and Servicechecks" -msgstr "Host- und Servicechecks" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:40 +msgid "Host or service not found" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:74 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:90 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:151 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml:16 msgid "Hostgroups" msgstr "Hostgruppen" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:58 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:194 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicegroups.phtml:28 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hostgroups.phtml:25 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:7 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/objectlist.phtml:37 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/summary.phtml:5 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:134 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:228 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:657 +#, fuzzy +msgid "Hostname" +msgstr "Host-Status" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:33 +msgid "Hostname or address of the remote Icinga instance" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:88 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:139 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:302 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:80 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:97 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:101 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:84 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:7 msgid "Hosts" msgstr "Hosts" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:217 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:640 +#, fuzzy +msgid "Hour" +msgstr "Stunden" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:137 msgid "Hours" msgstr "Stunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:66 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:44 +msgid "" +"Icinga Web 2 will protect your monitoring environment against prying eyes " +"using the configuration specified below:" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:76 +#, php-format +msgid "" +"Icinga Web 2 will retrieve information from your monitoring environment " +"using a backend called \"%s\" and the specified resource below:" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:75 +#, php-format +msgid "" +"Icinga Web 2 will use the named pipe located at \"%s\" to send commands to " +"your monitoring instance." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:48 +#, php-format +msgid "" +"Icinga Web 2 will use the named pipe located on a remote machine at \"%s\" " +"to send commands to your monitoring instance by using the connection details " +"listed below:" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:74 msgid "If the acknowledgement should expire, check this option." msgstr "Diese Option aktivieren, wenn die Bestätigung verfallen soll" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:110 -msgid "If you do not want an acknowledgement notification to be sent out to the appropriate contacts, uncheck this option." -msgstr "Wenn du keine Bestätigungsbenachrichtigung zu den jeweiligen Kontakten senden willst, deaktiviere diese Option." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:80 +msgid "" +"If you check this option, a notification is sent to all normal and escalated " +"contacts." +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:198 -msgid "If you select the fixed option, the downtime will be in effect between the start and end times you specify whereas a flexible downtime starts when the service enters a non-OK state (sometime between the start and end times you specified) and lasts as long as the duration of time you enter. The duration fields do not apply for fixed downtime." -msgstr "Wenn du die Option \"fix\" wählst, wird die Downtime zwischen dem gewählten Start- und Endzeitpunkt aktiv sein. Bei einer flexiblen Downtime beginnt die Downtime sobald der Dienst (irgendwann zwischen dem gewählten Start- und Endzeitpunkt) einen nicht-OK Zustand erreicht, und dauert so lange, wie im Feld \"Dauer\" angegeben. Diese Dauer gibt es für fixe Downtimes nicht." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:67 +#, fuzzy +msgid "" +"If you check this option, a notification is sentregardless of the current " +"time and whether notifications are enabled." +msgstr "" +"Wenn diese Option aktiviert wird, erzwingt Icinga einen Check unabhängig vom " +"eingeplanten zeitraum und auch dann, wenn aktive Checks nicht aktiv sind." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/RescheduleNextCheckForm.php:49 -msgid "If you select this option, Icinga will force a check regardless of both what time the scheduled check occurs and whether or not checks are enabled." -msgstr "Wenn diese Option aktiviert wird, erzwingt Icinga einen Check unabhängig vom eingeplanten zeitraum und auch dann, wenn aktive Checks nicht aktiv sind." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:126 +msgid "" +"If you do not want an acknowledgement notification to be sent out to the " +"appropriate contacts, uncheck this option." +msgstr "" +"Wenn du keine Bestätigungsbenachrichtigung zu den jeweiligen Kontakten " +"senden willst, deaktiviere diese Option." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CommentForm.php:49 -msgid "If you uncheck this option, the comment will automatically be deleted the next time Icinga is restarted." -msgstr "Wenn diese Option deaktiviert wird, wird der Kommentar beim nächsten Neustart von Icinga automatisch gelöscht." +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:124 +msgid "" +"If you have still any environments or views referring to this instance, you " +"won't be able to send commands anymore after deletion." +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:97 -msgid "If you want the acknowledgement to disable notifications until the host/service recovers, check this option." -msgstr "Diese Option aktivieren, wenn die Bestätigung Benachrichtigungen unterdrücken soll, bis der Host/Service sich erholt." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:101 +#, fuzzy +msgid "" +"If you select the fixed option, the downtime will be in effect between the " +"start and end times you specify whereas a flexible downtime starts when the " +"host or service enters a problem state sometime between the start and end " +"times you specified and lasts as long as the duration time you enter. The " +"duration fields do not apply for fixed downtimes." +msgstr "" +"Wenn du die Option \"fix\" wählst, wird die Downtime zwischen dem gewählten " +"Start- und Endzeitpunkt aktiv sein. Bei einer flexiblen Downtime beginnt die " +"Downtime sobald der Dienst (irgendwann zwischen dem gewählten Start- und " +"Endzeitpunkt) einen nicht-OK Zustand erreicht, und dauert so lange, wie im " +"Feld \"Dauer\" angegeben. Diese Dauer gibt es für fixe Downtimes nicht." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CommentForm.php:35 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CustomNotificationForm.php:39 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:139 -msgid "If you work with other administrators, you may find it useful to share information about a host or service that is having problems if more than one of you may be working on it. Make sure you enter a brief description of what you are doing." -msgstr "Wenn du mit anderen Administratoren zusammenarbeitest, wirst du es nützlich finden, Informationen zu Hosts oder Services mit Problemen zu teilen, insbesondere dann, wenn gemeinsam daran gearbeitet wird. Stell sicher eine kurze Beschreibung zu deiner Tätigkeit hier einzutragen." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:64 +msgid "" +"If you select this option, Icinga will force a check regardless of both what " +"time the scheduled check occurs and whether or not checks are enabled." +msgstr "" +"Wenn diese Option aktiviert wird, erzwingt Icinga einen Check unabhängig vom " +"eingeplanten zeitraum und auch dann, wenn aktive Checks nicht aktiv sind." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:55 -msgid "If you would like the comment to remain even when the acknowledgement is removed, check this option." -msgstr "Diese Option aktivieren, wenn der Kommentar auch nach dem Löschen der Bestätigung bestehen bleiben soll" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:58 +msgid "" +"If you uncheck this option, the comment will automatically be deleted the " +"next time Icinga is restarted." +msgstr "" +"Wenn diese Option deaktiviert wird, wird der Kommentar beim nächsten " +"Neustart von Icinga automatisch gelöscht." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:42 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:48 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:114 +#, fuzzy +msgid "" +"If you want the acknowledgement to disable notifications until the host or " +"service recovers, check this option." +msgstr "" +"Diese Option aktivieren, wenn die Bestätigung Benachrichtigungen " +"unterdrücken soll, bis der Host/Service sich erholt." + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:51 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:45 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:67 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:54 +#, fuzzy +msgid "" +"If you work with other administrators, you may find it useful to share " +"information about the the host or service that is having problems. Make sure " +"you enter a brief description of what you are doing." +msgstr "" +"Wenn du mit anderen Administratoren zusammenarbeitest, wirst du es nützlich " +"finden, Informationen zu Hosts oder Services mit Problemen zu teilen, " +"insbesondere dann, wenn gemeinsam daran gearbeitet wird. Stell sicher eine " +"kurze Beschreibung zu deiner Tätigkeit hier einzutragen." + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:63 +msgid "" +"If you would like the comment to remain even when the acknowledgement is " +"removed, check this option." +msgstr "" +"Diese Option aktivieren, wenn der Kommentar auch nach dem Löschen der " +"Bestätigung bestehen bleiben soll" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:56 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:65 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:89 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:83 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:17 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:17 msgid "In Downtime" msgstr "In Downtime" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:6 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:147 +msgid "" +"In case it's desired that a TCP connection is being used by Icinga Web 2 to " +"access a Livestatus interface, the Sockets module for PHP is required." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:58 +msgid "Instance" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:160 +#, php-format +msgid "Instance \"%s\" created successfully." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:163 +#, php-format +msgid "Instance \"%s\" edited successfully." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:114 +#, php-format +msgid "Instance \"%s\" successfully removed." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:191 +msgid "Instance Name" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:200 +#, fuzzy +msgid "Instance Type" +msgstr "Downtime-Typ" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:74 +msgid "Instance already exists" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:71 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:119 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:138 +msgid "Instance name missing" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:50 +#, php-format +msgid "Invalid instance type \"%s\" given" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:296 +msgid "Is In Effect" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/WelcomePage.php:42 +msgid "" +"It offers various status and reporting views with powerful filter " +"capabilities that allow you to keep track of the most important events in " +"your monitoring environment." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 +msgid "Label" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:136 +#, fuzzy +msgid "Last Check" +msgstr "Letzter Check" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:77 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:93 +#, fuzzy +msgid "Last Comment: " +msgstr "Kommentar absenden" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:31 +msgid "Last External Command Check" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:230 +#, fuzzy +msgid "Last Host Check" +msgstr "Letzter Check" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:35 +msgid "Last Log File Rotation" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:24 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:24 +#, fuzzy +msgid "Last Problem" +msgstr "Host-Probleme" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:225 +#, fuzzy +msgid "Last Service Check" +msgstr "Letzter Check" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:27 +#, fuzzy +msgid "Last Status Update" +msgstr "Letzer Status-Aktualisierung" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:18 msgid "Last check" msgstr "Letzter Check" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:27 -msgid "Last check command" -msgstr "Letztes Check-Kommando" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:126 +#, fuzzy +msgid "Latency" +msgstr "Check-Latenz" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:23 -msgid "Last status update" -msgstr "Letzer Status-Aktualisierung" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/timeline/index.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:16 msgid "Legend" msgstr "Legende" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/command/list.phtml:1 -msgid "List Of Supported Commands" -msgstr "Liste unterstützter Befehle" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:292 +#, php-format +msgid "" +"List %s service that is currenlty in state PENDING in service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state PENDING in service group \"%s\"" +msgstr[0] "" +msgstr[1] "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/objectlist.phtml:49 -msgid "List all" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:157 +#, php-format +msgid "" +"List %s service that is currently in state CRITICAL (Acknowledged) in " +"service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state CRITICAL (Acknowledged) in " +"service group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:133 +#, php-format +msgid "" +"List %s service that is currently in state CRITICAL in service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state CRITICAL in service group \"%s" +"\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:106 +#, php-format +msgid "List %s service that is currently in state OK in service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state OK in service group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:211 +#, php-format +msgid "" +"List %s service that is currently in state UNKNOWN (Acknowledged) in service " +"group \"%s\"" +msgid_plural "" +"List %s services which are currently in state UNKNOWN (Acknowledged) in " +"service group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:187 +#, php-format +msgid "" +"List %s service that is currently in state UNKNOWN in service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state UNKNOWN in service group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:265 +#, php-format +msgid "" +"List %s service that is currently in state WARNING (Acknowledged) in service " +"group \"%s\"" +msgid_plural "" +"List %s services which are currently in state WARNING (Acknowledged) in " +"service group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:241 +#, php-format +msgid "" +"List %s service that is currently in state WARNING in service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state WARNING in service group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:123 +#, fuzzy, php-format +msgid "List %s unhandled service problem on host %s" +msgid_plural "List %s unhandled service problems on host %s" +msgstr[0] "%d unbestätigte Services" +msgstr[1] "%d unbestätigte Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:111 +#, php-format +msgctxt "timeline.link.title" +msgid "List %u %s registered %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:24 +#, fuzzy, php-format +msgid "List %u actively checked host" +msgid_plural "List %u actively checked hosts" +msgstr[0] "%d wird passiv überwacht" +msgstr[1] "%d wird passiv überwacht" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:80 +#, fuzzy, php-format +msgid "List %u actively checked service" +msgid_plural "List %u actively checked services" +msgstr[0] "%d wird passiv überwacht" +msgstr[1] "%d wird passiv überwacht" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:112 +#, fuzzy, php-format +msgid "List %u host comment" +msgid_plural "List %u host comments" +msgstr[0] "Kommentar absenden" +msgstr[1] "Kommentar absenden" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:97 +#, fuzzy, php-format +msgid "List %u host currently in downtime" +msgid_plural "List %u hosts currently in downtime" +msgstr[0] "Aktueller Zustand dieses Host" +msgstr[1] "Aktueller Zustand dieses Host" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:27 +#, fuzzy, php-format +msgid "List %u host for which flap detection has been disabled" +msgid_plural "List %u hosts for which flap detection has been disabled" +msgstr[0] "Befehl wurde gesendet, Flap-Erkennung wird deaktiviert" +msgstr[1] "Befehl wurde gesendet, Flap-Erkennung wird deaktiviert" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:148 +#, php-format +msgid "List %u host for which notifications are suppressed" +msgid_plural "List %u hosts for which notifications are suppressed" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:57 +#, php-format +msgid "List %u host that is currently flapping" +msgid_plural "List %u hosts which are currently flapping" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:17 +#, fuzzy, php-format +msgid "List %u host that is currently in state DOWN" +msgid_plural "List %u hosts which are currently in state DOWN" +msgstr[0] "Aktueller Zustand dieses Host" +msgstr[1] "Aktueller Zustand dieses Host" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:59 +#, php-format +msgid "List %u host that is currently in state DOWN (Acknowledged)" +msgid_plural "List %u hosts which are currently in state DOWN (Acknowledged)" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:126 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:40 +#, fuzzy, php-format +msgid "List %u host that is currently in state PENDING" +msgid_plural "List %u hosts which are currently in state PENDING" +msgstr[0] "Aktueller Zustand dieses Host" +msgstr[1] "Aktueller Zustand dieses Host" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:84 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:39 +#, php-format +msgid "List %u host that is currently in state UNREACHABLE" +msgid_plural "List %u hosts which are currently in state UNREACHABLE" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:104 +#, php-format +msgid "List %u host that is currently in state UNREACHABLE (Acknowledged)" +msgid_plural "" +"List %u hosts which are currently in state UNREACHABLE (Acknowledged)" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:18 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:22 +#, fuzzy, php-format +msgid "List %u host that is currently in state UP" +msgid_plural "List %u hosts which are currently in state UP" +msgstr[0] "Aktueller Zustand dieses Host" +msgstr[1] "Aktueller Zustand dieses Host" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:60 +#, fuzzy, php-format +msgid "List %u host that is not being checked at all" +msgid_plural "List %u hosts which are not being checked at all" +msgstr[0] "%d wird nicht überwacht" +msgstr[1] "%d wird nicht überwacht" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:227 +#, php-format +msgid "List %u host that is not processing any event handlers" +msgid_plural "List %u hosts which are not processing any event handlers" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:42 +#, fuzzy, php-format +msgid "List %u passively checked host" +msgid_plural "List %u passively checked hosts" +msgstr[0] "%d wird passiv überwacht" +msgstr[1] "%d wird passiv überwacht" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:98 +#, fuzzy, php-format +msgid "List %u passively checked service" +msgid_plural "List %u passively checked services" +msgstr[0] "%d wird passiv überwacht" +msgstr[1] "%d wird passiv überwacht" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:112 +#, php-format +msgid "List %u service comment" +msgid_plural "List %u service comments" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:97 +#, fuzzy, php-format +msgid "List %u service currently in downtime" +msgid_plural "List %u services currently in downtime" +msgstr[0] "Aktueller Zustand dieses Services" +msgstr[1] "Aktueller Zustand dieses Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:82 +#, php-format +msgid "List %u service for which flap detection has been disabled" +msgid_plural "List %u services for which flap detection has been disabled" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:182 +#, php-format +msgid "List %u service for which notifications are suppressed" +msgid_plural "List %u services for which notifications are suppressed" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:112 +#, fuzzy, php-format +msgid "List %u service that is currently flapping" +msgid_plural "List %u services which are currently flapping" +msgstr[0] "%d flapping services" +msgstr[1] "%d flapping services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:57 +#, fuzzy, php-format +msgid "List %u service that is currently in state %s" +msgid_plural "List %u services which are currently in state %s" +msgstr[0] "Aktueller Zustand dieses Services" +msgstr[1] "Aktueller Zustand dieses Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:82 +#, php-format +msgid "List %u service that is currently in state %s (Acknowledged)" +msgid_plural "List %u services which are currently in state %s (Acknowledged)" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:108 +#, php-format +msgid "List %u service that is currently in state %s (Acknowledged) on host %s" +msgid_plural "" +"List %u services which are currently in state %s (Acknowledged) on host %s" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:82 +#, php-format +msgid "List %u service that is currently in state %s on host %s" +msgid_plural "List %u services which are currently in state %s on host %s" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:20 +#, fuzzy, php-format +msgid "List %u service that is currently in state CRITICAL" +msgid_plural "List %u services which are currently in state CRITICAL" +msgstr[0] "Aktueller Zustand dieses Services" +msgstr[1] "Aktueller Zustand dieses Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:41 +#, php-format +msgid "List %u service that is currently in state CRITICAL (Acknowledged)" +msgid_plural "" +"List %u services which are currently in state CRITICAL (Acknowledged)" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:165 +#, php-format +msgid "" +"List %u service that is currently in state CRITICAL (Acknowledged) on hosts " +"in the host group \"%s\"" +msgid_plural "" +"List %u services which are currently in state CRITICAL (Acknowledged) on " +"hosts in the host group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:95 +#, php-format +msgid "" +"List %u service that is currently in state CRITICAL and not checked at all" +msgid_plural "" +"List %u services which are currently in state CRITICAL and not checked at all" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:68 +#, php-format +msgid "" +"List %u service that is currently in state CRITICAL and passively checked" +msgid_plural "" +"List %u services which are currently in state CRITICAL and passively checked" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:141 +#, php-format +msgid "" +"List %u service that is currently in state CRITICAL on hosts in the host " +"group \"%s\"" +msgid_plural "" +"List %u services which are currently in state CRITICAL on hosts in the host " +"group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:19 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:314 +#, fuzzy, php-format +msgid "List %u service that is currently in state OK" +msgid_plural "List %u services which are currently in state OK" +msgstr[0] "Aktueller Zustand dieses Services" +msgstr[1] "Aktueller Zustand dieses Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:340 +#, php-format +msgid "List %u service that is currently in state OK and not checked at all" +msgid_plural "" +"List %u services which are currently in state OK and not checked at all" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:43 +#, php-format +msgid "List %u service that is currently in state OK on host %s" +msgid_plural "List %u services which are currently in state OK on host %s" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:114 +#, php-format +msgid "" +"List %u service that is currently in state OK on hosts in the host group \"%s" +"\"" +msgid_plural "" +"List %u services which are currently in state OK on hosts in the host group " +"\"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:106 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:361 +#, fuzzy, php-format +msgid "List %u service that is currently in state PENDING" +msgid_plural "List %u services which are currently in state PENDING" +msgstr[0] "Aktueller Zustand dieses Services" +msgstr[1] "Aktueller Zustand dieses Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:387 +#, php-format +msgid "" +"List %u service that is currently in state PENDING and not checked at all" +msgid_plural "" +"List %u services which are currently in state PENDING and not checked at all" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:133 +#, php-format +msgid "List %u service that is currently in state PENDING on host %s" +msgid_plural "List %u services which are currently in state PENDING on host %s" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:300 +#, php-format +msgid "" +"List %u service that is currently in state PENDING on hosts in the host " +"group \"%s\"" +msgid_plural "" +"List %u services which are currently in state PENDING on hosts in the host " +"group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:218 +#, fuzzy, php-format +msgid "List %u service that is currently in state UNKNOWN" +msgid_plural "List %u services which are currently in state UNKNOWN" +msgstr[0] "Aktueller Zustand dieses Services" +msgstr[1] "Aktueller Zustand dieses Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:239 +#, php-format +msgid "List %u service that is currently in state UNKNOWN (Acknowledged)" +msgid_plural "" +"List %u services which are currently in state UNKNOWN (Acknowledged)" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:219 +#, php-format +msgid "" +"List %u service that is currently in state UNKNOWN (Acknowledged) on hosts " +"in the host group \"%s\"" +msgid_plural "" +"List %u services which are currently in state UNKNOWN (Acknowledged) on " +"hosts in the host group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:293 +#, php-format +msgid "" +"List %u service that is currently in state UNKNOWN and not checked at all" +msgid_plural "" +"List %u services which are currently in state UNKNOWN and not checked at all" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:266 +#, php-format +msgid "" +"List %u service that is currently in state UNKNOWN and passively checked" +msgid_plural "" +"List %u services which are currently in state UNKNOWN and passively checked" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:195 +#, php-format +msgid "" +"List %u service that is currently in state UNKNOWN on hosts in the host " +"group \"%s\"" +msgid_plural "" +"List %u services which are currently in state UNKNOWN on hosts in the host " +"group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:119 +#, fuzzy, php-format +msgid "List %u service that is currently in state WARNING" +msgid_plural "List %u services which are currently in state WARNING" +msgstr[0] "Aktueller Zustand dieses Services" +msgstr[1] "Aktueller Zustand dieses Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:140 +#, php-format +msgid "List %u service that is currently in state WARNING (Acknowledged)" +msgid_plural "" +"List %u services which are currently in state WARNING (Acknowledged)" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:273 +#, php-format +msgid "" +"List %u service that is currently in state WARNING (Acknowledged) on hosts " +"in the host group \"%s\"" +msgid_plural "" +"List %u services which are currently in state WARNING (Acknowledged) on " +"hosts in the host group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:194 +#, php-format +msgid "" +"List %u service that is currently in state WARNING and not checked at all" +msgid_plural "" +"List %u services which are currently in state WARNING and not checked at all" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:167 +#, php-format +msgid "" +"List %u service that is currently in state WARNING and passively checked" +msgid_plural "" +"List %u services which are currently in state WARNING and passively checked" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:249 +#, php-format +msgid "" +"List %u service that is currently in state WARNING on hosts in the host " +"group \"%s\"" +msgid_plural "" +"List %u services which are currently in state WARNING on hosts in the host " +"group \"%s\"" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:116 +#, fuzzy, php-format +msgid "List %u service that is not being checked at all" +msgid_plural "List %u services which are not being checked at all" +msgstr[0] "%d wird nicht überwacht" +msgstr[1] "%d wird nicht überwacht" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:261 +#, php-format +msgid "List %u service that is not processing any event handlers" +msgid_plural "List %u services which are not processing any event handlers" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:10 +#, fuzzy, php-format +msgid "List all %u hosts" msgstr "Alle anzeigen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/objectlist.phtml:52 -msgid "List all selected objects" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:23 +#, fuzzy, php-format +msgid "List all %u service on host %s" +msgid_plural "List all %u services on host %s" +msgstr[0] "Alle gewählten Objekte anzeigen" +msgstr[1] "Alle gewählten Objekte anzeigen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:10 +#, fuzzy, php-format +msgid "List all %u services" +msgstr "%s Services:" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:73 +#, php-format +msgctxt "timeline.link.title" +msgid "List all event records registered %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:86 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml:11 +#, php-format +msgid "List all hosts in the group \"%s\"" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:41 +msgid "List all hosts, for which flap detection is enabled entirely" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:162 +msgid "List all hosts, for which notifications are enabled entirely" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:241 +msgid "List all hosts, which are processing event handlers entirely" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:72 +#, php-format +msgid "List all reported services on host %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:86 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml:11 +#, php-format +msgid "List all services in the group \"%s\"" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:95 +#, php-format +msgid "List all services of all hosts in host group \"%s\"" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:237 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:212 +#, fuzzy, php-format +msgid "List all services on host %s" msgstr "Alle gewählten Objekte anzeigen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:222 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:231 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:53 +#, php-format +msgid "List all services with the name \"%s\" on all reported hosts" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:96 +msgid "List all services, for which flap detection is enabled entirely" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:196 +msgid "List all services, for which notifications are enabled entirely" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:275 +msgid "List all services, which are processing event handlers entirely" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:468 +#, fuzzy +msgid "List comments" +msgstr "Kommentar absenden" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:435 +#, fuzzy +msgid "List contact groups" +msgstr "Kontaktgruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:351 +#, fuzzy +msgid "List contacts" +msgstr "Kontakte" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:31 +#, php-format +msgid "List contacts in contact-group \"%s\"" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:269 +#, fuzzy +msgid "List downtimes" +msgstr "Begonnene Downtimes" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:614 +msgid "List event records" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:561 +#, fuzzy +msgid "List host groups" +msgstr "Hostgruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:97 +msgid "List hosts" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:326 +#, fuzzy +msgid "List notifications" +msgstr "Benachrichtigungen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:510 +#, fuzzy +msgid "List service groups" +msgstr "Servicegruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:171 +#, fuzzy +msgid "List services" +msgstr "%s Services:" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:118 +msgid "Livestatus Resource" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:76 +msgid "Local" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:202 +msgid "Local Command File" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 +msgid "Max" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:449 +msgid "Max (min)" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 +#, fuzzy +msgid "Min" +msgstr "Minuten" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:147 msgid "Minutes" msgstr "Minuten" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:2 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:14 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:72 +#, fuzzy +msgid "Monitoring Backend" +msgstr "Monitoring-Prozess" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:14 +#, fuzzy +msgctxt "setup.page.title" +msgid "Monitoring Backend" +msgstr "Monitoring-Prozess" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:3 +#, fuzzy +msgid "Monitoring Backends" +msgstr "Monitoring-Prozess" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:2 msgid "Monitoring Features" msgstr "Monitoring-Features" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:159 -msgid "Monitoring Process" +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:209 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:29 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:40 +#, fuzzy +msgid "Monitoring Health" +msgstr "Monitoring-Features" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:14 +#, fuzzy +msgctxt "setup.page.title" +msgid "Monitoring IDO Resource" +msgstr "Monitoring-Features" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:42 +#, fuzzy +msgid "Monitoring Instance" msgstr "Monitoring-Prozess" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:21 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/InstancePage.php:14 +#, fuzzy +msgctxt "setup.page.title" +msgid "Monitoring Instance" +msgstr "Monitoring-Prozess" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:50 +#, fuzzy +msgid "Monitoring Instances" +msgstr "Monitoring-Prozess" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:14 +#, fuzzy +msgctxt "setup.page.title" +msgid "Monitoring Livestatus Resource" +msgstr "Monitoring-Features" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:41 +#, fuzzy +msgid "Monitoring Security" +msgstr "Monitoring-Features" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/SecurityPage.php:14 +#, fuzzy +msgctxt "setup.page.title" +msgid "Monitoring Security" +msgstr "Monitoring-Features" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:146 +#, php-format +msgid "Monitoring backend \"%s\" has been successfully changed" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:143 +#, php-format +msgid "Monitoring backend \"%s\" has been successfully created" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:79 +#, fuzzy +msgid "Monitoring backend already exists" +msgstr "Monitoring-Features" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:146 +#, php-format +msgid "" +"Monitoring backend configuration could not be written to: %s; An error " +"occured:" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:141 +#, php-format +msgid "Monitoring backend configuration has been successfully written to: %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:77 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:124 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:170 +#, fuzzy +msgid "Monitoring backend name missing" +msgstr "Monitoring-Prozess" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:93 +#, php-format +msgid "" +"Monitoring instance configuration could not be written to: %s; An error " +"occured:" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:88 +#, php-format +msgid "Monitoring instance configuration has been successfully created: %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:71 +#, php-format +msgid "" +"Monitoring security configuration could not be written to: %s; An error " +"occured:" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:66 +#, php-format +msgid "Monitoring security configuration has been successfully created: %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:649 +msgid "Month" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:38 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:44 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:50 +msgid "N/A" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:376 +msgid "Name" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:97 +msgid "New instance name missing" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:102 +msgid "New monitoring backend name missing" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:31 +msgid "New security configuration has successfully been stored" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:27 msgid "Next check" msgstr "Nächster Check" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicematrix.phtml:26 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checksource.phtml:17 +msgid "No" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:23 msgid "No Services matching the filter" msgstr "Zu diesem Filter wurden keine Services gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:20 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:25 +#, fuzzy +msgid "No active downtimes" +msgstr "Begonnene Downtimes" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:176 +msgid "No backend has been configured" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:14 msgid "No comments matching the filter" msgstr "Zu diesem Filter wurden keine Kommentare gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/contactgroups.phtml:11 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/contacts.phtml:16 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:189 +#, php-format +msgid "No configuration for backend %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contactgroups.phtml:11 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:12 msgid "No contacts matching the filter" msgstr "Zu diesem Filter wurden keine Kontakte gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/downtimes.phtml:18 -msgid "No downtimes matching the filter" -msgstr "Zu diesem Filter wurden keine Downtimes gefunden" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:10 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:24 msgid "No history available for this object" msgstr "Zu diesem Filter wurden keine historischen Ereignisse gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/statehistorysummary.phtml:12 -msgid "No history entry matching the filter" -msgstr "Zu diesem Filter wurden keine historischen Ereignisse gefunden" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:14 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:26 msgid "No history events matching the filter" msgstr "Zu diesem Filter wurden keine historischen Ereignisse gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hostgroups.phtml:11 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:17 msgid "No host groups matching the filter" msgstr "Zu diesem Filter wurden keine Hostgruppen gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hosts.phtml:28 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/host.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:6 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:27 msgid "No hosts matching the filter" msgstr "Zu diesem Filter wurden keine Hosts gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/notifications.phtml:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:53 msgid "No notification has been sent for this issue" msgstr "Für dieses Problem wurde keine Benachrichtigung gesendet" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/notifications.phtml:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:62 +#, fuzzy +msgid "No notifications have been sent for this contact" +msgstr "Für dieses Problem wurde keine Benachrichtigung gesendet" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:21 msgid "No notifications matching the filter" msgstr "Zu diesem Filter wurde keine Benachrichtigung gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicegroups.phtml:11 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:17 msgid "No service groups matching the filter" msgstr "Zu diesem Filter wurden keine Servicegruppen gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/services.phtml:40 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/service.phtml:17 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:32 +#, fuzzy +msgid "No services configured on this host" +msgstr "Alle auf diesem Host konfigurierten Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:6 msgid "No services matching the filter" msgstr "Zu diesem Filter wurden keine Services gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/contact.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:69 +msgid "No state changes in the selected time period." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:10 msgid "No such contact" msgstr "Der gewünschte Kontakt existiert nicht" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:32 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:55 +msgid "None" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:23 msgid "Not acknowledged" msgstr "Nicht bestätigt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:32 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:36 -msgid "Not set" -msgstr "Nicht gesetzt" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:27 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:23 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:41 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:52 msgid "Notification" msgstr "Benachrichtigung" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/DelayNotificationForm.php:30 -msgid "Notification Delay (Minutes From Now)" -msgstr "Benachrichtigungsverzögerung (Minuten ab jetzt)" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:342 +#, fuzzy +msgid "Notification Start" +msgstr "Benachrichtigung" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:984 -msgid "Notification delay has been requested" -msgstr "Benachrichtigungsverzögerung wurde angefragt" - -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:105 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:38 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/flags.phtml:35 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/notifications.phtml:10 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:73 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:75 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:171 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:331 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:429 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:472 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:479 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:325 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:44 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:76 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:66 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:2 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:127 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:129 msgid "Notifications" msgstr "Benachrichtigungen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:39 -msgid "Notifications enabled" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:61 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:85 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:13 +#, fuzzy +msgid "Notifications Disabled" msgstr "Benachrichtigungen aktiv" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:653 -msgid "Notifications for this host and its services will be disabled." -msgstr "Benachrichtigungen für diesen Host und seine Services werden deaktiviert." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:124 +#, fuzzy +msgid "Notifications Enabled" +msgstr "Benachrichtigungen aktiv" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:674 -msgid "Notifications for this host and its services will be enabled." -msgstr "Benachrichtigungen für diesen Host und seine Services werden aktiviert." +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:15 +#, fuzzy +msgid "Notifications and Problems" +msgstr "Benachrichtigungen aktiv" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:528 -msgid "Notifications for this object will be disabled." -msgstr "Benachrichtigungen für dieses Objekt werden deaktiviert." +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:328 +msgid "Notifications and average reaction time per hour." +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:558 -msgid "Notifications for this object will be enabled." -msgstr "Benachrichtigungen für dieses Objekt werden aktiviert." +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:469 +#, fuzzy +msgid "Notifications and defects per hour" +msgstr "Zu diesem Filter wurde keine Benachrichtigung gefunden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:51 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:56 +#, fuzzy +msgid "Notifications sent to this contact" +msgstr "Für dieses Problem wurde keine Benachrichtigung gesendet" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:76 +#, php-format +msgid "Notifications will be re-enabled in %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/disable-notifications.phtml:11 +#, php-format +msgid "Notifications will be re-enabled in %s." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:70 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:70 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:178 msgid "OK" msgstr "OK" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/flags.phtml:68 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:60 +#, fuzzy +msgctxt "icinga.state" +msgid "OK" +msgstr "OK" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:72 +msgid "Object summaries" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:97 +msgid "Object type" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:57 msgid "Obsessing" msgstr "Verfolgung" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:115 -msgid "Obsessing over host checks" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:144 +#, fuzzy +msgid "Obsessing Over Hosts" msgstr "Host-Checks verfolgen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:126 -msgid "Obsessing over service checks" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:153 +#, fuzzy +msgid "Obsessing Over Services" msgstr "Service-Checks verfolgen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:148 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:636 +msgid "Occurence" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:250 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:121 msgid "Ok" msgstr "Ok" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:92 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:95 +msgid "Old instance name missing" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:100 +msgid "Old monitoring backend name missing" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:536 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:98 msgid "One day" msgstr "Ein Tag" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:94 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:538 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:100 msgid "One month" msgstr "Ein Monat" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:93 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:537 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:99 msgid "One week" msgstr "Eine Woche" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:95 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:539 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:101 msgid "One year" msgstr "Ein Jahr" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:50 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:72 +#, fuzzy +msgid "Output" +msgstr "Check Ausgabe" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:131 msgid "Overview" msgstr "Übersicht" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/contacts.phtml:33 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/contact.phtml:26 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:76 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:76 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:182 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:190 +#, fuzzy +msgid "PENDING" +msgstr "%d Hosts UNGEPRÜFT" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:32 msgid "Pager" msgstr "Pager" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:30 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:62 -msgid "Passive" -msgstr "Passiv" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:379 +msgid "Pager Address / Number" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/flags.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:48 msgid "Passive Checks" msgstr "Passive Checks" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:357 -msgid "Passive check result has been submitted" -msgstr "Passives Check-Ergebnis wurde gesendet" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:162 +msgid "Passive Host Checks Being Accepted" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:476 -msgid "Passive checks for this object will be accepted." -msgstr "Passives Check-Ergebnis für dieses Objekt werden akzeptiert." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:171 +msgid "Passive Service Checks Being Accepted" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:442 -msgid "Passive checks for this object will be omitted." -msgstr "Passives Check-Ergebnis für dieses Objekt werden ignoriert." +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:150 +#, fuzzy +msgid "Passive checks" +msgstr "Passive Checks" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:152 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:112 +msgid "Password" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:66 +msgid "Path to the Icinga command file on the remote Icinga instance" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/LocalInstanceForm.php:32 +msgid "Path to the local Icinga command file" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:81 msgid "Performance Data" msgstr "Performancedaten" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:122 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:180 +#, fuzzy +msgid "Performance Data Being Processed" +msgstr "Performancedaten" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:70 msgid "Performance Info" msgstr "Performance-Info" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/perfdata.phtml:3 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/perfdata.phtml:3 msgid "Performance data" msgstr "Performancedaten" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CommentForm.php:46 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:55 msgid "Persistent" msgstr "Persisten" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:52 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:61 msgid "Persistent Comment" msgstr "Persistenter Kommentar" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CommentForm.php:55 -msgid "Post Comment" -msgstr "Kommentar absenden" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:16 +msgid "" +"Please configure below how Icinga Web 2 should retrieve monitoring " +"information." +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:25 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/InstancePage.php:16 +msgid "Please define the settings specific to your monitoring instance below." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:16 +msgid "" +"Please fill out the connection details below to access the IDO database of " +"your monitoring environment." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:16 +msgid "" +"Please fill out the connection details below to access the Livestatus socket " +"interface for your monitoring environment." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/output.phtml:2 +msgid "Plugin Output" +msgstr "Ausgabe des Plugins" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:42 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:100 +msgid "Port" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/selectioninfo.phtml:2 +msgctxt "multiselection" +msgid "" +"Press and hold the Ctrl key while clicking on rows to select multiple rows " +"or press and hold the Shift key to select a range of rows." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:96 msgid "Problems" msgstr "Probleme" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:118 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:19 msgid "Process Info" msgstr "Prozess Info" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:148 -msgid "Process performance data" -msgstr "Performancedaten verarbeiten" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:16 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:27 +#, fuzzy +msgid "Process check result" +msgstr "Check-Ergebnis" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:25 -msgid "Remove Acknowledgement" -msgstr "Bestätigung entfernen" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:111 +msgid "Processing check result.." +msgid_plural "Processing check results.." +msgstr[0] "" +msgstr[1] "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:104 -msgid "Remove Comment" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:23 +#, fuzzy +msgid "Program Start Time" +msgstr "Anfangszeit" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:56 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:52 +msgid "Protected Custom Variables" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checksource.phtml:14 +#, fuzzy +msgid "Reachable" +msgstr "Nicht erreichbar" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:223 +msgid "Recently Recovered Services" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:76 +msgid "Remote" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:203 +#, fuzzy +msgid "Remote Command File" msgstr "Kommentar entfernen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/comments.phtml:10 -msgid "Remove Comments" -msgstr "Kommentare entfernen" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:633 -msgid "Remove Downtime(s)" -msgstr "Downtime(s) entfernen" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:960 -msgid "Remove Problem Acknowledgement" -msgstr "Problembestätigung entfernen" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:903 -msgid "Remove comment" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:58 +#, fuzzy +msgid "Remote Host" msgstr "Kommentar entfernen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:634 -msgid "Remove downtime(s) from this host and its services." -msgstr "Downtime(s) für diesen Host und seine Services entfernen." +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:62 +msgid "Remote SSH Port" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:26 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:66 +msgid "Remote SSH User" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:59 +#, fuzzy +msgid "Remove" +msgstr "Kommentar entfernen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:86 +msgid "Remove Existing Backend" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:122 +msgid "Remove Existing Instance" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:42 +#, fuzzy, php-format +msgid "Remove monitoring backend %s" +msgstr "Monitoring-Prozess neu starten" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:86 +#, fuzzy, php-format +msgid "Remove monitoring instance %s" +msgstr "Monitoring-Prozess neu starten" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/RemoveAcknowledgementCommandForm.php:30 +#, fuzzy msgid "Remove problem acknowledgement" -msgstr "Problembestätigung entfernen" +msgid_plural "Remove problem acknowledgements" +msgstr[0] "Problembestätigung entfernen" +msgstr[1] "Problembestätigung entfernen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:961 -msgid "Remove problem acknowledgement for this object." -msgstr "Problembestätigungen für diesen Host und seine Services entfernen." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/RemoveAcknowledgementCommandForm.php:48 +#, fuzzy +msgid "Removing problem acknowledgement.." +msgid_plural "Removing problem acknowledgements.." +msgstr[0] "Problembestätigung entfernen" +msgstr[1] "Problembestätigung entfernen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:28 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:541 +msgid "Report interval" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:196 +msgid "Reporting" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:32 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:45 msgid "Reschedule" msgstr "Neu planen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/RescheduleNextCheckForm.php:64 -msgid "Reschedule Check" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:95 +#, fuzzy +msgid "Reschedule Host Check" msgstr "Check neu planen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:9 -msgid "Reschedule next check immediately" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:196 +#, fuzzy +msgid "Reschedule Host Checks" +msgstr "Check neu planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:72 +#, fuzzy +msgid "Reschedule Service Check" +msgstr "Check neu planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:245 +#, fuzzy +msgid "Reschedule Service Checks" +msgstr "Check neu planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:17 +#, fuzzy, php-format +msgid "Reschedule the next check for all %u hosts" msgstr "Nächsten Check sofort einplanen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:921 -msgid "Reset Attributes" -msgstr "Attribute zurücksetzen" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:17 +#, fuzzy, php-format +msgid "Reschedule the next check for all %u services" +msgstr "Nächsten Check sofort einplanen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:922 -msgid "Reset modified attributes to its default." -msgstr "Veränderte Attribute zurücksetzen." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:240 +#, fuzzy +msgid "Resource" +msgstr "Check-Quelle" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:161 -msgid "Restart" -msgstr "Neustarten" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:88 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:123 +msgid "Resource Name" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1039 -msgid "Restart monitoring process" -msgstr "Monitoring-Prozess neu starten" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:158 +#, php-format +msgid "Resource configuration could not be udpated: %s; An error occured:" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:162 -msgid "Restart the monitoring process" -msgstr "Monitoring-Prozess neu starten" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:155 +#, php-format +msgid "Resource configuration has been successfully updated: %s" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1040 -msgid "Restart the monitoring process." -msgstr "Monitoring-Prozess neu starten." +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:65 +msgid "Restrict hosts view to the hosts that match the filter" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:278 -msgid "Schedule Downtime" +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:70 +msgid "Restrict services view to the services that match the filter" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:43 +msgid "SSH port to connect to on the remote Icinga instance" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:30 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:27 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:20 +#, fuzzy +msgid "Save Changes" +msgstr "Passive Checks" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:107 +#, fuzzy +msgid "Schedule Host Downtime" msgstr "Downtime planen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/downtime.phtml:57 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:208 +#, fuzzy +msgid "Schedule Host Downtimes" +msgstr "Downtime planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:84 +#, fuzzy +msgid "Schedule Service Downtime" +msgstr "Downtime planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:257 +#, fuzzy +msgid "Schedule Service Downtimes" +msgstr "Downtime planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:55 +#, php-format +msgid "Schedule a downtime for %u unhandled host problem" +msgid_plural "Schedule a downtime for %u unhandled host problems" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:55 +#, php-format +msgid "Schedule a downtime for %u unhandled service problem" +msgid_plural "Schedule a downtime for %u unhandled service problems" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:23 +#, fuzzy, php-format +msgid "Schedule a downtime for all %u hosts" +msgstr "Downtime planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:23 +#, fuzzy, php-format +msgid "Schedule a downtime for all %u services" +msgstr "Downtime planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:28 +msgid "" +"Schedule a downtime to suppress all problem notifications within a specific " +"period of time" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:34 +#, fuzzy +msgid "Schedule check" +msgid_plural "Schedule checks" +msgstr[0] "Check neu planen" +msgstr[1] "Check neu planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostCheckCommandForm.php:28 +msgid "Schedule check for all services on the hosts and the hosts themselves." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:47 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:21 +#, fuzzy msgid "Schedule downtime" +msgid_plural "Schedule downtimes" +msgstr[0] "Downtime planen" +msgstr[1] "Downtime planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:30 +msgid "" +"Schedule downtime for all services on the hosts and the hosts themselves." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:43 +msgid "Schedule non-triggered downtime for all child hosts" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:52 +msgid "Schedule the next active check at a different time than the current one" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:43 +#, fuzzy +msgid "Schedule the next active check to run immediately" +msgstr "Nächsten Check sofort einplanen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:42 +msgid "Schedule triggered downtime for all child hosts" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:304 +#, fuzzy +msgid "Scheduled End" msgstr "Downtime planen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:258 -msgid "Schedule non-triggered downtime for all child objects" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:303 +#, fuzzy +msgid "Scheduled Start" +msgstr "Downtime planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:72 +#, fuzzy +msgid "Scheduling check.." +msgid_plural "Scheduling checks.." +msgstr[0] "Check neu planen" +msgstr[1] "Check neu planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostCheckCommandForm.php:51 +#, fuzzy +msgid "Scheduling host check.." +msgid_plural "Scheduling host checks.." +msgstr[0] "Host-Checks verfolgen" +msgstr[1] "Host-Checks verfolgen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:86 +#, fuzzy +msgid "Scheduling host downtime.." +msgid_plural "Scheduling host downtimes.." +msgstr[0] "Downtime planen" +msgstr[1] "Downtime planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:100 +#, fuzzy +msgid "Scheduling service check.." +msgid_plural "Scheduling service checks.." +msgstr[0] "Service-Checks verfolgen" +msgstr[1] "Service-Checks verfolgen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:207 +#, fuzzy +msgid "Scheduling service downtime.." +msgid_plural "Scheduling service downtimes.." +msgstr[0] "Downtime planen" +msgstr[1] "Downtime planen" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:80 +msgid "Security" msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:257 -msgid "Schedule triggered downtime for all child objects" -msgstr "" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CustomNotificationForm.php:65 -msgid "Selecting this option causes the notification to be sent out to all normal (non-escalated) and escalated contacts. These options allow you to override the normal notification logic if you need to get an important message out." -msgstr "Das Aktivieren diese Option verursacht, dass die Benachrichtigung an alle normalen (nicht-eskalierten) sowie eskalierten Kontakte gesendet wird. Die erlaubt es, die normale Benachrichtigungslogik zu übergehen, wenn eine dringende Nachricht versendet werden muss." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CustomNotificationForm.php:72 -msgid "Send Custom Notification" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:131 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:232 +#, fuzzy +msgid "Send Custom Host Notification" msgstr "Benutzerdefinierte Benachrichtigung senden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:107 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:108 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:281 +#, fuzzy +msgid "Send Custom Service Notification" +msgstr "Benutzerdefinierte Benachrichtigung senden" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:123 msgid "Send Notification" msgstr "Benachrichtigung senden" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/header.phtml:23 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:36 +#, fuzzy, php-format +msgid "Send a custom notification for all %u hosts" +msgstr "Benutzerdefinierte Benachrichtigung senden" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:36 +#, fuzzy, php-format +msgid "Send a custom notification for all %u services" +msgstr "Benutzerdefinierte Benachrichtigung senden" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:25 +msgid "" +"Send a custom notification, share information about the object to contacts." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:28 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:24 +#, php-format +msgid "Send a mail to %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:34 +#, fuzzy +msgid "Send custom notification" +msgid_plural "Send custom notifications" +msgstr[0] "Benutzerdefinierte Benachrichtigung senden" +msgstr[1] "Benutzerdefinierte Benachrichtigung senden" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:106 +msgid "Send custom notification.." +msgid_plural "Send custom notifications.." +msgstr[0] "Benutzerdefinierte Benachrichtigung senden" +msgstr[1] "Benutzerdefinierte Benachrichtigungen senden" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:18 +msgid "Send notification" +msgstr "Benachrichtigung senden" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:62 +#, php-format +msgid "Sent to %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:298 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:491 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:226 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:45 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/command/objects-command-form.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/object-header.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:201 msgid "Service" msgstr "Service" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:41 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:55 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/objects-header.phtml:7 +#, fuzzy, php-format +msgid "Service (%u)" +msgid_plural "Services (%u)" +msgstr[0] "Service" +msgstr[1] "Service" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:141 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:161 +#, fuzzy +msgid "Service Checks" +msgstr "Services" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:119 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:646 +#, fuzzy +msgid "Service Grid" +msgstr "Service" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:25 +#, fuzzy +msgid "Service Group" +msgstr "Servicegruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:239 +#, fuzzy +msgid "Service Group Chart" +msgstr "Servicegruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:546 +#, fuzzy +msgid "Service Group Name" +msgstr "Servicegruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:509 +#, fuzzy +msgid "Service Groups" +msgstr "Servicegruppen" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:224 +#, fuzzy +msgid "Service Name" +msgstr "Service-Zustand" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:380 +#, fuzzy +msgid "Service Notification Timeperiod" +msgstr "Benachrichtigungzeitraum des Services" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:115 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:219 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:77 msgid "Service Problems" msgstr "Service-Probleme" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/MultiController.php:123 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:222 +#, fuzzy +msgid "Service Severity" +msgstr "Service-Zustand" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:80 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:202 msgid "Service State" msgstr "Service-Zustand" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/contacts.phtml:40 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/contact.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:27 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:27 +#, fuzzy +msgid "Service States" +msgstr "Service-Zustand" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:658 +msgid "Service description" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/service/show.phtml:3 +#, fuzzy +msgid "Service detail information" +msgstr "Benachrichtigungzeitraum des Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:33 +#, fuzzy +msgid "Service not found" +msgstr "Benachrichtigungzeitraum des Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:42 msgid "Service notification period" msgstr "Benachrichtigungzeitraum des Services" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:70 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml:14 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:91 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:147 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml:17 msgid "Servicegroups" msgstr "Servicegruppen" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:66 -msgid "Servicematrix" -msgstr "Service-Matrix" - -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:62 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:142 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicegroups.phtml:29 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hostgroups.phtml:26 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:8 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:28 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:22 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/objectlist.phtml:30 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/summary.phtml:5 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:89 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:143 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:243 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:171 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:101 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:240 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:100 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:96 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:42 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:50 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:48 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:215 msgid "Services" msgstr "Services" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:8 -#, php-format -msgid "Services with state %s" -msgstr "Service im Zustand %s" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:550 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:600 +#, fuzzy +msgid "Services CRITICAL" +msgstr "KRITISCH" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/RescheduleNextCheckForm.php:37 -msgid "Set the date/time when this check should be executed." +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:548 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:598 +#, fuzzy +msgid "Services OK" +msgstr "Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:552 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:602 +#, fuzzy +msgid "Services PENDING" +msgstr "Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:549 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:599 +#, fuzzy +msgid "Services UNKNOWN" +msgstr "Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:551 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:601 +#, fuzzy +msgid "Services WARNING" +msgstr "Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:53 +#, fuzzy +msgid "Set the date and time when the check should be scheduled." msgstr "Setze den Zeitpunkt zu welchem dieser Check ausgeführt werden soll." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:176 -msgid "Set the end date/time for the downtime." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:89 +#, fuzzy +msgid "Set the end date and time for the downtime." msgstr "Setze den Endzeitpunkt für diese Downtime." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:165 -msgid "Set the start date/time for the downtime." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:44 +#, fuzzy +msgid "Set the expire time." +msgstr "Verfallszeitpunkt nutzen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:79 +#, fuzzy +msgid "Set the start date and time for the downtime." msgstr "Setze den Startzeitpunkt für diese Downtime." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:132 -msgid "Set the state which should be send to Icinga for this objects." -msgstr "Setze den Status welcher für dieses Objekt an Icinga gesendet werden soll." +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:97 +msgid "Setup the monitoring module for Icinga Web 2" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1019 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:168 -msgid "Shutdown monitoring process" -msgstr "Monitoring-Prozess herunterefahren" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:132 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:545 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:595 +msgid "Severity" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:169 -msgid "Shutdown the monitoring process" -msgstr "Monitoring-Prozess herunterfahren" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:256 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:231 +#, php-format +msgid "Show all event records of host %s" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/notifications.phtml:6 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/servicematrix.phtml:5 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:11 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/downtimes.phtml:9 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:5 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/hosts.phtml:10 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/services.phtml:10 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:252 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:227 +#, php-format +msgid "Show all event records of service %s on host %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TacticalController.php:15 +msgid "" +"Show an overview of all hosts and services, their current states and " +"monitoring feature utilisation" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contactgroups.phtml:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:23 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:36 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:11 +#, php-format +msgid "Show detailed information about %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:208 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Link.php:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:104 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:120 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:183 +#, php-format +msgid "Show detailed information for host %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:222 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Link.php:60 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:93 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:112 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:151 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:197 +#, php-format +msgid "Show detailed information for service %s on host %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:26 +msgid "" +"Show information about the current monitoring instance's process and it's " +"performance as well as available features" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:41 +msgid "" +"Show recent alerts and visualize notifications and problems based on their " +"amount and chronological distribution" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:259 +msgid "Show resource configuration" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:77 +#, php-format +msgid "Show summarized information for %u hosts" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:98 +#, php-format +msgid "Show summarized information for %u services" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:390 +msgid "Show the Event Grid" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:646 +msgid "Show the Service Grid" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:258 +#, php-format +msgid "Show the configuration of the %s resource" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:21 +msgid "Show the number of historical event records grouped by time and type" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:75 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:76 +msgid "Skip Validation" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:127 +msgid "Socket" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:5 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:7 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:10 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:7 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:14 msgid "Sort by" msgstr "Sortiere nach" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:471 -msgid "Start Accepting Passive Checks" -msgstr "Passive Checks akzepzieren" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:94 +#, fuzzy +msgctxt "setup.welcome.btn.next" +msgid "Start" +msgstr "Beginnt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:162 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:301 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:78 msgid "Start Time" msgstr "Anfangszeit" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:403 -msgid "Start obsessing" -msgstr "Verfolgung beginnen" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:408 -msgid "Start obsessing over this object." -msgstr "Verfolgung dieses Objekts beginnen" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TimelineController.php:58 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:64 msgid "Started downtimes" msgstr "Begonnene Downtimes" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/downtimes.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:43 msgid "Starts" msgstr "Beginnt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:94 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:115 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:135 +#, fuzzy +msgid "State" +msgstr "Host-Status" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:46 +#, fuzzy +msgid "State Changes" +msgstr "Harte Status-Änderungen" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:53 +msgid "Status" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:111 msgid "Sticky Acknowledgement" msgstr "Klebrige Bestätigung" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:437 -msgid "Stop Accepting Passive Checks" -msgstr "Passive Checks nicht mehr akzeptieren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:1020 -msgid "Stop monitoring instance. You have to start it again from command line." -msgstr "Überwachungsinstanz stoppen. Muss anschließen von der Kommandozeile aus neu gestartet werden." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:369 -msgid "Stop obsessing" -msgstr "Verfolgung deaktivieren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:374 -msgid "Stop obsessing over this object." -msgstr "Verfolgung für dieses Objekt deaktivieren" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:159 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:31 +#, fuzzy msgid "Submit Passive Check Result" +msgid_plural "Submit Passive Check Results" +msgstr[0] "Passives Check-Ergebnis übermitteln" +msgstr[1] "Passives Check-Ergebnis übermitteln" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:119 +#, fuzzy +msgid "Submit Passive Host Check Result" msgstr "Passives Check-Ergebnis übermitteln" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:117 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:220 +#, fuzzy +msgid "Submit Passive Host Check Results" +msgstr "Passives Check-Ergebnis übermitteln" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:96 +#, fuzzy +msgid "Submit Passive Service Check Result" +msgstr "Passives Check-Ergebnis übermitteln" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:269 +#, fuzzy +msgid "Submit Passive Service Check Results" +msgstr "Passives Check-Ergebnis übermitteln" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:13 +#, php-format +msgid "Submit a one time or so called passive result for the %s check" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:29 +#, fuzzy, php-format +msgid "Submit a passive check result for all %u hosts" +msgstr "Passives Check-Ergebnis übermitteln" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:29 +#, fuzzy, php-format +msgid "Submit a passive check result for all %u services" +msgstr "Passives Check-Ergebnis übermitteln" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:208 msgid "System" msgstr "System" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/RescheduleNextCheckForm.php:61 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:275 -msgid "TODO: Help message when with children is disabled" -msgstr "" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/RescheduleNextCheckForm.php:59 -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:247 -msgid "TODO: Help message when with children is enabled" -msgstr "" - -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:54 -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/TacticalController.php:15 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:135 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TacticalController.php:18 msgid "Tactical Overview" msgstr "Taktische Übersicht" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:51 -msgid "Temporarily disable" -msgstr "Temporär deaktivieren" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:169 +msgid "" +"The Zend database adapter for MySQL is required to access a MySQL database." +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/components/notifications.phtml:25 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:189 +msgid "" +"The Zend database adapter for PostgreSQL is required to access a PostgreSQL " +"database." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:227 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:46 +msgid "The data source used for retrieving monitoring information" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/DataView/DataView.php:338 +#, php-format +msgid "The filter column \"%s\" is not allowed here." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:60 +msgid "The given resource name is already in use." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:217 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:29 +msgid "The identifier of this backend" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:46 #, php-format msgid "The last one occured %s ago" msgstr "Die letzte geschah vor %s" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/DelayNotificationForm.php:45 -msgid "The notification delay will be disregarded if the host/service changes state before the next notification is scheduled to be sent out." -msgstr "Die Benachrichtigungsverzögerung wird ignoriert wenn der Host/Service vor der nächsten zu versendenden Benachrichtigung seinen Status ändert." - -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ShowController.php:111 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:122 msgid "The parameter `contact' is required" msgstr "Der Parameter `contact' ist erforderlich" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:3 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:83 +msgid "" +"The performance data of this check result. Leave empty if this check result " +"has no performance data" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:73 +msgid "The plugin output of this check result" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:241 +msgid "The resource to use" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/DataView/DataView.php:247 +#, php-format +msgid "The sort column \"%s\" is not allowed in \"%s\"." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:54 +msgid "The state this check result should report" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:91 +#, php-format +msgid "There is no \"%s\" monitoring backend" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:17 msgid "This Object's Event History" msgstr "Historie dieses Objekts" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:24 -msgid "This command is used to acknowledge host or service problems. When a problem is acknowledged, future notifications about problems are temporarily disabled until the host/service changes from its current state." -msgstr "Dieses Kommando wird benutzt um Host- oder Service-Probleme zu bestätigen. Wenn ein Problem bestätigt ist, werden zukünftige Benachrichtigungen temporär deaktiviert, bis der Host/Service seinen Zustand wieder ändert." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:22 +#, fuzzy +msgid "" +"This command is used to acknowledge host or service problems. When a problem " +"is acknowledged, future notifications about problems are temporarily " +"disabled until the host or service recovers." +msgstr "" +"Dieses Kommando wird benutzt um Host- oder Service-Probleme zu bestätigen. " +"Wenn ein Problem bestätigt ist, werden zukünftige Benachrichtigungen " +"temporär deaktiviert, bis der Host/Service seinen Zustand wieder ändert." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CommentForm.php:22 -msgid "This command is used to add a comment to hosts or services." -msgstr "Dieses Kommando wird benutzt um Kommentare zu Hosts oder Services hinzuzufügen." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:19 +#, fuzzy +msgid "This command is used to add host or service comments." +msgstr "" +"Dieses Kommando wird benutzt um Kommentare zu Hosts oder Services " +"hinzuzufügen." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/DelayNotificationForm.php:24 -msgid "This command is used to delay the next problem notification that is sent out." -msgstr "Dieses Kommando wird benutzt um den Versand der nächsten Benachrichtigung zu diesem Problem zu verzögern." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:26 +#, fuzzy +msgid "" +"This command is used to disable host and service notifications for a " +"specific time." +msgstr "" +"Dieses Kommando wird benutzt um den Versand der nächsten Benachrichtigung zu " +"diesem Problem zu verzögern." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:121 -msgid "This command is used to schedule downtime for hosts/services. During the specified downtime, Icinga will not send notifications out about the affected objects. When the scheduled downtime expires, Icinga will send out notifications as it normally would. Scheduled downtimes are preserved across program shutdowns and restarts." -msgstr "Dieses Kommando wird benutzt um Downtimes für Hosts/Services einzuplanen. Während der angegebenen Downtime wird Icinga keine Benachrichtigungen zum entsprechenden Objekt versenden. Wenn die eingeplante Downtime vorüber ist, wird Icinga mit dem Versand der Benachrichtigungen wie gewohnt fortfahren. Eingeplante Downtimes übersteh das Herunterfahren und Neustarten der Applikation." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:33 +#, fuzzy +msgid "" +"This command is used to schedule host and service downtimes. During the " +"specified downtime, Icinga will not send notifications out about the hosts " +"and services. When the scheduled downtime expires, Icinga will send out " +"notifications for the hosts and services as it normally would. Scheduled " +"downtimes are preserved across program shutdowns and restarts." +msgstr "" +"Dieses Kommando wird benutzt um Downtimes für Hosts/Services einzuplanen. " +"Während der angegebenen Downtime wird Icinga keine Benachrichtigungen zum " +"entsprechenden Objekt versenden. Wenn die eingeplante Downtime vorüber ist, " +"wird Icinga mit dem Versand der Benachrichtigungen wie gewohnt fortfahren. " +"Eingeplante Downtimes übersteh das Herunterfahren und Neustarten der " +"Applikation." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/RescheduleNextCheckForm.php:24 -msgid "This command is used to schedule the next check of hosts/services. Icinga will re-queue the check at the time you specify." -msgstr "Dieses Kommando wird benutzt, um den nächsten Check des Hosts/Services einzuplanen. Icinga wird den Check für den von dir gewählten Zeitpunkt vormerken." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:23 +#, fuzzy +msgid "" +"This command is used to schedule the next check of hosts or services. Icinga " +"will re-queue the hosts or services to be checked at the time you specify." +msgstr "" +"Dieses Kommando wird benutzt, um den nächsten Check des Hosts/Services " +"einzuplanen. Icinga wird den Check für den von dir gewählten Zeitpunkt " +"vormerken." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/CustomNotificationForm.php:22 -msgid "This command is used to send a custom notification about hosts or services. Useful in emergencies when you need to notify admins of an issue regarding a monitored system or service." -msgstr "Dieses Kommando ermöglicht es, personalisierte Benachrichtigungen für Hosts oder Services zu versenden. Nützlich ist das vor allem im Notfall, wenn man andere Administratoren über Probleme zu einem bestimmten System oder Dienst informieren möchte." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:21 +#, fuzzy +msgid "" +"This command is used to send custom notifications for hosts or services." +msgstr "" +"Dieses Kommando wird benutzt um Kommentare zu Hosts oder Services " +"hinzuzufügen." -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:106 -msgid "This command is used to submit a passive check result for particular hosts/services. It is particularly useful for resetting security-related objects to OK states once they have been dealt with." -msgstr "Dieses Kommando erlaubt es, ein passives Check-Ergebnis für einen bestimmten Host oder Service einzuliefern. Das ist for allem dann nützlich, wenn man sicherheitsrelevante Objekte zurück auf einen OK-Status setzen möchte, sobald man sich darum gekümmert hat." +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:20 +#, fuzzy +msgid "This command is used to submit passive host or service check results." +msgstr "" +"Dieses Kommando wird benutzt um Kommentare zu Hosts oder Services " +"hinzuzufügen." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:90 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:76 msgid "This comment does not expire." msgstr "Dieser Kommentar verfällt nicht." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:87 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:73 #, php-format msgid "This comment expires on %s at %s." msgstr "Dieser Kommentar verfällt am %s um %s." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:83 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:69 msgid "This comment is not persistent." msgstr "Dieser Kommentar ist nicht persistent." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:82 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:68 msgid "This comment is persistent." msgstr "Dieser Kommentar ist persistent." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/downtimes.phtml:89 -#, php-format -msgid "This fixed downtime has been scheduled to start on %s at %s and to end on %s at %s." -msgstr "Diese fixe Downtime wurde eingeplant um am %s um %s zu starten und am %s um %s zu enden." +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:107 +#, fuzzy, php-format +msgid "" +"This fixed host downtime has been scheduled to start on %s at %s and to end " +"on %s at %s." +msgstr "" +"Diese fixe Downtime wurde eingeplant um am %s um %s zu starten und am %s um " +"%s zu enden." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/downtimes.phtml:81 -#, php-format -msgid "This fixed downtime was started on %s at %s and expires on %s at %s." +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:97 +#, fuzzy, php-format +msgid "" +"This fixed host downtime was started on %s at %s and expires on %s at %s." msgstr "Diese fixe Downtime begann am %s um %s und endet am %s um %s." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/downtimes.phtml:72 -#, php-format -msgid "This flexible downtime has been scheduled to start between %s - %s and to last for %s." -msgstr "Diese flexible Downtime wurde für den Zeitraum von %s - %s eingeplant und wird %s dauern." +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:106 +#, fuzzy, php-format +msgid "" +"This fixed service downtime has been scheduled to start on %s at %s and to " +"end on %s at %s." +msgstr "" +"Diese fixe Downtime wurde eingeplant um am %s um %s zu starten und am %s um " +"%s zu enden." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/downtimes.phtml:63 -#, php-format -msgid "This flexible downtime was started on %s at %s and lasts for %s until %s at %s." +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:96 +#, fuzzy, php-format +msgid "" +"This fixed service downtime was started on %s at %s and expires on %s at %s." +msgstr "Diese fixe Downtime begann am %s um %s und endet am %s um %s." + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:86 +#, fuzzy, php-format +msgid "" +"This flexible host downtime has been scheduled to start between %s - %s and " +"to last for %s." +msgstr "" +"Diese flexible Downtime wurde für den Zeitraum von %s - %s eingeplant und " +"wird %s dauern." + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:75 +#, fuzzy, php-format +msgid "" +"This flexible host downtime was started on %s at %s and lasts for %s until " +"%s at %s." msgstr "Diese flexible Downtime begann am %s um %s und dauert %s bis %s am %s." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/host.phtml:4 -msgid "This host's current state" -msgstr "Aktueller Zustand dieses Host" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:85 +#, fuzzy, php-format +msgid "" +"This flexible service downtime has been scheduled to start between %s - %s " +"and to last for %s." +msgstr "" +"Diese flexible Downtime wurde für den Zeitraum von %s - %s eingeplant und " +"wird %s dauern." -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/service.phtml:4 -msgid "This service's current state" -msgstr "Aktueller Zustand dieses Services" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:74 +#, fuzzy, php-format +msgid "" +"This flexible service downtime was started on %s at %s and lasts for %s " +"until %s at %s." +msgstr "Diese flexible Downtime begann am %s um %s und dauert %s bis %s am %s." -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:112 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/WelcomePage.php:33 +msgid "This is the core module for Icinga Web 2." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:22 +msgid "Time to Reaction (Ack, Recover)" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:103 +msgid "TimeLine interval" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:191 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:22 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:26 msgid "Timeline" msgstr "Zeitleiste" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/ScheduleDowntimeForm.php:150 -msgid "Triggered by" -msgstr "Ausgelöst von" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:83 +msgid "To" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:54 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:160 +msgid "" +"To access the IDO stored in a MySQL database the PDO-MySQL module for PHP is " +"required." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:180 +msgid "" +"To access the IDO stored in a PostgreSQL database the PDO-PostgreSQL module " +"for PHP is required." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/SecurityPage.php:16 +msgid "" +"To protect your monitoring environment against prying eyes please fill out " +"the settings below." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:86 +msgid "Today" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:219 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:133 +msgid "Toggling feature.." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:56 +msgid "Top 5 Recent Alerts" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:547 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:597 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:26 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:26 +#, fuzzy +msgid "Total Services" +msgstr "Services" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:29 +msgid "Trend" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:39 +msgid "Trend for the last 24h" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:99 +msgid "Type" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:75 +#, php-format +msgid "Type: %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:40 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:40 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:187 msgid "UNKNOWN" msgstr "UNBEKANNT" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:48 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:63 +#, fuzzy +msgctxt "icinga.state" +msgid "UNKNOWN" +msgstr "UNBEKANNT" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:179 msgid "UNREACHABLE" msgstr "UNERREICHBAR" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:46 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:58 +#, fuzzy +msgctxt "icinga.state" +msgid "UNREACHABLE" +msgstr "UNERREICHBAR" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:173 msgid "UP" msgstr "UP" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:23 -#, php-format -msgid "Unhandled services with state %s" -msgstr "Unbestätigte Services mit Status %s" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:56 +#, fuzzy +msgctxt "icinga.state" +msgid "UP" +msgstr "UP" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:49 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:71 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:5 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:5 +#, fuzzy +msgid "Unhandled" +msgstr "Unbestätigte Hosts" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:101 msgid "Unhandled Hosts" msgstr "Unbestätigte Hosts" -#: /usr/local/src/bugfix.master/modules/monitoring/configuration.php:33 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:106 msgid "Unhandled Services" msgstr "Unbestätigte Services" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:166 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:271 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:120 msgid "Unknown" msgstr "Unbekannt" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:211 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:141 +msgid "Unknown instance name given" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:99 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:121 +msgid "Unknown instance name provided" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:104 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:126 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:172 +#, fuzzy +msgid "Unknown monitoring backend provided" +msgstr "Monitoring-Prozess herunterefahren" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:321 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:140 msgid "Unreachable" msgstr "Nicht erreichbar" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:199 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:307 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:138 msgid "Up" msgstr "Up" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/AcknowledgeForm.php:65 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:72 msgid "Use Expire Time" msgstr "Verfallszeitpunkt nutzen" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:36 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:52 +msgid "User" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:30 msgid "User Comment" msgstr "Benutzerkommentar" -#: /usr/local/src/bugfix.master/modules/monitoring/application/forms/Command/SubmitPassiveCheckResultForm.php:52 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:54 +msgid "" +"User to log in as on the remote Icinga instance. Please note that key-based " +"SSH login must be possible for this user" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:108 +#, fuzzy +msgid "Username" +msgstr "Benutzerkommentar" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 +msgid "Value" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:624 +msgid "Value for interval not valid" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:64 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:64 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:181 msgid "WARNING" msgstr "WARNUNG" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/ChartController.php:154 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:61 +#, fuzzy +msgctxt "icinga.state" +msgid "WARNING" +msgstr "WARNUNG" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:257 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:119 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 msgid "Warning" msgstr "Warnung" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:54 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/WelcomePage.php:21 +msgid "Welcome to the configuration of the monitoring module for Icinga Web 2!" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checksource.phtml:17 +msgid "Yes" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:166 +msgid "Zend database adapter for MySQL" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:186 +msgid "Zend database adapter for PostgreSQL" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:51 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:39 #, php-format -msgid "Will be re-enabled in %s" -msgstr "Wird in %s wieder aktiviert" +msgctxt "time" +msgid "at %s" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/controllers/CommandController.php:888 -msgid "Your new comment has been submitted" -msgstr "Dein neuer Kommentar wurde gesendet" - -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/multi/components/objectlist.phtml:60 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:59 #, php-format -msgid "and %d more" -msgstr "und %d weitere" +msgctxt "timeline.link.title.datetime.twice" +msgid "between %s and %s" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/statehistorysummary.phtml:18 -msgid "critical events on " -msgstr "kritische Ereignisse auf" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:107 +msgid "changed" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:182 +msgid "down" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:65 +#, fuzzy +msgid "hard state" +msgstr "Harte Status-Änderungen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:47 #, php-format -msgid "has been running with PID %d " -msgstr "läuft mit PID %d" +msgctxt "timeline.link.title.month.and.year" +msgid "in %s" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/process/info.phtml:18 -msgid "is not running" -msgstr "läuft nicht" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:53 +#, php-format +msgctxt "timeline.link.title.year" +msgid "in %s" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:8 -msgid "ok" -msgstr "ok" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:52 +#, php-format +msgctxt "timespan" +msgid "in %s" +msgstr "" -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/comments.phtml:66 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/downtimes.phtml:47 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/list/eventhistory.phtml:97 -#: /usr/local/src/bugfix.master/modules/monitoring/application/views/scripts/show/history.phtml:114 -msgid "on" -msgstr "auf" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:37 +msgid "in the last hour" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:40 +#, php-format +msgctxt "timeline.link.title.week.and.year" +msgid "in week %s of %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:35 +#, fuzzy +msgid "notifications per hour" +msgstr "Host-Benachrichtigungszeitraum" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:50 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:38 +#, php-format +msgctxt "datetime" +msgid "on %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:34 +#, php-format +msgctxt "timeline.link.title.time" +msgid "on %s" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:77 +msgid "overall" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/selectioninfo.phtml:5 +msgctxt "multiselection" +msgid "row(s) selected" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:78 +#, fuzzy +msgid "scheduled" +msgstr "Neu planen" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:63 +#, fuzzy +msgid "soft state" +msgstr "Host-Status" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:50 +#, fuzzy +msgid "the monitoring module" +msgstr "Monitoring-Prozess neu starten" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:180 +msgid "unchanged" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:184 +msgid "up" +msgstr "" + +#~ msgid "" +#~ " If you work with other administrators you may find it useful to share " +#~ "information about a host or service that is having problems if more than " +#~ "one of you may be working on it. Make sure you enter a brief description " +#~ "of what you are doing." +#~ msgstr "" +#~ "Wenn du mit anderen Administratoren zusammenarbeitest wirst du es als " +#~ "nützlich empfinden, Informationen über Probleme auf Hosts oder Services " +#~ "an denen du arbeitest zu teilen. Stell sicher eine kurze Beschreibung von " +#~ "dem was du gerade machst zu hinterlassen." + +#~ msgid "%d are not checked at all" +#~ msgstr "%d werden nicht überwacht" + +#~ msgid "%d are passively checked" +#~ msgstr "%d werden passiv überwacht" + +#~ msgid "Accept passive host checks" +#~ msgstr "Akzeptiere passive Host Checks" + +#~ msgid "Accept passive service checks" +#~ msgstr "Akzeptiere passive Service-Checks" + +#~ msgid "Acknowledge all problems on the selected hosts or services" +#~ msgstr "Bestätige alle Probleme auf den ausgewählten Hosts oder Services" + +#~ msgid "Acknowledgement has been sent" +#~ msgstr "Bestätigung wurde gesendet" + +#~ msgid "Acknowledgement removal has been requested" +#~ msgstr "Löschung der Bestätigung wurde angefragt" + +#~ msgid "All Events" +#~ msgstr "Alle Ereignisse" + +#~ msgid "Author (Your Name)" +#~ msgstr "Autor (Dein Name)" + +#~ msgid "Child Objects" +#~ msgstr "Kind-Objekte" + +#~ msgid "Command has been sent, active checks will be disabled" +#~ msgstr "Befehl wurde gesendet, aktive Checks werden deaktiviert" + +#~ msgid "Command has been sent, active checks will be enabled" +#~ msgstr "Befehl wurde gesendet, aktive Checks werden aktiviert" + +#~ msgid "Command has been sent, check will be rescheduled" +#~ msgstr "Befehl wurde gesendet, Check wird neu geplant" + +#~ msgid "Command has been sent, checks will be rescheduled" +#~ msgstr "Befehl wurde gesendet, Checks werden neu geplant" + +#~ msgid "Command has been sent, event handlers will be disabled" +#~ msgstr "Befehl wurde gesendet, Eventhandler werden deaktiviert" + +#~ msgid "Command has been sent, event handlers will be enabled" +#~ msgstr "Befehl wurde gesendet, Eventhandler werden aktiviert" + +#~ msgid "Command has been sent, flap detection will be enabled" +#~ msgstr "Befehl wurde gesendet, Flap-Erkennung wird aktiviert" + +#~ msgid "Command has been sent, monitoring process will restart now" +#~ msgstr "Befehl wurde gesendet, der Monitoring-Prozess wird jetzt neustarten" + +#~ msgid "Command has been sent, notifications will be enabled" +#~ msgstr "Befehl wurde gesendet, Benachrichtigungen werden aktiviert" + +#~ msgid "Command has been sent, obsessing will be disabled" +#~ msgstr "Befehl wurde gesendet, Verfolgung wird deaktiviert" + +#~ msgid "Command has been sent, obsessing will be enabled" +#~ msgstr "Befehl wurde gesendet, Verfolgung wird aktiviert" + +#~ msgid "Command has been sent, passive check results will be accepted" +#~ msgstr "Befehl wurde gesendet, passive Checks werden akzeptiert werden" + +#~ msgid "Command has been sent, passive check results will be refused" +#~ msgstr "Befehl wurde gesendet, passive Checks werden abgewiesen werden" + +#~ msgid "Command has been sent, performance data processing will be disabled" +#~ msgstr "" +#~ "Befehl wurde gesendet, Performancedatenverarbeitung wird deaktiviert " +#~ "werden" + +#~ msgid "Command has been sent, performance data processing will be enabled" +#~ msgstr "" +#~ "Befehl wurde gesendet, Performancedatenverarbeitung wird aktiviert werden" + +#~ msgid "Command has been sent, process will shut down" +#~ msgstr "Befehl wurde gesendet, der Monitoringprozess wird herunterfahren" + +#~ msgid "Comment removal has been requested" +#~ msgstr "Löschung des Kommentars wurde angefordert" + +#~ msgid "Critical Events" +#~ msgstr "Kritische Ereignisse" + +#~ msgid "Custom notification has been sent" +#~ msgstr "Benutzerdefinierte Bestätigung wurde gesendet" + +#~ msgid "" +#~ "Custom notifications normally follow the regular notification logic in " +#~ "Icinga. Selecting this option will force the notification to be sent out, " +#~ "regardless of time restrictions, whether or not notifications are " +#~ "enabled, etc." +#~ msgstr "" +#~ "Benutzeredefinierte Benachrichtigungen verhalten sich gemäß der " +#~ "gewöhnlichen Benachrichtigungslogik in Icinga. Wenn du diese Option " +#~ "wählst wird eine Benachrichtigung erzwungen. Einschränkungen durch " +#~ "Zeitspannen und durch eventuell deaktivierte Benachrichtigungen werden " +#~ "dabei ignoriert." + +#~ msgid "Delay Notification" +#~ msgstr "Benachrichtigung verzögern" + +#~ msgid "Delay Notifications" +#~ msgstr "Benachrichtigungen verzögern" + +#~ msgid "Delete a single downtime with the id shown above" +#~ msgstr "Lösche eine einzelne Downtime mit der oben gezeigten ID." + +#~ msgid "Disable Active Checks" +#~ msgstr "Aktive Checks deaktivieren" + +#~ msgid "Disable Event Handler" +#~ msgstr "Event-Handler deaktivieren" + +#~ msgid "Disable Flapping Detection" +#~ msgstr "Flap-Erkennung deaktivieren" + +#~ msgid "Disable Performance Data" +#~ msgstr "Performancedaten deaktivieren" + +#~ msgid "Disable active checks for this host and its services." +#~ msgstr "" +#~ "Deaktiviere aktive Service-Checks für diesen Host und seine Service-" +#~ "Checks." + +#~ msgid "Disable active checks for this object." +#~ msgstr "Deaktiviere aktive Service-Checks für dieses Objekt." + +#~ msgid "Disable active checks on a program-wide basis." +#~ msgstr "Deaktiviere applikationsweit sämtliche aktiven Service-Checks." + +#~ msgid "Disable event handler for the whole system." +#~ msgstr "Dektiviere Event-Handler für das ganze System." + +#~ msgid "Disable event handler for this object." +#~ msgstr "Dektiviere Event-Handler für dieses Objekt." + +#~ msgid "Disable flapping detection for this object." +#~ msgstr "Deaktiviere die Flap-Erkennnung für dieses Objekt." + +#~ msgid "Disable flapping detection on a program-wide basis." +#~ msgstr "Deaktiviere die Flap-Erkennnung applikationsweit." + +#~ msgid "Disable notifications on a program-wide basis." +#~ msgstr "Deaktiviere die Flap-Erkennnung applikationsweit." + +#~ msgid "Disable obsessing on a program-wide basis." +#~ msgstr "Deaktiviere die Verfolgung applikationsweit." + +#~ msgid "Disable passive checks on a program-wide basis." +#~ msgstr "Deaktiviere Passive Checks applikationsweit." + +#~ msgid "Disable processing of performance data on a program-wide basis." +#~ msgstr "" +#~ "Deaktiviere die Verarbeitung von Performance-Daten applikationsweit." + +#~ msgid "Downtime removal has been requested" +#~ msgstr "Entfernung dieser Downtime wurde angefordert" + +#~ msgid "Downtime removal requested" +#~ msgstr "Entfernung dieser Downtime wurde angefordert" + +#~ msgid "Downtime scheduling requested" +#~ msgstr "Die Planung dieser Downtime wurde angefordert" + +#~ msgid "Enable Active Checks" +#~ msgstr "Aktive Checks aktivieren" + +#~ msgid "Enable Event Handler" +#~ msgstr "Eventhandler aktivieren" + +#~ msgid "Enable Flapping Detection" +#~ msgstr "Flap-Erkennung aktivieren" + +#~ msgid "Enable Notifications" +#~ msgstr "Benachrichtigungen aktivieren" + +#~ msgid "Enable Performance Data" +#~ msgstr "Performancedaten aktivieren" + +#~ msgid "Enable active checks for this host and its services." +#~ msgstr "Aktive Checks für diesen Host und seine Services aktivieren." + +#~ msgid "Enable active checks for this object." +#~ msgstr "Aktive Checks für dieses Objekt aktivieren." + +#~ msgid "Enable active checks on a program-wide basis." +#~ msgstr "Aktive Checks anwendungsweit aktivieren." + +#~ msgid "Enable event handler for this object." +#~ msgstr "Event-Handler für dieses Objekt aktivieren." + +#~ msgid "Enable event handlers on the whole system." +#~ msgstr "Event-Handler für das gesamte System aktivieren." + +#~ msgid "Enable flapping detection for this object." +#~ msgstr "Flap-Erkennung für dieses Objekt aktivieren." + +#~ msgid "Enable flapping detection on a program-wide basis." +#~ msgstr "Flap-Erkennung anwendungsweit aktivieren." + +#~ msgid "Enable notifications on a program-wide basis." +#~ msgstr "Benachrichtigungen anwendungsweit aktivieren." + +#~ msgid "Enable obsessing on a program-wide basis." +#~ msgstr "Verfolgung anwendungsweit aktivieren." + +#~ msgid "Enable passive checks on a program-wide basis." +#~ msgstr "Passive Checks anwendungsweit aktivieren." + +#~ msgid "Enable processing of performance data on a program-wide basis." +#~ msgstr "Performancedaten-Verarbeitung anwendungsweit aktivieren." + +#~ msgid "Event handlers" +#~ msgstr "Eventhandler" + +#~ msgid "Execute active host checks" +#~ msgstr "Aktiven Host Check ausführen" + +#~ msgid "Execute active service checks" +#~ msgstr "Aktive Service-Checks ausführen" + +#~ msgid "Fill in the check output string which should be send to Icinga." +#~ msgstr "" +#~ "Ausgabetext des Checkergebnisses welches an Icinga gesendet werden soll " +#~ "hier eintragen." + +#~ msgid "Fill in the performance data string which should be send to Icinga." +#~ msgstr "" +#~ "Performancedaten des Checkergebnisses welches an Icinga gesendet werden " +#~ "soll hier eintragen." + +#~ msgid "Flags (host)" +#~ msgstr "Flags (Host)" + +#~ msgid "Flags (service)" +#~ msgstr "Flags (Service)" + +#~ msgid "Flap detection" +#~ msgstr "Flap-Erkennung" + +#~ msgid "Handled services with state %s" +#~ msgstr "Bestätigte Services mit Status %s" + +#~ msgid "Last check command" +#~ msgstr "Letztes Check-Kommando" + +#~ msgid "No downtimes matching the filter" +#~ msgstr "Zu diesem Filter wurden keine Downtimes gefunden" + +#~ msgid "No history entry matching the filter" +#~ msgstr "Zu diesem Filter wurden keine historischen Ereignisse gefunden" + +#~ msgid "Not set" +#~ msgstr "Nicht gesetzt" + +#~ msgid "Notification Delay (Minutes From Now)" +#~ msgstr "Benachrichtigungsverzögerung (Minuten ab jetzt)" + +#~ msgid "Notification delay has been requested" +#~ msgstr "Benachrichtigungsverzögerung wurde angefragt" + +#~ msgid "Notifications for this host and its services will be disabled." +#~ msgstr "" +#~ "Benachrichtigungen für diesen Host und seine Services werden deaktiviert." + +#~ msgid "Notifications for this host and its services will be enabled." +#~ msgstr "" +#~ "Benachrichtigungen für diesen Host und seine Services werden aktiviert." + +#~ msgid "Notifications for this object will be disabled." +#~ msgstr "Benachrichtigungen für dieses Objekt werden deaktiviert." + +#~ msgid "Notifications for this object will be enabled." +#~ msgstr "Benachrichtigungen für dieses Objekt werden aktiviert." + +#~ msgid "Passive check result has been submitted" +#~ msgstr "Passives Check-Ergebnis wurde gesendet" + +#~ msgid "Passive checks for this object will be accepted." +#~ msgstr "Passives Check-Ergebnis für dieses Objekt werden akzeptiert." + +#~ msgid "Passive checks for this object will be omitted." +#~ msgstr "Passives Check-Ergebnis für dieses Objekt werden ignoriert." + +#~ msgid "Process performance data" +#~ msgstr "Performancedaten verarbeiten" + +#~ msgid "Remove Acknowledgement" +#~ msgstr "Bestätigung entfernen" + +#~ msgid "Remove Comments" +#~ msgstr "Kommentare entfernen" + +#~ msgid "Remove Downtime(s)" +#~ msgstr "Downtime(s) entfernen" + +#~ msgid "Remove Problem Acknowledgement" +#~ msgstr "Problembestätigung entfernen" + +#~ msgid "Remove downtime(s) from this host and its services." +#~ msgstr "Downtime(s) für diesen Host und seine Services entfernen." + +#~ msgid "Remove problem acknowledgement for this object." +#~ msgstr "Problembestätigungen für diesen Host und seine Services entfernen." + +#~ msgid "Reset Attributes" +#~ msgstr "Attribute zurücksetzen" + +#~ msgid "Reset modified attributes to its default." +#~ msgstr "Veränderte Attribute zurücksetzen." + +#~ msgid "Restart" +#~ msgstr "Neustarten" + +#~ msgid "Restart the monitoring process." +#~ msgstr "Monitoring-Prozess neu starten." + +#~ msgid "" +#~ "Selecting this option causes the notification to be sent out to all " +#~ "normal (non-escalated) and escalated contacts. These options allow you " +#~ "to override the normal notification logic if you need to get an important " +#~ "message out." +#~ msgstr "" +#~ "Das Aktivieren diese Option verursacht, dass die Benachrichtigung an alle " +#~ "normalen (nicht-eskalierten) sowie eskalierten Kontakte gesendet wird. " +#~ "Die erlaubt es, die normale Benachrichtigungslogik zu übergehen, wenn " +#~ "eine dringende Nachricht versendet werden muss." + +#~ msgid "Servicematrix" +#~ msgstr "Service-Matrix" + +#~ msgid "Services with state %s" +#~ msgstr "Service im Zustand %s" + +#~ msgid "Set the state which should be send to Icinga for this objects." +#~ msgstr "" +#~ "Setze den Status welcher für dieses Objekt an Icinga gesendet werden soll." + +#~ msgid "Shutdown the monitoring process" +#~ msgstr "Monitoring-Prozess herunterfahren" + +#~ msgid "Start Accepting Passive Checks" +#~ msgstr "Passive Checks akzepzieren" + +#~ msgid "Start obsessing" +#~ msgstr "Verfolgung beginnen" + +#~ msgid "Start obsessing over this object." +#~ msgstr "Verfolgung dieses Objekts beginnen" + +#~ msgid "" +#~ "Stop monitoring instance. You have to start it again from command line." +#~ msgstr "" +#~ "Überwachungsinstanz stoppen. Muss anschließen von der Kommandozeile aus " +#~ "neu gestartet werden." + +#~ msgid "Stop obsessing" +#~ msgstr "Verfolgung deaktivieren" + +#~ msgid "Stop obsessing over this object." +#~ msgstr "Verfolgung für dieses Objekt deaktivieren" + +#~ msgid "Temporarily disable" +#~ msgstr "Temporär deaktivieren" + +#~ msgid "" +#~ "The notification delay will be disregarded if the host/service changes " +#~ "state before the next notification is scheduled to be sent out." +#~ msgstr "" +#~ "Die Benachrichtigungsverzögerung wird ignoriert wenn der Host/Service vor " +#~ "der nächsten zu versendenden Benachrichtigung seinen Status ändert." + +#~ msgid "" +#~ "This command is used to send a custom notification about hosts or " +#~ "services. Useful in emergencies when you need to notify admins of an " +#~ "issue regarding a monitored system or service." +#~ msgstr "" +#~ "Dieses Kommando ermöglicht es, personalisierte Benachrichtigungen für " +#~ "Hosts oder Services zu versenden. Nützlich ist das vor allem im Notfall, " +#~ "wenn man andere Administratoren über Probleme zu einem bestimmten System " +#~ "oder Dienst informieren möchte." + +#~ msgid "" +#~ "This command is used to submit a passive check result for particular " +#~ "hosts/services. It is particularly useful for resetting security-related " +#~ "objects to OK states once they have been dealt with." +#~ msgstr "" +#~ "Dieses Kommando erlaubt es, ein passives Check-Ergebnis für einen " +#~ "bestimmten Host oder Service einzuliefern. Das ist for allem dann " +#~ "nützlich, wenn man sicherheitsrelevante Objekte zurück auf einen OK-" +#~ "Status setzen möchte, sobald man sich darum gekümmert hat." + +#~ msgid "Triggered by" +#~ msgstr "Ausgelöst von" + +#~ msgid "Unhandled services with state %s" +#~ msgstr "Unbestätigte Services mit Status %s" + +#~ msgid "Will be re-enabled in %s" +#~ msgstr "Wird in %s wieder aktiviert" + +#~ msgid "Your new comment has been submitted" +#~ msgstr "Dein neuer Kommentar wurde gesendet" + +#~ msgid "critical events on " +#~ msgstr "kritische Ereignisse auf" + +#~ msgid "ok" +#~ msgstr "ok" + +#~ msgid "on" +#~ msgstr "auf" #~ msgid "No entries found" #~ msgstr "Keine Einträge gefunden" -#~ msgid "No host found" -#~ msgstr "Kein Host gefunden" - #~ msgid "Since" #~ msgstr "Seit" diff --git a/modules/monitoring/application/locale/it_IT/LC_MESSAGES/monitoring.mo b/modules/monitoring/application/locale/it_IT/LC_MESSAGES/monitoring.mo index a1c7df9e7..996008522 100644 Binary files a/modules/monitoring/application/locale/it_IT/LC_MESSAGES/monitoring.mo and b/modules/monitoring/application/locale/it_IT/LC_MESSAGES/monitoring.mo differ diff --git a/modules/monitoring/application/locale/it_IT/LC_MESSAGES/monitoring.po b/modules/monitoring/application/locale/it_IT/LC_MESSAGES/monitoring.po index ec4fce37a..bfff260f1 100644 --- a/modules/monitoring/application/locale/it_IT/LC_MESSAGES/monitoring.po +++ b/modules/monitoring/application/locale/it_IT/LC_MESSAGES/monitoring.po @@ -2,741 +2,748 @@ # Copyright (C) 2015 Icinga Development Team # This file is distributed under the same license as Monitoring Module. # FIRST AUTHOR , YEAR. -# -#, fuzzy +# msgid "" msgstr "" "Project-Id-Version: Monitoring Module (2.0.0~alpha4)\n" "Report-Msgid-Bugs-To: dev@icinga.org\n" -"POT-Creation-Date: 2015-02-10 18:04+0100\n" -"PO-Revision-Date: 2015-02-07 18:41+0100\n" -"Last-Translator: Davide Demuru \n" +"POT-Creation-Date: 2015-03-13 17:04+0100\n" +"PO-Revision-Date: 2015-03-13 17:05+0100\n" +"Last-Translator: Thomas Gelf \n" "Language: it_IT\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.5.4\n" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:376 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:382 msgid " Down Hosts (Handled)" msgstr "Host Down (Gestiti)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:377 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:383 msgid " Down Hosts (Unhandled)" msgstr "Host Down (Non Gestiti)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:344 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:398 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:350 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:404 msgid " Down Services (Handled)" msgstr "Servizi Down (Gestiti)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:345 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:399 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:351 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:405 msgid " Down Services (Unhandled)" msgstr "Servizi Down (Non Gestiti)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:380 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:386 msgid " Pending Hosts" -msgstr "Host in Attesa" +msgstr "Host in Pending" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:348 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:402 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:354 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:408 msgid " Pending Services" -msgstr "Servizi in Attesa" +msgstr "Servizi in Pending" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:378 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:384 msgid " Unreachable Hosts (Handled)" -msgstr "Host Irraggiungibili (Gestiti)" +msgstr "Host Unreachable (Gestiti)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:379 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:385 msgid " Unreachable Hosts (Unhandled)" -msgstr "Host Irraggiungibili (Non Gestiti)" +msgstr "Host Unreachable (Non Gestiti)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:346 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:400 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:352 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:406 msgid " Unreachable Services (Handled)" -msgstr "Servizi Irraggiungibili (Gestiti)" +msgstr "Servizi Unreachable (Gestiti)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:347 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:401 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:353 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:407 msgid " Unreachable Services (Unhandled)" -msgstr "Servizi Irraggiungibili (Non Gestiti) " +msgstr "Servizi Unreachable (Non Gestiti) " -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:375 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:381 msgid " Up Hosts" msgstr "Host Up" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:395 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:401 msgid " Up Services" msgstr "Servizi Up" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:342 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:396 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:348 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:402 msgid " Warning Services (Handled)" msgstr "Servizi in Warning (Gestiti)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:343 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:397 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:349 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:403 msgid " Warning Services (Unhandled)" msgstr "Servizi in Warning (Non Gestiti)" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:20 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:52 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:73 +#, php-format msgid "%d Active" msgid_plural "%d Active" -msgstr[0] "Attivo" -msgstr[1] "Attivi" +msgstr[0] "%d Attivo" +msgstr[1] "%d Attivi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:8 -#, fuzzy, php-format -msgctxt "icinga.state" -msgid "%d CRITICAL" -msgid_plural "%d CRITICAL" -msgstr[0] "CRITICAL" -msgstr[1] "CRITICAL" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:40 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:72 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:109 +#, php-format msgid "%d Disabled" msgid_plural "%d Disabled" -msgstr[0] "Disabilitato" -msgstr[1] "Disabilitati" +msgstr[0] "%d Disabilitato" +msgstr[1] "%d Disabilitati" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:10 -#, fuzzy, php-format -msgid "%d Host DOWN" -msgid_plural "%d Hosts DOWN" -msgstr[0] "%d Host Down" -msgstr[1] "%d Host Down" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:20 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:87 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:138 -#, fuzzy, php-format -msgid "%d Host Disabled" -msgid_plural "%d Hosts Disabled" -msgstr[0] "%d host disabilitato" -msgstr[1] "%d host disabilitati" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:36 -#, fuzzy, php-format -msgid "%d Host Flapping" -msgid_plural "%d Hosts Flapping" -msgstr[0] "%d host instabile" -msgstr[1] "%d host instabili" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:22 -#, fuzzy, php-format -msgid "%d Host PENDING" -msgid_plural "%d Hosts PENDING" -msgstr[0] "%d Host in Attesa" -msgstr[1] "%d Host in Attesa" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:17 -#, fuzzy, php-format -msgid "%d Host UNREACHABLE" -msgid_plural "%d Hosts UNREACHABLE" -msgstr[0] "%d Host Irraggiungibile" -msgstr[1] "%d Host Irraggiungibili" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:15 -#, fuzzy, php-format -msgid "%d Host UP" -msgid_plural "%d Hosts UP" -msgstr[0] "%d Host Up" -msgstr[1] "%d Host Up" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:252 -#, fuzzy, php-format -msgctxt "icinga.state" -msgid "%d PENDING" -msgid_plural "%d PENDING" -msgstr[0] "ATTESA" -msgstr[1] "ATTESA" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:30 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:62 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:35 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:91 +#, php-format msgid "%d Passive" msgid_plural "%d Passive" -msgstr[0] "Passivo" -msgstr[1] "Passivi" +msgstr[0] "%d Passivo" +msgstr[1] "%d Passivi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:48 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:107 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:158 -#, fuzzy, php-format -msgid "%d Service Disabled" -msgid_plural "%d Services Disabled" -msgstr[0] "%d servizio disabilitato" -msgstr[1] "%d servizi disabilitati" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:64 -#, fuzzy, php-format -msgid "%d Service Flapping" -msgid_plural "%d Services Flapping" -msgstr[0] "%d servizio instabile" -msgstr[1] "%d servizi instabili" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:148 -#, fuzzy, php-format -msgctxt "icinga.state" -msgid "%d UNKNOWN" -msgid_plural "%d UNKNOWN" -msgstr[0] "UNKNOWN" -msgstr[1] "UNKNOWN" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:57 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:127 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:197 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:232 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:267 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:43 #, php-format -msgid "%d are not checked at all" -msgstr "%d non sono stati controllati" +msgid "%d hosts down on %s" +msgstr "%d host down in %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:32 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:102 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:172 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:21 #, php-format -msgid "%d are passively checked" -msgstr "%d sono controllati passivamente" +msgid "%d hosts ok on %s" +msgstr "%d host ok in %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:10 -#, fuzzy, php-format -msgid "%d configured service:" -msgid_plural "%d configured services:" -msgstr[0] "%s servizio configurato:" -msgstr[1] "%s servizi configurati:" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:26 #, php-format -msgid "%d critical on %s" -msgstr "%d critici di %s" +msgid "%d hosts unreachable on %s" +msgstr "%d host unreachable in %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:43 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:64 #, php-format -msgid "%d down on %s" -msgstr "%d down di %s" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:62 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:132 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:202 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:237 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:272 -#, php-format -msgid "%d is not checked at all" -msgstr "%d non sono controllati" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:37 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:107 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:177 -#, php-format -msgid "%d is passively checked" -msgstr "%d è controllato passivamente" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:64 -#, fuzzy, php-format msgid "%d more ..." -msgstr "e %d più" +msgstr "%d più ..." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:21 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:31 #, php-format -msgid "%d ok on %s" -msgstr "%d ok di %s" +msgid "%d services critical on %s" +msgstr "%d servizi critical in %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:103 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:53 #, php-format -msgid "%d unhandled service" -msgid_plural "%d unhandled services" -msgstr[0] "%d servizio non gestito" -msgstr[1] "%d servizi non gestiti" +msgid "%d services ok on %s" +msgstr "%d servizi ok in %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:48 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:48 #, php-format -msgid "%d unknown on %s" -msgstr "%d unknown di %s" +msgid "%d services unknown on %s" +msgstr "%d servizi unknown in %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:26 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:37 #, php-format -msgid "%d unreachable on %s" -msgstr "%d irraggiungibili di %s" +msgid "%d services warning on %s" +msgstr "%d servizi warning in %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:37 -#, php-format -msgid "%d warning on %s" -msgstr "%d warning di %s" - -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Plugin/Perfdata.php:437 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Plugin/Perfdata.php:437 #, php-format msgid "%s %s (%s%%)" -msgstr "" +msgstr "%s %s (%s%%)" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:40 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:28 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:32 +#, php-format +msgid "%s ago" +msgstr "%s fa" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:40 #, php-format msgctxt "timespan" msgid "%s ago" msgstr "%s fa" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:29 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:33 -#, fuzzy, php-format -msgid "%s ago" -msgstr "%s fa" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:57 #, php-format msgid "%s has been up and running with PID %d since %s" -msgstr "%s è in esecuzione con il PID %d da %s" +msgstr "%s è attivo e funzionante con il PID %d da %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:10 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:8 #, php-format msgid "%s hosts:" msgstr "%s host:" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/not-running.phtml:5 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/not-running.phtml:5 #, php-format msgid "%s is currently not up and running" -msgstr "%s non è in esecuzione." +msgstr "%s non è in esecuzione" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:65 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:64 #, php-format msgid "%s is not running" -msgstr "%s non è in esecuzione." +msgstr "%s non è in esecuzione" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:22 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:43 #, php-format msgid "%s notications have been sent for this issue" msgstr "%s notifiche inviate per questo problema" -#: /usr/share/icingaweb2/modules/monitoring/application/views/helpers/Link.php:52 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:137 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Link.php:54 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:142 +#, php-format msgctxt "Service running on host" msgid "%s on %s" -msgstr "%s il %s" +msgstr "%s di %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:9 #, php-format msgid "%s services:" msgstr "%s servizi:" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:112 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:84 #, php-format msgid "%u Acknowledged Host Problem" msgid_plural "%u Acknowledged Host Problems" -msgstr[0] "%u Problema dell'Host Confermato" -msgstr[1] "%u Problemi dell'Host Confermati" +msgstr[0] "%u Conferma al Problema dell'Host" +msgstr[1] "%u Conferme ai Problemi dell'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:100 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:84 #, php-format msgid "%u Acknowledged Service Problem" msgid_plural "%u Acknowledged Service Problems" -msgstr[0] "%u Problema del Servizio Confermato" -msgstr[1] "%u Problemi del Servizio Confermati" +msgstr[0] "%u Conferma al Problema del Servizio" +msgstr[1] "%u Conferma ai Problemi del Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:11 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:17 #, fuzzy, php-format +msgid "%u Active" +msgid_plural "%u Active" +msgstr[0] "%d Attivo" +msgstr[1] "%d Attivi" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:8 +#, php-format msgid "%u Host" msgid_plural "%u Hosts" msgstr[0] "%u Host" msgstr[1] "%u Host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:10 +#, fuzzy, php-format +msgid "%u Host DOWN" +msgid_plural "%u Hosts DOWN" +msgstr[0] "%d Host DOWN" +msgstr[1] "%d Host DOWN" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:18 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:139 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:218 +#, fuzzy, php-format +msgid "%u Host Disabled" +msgid_plural "%u Hosts Disabled" +msgstr[0] "%d Host Disabilitato" +msgstr[1] "%d Host Disabilitati" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:48 +#, fuzzy, php-format +msgid "%u Host Flapping" +msgid_plural "%u Hosts Flapping" +msgstr[0] "%d Host Instabile" +msgstr[1] "%d Host Instabili" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:33 +#, fuzzy, php-format +msgid "%u Host PENDING" +msgid_plural "%u Hosts PENDING" +msgstr[0] "%d Hosts PENDING" +msgstr[1] "%d Host PENDING" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:29 +#, fuzzy, php-format +msgid "%u Host UNREACHABLE" +msgid_plural "%u Hosts UNREACHABLE" +msgstr[0] "%d Host UNREACHABLE" +msgstr[1] "%d Host UNREACHABLE" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:15 +#, fuzzy, php-format +msgid "%u Host UP" +msgid_plural "%u Hosts UP" +msgstr[0] "%d Host UP" +msgstr[1] "%d Host UP" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:8 +#, fuzzy, php-format +msgid "%u Service" +msgid_plural "%u Services" +msgstr[0] "Servizio" +msgstr[1] "Servizio" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:73 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:173 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:252 +#, fuzzy, php-format +msgid "%u Service Disabled" +msgid_plural "%u Services Disabled" +msgstr[0] "%d Servizio Disabilitato" +msgstr[1] "%d Servizi Disabilitati" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:103 +#, fuzzy, php-format +msgid "%u Service Flapping" +msgid_plural "%u Services Flapping" +msgstr[0] "%d Servizio Instabile" +msgstr[1] "%d Servizi Instabili" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:46 #, php-format msgid "%u Unhandled Host Problem" msgid_plural "%u Unhandled Host Problems" -msgstr[0] "%u Problema dell'Host Non Gestito" -msgstr[1] "%u Problemi dell'Host Non Gestiti" +msgstr[0] "%u Problema all'Host Non Gestito" +msgstr[1] "%u Problemi all'Host Non Gestiti" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:46 #, php-format msgid "%u Unhandled Service Problem" msgid_plural "%u Unhandled Service Problems" -msgstr[0] "%u Problema del Servizio Non Gestito" -msgstr[1] "%u Problemi del Servizio Non Gestiti" +msgstr[0] "%u Problema al Servizio Non Gestito" +msgstr[1] "%u Problemi al Servizio Non Gestiti" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:73 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:13 +#, fuzzy, php-format +msgid "%u configured service:" +msgid_plural "%u configured services:" +msgstr[0] "%d servizio configurato:" +msgstr[1] "%d servizi configurati:" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:80 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:179 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:278 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:325 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:372 +#, fuzzy, php-format +msgid "%u is not checked at all" +msgid_plural "%u are not checked at all" +msgstr[0] "%d è stato controllato" +msgstr[1] "%d è stato controllato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:152 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:251 +#, fuzzy, php-format +msgid "%u is passively checked" +msgid_plural "%u are passively checked" +msgstr[0] "%d è controllato passivamente" +msgstr[1] "%d è controllato passivamente" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:110 +#, fuzzy, php-format +msgid "%u unhandled service" +msgid_plural "%u unhandled services" +msgstr[0] "%d servizio non gestito" +msgstr[1] "%d servizi non gestiti" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:73 msgid "1 Year" msgstr "1 Anno" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:74 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:74 msgid "2 Years" msgstr "2 Anni" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:70 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:70 msgid "3 Months" msgstr "3 Mesi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:99 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:97 msgid "4 Hours" -msgstr "4 ore" +msgstr "4 Ore" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:71 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:71 msgid "4 Months" msgstr "4 Mesi" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:72 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:72 msgid "8 Months" msgstr "8 Mesi" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Plugin/Perfdata.php:437 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Plugin/Perfdata.php:437 #, php-format msgid "%s %s (%s%%)" -msgstr "" +msgstr "%s %s (%s%%)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:293 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:453 +msgid "{title}: {value}m max. reaction time" +msgstr "{title}: {value} max. tempo di reazione" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:443 +msgid "{title}: {value}m min. reaction time" +msgstr "{title}: {value} min. tempo di reazione" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:296 msgid "{title}:
{value} of {sum} hosts are {label}" -msgstr "{title}:
{value} di{sum} host sono {label}" +msgstr "{title}:
{value} di {sum} host sono {label}" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:244 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:247 msgid "{title}:
{value} of {sum} services are {label}" -msgstr "{title}:
{value} di{sum} servizi sono {label}" +msgstr "{title}:
{value} di {sum} servizi sono {label}" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:17 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:38 #, php-format msgid "A notication has been sent for this issue %s ago" msgstr "Una notifica è stata inviata per questo problema %s fa" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:73 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:78 msgid "Ack removed" msgstr "Conferma rimossa" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:68 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:73 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:39 msgid "Acknowledge" msgstr "Conferma" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:88 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:68 +#, php-format msgid "Acknowledge %u unhandled host problem" msgid_plural "Acknowledge %u unhandled host problems" -msgstr[0] "Conferma i problemi non gestiti degli Host" -msgstr[1] "Conferma i problemi non gestiti degli Host" +msgstr[0] "Conferma %u Problema dell'Host Non Gestito" +msgstr[1] "Conferma %u Problemi dell'Host Non Gestiti" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:76 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:68 +#, php-format msgid "Acknowledge %u unhandled service problem" msgid_plural "Acknowledge %u unhandled service problems" -msgstr[0] "Conferma i problemi non gestiti degli Host" -msgstr[1] "Conferma i problemi non gestiti degli Host" +msgstr[0] "Conferma %u Problema del Servizio Non Gestito" +msgstr[1] "Conferma %u Problemi del Servizio Non Gestiti" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostController.php:69 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:71 msgid "Acknowledge Host Problem" msgstr "Conferma il Problema dell'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostsController.php:174 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:184 msgid "Acknowledge Host Problems" msgstr "Conferma i Problemi dell'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:46 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:48 msgid "Acknowledge Service Problem" msgstr "Conferma il Problema del Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:223 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:233 msgid "Acknowledge Service Problems" msgstr "Conferma i Problemi del Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:23 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:34 msgid "Acknowledge problem" msgid_plural "Acknowledge problems" -msgstr[0] "Conferma il problema" -msgstr[1] "Conferm i problemi" +msgstr[0] "Conferma Problema" +msgstr[1] "Conferma Problemi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:97 -msgid "Acknowledge unhandled host problem" -msgid_plural "Acknowledge unhandled host problems" -msgstr[0] "Conferma i problemi non gestiti degli Host" -msgstr[1] "Conferma i problemi non gestiti degli Host" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:46 +msgid "" +"Acknowledge this problem, suppress all future notifications for it and tag " +"it as being handled" +msgstr "" +"Conferma questo problema, disabilita tutte le notifiche future e marca come " +"gestito" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:85 -msgid "Acknowledge unhandled service problem" -msgid_plural "Acknowledge unhandled service problems" -msgstr[0] "Conferma i problemi non gestiti degli Host" -msgstr[1] "Conferma i problemi non gestiti degli Host" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:16 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:86 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:156 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:12 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:9 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:9 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:53 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:75 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:75 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:130 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:229 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:9 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:9 msgid "Acknowledged" msgstr "Confermato" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:39 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:51 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:51 msgid "Acknowledgement" msgstr "Conferma" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:61 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:59 msgid "Acknowledgements" -msgstr "Problemi Confermati" +msgstr "Conferme" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:161 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:157 msgid "Acknowledging problem.." msgid_plural "Acknowledging problems.." -msgstr[0] "Problema confermato.." -msgstr[1] "Problemi confermati.." +msgstr[0] "Conferma in corso.." +msgstr[1] "Conferme in corso.." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/actions.phtml:44 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/actions.phtml:44 msgid "Actions" -msgstr "Attivo" +msgstr "Azioni" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:24 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:24 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:70 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:98 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:70 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:98 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:24 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:24 msgid "Active And Passive Checks Disabled" msgstr "Controlli Attivi e Passivi Disabilitati" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:36 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:39 msgid "Active Checks" msgstr "Controlli Attivi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:22 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:22 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:72 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:100 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:72 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:100 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:22 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:22 msgid "Active Checks Disabled" msgstr "Controlli Attivi Disabilitati" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:85 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:88 msgid "Active Host Checks Being Executed" msgstr "Esegui Controlli Attivi sugli Host" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:94 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:97 msgid "Active Service Checks Being Executed" msgstr "Esegui Controlli Attivi sui Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:121 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:120 msgid "Active checks" msgstr "Controlli Attivi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostController.php:80 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:83 msgid "Add Host Comment" msgstr "Aggiungi commento all'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/createbackend.phtml:4 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:48 msgid "Add New Backend" msgstr "Aggiungi Nuovo Backend" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/createinstance.phtml:4 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:164 msgid "Add New Instance" msgstr "Aggiungi Nuova Istanza" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:57 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:60 msgid "Add Service Comment" msgstr "Aggiungi Commento al Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:21 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:20 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:14 +msgid "Add a new comment to this host" +msgstr "Aggiungi un nuovo commento all'host" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:25 +msgid "Add a new comment to this service" +msgstr "Aggiungi un nuovo commento al servizio" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:28 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:19 +#, fuzzy msgid "Add comment" msgid_plural "Add comments" -msgstr[0] "Aggiungi Commento" -msgstr[1] "Aggiungi Commenti" +msgstr[0] "Aggiungi commento" +msgstr[1] "Aggiungi commento" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:89 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:83 msgid "Adding comment.." msgid_plural "Adding comments.." -msgstr[0] "Aggiunta commento..." -msgstr[1] "Aggiunta commenti..." +msgstr[0] "Aggiunta commento.." +msgstr[1] "Aggiunta commenti.." -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:141 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:135 msgid "Address" msgstr "Indirizzo" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:195 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:66 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:201 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:44 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:48 msgid "Alert Summary" msgstr "Storico Allarmi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:11 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:11 msgid "Alert summary" msgstr "Storico Allarmi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:379 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:377 msgid "Alias" msgstr "Alias" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:28 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:95 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:146 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:158 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:237 msgid "All Hosts Enabled" -msgstr "Tutti gli host abilitati" +msgstr "Tutti gli Host abilitati" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostCheckCommandForm.php:26 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:29 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostCheckCommandForm.php:26 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:28 msgid "All Services" msgstr "Tutti i Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:56 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:115 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:166 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:92 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:192 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:271 msgid "All Services Enabled" -msgstr "Tutti i servizi abilitati" +msgstr "Tutti i Servizi Abilitati" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:178 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:178 msgid "All backends are disabled" msgstr "Tutti i backend sono disabilitati" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:16 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:16 msgid "Allow acknowledging host and service problems" -msgstr "Consente la Conferma dei problemi si Host e Servizi" +msgstr "Consenti la Conferma dei problemi di Host e Servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:24 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:24 msgid "Allow adding and deleting host and service comments" -msgstr "Consente la rimozione di Commenti da Host e Servizi" +msgstr "Consenti la rimozione di Commenti da Host e Servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:8 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:8 msgid "Allow all commands" -msgstr "Consente tutti i Comandi" +msgstr "Consenti tutti i Comandi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:28 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:28 msgid "Allow commenting on hosts and services" -msgstr "Consente l'aggiunta di Commenti su Host e Servizi" +msgstr "Consenti l'aggiunta di Commenti su Host e Servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:32 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:32 msgid "Allow deleting host and service comments" -msgstr "Consente la rimozione di Commenti da Host e Servizi" +msgstr "Consenti la rimozione di Commenti da Host e Servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:44 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:44 msgid "Allow deleting host and service downtimes" -msgstr "Consente la schedulazione di Manutenzioni su Host e Servizi" +msgstr "Consenti la cancellazione di Manutenzioni da Host e Servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:52 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:52 msgid "" "Allow processing commands for toggling features on an instance-wide basis" -msgstr "" +msgstr "Consenti di abilitare/disabilitare funzionalità globali" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:56 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:56 msgid "" "Allow processing commands for toggling features on host and service objects" -msgstr "Consente l'aggiunta di Commenti su Host e Servizi" +msgstr "Consenti di abilitare/disabilitare funzionalità di host e servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:48 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:48 msgid "Allow processing host and service check results" -msgstr "Consente la schedulazione di Controlli su Host e Servizi" +msgstr "Consenti l'invio di risultati passivi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:20 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:20 msgid "Allow removing problem acknowledgements" -msgstr "Consente la rimozione di Conferme" +msgstr "Consenti la rimozione delle Conferme" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:36 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:36 msgid "Allow scheduling and deleting host and service downtimes" -msgstr "Consente la schedulazione di Manutenzioni su Host e Servizi" +msgstr "Consenti la pianificazione di Manutenzioni su Host e Servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:12 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:12 msgid "Allow scheduling host and service checks" -msgstr "Consente la schedulazione di Controlli su Host e Servizi" +msgstr "Consenti la schedulazione di Controlli su Host e Servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:40 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:40 msgid "Allow scheduling host and service downtimes" -msgstr "Consente la schedulazione di Manutenzioni su Host e Servizi" +msgstr "Consenti la pianificazione di Manutenzioni su Host e Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:21 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:60 +msgid "Allow sending custom notifications for hosts and services" +msgstr "Consenti l'invio di notifiche personalizzate per host e servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:21 msgid "Apply" msgstr "Applica" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/removeinstance.phtml:5 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:131 msgid "Are you sure you want to remove this instance?" msgstr "Sicuro di voler rimuovere l'istanza?" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:306 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:300 msgid "Author" msgstr "Autore" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:33 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:33 msgid "Average" msgstr "Media" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:109 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:108 msgid "Average services per host" msgstr "Media di Servizi per Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:453 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:439 msgid "Avg (min)" msgstr "Media (min)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:75 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:78 #, php-format msgid "Backend \"%s\" successfully removed." -msgstr "Backend \"%s\" rimosso con successo." +msgstr "Backend \"%s\" rimosso correttamente." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:207 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:45 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:216 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:28 msgid "Backend Name" msgstr "Nome Backend" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:217 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:61 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:226 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:44 msgid "Backend Type" msgstr "Tipo Backend" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:222 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:34 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:52 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:34 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:52 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:75 +msgid "Backends" +msgstr "Backend" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:77 +msgid "Broadcast" +msgstr "Trasmetti a tutti" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:52 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:52 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:184 msgid "CRITICAL" msgstr "CRITICAL" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:63 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:16 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:62 msgctxt "icinga.state" msgid "CRITICAL" msgstr "CRITICAL" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/checksource.phtml:3 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checksource.phtml:4 msgid "Check Source" -msgstr "Sorgente del Controllo" +msgstr "Eseguito da" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:54 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:51 msgid "Check Time" msgstr "Ora del Controllo" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:51 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:61 msgid "Check attempts" msgstr "Tentativi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:60 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:70 msgid "Check execution time" -msgstr "Durata" +msgstr "Durata " -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:66 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:76 msgid "Check latency" msgstr "Latenza" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:37 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:38 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:37 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:39 msgid "Check now" msgstr "Controlla ora" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:94 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:78 msgid "" "Check this to not to validate connectivity with the given Livestatus socket" msgstr "" "Spunta questa casella per non verificare la connettività con il socket " "Livestatus fornito" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:94 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:77 msgid "" "Check this to not to validate connectivity with the given database server" msgstr "" "Spunta questa casella per non verificare la connettività con il database " "fornito" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:39 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:38 msgid "Child Hosts" msgstr "Host Figli" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:58 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:58 msgid "" "Comma separated case insensitive list of protected custom variables. Use * " "as a placeholder for zero or more wildcard characters. Existance of those " @@ -746,273 +753,303 @@ msgstr "" "Usare * come carattere jolly. Le variabili fornite verranno mostrate ma il " "loro contenuto sarà mascherato." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:9 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:9 msgid "Command" msgstr "Comando" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:64 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/LocalInstanceForm.php:30 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/LocalInstanceForm.php:30 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:64 msgid "Command File" -msgstr "File del Comando" +msgstr "File dei comandi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:45 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:49 msgid "Commands" msgstr "Comandi" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:68 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:52 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:48 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:58 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:49 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:43 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:65 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:52 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:62 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:67 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:63 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:54 msgid "Comment" msgstr "Commento" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:486 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:489 msgid "Comment Timestamp" msgstr "Timestamp Commento" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:489 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:492 msgid "Comment Type" -msgstr "Tipo di Commento" +msgstr "Tipo Commento" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:63 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:68 msgid "Comment deleted" msgstr "Commento rimosso" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:36 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:36 msgid "Comment was caused by a downtime." msgstr "Commento generato da una manutenzione." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:26 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:26 msgid "Comment was caused by a flapping host or service." msgstr "Commento generato da un host o servizio instabile." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:40 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:40 msgid "Comment was caused by an acknowledgement." msgstr "Commento generato dalla conferma di un problema" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:31 msgid "Comment was created by an user." msgstr "Commento creato da un utente." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:77 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:93 -msgid "Comment: " -msgstr "Commento: " - -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:157 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:66 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:2 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:56 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:465 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:163 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:468 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:54 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:66 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/comments.phtml:2 msgid "Comments" msgstr "Commenti" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:196 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:196 #, php-format msgid "Configuration for backend %s is disabled" -msgstr "La configurazione per il backend %s è disabilitata" +msgstr "Configurazione peril backend %s disabilitata" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:433 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:79 +msgid "" +"Configure how to protect your monitoring environment against prying eyes" +msgstr "" +"Configura come proteggere l'ambiente di monitoraggio da occhi indiscreti" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:74 +msgid "Configure how to retrieve monitoring information" +msgstr "Configura come recuperare le informazioni di monitoraggio" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:434 msgid "Contact Groups" msgstr "Gruppi di Contatti" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:4 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:4 msgid "Contact details" msgstr "Dettagli del Contatto" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:153 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:33 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:159 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:37 msgid "Contactgroups" -msgstr "Gruppi di contatti" +msgstr "Gruppi di Contatti" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:149 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:14 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:353 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:155 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:351 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:17 msgid "Contacts" msgstr "Contatti" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:52 -msgid "Could not find any valid monitoring backend resources" -msgstr "" -"Não foi possível encontrar nenhum recurso válido de backend de monitoramento" +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:299 +msgid "Contains host states of each service group." +msgstr "Contiene gli stati degli host per ogni gruppo di servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:41 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:240 +msgid "Contains service states for each service group." +msgstr "Contiene gli stati dei servizi per ogni gruppo di servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:55 +msgid "Could not find any valid monitoring backend resources" +msgstr "Non è stata trovata nessun backend di monitoraggio valido" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:53 msgid "Create New Instance" msgstr "Crea una Nuova Istanza" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:9 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:9 msgid "Create New Monitoring Backend" msgstr "Crea un Nuovo Backend di Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:118 -#: /usr/share/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:261 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:264 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:118 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 msgid "Critical" msgstr "Critical" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:117 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:123 msgid "Current Downtimes" msgstr "Manutenzioni in corso" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:233 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:227 msgid "Current Host State" msgstr "Stato Corrente degli Host" -# rivedere -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:211 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:217 msgid "Current Incidents" msgstr "Problemi Correnti" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:229 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:223 msgid "Current Service State" msgstr "Stato Corrente dei Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:139 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:133 msgid "Current State" msgstr "Stato Corrente" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:178 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:176 msgid "DOWN" -msgstr "" +msgstr "DOWN" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:58 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:57 msgctxt "icinga.state" msgid "DOWN" msgstr "DOWN" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:104 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:104 msgid "Database Name" msgstr "Nome Database" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:83 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:83 msgid "Database Resource" msgstr "Risorsa Database" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:92 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:92 msgid "Database Type" msgstr "Tipo Database" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:651 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:654 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:643 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:646 msgid "Day" msgstr "Giorno" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:498 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:468 +msgid "Defect Chart" +msgstr "Grafico dei Problemi" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:489 msgid "Defects" msgstr "Problemi" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:47 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:46 msgid "Define what should be done with the child hosts of the hosts." msgstr "Definire che azione compiere con gli Host figli" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php:57 -msgid "Delete comment" -msgstr "Rimuovi Commento" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php:64 +msgid "Delete this comment" +msgstr "Cancella questo commento" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php:57 -msgid "Delete downtime" -msgstr "Cancella Manutenzione" +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php:64 +msgid "Delete this downtime" +msgstr "Cancella questa manutenzione" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php:82 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteCommentCommandForm.php:89 msgid "Deleting comment.." msgstr "Rimozione commento..." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php:82 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/DeleteDowntimeCommandForm.php:89 msgid "Deleting downtime.." msgstr "Cancellazione Manutenzione..." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:23 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:95 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:99 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:24 msgid "Disable Notifications" msgstr "Disabilita le Notifiche" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:199 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:208 msgid "Disable This Backend" msgstr "Disabilita Backend" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:64 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:67 msgid "Disable notifications for a specific time on a program-wide basis" msgstr "Disabilita le notifiche per un periodo specifico sull'intero sistema" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:66 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:69 msgid "Disable temporarily" msgstr "Disabilita Temporaneamente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:68 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:61 msgid "Disabling host and service notifications.." -msgstr "Disabilazione Notifiche di Host e Servizi in corso..." +msgstr "Disabilitazione Notifiche di Host e Servizi in corso..." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:42 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:41 msgid "Do nothing with child hosts" msgstr "Non applicare agli Host figli" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:139 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:308 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:314 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:139 msgid "Down" msgstr "Down" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:35 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:35 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:68 msgid "Downtime" msgstr "Manutenzione" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:115 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:88 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:88 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:120 msgid "Downtime End" msgstr "Fine Manutenzione" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:110 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:83 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:83 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:115 msgid "Downtime Start" msgstr "Inizio Manutenzione" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:83 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:88 msgid "Downtime removed" msgstr "Manutenzione cancellata" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:161 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:56 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:2 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:275 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:167 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:269 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:56 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:2 msgid "Downtimes" msgstr "Manutenzioni" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:311 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:305 msgid "Duration" msgstr "Durata" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/editbackend.phtml:4 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:33 msgid "Edit Existing Backend" -msgstr "Modifica Backend Esistenti" +msgstr "Modifica Backend Esistente" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/editinstance.phtml:4 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:150 msgid "Edit Existing Instance" -msgstr "Modifica Istanze Esistenti" +msgstr "Modifica Istanza Esistente" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:22 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:24 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:380 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:27 +#, php-format +msgid "Edit monitoring backend %s" +msgstr "Modifica backend di monitoraggio %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:71 +#, php-format +msgid "Edit monitoring instance %s" +msgstr "Modifica istanza di monitoraggio %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:378 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:28 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:22 msgid "Email" msgstr "Email" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:91 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:308 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:302 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:88 msgid "End Time" msgstr "Ora Fine" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:71 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:69 msgid "Ended downtimes" -msgstr "Manutenzioni completate" +msgstr "Manutenzioni Completate" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:162 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:159 msgid "" "Enter here the duration of the downtime. The downtime will be automatically " "deleted after this time expired." msgstr "" -"Inserire qui la durata della manutenzione. Icinga cancellerà automaticamente " -"la manutenzione allo scadere del tempo." +"Inserire qui la durata della manutenzione. La manutenzione sarà cancellata " +"automaticamente allo scadere del tempo." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:93 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:90 msgid "" "Enter the expire date and time for this acknowledgement here. Icinga will " "delete the acknowledgement after this time expired." @@ -1020,279 +1057,272 @@ msgstr "" "Inserire qui la durata della conferma del problema. Icinga cancellerà " "automaticamente la conferma allo scadere del tempo." -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:305 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:299 msgid "Entry Time" msgstr "Ora Inserimento" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:177 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:392 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:183 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:390 msgid "Event Grid" msgstr "Griglia Eventi" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:72 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:75 msgid "Event Handler" msgstr "Gestore Eventi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:124 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:126 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:206 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:208 msgid "Event Handlers" -msgstr "Gestore Eventi" +msgstr "Gestori Eventi" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:103 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:106 msgid "Event Handlers Enabled" msgstr "Gestore Eventi Abilitato" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:182 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:604 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:188 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:613 msgid "Event Overview" msgstr "Panoramica Eventi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:181 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:187 msgid "Events" msgstr "Eventi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:128 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:127 msgid "Execution time" msgstr "Tempo di Esecuzione" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:490 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:493 msgid "Expiration" msgstr "Scadenza" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:90 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:50 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:43 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:87 msgid "Expire Time" msgstr "Ora Scadenza" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:43 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:43 msgid "Expires" msgstr "Scade" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:29 msgid "Feature Commands" msgstr "Controllo Funzionalità" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:110 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:107 msgid "Fixed" msgstr "Rigido" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:81 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:6 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:84 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:6 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:8 msgid "Flap Detection" msgstr "Controllo Instabilità" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:112 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:115 msgid "Flap Detection Enabled" msgstr "Controllo Instabilità Attivato" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:86 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:88 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:25 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:61 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:57 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:81 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:86 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:25 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:61 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:57 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:81 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:93 msgid "Flapping" msgstr "Instabile" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:66 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:66 msgid "Flapping Stopped" msgstr "Instabilità Terminata" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:93 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:98 msgid "Flapping stopped" msgstr "Instabilità Terminata" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:111 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:108 msgid "Flexible" msgstr "Flessibile" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:160 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:157 msgid "Flexible Duration" msgstr "Durata Flessibile" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:65 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:62 msgid "Force Check" msgstr "Forza Controllo" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:67 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:64 +msgid "Forced" +msgstr "Forzato" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:67 msgid "From" msgstr "Da" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:48 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:47 msgid "Global Host Event Handler" msgstr "Gestore Eventi Host Globale" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:42 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:41 msgid "Global Service Event Handler" msgstr "Gestore Eventi Servizi Globale" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:39 -msgid "Handled hosts with state DOWN" -msgstr "Host Gestiti con stato DOWN" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:64 -msgid "Handled hosts with state UNREACHABLE" -msgstr "Host Gestiti con stato IRRAGGIUNGIBILE" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:68 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:64 -#, php-format -msgid "Handled services with state %s" -msgstr "Servizi Gestiti con stato %s" - -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:51 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:49 msgid "Hard state changes" -msgstr "Cambi di stato Hard" +msgstr "Cambi di Stato HARD" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:174 -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:209 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:69 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ShowController.php:235 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:327 +msgid "Healing Chart" +msgstr "Grafico Ripristini" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:180 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:258 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:69 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:233 msgid "History" msgstr "Storico" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:96 -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:179 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:31 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/command/objects-command-form.phtml:12 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:303 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:487 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ShowController.php:205 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:297 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:490 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:211 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:63 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/command/objects-command-form.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:96 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:186 msgid "Host" msgstr "Host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/service/objects-header.phtml:21 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/objects-header.phtml:6 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/objects-header.phtml:6 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/objects-header.phtml:21 +#, php-format msgid "Host (%u)" msgid_plural "Hosts (%u)" msgstr[0] "Host (%u)" msgstr[1] "Host (%u)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:235 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:229 msgid "Host Address" msgstr "Indirizzo Host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:134 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:156 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:133 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:155 msgid "Host Checks" msgstr "Controlli Host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:25 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:25 msgid "Host Group" msgstr "Gruppo di Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:589 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:298 +msgid "Host Group Chart" +msgstr "Grafico dei Gruppi di Host" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:596 msgid "Host Group Name" msgstr "Nome del Gruppo di Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:554 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:561 msgid "Host Groups" msgstr "Gruppi di Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:383 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:381 msgid "Host Notification Timeperiod" msgstr "Periodo delle Notifiche per l'Host" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:105 -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:221 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:111 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:227 msgid "Host Problems" msgstr "Host con Problemi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:232 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:226 msgid "Host Severity" msgstr "Impatto Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostsController.php:63 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostsController.php:153 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:84 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:202 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:64 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:158 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:85 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:207 msgid "Host State" msgstr "Stato Host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:2 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:2 msgid "Host and Service Checks" -msgstr "Controlli per Host o Servizi" +msgstr "Controlli di Host e Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/disable-notifications.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/disable-notifications.phtml:8 msgid "Host and service notifications are already disabled." -msgstr "Notifiche per Host e Servizi sono già disabilitate" +msgstr "Notifiche per Host e Servizi sono già disabilitate." -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostController.php:33 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:34 msgid "Host not found" msgstr "Host non trovato" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:43 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:48 msgid "Host notification period" -msgstr "Periodo di Notifica per l'Host" +msgstr "Periodo delle Notifiche per l'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ShowController.php:40 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:40 msgid "Host or service not found" msgstr "Host o Servizio non trovato" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:84 -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:145 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:90 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:151 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml:16 msgid "Hostgroups" -msgstr "Gruppi di Servizi" +msgstr "Gruppi di Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:140 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:234 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:646 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:134 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:228 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:657 msgid "Hostname" msgstr "Nome Host" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:33 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:33 msgid "Hostname or address of the remote Icinga instance" msgstr "Nome Host o Indirizzo dell'istanza remota di Icinga" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:82 -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:133 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:101 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:7 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:33 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:85 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:296 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostsController.php:75 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:103 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:88 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:139 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:302 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:80 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:97 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:101 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:84 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:7 msgid "Hosts" msgstr "Host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:79 -msgid "Hosts with state PENDING" -msgstr "Host in stato ATTESA" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:18 -msgid "Hosts with state UP" -msgstr "Host in stato UP" - -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:648 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:640 msgid "Hour" -msgstr "Ore" +msgstr "Ora" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:140 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:137 msgid "Hours" msgstr "Ore" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:44 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:44 msgid "" "Icinga Web 2 will protect your monitoring environment against prying eyes " "using the configuration specified below:" msgstr "" "Icinga Web 2 proteggerà il tuo ambiente di monitoraggio da occhi indiscreti " -"usando la configurazione specificata qui sotto:" +"con la configurazione seguente:" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:76 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:76 #, php-format msgid "" "Icinga Web 2 will retrieve information from your monitoring environment " "using a backend called \"%s\" and the specified resource below:" msgstr "" "Icinga Web 2 recupererà le informazioni dal tuo ambiente di monitoraggio " -"usando il backend chiamato \"%s\" e le risorse spacificate qui sotto:" +"usando il backend chiamato \"%s\" e le seguenti risorse:" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:75 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:75 #, php-format msgid "" "Icinga Web 2 will use the named pipe located at \"%s\" to send commands to " @@ -1301,38 +1331,56 @@ msgstr "" "Icinga Web 2 utilizzerà la pipe situata in \"%s\" per inviare comandi alla " "vostra istanza di monitoraggio." -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:48 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:48 #, php-format msgid "" "Icinga Web 2 will use the named pipe located on a remote machine at \"%s\" " "to send commands to your monitoring instance by using the connection details " "listed below:" msgstr "" -"Icinga Web 2 la pipe situata nella macchina remota in \"%s\" per inviare " -"comandi alla vostra istanza di monitoraggio utilizzando i dettagli per la " -"connessione descritti qui sotto:" +"Icinga Web 2 userà la pipe situata nella macchina remota in \"%s\" per " +"inviare comandi alla vostra istanza di monitoraggio utilizzando i seguenti " +"dettagli:" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:77 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:74 msgid "If the acknowledgement should expire, check this option." -msgstr "Se la Conferma del Problema deve scadere, spuntare questa casella." +msgstr "" +"Spuntare questa casella se si vuole dare una scadenza alla Conferma del " +"Problema." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:129 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:80 +msgid "" +"If you check this option, a notification is sent to all normal and escalated " +"contacts." +msgstr "" +"Selezionando questa opzione verrà inviata una notifica ai contatti " +"configurati." + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:67 +msgid "" +"If you check this option, a notification is sentregardless of the current " +"time and whether notifications are enabled." +msgstr "" +"Selezionando questa opzione verrà inviata una notifica anche se le notifiche " +"sono disabilitate e ignorando eventuali restrizioni di orario." + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:126 msgid "" "If you do not want an acknowledgement notification to be sent out to the " "appropriate contacts, uncheck this option." msgstr "" -"In caso non si voglia inviare una Notifica di Conferma ai contatti " -"configurati, deselezionare questa opzione." +"Deselezionare questa opzione in caso non si voglia inviare una Notifica di " +"Conferma ai contatti configurati." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/removeinstance.phtml:6 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:124 msgid "" "If you have still any environments or views referring to this instance, you " "won't be able to send commands anymore after deletion." msgstr "" -"In caso qualche altro ambiente o vista faccia riferimento a questa istanza, " +"Nel caso qualche altro ambiente o vista faccia riferimento a questa istanza, " "non sarà più possibile inviare comandi dopo la cancellazione." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:104 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:101 msgid "" "If you select the fixed option, the downtime will be in effect between the " "start and end times you specify whereas a flexible downtime starts when the " @@ -1347,7 +1395,7 @@ msgstr "" "specificata). Il campi della Durata non avranno effetto sulle Manutenzioni " "Rigide." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:67 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:64 msgid "" "If you select this option, Icinga will force a check regardless of both what " "time the scheduled check occurs and whether or not checks are enabled." @@ -1355,25 +1403,26 @@ msgstr "" "Selezionando questa opzione, Icinga forzerà l'esecuzione del controllo " "ignorando se controlli attivi sono disabilitati e gli orari di schedulazione." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:63 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:58 msgid "" "If you uncheck this option, the comment will automatically be deleted the " "next time Icinga is restarted." msgstr "" -"Slezionando questa opzione il commento verrà automaticamente rimosso al " +"Selezionando questa opzione il commento verrà automaticamente rimosso al " "prossimo riavvio di Icinga." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:117 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:114 msgid "" "If you want the acknowledgement to disable notifications until the host or " "service recovers, check this option." msgstr "" "Selezionando questa opzione le notifiche verranno disabilitate fino al " -"ripristino dell'host o servizio" +"ripristino dell'host o servizio." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:70 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:54 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:50 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:51 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:45 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:67 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:54 msgid "" "If you work with other administrators, you may find it useful to share " "information about the the host or service that is having problems. Make sure " @@ -1383,78 +1432,77 @@ msgstr "" "informazioni riguardo l'host e i servizi che stanno avendo problemi. " "Assicurati di inserire una breve descrizione delle azioni che stai svolgendo." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:66 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:63 msgid "" "If you would like the comment to remain even when the acknowledgement is " "removed, check this option." msgstr "" -"Selezionando questa opzione il commento rimarrà anche dopo la fine della " -"Conferma del Problema." +"Selezionando questa opzione il commento rimarrà anche dopo la fine Problema." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:78 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:17 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:17 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:56 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:65 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:89 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:56 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:65 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:89 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:83 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:17 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:17 msgid "In Downtime" msgstr "In Manutenzione" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:145 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:147 msgid "" "In case it's desired that a TCP connection is being used by Icinga Web 2 to " "access a Livestatus interface, the Sockets module for PHP is required." msgstr "" -"Nel caso si desidera usare uan connessione TCP per permettere a Icinga Web 2 " -"diaccedere all'interfaccia Livestatus, è richiesto il modulo sockets di PHP." +"Il modulo PHP Sockets è richiesto nel caso sia necessaria stabilire una " +"connessione TCP per accedere all'interfaccia Livestatus tramite Icinga Web 2." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:58 msgid "Instance" msgstr "Istanza" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:160 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:160 #, php-format msgid "Instance \"%s\" created successfully." -msgstr "Istanza \"%s\" creata con successo." +msgstr "Istanza \"%s\" creata correttamente." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:163 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:163 #, php-format msgid "Instance \"%s\" edited successfully." -msgstr "Istanza \"%s\" modificata con successo." +msgstr "Istanza \"%s\" modificata correttamente." -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:107 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:114 #, php-format msgid "Instance \"%s\" successfully removed." -msgstr "Istanza \"%s\" rimossa con successo." +msgstr "Istanza \"%s\" modificata correttamente." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:191 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:191 msgid "Instance Name" msgstr "Nome Istanza" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:200 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:200 msgid "Instance Type" msgstr "Tipo Istanza" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:74 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:74 msgid "Instance already exists" msgstr "Istanza già esistente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:71 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:119 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:138 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:71 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:119 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:138 msgid "Instance name missing" msgstr "Nome istanza mancante" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:50 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:50 #, php-format msgid "Invalid instance type \"%s\" given" msgstr "Tipo \"%s\" di Istanza non valido" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:302 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:296 msgid "Is In Effect" msgstr "In Corso" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/WelcomePage.php:42 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/WelcomePage.php:42 msgid "" "It offers various status and reporting views with powerful filter " "capabilities that allow you to keep track of the most important events in " @@ -1464,349 +1512,844 @@ msgstr "" "specifici per permettere di tenere traccia degli eventi più importanti degli " "eventi di monitoraggio." -#: /usr/share/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 msgid "Label" msgstr "Etichetta" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:142 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:136 msgid "Last Check" -msgstr "Ultimo controllo" +msgstr "Ultimo Controllo" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:32 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:77 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:93 +msgid "Last Comment: " +msgstr "Ultimo Commento: " + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:31 msgid "Last External Command Check" msgstr "Ultimo Comando Esterno" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:236 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:230 msgid "Last Host Check" msgstr "Ultimo Controllo dell'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:36 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:35 msgid "Last Log File Rotation" msgstr "Ultima Rotazione del File di Log" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:24 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:24 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:24 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:24 msgid "Last Problem" msgstr "Ultimo Problema" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:231 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:225 msgid "Last Service Check" msgstr "Ultimo Controllo del Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:28 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:27 msgid "Last Status Update" msgstr "Ultimo Aggiornamento di Stato" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:18 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:18 msgid "Last check" msgstr "Ultimo Controllo" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:127 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:126 msgid "Latency" msgstr "Latenza" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:16 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:16 msgid "Legend" msgstr "Legenda" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:116 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:292 #, fuzzy, php-format -msgid "List %s service problem on host %s" -msgid_plural "List %s service problems on host %s" -msgstr[0] "Problemi dei Servizi dell'Host" -msgstr[1] "Problemi dei Servizi degli Host" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:148 -#, php-format -msgid "List %s service with status critical handled in service group %s" +msgid "" +"List %s service that is currenlty in state PENDING in service group \"%s\"" msgid_plural "" -"List %s services with status critical handled in service group %s" +"List %s services which are currently in state PENDING in service group \"%s\"" msgstr[0] "" -msgstr[1] "" +"Mostra %s servizio in stato warning gestito nel gruppo di servizi %s" +msgstr[1] "Mostra %s servizi in stato warning gestiti nel gruppo di servizi %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:126 -#, php-format -msgid "List %s service with status critical unhandled in service group %s" -msgid_plural "" -"List %s Services with status critical unhandled in service group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:101 -#, php-format -msgid "List %s service with status ok in service group %s" -msgid_plural "List %s Services with status ok in service group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:273 -#, php-format -msgid "List %s service with status pending in service group %s" -msgid_plural "List %s services with status pending in service group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:198 -#, php-format -msgid "List %s service with status unknown handled in service group %s" -msgid_plural "List %s services with status unknown handled in service group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:176 -#, php-format -msgid "List %s service with status unknown unhandled in service group %s" -msgid_plural "" -"List %s services with status unknown unhandled in service group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:248 -#, php-format -msgid "List %s service with status warning handled in service group %s" -msgid_plural "List %s services with status warning handled in service group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:226 -#, php-format -msgid "List %s service with status warning unhandled in service group %s" -msgid_plural "" -"List %s services with status warning unhandled in service group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:155 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:164 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:157 #, fuzzy, php-format +msgid "" +"List %s service that is currently in state CRITICAL (Acknowledged) in " +"service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state CRITICAL (Acknowledged) in " +"service group \"%s\"" +msgstr[0] "" +"Mostra %s servizio in stato warning gestito nel gruppo di servizi %s" +msgstr[1] "Mostra %s servizi in stato warning gestiti nel gruppo di servizi %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:133 +#, fuzzy, php-format +msgid "" +"List %s service that is currently in state CRITICAL in service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state CRITICAL in service group \"%s" +"\"" +msgstr[0] "" +"Mostra %s servizio in stato warning gestito nel gruppo di servizi %s" +msgstr[1] "Mostra %s servizi in stato warning gestiti nel gruppo di servizi %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:106 +#, fuzzy, php-format +msgid "List %s service that is currently in state OK in service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state OK in service group \"%s\"" +msgstr[0] "Mostra %s servizio in stato pending nel gruppo di servizi %s" +msgstr[1] "Mostra %s servizi in stato pending nel gruppo di servizi %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:211 +#, fuzzy, php-format +msgid "" +"List %s service that is currently in state UNKNOWN (Acknowledged) in service " +"group \"%s\"" +msgid_plural "" +"List %s services which are currently in state UNKNOWN (Acknowledged) in " +"service group \"%s\"" +msgstr[0] "" +"Mostra %s servizio in stato warning gestito nel gruppo di servizi %s" +msgstr[1] "Mostra %s servizi in stato warning gestiti nel gruppo di servizi %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:187 +#, fuzzy, php-format +msgid "" +"List %s service that is currently in state UNKNOWN in service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state UNKNOWN in service group \"%s\"" +msgstr[0] "" +"Mostra %s servizio in stato warning gestito nel gruppo di servizi %s" +msgstr[1] "Mostra %s servizi in stato warning gestiti nel gruppo di servizi %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:265 +#, fuzzy, php-format +msgid "" +"List %s service that is currently in state WARNING (Acknowledged) in service " +"group \"%s\"" +msgid_plural "" +"List %s services which are currently in state WARNING (Acknowledged) in " +"service group \"%s\"" +msgstr[0] "" +"Mostra %s servizio in stato warning gestito nel gruppo di servizi %s" +msgstr[1] "Mostra %s servizi in stato warning gestiti nel gruppo di servizi %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:241 +#, fuzzy, php-format +msgid "" +"List %s service that is currently in state WARNING in service group \"%s\"" +msgid_plural "" +"List %s services which are currently in state WARNING in service group \"%s\"" +msgstr[0] "" +"Mostra %s servizio in stato warning gestito nel gruppo di servizi %s" +msgstr[1] "Mostra %s servizi in stato warning gestiti nel gruppo di servizi %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:123 +#, fuzzy, php-format +msgid "List %s unhandled service problem on host %s" +msgid_plural "List %s unhandled service problems on host %s" +msgstr[0] "Mostra %s problema ai servizi dell'host %s" +msgstr[1] "Mostra %s problemi ai servizi dell'host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:111 +#, fuzzy, php-format +msgctxt "timeline.link.title" +msgid "List %u %s registered %s" +msgstr "Mostra %u %s salvati %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:24 +#, fuzzy, php-format +msgid "List %u actively checked host" +msgid_plural "List %u actively checked hosts" +msgstr[0] "%d è controllato passivamente" +msgstr[1] "%d è controllato passivamente" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:80 +#, fuzzy, php-format +msgid "List %u actively checked service" +msgid_plural "List %u actively checked services" +msgstr[0] "%d è controllato passivamente" +msgstr[1] "%d è controllato passivamente" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:112 +#, php-format msgid "List %u host comment" msgid_plural "List %u host comments" -msgstr[0] "Aggiungi commento all'Host" -msgstr[1] "Aggiungi commento all'Host" +msgstr[0] "Mostra %u commento dell' host" +msgstr[1] "Mostra %u commenti dell' host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:139 -#, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:97 +#, fuzzy, php-format msgid "List %u host currently in downtime" -msgid_plural "List %u hosts currently downtime" +msgid_plural "List %u hosts currently in downtime" +msgstr[0] "Mostra %u host in manutenzione" +msgstr[1] "Mostra %u host in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:27 +#, fuzzy, php-format +msgid "List %u host for which flap detection has been disabled" +msgid_plural "List %u hosts for which flap detection has been disabled" +msgstr[0] "Mostra tutti gli host dove il controllo di instabilità è abilitato" +msgstr[1] "Mostra tutti gli host dove il controllo di instabilità è abilitato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:148 +#, fuzzy, php-format +msgid "List %u host for which notifications are suppressed" +msgid_plural "List %u hosts for which notifications are suppressed" +msgstr[0] "Mostra tutti gli host dove le notifiche sono abilitate" +msgstr[1] "Mostra tutti gli host dove le notifiche sono abilitate" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:57 +#, fuzzy, php-format +msgid "List %u host that is currently flapping" +msgid_plural "List %u hosts which are currently flapping" +msgstr[0] "Mostra %u host in manutenzione" +msgstr[1] "Mostra %u host in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:17 +#, fuzzy, php-format +msgid "List %u host that is currently in state DOWN" +msgid_plural "List %u hosts which are currently in state DOWN" +msgstr[0] "Mostra %u host in manutenzione" +msgstr[1] "Mostra %u host in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:59 +#, fuzzy, php-format +msgid "List %u host that is currently in state DOWN (Acknowledged)" +msgid_plural "List %u hosts which are currently in state DOWN (Acknowledged)" +msgstr[0] "Mostra %u host in manutenzione" +msgstr[1] "Mostra %u host in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:126 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:40 +#, fuzzy, php-format +msgid "List %u host that is currently in state PENDING" +msgid_plural "List %u hosts which are currently in state PENDING" +msgstr[0] "Mostra %u host in manutenzione" +msgstr[1] "Mostra %u host in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:84 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:39 +#, fuzzy, php-format +msgid "List %u host that is currently in state UNREACHABLE" +msgid_plural "List %u hosts which are currently in state UNREACHABLE" +msgstr[0] "Mostra %u host in manutenzione" +msgstr[1] "Mostra %u host in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:104 +#, php-format +msgid "List %u host that is currently in state UNREACHABLE (Acknowledged)" +msgid_plural "" +"List %u hosts which are currently in state UNREACHABLE (Acknowledged)" msgstr[0] "" msgstr[1] "" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:130 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:18 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:22 #, fuzzy, php-format -msgid "List %u host which is in downtime" -msgid_plural "List %u hosts which are in downtime" -msgstr[0] "Host in Manutenzione" -msgstr[1] "Host in Manutenzione" +msgid "List %u host that is currently in state UP" +msgid_plural "List %u hosts which are currently in state UP" +msgstr[0] "Mostra %u host in manutenzione" +msgstr[1] "Mostra %u host in manutenzione" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:140 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:149 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:60 #, fuzzy, php-format +msgid "List %u host that is not being checked at all" +msgid_plural "List %u hosts which are not being checked at all" +msgstr[0] "%d è stato controllato" +msgstr[1] "%d è stato controllato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:227 +#, fuzzy, php-format +msgid "List %u host that is not processing any event handlers" +msgid_plural "List %u hosts which are not processing any event handlers" +msgstr[0] "Mostra tutti gli host dove il gestore eventi è abilitato" +msgstr[1] "Mostra tutti gli host dove il gestore eventi è abilitato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:42 +#, fuzzy, php-format +msgid "List %u passively checked host" +msgid_plural "List %u passively checked hosts" +msgstr[0] "%d è controllato passivamente" +msgstr[1] "%d è controllato passivamente" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:98 +#, fuzzy, php-format +msgid "List %u passively checked service" +msgid_plural "List %u passively checked services" +msgstr[0] "%d è controllato passivamente" +msgstr[1] "%d è controllato passivamente" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:112 +#, php-format msgid "List %u service comment" msgid_plural "List %u service comments" -msgstr[0] "Aggiungi Commento al Servizio" -msgstr[1] "Aggiungi Commento al Servizio" +msgstr[0] "Mostra %u commento del servizio" +msgstr[1] "Mostra %u commenti del servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:117 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:125 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:97 +#, php-format msgid "List %u service currently in downtime" msgid_plural "List %u services currently in downtime" -msgstr[0] "Servizi in manutenzione" -msgstr[1] "Servizi in manutenzione" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:148 -#, php-format -msgid "List %u service with status critical handled in host group %s" -msgid_plural "List %u services with status critical handled in host group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:126 -#, php-format -msgid "List %u service with status critical unhandled in host group %s" -msgid_plural "List %u services with status critical unhandled in host group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:101 -#, php-format -msgid "List %u service with status ok in host group %s" -msgid_plural "List %u services with status ok in host group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:273 -#, php-format -msgid "List %u service with status pending in host group %s" -msgid_plural "List %u services with status pending in host group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:198 -#, php-format -msgid "List %u service with status unknown handled in host group %s" -msgid_plural "List %u services with status unknown handled in host group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:176 -#, php-format -msgid "List %u service with status unknown unhandled in host group %s" -msgid_plural "List %u services with status unknown unhandled in host group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:248 -#, php-format -msgid "List %u service with status warning handled in host group %s" -msgid_plural "List %u services with status warning handled in host group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:226 -#, php-format -msgid "List %u service with status warning unhandled in host group %s" -msgid_plural "List %u services with status warning unhandled in host group %s" -msgstr[0] "" -msgstr[1] "" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:11 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:24 -msgid "List all" -msgstr "Mostra tutto" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:21 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:82 #, fuzzy, php-format +msgid "List %u service for which flap detection has been disabled" +msgid_plural "List %u services for which flap detection has been disabled" +msgstr[0] "" +"Mostra tutti i servizi dove il controllo di instabilità è disbilitato" +msgstr[1] "" +"Mostra tutti i servizi dove il controllo di instabilità è disbilitato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:182 +#, fuzzy, php-format +msgid "List %u service for which notifications are suppressed" +msgid_plural "List %u services for which notifications are suppressed" +msgstr[0] "Mostra tutti i servizi dove le notifiche sono disabilitate" +msgstr[1] "Mostra tutti i servizi dove le notifiche sono disabilitate" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:112 +#, fuzzy, php-format +msgid "List %u service that is currently flapping" +msgid_plural "List %u services which are currently flapping" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:57 +#, fuzzy, php-format +msgid "List %u service that is currently in state %s" +msgid_plural "List %u services which are currently in state %s" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:82 +#, fuzzy, php-format +msgid "List %u service that is currently in state %s (Acknowledged)" +msgid_plural "List %u services which are currently in state %s (Acknowledged)" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:108 +#, fuzzy, php-format +msgid "List %u service that is currently in state %s (Acknowledged) on host %s" +msgid_plural "" +"List %u services which are currently in state %s (Acknowledged) on host %s" +msgstr[0] "" +"Mostra %u servizio in stato critical non gestito nel gruppo di host %s" +msgstr[1] "" +"Mostra %u servizi in stato critical non gestiti nel gruppo di host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:82 +#, fuzzy, php-format +msgid "List %u service that is currently in state %s on host %s" +msgid_plural "List %u services which are currently in state %s on host %s" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:20 +#, fuzzy, php-format +msgid "List %u service that is currently in state CRITICAL" +msgid_plural "List %u services which are currently in state CRITICAL" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:41 +#, fuzzy, php-format +msgid "List %u service that is currently in state CRITICAL (Acknowledged)" +msgid_plural "" +"List %u services which are currently in state CRITICAL (Acknowledged)" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:165 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state CRITICAL (Acknowledged) on hosts " +"in the host group \"%s\"" +msgid_plural "" +"List %u services which are currently in state CRITICAL (Acknowledged) on " +"hosts in the host group \"%s\"" +msgstr[0] "" +"Mostra %u servizio in stato critical non gestito nel gruppo di host %s" +msgstr[1] "" +"Mostra %u servizi in stato critical non gestiti nel gruppo di host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:95 +#, php-format +msgid "" +"List %u service that is currently in state CRITICAL and not checked at all" +msgid_plural "" +"List %u services which are currently in state CRITICAL and not checked at all" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:68 +#, php-format +msgid "" +"List %u service that is currently in state CRITICAL and passively checked" +msgid_plural "" +"List %u services which are currently in state CRITICAL and passively checked" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:141 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state CRITICAL on hosts in the host " +"group \"%s\"" +msgid_plural "" +"List %u services which are currently in state CRITICAL on hosts in the host " +"group \"%s\"" +msgstr[0] "Mostra %u servizio in stato ok nel gruppo di host %s" +msgstr[1] "Mostra %u servizi in stato ok nel gruppo di host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:19 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:314 +#, fuzzy, php-format +msgid "List %u service that is currently in state OK" +msgid_plural "List %u services which are currently in state OK" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:340 +#, fuzzy, php-format +msgid "List %u service that is currently in state OK and not checked at all" +msgid_plural "" +"List %u services which are currently in state OK and not checked at all" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:43 +#, fuzzy, php-format +msgid "List %u service that is currently in state OK on host %s" +msgid_plural "List %u services which are currently in state OK on host %s" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:114 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state OK on hosts in the host group \"%s" +"\"" +msgid_plural "" +"List %u services which are currently in state OK on hosts in the host group " +"\"%s\"" +msgstr[0] "Mostra %u servizio in stato ok nel gruppo di host %s" +msgstr[1] "Mostra %u servizi in stato ok nel gruppo di host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:106 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:361 +#, fuzzy, php-format +msgid "List %u service that is currently in state PENDING" +msgid_plural "List %u services which are currently in state PENDING" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:387 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state PENDING and not checked at all" +msgid_plural "" +"List %u services which are currently in state PENDING and not checked at all" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:133 +#, fuzzy, php-format +msgid "List %u service that is currently in state PENDING on host %s" +msgid_plural "List %u services which are currently in state PENDING on host %s" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:300 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state PENDING on hosts in the host " +"group \"%s\"" +msgid_plural "" +"List %u services which are currently in state PENDING on hosts in the host " +"group \"%s\"" +msgstr[0] "Mostra %u servizio in stato ok nel gruppo di host %s" +msgstr[1] "Mostra %u servizi in stato ok nel gruppo di host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:218 +#, fuzzy, php-format +msgid "List %u service that is currently in state UNKNOWN" +msgid_plural "List %u services which are currently in state UNKNOWN" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:239 +#, fuzzy, php-format +msgid "List %u service that is currently in state UNKNOWN (Acknowledged)" +msgid_plural "" +"List %u services which are currently in state UNKNOWN (Acknowledged)" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:219 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state UNKNOWN (Acknowledged) on hosts " +"in the host group \"%s\"" +msgid_plural "" +"List %u services which are currently in state UNKNOWN (Acknowledged) on " +"hosts in the host group \"%s\"" +msgstr[0] "" +"Mostra %u servizio in stato critical non gestito nel gruppo di host %s" +msgstr[1] "" +"Mostra %u servizi in stato critical non gestiti nel gruppo di host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:293 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state UNKNOWN and not checked at all" +msgid_plural "" +"List %u services which are currently in state UNKNOWN and not checked at all" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:266 +#, php-format +msgid "" +"List %u service that is currently in state UNKNOWN and passively checked" +msgid_plural "" +"List %u services which are currently in state UNKNOWN and passively checked" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:195 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state UNKNOWN on hosts in the host " +"group \"%s\"" +msgid_plural "" +"List %u services which are currently in state UNKNOWN on hosts in the host " +"group \"%s\"" +msgstr[0] "Mostra %u servizio in stato ok nel gruppo di host %s" +msgstr[1] "Mostra %u servizi in stato ok nel gruppo di host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:119 +#, fuzzy, php-format +msgid "List %u service that is currently in state WARNING" +msgid_plural "List %u services which are currently in state WARNING" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:140 +#, fuzzy, php-format +msgid "List %u service that is currently in state WARNING (Acknowledged)" +msgid_plural "" +"List %u services which are currently in state WARNING (Acknowledged)" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:273 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state WARNING (Acknowledged) on hosts " +"in the host group \"%s\"" +msgid_plural "" +"List %u services which are currently in state WARNING (Acknowledged) on " +"hosts in the host group \"%s\"" +msgstr[0] "" +"Mostra %u servizio in stato critical non gestito nel gruppo di host %s" +msgstr[1] "" +"Mostra %u servizi in stato critical non gestiti nel gruppo di host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:194 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state WARNING and not checked at all" +msgid_plural "" +"List %u services which are currently in state WARNING and not checked at all" +msgstr[0] "Mostra %u servizio in manutenzione" +msgstr[1] "Mostra %u servizi in manutenzione" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:167 +#, php-format +msgid "" +"List %u service that is currently in state WARNING and passively checked" +msgid_plural "" +"List %u services which are currently in state WARNING and passively checked" +msgstr[0] "" +msgstr[1] "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:249 +#, fuzzy, php-format +msgid "" +"List %u service that is currently in state WARNING on hosts in the host " +"group \"%s\"" +msgid_plural "" +"List %u services which are currently in state WARNING on hosts in the host " +"group \"%s\"" +msgstr[0] "Mostra %u servizio in stato ok nel gruppo di host %s" +msgstr[1] "Mostra %u servizi in stato ok nel gruppo di host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:116 +#, fuzzy, php-format +msgid "List %u service that is not being checked at all" +msgid_plural "List %u services which are not being checked at all" +msgstr[0] "%d è stato controllato" +msgstr[1] "%d è stato controllato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:261 +#, fuzzy, php-format +msgid "List %u service that is not processing any event handlers" +msgid_plural "List %u services which are not processing any event handlers" +msgstr[0] "Mostra tutti i servizi dove il gestore eventi è abilitato" +msgstr[1] "Mostra tutti i servizi dove il gestore eventi è abilitato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:10 +#, php-format msgid "List all %u hosts" -msgstr "Mostra tutto" +msgstr "Mostra tutti %u host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:10 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:23 #, fuzzy, php-format -msgid "List all %u services" -msgstr "Totale dei Servizi" +msgid "List all %u service on host %s" +msgid_plural "List all %u services on host %s" +msgstr[0] "Mostra tutti i servizi dell'host %s" +msgstr[1] "Mostra tutti i servizi dell'host %s" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:118 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:10 +#, php-format +msgid "List all %u services" +msgstr "Mostra tutti %u servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:73 +#, fuzzy, php-format +msgctxt "timeline.link.title" +msgid "List all event records registered %s" +msgstr "Mostra tutti gli eventi dello storico %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:86 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml:11 +#, php-format +msgid "List all hosts in the group \"%s\"" +msgstr "Mostra tutti gli host del gruppo \"%s\"" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:41 +msgid "List all hosts, for which flap detection is enabled entirely" +msgstr "Mostra tutti gli host dove il controllo di instabilità è abilitato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:162 +msgid "List all hosts, for which notifications are enabled entirely" +msgstr "Mostra tutti gli host dove le notifiche sono abilitate" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:241 +msgid "List all hosts, which are processing event handlers entirely" +msgstr "Mostra tutti gli host dove il gestore eventi è abilitato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:72 +#, php-format +msgid "List all reported services on host %s" +msgstr "Mostra tutti i servizi riportati nell'host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:86 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml:11 +#, php-format +msgid "List all services in the group \"%s\"" +msgstr "Mostra tutti i servizi del gruppo \"%s\"" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:95 +#, php-format +msgid "List all services of all hosts in host group \"%s\"" +msgstr "Mostra tutti i servizi di tutti gli host del gruppo \"%s\"" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:237 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:212 +#, php-format +msgid "List all services on host %s" +msgstr "Mostra tutti i servizi dell'host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:53 +#, php-format +msgid "List all services with the name \"%s\" on all reported hosts" +msgstr "Mostra tutti i servizi con il nome \"%s\" negli host riportati" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:96 +msgid "List all services, for which flap detection is enabled entirely" +msgstr "Mostra tutti i servizi dove il controllo di instabilità è disbilitato" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:196 +msgid "List all services, for which notifications are enabled entirely" +msgstr "Mostra tutti i servizi dove le notifiche sono disabilitate" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:275 +msgid "List all services, which are processing event handlers entirely" +msgstr "Mostra tutti i servizi dove il gestore eventi è abilitato" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:468 +msgid "List comments" +msgstr "Lista commenti" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:435 +msgid "List contact groups" +msgstr "Lista gruppi di contatti" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:351 +msgid "List contacts" +msgstr "Lista contatti" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:31 +#, php-format +msgid "List contacts in contact-group \"%s\"" +msgstr "Mostra contatti nel gruppo \"%s\"" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:269 +msgid "List downtimes" +msgstr "Lista manutenzioni" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:614 +msgid "List event records" +msgstr "Lista eventi" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:561 +msgid "List host groups" +msgstr "Lista gruppi di host" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:97 +msgid "List hosts" +msgstr "LIsta host" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:326 +msgid "List notifications" +msgstr "Lista notifiche" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:510 +msgid "List service groups" +msgstr "Lista gruppi di servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:171 +msgid "List services" +msgstr "Lista servizi" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:118 msgid "Livestatus Resource" msgstr "Risorsa Livestatus" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:76 msgid "Local" msgstr "Locale" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:202 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:202 msgid "Local Command File" -msgstr "Command File Locale" +msgstr "Command File locale" -#: /usr/share/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 msgid "Max" -msgstr "Massimo" +msgstr "Max" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:462 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:449 msgid "Max (min)" msgstr "Massimo (min)" -#: /usr/share/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 msgid "Min" -msgstr "Minuti" +msgstr "Min" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:150 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:147 msgid "Minutes" msgstr "Minuti" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:72 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:14 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:14 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:72 msgid "Monitoring Backend" msgstr "Backend di Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:22 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:14 msgctxt "setup.page.title" msgid "Monitoring Backend" msgstr "Backend di Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:3 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:3 msgid "Monitoring Backends" msgstr "Backend di Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:2 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:2 msgid "Monitoring Features" -msgstr "Proprietà del Monitoraggio" +msgstr "Funzionalità di Monitoraggio" -# rivdere -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:203 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:25 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:36 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:209 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:29 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:40 msgid "Monitoring Health" -msgstr "Configurazioni Globali" +msgstr "Impostazioni Globali" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:30 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:14 msgctxt "setup.page.title" msgid "Monitoring IDO Resource" msgstr "Risorsa IDO del Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:42 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:42 msgid "Monitoring Instance" msgstr "Istanza di Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/InstancePage.php:22 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/InstancePage.php:14 msgctxt "setup.page.title" msgid "Monitoring Instance" msgstr "Istanza di Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:38 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:50 msgid "Monitoring Instances" msgstr "Istanze di Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:30 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:14 msgctxt "setup.page.title" msgid "Monitoring Livestatus Resource" msgstr "Risorsa Livestatus di Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:41 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:41 msgid "Monitoring Security" -msgstr "Sicurezza " +msgstr "Sicurezza del Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/SecurityPage.php:22 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/SecurityPage.php:14 msgctxt "setup.page.title" msgid "Monitoring Security" -msgstr "Sicurezza" +msgstr "Sicurezza del Monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:143 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:146 #, php-format msgid "Monitoring backend \"%s\" has been successfully changed" -msgstr "Backend di monitoraggio \"%s\" modificato con successo" +msgstr "Backend di monitoraggio \"%s\" modificato correttamente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:140 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:143 #, php-format msgid "Monitoring backend \"%s\" has been successfully created" -msgstr "Backend di monitoraggio \"%s\" creato con successo" +msgstr "Backend di monitoraggio \"%s\" creato correttamente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:76 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:79 msgid "Monitoring backend already exists" msgstr "Backend di monitoraggio già esistente" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:146 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:146 #, php-format msgid "" "Monitoring backend configuration could not be written to: %s; An error " "occured:" msgstr "" -"Impossibile scrivere la configurazione del backend di monitoraggio in: %s; " +"Impossibile scrivere la configurazione del vba del monitoraggio in: %s; " "Errore:" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:141 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:141 #, php-format msgid "Monitoring backend configuration has been successfully written to: %s" -msgstr "" -"La configurazione del backend di monitoraggio è stata salvata con successo " -"in: %s" +msgstr "Configurazione del Backend di monitoraggio scritta correttmente in: %s" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:74 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:121 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:167 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:77 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:124 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:170 msgid "Monitoring backend name missing" msgstr "Nome del backend di monitoraggio mancante" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:93 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:93 #, php-format msgid "" "Monitoring instance configuration could not be written to: %s; An error " @@ -1815,14 +2358,12 @@ msgstr "" "Impossibile scrivere la configurazione dell'istanza di monitoraggio in: %s; " "Errore:" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:88 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:88 #, php-format msgid "Monitoring instance configuration has been successfully created: %s" -msgstr "" -"La configurazione dell'istanza di monitoraggio è stata salvata con successo " -"in: %s" +msgstr "Configuarzione dell'Istanza di monitoraggio creata correttamente: %s" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:71 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:71 #, php-format msgid "" "Monitoring security configuration could not be written to: %s; An error " @@ -1831,336 +2372,338 @@ msgstr "" "Impossibile scrivere la configurazione di sicurezza del monitoraggio in: %s; " "Errore:" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:66 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:66 #, php-format msgid "Monitoring security configuration has been successfully created: %s" -msgstr "" -"La configurazione di sicurezza del monitoraggio è stata scritta con successo " -"in: %s" +msgstr "Configurazione di sicurezza creata correttamente: %s" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:657 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:649 msgid "Month" -msgstr "3 Mesi" +msgstr "Mese" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:39 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:45 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:51 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:38 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:44 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:50 msgid "N/A" msgstr "N/A" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:378 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:376 msgid "Name" msgstr "Nome" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:97 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:97 msgid "New instance name missing" msgstr "Nome nuova istanza mancante" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:99 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:102 msgid "New monitoring backend name missing" msgstr "Nome del nuovo backend di monitoraggio mancante" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:31 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:31 msgid "New security configuration has successfully been stored" msgstr "" -"La nuova configurazione di sicurezza del monitoraggio è stata salvata con " -"successo." +"La nuova configurazione di sicurezza del monitoraggio è stata salvata " +"correttamente." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:27 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:27 msgid "Next check" msgstr "Prossimo Controllo" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:23 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checksource.phtml:17 +msgid "No" +msgstr "No" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:23 msgid "No Services matching the filter" msgstr "Nessun Servizio soddisfa i criteri di ricerca" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:25 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:25 msgid "No active downtimes" msgstr "Nessuna Manutenzione in corso" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:176 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:176 msgid "No backend has been configured" -msgstr "Nessun backend configurato" +msgstr "Nessun Backend configurato" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:14 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:14 msgid "No comments matching the filter" msgstr "Nessun commento soddisfa i criteri di ricerca" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:189 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:189 #, php-format msgid "No configuration for backend %s" msgstr "Nessuna configurazione per il backend %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:12 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/contactgroups.phtml:11 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contactgroups.phtml:11 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:12 msgid "No contacts matching the filter" msgstr "Nessun contatto soddisfa i criteri di ricerca" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:24 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:24 msgid "No history available for this object" msgstr "Storico non disponibile per questo oggetto" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:26 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:26 msgid "No history events matching the filter" msgstr "Nessun evento dello storico soddisfa i criteri di ricerca" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:17 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:17 msgid "No host groups matching the filter" msgstr "Nessun gruppo di host soddisfa i criteri di ricerca" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:6 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:27 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:6 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:27 msgid "No hosts matching the filter" msgstr "Nessun host soddisfa i criteri di ricerca" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:53 msgid "No notification has been sent for this issue" msgstr "Nessuna notifica è stata inviata per questo problema" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:62 msgid "No notifications have been sent for this contact" msgstr "Nessuna notifica è stata inviata a questo contatto" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:21 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:21 msgid "No notifications matching the filter" msgstr "Nessuna notifica soddisfa i criteri di ricerca" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:17 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:17 msgid "No service groups matching the filter" msgstr "Nessun gruppo di servizi soddisfa i criteri di ricerca" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:32 msgid "No services configured on this host" msgstr "Nessun servizio configurato per questo host" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:6 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:6 msgid "No services matching the filter" -msgstr "Nessun servizio soddisfa i criteri di ricerca" +msgstr "Nessun Servizio soddisfa i criteri di ricerca" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:69 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventgrid.phtml:69 msgid "No state changes in the selected time period." -msgstr "Nessun cambio di stato nel periodo di tempo selezionato" +msgstr "Nessun cambio di stato nel intervallo di tempo selezionato" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:10 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:10 msgid "No such contact" msgstr "Nessun contatto trovato" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:55 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:55 msgid "None" msgstr "Niente" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:23 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml:23 msgid "Not acknowledged" msgstr "Non Confermato" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:47 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:41 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:41 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:52 msgid "Notification" msgstr "Notifica" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:344 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:342 msgid "Notification Start" msgstr "Partenza Notifica" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:165 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:76 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:63 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:73 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:75 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:10 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:46 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:329 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:346 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:444 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:482 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:489 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:171 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:331 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:429 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:472 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:479 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:325 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:44 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:76 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:66 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:2 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:127 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/monitoringfeatures.phtml:129 msgid "Notifications" msgstr "Notifiche" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:13 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:13 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:61 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:85 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:61 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:85 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:13 msgid "Notifications Disabled" msgstr "Notifiche Disabilitate" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:121 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:124 msgid "Notifications Enabled" msgstr "Notifiche Abilitate" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:15 msgid "Notifications and Problems" msgstr "Notifiche e Problemi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:52 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:328 +#, fuzzy +msgid "Notifications and average reaction time per hour." +msgstr "Notifiche e problemi per ora" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:469 +msgid "Notifications and defects per hour" +msgstr "Notifiche e problemi per ora" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:56 msgid "Notifications sent to this contact" msgstr "Notifiche inviate a questo contatto" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:73 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:76 #, php-format msgid "Notifications will be re-enabled in %s" msgstr "Le notifiche saranno riabilitate in %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/disable-notifications.phtml:11 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/disable-notifications.phtml:11 #, php-format msgid "Notifications will be re-enabled in %s." msgstr "Le notifiche saranno riabilitate in %s." -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:216 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:20 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:70 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:70 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:70 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:70 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:178 msgid "OK" msgstr "OK" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:61 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:217 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:60 msgctxt "icinga.state" msgid "OK" msgstr "OK" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:73 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:72 msgid "Object summaries" msgstr "Riepilogo Oggetti" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:97 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:97 msgid "Object type" msgstr "Tipo Oggetto" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:54 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:57 msgid "Obsessing" msgstr "Modalità Ossessiva" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:141 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:144 msgid "Obsessing Over Hosts" msgstr "Modalità Ossessiva sugli Host" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:150 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:153 msgid "Obsessing Over Services" msgstr "Modalità Ossessiva sui Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:625 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:636 msgid "Occurence" msgstr "Occorrenze" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:121 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:247 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:250 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:121 msgid "Ok" msgstr "Ok" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:95 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:95 msgid "Old instance name missing" -msgstr "Vecchio nome istanza mancante" +msgstr "Nome vecchia istanza mancante" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:97 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:100 msgid "Old monitoring backend name missing" -msgstr "Vecchio backend di monitoraggio mancante" +msgstr "Nome del vecchio backend di monitoraggio mancante" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:100 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:544 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:536 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:98 msgid "One day" msgstr "Un giorno" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:102 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:546 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:538 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:100 msgid "One month" msgstr "Un mese" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:101 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:545 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:537 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:99 msgid "One week" msgstr "Una settimana" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:103 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:547 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:539 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:101 msgid "One year" msgstr "Un anno" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:73 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:72 msgid "Output" -msgstr "Output del Plugin" +msgstr "Output" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:125 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:131 msgid "Overview" msgstr "Panoramica" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:228 -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:184 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:84 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:76 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:76 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:80 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:76 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:76 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:182 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:190 msgid "PENDING" -msgstr "ATTESA" +msgstr "PENDING" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:142 -msgid "PHP Module: Sockets" -msgstr "Modulo PHP: Sockets" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:28 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:32 msgid "Pager" msgstr "Recapito" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:381 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:379 msgid "Pager Address / Number" msgstr "Numero di telefono" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:45 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:48 msgid "Passive Checks" msgstr "Controlli Passivi" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:159 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:162 msgid "Passive Host Checks Being Accepted" msgstr "Accetta Controlli Passivi sugli Host" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:168 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:171 msgid "Passive Service Checks Being Accepted" msgstr "Accetta Controlli Passivi sui Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:151 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:150 msgid "Passive checks" msgstr "Controlli passivi" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:112 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:112 msgid "Password" msgstr "Password" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:66 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:66 msgid "Path to the Icinga command file on the remote Icinga instance" msgstr "Percorso del command file di Icinga nell'istanza remota" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/LocalInstanceForm.php:32 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/LocalInstanceForm.php:32 msgid "Path to the local Icinga command file" msgstr "Percorso del command file locale di Icinga" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:82 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:81 msgid "Performance Data" msgstr "Dati di Performance" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:177 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:180 msgid "Performance Data Being Processed" msgstr "Accetta i Dati di Performance" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:71 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:70 msgid "Performance Info" -msgstr "Dettagli Performance" +msgstr "Informazioni sulle Performance" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/perfdata.phtml:3 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/perfdata.phtml:3 msgid "Performance data" msgstr "Dati di Performance" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:60 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:55 msgid "Persistent" msgstr "Persistente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:64 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:61 msgid "Persistent Comment" msgstr "Commento Persistente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:34 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:16 msgid "" "Please configure below how Icinga Web 2 should retrieve monitoring " "information." @@ -2168,13 +2711,13 @@ msgstr "" "Definire di seguito come Icinga Web 2 recupererà le informazioni del " "monitoraggio." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/InstancePage.php:34 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/InstancePage.php:16 msgid "Please define the settings specific to your monitoring instance below." msgstr "" "Definire di seguito le impostazioni specifiche della vostra istanza di " "monitoraggio." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:42 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:16 msgid "" "Please fill out the connection details below to access the IDO database of " "your monitoring environment." @@ -2182,7 +2725,7 @@ msgstr "" "Compilare di seguito i dettagli della connessione per accedere al database " "IDO del vostro ambiente di monitoraggio." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:42 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:16 msgid "" "Please fill out the connection details below to access the Livestatus socket " "interface for your monitoring environment." @@ -2190,16 +2733,16 @@ msgstr "" "Compilare di seguito i dettagli della connessione per accedere al socket " "Livestatus del vostro ambiente di monitoraggio." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/output.phtml:2 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/output.phtml:2 msgid "Plugin Output" msgstr "Output del Plugin" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:100 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:42 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:42 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:100 msgid "Port" msgstr "Porta" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/selectioninfo.phtml:2 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/selectioninfo.phtml:2 msgctxt "multiselection" msgid "" "Press and hold the Ctrl key while clicking on rows to select multiple rows " @@ -2208,616 +2751,795 @@ msgstr "" "Tenere premuto il tasto CTRL durante i Click per selezionare più righe o " "tenere premuto SHIFT per selezionare righe contigue." -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:90 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:96 msgid "Problems" msgstr "Problemi " -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:20 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:19 msgid "Process Info" -msgstr "Dettagli Processo" +msgstr "Informazioni sul Processo" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:26 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:16 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:27 msgid "Process check result" -msgstr "Invia Risultato Passivo" +msgstr "Output del risultato" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:113 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:111 msgid "Processing check result.." msgid_plural "Processing check results.." -msgstr[0] "Schedulazione del Controllo in corso..." -msgstr[1] "Schedulazione dei Controlli in corso..." +msgstr[0] "Invio risultato.." +msgstr[1] "Invio risultati" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:24 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:23 msgid "Program Start Time" msgstr "Ora Avvio del Programma" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:52 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:56 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:56 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/SecurityStep.php:52 msgid "Protected Custom Variables" msgstr "Variabili Riservate" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:217 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checksource.phtml:14 +msgid "Reachable" +msgstr "Raggiungibile" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:223 msgid "Recently Recovered Services" msgstr "Servizi Ripristinati Recentemente" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:76 msgid "Remote" msgstr "Remoto" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:203 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:203 msgid "Remote Command File" msgstr "Command File Remoto" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:58 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:58 msgid "Remote Host" msgstr "Host Remoto" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:62 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:62 msgid "Remote SSH Port" msgstr "Porta SSH Remota" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:66 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/InstanceStep.php:66 msgid "Remote SSH User" msgstr "Utente SSH Remoto" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:15 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:47 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:59 msgid "Remove" msgstr "Rimuovi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/removebackend.phtml:4 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:86 msgid "Remove Existing Backend" msgstr "Rimuovi Backend Esistente" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/removeinstance.phtml:4 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ConfigController.php:122 msgid "Remove Existing Instance" msgstr "Rimuovi Istanza Esistente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/RemoveAcknowledgementCommandForm.php:30 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:42 +#, php-format +msgid "Remove monitoring backend %s" +msgstr "Rimuovi backend di monitoraggio %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:86 +#, php-format +msgid "Remove monitoring instance %s" +msgstr "Rimuovi istanza di monitoraggio %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/RemoveAcknowledgementCommandForm.php:30 msgid "Remove problem acknowledgement" msgid_plural "Remove problem acknowledgements" -msgstr[0] "Rimozione della conferma del Problema" -msgstr[1] "Rimozione della conferma dei Problemi" +msgstr[0] "Rimuovi la Conferma del Problema" +msgstr[1] "Rimuovi le Conferme del Problema" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/RemoveAcknowledgementCommandForm.php:48 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/RemoveAcknowledgementCommandForm.php:48 msgid "Removing problem acknowledgement.." msgid_plural "Removing problem acknowledgements.." -msgstr[0] "Rimozione della Conferma del problema in corso..." -msgstr[1] "Rimozione delle Conferme dei problemi in corso..." +msgstr[0] "Rimozione Conferma in corso.." +msgstr[1] "Rimozione Conferme in corso.." -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:549 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:541 msgid "Report interval" msgstr "Intervallo del Report" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:190 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:196 msgid "Reporting" msgstr "Reportistica" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:44 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:32 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:45 msgid "Reschedule" msgstr "Rischedula" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostController.php:91 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:95 msgid "Reschedule Host Check" msgstr "Rischedula il Controllo dell'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostsController.php:185 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:196 msgid "Reschedule Host Checks" msgstr "Rischedula i Controlli dell'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:68 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:72 msgid "Reschedule Service Check" -msgstr "Rischedula il Controlli del Servizio" +msgstr "Rischedula il Controllo del Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:234 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:245 msgid "Reschedule Service Checks" -msgstr "Rischedulaz i Controlli del Servizio" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:35 -msgid "Reschedule host checks" -msgstr "Rischedula i Controlli dell'Host" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:23 -msgid "Reschedule service checks" msgstr "Rischedula i Controlli del Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:229 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:17 +#, php-format +msgid "Reschedule the next check for all %u hosts" +msgstr "Rischedula il prossimo controllo per tutti i %u host" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:17 +#, php-format +msgid "Reschedule the next check for all %u services" +msgstr "Rischedula il prossimo controllo per tutti i %u servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:240 msgid "Resource" msgstr "Risorsa" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:88 -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:123 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:88 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:123 msgid "Resource Name" msgstr "Nome Risorsa" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:158 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:158 #, php-format msgid "Resource configuration could not be udpated: %s; An error occured:" -msgstr "Impossibile aggiornare la configurazione della Risorsa: %s; Errore:" +msgstr "La configurazione della risorsa non può essere aggiornata: %s; Errore:" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:155 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:155 #, php-format msgid "Resource configuration has been successfully updated: %s" -msgstr "Configurazione della risorsa aggiornata con successo: %s" +msgstr "Configurazione Risorsa aggiornata correttamente: %s" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:61 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:65 msgid "Restrict hosts view to the hosts that match the filter" -msgstr "" -"Restringe la vista agli Host e Servizi che soddisfano i criteri di ricerca" +msgstr "Restringi la vista degli host a quelli che soddisfano il filtro" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:66 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:70 msgid "Restrict services view to the services that match the filter" -msgstr "" -"Restringe la vista agli Host e Servizi che soddisfano i criteri di ricerca" +msgstr "Restringi la vista dei servizi a quelli che soddisfano il filtro" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:43 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:43 msgid "SSH port to connect to on the remote Icinga instance" msgstr "Porta SSH da usare per la connessione all'istanza Icinga remota" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:30 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:27 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:20 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:30 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:27 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/SecurityConfigForm.php:20 msgid "Save Changes" msgstr "Salva Modifiche" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostController.php:102 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:107 msgid "Schedule Host Downtime" -msgstr "Schedula Manutenzione dell'Host" +msgstr "Pianifica Manutenzione all'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostsController.php:196 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:208 msgid "Schedule Host Downtimes" -msgstr "Schedula Manutenzioni dell'Host" +msgstr "Pianifica Manutenzioni dell'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:79 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:84 msgid "Schedule Service Downtime" -msgstr "Schedula Manutenzione del Servizio" +msgstr "Pianifica Manutenzione al Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:245 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:257 msgid "Schedule Service Downtimes" -msgstr "Schedula Manutenzioni del Servizio" +msgstr "Pianifica Manutenzioni del Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:24 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:55 +#, fuzzy, php-format +msgid "Schedule a downtime for %u unhandled host problem" +msgid_plural "Schedule a downtime for %u unhandled host problems" +msgstr[0] "Pianifica Manutenzione per %u Problema dell'Host Non Gestito" +msgstr[1] "Pianifica Manutenzione per %u Problemi degli'Host Non Gestiti" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:55 +#, fuzzy, php-format +msgid "Schedule a downtime for %u unhandled service problem" +msgid_plural "Schedule a downtime for %u unhandled service problems" +msgstr[0] "Pianifica Manutenzione per %u Problema del Servizio Non Gestito" +msgstr[1] "Pianifica Manutenzione per %u Problemi del Servizio Non Gestiti" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:23 +#, php-format +msgid "Schedule a downtime for all %u hosts" +msgstr "Pianifica manutenzione per tutti i %u host" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:23 +#, php-format +msgid "Schedule a downtime for all %u services" +msgstr "Pianifica manutenzione per tutti i %u servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:15 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:28 +msgid "" +"Schedule a downtime to suppress all problem notifications within a specific " +"period of time" +msgstr "" +"Pianifica una manutenzione per disabilitare le notifiche per un periodo di " +"tempo specifico" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:34 msgid "Schedule check" msgid_plural "Schedule checks" -msgstr[0] "Schedula Controllo" -msgstr[1] "Schedula Controlli" +msgstr[0] "Rischedula Controllo" +msgstr[1] "Rischedula Controlli" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostCheckCommandForm.php:28 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostCheckCommandForm.php:28 msgid "Schedule check for all services on the hosts and the hosts themselves." -msgstr "" -"Schedula Controllo per tutti i servizi negli host e per gli host stessi." +msgstr "Schedula Controllo per l'host e tutti i suoi servizi." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:34 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:20 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:47 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/downtime.phtml:21 msgid "Schedule downtime" msgid_plural "Schedule downtimes" -msgstr[0] "Schedula Manutenzione" -msgstr[1] "Schedula Manuenzioni" +msgstr[0] "Pianifica Manutenzione" +msgstr[1] "Pianifica Manutenzioni" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:68 -#, fuzzy, php-format -msgid "Schedule downtime for %u unhandled host problem" -msgid_plural "Schedule downtimes for %u unhandled host problems" -msgstr[0] "Schedula Manutenzione per Host con Problemi Non Gestiti" -msgstr[1] "Schedula Manutenzione per Host con Problemi Non Gestiti" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:56 -#, fuzzy, php-format -msgid "Schedule downtime for %u unhandled service problem" -msgid_plural "Schedule downtimes for %u unhandled service problems" -msgstr[0] "Schedula Manutenzione per Host con Problemi Non Gestiti" -msgstr[1] "Schedula Manutenzione per Host con Problemi Non Gestiti" - -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:31 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:30 msgid "" "Schedule downtime for all services on the hosts and the hosts themselves." -msgstr "" -"Schedula Manutenzione per tutti i servizi negli host e per gli host stessi." +msgstr "PIanifica Manutenzione per l'host e tutti i suoi servizi." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:77 -msgid "Schedule downtime for unhandled host problem" -msgid_plural "Schedule downtimes for unhandled host problems" -msgstr[0] "Schedula Manutenzione per Host con Problemi Non Gestiti" -msgstr[1] "Schedula Manutenzione per Host con Problemi Non Gestiti" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:65 -msgid "Schedule downtime for unhandled service problem" -msgid_plural "Schedule downtimes for unhandled service problems" -msgstr[0] "Schedula Manutenzione per Host con Problemi Non Gestiti" -msgstr[1] "Schedula Manutenzione per Host con Problemi Non Gestiti" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:42 -msgid "Schedule host downtimes" -msgstr "Schedula Manutenzione Host" - -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:44 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:43 msgid "Schedule non-triggered downtime for all child hosts" -msgstr "Schedula Manutenzione non collegata per tutti gli Host figli" +msgstr "Pianifica Manutenzione non dipendente per tutti gli Host figli" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:30 -msgid "Schedule service downtimes" -msgstr "Schedula Manutenzione Sevizio" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:52 +msgid "Schedule the next active check at a different time than the current one" +msgstr "Schedula il prossimo controllo ad un orario diverso da quello corrente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:43 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:43 +msgid "Schedule the next active check to run immediately" +msgstr "Schedula il prossimo controllo per essere eseguito immediatamente" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:42 msgid "Schedule triggered downtime for all child hosts" -msgstr "Schedula Manutenzione dipendente per tutti gli Host figli" +msgstr "Pianifica Manutenzione dipendente per tutti gli Host figli" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:310 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:304 msgid "Scheduled End" -msgstr "Fine Schedulazione" +msgstr "Fine" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:309 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:303 msgid "Scheduled Start" -msgstr "Inizio Schedulazione" +msgstr "Inizio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:70 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/CheckNowCommandForm.php:72 msgid "Scheduling check.." msgid_plural "Scheduling checks.." -msgstr[0] "Schedulazione del Controllo in corso..." -msgstr[1] "Schedulazione dei Controlli in corso..." +msgstr[0] "Schedulando Controllo.." +msgstr[1] "Schedulando Controlli.." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostCheckCommandForm.php:52 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostCheckCommandForm.php:51 msgid "Scheduling host check.." msgid_plural "Scheduling host checks.." -msgstr[0] "Schedulazione del Controllo dell'Host in corso..." -msgstr[1] "Schedulazione dei Controlli dell'Host in corso..." +msgstr[0] "Schedulando Controllo dell'Host.." +msgstr[1] "Schedulando Controlli dell'Host.." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:88 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleHostDowntimeCommandForm.php:86 msgid "Scheduling host downtime.." msgid_plural "Scheduling host downtimes.." -msgstr[0] "Schedulazione della Manutenzione dell'Host in corso..." -msgstr[1] "Schedulazione delle Manutenzioni degli Host in corso..." +msgstr[0] "Pianificando Manutenzione Host.." +msgstr[1] "Pianificando Manutenzioni Host.." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:104 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:100 msgid "Scheduling service check.." msgid_plural "Scheduling service checks.." -msgstr[0] "Schedulazione del Controllo del Servizio in corso..." -msgstr[1] "Schedulazione dei Controlli del Servizio in corso..." +msgstr[0] "Schedulando Controllo del Servizio.." +msgstr[1] "Schedulando Controlli del Servizio.." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:211 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:207 msgid "Scheduling service downtime.." msgid_plural "Scheduling service downtimes.." -msgstr[0] "Schedulazione della Manutenzione del Servizio in corso..." -msgstr[1] "Schedulazione delle Manutenzioni del Servizio in corso..." +msgstr[0] "Pianifica Manutenzione Sevizio.." +msgstr[1] "Pianifica Manutenzione Sevizi.." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:126 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:80 +msgid "Security" +msgstr "Sicurezza" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:131 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:232 +msgid "Send Custom Host Notification" +msgstr "Invia Notifica Personalizzata per l'Host" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:108 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:281 +msgid "Send Custom Service Notification" +msgstr "Invia Notifica Personalizzata per il Servizio" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:123 msgid "Send Notification" msgstr "Invia Notifica" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:62 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:36 +#, php-format +msgid "Send a custom notification for all %u hosts" +msgstr "Invia notifica personalizzata per tutti i %u host" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:36 +#, php-format +msgid "Send a custom notification for all %u services" +msgstr "Invia notifica personalizzata per tutti i %u servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:25 +msgid "" +"Send a custom notification, share information about the object to contacts." +msgstr "" +"Invia una notifica personalizzata, condividi le informazioni dell'oggetto " +"con i contatti." + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:28 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:24 +#, php-format +msgid "Send a mail to %s" +msgstr "Invia e-mail a %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:34 +msgid "Send custom notification" +msgid_plural "Send custom notifications" +msgstr[0] "Invia Notifica Personalizzata" +msgstr[1] "Invia Notifica Personalizzata" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:106 +msgid "Send custom notification.." +msgid_plural "Send custom notifications.." +msgstr[0] "Invia Notifica Personalizzata.." +msgstr[1] "Invia Notifica Personalizzata.." + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:18 +msgid "Send notification" +msgstr "Invia Notifica" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:62 #, php-format msgid "Sent to %s" -msgstr "" +msgstr "Inviata a %s" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:189 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/command/objects-command-form.phtml:13 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/service/object-header.phtml:34 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:304 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:488 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ShowController.php:215 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:298 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:491 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:226 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:45 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/command/objects-command-form.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/object-header.phtml:34 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:201 msgid "Service" msgstr "Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/service/objects-header.phtml:7 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/objects-header.phtml:7 +#, php-format msgid "Service (%u)" msgid_plural "Services (%u)" -msgstr[0] "Servizi (%u)" +msgstr[0] "Servizio (%u)" msgstr[1] "Servizi (%u)" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:142 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:162 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:141 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:161 msgid "Service Checks" -msgstr "Controlli Servizio" +msgstr "Controlli Servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:113 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:635 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:119 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:646 msgid "Service Grid" -msgstr "Griglia dei Servizi" +msgstr "Griglia Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:25 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:25 msgid "Service Group" msgstr "Gruppo di Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:539 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:239 +msgid "Service Group Chart" +msgstr "Grafico dei Gruppi di Servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:546 msgid "Service Group Name" msgstr "Nome del Gruppo di Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:504 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:509 msgid "Service Groups" msgstr "Gruppi di Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:230 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:224 msgid "Service Name" msgstr "Nome Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:382 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:380 msgid "Service Notification Timeperiod" -msgstr "Periodo delle Notifiche per i Servizi" +msgstr "Periodo per le Notifiche del Servizio" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:109 -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:213 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:55 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:115 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:219 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:77 msgid "Service Problems" msgstr "Servizi con Problemi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:228 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:222 msgid "Service Severity" -msgstr "Griglia dei Servizi" +msgstr "Impatto" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:79 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:197 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:80 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:202 msgid "Service State" msgstr "Stato Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:27 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:27 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:27 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:27 msgid "Service States" -msgstr "Stato dei Servizi" +msgstr "Stati Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:647 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:658 msgid "Service description" msgstr "Descrizione Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/service/show.phtml:3 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/service/show.phtml:3 msgid "Service detail information" -msgstr "Dettagli del Servizio" +msgstr "Dettagli Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:32 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:33 msgid "Service not found" msgstr "Servizio non trovato" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:42 msgid "Service notification period" msgstr "Periodo per le Notifiche del Servizio" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:85 -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:141 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml:14 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:91 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:147 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml:17 msgid "Servicegroups" msgstr "Gruppi di Servizi" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:83 -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:137 -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:199 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:100 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:28 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:8 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:22 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:38 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:97 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:240 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:177 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ShowController.php:225 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:96 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:89 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:143 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:243 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:171 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:101 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:240 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:100 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:96 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/contact.phtml:42 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/hostservicechecks.phtml:8 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/ok_hosts.phtml:50 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/problem_hosts.phtml:48 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:215 msgid "Services" msgstr "Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:543 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:593 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:550 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:600 msgid "Services CRITICAL" msgstr "Servizi CRITICAL" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:541 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:591 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:548 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:598 msgid "Services OK" msgstr "Servizi OK" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:545 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:595 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:552 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:602 msgid "Services PENDING" msgstr "Servizi in ATTESA" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:542 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:592 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:549 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:599 msgid "Services UNKNOWN" msgstr "Servizi UNKNOWN" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:544 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:594 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:551 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:601 msgid "Services WARNING" msgstr "Servizi WARNING" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:20 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:84 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:15 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:80 -#, php-format -msgid "Services with state %s" -msgstr "Servizi in stato %s" - -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:56 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:53 msgid "Set the date and time when the check should be scheduled." msgstr "Impostare la data e l'ora dell'esecuzione del controllo." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:92 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:89 msgid "Set the end date and time for the downtime." msgstr "Impostare la data e l'ora della fine della manutenzione." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:51 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:44 msgid "Set the expire time." -msgstr "Impostare la l'ora di scadenza." +msgstr "Impostare l'ora di scadenza." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:82 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:79 msgid "Set the start date and time for the downtime." msgstr "Impostare la date e l'ora d'inizio della manutenzione." -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:96 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:97 msgid "Setup the monitoring module for Icinga Web 2" -msgstr "Installa il modulo di monitoraggio per Icinga Web 2" +msgstr "Configura il modulo di monitoraggio per Icinga Web 2!" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:138 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:538 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:588 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:132 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:545 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:595 msgid "Severity" msgstr "Impatto" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:253 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:256 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:231 +#, php-format +msgid "Show all event records of host %s" +msgstr "Mostra tutti gli eventi dell'host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:252 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:227 +#, php-format +msgid "Show all event records of service %s on host %s" +msgstr "Mostra tutti gli eventi del servizio %s dell'host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TacticalController.php:15 +msgid "" +"Show an overview of all hosts and services, their current states and " +"monitoring feature utilisation" +msgstr "" +"Mostra una panoramica di tutti gli host e servizi, il loro stato corrente e " +"le funzionalità utilizzate" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contactgroups.phtml:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/contacts.phtml:23 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:36 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/contacts.phtml:11 +#, php-format +msgid "Show detailed information about %s" +msgstr "Mostra informazioni dettagliate per %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:208 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Link.php:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:104 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:120 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:183 +#, php-format +msgid "Show detailed information for host %s" +msgstr "Mostra informazioni dettagliate per l'host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:222 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Link.php:60 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:93 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:112 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:151 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php:197 +#, php-format +msgid "Show detailed information for service %s on host %s" +msgstr "Mostra informazioni dettagliate per il servizio %s dell'host %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ProcessController.php:26 +msgid "" +"Show information about the current monitoring instance's process and it's " +"performance as well as available features" +msgstr "" +"Mostra le informazioni riguardo lo stato del processo dell'istanza attiva, " +"le sue performance e le funzionalità disponibili" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:41 +msgid "" +"Show recent alerts and visualize notifications and problems based on their " +"amount and chronological distribution" +msgstr "" +"Mostra allarmi recenti e visualizza le notifiche e i problemi rispetto alle " +"occorrenze e alla distribuzione cronologica" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:259 msgid "Show resource configuration" msgstr "Mostra la configurazione della risorsa" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:92 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:92 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:77 +#, php-format +msgid "Show summarized information for %u hosts" +msgstr "Mostra lista informazioni per %u host" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:98 +#, php-format +msgid "Show summarized information for %u services" +msgstr "Mostra lista informazioni per %u servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:390 +msgid "Show the Event Grid" +msgstr "Mostra Griglia Eventi" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:646 +msgid "Show the Service Grid" +msgstr "Mostra la Griglia Servizi" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:258 +#, php-format +msgid "Show the configuration of the %s resource" +msgstr "Mostra configurazione per la risorsa %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:21 +msgid "Show the number of historical event records grouped by time and type" +msgstr "Mostra il numero di eventi dello storico raggruppati per ora e tipo" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/IdoResourcePage.php:75 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/LivestatusResourcePage.php:76 msgid "Skip Validation" msgstr "Salta la Verifica" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:127 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:127 msgid "Socket" msgstr "Socket" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:10 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:5 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:12 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:13 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:12 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:7 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:7 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:12 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:14 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:5 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/eventhistory.phtml:13 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:7 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:12 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegrid.phtml:10 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:7 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:14 msgid "Sort by" msgstr "Ordina per" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:93 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:94 msgctxt "setup.welcome.btn.next" msgid "Start" -msgstr "Inizio" +msgstr "Inizia" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:81 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:307 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:301 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:78 msgid "Start Time" msgstr "Ora Inizio" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:66 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:64 msgid "Started downtimes" -msgstr "Manutenzioni Iniziate" +msgstr "Manutenzione iniziate" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:43 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:43 msgid "Starts" -msgstr "Inizi" +msgstr "Inizio" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:115 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:135 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:115 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:135 msgid "State" msgstr "Stato" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:46 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/EventOverviewForm.php:46 msgid "State Changes" msgstr "Cambi di Stato" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:54 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:53 msgid "Status" msgstr "Stato" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:114 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:111 msgid "Sticky Acknowledgement" msgstr "Commento Permanente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:21 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:31 msgid "Submit Passive Check Result" msgid_plural "Submit Passive Check Results" -msgstr[0] "Controlli Passivi" -msgstr[1] "Controlli Passivi" +msgstr[0] "Invia Risultato Passivo all'Host" +msgstr[1] "Invia Risultati Passivo all'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostController.php:113 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostController.php:119 msgid "Submit Passive Host Check Result" -msgstr "Accetta Controlli Passivi sugli Host" +msgstr "Invia Risultato Passivo all'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/HostsController.php:207 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/HostsController.php:220 msgid "Submit Passive Host Check Results" -msgstr "Accetta Controlli Passivi sugli Host" +msgstr "Invia Risultato Passivo all'Host" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:90 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServiceController.php:96 msgid "Submit Passive Service Check Result" -msgstr "Accetta Controlli Passivi sui Servizi" +msgstr "Invia Risultato Passivo al Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:256 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ServicesController.php:269 msgid "Submit Passive Service Check Results" -msgstr "Accetta Controlli Passivi sui Servizi" +msgstr "Invia Risultato Passivo al Servizio" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:37 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:49 -msgid "Submit passive check results" -msgstr "%d è controllato passivamente" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/command.phtml:13 +#, php-format +msgid "Submit a one time or so called passive result for the %s check" +msgstr "Invia risultato passivo per %s controlli" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:202 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/hosts/show.phtml:29 +#, php-format +msgid "Submit a passive check result for all %u hosts" +msgstr "Invia risultato passivo per tutti i %u host" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/services/show.phtml:29 +#, php-format +msgid "Submit a passive check result for all %u services" +msgstr "Invia risultato passivo per tutti i %u servizi" + +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:208 msgid "System" msgstr "Sistema" -# rivedere -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:129 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TacticalController.php:14 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:135 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TacticalController.php:18 msgid "Tactical Overview" msgstr "Visuale Tattica" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:149 -msgid "The PHP Module sockets is available." -msgstr "Il modulo sockets di PHP è disponibile" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:169 +msgid "" +"The Zend database adapter for MySQL is required to access a MySQL database." +msgstr "" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:150 -msgid "The PHP Module sockets is not available." -msgstr "Il modulo sockets di PHP non è disponibile" +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:189 +msgid "" +"The Zend database adapter for PostgreSQL is required to access a PostgreSQL " +"database." +msgstr "" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:218 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:63 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:227 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:46 msgid "The data source used for retrieving monitoring information" msgstr "" "La sorgente dei dati usati per recuperare le informazioni di monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/DataView/DataView.php:338 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/DataView/DataView.php:338 #, php-format msgid "The filter column \"%s\" is not allowed here." -msgstr "Il filtro della colonna \"%s\" non è ammesso." +msgstr "Il filtro \"%s\" non è ammesso." -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:59 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:60 msgid "The given resource name is already in use." -msgstr "Il Nome Risorsa fornito è già in uso." +msgstr "Il nome risorsa fornito è già in uso." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:208 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:46 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:217 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/BackendPage.php:29 msgid "The identifier of this backend" msgstr "L'identificatore per questo backend" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:25 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/notifications.phtml:46 #, php-format msgid "The last one occured %s ago" msgstr "L'ultimo si è verificato %s fa" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ShowController.php:122 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ShowController.php:122 msgid "The parameter `contact' is required" msgstr "Il parametro `contatto' è richiesto" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:84 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:83 msgid "" "The performance data of this check result. Leave empty if this check result " "has no performance data" msgstr "" +"Dati di performance per questo controllo. Lasciare vuoto se il controllo non " +"ha dati performance." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:74 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:73 msgid "The plugin output of this check result" -msgstr "L'ouput del plugin per questo controllo" +msgstr "Output del risultato del controllo" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:230 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:241 msgid "The resource to use" msgstr "La risorsa da usare" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/DataView/DataView.php:247 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/DataView/DataView.php:247 #, php-format msgid "The sort column \"%s\" is not allowed in \"%s\"." -msgstr "La colonna di ordinamento \"%s\" non è permessa in \"%s\"." +msgstr "Non è possibile oridinare per colonna \"%s\" in \"%s\"." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:55 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:54 msgid "The state this check result should report" -msgstr "" +msgstr "Stato da riportare nel risultato del controllo" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:91 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php:91 #, php-format msgid "There is no \"%s\" monitoring backend" -msgstr "Nessun backend di monitoraggio \"%s\" trovato" +msgstr "Backend di Monitoraggio \"%s\" non trovato" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:17 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/history.phtml:17 msgid "This Object's Event History" msgstr "Storico degli Eventi" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:34 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:22 msgid "" "This command is used to acknowledge host or service problems. When a problem " "is acknowledged, future notifications about problems are temporarily " @@ -2827,19 +3549,19 @@ msgstr "" "problema è Confermato le notifiche saranno temporaneamente disabilitate fino " "al ripristino dell'host o servizio." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:32 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AddCommentCommandForm.php:19 msgid "This command is used to add host or service comments." msgstr "Questo comando serve ad aggiungere commenti agli host o ai servizi." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:33 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/DisableNotificationsExpireCommandForm.php:26 msgid "" "This command is used to disable host and service notifications for a " "specific time." msgstr "" -"Questo comando serve a disabilitare le notifiche degli host e servizi per un " +"Questo comando serve a disabilitare le notifiche di host e servizi per un " "periodo di tempo specifico." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:45 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:33 msgid "" "This command is used to schedule host and service downtimes. During the " "specified downtime, Icinga will not send notifications out about the hosts " @@ -2847,132 +3569,154 @@ msgid "" "notifications for the hosts and services as it normally would. Scheduled " "downtimes are preserved across program shutdowns and restarts." msgstr "" -"Questo comando serve a schedulare la manutenzione di un host o servizio. " +"Questo comando serve a pianificare la manutenzione di un host o servizio. " "Durante la Manutenzione, Icinga sopprimerà eventuali notifiche. Allo scadere " "della Manutenzione Icinga invierà le notifche per host e servizi come " "farebbe normalmente. Le Manutenzioni schedulate saranno preservate da " "eventuali arresti o riavvii dell'ambiente." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:35 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceCheckCommandForm.php:23 msgid "" "This command is used to schedule the next check of hosts or services. Icinga " "will re-queue the hosts or services to be checked at the time you specify." msgstr "" "Questo comando serve a schedulare l'esecuzione del prossimo controllo " -"dell'host o servizio. Icinga sposterà controllo per l'host o servizio " +"dell'host o servizio. Icinga eseguirà il controllo per l'host o servizio " "all'orario specificato." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:32 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/SendCustomNotificationCommandForm.php:21 +msgid "" +"This command is used to send custom notifications for hosts or services." +msgstr "" +"Questo comando serve ad inviare notifiche personalizzate per host o servizi." + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:20 msgid "This command is used to submit passive host or service check results." -msgstr "Questo comando serve ad aggiungere commenti agli host o ai servizi." +msgstr "" +"Questo comando serve ad inviare risultati passivi all'host o al servizio." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:76 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:76 msgid "This comment does not expire." -msgstr "Questo commento non scade." +msgstr "Questo commento ha scadenza." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:73 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:73 #, php-format msgid "This comment expires on %s at %s." msgstr "Questo commento scade il %s alle %s." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:69 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:69 msgid "This comment is not persistent." msgstr "Questo Commento non è permanente." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:68 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:68 msgid "This comment is persistent." msgstr "Questo Commento è permanente." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:107 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:107 +#, php-format msgid "" "This fixed host downtime has been scheduled to start on %s at %s and to end " "on %s at %s." msgstr "" -"Questa Manutenzione Rigida è stata schedulata per iniziare il %s alle %s e " -"finire il %s alle %s." +"Questa Manutenzione Rigida dell'Host è stata pianificata per iniziare il %s " +"alle %s e finire il %s alle %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:97 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:97 +#, php-format msgid "" "This fixed host downtime was started on %s at %s and expires on %s at %s." msgstr "" -"Questa Manutenzione Rigida è iniziata il %s alle %s e finirà il %s alle %s." +"Questa Manutenzione Rigida dell'Host è iniziata il %s alle %s e finirà il %s " +"alle %s." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:106 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:106 +#, php-format msgid "" "This fixed service downtime has been scheduled to start on %s at %s and to " "end on %s at %s." msgstr "" -"Questa Manutenzione Rigida è stata schedulata per iniziare il %s alle %s e " -"finire il %s alle %s." +"Questa Manutenzione Rigida del Servizio è stata pianificata per iniziare il " +"%s alle %s e finire il %s alle %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:96 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:96 +#, php-format msgid "" "This fixed service downtime was started on %s at %s and expires on %s at %s." msgstr "" -"Questa Manutenzione Rigida è iniziata il %s alle %s e finirà il %s alle %s." +"Questa Manutenzione Rigida del Servizio è iniziata il %s alle %s e finirà il " +"%s alle %s." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:86 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:86 +#, php-format msgid "" "This flexible host downtime has been scheduled to start between %s - %s and " "to last for %s." msgstr "" -"Questa Manutenzione Flessibile è stata schedulata per iniziare tra %s -%s e " -"durare per %s" +"Questa Manutenzione Flessibile dell'Host è stata pianificata per iniziare " +"tra %s -%s e durare per %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:75 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:75 +#, php-format msgid "" -"This flexible host downtime was started on %s at %s and lasts for %s until %" -"s at %s." +"This flexible host downtime was started on %s at %s and lasts for %s until " +"%s at %s." msgstr "" -"Questa Manutenzione Flessibile è iniziata il %s alle %s e durerà per %s fino " -"al %s alle %s." +"Questa Manutenzione Flessibile dell'Host è iniziata il %s alle %s e durerà " +"per %s fino al %s alle %s." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:85 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:85 +#, php-format msgid "" "This flexible service downtime has been scheduled to start between %s - %s " "and to last for %s." msgstr "" -"Questa Manutenzione Flessibile è stata schedulata per iniziare tra %s -%s e " -"durare per %s" +"Questa Manutenzione Flessibile del Servizio è stata pianificata per iniziare " +"tra %s -%s e durare per %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:74 -#, fuzzy, php-format +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:74 +#, php-format msgid "" "This flexible service downtime was started on %s at %s and lasts for %s " "until %s at %s." msgstr "" -"Questa Manutenzione Flessibile è iniziata il %s alle %s e durerà per %s fino " -"al %s alle %s." +"Questa Manutenzione Flessibile del Servizio è iniziata il %s alle %s e " +"durerà per %s fino al %s alle %s." -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/WelcomePage.php:33 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/WelcomePage.php:33 msgid "This is the core module for Icinga Web 2." msgstr "Questo è il modulo principale per Icinga Web 2." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:22 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:22 msgid "Time to Reaction (Ack, Recover)" msgstr "Tempo di Reazione (Conferma, Ripristino)" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:105 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:103 msgid "TimeLine interval" -msgstr "Intervallo Cronologico" +msgstr "Intervallo" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:185 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:28 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:191 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:22 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/TimelineController.php:26 msgid "Timeline" msgstr "Cronologia" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:83 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:83 msgid "To" msgstr "A" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/SecurityPage.php:34 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:160 +msgid "" +"To access the IDO stored in a MySQL database the PDO-MySQL module for PHP is " +"required." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:180 +msgid "" +"To access the IDO stored in a PostgreSQL database the PDO-PostgreSQL module " +"for PHP is required." +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/SecurityPage.php:16 msgid "" "To protect your monitoring environment against prying eyes please fill out " "the settings below." @@ -2980,148 +3724,133 @@ msgstr "" "Per proteggere il tuo ambiente di monitoraggio da occhi indiscreti si prega " "di compilare i dettagli seguenti:" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:86 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:86 msgid "Today" msgstr "Oggi" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:130 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:216 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php:219 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:133 msgid "Toggling feature.." msgstr "Comando inviato..." -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:56 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:56 msgid "Top 5 Recent Alerts" msgstr "Ultimi 5 Allarmi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:26 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:26 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:540 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ListController.php:590 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:547 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ListController.php:597 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:26 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:26 msgid "Total Services" msgstr "Totale dei Servizi" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:29 msgid "Trend" msgstr "Trend" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:39 msgid "Trend for the last 24h" msgstr "Trend nelle ultime 24 ore" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:102 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ScheduleServiceDowntimeCommandForm.php:99 msgid "Type" msgstr "Tipo" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:25 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:57 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:31 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/config/index.phtml:75 #, php-format msgid "Type: %s" msgstr "Tipo: %s" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:225 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:40 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:58 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:40 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:40 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:40 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:58 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:187 msgid "UNKNOWN" msgstr "UNKNOWN" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:64 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:156 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:63 msgctxt "icinga.state" msgid "UNKNOWN" msgstr "UNKNOWN" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:181 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:179 msgid "UNREACHABLE" -msgstr "IRRAGGIUNGIBILE" +msgstr "UNREACHABLE" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:59 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:58 msgctxt "icinga.state" msgid "UNREACHABLE" msgstr "UNREACHABLE" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:175 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Host.php:173 msgid "UP" msgstr "UP" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:57 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:56 msgctxt "icinga.state" msgid "UP" msgstr "UP" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:5 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:5 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:49 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:71 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hosts.phtml:49 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/services.phtml:71 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/host/statusicons.phtml:5 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/partials/service/statusicons.phtml:5 msgid "Unhandled" msgstr "Non Gestiti" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:95 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:101 msgid "Unhandled Hosts" msgstr "Host Non Gestiti" -#: /usr/share/icingaweb2/modules/monitoring/configuration.php:100 +#: /usr/local/icingaweb2/modules/monitoring/configuration.php:106 msgid "Unhandled Services" msgstr "Servizi Non Gestiti" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:29 -msgid "Unhandled hosts with state DOWN" -msgstr "Host Non Gestiti in stato DOWN" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/hostssummary.phtml:54 -msgid "Unhandled hosts with state UNREACHABLE" -msgstr "Host Non Gestiti in stato IRRAGGIUNGIBILE" - -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/partials/host/servicesummary.phtml:51 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/servicesummary.phtml:47 -#, php-format -msgid "Unhandled services with state %s" -msgstr "Servizi Non Gestiti in stato %s" - -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:120 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:268 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:271 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:120 msgid "Unknown" msgstr "Unknown" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:141 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:141 msgid "Unknown instance name given" msgstr "Nome Istanza sconosciuto" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:99 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:121 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:99 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/InstanceConfigForm.php:121 msgid "Unknown instance name provided" msgstr "Nome istanza sconosciuto" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:101 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:123 -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:169 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:104 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:126 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/BackendConfigForm.php:172 msgid "Unknown monitoring backend provided" msgstr "Backend di monitoraggio sconosciuto" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:140 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:315 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:321 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:140 msgid "Unreachable" -msgstr "Irraggiungibile" +msgstr "Unreachable" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:138 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:301 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:307 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:138 msgid "Up" -msgstr "Su" +msgstr "Up" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:75 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/AcknowledgeProblemCommandForm.php:72 msgid "Use Expire Time" msgstr "Scadenza" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:52 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:52 msgid "User" msgstr "Utente" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:30 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/comments.phtml:30 msgid "User Comment" msgstr "Commento dell'Utente" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:54 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Config/Instance/RemoteInstanceForm.php:54 msgid "" "User to log in as on the remote Icinga instance. Please note that key-based " "SSH login must be possible for this user" @@ -3129,513 +3858,399 @@ msgstr "" "Utente per la connessione all'istanza remota di Icinga. Si fa notare che è " "l'utente può effettuare una autenticazione con chiave SSH." -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:108 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/BackendStep.php:108 msgid "Username" -msgstr "Nome Utente" +msgstr "Utente" -#: /usr/share/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 msgid "Value" msgstr "Valore" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:632 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:624 msgid "Value for interval not valid" msgstr "Intervallo non valido" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:219 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:46 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:64 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:46 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:64 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/hostgroups.phtml:64 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:46 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/servicegroups.phtml:64 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/Object/Service.php:181 msgid "WARNING" msgstr "WARNING" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:62 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:78 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/tactical/components/parts/servicestatesummarybyhoststate.phtml:86 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ProcessCheckResultCommandForm.php:61 msgctxt "icinga.state" msgid "WARNING" msgstr "WARNING" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:119 -#: /usr/share/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/ChartController.php:254 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/ChartController.php:257 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/StatehistoryForm.php:119 +#: /usr/local/icingaweb2/modules/monitoring/application/views/helpers/Perfdata.php:29 msgid "Warning" msgstr "Warning" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Setup/WelcomePage.php:21 +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Setup/WelcomePage.php:21 msgid "Welcome to the configuration of the monitoring module for Icinga Web 2!" msgstr "" "Benvenuto nella configurazione del modulo di monitoraggio per Icinga Web 2!" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:51 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:39 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checksource.phtml:17 +msgid "Yes" +msgstr "Si" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:166 +msgid "Zend database adapter for MySQL" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:186 +msgid "Zend database adapter for PostgreSQL" +msgstr "" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:51 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:39 #, php-format msgctxt "time" msgid "at %s" msgstr "alle %s" -#: /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:104 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:59 +#, php-format +msgctxt "timeline.link.title.datetime.twice" +msgid "between %s and %s" +msgstr "tra %s e %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/forms/Command/Object/ToggleObjectFeaturesCommandForm.php:107 msgid "changed" msgstr "modificato" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:199 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:182 msgid "down" msgstr "down" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:55 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:65 msgid "hard state" -msgstr "stato hard" +msgstr "hard" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:52 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:47 +#, fuzzy, php-format +msgctxt "timeline.link.title.month.and.year" +msgid "in %s" +msgstr "il %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:53 +#, fuzzy, php-format +msgctxt "timeline.link.title.year" +msgid "in %s" +msgstr "il %s" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:52 #, php-format msgctxt "timespan" msgid "in %s" msgstr "in %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:37 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:37 msgid "in the last hour" msgstr "nell'ultima ora" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:35 -msgid "notifications per hour" -msgstr "notifche per ora" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:40 +#, fuzzy, php-format +msgctxt "timeline.link.title.week.and.year" +msgid "in week %s of %s" +msgstr "nella settimana %s di %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:50 -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:38 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/alertsummary/index.phtml:35 +msgid "notifications per hour" +msgstr "notifiche per ora" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/downtimes.phtml:50 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/notifications.phtml:38 #, php-format msgctxt "datetime" msgid "on %s" msgstr "il %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:78 -msgid "overall" -msgstr "complessivi" +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/timeline/index.phtml:34 +#, fuzzy, php-format +msgctxt "timeline.link.title.time" +msgid "on %s" +msgstr "di %s" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/list/components/selectioninfo.phtml:5 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:77 +msgid "overall" +msgstr "complessivo" + +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/list/components/selectioninfo.phtml:5 msgctxt "multiselection" msgid "row(s) selected" msgstr "righe selezionate" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:79 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/process/info.phtml:78 msgid "scheduled" -msgstr "schedulati" +msgstr "schedulato" -#: /usr/share/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:53 +#: /usr/local/icingaweb2/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml:63 msgid "soft state" -msgstr "(stato soft)" +msgstr "soft" -#: /usr/share/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:49 +#: /usr/local/icingaweb2/modules/monitoring/library/Monitoring/MonitoringWizard.php:50 msgid "the monitoring module" msgstr "il modulo di monitoraggio" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:197 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:180 msgid "unchanged" -msgstr "iivariato" +msgstr "invariato" -#: /usr/share/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:201 +#: /usr/local/icingaweb2/modules/monitoring/application/controllers/AlertsummaryController.php:184 msgid "up" msgstr "up" -#~ msgid "Acknowledge all problems on the selected hosts or services" -#~ msgstr "Conferma tutti i problemi degli host o servizi selezionati" +#~ msgid "Send Custom Notification" +#~ msgstr "Invia Notifica Personalizzata" -#~ msgid "Acknowledge unhandled problem services" -#~ msgstr "Conferma i problemi non gestiti dei Servizi" +#~ msgid "Monitoring IDO Resource" +#~ msgstr "Risorsa IDO" -#~ msgid "Acknowledgement has been sent" -#~ msgstr "Conferma inviata" +#~ msgid "Monitoring Livestatus Resource" +#~ msgstr "Risorsa Livestatus" -#~ msgid "Acknowledgement removal has been requested" -#~ msgstr "Rimozione della Conferma in corso" - -#~ msgid "Allow all scheduling checks and downtimes" -#~ msgstr "Consenti la Schedulazione di Controlli e Manutenzioni" - -#~ msgid "Allow removing host and service downtimes" -#~ msgstr "Consenti la rimozione di Manutenzioni da Host e Servizi" +#~ msgid "%s on %s" +#~ msgstr "%s di %s" #~ msgid "" -#~ "Allow removing problem acknowledgements, host and service comments and " -#~ "downtimes" +#~ "Press and hold the Ctrl key while clicking on rows to select multiple " +#~ "rows or press and hold the Shift key to select a range of rows." #~ msgstr "" -#~ "Permitir a remoção de reconhecimento de problemas, comentários de hosts e " -#~ "de serviços e paradas" +#~ "Tenere premuto il tasto CTRL durante i Click per selezionare più righe o " +#~ "tenere premuto SHIFT per selezionare righe contigue." -#~ msgid "Command has been sent, active checks will be disabled" -#~ msgstr "Comando inviato, i Controlli Attivi saranno disabilitati" +#~ msgid "row(s) selected" +#~ msgstr "righe selezionate" -#~ msgid "Command has been sent, active checks will be enabled" -#~ msgstr "Comando inviato, i Controlli Attivi saranno abilitati" +#~ msgid "at %s" +#~ msgstr "alle %s" -#~ msgid "Command has been sent, check will be rescheduled" -#~ msgstr "Comando inviato, il Controllo sarà rischedulato" - -#~ msgid "Command has been sent, checks will be rescheduled" -#~ msgstr "Comando inviato, i Controlli saranno rischedulati" - -#~ msgid "Command has been sent, event handlers will be disabled" -#~ msgstr "Comando inviato, il Gestore Eventi sarà disabilitato" - -#~ msgid "Command has been sent, event handlers will be enabled" -#~ msgstr "Comando inviato, il Gestore Eventi sarà abilitato" - -# rivedere -#~ msgid "Command has been sent, flap detection will be disabled" -#~ msgstr "Comando inviato, il controllo di instabilità sarà disabilitato" - -#~ msgid "Command has been sent, flap detection will be enabled" -#~ msgstr "Comando inviato, il controllo di instabilità sarà abilitato" - -#~ msgid "Command has been sent, monitoring process will restart now" -#~ msgstr "Comando inviato, il processo di monitoraggio sarà riavviato" - -#~ msgid "Command has been sent, notifications will be disabled" -#~ msgstr "Comando inviato, le notifiche saranno disabilitate" - -#~ msgid "Command has been sent, notifications will be enabled" -#~ msgstr "Comando inviato, le notifiche saranno abilitate" - -#~ msgid "Command has been sent, obsessing will be disabled" -#~ msgstr "Comando inviato, la modalità ossessiva sarà disabilitata" - -#~ msgid "Command has been sent, obsessing will be enabled" -#~ msgstr "Comando inviato, la modalità ossessiva sarà abilitata" - -#~ msgid "Command has been sent, passive check results will be accepted" -#~ msgstr "" -#~ "Comando inviato, i risultati dei controlli passivi saranno accettati" - -#~ msgid "Command has been sent, passive check results will be refused" -#~ msgstr "Comando inviato, i risultati dei controlli passivi saranno ignorati" - -#~ msgid "Command has been sent, performance data processing will be disabled" -#~ msgstr "" -#~ "Comando inviato, la raccolta dei dati di performance sarà disabilitata" - -#~ msgid "Command has been sent, performance data processing will be enabled" -#~ msgstr "Comando inviato, la raccolta dei dati di performance sarà abilitata" - -#~ msgid "Command has been sent, process will shut down" -#~ msgstr "Comando inviato, il processo sarà arrestato" - -#~ msgid "Comment removal has been requested" -#~ msgstr "Richesta di rimozione del commento inviata" - -#~ msgid "Custom notification has been sent" -#~ msgstr "Notifica personalizza inviata" - -#~ msgid "Delay Notifications" -#~ msgstr "Posticipa Notifiche" - -#~ msgid "Delete Downtime" -#~ msgstr "Cancella Manutenzione" - -#~ msgid "Delete a single downtime with the id shown above" -#~ msgstr "Cancella la manutenzione con ID definito" - -#~ msgid "Disable Active Checks" -#~ msgstr "Disabilita i Controlli Attivi" - -#~ msgid "Disable Event Handler" -#~ msgstr "Disabilita il Gestore Eventi" - -#~ msgid "Disable Flapping Detection" -#~ msgstr "Disabilita il Controllo Instabilità" - -#~ msgid "Disable Performance Data" -#~ msgstr "Disabilita i Dati di Performance" - -#~ msgid "Disable active checks for this host and its services." -#~ msgstr "Disabilita i controlli attivi per questo host e relativi servizi." - -#~ msgid "Disable active checks for this object." -#~ msgstr "Disabilita i controlli attivi per questo oggetto." - -#~ msgid "Disable active checks on a program-wide basis." -#~ msgstr "Disabilita i controlli attivi sull'intero sistema" - -#~ msgid "Disable event handler for the whole system." -#~ msgstr "Disabilita il Gestore Eventi sull'intero sistema." - -#~ msgid "Disable event handler for this object." -#~ msgstr "Disabilita il Gestore Eventi per questo oggetto." - -#~ msgid "Disable flapping detection for this object." -#~ msgstr "Disabilita il Controllo di Instabilità per questo oggetto." - -#~ msgid "Disable flapping detection on a program-wide basis." -#~ msgstr "Disabilita il Controllo di Instabilità per l'intero sistema." - -#~ msgid "Disable notifications on a program-wide basis." -#~ msgstr "Disabilita le notifiche sull'intero sistema" - -#~ msgid "Disable obsessing on a program-wide basis." -#~ msgstr "Disabilita la modalità ossessiva su tutto il sistema." - -#~ msgid "Disable passive checks on a program-wide basis." -#~ msgstr "Disabilita i controlli passivi sull'intero sistema" - -#~ msgid "Disable processing of performance data on a program-wide basis." -#~ msgstr "Disabilita la raccolta dei dati di performance sull'intero sistema" - -#~ msgid "Downtime removal has been requested" -#~ msgstr "Cancellazione della Manutenzione in corso" - -#~ msgid "Downtime removal requested" -#~ msgstr "Richiesta di cancellazione Manutenzione" - -#~ msgid "Downtime scheduling requested" -#~ msgstr "Schedulazione di Manutenzione richiesta" - -#~ msgid "Enable Active Checks" -#~ msgstr "Abilita Controlli Attivi" - -#~ msgid "Enable Event Handler" -#~ msgstr "Abilita Gestore Eventi" - -#~ msgid "Enable Flapping Detection" -#~ msgstr "Abilita il Controllo Instabilità" - -#~ msgid "Enable Notifications" -#~ msgstr "Abilita Notifiche" - -#~ msgid "Enable Performance Data" -#~ msgstr "Abilita i Dati di Performance" - -#~ msgid "Enable active checks for this host and its services." -#~ msgstr "Abilita i controlli attivi per questo host e relativi servizi" - -#~ msgid "Enable active checks for this object." -#~ msgstr "Abilita i controlli attivi per questo oggetto" - -#~ msgid "Enable active checks on a program-wide basis." -#~ msgstr "Abilita i controlli attivi sull'intero sistema" - -#~ msgid "Enable event handler for this object." -#~ msgstr "Abilita il gestore eventi per questo oggetto." - -#~ msgid "Enable event handlers on the whole system." -#~ msgstr "Abilita il gestore eventi sull'intero sistema." - -#~ msgid "Enable flapping detection for this object." -#~ msgstr "Abilita il controllo di instabilità per questo oggetto." - -#~ msgid "Enable flapping detection on a program-wide basis." -#~ msgstr "Abilita il controllo di instabilità su tutto il sistema." - -#~ msgid "Enable notifications on a program-wide basis." -#~ msgstr "Abilita le notifiche sull'intero sistema." - -#~ msgid "Enable obsessing on a program-wide basis." -#~ msgstr "Abilita la modalità ossessiva su tutto il sistema." - -#~ msgid "Enable passive checks on a program-wide basis." -#~ msgstr "Abilita i controlli passivi sull'intero sistema." - -#~ msgid "Enable processing of performance data on a program-wide basis." -#~ msgstr "" -#~ "Habilitar processamento de dados de performance na base de todo o " -#~ "programa." - -#~ msgid "Event handlers" -#~ msgstr "Gestori Eventi" - -#~ msgid "Flap detection" -#~ msgstr "Controllo Instabilità" - -#~ msgid "Hard State" -#~ msgstr "Stato Hard" - -#~ msgid "Host / Service" -#~ msgstr "Host / Servizio" - -#~ msgid "Host Name" -#~ msgstr "Nome Host" - -#~ msgid "Hosts Down Handled" -#~ msgstr "Host Down Gestiti" - -#~ msgid "Hosts Down Unhandled" -#~ msgstr "Host Down Non Gestiti" - -#~ msgid "Hosts Pending" -#~ msgstr "Host in Attesa" - -#~ msgid "Hosts Unreachable Handled" -#~ msgstr "Host Irraggiungibili Gestiti" - -#~ msgid "Hosts Unreachable Unhandled" -#~ msgstr "Host Irraggiungibili Non Gestiti" - -#~ msgid "Hosts Up" -#~ msgstr "Host Up" - -#~ msgid "Instance is not configured: %s" -#~ msgstr "Istanza non configurata: %s" - -#~ msgid "List Of Supported Commands" -#~ msgstr "Lista dei Comandi Supportati" - -#~ msgid "List all selected objects" -#~ msgstr "Mostra tutti gli oggetti selezionati" - -#~ msgid "No instances are configured yet" -#~ msgstr "Nessuna istanza ancora configurata" - -#~ msgid "Notification delay has been requested" -#~ msgstr "Posticipo di Notifica richiesta" - -#~ msgid "Notifications for this host and its services will be disabled." -#~ msgstr "" -#~ "Le notifiche per questo host e relativi servizi saranno disabilitate" - -#~ msgid "Notifications for this host and its services will be enabled." -#~ msgstr "Le notifiche per questo host e relativi servizi saranno abilitate" - -#~ msgid "Notifications for this object will be disabled." -#~ msgstr "Le notifiche per questo oggetto saranno disabilitate" - -#~ msgid "Notifications for this object will be enabled." -#~ msgstr "Le notifiche per questo oggetto saranno abilitate" +#~ msgid "Timeline Navigation" +#~ msgstr "Navigazione della Cronologia" #~ msgctxt "icinga.state" -#~ msgid "PENDING" -#~ msgstr "ATTESA" +#~ msgid "%d CRITICAL" +#~ msgid_plural "%d CRITICAL" +#~ msgstr[0] "%d CRITICAL" +#~ msgstr[1] "%d CRITICAL" -#~ msgid "Passive check result has been submitted" -#~ msgstr "Risultato passivo inviato" +#~ msgctxt "icinga.state" +#~ msgid "%d PENDING" +#~ msgid_plural "%d PENDING" +#~ msgstr[0] "%d Host PENDING" +#~ msgstr[1] "%d Host PENDING" -#~ msgid "Passive checks for this object will be accepted." -#~ msgstr "I Controlli Passivi per questo oggetto saranno accettati" +#~ msgctxt "icinga.state" +#~ msgid "%d UNKNOWN" +#~ msgid_plural "%d UNKNOWN" +#~ msgstr[0] "%d UNKNOWN" +#~ msgstr[1] "%d UNKNOWN" -#~ msgid "Passive checks for this object will be omitted." -#~ msgstr "I Controlli Passivi per questo oggetto saranno scartati" +#~ msgid "%d are not checked at all" +#~ msgstr "%d non sono stati controllati" -#~ msgid "Remove Comments" +#~ msgid "%d are passively checked" +#~ msgstr "%d sono controllati passivamente" + +#~ msgid "%d critical on %s" +#~ msgstr "%d critical il %s" + +#~ msgid "%d down on %s" +#~ msgstr "%d down di %s" + +#~ msgid "%d ok on %s" +#~ msgstr "%d ok di %s" + +#~ msgid "%d unknown on %s" +#~ msgstr "%d unknown di %s" + +#~ msgid "%d unreachable on %s" +#~ msgstr "%d unreachable di %s" + +#~ msgid "%d warning on %s" +#~ msgstr "%d warning di %s" + +#~ msgid "%s notifications have been sent for this issue" +#~ msgstr "%s notifiche inviate per questo problema" + +#~ msgid "A notification has been sent for this issue %s ago" +#~ msgstr "Una notifica è stata inviata per questo problema %s fa" + +#~ msgid "Acknowledge unhandled host problem" +#~ msgid_plural "Acknowledge unhandled host problems" +#~ msgstr[0] "Conferma il Problema dell'Host Non Gestito" +#~ msgstr[1] "Conferma i Problemi dell'Host Non Gestiti" + +#~ msgid "Acknowledge unhandled service problem" +#~ msgid_plural "Acknowledge unhandled service problems" +#~ msgstr[0] "Conferma il Problema del Servizio Non Gestito" +#~ msgstr[1] "Conferma i Problemi del Servizio Non Gestiti" + +#~ msgid "Delete comment" #~ msgstr "Rimuovi Commento" -#~ msgid "Remove Downtime(s)" +#~ msgid "Delete downtime" #~ msgstr "Cancella Manutenzione" -#~ msgid "Remove Problem Acknowledgement" -#~ msgstr "Rimuovi Conferma del Problema" +#~ msgid "Handled hosts with state DOWN" +#~ msgstr "Host Gestiti in stato DOWN" -#~ msgid "Remove comment" -#~ msgstr "Rimuovi commento" +#~ msgid "Handled hosts with state UNREACHABLE" +#~ msgstr "Host Gestiti con stato UNREACHABLE" -#~ msgid "Remove downtime(s) from this host and its services." -#~ msgstr "Cancella manutenzione da questo host e relativi servizi" +#~ msgid "Handled services with state %s" +#~ msgstr "Servizi Gestiti con stato %s" -#~ msgid "Remove problem acknowledgement for this object." -#~ msgstr "Rimuovi Conferma del problema da questo oggetto." +#~ msgid "Hosts with state PENDING" +#~ msgstr "Host in stato PENDING" -#~ msgid "Reset Attributes" -#~ msgstr "Reimposta Attributi" +#~ msgid "Hosts with state UP" +#~ msgstr "Host in stato UP" -#~ msgid "Reset modified attributes to its default." -#~ msgstr "Reimposta gli attributi modificati con i valori predefiniti" +#~ msgid "List %s service with status critical handled in service group %s" +#~ msgid_plural "" +#~ "List %s services with status critical handled in service group %s" +#~ msgstr[0] "" +#~ "Mostra %s servizio in stato critical gestito nel gruppo di servizi %s" +#~ msgstr[1] "" +#~ "Mostra %s servizi in stato critical gestiti nel gruppo di servizi %s" -#~ msgid "Restart monitoring process" -#~ msgstr "Riavvia processo di monitoraggio" +#~ msgid "List %s service with status critical unhandled in service group %s" +#~ msgid_plural "" +#~ "List %s Services with status critical unhandled in service group %s" +#~ msgstr[0] "" +#~ "Mostra %s servizio in stato critical non gestito nel gruppo di servizi %s" +#~ msgstr[1] "" +#~ "Mostra %s servizi in stato critical non gestiti nel gruppo di servizi %s" -#~ msgid "Restart the monitoring process." -#~ msgstr "Riavvia il processo di monitoraggio." +#~ msgid "List %s service with status ok in service group %s" +#~ msgid_plural "List %s Services with status ok in service group %s" +#~ msgstr[0] "Mostra %s servizio in stato ok nel gruppo di servizi %s" +#~ msgstr[1] "Mostra %s servizi in stato ok nel gruppo di servizi %s" -#~ msgid "Schedule downtimes for unhandled problem services" -#~ msgstr "Schedula Manutenzione per Servizi con Problemi Non Gestiti" +#~ msgid "List %s service with status unknown handled in service group %s" +#~ msgid_plural "" +#~ "List %s services with status unknown handled in service group %s" +#~ msgstr[0] "" +#~ "Mostra %s servizio in stato unknown gestito nel gruppo di servizi %s" +#~ msgstr[1] "" +#~ "Mostra %s servizi in stato unknown gestiti nel gruppo di servizi %s" -#~ msgid "Services CRITICAL Handled" -#~ msgstr "Servizi CRITICAL Gestiti" +#~ msgid "List %s service with status unknown unhandled in service group %s" +#~ msgid_plural "" +#~ "List %s services with status unknown unhandled in service group %s" +#~ msgstr[0] "" +#~ "Mostra %s servizio in stato unknown non gestito nel gruppo di servizi %s" +#~ msgstr[1] "" +#~ "Mostra %s servizi in stato unknown non gestiti nel gruppo di servizi %s" -#~ msgid "Services CRITICAL Unhandled" -#~ msgstr "Servizi CRITICAL Non Gestiti" +#~ msgid "List %s service with status warning unhandled in service group %s" +#~ msgid_plural "" +#~ "List %s services with status warning unhandled in service group %s" +#~ msgstr[0] "" +#~ "Mostra %s servizio in stato warning non gestito nel gruppo di servizi %s" +#~ msgstr[1] "" +#~ "Mostra %s servizi in stato warning non gestiti nel gruppo di servizi %s" -#~ msgid "Services Critical Handled" -#~ msgstr "Servizi Critical Gestiti" +#~ msgid "List %u host which is in downtime" +#~ msgid_plural "List %u hosts which are in downtime" +#~ msgstr[0] "Mostra %u host in manutenzione" +#~ msgstr[1] "Mostra %u host in manutenzione" -#~ msgid "Services Critical Unhandled" -#~ msgstr "Servizi Critical Non Gestiti" +#~ msgid "List %u service with status critical handled in host group %s" +#~ msgid_plural "" +#~ "List %u services with status critical handled in host group %s" +#~ msgstr[0] "" +#~ "Mostra %u servizio in stato critical gestito nel gruppo di host %s" +#~ msgstr[1] "" +#~ "Mostra %u servizi in stato critical gestiti nel gruppo di host %s" -#~ msgid "Services Ok" -#~ msgstr "Servizi Ok" +#~ msgid "List %u service with status pending in host group %s" +#~ msgid_plural "List %u services with status pending in host group %s" +#~ msgstr[0] "Mostra %u servizio in stato pending nel gruppo di host %s" +#~ msgstr[1] "Mostra %u servizi in stato pending nel gruppo di host %s" -#~ msgid "Services Pending" -#~ msgstr "Servizi in Attesa" +#~ msgid "List %u service with status unknown handled in host group %s" +#~ msgid_plural "List %u services with status unknown handled in host group %s" +#~ msgstr[0] "" +#~ "Mostra %u servizio in stato unknown gestito nel gruppo di host %s" +#~ msgstr[1] "Mostra %u servizi in stato unknown gestiti nel gruppo di host %s" -#~ msgid "Services UNKNOWN Handled" -#~ msgstr "Servizi UNKNOWN Gestiti" +#~ msgid "List %u service with status unknown unhandled in host group %s" +#~ msgid_plural "" +#~ "List %u services with status unknown unhandled in host group %s" +#~ msgstr[0] "" +#~ "Mostra %u servizio in stato unknown non gestito nel gruppo di host %s" +#~ msgstr[1] "" +#~ "Mostra %u servizi in stato unknown non gestiti nel gruppo di host %s" -#~ msgid "Services UNKNOWN Unhandled" -#~ msgstr "Servizi UNKNOWN Non Gestiti" +#~ msgid "List %u service with status warning handled in host group %s" +#~ msgid_plural "List %u services with status warning handled in host group %s" +#~ msgstr[0] "" +#~ "Mostra %u servizio in stato warning gestito nel gruppo di host %s" +#~ msgstr[1] "Mostra %u servizi in stato warning gestiti nel gruppo di host %s" -#~ msgid "Services Unknown Handled" -#~ msgstr "Servizi Unknown Gestiti" +#~ msgid "List %u service with status warning unhandled in host group %s" +#~ msgid_plural "" +#~ "List %u services with status warning unhandled in host group %s" +#~ msgstr[0] "" +#~ "Mostra %u servizio in stato warning non gestito nel gruppo di host %s" +#~ msgstr[1] "" +#~ "Mostra %u servizi in stato warning non gestiti nel gruppo di host %s" -#~ msgid "Services Unknown Unhandled" -#~ msgstr "Servizi Unknown Non Gestiti" +#~ msgid "List all" +#~ msgstr "Mostra tutto" -#~ msgid "Services WARNING Handled" -#~ msgstr "Servizi WARNING Gestiti" +#~ msgid "PHP Module: Sockets" +#~ msgstr "Modulo PHP: Sockets" -#~ msgid "Services WARNING Unhandled" -#~ msgstr "Servizi WARNING Non Gestiti" +#~ msgid "Reschedule host checks" +#~ msgstr "Rischedula i Controlli dell'Host" -#~ msgid "Services Warning Handled" -#~ msgstr "Servizi Warning Gestiti" +#~ msgid "Reschedule service checks" +#~ msgstr "Rischedula i Controlli del Servizio" -#~ msgid "Services Warning Unhandled" -#~ msgstr "Servizi Warning Non Gestiti" +#~ msgid "Schedule downtime for unhandled host problem" +#~ msgid_plural "Schedule downtimes for unhandled host problems" +#~ msgstr[0] "Pianifica Manutenzione per il Problema dell'Host Non Gestito" +#~ msgstr[1] "Pianifica Manutenzione per i Problemi degli Host Non Gestiti" -#~ msgid "Shutdown monitoring process" -#~ msgstr "Arresta il processo di monitoraggio" +#~ msgid "Schedule downtime for unhandled service problem" +#~ msgid_plural "Schedule downtimes for unhandled service problems" +#~ msgstr[0] "Pianifica Manutenzione per il Problema del Servizio Non Gestito" +#~ msgstr[1] "Pianifica Manutenzione per i Problemi del Servizio Non Gestiti" -#~ msgid "Start Accepting Passive Checks" -#~ msgstr "Accetta Risultati Passivi" +#~ msgid "Schedule host downtimes" +#~ msgstr "Pianifica Manutenzione Host" -#~ msgid "Start obsessing" -#~ msgstr "Avvia Modalità Ossessiva" +#~ msgid "Schedule service downtimes" +#~ msgstr "Pianifica Manutenzione Sevizio" -#~ msgid "Start obsessing over this object." -#~ msgstr "Abilita la Modalità Ossessiva su questo oggetto." +#~ msgid "Services with state %s" +#~ msgstr "Servizi in stato %s" -#~ msgid "Stop Accepting Passive Checks" -#~ msgstr "Rifiuta Risultati Passivi" +#~ msgid "Submit passive check results" +#~ msgstr "Invia Risultato Passivo" -#~ msgid "" -#~ "Stop monitoring instance. You have to start it again from command line." -#~ msgstr "" -#~ "Arresta l'istanza di monitoraggio. Sarà necessario ri-avviarla da linea " -#~ "di comando." +#~ msgid "The PHP Module sockets is available." +#~ msgstr "Il modulo PHP Sockets è disponibile" -#~ msgid "Stop obsessing" -#~ msgstr "Ferma Modalità Ossessiva" +#~ msgid "The PHP Module sockets is not available." +#~ msgstr "Il modulo PHP Sockets non è disponibile" -#~ msgid "Stop obsessing over this object." -#~ msgstr "Ferma la Modalità Ossessiva su questo oggetto." +#~ msgid "Unhandled hosts with state DOWN" +#~ msgstr "Host Non Gestiti in stato DOWN" -#~ msgid "Your new comment has been submitted" -#~ msgstr "Il nuovo commento è stato inviato" +#~ msgid "Unhandled hosts with state UNREACHABLE" +#~ msgstr "Host Non Gestiti in stato UNREACHABLE" -#~ msgid "critical" -#~ msgstr "critical" +#~ msgid "Unhandled services with state %s" +#~ msgstr "Servizi Non Gestiti in stato %s" -#~ msgid "ok" -#~ msgstr "ok" - -#~ msgid "on" -#~ msgstr "il" - -#~ msgid "pending" -#~ msgstr "in attesa" - -#~ msgid "since" -#~ msgstr "da" - -#~ msgid "unknown" -#~ msgstr "unknown" - -#~ msgid "unreachable" -#~ msgstr "irraggiungibile" - -#~ msgid "warning" -#~ msgstr "warning" +#~ msgid "Comment: " +#~ msgstr "Commento: " diff --git a/modules/monitoring/application/views/helpers/CheckPerformance.php b/modules/monitoring/application/views/helpers/CheckPerformance.php index 355be8c20..d72dee491 100644 --- a/modules/monitoring/application/views/helpers/CheckPerformance.php +++ b/modules/monitoring/application/views/helpers/CheckPerformance.php @@ -9,7 +9,7 @@ class Zend_View_Helper_CheckPerformance extends Zend_View_Helper_Abstract /** * Create dispatch instance * - * @return self + * @return $this */ public function checkPerformance() { diff --git a/modules/monitoring/application/views/helpers/Customvar.php b/modules/monitoring/application/views/helpers/Customvar.php index 42fcd5b02..bb9f70a7e 100644 --- a/modules/monitoring/application/views/helpers/Customvar.php +++ b/modules/monitoring/application/views/helpers/Customvar.php @@ -6,7 +6,7 @@ class Zend_View_Helper_Customvar extends Zend_View_Helper_Abstract /** * Create dispatch instance * - * @return self + * @return $this */ public function checkPerformance() { @@ -15,8 +15,12 @@ class Zend_View_Helper_Customvar extends Zend_View_Helper_Abstract public function customvar($struct) { - if (is_string($struct) || is_int($struct) || is_float($struct)) { - return $this->view->escape((string) $struct); + if (is_scalar($struct)) { + return $this->view->escape( + is_string($struct) + ? $struct + : var_export($struct, true) + ); } elseif (is_array($struct)) { return $this->renderArray($struct); } elseif (is_object($struct)) { @@ -38,7 +42,7 @@ class Zend_View_Helper_Customvar extends Zend_View_Helper_Abstract protected function renderObject($object) { - if (empty($object)) { + if (0 === count((array) $object)) { return '{}'; } $out = "{
    \n"; diff --git a/modules/monitoring/application/views/helpers/Perfdata.php b/modules/monitoring/application/views/helpers/Perfdata.php index 41d903a2f..36cbaa319 100644 --- a/modules/monitoring/application/views/helpers/Perfdata.php +++ b/modules/monitoring/application/views/helpers/Perfdata.php @@ -1,32 +1,37 @@ asArray(); - $results = array(); $table = array( '' . implode( '', - array('', t('Label'), t('Value'), t('Min'), t('Max'), t('Warning'), t('Critical')) + array( + '', + $this->view->translate('Label'), + $this->view->translate('Value'), + $this->view->translate('Min'), + $this->view->translate('Max'), + $this->view->translate('Warning'), + $this->view->translate('Critical') + ) ) . '' ); foreach ($pieChartData as $perfdata) { @@ -42,12 +47,12 @@ class Zend_View_Helper_Perfdata extends Zend_View_Helper_Abstract } $row .= ''; - if (!$compact) { + if (! $compact) { foreach ($perfdata->toArray() as $value) { if ($value === '') { $value = '-'; } - $row .= '' . (string)$value . ''; + $row .= '' . (string) $value . ''; } } @@ -55,17 +60,15 @@ class Zend_View_Helper_Perfdata extends Zend_View_Helper_Abstract $table[] = $row; } } - if ($limit > 0) { - $count = max (count($table), count ($results)); - $table = array_slice ($table, 0, $limit); - $results = array_slice ($results, 0, $limit); + $count = max(count($table), count($results)); + $table = array_slice($table, 0, $limit); + $results = array_slice($results, 0, $limit); if ($count > $limit) { - $mess = sprintf(t('%d more ...'), $count - $limit); + $mess = sprintf($this->view->translate('%d more ...'), $count - $limit); $results[] = '...'; } } - if ($compact) { return join('', $results); } else { diff --git a/modules/monitoring/application/views/helpers/RuntimeVariables.php b/modules/monitoring/application/views/helpers/RuntimeVariables.php index dfb590f45..9134a9711 100644 --- a/modules/monitoring/application/views/helpers/RuntimeVariables.php +++ b/modules/monitoring/application/views/helpers/RuntimeVariables.php @@ -9,7 +9,7 @@ class Zend_View_Helper_RuntimeVariables extends Zend_View_Helper_Abstract /** * Create dispatch instance * - * @return self + * @return $this */ public function runtimeVariables() { diff --git a/modules/monitoring/application/views/scripts/alertsummary/index.phtml b/modules/monitoring/application/views/scripts/alertsummary/index.phtml index 3281f3ec8..d96ca5bdc 100644 --- a/modules/monitoring/application/views/scripts/alertsummary/index.phtml +++ b/modules/monitoring/application/views/scripts/alertsummary/index.phtml @@ -1,43 +1,33 @@ +compact): ?>
    - tabs ?> -
    -

    - translate('Filters'); ?> -

    + tabs; ?> +
    - widget('limiter') ?> - paginationControl($notifications, null, null, array('preserve' => $this->preserve)) ?> + limiter; ?> + paginator; ?>
    - +
    -

    - translate('Alert summary'); ?> -

    +
    -

    - translate('Notifications and Problems'); ?> -

    +

    translate('Notifications and Problems'); ?>

    render(); ?>
    -

    - translate('Time to Reaction (Ack, Recover)'); ?> -

    +

    translate('Time to Reaction (Ack, Recover)'); ?>

    render(); ?>
    -

    - translate('Trend'); ?> -

    +

    translate('Trend'); ?>

    @@ -64,30 +54,24 @@
    recentAlerts): ?> -

    - translate('Top 5 Recent Alerts'); ?> -

    +

    translate('Top 5 Recent Alerts'); ?>

    partial('list/notifications.phtml', array( 'notifications' => $this->recentAlerts, - 'compact' => true, - 'inline' => true + 'compact' => true )); ?>
    -

    - translate('History'); ?> -

    +

    translate('History'); ?>

    partial('list/notifications.phtml', array( 'notifications' => $this->notifications, - 'compact' => true, - 'inline' => true + 'compact' => true )); ?>
    diff --git a/modules/monitoring/application/views/scripts/comment/remove.phtml b/modules/monitoring/application/views/scripts/comment/remove.phtml new file mode 100644 index 000000000..73f8c68a8 --- /dev/null +++ b/modules/monitoring/application/views/scripts/comment/remove.phtml @@ -0,0 +1,11 @@ +
    + + compact): ?> + tabs; ?> + + + render('partials/downtime/downtime-header.phtml'); ?> +
    +
    + +
    diff --git a/modules/monitoring/application/views/scripts/comment/show.phtml b/modules/monitoring/application/views/scripts/comment/show.phtml new file mode 100644 index 000000000..8216a9c70 --- /dev/null +++ b/modules/monitoring/application/views/scripts/comment/show.phtml @@ -0,0 +1,81 @@ +
    + compact): ?> + tabs; ?> + + +
    + render('partials/comment/comment-header.phtml'); ?> +
    +
    +
    + +

    translate('Comment detail information') ?>

    + + + + comment->objecttype === 'service'): ?> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    translate('Service') ?> + icon('service', $this->translate('Service')); ?> + link()->service( + $this->comment->service_description, + $this->comment->service_display_name, + $this->comment->host_name, + $this->comment->host_display_name + ); + ?> + translate('Host') ?> + icon('host', $this->translate('Host')); ?> + link()->host( + $this->comment->host_name, + $this->comment->host_display_name + ); + ?> +
    translate('Author') ?>icon('user', $this->translate('User')) ?> escape($this->comment->author) ?>
    translate('Persistent') ?>escape($this->comment->persistent) ? $this->translate('Yes') : $this->translate('No') ?>
    translate('Created') ?>escape($this->comment->timestamp)) ?>
    translate('Expires') ?> + comment->expiration ? sprintf( + $this->translate('This comment expires on %s at %s.'), + date('d.m.y', $this->comment->expiration), + date('H:i', $this->comment->expiration) + ) : $this->translate('This comment does not expire.'); + ?> +
    translate('Commands') ?> + +
    + +
    + diff --git a/modules/monitoring/application/views/scripts/comments/delete-all.phtml b/modules/monitoring/application/views/scripts/comments/delete-all.phtml new file mode 100644 index 000000000..698c4eea7 --- /dev/null +++ b/modules/monitoring/application/views/scripts/comments/delete-all.phtml @@ -0,0 +1,12 @@ +
    + + compact): ?> + tabs; ?> + + + render('partials/comment/comments-header.phtml'); ?> +
    + +
    + +
    diff --git a/modules/monitoring/application/views/scripts/comments/show.phtml b/modules/monitoring/application/views/scripts/comments/show.phtml new file mode 100644 index 000000000..6298749b2 --- /dev/null +++ b/modules/monitoring/application/views/scripts/comments/show.phtml @@ -0,0 +1,34 @@ +
    + compact): ?> + tabs; ?> + + +
    + render('partials/comment/comments-header.phtml'); ?> +
    +
    + +
    +

    icon('reschedule') ?> translate('Commands') ?>

    +

    + translate('Issue commands to all %s selected comments.'), + '' . count($comments) . '' + ) + ?> +

    + qlink( + sprintf( + $this->translate('Remove all %d scheduled comments'), + count($comments) + ), + $removeAllLink, + null, + array( + 'icon' => 'trash', + 'title' => $this->translate('Remove all selected comments.') + ) + ) ?> +
    +

    +
    diff --git a/modules/monitoring/application/views/scripts/downtime/remove.phtml b/modules/monitoring/application/views/scripts/downtime/remove.phtml new file mode 100644 index 000000000..57fe36655 --- /dev/null +++ b/modules/monitoring/application/views/scripts/downtime/remove.phtml @@ -0,0 +1,11 @@ +
    + + compact): ?> + tabs; ?> + + + render('partials/downtime/downtime-header.phtml'); ?> +
    +
    + +
    \ No newline at end of file diff --git a/modules/monitoring/application/views/scripts/downtime/show.phtml b/modules/monitoring/application/views/scripts/downtime/show.phtml new file mode 100644 index 000000000..aed35b9ac --- /dev/null +++ b/modules/monitoring/application/views/scripts/downtime/show.phtml @@ -0,0 +1,121 @@ +
    + compact): ?> + tabs; ?> + + + render('partials/downtime/downtime-header.phtml'); ?> +
    +
    +

    translate('Downtime detail information') ?>

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + downtime->is_flexible): ?> + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + isService ? $this->translate('Service') : $this->translate('Host') ?> + + isService): ?> + link()->service( + $downtime->service_description, + $downtime->service_display_name, + $downtime->host_name, + $downtime->host_display_name + ); + $icon = $this->icon('service', $this->translate('Service')); + ?> + + icon('host', $this->translate('Host')); + $link = $this->link()->host($downtime->host_name, $downtime->host_display_name) + ?> + + + +
    translate('Author') ?>icon('user', $this->translate('User')) ?> escape($this->downtime->author_name) ?>
    translate('Comment') ?>icon('comment', $this->translate('Comment')) ?> escape($this->downtime->comment) ?>
    translate('Entry Time') ?> escape($this->downtime->entry_time)) ?>
    escape( + $this->downtime->is_flexible ? + $this->translate('Flexible') : $this->translate('Fixed') + ); ?> + escape( + $this->downtime->is_flexible ? + $this->translate('Flexible downtimes have a hard start and end time,' + . ' but also an additional restriction on the duration in which ' + . ' the host or service may actually be down.') : + $this->translate('Fixed downtimes have a static start and end time.') + ); ?> +
    translate('Scheduled start') ?>downtime->scheduled_start) ?>
    translate('Scheduled end') ?>downtime->scheduled_end) ?>
    translate('Duration') ?>format()->duration($this->escape($this->downtime->duration)); ?>
    translate('Actual start time') ?>start); ?>
    translate('Actual end time') ?>end); ?>
    translate('In effect') ?> + escape( + $this->downtime->is_in_effect ? + $this->translate('Yes') : $this->translate('No') + ); + ?> +
    translate('Commands') ?> + +
    + +
    + diff --git a/modules/monitoring/application/views/scripts/downtimes/delete-all.phtml b/modules/monitoring/application/views/scripts/downtimes/delete-all.phtml new file mode 100644 index 000000000..fed0e12f7 --- /dev/null +++ b/modules/monitoring/application/views/scripts/downtimes/delete-all.phtml @@ -0,0 +1,12 @@ +
    + + compact): ?> + tabs; ?> + + + render('partials/downtime/downtimes-header.phtml'); ?> +
    + +
    + +
    \ No newline at end of file diff --git a/modules/monitoring/application/views/scripts/downtimes/show.phtml b/modules/monitoring/application/views/scripts/downtimes/show.phtml new file mode 100644 index 000000000..35edc04f4 --- /dev/null +++ b/modules/monitoring/application/views/scripts/downtimes/show.phtml @@ -0,0 +1,33 @@ +
    + + compact): ?> + tabs; ?> + + + render('partials/downtime/downtimes-header.phtml'); ?> +

    +
    +
    +

    icon('reschedule') ?> translate('Commands') ?>

    +

    + translate('Issue commands to all %s selected downtimes.'), + '' . count($downtimes) . '' + ) + ?> +

    + qlink( + sprintf( + $this->translate('Remove all %d scheduled downtimes'), + count($downtimes) + ), + $removeAllLink, + null, + array( + 'icon' => 'trash', + 'title' => $this->translate('Remove all selected downtimes.') + ) + ) ?> +
    +

    +
    diff --git a/modules/monitoring/application/views/scripts/host/show.phtml b/modules/monitoring/application/views/scripts/host/show.phtml index f490c25f9..32389515b 100644 --- a/modules/monitoring/application/views/scripts/host/show.phtml +++ b/modules/monitoring/application/views/scripts/host/show.phtml @@ -1,9 +1,11 @@
    + compact): ?> + tabs; ?> + render('partials/host/object-header.phtml') ?> render('partials/host/servicesummary.phtml') ?>
    -

    translate('Host Detail Information') ?>

    render('show/components/output.phtml') ?> render('show/components/grapher.phtml') ?> diff --git a/modules/monitoring/application/views/scripts/hosts/show.phtml b/modules/monitoring/application/views/scripts/hosts/show.phtml index 2fcfbc448..a5e1cff38 100644 --- a/modules/monitoring/application/views/scripts/hosts/show.phtml +++ b/modules/monitoring/application/views/scripts/hosts/show.phtml @@ -1,5 +1,4 @@
    - compact): ?> @@ -21,7 +20,7 @@ ), '' . count($objects) . '') ?> - translate('No hosts matching the filter'); ?> + translate('No hosts found matching the filter'); ?>

    @@ -64,6 +63,15 @@ array('icon' => 'comment') ); ?>

    + + hasPermission('monitoring/command/send-custom-notification')): ?> +
    qlink( + sprintf($this->translate('Send a custom notification for all %u hosts'), $hostCount), + $sendCustomNotificationLink, + null, + array('icon' => 'comment') + ); ?>
    +

    compact): ?> -
    - tabs ?> - sortControl ?> - widget('limiter', array('url' => $this->url, 'max' => $comments->count())); ?> - paginationControl($comments, null, null, array('preserve' => $this->preserve)); ?> -
    - - -
    -

    translate('Comments') ?>

    - - translate('No comments matching the filter'); ?> +compact): ?> +
    + tabs; ?> +
    + render('list/components/selectioninfo.phtml'); ?> +
    +
    + getTotalItemCount() ?> translate('Comments') ?>: +
    + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?>
    - + +
    + +if (count($comments) === 0) { + echo $this->translate('No comments found matching the filter') . '
    '; + return; +} +?> + - - type) { - case 'flapping': - $icon = 'flapping'; - $title = $this->translate('Flapping'); - $tooltip = $this->translate('Comment was caused by a flapping host or service.'); - break; - case 'comment': - $icon = 'user'; - $title = $this->translate('User Comment'); - $tooltip = $this->translate('Comment was created by an user.'); - break; - case 'downtime': - $icon = 'plug'; - $title = $this->translate('Downtime'); - $tooltip = $this->translate('Comment was caused by a downtime.'); - case 'ack': - $icon = 'ok'; - $title = $this->translate('Acknowledgement'); - $tooltip = $this->translate('Comment was caused by an acknowledgement.'); - } - ?> + comment = $comment; ?> + diff --git a/modules/monitoring/application/views/scripts/list/contactgroups.phtml b/modules/monitoring/application/views/scripts/list/contactgroups.phtml index b00e78031..5e3b038a7 100644 --- a/modules/monitoring/application/views/scripts/list/contactgroups.phtml +++ b/modules/monitoring/application/views/scripts/list/contactgroups.phtml @@ -1,20 +1,22 @@ -compact): ?> +compact): ?>
    - tabs ?> + tabs; ?> + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?>
    -

    - translate('Contact Groups'); ?> -

    -
    - $groupInfo): ?> +if (count($groupData) === 0) { + echo $this->translate('No contactgroups found matching the filter') . '
    '; + return; +} +?> +
    + $groupInfo): ?>

    @@ -27,7 +29,7 @@ foreach ($groupData as $groupName => $groupInfo): ?> qlink( $c->contact_alias, 'monitoring/show/contact', - array('contact' => $c->contact_name), + array('contact_name' => $c->contact_name), array('title' => sprintf( $this->translate('Show detailed information about %s'), $c->contact_alias diff --git a/modules/monitoring/application/views/scripts/list/contacts.phtml b/modules/monitoring/application/views/scripts/list/contacts.phtml index 878b394c7..78910cead 100644 --- a/modules/monitoring/application/views/scripts/list/contacts.phtml +++ b/modules/monitoring/application/views/scripts/list/contacts.phtml @@ -1,26 +1,27 @@ -compact): ?> -
    - tabs ?> - sortControl ?> - widget('limiter', array('url' => $this->url, 'max' => $contacts->count())); ?> - paginationControl($contacts, null, null, array('preserve' => $this->preserve)); ?> -
    +compact): ?> +
    + tabs; ?> + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?> +
    -
    -

    translate('Contacts') ?>

    - translate('No contacts matching the filter'); - return; - } - foreach ($contacts as $contact): ?> +translate('No contacts found matching the filter') . '
    '; + return; +} +?> +
    img('/static/gravatar', array('email' => $contact->contact_email)); ?> qlink( $contact->contact_name, 'monitoring/show/contact', - array('contact' => $contact->contact_name), + array('contact_name' => $contact->contact_name), array('title' => sprintf( $this->translate('Show detailed information about %s'), $contact->contact_alias diff --git a/modules/monitoring/application/views/scripts/list/downtimes.phtml b/modules/monitoring/application/views/scripts/list/downtimes.phtml index 5ad554f99..0d35b77cd 100644 --- a/modules/monitoring/application/views/scripts/list/downtimes.phtml +++ b/modules/monitoring/application/views/scripts/list/downtimes.phtml @@ -1,30 +1,39 @@ -compact): ?> -
    - tabs ?> - sortControl ?> - widget('limiter', array('url' => $this->url, 'max' => $downtimes->count())); ?> - paginationControl($downtimes, null, null, array('preserve' => $this->preserve)); ?> +if (! $this->compact): ?> +
    + tabs; ?> +
    + render('list/components/selectioninfo.phtml'); ?>
    +
    + getTotalItemCount() ?> translate('Downtimes') ?> +
    + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?> +
    -filterEditor ?> -

    translate('Downtimes'); ?>

    - - translate('No active downtimes'); ?> -
    - + +if (count($downtimes) === 0) { + echo $this->translate('No downtimes found matching the filter,' + . ' maybe the downtime already expired.') . '
    '; + return; +} +?> +
    - icon($icon, $tooltip) ?> -
    - escape($title); ?> -
    - prefixedTimeSince($comment->timestamp); ?> + render('partials/comment/comment-description.phtml'); ?>
    objecttype === 'service'): ?> icon('service', $this->translate('Service')); ?> - link()->service( - $comment->service, $comment->service_display_name, $comment->host, $comment->host_display_name - ) ?> + + qlink( + sprintf( + $this->translate('%s on %s', 'Service running on host'), + $comment->service_display_name, + $comment->host_display_name + ), + 'monitoring/comment/show', + array('comment_id' => $comment->id), + array('title' => sprintf( + $this->translate('Show detailed information for comment on %s for %s'), + $comment->service_display_name, + $comment->host_display_name + ))) ?> icon('host', $this->translate('Host')); ?> - link()->host($comment->host, $comment->host_display_name) ?> + + qlink( + $comment->host_display_name, + 'monitoring/comment/show', + array('comment_id' => $comment->id), + array('title' => sprintf( + $this->translate('Show detailed information for comment on %s'), + $comment->host_display_name + ))) ?>
    icon('comment', $this->translate('Comment')); ?> author) - ? '[' . $comment->author . '] ' + ? '[' . $this->escape($comment->author) . '] ' : ''; ?>escape($comment->comment); ?>
    @@ -78,12 +83,12 @@
    populate(array('comment_id' => $comment->id, 'redirect' => $this->url)); - if ($comment->objecttype === 'host') { - $delCommentForm->setAction($this->url('monitoring/host/delete-comment', array('host' => $comment->host))); - } else { - $delCommentForm->setAction($this->url('monitoring/service/delete-comment', array('host' => $comment->host, 'service' => $comment->service))); - } + $delCommentForm->populate( + array( + 'comment_id' => $comment->id, + 'comment_is_service' => isset($comment->service_description) + ) + ); echo $delCommentForm; ?>
    service)) { + if (isset($downtime->service_description)) { $isService = true; $stateName = Service::getStateText($downtime->service_state); } else { @@ -48,23 +57,30 @@ use Icinga\Module\Monitoring\Object\Service; ?> diff --git a/modules/monitoring/application/views/scripts/list/eventgrid.phtml b/modules/monitoring/application/views/scripts/list/eventgrid.phtml index 6bf0b800b..6936e9063 100644 --- a/modules/monitoring/application/views/scripts/list/eventgrid.phtml +++ b/modules/monitoring/application/views/scripts/list/eventgrid.phtml @@ -1,24 +1,25 @@ - -
    - tabs->render($this); ?> -
    -

    - translate('Filters'); ?> -

    - -
    -
    -
    -

    translate('Event Grid'); ?>

    - -
    - + +if (! $this->compact): ?> +
    + tabs; ?> + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?> + +
    + +
    translate('No state changes in the selected time period.') . '
    '; + return; +} + $settings = array( 'cnt_up' => array( 'tooltip' => $this->translate('%d hosts ok on %s'), @@ -66,11 +67,8 @@ $to = intval($form->getValue('to', time())); if ($to - $from > 315360000) { $from = $to - 315360000; } -$data = array(); -if (count($summary) === 0) { - echo $this->translate('No state changes in the selected time period.'); -} +$data = array(); foreach ($summary as $entry) { $day = $entry->day; $value = $entry->$column; diff --git a/modules/monitoring/application/views/scripts/list/eventhistory.phtml b/modules/monitoring/application/views/scripts/list/eventhistory.phtml index 035be6c9a..9ab581d59 100644 --- a/modules/monitoring/application/views/scripts/list/eventhistory.phtml +++ b/modules/monitoring/application/views/scripts/list/eventhistory.phtml @@ -1,29 +1,23 @@ -compact): ?> +if (! $this->compact): ?>
    - tabs ?> - sortControl ?> - widget('limiter', array('url' => $this->url, 'max' => $this->history->count())); ?> - paginationControl($history, null, null, array('preserve' => $this->preserve)); ?> + tabs; ?> + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?>
    +
    - filterEditor ?> -

    translate('Event History') ?>

    - -
    - - - - - translate('No history events matching the filter') ?> -
    - - +translate('No history events found matching the filter') . '
    '; + return; +} +?>
    - - icon('service', $this->translate('Service')); ?> - link()->service( - $downtime->service, $downtime->service_display_name, $downtime->host, $downtime->host_display_name - ) ?> - - icon('host', $this->translate('Host')); ?> - link()->host($downtime->host, $downtime->host_display_name) ?> - + icon('service'); + } else { + echo $this->icon('host'); + } + ?> + qlink( + sprintf($this->translate('%s on %s', 'Service running on host'), $downtime->service_display_name, $downtime->host_display_name), + 'monitoring/downtime/show', + array('downtime_id' => $downtime->id), + array('title' => sprintf( + $this->translate('Show detailed information for downtime on %s for %s'), + $downtime->service_display_name, + $downtime->host_display_name + ))) ?>
    - icon('comment', $this->translate('Comment')); ?> [escape($downtime->author) ?>] escape($downtime->comment) ?> + icon('comment', $this->translate('Comment')); ?> [escape($downtime->author_name) ?>] escape($downtime->comment) ?>
    is_flexible): ?> is_in_effect): ?> service) + $isService ? $this->translate('This flexible service downtime was started on %s at %s and lasts for %s until %s at %s.') : $this->translate('This flexible host downtime was started on %s at %s and lasts for %s until %s at %s.'), date('d.m.y', $downtime->start), @@ -75,7 +91,7 @@ use Icinga\Module\Monitoring\Object\Service; ); ?> service) + $isService ? $this->translate('This flexible service downtime has been scheduled to start between %s - %s and to last for %s.') : $this->translate('This flexible host downtime has been scheduled to start between %s - %s and to last for %s.'), date('d.m.y H:i', $downtime->scheduled_start), @@ -86,7 +102,7 @@ use Icinga\Module\Monitoring\Object\Service; is_in_effect): ?> service) + $isService ? $this->translate('This fixed service downtime was started on %s at %s and expires on %s at %s.') : $this->translate('This fixed host downtime was started on %s at %s and expires on %s at %s.'), date('d.m.y', $downtime->start), @@ -96,7 +112,7 @@ use Icinga\Module\Monitoring\Object\Service; ); ?> service) + $isService ? $this->translate('This fixed service downtime has been scheduled to start on %s at %s and to end on %s at %s.') : $this->translate('This fixed host downtime has been scheduled to start on %s at %s and to end on %s at %s.'), date('d.m.y', $downtime->scheduled_start), @@ -112,12 +128,12 @@ use Icinga\Module\Monitoring\Object\Service;
    populate(array('downtime_id' => $downtime->id, 'redirect' => $this->url)); - if (! isset($downtime->service)) { - $delDowntimeForm->setAction($this->url('monitoring/host/delete-downtime', array('host' => $downtime->host))); - } else { - $delDowntimeForm->setAction($this->url('monitoring/service/delete-downtime', array('host' => $downtime->host, 'service' => $downtime->service))); - } + $delDowntimeForm->populate( + array( + 'downtime_id' => $downtime->id, + 'downtime_is_service' => isset($downtime->service_description) + ) + ); echo $delDowntimeForm; ?>
    @@ -31,7 +25,7 @@ use Icinga\Module\Monitoring\Object\Service; $icon = 'help'; $title = $event->type; $stateName = 'invalid'; - $isService = isset($event->service); + $isService = isset($event->service_description); switch ($event->type) { case 'notify': $icon = 'bell'; @@ -96,10 +90,10 @@ use Icinga\Module\Monitoring\Object\Service;
    link()->service( - $event->service, $event->service_display_name, $event->host, $event->host_display_name + $event->service_description, $event->service_display_name, $event->host_name, $event->host_display_name ) ?> - link()->host($event->host, $event->host_display_name) ?> + link()->host($event->host_name, $event->host_display_name) ?>
    diff --git a/modules/monitoring/application/views/scripts/list/hostgroups.phtml b/modules/monitoring/application/views/scripts/list/hostgroups.phtml index c8f5b2de2..ef8cd78ea 100644 --- a/modules/monitoring/application/views/scripts/list/hostgroups.phtml +++ b/modules/monitoring/application/views/scripts/list/hostgroups.phtml @@ -1,23 +1,20 @@ -compact): ?> -
    - +compact): ?>
    - tabs ?> - sortControl->render($this); ?> - widget('limiter')->setMaxLimit(count($hostgroups)); ?> - paginationControl($hostgroups, null, null, array('preserve' => $this->preserve)); ?> -
    -
    + tabs; ?> + sortBox; ?> + limiter; ?> + paginator; ?> filterEditor; ?> -

    translate('Host Groups') ?>

    +
    - translate('No host groups matching the filter'); - echo '
    '; - return; - } - ?> +
    +translate('No hostgroups found matching the filter') . '
    '; + return; +} +?> @@ -27,7 +24,7 @@ - + services_critical_last_state_change_unhandled): ?> @@ -89,7 +86,7 @@ qlink( $h->services_total, 'monitoring/list/services', - array('hostgroup' => $h->hostgroup), + array('hostgroup_name' => $h->hostgroup_name), array('title' => sprintf( $this->translate('List all services of all hosts in host group "%s"'), $h->hostgroup_alias @@ -103,9 +100,9 @@ $h->services_ok, 'monitoring/list/services', array( - 'service_state' => 0, - 'hostgroup' => $h->hostgroup, - 'sort' => 'service_severity' + 'service_state' => 0, + 'hostgroup_name' => $h->hostgroup_name, + 'sort' => 'service_severity' ), array( 'title' => sprintf( @@ -131,7 +128,7 @@ 'service_acknowledged' => 0, 'service_in_downtime' => 0, 'host_problem' => 0, - 'hostgroup' => $h->hostgroup, + 'hostgroup_name' => $h->hostgroup_name, 'sort' => 'service_severity' ), array( @@ -155,7 +152,7 @@ array( 'service_state' => 2, 'service_handled' => 1, - 'hostgroup' => $h->hostgroup, + 'hostgroup_name' => $h->hostgroup_name, 'sort' => 'service_severity' ), array( @@ -185,7 +182,7 @@ 'service_acknowledged' => 0, 'service_in_downtime' => 0, 'host_problem' => 0, - 'hostgroup' => $h->hostgroup, + 'hostgroup_name' => $h->hostgroup_name, 'sort' => 'service_severity' ), array( @@ -209,7 +206,7 @@ array( 'service_state' => 3, 'service_handled' => 1, - 'hostgroup' => $h->hostgroup, + 'hostgroup_name' => $h->hostgroup_name, 'sort' => 'service_severity' ), array( @@ -239,7 +236,7 @@ 'service_acknowledged' => 0, 'service_in_downtime' => 0, 'host_problem' => 0, - 'hostgroup' => $h->hostgroup, + 'hostgroup_name' => $h->hostgroup_name, 'sort' => 'service_severity' ), array( @@ -263,7 +260,7 @@ array( 'service_state' => 1, 'service_handled' => 1, - 'hostgroup' => $h->hostgroup, + 'hostgroup_name' => $h->hostgroup_name, 'sort' => 'service_severity' ), array( @@ -289,9 +286,9 @@ $h->services_pending, 'monitoring/list/services', array( - 'service_state' => 99, - 'hostgroup' => $h->hostgroup, - 'sort' => 'service_severity' + 'service_state' => 99, + 'hostgroup_name' => $h->hostgroup_name, + 'sort' => 'service_severity' ), array( 'title' => sprintf( diff --git a/modules/monitoring/application/views/scripts/list/hosts.phtml b/modules/monitoring/application/views/scripts/list/hosts.phtml index 9de57c384..196279b04 100644 --- a/modules/monitoring/application/views/scripts/list/hosts.phtml +++ b/modules/monitoring/application/views/scripts/list/hosts.phtml @@ -1,35 +1,28 @@ compact): ?> -
    - +if (! $this->compact): ?>
    - tabs ?> -
    - render('list/components/selectioninfo.phtml') ?> - render('list/components/hostssummary.phtml') ?> + tabs; ?> +
    + render('list/components/selectioninfo.phtml'); ?> + render('list/components/hostssummary.phtml'); ?>
    -sortControl->render($this) ?> -widget('limiter')->setMaxLimit($this->hosts->count()) ?> -paginationControl($hosts, null, null, array('preserve' => $this->preserve)) ?> + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?>
    - +
    -filterEditor ?> -

    translate('Hosts') ?>

    count() === 0) { - echo $this->translate('No hosts matching the filter'); - if (! $this->compact) { - echo '
    '; - } +if (count($hosts) === 0) { + echo $this->translate('No hosts found matching the filter') . '
    '; return; } ?> +
    translate('Last Problem'); ?>
    translate('CRITICAL'); ?> @@ -81,7 +78,7 @@ qlink( $h->hostgroup_alias, 'monitoring/list/hosts', - array('hostgroup' => $h->hostgroup), + array('hostgroup_name' => $h->hostgroup_name), array('title' => sprintf($this->translate('List all hosts in the group "%s"'), $h->hostgroup_alias)) ); ?>
    -compact): ?> +if (! $this->compact): ?>
    - tabs ?> - sortControl->render($this) ?> - widget('limiter') ?> - paginationControl($notifications, null, null, array('preserve' => $this->preserve)) ?> + tabs; ?> + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?>
    -
    -

    translate('Notifications'); ?>

    - -
    - - translate('No notifications matching the filter') ?> - +
    +translate('No notifications found matching the filter') . '
    '; + return; +} +?>
    service)) { + if (isset($notification->service_description)) { $isService = true; $stateName = Service::getStateText($notification->notification_state); } else { @@ -43,14 +42,14 @@ use Icinga\Module\Monitoring\Object\Service; icon('service', $this->translate('Service')); ?> link()->service( - $notification->service, + $notification->service_description, $notification->service_display_name, - $notification->host, + $notification->host_name, $notification->host_display_name ) ?> icon('host', $this->translate('Host')); ?> - link()->host($notification->host, $notification->host_display_name) ?> + link()->host($notification->host_name, $notification->host_display_name) ?>
    escape($this->ellipsis($notification->notification_output, 10000)) ?> @@ -60,9 +59,9 @@ use Icinga\Module\Monitoring\Object\Service; translate('Sent to %s'), $this->qlink( - $notification->notification_contact, + $notification->notification_contact_name, 'monitoring/show/contact', - array('contact' => $notification->notification_contact) + array('contact_name' => $notification->notification_contact_name) ) ) ?> diff --git a/modules/monitoring/application/views/scripts/list/servicegrid.phtml b/modules/monitoring/application/views/scripts/list/servicegrid.phtml index d4b5a4074..a9cbac445 100644 --- a/modules/monitoring/application/views/scripts/list/servicegrid.phtml +++ b/modules/monitoring/application/views/scripts/list/servicegrid.phtml @@ -1,27 +1,28 @@ -compact): ?> +if (! $this->compact): ?>
    tabs; ?> - sortControl; ?> + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?>
    -

    translate('Service Grid') ?>

    -
    pivot->toArray(); +if (count($pivotData) === 0) { + echo $this->translate('No services found matching the filter') . ''; + return; +} + $hostFilter = '(host_name=' . implode('|host_name=', array_keys($pivotData)) . ')'; ?> - - - translate('No Services matching the filter'); ?> - - +
    $serviceStates): ?> diff --git a/modules/monitoring/application/views/scripts/list/servicegroups.phtml b/modules/monitoring/application/views/scripts/list/servicegroups.phtml index e511f4fee..9fb8d0e08 100644 --- a/modules/monitoring/application/views/scripts/list/servicegroups.phtml +++ b/modules/monitoring/application/views/scripts/list/servicegroups.phtml @@ -1,23 +1,20 @@ -compact): ?> -
    - +compact): ?>
    - tabs ?> - sortControl->render($this); ?> - widget('limiter')->setMaxLimit(count($servicegroups)); ?> - paginationControl($servicegroups, null, null, array('preserve' => $this->preserve)); ?> -
    -
    + tabs; ?> + sortBox; ?> + limiter; ?> + paginator; ?> filterEditor; ?> -

    translate('Service Groups') ?>

    +
    - translate('No service groups matching the filter'); - echo '
    '; - return; - } - ?> +
    +translate('No servicegroups found matching the filter') . '
    '; + return; +} +?>
    @@ -27,7 +24,7 @@ - + services_critical_last_state_change_unhandled): ?> @@ -95,9 +92,9 @@ $s->services_ok, 'monitoring/list/services', array( - 'service_state' => 0, - 'servicegroup' => $s->servicegroup, - 'sort' => 'service_severity' + 'service_state' => 0, + 'servicegroup_name' => $s->servicegroup_name, + 'sort' => 'service_severity' ), array( 'title' => sprintf( @@ -123,7 +120,7 @@ 'service_acknowledged' => 0, 'service_in_downtime' => 0, 'host_problem' => 0, - 'servicegroup' => $s->servicegroup, + 'servicegroup_name' => $s->servicegroup_name, 'sort' => 'service_severity' ), array( @@ -147,7 +144,7 @@ array( 'service_state' => 2, 'service_handled' => 1, - 'servicegroup' => $s->servicegroup, + 'servicegroup_name' => $s->servicegroup_name, 'sort' => 'service_severity' ), array( @@ -177,7 +174,7 @@ 'service_acknowledged' => 0, 'service_in_downtime' => 0, 'host_problem' => 0, - 'servicegroup' => $s->servicegroup, + 'servicegroup_name' => $s->servicegroup_name, 'sort' => 'service_severity' ), array( @@ -201,7 +198,7 @@ array( 'service_state' => 3, 'service_handled' => 1, - 'servicegroup' => $s->servicegroup, + 'servicegroup_name' => $s->servicegroup_name, 'sort' => 'service_severity' ), array( @@ -231,7 +228,7 @@ 'service_acknowledged' => 0, 'service_in_downtime' => 0, 'host_problem' => 0, - 'servicegroup' => $s->servicegroup, + 'servicegroup_name' => $s->servicegroup_name, 'sort' => 'service_severity' ), array( @@ -255,7 +252,7 @@ array( 'service_state' => 1, 'service_handled' => 1, - 'servicegroup' => $s->servicegroup, + 'servicegroup_name' => $s->servicegroup_name, 'sort' => 'service_severity' ), array( @@ -281,9 +278,9 @@ $s->services_pending, 'monitoring/list/services', array( - 'service_state' => 99, - 'servicegroup' => $s->servicegroup, - 'sort' => 'service_severity' + 'service_state' => 99, + 'servicegroup_name' => $s->servicegroup_name, + 'sort' => 'service_severity' ), array( 'title' => sprintf( diff --git a/modules/monitoring/application/views/scripts/list/services.phtml b/modules/monitoring/application/views/scripts/list/services.phtml index 7f62904f2..63d9076c3 100644 --- a/modules/monitoring/application/views/scripts/list/services.phtml +++ b/modules/monitoring/application/views/scripts/list/services.phtml @@ -4,40 +4,33 @@ use Icinga\Module\Monitoring\Object\Service; $selfUrl = 'monitoring/list/services'; -if (!$this->compact): ?> +if (! $this->compact): ?>
    -tabs ?> -
    -render('list/components/selectioninfo.phtml') ?> -render('list/components/servicesummary.phtml') ?> + tabs; ?> +
    + render('list/components/selectioninfo.phtml'); ?> + render('list/components/servicesummary.phtml'); ?> +
    + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?>
    -sortControl ?> -limit === 0): ?> -widget('limiter') ?> - -widget('limiter')->setCurrentPageCount($this->services->count()) ?> -paginationControl($services, null, null, array('preserve' => $this->preserve)) ?> -
    -
    -filterEditor ?> -

    translate('Services') ?>

    - + - +if (count($services) === 0) { + echo $this->translate('No services found matching the filter') . '
    '; + return; +} +?>
    translate('Last Problem'); ?>
    translate('CRITICAL'); ?> @@ -81,7 +78,7 @@ qlink( $s->servicegroup_alias, 'monitoring/list/services', - array('servicegroup' => $s->servicegroup), + array('servicegroup_name' => $s->servicegroup_name), array('title' => sprintf($this->translate('List all services in the group "%s"'), $s->servicegroup_alias)) ); ?>
    " data-icinga-multiselect-data="service,host"> -href( 'monitoring/service/show', array( diff --git a/modules/monitoring/application/views/scripts/partials/comment/comment-description.phtml b/modules/monitoring/application/views/scripts/partials/comment/comment-description.phtml new file mode 100644 index 000000000..2c5f07133 --- /dev/null +++ b/modules/monitoring/application/views/scripts/partials/comment/comment-description.phtml @@ -0,0 +1,27 @@ +type) { + case 'flapping': + $icon = 'flapping'; + $title = $this->translate('Flapping'); + $tooltip = $this->translate('Comment was caused by a flapping host or service.'); + break; + case 'comment': + $icon = 'user'; + $title = $this->translate('User Comment'); + $tooltip = $this->translate('Comment was created by an user.'); + break; + case 'downtime': + $icon = 'plug'; + $title = $this->translate('Downtime'); + $tooltip = $this->translate('Comment was caused by a downtime.'); + break; + case 'ack': + $icon = 'ok'; + $title = $this->translate('Acknowledgement'); + $tooltip = $this->translate('Comment was caused by an acknowledgement.'); + break; +} +?> +escape($title); ?>
    +icon($icon, $tooltip) ?> +prefixedTimeSince($comment->timestamp); ?> diff --git a/modules/monitoring/application/views/scripts/partials/comment/comment-detail.phtml b/modules/monitoring/application/views/scripts/partials/comment/comment-detail.phtml new file mode 100644 index 000000000..98ee0534b --- /dev/null +++ b/modules/monitoring/application/views/scripts/partials/comment/comment-detail.phtml @@ -0,0 +1,18 @@ +objecttype === 'service'): ?> + icon('service', $this->translate('Service')); ?> + link()->service( + $comment->service_description, + $comment->service_display_name, + $comment->host_name, + $comment->host_display_name + ); ?> + + icon('host', $this->translate('Host')); ?> + link()->host($comment->host_name, $comment->host_display_name); ?> + + +
    +icon('comment', $this->translate('Comment')); ?> author) + ? '[' . $this->escape($comment->author) . '] ' + : ''; +?>escape($comment->comment); ?> diff --git a/modules/monitoring/application/views/scripts/partials/comment/comment-header.phtml b/modules/monitoring/application/views/scripts/partials/comment/comment-header.phtml new file mode 100644 index 000000000..c3e0fadda --- /dev/null +++ b/modules/monitoring/application/views/scripts/partials/comment/comment-header.phtml @@ -0,0 +1,10 @@ +
    + + + + +
    + render('partials/comment/comment-description.phtml'); ?> + + render('partials/comment/comment-detail.phtml'); ?> +
    diff --git a/modules/monitoring/application/views/scripts/partials/comment/comments-header.phtml b/modules/monitoring/application/views/scripts/partials/comment/comments-header.phtml new file mode 100644 index 000000000..4ec725549 --- /dev/null +++ b/modules/monitoring/application/views/scripts/partials/comment/comments-header.phtml @@ -0,0 +1,30 @@ + + 5) { + continue; + } + $this->comment = $comment; + ?> + + + + + + +
    + render('partials/comment/comment-description.phtml'); ?> + + render('partials/comment/comment-detail.phtml'); ?> +
    + +

    + qlink( + sprintf($this->translate('List all %d comments …'), count($comments)), + $listAllLink, + null, + array( + 'title' => $this->translate('List all'), + 'data-base-target' => "_next" + ) + ) ?> +

    diff --git a/modules/monitoring/application/views/scripts/partials/downtime/downtime-header.phtml b/modules/monitoring/application/views/scripts/partials/downtime/downtime-header.phtml new file mode 100644 index 000000000..92759a12a --- /dev/null +++ b/modules/monitoring/application/views/scripts/partials/downtime/downtime-header.phtml @@ -0,0 +1,67 @@ + + + + + +
    + is_in_effect ? $this->translate('Expires') : $this->translate('Starts'); ?> +
    + dateTimeRenderer( + ($downtime->is_in_effect ? $downtime->end : $downtime->start), + true + )->render( + $this->translate('on %s', 'datetime'), + $this->translate('at %s', 'time'), + $this->translate('in %s', 'timespan') + ); + ?> +
    + + is_flexible): ?> + is_in_effect): ?> + isService + ? $this->translate('This flexible service downtime was started on %s at %s and lasts for %s until %s at %s.') + : $this->translate('This flexible host downtime was started on %s at %s and lasts for %s until %s at %s.'), + date('d.m.y', $downtime->start), + date('H:i', $downtime->start), + $this->format()->duration($downtime->duration), + date('d.m.y', $downtime->end), + date('H:i', $downtime->end) + ); ?> + + isService + ? $this->translate('This flexible service downtime has been scheduled to start between %s - %s and to last for %s.') + : $this->translate('This flexible host downtime has been scheduled to start between %s - %s and to last for %s.'), + date('d.m.y H:i', $downtime->scheduled_start), + date('d.m.y H:i', $downtime->scheduled_end), + $this->format()->duration($downtime->duration) + ); ?> + + + is_in_effect): ?> + isService + ? $this->translate('This fixed service downtime was started on %s at %s and expires on %s at %s.') + : $this->translate('This fixed host downtime was started on %s at %s and expires on %s at %s.'), + date('d.m.y', $downtime->start), + date('H:i', $downtime->start), + date('d.m.y', $downtime->end), + date('H:i', $downtime->end) + ); ?> + + isService + ? $this->translate('This fixed service downtime has been scheduled to start on %s at %s and to end on %s at %s.') + : $this->translate('This fixed host downtime has been scheduled to start on %s at %s and to end on %s at %s.'), + date('d.m.y', $downtime->scheduled_start), + date('H:i', $downtime->scheduled_start), + date('d.m.y', $downtime->scheduled_end), + date('H:i', $downtime->scheduled_end) + ); ?> + + + +
    diff --git a/modules/monitoring/application/views/scripts/partials/downtime/downtimes-header.phtml b/modules/monitoring/application/views/scripts/partials/downtime/downtimes-header.phtml new file mode 100644 index 000000000..54cd0210c --- /dev/null +++ b/modules/monitoring/application/views/scripts/partials/downtime/downtimes-header.phtml @@ -0,0 +1,92 @@ + + + 5) { + continue; + } ?> + + + + + + +
    + is_in_effect ? $this->translate('Expires') : $this->translate('Starts'); ?> +
    + dateTimeRenderer( + ($downtime->is_in_effect ? $downtime->end : $downtime->start), + true + )->render( + $this->translate('on %s', 'datetime'), + $this->translate('at %s', 'time'), + $this->translate('in %s', 'timespan') + ); + ?> +
    + isService): ?> + icon('service', $this->translate('Service')) ?> + service ?> on host_name ?>. + + icon('host', $this->translate('Host')) ?> + host_name ?>. + + + is_flexible): ?> + is_in_effect): ?> + isService + ? $this->translate('This flexible service downtime was started on %s at %s and lasts for %s until %s at %s.') + : $this->translate('This flexible host downtime was started on %s at %s and lasts for %s until %s at %s.'), + date('d.m.y', $downtime->start), + date('H:i', $downtime->start), + $this->format()->duration($downtime->duration), + date('d.m.y', $downtime->end), + date('H:i', $downtime->end) + ); ?> + + isService + ? $this->translate('This flexible service downtime has been scheduled to start between %s - %s and to last for %s.') + : $this->translate('This flexible host downtime has been scheduled to start between %s - %s and to last for %s.'), + date('d.m.y H:i', $downtime->scheduled_start), + date('d.m.y H:i', $downtime->scheduled_end), + $this->format()->duration($downtime->duration) + ); ?> + + + is_in_effect): ?> + isService + ? $this->translate('This fixed service downtime was started on %s at %s and expires on %s at %s.') + : $this->translate('This fixed host downtime was started on %s at %s and expires on %s at %s.'), + date('d.m.y', $downtime->start), + date('H:i', $downtime->start), + date('d.m.y', $downtime->end), + date('H:i', $downtime->end) + ); ?> + + isService + ? $this->translate('This fixed service downtime has been scheduled to start on %s at %s and to end on %s at %s.') + : $this->translate('This fixed host downtime has been scheduled to start on %s at %s and to end on %s at %s.'), + date('d.m.y', $downtime->scheduled_start), + date('H:i', $downtime->scheduled_start), + date('d.m.y', $downtime->scheduled_end), + date('H:i', $downtime->scheduled_end) + ); ?> + + +
    + +

    + qlink( + sprintf($this->translate('List all %d downtimes …'), count($downtimes)), + $listAllLink, + null, + array( + 'title' => $this->translate('List all'), + 'data-base-target' => "_next" + ) + ) ?> +

    \ No newline at end of file diff --git a/modules/monitoring/application/views/scripts/partials/host/object-header.phtml b/modules/monitoring/application/views/scripts/partials/host/object-header.phtml index 69d0f62f5..0efedf328 100644 --- a/modules/monitoring/application/views/scripts/partials/host/object-header.phtml +++ b/modules/monitoring/application/views/scripts/partials/host/object-header.phtml @@ -1,11 +1,7 @@ -compact): ?> - -
    diff --git a/modules/monitoring/application/views/scripts/partials/host/objects-header.phtml b/modules/monitoring/application/views/scripts/partials/host/objects-header.phtml index 95e595ac1..5a54b6f11 100644 --- a/modules/monitoring/application/views/scripts/partials/host/objects-header.phtml +++ b/modules/monitoring/application/views/scripts/partials/host/objects-header.phtml @@ -44,5 +44,3 @@ $i = 0; - - diff --git a/modules/monitoring/application/views/scripts/partials/service/object-header.phtml b/modules/monitoring/application/views/scripts/partials/service/object-header.phtml index 5f3ccb70f..45111fe1e 100644 --- a/modules/monitoring/application/views/scripts/partials/service/object-header.phtml +++ b/modules/monitoring/application/views/scripts/partials/service/object-header.phtml @@ -1,12 +1,8 @@ -compact): ?> - - '; + $currentSet = $this->getSubIterator(); + $state = $currentSet->getState() ? 'fulfilled' : ( + $currentSet->isOptional() ? 'not-available' : 'missing' + ); + $colSpanRequired = $this->hasSingleRequirements($this->getSubIterator($this->getDepth() - 1)); + $this->tags[] = ''; + $this->tags[] = ''; + } + + protected function hasSingleRequirements(RequirementSet $requirements) + { + $set = $requirements->getAll(); + foreach ($set as $entry) { + if ($entry instanceof Requirement) { + return true; + } + } + + return false; + } + + public function render() + { + foreach ($this as $requirement) { + $this->tags[] = ''; + $this->tags[] = ''; + $this->tags[] = ''; + $this->tags[] = ''; + $this->tags[] = ''; + } + + return implode("\n", $this->tags); + } + + public function __toString() + { + return $this->render(); + } +} diff --git a/modules/setup/library/Setup/SetupWizard.php b/modules/setup/library/Setup/SetupWizard.php index 9e7b45174..1ce948dc1 100644 --- a/modules/setup/library/Setup/SetupWizard.php +++ b/modules/setup/library/Setup/SetupWizard.php @@ -18,7 +18,7 @@ interface SetupWizard /** * Return the requirements of this wizard * - * @return Requirements + * @return RequirementSet */ public function getRequirements(); } diff --git a/modules/setup/library/Setup/Steps/AuthenticationStep.php b/modules/setup/library/Setup/Steps/AuthenticationStep.php index 495a42469..9de0c9867 100644 --- a/modules/setup/library/Setup/Steps/AuthenticationStep.php +++ b/modules/setup/library/Setup/Steps/AuthenticationStep.php @@ -126,11 +126,15 @@ class AuthenticationStep extends Step . '' . ($authType === 'ldap' ? ( '' - . '' + . '' . '' . '' . '' - . '' + . '' + . '' + . '' + . '' + . '' . '' . '' ) : ($authType === 'external' ? ( diff --git a/modules/setup/library/Setup/Utils/DbTool.php b/modules/setup/library/Setup/Utils/DbTool.php index f9628484c..ae2fcc38f 100644 --- a/modules/setup/library/Setup/Utils/DbTool.php +++ b/modules/setup/library/Setup/Utils/DbTool.php @@ -78,7 +78,7 @@ class DbTool 'INSERT' => 29, 'LOCK TABLES' => 5, 'PROCESS' => 1, - 'REFERENCES' => 0, + 'REFERENCES' => 12, 'RELOAD' => 1, 'REPLICATION CLIENT' => 1, 'REPLICATION SLAVE' => 1, @@ -127,7 +127,7 @@ class DbTool /** * Connect to the server * - * @return self + * @return $this */ public function connectToHost() { @@ -150,7 +150,7 @@ class DbTool /** * Connect to the database * - * @return self + * @return $this */ public function connectToDb() { @@ -629,10 +629,6 @@ EOD; $mysqlPrivileges = array_intersect($privileges, array_keys($this->mysqlGrantContexts)); list($_, $host) = explode('@', $this->query('select current_user()')->fetchColumn()); $grantee = "'" . ($username === null ? $this->config['username'] : $username) . "'@'" . $host . "'"; - $privilegeCondition = sprintf( - 'privilege_type IN (%s)', - join(',', array_map(array($this, 'quote'), $mysqlPrivileges)) - ); if (isset($this->config['dbname'])) { $dbPrivileges = array(); @@ -653,7 +649,7 @@ EOD; . ' FROM information_schema.schema_privileges' . ' WHERE grantee = :grantee' . ' AND table_schema = :dbname' - . ' AND ' . $privilegeCondition + . ' AND privilege_type IN (' . join(',', array_map(array($this, 'quote'), $dbPrivileges)) . ')' . ($requireGrants ? " AND is_grantable = 'YES'" : ''), array(':grantee' => $grantee, ':dbname' => $this->config['dbname']) ); @@ -666,14 +662,13 @@ EOD; !$dbPrivilegesGranted || array_intersect($dbPrivileges, $tablePrivileges) != $tablePrivileges ) ) { - $tableCondition = 'table_name IN (' . join(',', array_map(array($this, 'quote'), $context)) . ')'; $query = $this->query( 'SELECT COUNT(*) as matches' . ' FROM information_schema.table_privileges' . ' WHERE grantee = :grantee' . ' AND table_schema = :dbname' - . ' AND ' . $tableCondition - . ' AND ' . $privilegeCondition + . ' AND table_name IN (' . join(',', array_map(array($this, 'quote'), $context)) . ')' + . ' AND privilege_type IN (' . join(',', array_map(array($this, 'quote'), $tablePrivileges)) . ')' . ($requireGrants ? " AND is_grantable = 'YES'" : ''), array(':grantee' => $grantee, ':dbname' => $this->config['dbname']) ); @@ -688,7 +683,8 @@ EOD; $query = $this->query( 'SELECT COUNT(*) as matches FROM information_schema.user_privileges WHERE grantee = :grantee' - . ' AND ' . $privilegeCondition . ($requireGrants ? " AND is_grantable = 'YES'" : ''), + . ' AND privilege_type IN (' . join(',', array_map(array($this, 'quote'), $mysqlPrivileges)) . ')' + . ($requireGrants ? " AND is_grantable = 'YES'" : ''), array(':grantee' => $grantee) ); return (int) $query->fetchObject()->matches === count($mysqlPrivileges); @@ -721,7 +717,8 @@ EOD; foreach (array_intersect($privileges, array_keys($this->pgsqlGrantContexts)) as $privilege) { if (false === empty($context) && $this->pgsqlGrantContexts[$privilege] & static::TABLE_LEVEL) { $tablePrivileges[] = $privilege; - } elseif ($this->pgsqlGrantContexts[$privilege] & static::DATABASE_LEVEL) { + } + if ($this->pgsqlGrantContexts[$privilege] & static::DATABASE_LEVEL) { $dbPrivileges[] = $privilege; } } @@ -760,14 +757,14 @@ EOD; // connected to the database defined in the resource configuration it is safe to just ignore them // as the chances are very high that the database is created later causing the current user being // the owner with ALL privileges. (Which in turn can be granted to others.) - } - if (array_search('CREATE', $privileges) !== false) { - $query = $this->query( - 'select rolcreatedb from pg_roles where rolname = :user', - array(':user' => $username !== null ? $username : $this->config['username']) - ); - $privilegesGranted &= $query->fetchColumn() !== false; + if (array_search('CREATE', $privileges) !== false) { + $query = $this->query( + 'select rolcreatedb from pg_roles where rolname = :user', + array(':user' => $username !== null ? $username : $this->config['username']) + ); + $privilegesGranted &= $query->fetchColumn() !== false; + } } if (array_search('CREATEROLE', $privileges) !== false) { @@ -786,6 +783,6 @@ EOD; $privilegesGranted &= $query->fetchColumn() !== false; } - return $privilegesGranted; + return (bool) $privilegesGranted; } } diff --git a/modules/setup/library/Setup/WebWizard.php b/modules/setup/library/Setup/WebWizard.php index 0bf575033..96d39e63f 100644 --- a/modules/setup/library/Setup/WebWizard.php +++ b/modules/setup/library/Setup/WebWizard.php @@ -9,7 +9,6 @@ use Icinga\Web\Wizard; use Icinga\Web\Request; use Icinga\Application\Config; use Icinga\Application\Icinga; -use Icinga\Application\Platform; use Icinga\Module\Setup\Forms\ModulePage; use Icinga\Module\Setup\Forms\WelcomePage; use Icinga\Module\Setup\Forms\SummaryPage; @@ -18,7 +17,7 @@ use Icinga\Module\Setup\Forms\PreferencesPage; use Icinga\Module\Setup\Forms\AuthBackendPage; use Icinga\Module\Setup\Forms\AdminAccountPage; use Icinga\Module\Setup\Forms\LdapDiscoveryPage; -use Icinga\Module\Setup\Forms\LdapDiscoveryConfirmPage; +//use Icinga\Module\Setup\Forms\LdapDiscoveryConfirmPage; use Icinga\Module\Setup\Forms\LdapResourcePage; use Icinga\Module\Setup\Forms\RequirementsPage; use Icinga\Module\Setup\Forms\GeneralConfigPage; @@ -29,14 +28,30 @@ use Icinga\Module\Setup\Steps\GeneralConfigStep; use Icinga\Module\Setup\Steps\ResourceStep; use Icinga\Module\Setup\Steps\AuthenticationStep; use Icinga\Module\Setup\Utils\EnableModuleStep; -use Icinga\Module\Setup\Utils\MakeDirStep; use Icinga\Module\Setup\Utils\DbTool; +use Icinga\Module\Setup\Requirement\OSRequirement; +use Icinga\Module\Setup\Requirement\ClassRequirement; +use Icinga\Module\Setup\Requirement\PhpConfigRequirement; +use Icinga\Module\Setup\Requirement\PhpModuleRequirement; +use Icinga\Module\Setup\Requirement\PhpVersionRequirement; +use Icinga\Module\Setup\Requirement\ConfigDirectoryRequirement; /** * Icinga Web 2 Setup Wizard */ class WebWizard extends Wizard implements SetupWizard { + /** + * The privileges required by Icinga Web 2 to create the database and a login + * + * @var array + */ + protected $databaseCreationPrivileges = array( + 'CREATE', + 'CREATE USER', // MySQL + 'CREATEROLE' // PostgreSQL + ); + /** * The privileges required by Icinga Web 2 to setup the database * @@ -44,10 +59,8 @@ class WebWizard extends Wizard implements SetupWizard */ protected $databaseSetupPrivileges = array( 'CREATE', - 'ALTER', - 'REFERENCES', - 'CREATE USER', // MySQL - 'CREATEROLE' // PostgreSQL + 'ALTER', // MySQL only + 'REFERENCES' ); /** @@ -89,7 +102,7 @@ class WebWizard extends Wizard implements SetupWizard $this->addPage(new PreferencesPage()); $this->addPage(new DbResourcePage()); $this->addPage(new LdapDiscoveryPage()); - $this->addPage(new LdapDiscoveryConfirmPage()); + //$this->addPage(new LdapDiscoveryConfirmPage()); $this->addPage(new LdapResourcePage()); $this->addPage(new AuthBackendPage()); $this->addPage(new AdminAccountPage()); @@ -111,7 +124,7 @@ class WebWizard extends Wizard implements SetupWizard public function setupPage(Form $page, Request $request) { if ($page->getName() === 'setup_requirements') { - $page->setRequirements($this->getRequirements()); + $page->setWizard($this); } elseif ($page->getName() === 'setup_preferences_type') { $authData = $this->getPageData('setup_authentication_type'); if ($authData['type'] === 'db') { @@ -128,13 +141,13 @@ class WebWizard extends Wizard implements SetupWizard } elseif ($authData['type'] === 'ldap') { $page->setResourceConfig($this->getPageData('setup_ldap_resource')); - $suggestions = $this->getPageData('setup_ldap_discovery_confirm'); + $suggestions = $this->getPageData('setup_ldap_discovery'); if (isset($suggestions['backend'])) { $page->populate($suggestions['backend']); } } - } elseif ($page->getName() === 'setup_ldap_discovery_confirm') { - $page->setResourceConfig($this->getPageData('setup_ldap_discovery')); + /*} elseif ($page->getName() === 'setup_ldap_discovery_confirm') { + $page->setResourceConfig($this->getPageData('setup_ldap_discovery'));*/ } elseif ($page->getName() === 'setup_admin_account') { $page->setBackendConfig($this->getPageData('setup_authentication_backend')); $authData = $this->getPageData('setup_authentication_type'); @@ -144,7 +157,9 @@ class WebWizard extends Wizard implements SetupWizard $page->setResourceConfig($this->getPageData('setup_ldap_resource')); } } elseif ($page->getName() === 'setup_database_creation') { - $page->setDatabaseSetupPrivileges($this->databaseSetupPrivileges); + $page->setDatabaseSetupPrivileges( + array_unique(array_merge($this->databaseCreationPrivileges, $this->databaseSetupPrivileges)) + ); $page->setDatabaseUsagePrivileges($this->databaseUsagePrivileges); $page->setResourceConfig($this->getPageData('setup_db_resource')); } elseif ($page->getName() === 'setup_summary') { @@ -165,7 +180,7 @@ class WebWizard extends Wizard implements SetupWizard ); } - $suggestion = $this->getPageData('setup_ldap_discovery_confirm'); + $suggestion = $this->getPageData('setup_ldap_discovery'); if (isset($suggestion['resource'])) { $page->populate($suggestion['resource']); } @@ -195,8 +210,8 @@ class WebWizard extends Wizard implements SetupWizard } elseif ($newPage->getname() === 'setup_ldap_discovery') { $authData = $this->getPageData('setup_authentication_type'); $skip = $authData['type'] !== 'ldap'; - } elseif ($newPage->getName() === 'setup_ldap_discovery_confirm') { - $skip = false === $this->hasPageData('setup_ldap_discovery'); + /*} elseif ($newPage->getName() === 'setup_ldap_discovery_confirm') { + $skip = false === $this->hasPageData('setup_ldap_discovery');*/ } elseif ($newPage->getName() === 'setup_ldap_resource') { $authData = $this->getPageData('setup_authentication_type'); $skip = $authData['type'] !== 'ldap'; @@ -207,8 +222,8 @@ class WebWizard extends Wizard implements SetupWizard try { $db->connectToDb(); // Are we able to login on the database? if (array_search(key($this->databaseTables), $db->listTables()) === false) { - // In case the database schema does not yet exist the user - // needs the privileges to create and setup the database + // In case the database schema does not yet exist the + // user needs the privileges to setup the database $skip = $db->checkPrivileges($this->databaseSetupPrivileges, $this->databaseTables); } else { // In case the database schema exists the user needs the required privileges @@ -220,7 +235,12 @@ class WebWizard extends Wizard implements SetupWizard $db->connectToHost(); // Are we able to login on the server? // It is not possible to reliably determine whether a database exists or not if a user can't // log in to the database, so we just require the user to be able to create the database - $skip = $db->checkPrivileges($this->databaseSetupPrivileges, $this->databaseTables); + $skip = $db->checkPrivileges( + array_unique( + array_merge($this->databaseCreationPrivileges, $this->databaseSetupPrivileges) + ), + $this->databaseTables + ); } catch (PDOException $_) { // We are NOT able to login on the server.. } @@ -351,203 +371,159 @@ class WebWizard extends Wizard implements SetupWizard /** * @see SetupWizard::getRequirements() */ - public function getRequirements() + public function getRequirements($skipModules = false) { - $requirements = new Requirements(); + $set = new RequirementSet(); - $phpVersion = Platform::getPhpVersion(); - $requirements->addMandatory( - 'php_version_>=_5_3_2', - mt('setup', 'PHP Version'), - mt( + $set->add(new PhpVersionRequirement(array( + 'condition' => array('>=', '5.3.2'), + 'description' => mt( 'setup', 'Running Icinga Web 2 requires PHP version 5.3.2. Advanced features' . ' like the built-in web server require PHP version 5.4.' - ), - version_compare($phpVersion, '5.3.2', '>='), - sprintf(mt('setup', 'You are running PHP version %s.'), $phpVersion) - ); + ) + ))); - $defaultTimezone = Platform::getPhpConfig('date.timezone'); - $requirements->addMandatory( - 'existing_default_timezone', - mt('setup', 'Default Timezone'), - sprintf( + $set->add(new PhpConfigRequirement(array( + 'condition' => array('date.timezone', true), + 'title' => mt('setup', 'Default Timezone'), + 'description' => sprintf( mt('setup', 'It is required that a default timezone has been set using date.timezone in %s.'), php_ini_loaded_file() ?: 'php.ini' ), - $defaultTimezone, - $defaultTimezone ? sprintf(mt('setup', 'Your default timezone is: %s'), $defaultTimezone) : ( - mt('setup', 'You did not define a default timezone.') - ) - ); + ))); - $requirements->addOptional( - 'platform=linux', - mt('setup', 'Linux Platform'), - mt( + $set->add(new OSRequirement(array( + 'optional' => true, + 'condition' => 'linux', + 'description' => mt( 'setup', 'Icinga Web 2 is developed for and tested on Linux. While we cannot' . ' guarantee they will, other platforms may also perform as well.' - ), - Platform::isLinux(), - sprintf(mt('setup', 'You are running PHP on a %s system.'), Platform::getOperatingSystemName()) - ); - - $requirements->addMandatory( - 'existing_php_mod_openssl', - mt('setup', 'PHP Module: OpenSSL'), - mt('setup', 'The PHP module for OpenSSL is required to generate cryptographically safe password salts.'), - Platform::extensionLoaded('openssl'), - Platform::extensionLoaded('openssl') ? mt('setup', 'The PHP module for OpenSSL is available.') : ( - mt('setup', 'The PHP module for OpenSSL is missing.') ) - ); + ))); - $requirements->addOptional( - 'existing_php_mod_json', - mt('setup', 'PHP Module: JSON'), - mt('setup', 'The JSON module for PHP is required for various export functionalities as well as APIs.'), - Platform::extensionLoaded('json'), - Platform::extensionLoaded('json') ? mt('setup', 'The PHP module JSON is available.') : ( - mt('setup', 'The PHP module JSON is missing.') + $set->add(new PhpModuleRequirement(array( + 'condition' => 'OpenSSL', + 'description' => mt( + 'setup', + 'The PHP module for OpenSSL is required to generate cryptographically safe password salts.' ) - ); + ))); - $requirements->addOptional( - 'existing_php_mod_ldap', - mt('setup', 'PHP Module: LDAP'), - mt('setup', 'If you\'d like to authenticate users using LDAP the corresponding PHP module is required'), - Platform::extensionLoaded('ldap'), - Platform::extensionLoaded('ldap') ? mt('setup', 'The PHP module LDAP is available') : ( - mt('setup', 'The PHP module LDAP is missing') + $set->add(new PhpModuleRequirement(array( + 'optional' => true, + 'condition' => 'JSON', + 'description' => mt( + 'setup', + 'The JSON module for PHP is required for various export functionalities as well as APIs.' ) - ); + ))); - $requirements->addOptional( - 'existing_php_mod_intl', - mt('setup', 'PHP Module: INTL'), - mt( + $set->add(new PhpModuleRequirement(array( + 'optional' => true, + 'condition' => 'LDAP', + 'description' => mt( + 'setup', + 'If you\'d like to authenticate users using LDAP the corresponding PHP module is required.' + ) + ))); + + $set->add(new PhpModuleRequirement(array( + 'optional' => true, + 'condition' => 'INTL', + 'description' => mt( 'setup', 'If you want your users to benefit from language, timezone and date/time' . ' format negotiation, the INTL module for PHP is required.' - ), - Platform::extensionLoaded('intl'), - Platform::extensionLoaded('intl') ? mt('setup', 'The PHP module INTL is available') : ( - mt('setup', 'The PHP module INTL is missing') ) - ); + ))); // TODO(6172): Remove this requirement once we do not ship dompdf with Icinga Web 2 anymore - $requirements->addOptional( - 'existing_php_mod_dom', - mt('setup', 'PHP Module: DOM'), - mt('setup', 'To be able to export views and reports to PDF, the DOM module for PHP is required.'), - Platform::extensionLoaded('dom'), - Platform::extensionLoaded('dom') ? mt('setup', 'The PHP module DOM is available') : ( - mt('setup', 'The PHP module DOM is missing') - ) - ); - - $requirements->addOptional( - 'existing_php_mod_gd', - mt('setup', 'PHP Module: GD'), - mt( + $set->add(new PhpModuleRequirement(array( + 'optional' => true, + 'condition' => 'DOM', + 'description' => mt( 'setup', - 'In case you want views being exported to PDF,' - . ' you\'ll need the GD extension for PHP.' - ), - Platform::extensionLoaded('gd'), - Platform::extensionLoaded('gd') ? mt('setup', 'The PHP module GD is available') : ( - mt('setup', 'The PHP module GD is missing') + 'To be able to export views and reports to PDF, the DOM module for PHP is required.' ) - ); + ))); - $requirements->addOptional( - 'existing_php_mod_imagick', - mt('setup', 'PHP Module: Imagick'), - mt( + $set->add(new PhpModuleRequirement(array( + 'optional' => true, + 'condition' => 'GD', + 'description' => mt( 'setup', - 'In case you want graphs being exported to PDF as well' - . ', you\'ll need the ImageMagick extension for PHP.' - ), - Platform::extensionLoaded('imagick'), - Platform::extensionLoaded('imagick') ? mt('setup', 'The PHP module Imagick is available') : ( - mt('setup', 'The PHP module Imagick is missing') + 'In case you want views being exported to PDF, you\'ll need the GD extension for PHP.' ) - ); + ))); - $requirements->addOptional( - 'existing_php_mod_pdo_mysql', - mt('setup', 'PHP Module: PDO-MySQL'), - mt( + $set->add(new PhpModuleRequirement(array( + 'optional' => true, + 'condition' => 'Imagick', + 'description' => mt( 'setup', - 'Is Icinga Web 2 supposed to access a MySQL database the PDO-MySQL module for PHP is required.' - ), - Platform::extensionLoaded('mysql'), - Platform::extensionLoaded('mysql') ? mt('setup', 'The PHP module PDO-MySQL is available.') : ( - mt('setup', 'The PHP module PDO-MySQL is missing.') + 'In case you want graphs being exported to PDF as well, you\'ll need the ImageMagick extension for PHP.' ) - ); + ))); - $requirements->addOptional( - 'existing_php_mod_pdo_pgsql', - mt('setup', 'PHP Module: PDO-PostgreSQL'), - mt( + $mysqlSet = new RequirementSet(true); + $mysqlSet->add(new PhpModuleRequirement(array( + 'optional' => true, + 'condition' => 'mysql', + 'alias' => 'PDO-MySQL', + 'description' => mt( 'setup', - 'Is Icinga Web 2 supposed to access a PostgreSQL database' - . ' the PDO-PostgreSQL module for PHP is required.' - ), - Platform::extensionLoaded('pgsql'), - Platform::extensionLoaded('pgsql') ? mt('setup', 'The PHP module PDO-PostgreSQL is available.') : ( - mt('setup', 'The PHP module PDO-PostgreSQL is missing.') + 'To store users or preferences in a MySQL database the PDO-MySQL module for PHP is required.' ) - ); - - $mysqlAdapterFound = Platform::zendClassExists('Zend_Db_Adapter_Pdo_Mysql'); - $requirements->addOptional( - 'existing_class_Zend_Db_Adapter_Pdo_Mysql', - mt('setup', 'Zend Database Adapter For MySQL'), - mt('setup', 'The Zend database adapter for MySQL is required to access a MySQL database.'), - $mysqlAdapterFound, - $mysqlAdapterFound ? mt('setup', 'The Zend database adapter for MySQL is available.') : ( - mt('setup', 'The Zend database adapter for MySQL is missing.') + ))); + $mysqlSet->add(new ClassRequirement(array( + 'optional' => true, + 'condition' => 'Zend_Db_Adapter_Pdo_Mysql', + 'alias' => mt('setup', 'Zend database adapter for MySQL'), + 'description' => mt( + 'setup', + 'The Zend database adapter for MySQL is required to access a MySQL database.' ) - ); + ))); + $set->merge($mysqlSet); - $pgsqlAdapterFound = Platform::zendClassExists('Zend_Db_Adapter_Pdo_Pgsql'); - $requirements->addOptional( - 'existing_class_Zend_Db_Adapter_Pdo_Pgsql', - mt('setup', 'Zend Database Adapter For PostgreSQL'), - mt('setup', 'The Zend database adapter for PostgreSQL is required to access a PostgreSQL database.'), - $pgsqlAdapterFound, - $pgsqlAdapterFound ? mt('setup', 'The Zend database adapter for PostgreSQL is available.') : ( - mt('setup', 'The Zend database adapter for PostgreSQL is missing.') + $pgsqlSet = new RequirementSet(true); + $pgsqlSet->add(new PhpModuleRequirement(array( + 'optional' => true, + 'condition' => 'pgsql', + 'alias' => 'PDO-PostgreSQL', + 'description' => mt( + 'setup', + 'To store users or preferences in a PostgreSQL database the PDO-PostgreSQL module for PHP is required.' ) - ); + ))); + $pgsqlSet->add(new ClassRequirement(array( + 'optional' => true, + 'condition' => 'Zend_Db_Adapter_Pdo_Pgsql', + 'alias' => mt('setup', 'Zend database adapter for PostgreSQL'), + 'description' => mt( + 'setup', + 'The Zend database adapter for PostgreSQL is required to access a PostgreSQL database.' + ) + ))); + $set->merge($pgsqlSet); - $configDir = Icinga::app()->getConfigDir(); - $requirements->addMandatory( - 'writable_directory_' . $configDir, - mt('setup', 'Writable Config Directory'), - mt( + $set->add(new ConfigDirectoryRequirement(array( + 'condition' => Icinga::app()->getConfigDir(), + 'description' => mt( 'setup', 'The Icinga Web 2 configuration directory defaults to "/etc/icingaweb2", if' . ' not explicitly set in the environment variable "ICINGAWEB_CONFIGDIR".' - ), - is_writable($configDir), - sprintf( - is_writable($configDir) ? mt('setup', 'The current configuration directory is writable: %s') : ( - mt('setup', 'The current configuration directory is not writable: %s') - ), - $configDir ) - ); + ))); - foreach ($this->getWizards() as $wizard) { - $requirements->merge($wizard->getRequirements()); + if (! $skipModules) { + foreach ($this->getWizards() as $wizard) { + $set->merge($wizard->getRequirements()); + } } - return $requirements; + return $set; } } diff --git a/modules/setup/library/Setup/Webserver/Nginx.php b/modules/setup/library/Setup/Webserver/Nginx.php index 780a3184e..524b90ebf 100644 --- a/modules/setup/library/Setup/Webserver/Nginx.php +++ b/modules/setup/library/Setup/Webserver/Nginx.php @@ -25,6 +25,7 @@ location ~ ^{urlPath}/index\.php(.*)$ { include fastcgi_params; fastcgi_param SCRIPT_FILENAME {documentRoot}/index.php; fastcgi_param ICINGAWEB_CONFIGDIR {configDir}; + fastcgi_param REMOTE_USER $remote_user; } location ~ ^{urlPath}(.+)? { diff --git a/modules/setup/test/php/library/Setup/RequirementSetTest.php b/modules/setup/test/php/library/Setup/RequirementSetTest.php new file mode 100644 index 000000000..d2c4d2029 --- /dev/null +++ b/modules/setup/test/php/library/Setup/RequirementSetTest.php @@ -0,0 +1,496 @@ +assertFalse($emptySet->fulfilled(), 'A empty mandatory set of type and is fulfilled'); + + $singleTrueSet = new RequirementSet(); + $singleTrueSet->add(new TrueRequirement()); + $this->assertTrue( + $singleTrueSet->fulfilled(), + 'A mandatory set of type and with a single TrueRequirement is not fulfilled' + ); + + $singleFalseSet = new RequirementSet(); + $singleFalseSet->add(new FalseRequirement()); + $this->assertFalse( + $singleFalseSet->fulfilled(), + 'A mandatory set of type and with a single FalseRequirement is fulfilled' + ); + + $mixedSet = new RequirementSet(); + $mixedSet->add(new TrueRequirement()); + $mixedSet->add(new FalseRequirement()); + $this->assertFalse( + $mixedSet->fulfilled(), + 'A mandatory set of type and with one True- and one FalseRequirement is fulfilled' + ); + } + + public function testFlatOptionalRequirementsOfTypeAnd() + { + $emptySet = new RequirementSet(true); + $this->assertTrue($emptySet->fulfilled(), 'A empty optional set of type and is not fulfilled'); + + $singleTrueSet = new RequirementSet(true); + $singleTrueSet->add(new TrueRequirement()); + $this->assertTrue( + $singleTrueSet->fulfilled(), + 'A optional set of type and with a single TrueRequirement is not fulfilled' + ); + + $singleFalseSet = new RequirementSet(true); + $singleFalseSet->add(new FalseRequirement()); + $this->assertTrue( + $singleFalseSet->fulfilled(), + 'A optional set of type and with a single FalseRequirement is not fulfilled' + ); + + $mixedSet = new RequirementSet(true); + $mixedSet->add(new TrueRequirement()); + $mixedSet->add(new FalseRequirement()); + $this->assertTrue( + $mixedSet->fulfilled(), + 'A optional set of type and with one True- and one FalseRequirement is not fulfilled' + ); + } + + public function testFlatMixedRequirementsOfTypeAnd() + { + $mandatoryOptionalTrueSet = new RequirementSet(); + $mandatoryOptionalTrueSet->add(new TrueRequirement(array('optional' => true))); + $mandatoryOptionalTrueSet->add(new FalseRequirement()); + $this->assertFalse( + $mandatoryOptionalTrueSet->fulfilled(), + 'A mandatory set of type and with one optional True- and one mandatory FalseRequirement is fulfilled' + ); + + $mandatoryOptionalFalseSet = new RequirementSet(); + $mandatoryOptionalFalseSet->add(new TrueRequirement()); + $mandatoryOptionalFalseSet->add(new FalseRequirement(array('optional' => true))); + $this->assertTrue( + $mandatoryOptionalFalseSet->fulfilled(), + 'A mandatory set of type and with one mandatory True- and one optional FalseRequirement is not fulfilled' + ); + + $optionalOptionalTrueSet = new RequirementSet(true); + $optionalOptionalTrueSet->add(new TrueRequirement(array('optional' => true))); + $optionalOptionalTrueSet->add(new FalseRequirement()); + $this->assertTrue( + $optionalOptionalTrueSet->fulfilled(), + 'A optional set of type and with one optional True- and one mandatory FalseRequirement is not fulfilled' + ); + + $optionalOptionalFalseSet = new RequirementSet(true); + $optionalOptionalFalseSet->add(new TrueRequirement()); + $optionalOptionalFalseSet->add(new FalseRequirement(array('optional' => true))); + $this->assertTrue( + $optionalOptionalFalseSet->fulfilled(), + 'A optional set of type and with one mandatory True- and one optional FalseRequirement is not fulfilled' + ); + } + + public function testFlatMandatoryRequirementsOfTypeOr() + { + $emptySet = new RequirementSet(false, RequirementSet::MODE_OR); + $this->assertFalse($emptySet->fulfilled(), 'A empty mandatory set of type or is fulfilled'); + + $singleTrueSet = new RequirementSet(false, RequirementSet::MODE_OR); + $singleTrueSet->add(new TrueRequirement()); + $this->assertTrue( + $singleTrueSet->fulfilled(), + 'A mandatory set of type or with a single TrueRequirement is not fulfilled' + ); + + $singleFalseSet = new RequirementSet(false, RequirementSet::MODE_OR); + $singleFalseSet->add(new FalseRequirement()); + $this->assertFalse( + $singleFalseSet->fulfilled(), + 'A mandatory set of type or with a single FalseRequirement is fulfilled' + ); + + $mixedSet = new RequirementSet(false, RequirementSet::MODE_OR); + $mixedSet->add(new TrueRequirement()); + $mixedSet->add(new FalseRequirement()); + $this->assertTrue( + $mixedSet->fulfilled(), + 'A mandatory set of type or with one True- and one FalseRequirement is not fulfilled' + ); + } + + public function testFlatOptionalRequirementsOfTypeOr() + { + $emptySet = new RequirementSet(true, RequirementSet::MODE_OR); + $this->assertTrue($emptySet->fulfilled(), 'A empty optional set of type or is not fulfilled'); + + $singleTrueSet = new RequirementSet(true, RequirementSet::MODE_OR); + $singleTrueSet->add(new TrueRequirement()); + $this->assertTrue( + $singleTrueSet->fulfilled(), + 'A optional set of type or with a single TrueRequirement is not fulfilled' + ); + + $singleFalseSet = new RequirementSet(true, RequirementSet::MODE_OR); + $singleFalseSet->add(new FalseRequirement()); + $this->assertTrue( + $singleFalseSet->fulfilled(), + 'A optional set of type or with a single FalseRequirement is not fulfilled' + ); + + $mixedSet = new RequirementSet(true, RequirementSet::MODE_OR); + $mixedSet->add(new TrueRequirement()); + $mixedSet->add(new FalseRequirement()); + $this->assertTrue( + $mixedSet->fulfilled(), + 'A optional set of type or with one True- and one FalseRequirement is not fulfilled' + ); + } + + public function testFlatMixedRequirementsOfTypeOr() + { + $mandatoryOptionalTrueSet = new RequirementSet(false, RequirementSet::MODE_OR); + $mandatoryOptionalTrueSet->add(new TrueRequirement(array('optional' => true))); + $mandatoryOptionalTrueSet->add(new FalseRequirement()); + $this->assertTrue( + $mandatoryOptionalTrueSet->fulfilled(), + 'A mandatory set of type or with one optional True- and one mandatory FalseRequirement is not fulfilled' + ); + + $mandatoryOptionalFalseSet = new RequirementSet(false, RequirementSet::MODE_OR); + $mandatoryOptionalFalseSet->add(new TrueRequirement()); + $mandatoryOptionalFalseSet->add(new FalseRequirement(array('optional' => true))); + $this->assertTrue( + $mandatoryOptionalFalseSet->fulfilled(), + 'A mandatory set of type or with one mandatory True- and one optional FalseRequirement is not fulfilled' + ); + + $optionalOptionalTrueSet = new RequirementSet(true, RequirementSet::MODE_OR); + $optionalOptionalTrueSet->add(new TrueRequirement(array('optional' => true))); + $optionalOptionalTrueSet->add(new FalseRequirement()); + $this->assertTrue( + $optionalOptionalTrueSet->fulfilled(), + 'A optional set of type or with one optional True- and one mandatory FalseRequirement is not fulfilled' + ); + + $optionalOptionalFalseSet = new RequirementSet(true, RequirementSet::MODE_OR); + $optionalOptionalFalseSet->add(new TrueRequirement()); + $optionalOptionalFalseSet->add(new FalseRequirement(array('optional' => true))); + $this->assertTrue( + $optionalOptionalFalseSet->fulfilled(), + 'A optional set of type or with one mandatory True- and one optional FalseRequirement is not fulfilled' + ); + } + + public function testNestedMandatoryRequirementsOfTypeAnd() + { + $trueSet = new RequirementSet(); + $trueSet->add(new TrueRequirement()); + $falseSet = new RequirementSet(); + $falseSet->add(new FalseRequirement()); + + $nestedTrueSet = new RequirementSet(); + $nestedTrueSet->merge($trueSet); + $this->assertTrue( + $nestedTrueSet->fulfilled(), + 'A nested mandatory set of type and with one mandatory TrueRequirement is not fulfilled' + ); + + $nestedFalseSet = new RequirementSet(); + $nestedFalseSet->merge($falseSet); + $this->assertFalse( + $nestedFalseSet->fulfilled(), + 'A nested mandatory set of type and with one mandatory FalseRequirement is fulfilled' + ); + + $nestedMixedSet = new RequirementSet(); + $nestedMixedSet->merge($trueSet); + $nestedMixedSet->merge($falseSet); + $this->assertFalse( + $nestedMixedSet->fulfilled(), + 'Two nested mandatory sets of type and with one mandatory True- and' + . ' one mandatory FalseRequirement respectively are fulfilled' + ); + } + + public function testNestedOptionalRequirementsOfTypeAnd() + { + $trueSet = new RequirementSet(true); + $trueSet->add(new TrueRequirement()); + $falseSet = new RequirementSet(true); + $falseSet->add(new FalseRequirement()); + + $nestedTrueSet = new RequirementSet(true); + $nestedTrueSet->merge($trueSet); + $this->assertTrue( + $nestedTrueSet->fulfilled(), + 'A nested optional set of type and with one mandatory TrueRequirement is not fulfilled' + ); + + $nestedFalseSet = new RequirementSet(true); + $nestedFalseSet->merge($falseSet); + $this->assertTrue( + $nestedFalseSet->fulfilled(), + 'A nested optional set of type and with one mandatory FalseRequirement is not fulfilled' + ); + + $nestedMixedSet = new RequirementSet(true); + $nestedMixedSet->merge($trueSet); + $nestedMixedSet->merge($falseSet); + $this->assertTrue( + $nestedMixedSet->fulfilled(), + 'Two nested optional sets of type and with one mandatory True- and' + . ' one mandatory FalseRequirement respectively are not fulfilled' + ); + } + + public function testNestedMixedRequirementsOfTypeAnd() + { + $mandatoryMandatoryTrueSet = new RequirementSet(); + $mandatoryMandatoryTrueSet->add(new TrueRequirement()); + $mandatoryOptionalTrueSet = new RequirementSet(); + $mandatoryOptionalTrueSet->add(new TrueRequirement(array('optional' => true))); + $mandatoryMandatoryFalseSet = new RequirementSet(); + $mandatoryMandatoryFalseSet->add(new FalseRequirement()); + $mandatoryOptionalFalseSet = new RequirementSet(); + $mandatoryOptionalFalseSet->add(new FalseRequirement(array('optional' => true))); + $optionalMandatoryTrueSet = new RequirementSet(true); + $optionalMandatoryTrueSet->add(new TrueRequirement()); + $optionalOptionalTrueSet = new RequirementSet(true); + $optionalOptionalTrueSet->add(new TrueRequirement(array('optional' => true))); + $optionalMandatoryFalseSet = new RequirementSet(true); + $optionalMandatoryFalseSet->add(new FalseRequirement()); + $optionalOptionalFalseSet = new RequirementSet(true); + $optionalOptionalFalseSet->add(new FalseRequirement(array('optional' => true))); + + $mandatoryMandatoryOptionalTrueSet = new RequirementSet(); + $mandatoryMandatoryOptionalTrueSet->merge($mandatoryOptionalTrueSet); + $mandatoryMandatoryOptionalTrueSet->merge($mandatoryMandatoryFalseSet); + $this->assertFalse( + $mandatoryMandatoryOptionalTrueSet->fulfilled(), + 'A mandatory set of type and with two nested mandatory sets of type and where one has a optional' + . ' TrueRequirement and the other one has a mandatory FalseRequirement is fulfilled' + ); + + $mandatoryMandatoryOptionalFalseSet = new RequirementSet(); + $mandatoryMandatoryOptionalFalseSet->merge($mandatoryOptionalFalseSet); + $mandatoryMandatoryOptionalFalseSet->merge($mandatoryMandatoryTrueSet); + $this->assertTrue( + $mandatoryMandatoryOptionalFalseSet->fulfilled(), + 'A mandatory set of type and with two nested mandatory sets of type and where one has a mandatory' + . ' TrueRequirement and the other one has a optional FalseRequirement is not fulfilled' + ); + + $optionalOptionalOptionalTrueSet = new RequirementSet(true); + $optionalOptionalOptionalTrueSet->merge($optionalOptionalTrueSet); + $optionalOptionalOptionalTrueSet->merge($optionalMandatoryFalseSet); + $this->assertTrue( + $optionalOptionalOptionalTrueSet->fulfilled(), + 'A optional set of type and with two nested optional sets of type and where one has a optional' + . ' TrueRequirement and the other one has a mandatory FalseRequirement is not fulfilled' + ); + + $optionalOptionalOptionalFalseSet = new RequirementSet(true); + $optionalOptionalOptionalFalseSet->merge($optionalOptionalFalseSet); + $optionalOptionalOptionalFalseSet->merge($optionalMandatoryTrueSet); + $this->assertTrue( + $optionalOptionalOptionalFalseSet->fulfilled(), + 'A optional set of type and with two nested optional sets of type and where one has a mandatory' + . ' TrueRequirement and the other one has a optional FalseRequirement is not fulfilled' + ); + } + + public function testNestedMandatoryRequirementsOfTypeOr() + { + $trueSet = new RequirementSet(false, RequirementSet::MODE_OR); + $trueSet->add(new TrueRequirement()); + $falseSet = new RequirementSet(false, RequirementSet::MODE_OR); + $falseSet->add(new FalseRequirement()); + + $nestedTrueSet = new RequirementSet(false, RequirementSet::MODE_OR); + $nestedTrueSet->merge($trueSet); + $this->assertTrue( + $nestedTrueSet->fulfilled(), + 'A nested mandatory set of type or with one mandatory TrueRequirement is not fulfilled' + ); + + $nestedFalseSet = new RequirementSet(false, RequirementSet::MODE_OR); + $nestedFalseSet->merge($falseSet); + $this->assertFalse( + $nestedFalseSet->fulfilled(), + 'A nested mandatory set of type or with one mandatory FalseRequirement is fulfilled' + ); + + $nestedMixedSet = new RequirementSet(false, RequirementSet::MODE_OR); + $nestedMixedSet->merge($trueSet); + $nestedMixedSet->merge($falseSet); + $this->assertTrue( + $nestedMixedSet->fulfilled(), + 'Two nested mandatory sets of type or with one mandatory True- and' + . ' one mandatory FalseRequirement respectively are not fulfilled' + ); + } + + public function testNestedOptionalRequirementsOfTypeOr() + { + $trueSet = new RequirementSet(true, RequirementSet::MODE_OR); + $trueSet->add(new TrueRequirement()); + $falseSet = new RequirementSet(true, RequirementSet::MODE_OR); + $falseSet->add(new FalseRequirement()); + + $nestedTrueSet = new RequirementSet(true, RequirementSet::MODE_OR); + $nestedTrueSet->merge($trueSet); + $this->assertTrue( + $nestedTrueSet->fulfilled(), + 'A nested optional set of type or with one mandatory TrueRequirement is not fulfilled' + ); + + $nestedFalseSet = new RequirementSet(true, RequirementSet::MODE_OR); + $nestedFalseSet->merge($falseSet); + $this->assertTrue( + $nestedFalseSet->fulfilled(), + 'A nested optional set of type or with one mandatory FalseRequirement is not fulfilled' + ); + + $nestedMixedSet = new RequirementSet(true, RequirementSet::MODE_OR); + $nestedMixedSet->merge($trueSet); + $nestedMixedSet->merge($falseSet); + $this->assertTrue( + $nestedMixedSet->fulfilled(), + 'Two nested optional sets of type or with one mandatory True- and' + . ' one mandatory FalseRequirement respectively are not fulfilled' + ); + } + + public function testNestedMixedRequirementsOfTypeOr() + { + $mandatoryMandatoryTrueSet = new RequirementSet(false, RequirementSet::MODE_OR); + $mandatoryMandatoryTrueSet->add(new TrueRequirement()); + $mandatoryOptionalTrueSet = new RequirementSet(false, RequirementSet::MODE_OR); + $mandatoryOptionalTrueSet->add(new TrueRequirement(array('optional' => true))); + $mandatoryMandatoryFalseSet = new RequirementSet(false, RequirementSet::MODE_OR); + $mandatoryMandatoryFalseSet->add(new FalseRequirement()); + $mandatoryOptionalFalseSet = new RequirementSet(false, RequirementSet::MODE_OR); + $mandatoryOptionalFalseSet->add(new FalseRequirement(array('optional' => true))); + $optionalMandatoryTrueSet = new RequirementSet(true, RequirementSet::MODE_OR); + $optionalMandatoryTrueSet->add(new TrueRequirement()); + $optionalOptionalTrueSet = new RequirementSet(true, RequirementSet::MODE_OR); + $optionalOptionalTrueSet->add(new TrueRequirement(array('optional' => true))); + $optionalMandatoryFalseSet = new RequirementSet(true, RequirementSet::MODE_OR); + $optionalMandatoryFalseSet->add(new FalseRequirement()); + $optionalOptionalFalseSet = new RequirementSet(true, RequirementSet::MODE_OR); + $optionalOptionalFalseSet->add(new FalseRequirement(array('optional' => true))); + + $mandatoryMandatoryOptionalTrueSet = new RequirementSet(false, RequirementSet::MODE_OR); + $mandatoryMandatoryOptionalTrueSet->merge($mandatoryOptionalTrueSet); + $mandatoryMandatoryOptionalTrueSet->merge($mandatoryMandatoryFalseSet); + $this->assertTrue($mandatoryMandatoryOptionalTrueSet->fulfilled()); + + $mandatoryMandatoryOptionalFalseSet = new RequirementSet(false, RequirementSet::MODE_OR); + $mandatoryMandatoryOptionalFalseSet->merge($mandatoryOptionalFalseSet); + $mandatoryMandatoryOptionalFalseSet->merge($mandatoryMandatoryTrueSet); + $this->assertTrue($mandatoryMandatoryOptionalFalseSet->fulfilled()); + + $optionalOptionalOptionalTrueSet = new RequirementSet(true, RequirementSet::MODE_OR); + $optionalOptionalOptionalTrueSet->merge($optionalOptionalTrueSet); + $optionalOptionalOptionalTrueSet->merge($optionalMandatoryFalseSet); + $this->assertTrue($optionalOptionalOptionalTrueSet->fulfilled()); + + $optionalOptionalOptionalFalseSet = new RequirementSet(true, RequirementSet::MODE_OR); + $optionalOptionalOptionalFalseSet->merge($optionalOptionalFalseSet); + $optionalOptionalOptionalFalseSet->merge($optionalMandatoryTrueSet); + $this->assertTrue($optionalOptionalOptionalFalseSet->fulfilled()); + } + + public function testNestedMandatoryRequirementsOfDifferentTypes() + { + $true = new TrueRequirement(); + $false = new FalseRequirement(); + + $level1And = new RequirementSet(); + $level2FirstOr = new RequirementSet(false, RequirementSet::MODE_OR); + $level2SecondOr = new RequirementSet(false, RequirementSet::MODE_OR); + $level1And->merge($level2FirstOr)->merge($level2SecondOr); + $level3FirstAnd = new RequirementSet(); + $level3SecondAnd = new RequirementSet(); + $level2FirstOr->merge($level3FirstAnd)->merge($level3SecondAnd); + $level2SecondOr->merge($level3FirstAnd)->merge($level3SecondAnd); + $level3FirstAnd->add($true)->add($true); + $level3SecondAnd->add($false)->add($true); + $this->assertTrue($level1And->fulfilled()); + + $level1Or = new RequirementSet(false, RequirementSet::MODE_OR); + $level2FirstAnd = new RequirementSet(); + $level2SecondAnd = new RequirementSet(); + $level1Or->merge($level2FirstAnd)->merge($level2SecondAnd); + $level3FirstOr = new RequirementSet(false, RequirementSet::MODE_OR); + $level3SecondOr = new RequirementSet(false, RequirementSet::MODE_OR); + $level2FirstAnd->merge($level3FirstOr)->merge($level3SecondOr); + $level2SecondAnd->merge($level3FirstOr)->merge($level3SecondOr); + $level3FirstOr->add($false); + $level3SecondOr->add($true); + $this->assertFalse($level1Or->fulfilled()); + } + + public function testNestedOptionalRequirementsOfDifferentTypes() + { + $true = new TrueRequirement(); + $false = new FalseRequirement(); + + $level1And = new RequirementSet(); + $level2FirstAnd = new RequirementSet(true); + $level2SecondAnd = new RequirementSet(true); + $level1And->merge($level2FirstAnd)->merge($level2SecondAnd); + $level3FirstOr = new RequirementSet(true, RequirementSet::MODE_OR); + $level3SecondOr = new RequirementSet(true, RequirementSet::MODE_OR); + $level2FirstAnd->merge($level3FirstOr)->merge($level3SecondOr); + $level2SecondAnd->merge($level3FirstOr)->merge($level3SecondOr); + $level3FirstOr->add($false); + $level3SecondOr->add($false); + $this->assertFalse($level1And->fulfilled()); + $this->assertTrue($level2FirstAnd->fulfilled()); + $this->assertTrue($level2SecondAnd->fulfilled()); + + $level1Or = new RequirementSet(false, RequirementSet::MODE_OR); + $level2FirstOr = new RequirementSet(true, RequirementSet::MODE_OR); + $level2SecondOr = new RequirementSet(true, RequirementSet::MODE_OR); + $level1Or->merge($level2FirstOr)->merge($level2SecondOr); + $level3FirstAnd = new RequirementSet(true); + $level3SecondAnd = new RequirementSet(true); + $level2FirstOr->merge($level3FirstAnd)->merge($level3SecondAnd); + $level2SecondOr->merge($level3FirstAnd)->merge($level3SecondAnd); + $level3FirstAnd->add($true)->add($true); + $level3SecondAnd->add($false)->add($true); + $this->assertTrue($level1Or->fulfilled()); + } + + public function testNestedMixedRequirementsOfDifferentTypes() + { + $this->markTestIncomplete(); + } +} diff --git a/modules/test/module.info b/modules/test/module.info index 646315156..ed6adc1f2 100644 --- a/modules/test/module.info +++ b/modules/test/module.info @@ -2,4 +2,4 @@ Module: test Version: 2.0.0~alpha4 Description: Translation module This module allows developers to run (unit) tests against Icinga Web 2 and - any of it's modules. Usually you do not need to enable this. + any of its modules. Usually you do not need to enable this. diff --git a/modules/translation/application/clicommands/CompileCommand.php b/modules/translation/application/clicommands/CompileCommand.php index 4f08b2844..036769175 100644 --- a/modules/translation/application/clicommands/CompileCommand.php +++ b/modules/translation/application/clicommands/CompileCommand.php @@ -15,7 +15,7 @@ use Icinga\Module\Translation\Util\GettextTranslationHelper; * Domains are the global one 'icinga' and all available and enabled modules * identified by their name. * - * Once a PO-file is compiled it's content is used by Icinga Web 2 to display + * Once a PO-file is compiled its content is used by Icinga Web 2 to display * messages in the configured language. */ class CompileCommand extends TranslationCommand diff --git a/modules/translation/doc/translation.md b/modules/translation/doc/translation.md index 55dc415ad..308eae6a8 100644 --- a/modules/translation/doc/translation.md +++ b/modules/translation/doc/translation.md @@ -109,7 +109,7 @@ When you are done, just save your new settings. To work with Icinga Web 2 .po files, you can open for e.g. the german icinga.po file which is located under `application/locale/de_DE/LC_MESSAGES/icinga.po`, as shown below, you will get then a full list of all available -translation strings for the core application. Each module names it's translation files `%module_name%.po`. For a +translation strings for the core application. Each module names its translation files `%module_name%.po`. For a module called __yourmodule__ the .po translation file will be named `yourmodule.po`. @@ -196,4 +196,4 @@ The last step is to compile the __yourmodule.po__ to the __yourmodule.mo__: icingacli translation compile module development ll_CC At this moment, everywhere in the module where the `Dummy` should be translated, it would returns the translated -string `Attrappe`. \ No newline at end of file +string `Attrappe`. diff --git a/modules/translation/module.info b/modules/translation/module.info index 9934ec931..ebe121ebc 100644 --- a/modules/translation/module.info +++ b/modules/translation/module.info @@ -2,6 +2,6 @@ Module: translation Version: 2.0.0~alpha4 Description: Translation module This module allows developers and translators to translate Icinga Web 2 and - it's modules for multiple languages. You do not need this module to run an + its modules for multiple languages. You do not need this module to run an internationalized web frontend. This is only for people who want to contribute translations or translate just their own moduls. diff --git a/packages/debian/control b/packages/debian/control index 560b2ef65..73d0b57a3 100644 --- a/packages/debian/control +++ b/packages/debian/control @@ -24,7 +24,7 @@ Package: icingaweb-module-doc Architecture: any Depends: icingaweb-common Description: Icingaweb documentation module - This module renders documentation for Icingaweb and it's modules + This module renders documentation for Icingaweb and its modules Package: icingaweb-module-monitoring Architecture: any @@ -42,7 +42,7 @@ Package: icingaweb-module-test Architecture: any Depends: icingacli Description: Icingaweb test module - Use this module to run unit tests against Icingaweb or any of it's modules + Use this module to run unit tests against Icingaweb or any of its modules Package: icingaweb-module-translation Architecture: any @@ -54,7 +54,7 @@ Package: icingacli Architecture: any Depends: icingaweb-common, php5-cli (>= 5.3.2) Description: Icinga CLI tool - The Icinga CLI allows one to access it's Icinga monitoring + The Icinga CLI allows one to access its Icinga monitoring system from a terminal. . The CLI is based on the Icinga PHP libraries diff --git a/public/css/icinga/controls.less b/public/css/icinga/controls.less new file mode 100644 index 000000000..b8e82b795 --- /dev/null +++ b/public/css/icinga/controls.less @@ -0,0 +1,21 @@ +/*! Icinga Web 2 | (c) 2013-2015 Icinga Development Team | GPLv2+ */ + +form.sort-control { + .dontprint; + float: right; + + label { + width: auto; + margin-right: 0.5em; + } + + select[name=sort] { + width: 12em; + margin-left: 0; + } + + select[name=dir] { + width: 5em; + margin-left: 0; + } +} diff --git a/public/css/icinga/layout-colors.less b/public/css/icinga/layout-colors.less index 74ce55bb0..64642b078 100644 --- a/public/css/icinga/layout-colors.less +++ b/public/css/icinga/layout-colors.less @@ -10,7 +10,7 @@ } #header { - background-color: #049baf; + background-color: @colorPetrol; color: #ddd; color: #d0d0d0; border-bottom: solid 1px; diff --git a/public/css/icinga/layout-structure.less b/public/css/icinga/layout-structure.less index ee531d354..63be9f546 100644 --- a/public/css/icinga/layout-structure.less +++ b/public/css/icinga/layout-structure.less @@ -119,12 +119,12 @@ html { .container .controls { top: 0; background-color: white; - padding: 0; + padding: 1em 1em 0; z-index: 100; } .container .fake-controls { - padding: 0; + padding: 1em 1em 0; } .container .controls .pagination { @@ -149,10 +149,6 @@ html { font-size: 0.9em; } -.container .controls > * { - margin-left: 1em; -} - .container .controls .pagination { margin-left: 1.2em; } @@ -163,6 +159,11 @@ html { .dashboard .content { padding: 0; + overflow: auto; +} + +.dashboard .controls { + padding: 0; } /* Not growing larger than 3840px at 1em=16px right now */ diff --git a/public/css/icinga/main-content.less b/public/css/icinga/main-content.less index 32054e242..b442723cb 100644 --- a/public/css/icinga/main-content.less +++ b/public/css/icinga/main-content.less @@ -118,7 +118,6 @@ table.avp a:hover { /* Definitively monitoring-only: */ table.objectstate { - margin: 1em; border-collapse: separate; border-spacing: 1px; } @@ -194,11 +193,6 @@ table.benchmark { color: inherit; } -/* controls have no padding as of tabs */ -.controls > h1 { - margin-right: 1em; -} - [class^="icon-"]:before, [class*=" icon-"]:before { text-decoration: none; } diff --git a/public/css/icinga/menu.less b/public/css/icinga/menu.less index 3c733db6e..b3adec2ef 100644 --- a/public/css/icinga/menu.less +++ b/public/css/icinga/menu.less @@ -268,40 +268,28 @@ a:focus { outline: none; } -/* Accessibility Skip Links */ .skip-links { position: relative; - opacity: 1; ul { list-style-type: none; margin: 0; padding: 0; li { - display: inline; - margin: 0; - padding: 0; + display: block; a, button[type="submit"] { - position: absolute; - display: block; + background-color: #fff; left: -999em; - box-sizing: content-box; - width: 10.4em !important; - text-align: left !important; padding: 0.8em; - background-color: white; - z-index: 4; - border: 1px @colorGray solid; + position: absolute; + width: 100%; &:focus { left: 0; - outline: 1px dotted black !important; + outline: 1px dotted black; } } + button[type="submit"] { + text-align: left; + } } } } -.skip-links-inline { - ul > li > a { - width: 14em !important; - top: -3em; - } -} diff --git a/public/css/icinga/monitoring-colors.less b/public/css/icinga/monitoring-colors.less index ad80fbb45..3078fdec7 100644 --- a/public/css/icinga/monitoring-colors.less +++ b/public/css/icinga/monitoring-colors.less @@ -814,6 +814,10 @@ div.timeline { /* Monitoring groupsummary styles */ +.dashboard table.groupview { + margin-top: 0; +} + table.groupview { width: 100%; margin-top: 1em; diff --git a/public/css/icinga/setup.less b/public/css/icinga/setup.less index 66b08417e..26c4b4e64 100644 --- a/public/css/icinga/setup.less +++ b/public/css/icinga/setup.less @@ -110,7 +110,8 @@ } #setup div.buttons { - margin: 1.5em 0; + margin-top: 1.5em; // Yes, -top and -bottom, keep it like that... + margin-bottom: 1.5em; .double { position: absolute; @@ -166,25 +167,58 @@ } } -#setup table.requirements { +form#setup_requirements { + margin-top: 2em; + padding-top: 0.5em; + border-top: 2px solid @colorPetrol; + + div.buttons div.requirements-refresh { + width: 25%; + float: right; + text-align: center; + + a.button-like { + padding: 0.1em 0.4em; + } + } +} + +#setup > table.requirements { font-size: 0.9em; - margin: -1em -1em 2em; +} + +#setup table.requirements { + margin: -1em; border-spacing: 1em; border-collapse: separate; - border-bottom: 2px solid @colorPetrol; td { + padding: 0; + h2 { margin: 0 1em 0 0; } + table { + font-size: 102%; // Just a hack for webkit, remove this in case you can't see any difference or make it work without it + } + ul { margin: 0; padding-left: 1em; list-style-type: square; } + &.title { + width: 25%; + } + + &.desc { + width: 50%; + } + &.state { + width: 25%; color: white; padding: 0.4em; @@ -201,24 +235,6 @@ background-color: @colorCritical; } } - - &.btn-update { - padding-top: 0.3em; - text-align: center; - - div.buttons { - margin: 0; - - a.button-like { - padding: 0.2em 0.5em; - background-color: @colorPetro; - - &:hover, &:focus { - background-color: #666; - } - } - } - } } } diff --git a/public/css/icinga/tabs.less b/public/css/icinga/tabs.less index d9161f672..2c02bfb94 100644 --- a/public/css/icinga/tabs.less +++ b/public/css/icinga/tabs.less @@ -1,12 +1,13 @@ /*! Icinga Web 2 | (c) 2013-2015 Icinga Development Team | GPLv2+ */ ul.tabs { - padding: 1em 0 0 0; + padding: 0; list-style-type: inside; } .controls ul.tabs { - margin-left: 0em; + margin-left: -1em; + margin-right: -1em; margin-top: -3.54em; height: 2.6em; overflow: hidden; @@ -148,3 +149,19 @@ a.close-tab { content: '\e874'; } } + +span.display-on-hover { + font-size: 0.8em; + left: -9000px; + position: relative; + display: inline; + width: 0; + overflow: hidden; + color: #000000; + text-decoration: none; +} + +:hover > span.display-on-hover, :focus > span.display-on-hover { + left:1em; width:12em; + text-align: center +} diff --git a/public/css/icinga/widgets.less b/public/css/icinga/widgets.less index 7aaf8385e..7e6789dff 100644 --- a/public/css/icinga/widgets.less +++ b/public/css/icinga/widgets.less @@ -48,8 +48,22 @@ table.multiselect tr[href] td { -ms-user-select: none; } -#main form.filterEditor input[type=text], #main form.filterEditor select { - width: 12em; +#main div.filter { + margin-top: 1em; + + form.editor { + input[type=text], select { + width: 12em; + } + + ul.tree li.active { + background-color: #eee; + } + + div.buttons { + float: right; + } + } } ul.datafilter li { @@ -284,10 +298,6 @@ li li .badge { background-color: @colorUnknown; } -.widgetFilter li.active { - background-color: #eee; -} - .sparkline-box { position: relative; top: -3px; diff --git a/public/js/icinga/behavior/navigation.js b/public/js/icinga/behavior/navigation.js index 7a5cf8788..0d3300944 100644 --- a/public/js/icinga/behavior/navigation.js +++ b/public/js/icinga/behavior/navigation.js @@ -14,7 +14,7 @@ this.on('click', '#menu tr[href]', this.linkClicked, this); this.on('mouseenter', 'li.dropdown', this.dropdownHover, this); this.on('mouseleave', 'li.dropdown', this.dropdownLeave, this); - this.on('mouseenter', '#menu > ul > li', this.menuTitleHovered, this); + this.on('mouseenter', '#menu > nav > ul > li', this.menuTitleHovered, this); this.on('mouseleave', '#sidebar', this.leaveSidebar, this); this.on('rendered', this.onRendered); }; diff --git a/public/js/icinga/behavior/tooltip.js b/public/js/icinga/behavior/tooltip.js index c0abcbd45..e0826b005 100644 --- a/public/js/icinga/behavior/tooltip.js +++ b/public/js/icinga/behavior/tooltip.js @@ -28,9 +28,29 @@ $el.attr('title', $el.data('title-rich') || $el.attr('title')); }); $('svg .chart-data', el).tipsy({ gravity: 'se', html: true }); - $('.historycolorgrid a[title]', el).tipsy({ gravity: 's', offset: 2 }); - $('img.icon[title]', el).tipsy({ gravity: $.fn.tipsy.autoNS, offset: 2 }); - $('[title]', el).tipsy({ gravity: $.fn.tipsy.autoNS, delayIn: 500, html: true }); + $('i[title]', el).tipsy({ gravity: $.fn.tipsy.autoNS, offset: 2 }); + $('[title]', el).each(function (i, el) { + var $el = $(el); + var delay, gravity; + if ($el.data('tooltip-delay') !== undefined) { + delay = $el.data('tooltip-delay'); + } + if ($el.data('tooltip-gravity')) { + gravity = $el.data('tooltip-gravity'); + } + if (delay === undefined && + gravity === undefined && + !$el.data('title-rich')) { + // use native tooltips for everything that doesn't + // require specific behavior or html markup + return; + } + delay = delay === undefined ? 500 : delay; + $el.tipsy({ + gravity: gravity || $.fn.tipsy.autoNS, + delayIn: delay + }); + }); // migrate or remove all orphaned tooltips $('.tipsy').each(function () { diff --git a/public/js/icinga/events.js b/public/js/icinga/events.js index e4c1e54a0..cc927feb6 100644 --- a/public/js/icinga/events.js +++ b/public/js/icinga/events.js @@ -17,12 +17,6 @@ Icinga.Events.prototype = { - keyboard: { - ctrlKey: false, - altKey: false, - shiftKey: false - }, - /** * Icinga will call our initialize() function once it's ready */ @@ -125,6 +119,10 @@ $(document).on('change', 'form select.autosubmit', { self: this }, this.autoSubmitForm); $(document).on('change', 'form input.autosubmit', { self: this }, this.autoSubmitForm); + // Automatically check a radio button once a specific input is focused + $(document).on('focus', 'form select[data-related-radiobtn]', { self: this }, this.autoCheckRadioButton); + $(document).on('focus', 'form input[data-related-radiobtn]', { self: this }, this.autoCheckRadioButton); + $(document).on('keyup', '#menu input.search', {self: this}, this.autoSubmitSearch); $(document).on('click', '.tree .handle', { self: this }, this.treeNodeToggle); @@ -163,6 +161,15 @@ icinga.ui.fixControls(); }, + autoCheckRadioButton: function (event) { + var $input = $(event.currentTarget); + var $radio = $('#' + $input.attr('data-related-radiobtn')); + if ($radio.length) { + $radio.prop('checked', true); + } + return true; + }, + autoSubmitSearch: function(event) { var self = event.data.self; if ($('#menu input.search').val() === self.searchValue) { @@ -226,15 +233,24 @@ event.stopPropagation(); event.preventDefault(); - // activate spinner indicator - if ($button.hasClass('spinner')) { - $button.addClass('active'); + if ($button.length) { + // Activate spinner + if ($button.hasClass('spinner')) { + $button.addClass('active'); + } + + $target = self.getLinkTargetFor($button); + } else { + $target = self.getLinkTargetFor($form); + } + + if (! url) { + // Use the URL of the target container if the form's action is not set + url = $target.closest('.container').data('icinga-url'); } icinga.logger.debug('Submitting form: ' + method + ' ' + url, method); - $target = self.getLinkTargetFor($button); - if (method === 'GET') { var dataObj = $form.serializeObject(); @@ -257,6 +273,7 @@ } } } + icinga.loader.loadUrl(url, $target, data, method); return false; @@ -286,6 +303,10 @@ var data = self.icinga.ui.getSelectionKeys($table); var url = $table.data('icinga-multiselect-url'); + if ($(event.target).closest('form').length) { + // allow form actions in table rows to pass through + return; + } event.stopPropagation(); event.preventDefault(); @@ -339,32 +360,16 @@ return false; }, + /** + * Handle anchor, i.e. focus the element which is referenced by the anchor + * + * @param {string} query jQuery selector + */ handleAnchor: function(query) { var $element = $(query); if ($element.length > 0) { - // TODO(mh): Some elements are missing to place the right focus - // This is a fixed workarround until all header took place - - var $item = $element.find(':header:first').nextUntil(':header:first').next(); - if ($item.length > 0) { - $element = $item; - } - - /* - var focusQueries = ['h1:first', ':header:first', ':input:first']; - $.each(focusQueries, function(index,q) { - var $item = $element.find(q); - if ($item.length > 0) { - $element = $item; - return false; - } - }); - */ - - // If we want to focus an element which has no tabindex - // add one that we can focus is - if ($element.prop('tabindex') < 0) { - $element.prop('tabindex', '-1'); + if (typeof $element.attr('tabindex') === 'undefined') { + $element.attr('tabindex', -1); } $element.focus(); } @@ -460,6 +465,9 @@ } else { icinga.ui.layout1col(); } + $('table tr[href].active').removeClass('active'); + icinga.ui.storeSelectionData(null); + icinga.ui.loadSelectionData(); icinga.history.pushCurrentState(); } } @@ -560,6 +568,8 @@ $(document).off('submit', 'form', this.submitForm); $(document).off('change', 'form select.autosubmit', this.submitForm); $(document).off('change', 'form input.autosubmit', this.submitForm); + $(document).off('focus', 'form select[data-related-radiobtn]', this.autoCheckRadioButton); + $(document).off('focus', 'form input[data-related-radiobtn]', this.autoCheckRadioButton); }, destroy: function() { diff --git a/public/js/icinga/history.js b/public/js/icinga/history.js index 96711f709..a3f45e93d 100644 --- a/public/js/icinga/history.js +++ b/public/js/icinga/history.js @@ -112,7 +112,7 @@ this.lastPushUrl = url; window.history.pushState({icinga: true}, null, url); }, - + /** * Event handler for pop events * @@ -166,9 +166,10 @@ parts = document.location.hash.split(/#!/); if ($('#layout > #login').length) { - // We are on the login page! - $('#login form #redirect').val( - $('#login form #redirect').val() + '#!' + parts[1] + // We are on the login page + var redirect = $('#login form input[name=redirect]').first(); + redirect.val( + redirect.val() + '#!' + parts[1] ); } else { if ($('#col2').data('icingaUrl') !== main) { diff --git a/public/js/icinga/loader.js b/public/js/icinga/loader.js index 6f5df4ea1..99667ac1c 100644 --- a/public/js/icinga/loader.js +++ b/public/js/icinga/loader.js @@ -245,14 +245,41 @@ } }, + /** + * Process the X-Icinga-Redirect HTTP Response Header + * + * If the response includes the X-Icinga-Redirect header, redirects to the URL associated with the header. + * + * @param {object} req Current request + * + * @returns {boolean} Whether we're about to redirect + */ processRedirectHeader: function(req) { - var icinga = this.icinga; - var redirect = req.getResponseHeader('X-Icinga-Redirect'); - if (! redirect) return false; + var icinga = this.icinga, + redirect = req.getResponseHeader('X-Icinga-Redirect'); + + if (! redirect) { + return false; + } + redirect = decodeURIComponent(redirect); if (redirect.match(/__SELF__/)) { - redirect = redirect.replace(/__SELF__/, encodeURIComponent(document.location.pathname + document.location.search + document.location.hash)); + if (req.autorefresh) { + // Redirect to the current window's URL in case it's an auto-refresh request. If authenticated + // externally this ensures seamless re-login if the session's expired + redirect = redirect.replace( + /__SELF__/, + encodeURIComponent( + document.location.pathname + document.location.search + document.location.hash + ) + ); + } else { + // Redirect to the URL which required authentication. When clicking a link this ensures that we + // redirect to the link's URL instead of the current window's URL (see above) + redirect = redirect.replace(/__SELF__/, req.url); + } } + icinga.logger.debug( 'Got redirect for ', req.$target, ', URL was ' + redirect ); @@ -265,6 +292,12 @@ r.url = redirect; if (parts.length) { r.loadNext = parts; + } else if (!! document.location.hash) { + // Retain detail URL if the layout is rerendered + parts = document.location.hash.split('#!').splice(1); + if (parts.length) { + r.loadNext = parts; + } } } else { @@ -607,7 +640,7 @@ this.icinga.logger.error( req.status, errorThrown + ':', - $(req.responseText).text().slice(0, 100) + $(req.responseText).text().replace(/\s+/g, ' ').slice(0, 100) ); this.renderContentToContainer( req.responseText, @@ -727,12 +760,8 @@ // $container.html(content); } else { - if ($container.closest('.dashboard').length - ) { - if (! $('h1', $content).length) { - var title = $('h1', $container).first().detach(); - $('h1', $content).first().detach(); - } + if ($container.closest('.dashboard').length) { + var title = $('h1', $container).first().detach(); $container.html(title).append(content); } else if (action === 'replace') { $container.html(content); diff --git a/public/js/icinga/ui.js b/public/js/icinga/ui.js index 043693171..3bfb87c61 100644 --- a/public/js/icinga/ui.js +++ b/public/js/icinga/ui.js @@ -716,8 +716,9 @@ }, initializeControls: function (parent) { - - var self = this; + if ($(parent).closest('.dashboard').length) { + return; + } $('.controls', parent).each(function (idx, el) { var $el = $(el); @@ -744,7 +745,6 @@ }, fixControls: function ($parent) { - var self = this; if ('undefined' === typeof $parent) { @@ -761,11 +761,20 @@ return; } + if ($parent.closest('.dashboard').length) { + return; + } + // Enable this only in case you want to track down UI problems // self.icinga.logger.debug('Fixing controls for ', $parent); $('.controls', $parent).each(function (idx, el) { var $el = $(el); + + if ($el.closest('.dashboard').length) { + return; + } + var $fake = $el.next('.fake-controls'); var y = $parent.scrollTop(); diff --git a/test/php/application/forms/Config/Authentication/DbBackendFormTest.php b/test/php/application/forms/Config/Authentication/DbBackendFormTest.php index 2dc7fb5a0..fb93f6050 100644 --- a/test/php/application/forms/Config/Authentication/DbBackendFormTest.php +++ b/test/php/application/forms/Config/Authentication/DbBackendFormTest.php @@ -31,7 +31,11 @@ class DbBackendFormTest extends BaseTestCase ->shouldReceive('count') ->andReturn(2); - $form = new DbBackendForm(); + // Passing array(null) is required to make Mockery call the constructor... + $form = Mockery::mock('Icinga\Forms\Config\Authentication\DbBackendForm[getView]', array(null)); + $form->shouldReceive('getView->escape') + ->with(Mockery::type('string')) + ->andReturnUsing(function ($s) { return $s; }); $form->setTokenDisabled(); $form->setResources(array('test_db_backend')); $form->populate(array('resource' => 'test_db_backend')); @@ -53,7 +57,11 @@ class DbBackendFormTest extends BaseTestCase ->shouldReceive('count') ->andReturn(0); - $form = new DbBackendForm(); + // Passing array(null) is required to make Mockery call the constructor... + $form = Mockery::mock('Icinga\Forms\Config\Authentication\DbBackendForm[getView]', array(null)); + $form->shouldReceive('getView->escape') + ->with(Mockery::type('string')) + ->andReturnUsing(function ($s) { return $s; }); $form->setTokenDisabled(); $form->setResources(array('test_db_backend')); $form->populate(array('resource' => 'test_db_backend')); diff --git a/test/php/application/forms/Config/Authentication/LdapBackendFormTest.php b/test/php/application/forms/Config/Authentication/LdapBackendFormTest.php index 561d61b1c..56ea08987 100644 --- a/test/php/application/forms/Config/Authentication/LdapBackendFormTest.php +++ b/test/php/application/forms/Config/Authentication/LdapBackendFormTest.php @@ -31,7 +31,11 @@ class LdapBackendFormTest extends BaseTestCase Mockery::mock('overload:Icinga\Authentication\Backend\LdapUserBackend') ->shouldReceive('assertAuthenticationPossible')->andReturnNull(); - $form = new LdapBackendForm(); + // Passing array(null) is required to make Mockery call the constructor... + $form = Mockery::mock('Icinga\Forms\Config\Authentication\LdapBackendForm[getView]', array(null)); + $form->shouldReceive('getView->escape') + ->with(Mockery::type('string')) + ->andReturnUsing(function ($s) { return $s; }); $form->setTokenDisabled(); $form->setResources(array('test_ldap_backend')); $form->populate(array('resource' => 'test_ldap_backend')); @@ -52,7 +56,11 @@ class LdapBackendFormTest extends BaseTestCase Mockery::mock('overload:Icinga\Authentication\Backend\LdapUserBackend') ->shouldReceive('assertAuthenticationPossible')->andThrow(new AuthenticationException); - $form = new LdapBackendForm(); + // Passing array(null) is required to make Mockery call the constructor... + $form = Mockery::mock('Icinga\Forms\Config\Authentication\LdapBackendForm[getView]', array(null)); + $form->shouldReceive('getView->escape') + ->with(Mockery::type('string')) + ->andReturnUsing(function ($s) { return $s; }); $form->setTokenDisabled(); $form->setResources(array('test_ldap_backend')); $form->populate(array('resource' => 'test_ldap_backend')); diff --git a/test/php/application/forms/Config/Resource/LdapResourceFormTest.php b/test/php/application/forms/Config/Resource/LdapResourceFormTest.php index f6d823046..f382f8bb8 100644 --- a/test/php/application/forms/Config/Resource/LdapResourceFormTest.php +++ b/test/php/application/forms/Config/Resource/LdapResourceFormTest.php @@ -29,7 +29,11 @@ class LdapResourceFormTest extends BaseTestCase Mockery::mock()->shouldReceive('testCredentials')->once()->andReturn(true)->getMock() ); - $form = new LdapResourceForm(); + // Passing array(null) is required to make Mockery call the constructor... + $form = Mockery::mock('Icinga\Forms\Config\Resource\LdapResourceForm[getView]', array(null)); + $form->shouldReceive('getView->escape') + ->with(Mockery::type('string')) + ->andReturnUsing(function ($s) { return $s; }); $form->setTokenDisabled(); $this->assertTrue( @@ -48,7 +52,11 @@ class LdapResourceFormTest extends BaseTestCase Mockery::mock()->shouldReceive('testCredentials')->once()->andThrow('\Exception')->getMock() ); - $form = new LdapResourceForm(); + // Passing array(null) is required to make Mockery call the constructor... + $form = Mockery::mock('Icinga\Forms\Config\Resource\LdapResourceForm[getView]', array(null)); + $form->shouldReceive('getView->escape') + ->with(Mockery::type('string')) + ->andReturnUsing(function ($s) { return $s; }); $form->setTokenDisabled(); $this->assertFalse( diff --git a/test/php/library/Icinga/File/Ini/IniWriterTest.php b/test/php/library/Icinga/File/Ini/IniWriterTest.php index 56f7fbf3f..4dc94a63a 100644 --- a/test/php/library/Icinga/File/Ini/IniWriterTest.php +++ b/test/php/library/Icinga/File/Ini/IniWriterTest.php @@ -726,7 +726,7 @@ EOD; } /** - * Write a INI-configuration string to a temporary file and return it's path + * Write a INI-configuration string to a temporary file and return its path * * @param string $config The config string to write * diff --git a/test/php/library/Icinga/UserTest.php b/test/php/library/Icinga/UserTest.php index 9c14a93d3..dc55dc62d 100644 --- a/test/php/library/Icinga/UserTest.php +++ b/test/php/library/Icinga/UserTest.php @@ -66,12 +66,16 @@ class UserTest extends BaseTestCase $user->setPermissions(array( 'test', 'test/some/specific', - 'test/more/*' + 'test/more/*', + 'test/wildcard-with-wildcard/*' )); $this->assertTrue($user->can('test')); $this->assertTrue($user->can('test/some/specific')); $this->assertTrue($user->can('test/more/everything')); + $this->assertTrue($user->can('test/wildcard-with-wildcard/*')); + $this->assertTrue($user->can('test/wildcard-with-wildcard/sub/sub')); $this->assertFalse($user->can('not/test')); $this->assertFalse($user->can('test/some/not/so/specific')); + $this->assertFalse($user->can('test/wildcard2/*')); } }
    diff --git a/modules/monitoring/application/views/scripts/process/disable-notifications.phtml b/modules/monitoring/application/views/scripts/process/disable-notifications.phtml index 9b9a2b133..e8c75e53f 100644 --- a/modules/monitoring/application/views/scripts/process/disable-notifications.phtml +++ b/modules/monitoring/application/views/scripts/process/disable-notifications.phtml @@ -1,6 +1,8 @@ +compact): ?>
    - tabs->showOnlyCloseButton() ?> + tabs->showOnlyCloseButton(); ?>
    +

    notifications_enabled === false): ?> diff --git a/modules/monitoring/application/views/scripts/process/info.phtml b/modules/monitoring/application/views/scripts/process/info.phtml index b881641e6..5ebecce4d 100644 --- a/modules/monitoring/application/views/scripts/process/info.phtml +++ b/modules/monitoring/application/views/scripts/process/info.phtml @@ -1,18 +1,14 @@ runtimeVariables()->create($this->runtimevariables); $cp = $this->checkPerformance()->create($this->checkperformance); -?> +if (! $this->compact): ?>
    - tabs ?> + tabs; ?>
    +
    -

    - translate('Monitoring Health'); ?> -

    -
    @@ -20,11 +16,15 @@ $cp = $this->checkPerformance()->create($this->checkperformance);
    -

    - translate('Process Info') ?> -

    +

    translate('Process Info') ?>

    + + + + @@ -55,31 +55,33 @@ $cp = $this->checkPerformance()->create($this->checkperformance); ? $this->programStatus->global_host_event_handler : $this->translate('N/A'); ?> + + + +
    translate('Program Version') ?>programStatus->program_version + ? $this->programStatus->program_version + : $this->translate('N/A') ?>
    translate('Program Start Time') ?> dateFormat()->formatDateTime($this->programStatus->program_start_time) ?>
    translate('Active Endpoint'); ?>programStatus->endpoint_name + ? $this->programStatus->endpoint_name + : $this->translate('N/A') ?>
    programStatus->is_currently_running === true): ?>
    translate('%s has been up and running with PID %d since %s'), + $this->translate('Backend %s has been up and running with PID %d since %s'), $this->backendName, $this->programStatus->process_id, $this->timeSince($this->programStatus->program_start_time)) ?>
    - translate('%s is not running'), $this->backendName) ?> + translate('Backend %s is not running'), $this->backendName) ?>
    -

    - translate('Performance Info') ?> -

    +

    translate('Performance Info') ?>

    -

    - translate('Object summaries') ?> -

    +

    translate('Object summaries') ?>

    @@ -127,9 +129,7 @@ $cp = $this->checkPerformance()->create($this->checkperformance);
    -

    - translate('Active checks') ?> -

    +

    translate('Active checks') ?>

    @@ -159,9 +159,7 @@ $cp = $this->checkPerformance()->create($this->checkperformance);
    -

    - translate('Passive checks') ?> -

    +

    translate('Passive checks') ?>

    diff --git a/modules/monitoring/application/views/scripts/process/not-running.phtml b/modules/monitoring/application/views/scripts/process/not-running.phtml index 58b6c2980..8439fc49e 100644 --- a/modules/monitoring/application/views/scripts/process/not-running.phtml +++ b/modules/monitoring/application/views/scripts/process/not-running.phtml @@ -1,6 +1,8 @@ +compact): ?>
    - tabs ?> + tabs; ?>
    +
    translate('%s is currently not up and running'), $this->backendName) ?>
    diff --git a/modules/monitoring/application/views/scripts/process/performance.phtml b/modules/monitoring/application/views/scripts/process/performance.phtml index 6276d76d1..0bff8891f 100644 --- a/modules/monitoring/application/views/scripts/process/performance.phtml +++ b/modules/monitoring/application/views/scripts/process/performance.phtml @@ -1,7 +1,8 @@ +compact): ?>
    -tabs ?> + tabs; ?>
    -runtimeVariables()->create($this->runtimevariables); $cp = $this->checkPerformance()->create($this->checkperformance); diff --git a/modules/monitoring/application/views/scripts/service/show.phtml b/modules/monitoring/application/views/scripts/service/show.phtml index 3a09e2bf4..4d33644ce 100644 --- a/modules/monitoring/application/views/scripts/service/show.phtml +++ b/modules/monitoring/application/views/scripts/service/show.phtml @@ -1,4 +1,7 @@
    + compact): ?> + tabs; ?> + render('partials/service/object-header.phtml') ?>

    translate("Service detail information") ?>

    diff --git a/modules/monitoring/application/views/scripts/services/show.phtml b/modules/monitoring/application/views/scripts/services/show.phtml index 0c7f20d46..5159e65b3 100644 --- a/modules/monitoring/application/views/scripts/services/show.phtml +++ b/modules/monitoring/application/views/scripts/services/show.phtml @@ -15,7 +15,7 @@ - translate('No services matching the filter'); ?> + translate('No services found matching the filter'); ?> translatePlural( 'Issue commands to %s selected service:', @@ -63,6 +63,15 @@ array('icon' => 'comment') ); ?> + + hasPermission('monitoring/command/send-custom-notification')): ?> +
    qlink( + sprintf($this->translate('Send a custom notification for all %u services'), $serviceCount), + $sendCustomNotificationLink, + null, + array('icon' => 'comment') + ); ?>
    +

    state, array(0, 99))) { if ($object->acknowledged): ?> - - - + + + +is_reachable !== null): ?> + + + + + diff --git a/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml b/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml index 639437a03..2a4e4b033 100644 --- a/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml +++ b/modules/monitoring/application/views/scripts/show/components/checkstatistics.phtml @@ -1,6 +1,6 @@ getType() === $object::TYPE_HOST) { $isService = false; diff --git a/modules/monitoring/application/views/scripts/show/components/comments.phtml b/modules/monitoring/application/views/scripts/show/components/comments.phtml index fa7d4606a..478b1e7f3 100644 --- a/modules/monitoring/application/views/scripts/show/components/comments.phtml +++ b/modules/monitoring/application/views/scripts/show/components/comments.phtml @@ -2,7 +2,7 @@ - - + - diff --git a/modules/monitoring/application/views/scripts/show/components/contacts.phtml b/modules/monitoring/application/views/scripts/show/components/contacts.phtml index c00714e9c..f445e10d1 100644 --- a/modules/monitoring/application/views/scripts/show/components/contacts.phtml +++ b/modules/monitoring/application/views/scripts/show/components/contacts.phtml @@ -7,7 +7,7 @@ if (! empty($object->contacts)) { $list[] = $this->qlink( $contact->contact_alias, 'monitoring/show/contact', - array('contact' => $contact->contact_name), + array('contact_name' => $contact->contact_name), array('title' => sprintf($this->translate('Show detailed information about %s'), $contact->contact_alias)) ); } @@ -27,7 +27,7 @@ if (! empty($object->contactgroups)) { $list[] = $this->qlink( $contactgroup->contactgroup_alias, 'monitoring/list/contactgroups', - array('contactgroup' => $contactgroup->contactgroup_name), + array('contactgroup_name' => $contactgroup->contactgroup_name), array('title' => sprintf($this->translate('List contacts in contact-group "%s"'), $contactgroup->contactgroup_alias)) ); } diff --git a/modules/monitoring/application/views/scripts/show/components/customvars.phtml b/modules/monitoring/application/views/scripts/show/components/customvars.phtml index aa2e479e4..50b82dbef 100644 --- a/modules/monitoring/application/views/scripts/show/components/customvars.phtml +++ b/modules/monitoring/application/views/scripts/show/components/customvars.phtml @@ -1,3 +1,8 @@ + + +customvars as $name => $value) { diff --git a/modules/monitoring/application/views/scripts/show/components/downtime.phtml b/modules/monitoring/application/views/scripts/show/components/downtime.phtml index 76a4be005..a10863054 100644 --- a/modules/monitoring/application/views/scripts/show/components/downtime.phtml +++ b/modules/monitoring/application/views/scripts/show/components/downtime.phtml @@ -2,7 +2,7 @@ - - + - diff --git a/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml b/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml index eed1ea328..f4b20147d 100644 --- a/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml +++ b/modules/monitoring/application/views/scripts/show/components/hostgroups.phtml @@ -7,7 +7,7 @@ foreach ($object->hostgroups as $name => $alias) { $list[] = $this->qlink( $alias, 'monitoring/list/hosts', - array('hostgroup' => $name), + array('hostgroup_name' => $name), array('title' => sprintf($this->translate('List all hosts in the group "%s"'), $alias)) ); } diff --git a/modules/monitoring/application/views/scripts/show/components/notifications.phtml b/modules/monitoring/application/views/scripts/show/components/notifications.phtml index 5c52e872a..af57eb934 100644 --- a/modules/monitoring/application/views/scripts/show/components/notifications.phtml +++ b/modules/monitoring/application/views/scripts/show/components/notifications.phtml @@ -1,34 +1,58 @@ -state, array(0, 99))) { - return; -} - -?> diff --git a/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml b/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml index 093e03286..93697ce89 100644 --- a/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml +++ b/modules/monitoring/application/views/scripts/show/components/servicegroups.phtml @@ -7,7 +7,7 @@ foreach ($object->servicegroups as $name => $alias) { $list[] = $this->qlink( $alias, 'monitoring/list/services', - array('servicegroup' => $name), + array('servicegroup_name' => $name), array('title' => sprintf($this->translate('List all services in the group "%s"'), $alias)) ); } diff --git a/modules/monitoring/application/views/scripts/show/contact.phtml b/modules/monitoring/application/views/scripts/show/contact.phtml index c4142707a..027301c88 100644 --- a/modules/monitoring/application/views/scripts/show/contact.phtml +++ b/modules/monitoring/application/views/scripts/show/contact.phtml @@ -1,6 +1,8 @@ getHelper('ContactFlags') ?>
    - tabs ?> + compact): ?> + tabs; ?> +

    translate('Contact details') ?>

    translate('No notifications have been sent for this contact') ?>
    diff --git a/modules/monitoring/application/views/scripts/show/history.phtml b/modules/monitoring/application/views/scripts/show/history.phtml index 0542294d6..3777d0384 100644 --- a/modules/monitoring/application/views/scripts/show/history.phtml +++ b/modules/monitoring/application/views/scripts/show/history.phtml @@ -1,29 +1,33 @@ getType() === 'host'; -?> - +if (! $this->compact): ?>
    - + tabs; ?> + render('partials/host/object-header.phtml'); ?> - + render('partials/service/object-header.phtml'); ?> - +

    translate('This Object\'s Event History'); ?>

    - widget('limiter', array('url' => $url, 'max' => $history->count())); ?> - paginationControl($history, null, null, array('preserve' => $this->preserve)); ?> + sortBox; ?> + limiter; ?> + paginator; ?> + filterEditor; ?>
    - +
    - - translate('No history available for this object'); ?> -
    - +translate('No history available for this object') . '
    '; + return; +} +?> qlink( $contact, 'monitoring/show/contact', - array('contact' => $contact), + array('contact_name' => $contact), array('title' => sprintf($view->translate('Show detailed information about %s'), $contact)) ); } diff --git a/modules/monitoring/application/views/scripts/show/services.phtml b/modules/monitoring/application/views/scripts/show/services.phtml index 57b4b204e..d3a0c3ef8 100644 --- a/modules/monitoring/application/views/scripts/show/services.phtml +++ b/modules/monitoring/application/views/scripts/show/services.phtml @@ -1,4 +1,7 @@
    + compact): ?> + tabs; ?> + render('partials/host/object-header.phtml') ?> render('partials/host/servicesummary.phtml') ?>
    diff --git a/modules/monitoring/application/views/scripts/tactical/index.phtml b/modules/monitoring/application/views/scripts/tactical/index.phtml index 897ef9776..3882b27b3 100644 --- a/modules/monitoring/application/views/scripts/tactical/index.phtml +++ b/modules/monitoring/application/views/scripts/tactical/index.phtml @@ -4,7 +4,6 @@
    -

    translate('Tactical Overview') ?>

    statusSummary->hosts_down || $this->statusSummary->hosts_unreachable): ?> render('tactical/components/problem_hosts.phtml'); ?> diff --git a/modules/monitoring/application/views/scripts/timeline/index.phtml b/modules/monitoring/application/views/scripts/timeline/index.phtml index a9b5666f6..d0cc8d34c 100644 --- a/modules/monitoring/application/views/scripts/timeline/index.phtml +++ b/modules/monitoring/application/views/scripts/timeline/index.phtml @@ -3,16 +3,12 @@ use Icinga\Web\Url; use Icinga\Util\Color; $groupInfo = $timeline->getGroupInfo(); -$firstRow = !$beingExtended; +$firstRow = ! $beingExtended; -?> - +if (! $beingExtended && !$this->compact): ?>
    - tabs ?> -
    -

    - translate('Filters') ?> -

    + tabs; ?> +
    @@ -24,8 +20,9 @@ $firstRow = !$beingExtended;
    + +
    -

    translate('Timeline'); ?>

    diff --git a/modules/monitoring/configuration.php b/modules/monitoring/configuration.php index fa7732e10..fd3ee334d 100644 --- a/modules/monitoring/configuration.php +++ b/modules/monitoring/configuration.php @@ -1,7 +1,7 @@ providePermission( 'monitoring/command/*', @@ -55,6 +55,10 @@ $this->providePermission( 'monitoring/command/feature/object', $this->translate('Allow processing commands for toggling features on host and service objects') ); +$this->providePermission( + 'monitoring/command/send-custom-notification', + $this->translate('Allow sending custom notifications for hosts and services') +); $this->provideRestriction( 'monitoring/hosts/filter', @@ -81,26 +85,26 @@ $this->provideSetupWizard('Icinga\Module\Monitoring\MonitoringWizard'); /* * Available Search Urls */ -$this->provideSearchUrl($this->translate('Hosts'), 'monitoring/list/hosts?sort=host_severity&limit=10'); -$this->provideSearchUrl($this->translate('Services'), 'monitoring/list/services?sort=service_severity&limit=10'); -$this->provideSearchUrl($this->translate('Hostgroups'), 'monitoring/list/hostgroups?limit=10'); -$this->provideSearchUrl($this->translate('Servicegroups'), 'monitoring/list/servicegroups?limit=10'); +$this->provideSearchUrl($this->translate('Hosts'), 'monitoring/list/hosts?sort=host_severity&limit=10', 99); +$this->provideSearchUrl($this->translate('Services'), 'monitoring/list/services?sort=service_severity&limit=10', 98); +$this->provideSearchUrl($this->translate('Hostgroups'), 'monitoring/list/hostgroups?limit=10', 97); +$this->provideSearchUrl($this->translate('Servicegroups'), 'monitoring/list/servicegroups?limit=10', 96); /* * Problems Section */ $section = $this->menuSection($this->translate('Problems'), array( - 'renderer' => 'ProblemMenuItemRenderer', + 'renderer' => 'Icinga\Module\Monitoring\Web\Menu\ProblemMenuItemRenderer', 'icon' => 'block', 'priority' => 20 )); $section->add($this->translate('Unhandled Hosts'), array( - 'renderer' => 'UnhandledHostMenuItemRenderer', + 'renderer' => 'Icinga\Module\Monitoring\Web\Menu\UnhandledHostMenuItemRenderer', 'url' => 'monitoring/list/hosts?host_problem=1&host_handled=0', 'priority' => 30 )); $section->add($this->translate('Unhandled Services'), array( - 'renderer' => 'UnhandledServiceMenuItemRenderer', + 'renderer' => 'Icinga\Module\Monitoring\Web\Menu\UnhandledServiceMenuItemRenderer', 'url' => 'monitoring/list/services?service_problem=1&service_handled=0&sort=service_severity', 'priority' => 40 )); @@ -204,7 +208,8 @@ $section->add($this->translate('Alert Summary'), array( $section = $this->menuSection($this->translate('System')); $section->add($this->translate('Monitoring Health'), array( 'url' => 'monitoring/process/info', - 'priority' => 120 + 'priority' => 120, + 'renderer' => 'Icinga\Module\Monitoring\Web\Menu\BackendAvailabilityMenuItemRenderer' )); /* diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommentQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommentQuery.php index ce72de5a2..eff3bc1e7 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommentQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommentQuery.php @@ -13,15 +13,18 @@ class CommentQuery extends IdoQuery 'comment_internal_id' => 'cm.internal_comment_id', 'comment_data' => 'cm.comment_data', 'comment_author' => 'cm.author_name COLLATE latin1_general_ci', + 'comment_author_name' => 'cm.author_name', 'comment_timestamp' => 'UNIX_TIMESTAMP(cm.comment_time)', 'comment_type' => "CASE cm.entry_type WHEN 1 THEN 'comment' WHEN 2 THEN 'downtime' WHEN 3 THEN 'flapping' WHEN 4 THEN 'ack' END", 'comment_is_persistent' => 'cm.is_persistent', 'comment_expiration' => 'CASE cm.expires WHEN 1 THEN UNIX_TIMESTAMP(cm.expiration_time) ELSE NULL END', - 'comment_host' => 'CASE WHEN ho.name1 IS NULL THEN so.name1 ELSE ho.name1 END COLLATE latin1_general_ci', - 'host' => 'CASE WHEN ho.name1 IS NULL THEN so.name1 ELSE ho.name1 END COLLATE latin1_general_ci', // #7278, #7279 - 'comment_service' => 'so.name2 COLLATE latin1_general_ci', - 'service' => 'so.name2 COLLATE latin1_general_ci', // #7278, #7279 'comment_objecttype' => "CASE WHEN ho.object_id IS NOT NULL THEN 'host' ELSE CASE WHEN so.object_id IS NOT NULL THEN 'service' ELSE NULL END END", + 'host' => 'CASE WHEN ho.name1 IS NULL THEN so.name1 ELSE ho.name1 END COLLATE latin1_general_ci', + 'host_name' => 'CASE WHEN ho.name1 IS NULL THEN so.name1 ELSE ho.name1 END', + 'service' => 'so.name2 COLLATE latin1_general_ci', + 'service_description' => 'so.name2', + 'service_host' => 'so.name1 COLLATE latin1_general_ci', + 'service_host_name' => 'so.name1' ), 'hosts' => array( 'host_display_name' => 'CASE WHEN sh.display_name IS NOT NULL THEN sh.display_name ELSE h.display_name END' diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommentdeletionhistoryQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommentdeletionhistoryQuery.php index ec8fbd147..9346ce09a 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommentdeletionhistoryQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommentdeletionhistoryQuery.php @@ -7,24 +7,22 @@ class CommentdeletionhistoryQuery extends IdoQuery { protected $columnMap = array( 'commenthistory' => array( - 'state_time' => 'h.deletion_time', - 'timestamp' => 'UNIX_TIMESTAMP(h.deletion_time)', - 'raw_timestamp' => 'h.deletion_time', - 'object_id' => 'h.object_id', - 'type' => "(CASE h.entry_type WHEN 1 THEN 'comment_deleted' WHEN 2 THEN 'dt_comment_deleted' WHEN 3 THEN 'flapping_deleted' WHEN 4 THEN 'ack_deleted' END)", - 'state' => '(NULL)', - 'state_type' => '(NULL)', - 'output' => "('[' || h.author_name || '] ' || h.comment_data)", - 'attempt' => '(NULL)', - 'max_attempts' => '(NULL)', + 'state_time' => 'h.deletion_time', + 'timestamp' => 'UNIX_TIMESTAMP(h.deletion_time)', + 'raw_timestamp' => 'h.deletion_time', + 'object_id' => 'h.object_id', + 'type' => "(CASE h.entry_type WHEN 1 THEN 'comment_deleted' WHEN 2 THEN 'dt_comment_deleted' WHEN 3 THEN 'flapping_deleted' WHEN 4 THEN 'ack_deleted' END)", + 'state' => '(NULL)', + 'state_type' => '(NULL)', + 'output' => "('[' || h.author_name || '] ' || h.comment_data)", + 'attempt' => '(NULL)', + 'max_attempts' => '(NULL)', - 'host' => 'o.name1 COLLATE latin1_general_ci', - 'service' => 'o.name2 COLLATE latin1_general_ci', - 'host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'service_host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" + 'host' => 'o.name1 COLLATE latin1_general_ci', + 'service' => 'o.name2 COLLATE latin1_general_ci', + 'host_name' => 'o.name1', + 'service_description' => 'o.name2', + 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommenthistoryQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommenthistoryQuery.php index 460d4be88..6b2f821e9 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommenthistoryQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/CommenthistoryQuery.php @@ -7,24 +7,22 @@ class CommenthistoryQuery extends IdoQuery { protected $columnMap = array( 'commenthistory' => array( - 'state_time' => 'h.comment_time', - 'timestamp' => 'UNIX_TIMESTAMP(h.comment_time)', - 'raw_timestamp' => 'h.comment_time', - 'object_id' => 'h.object_id', - 'type' => "(CASE h.entry_type WHEN 1 THEN 'comment' WHEN 2 THEN 'dt_comment' WHEN 3 THEN 'flapping' WHEN 4 THEN 'ack' END)", - 'state' => '(NULL)', - 'state_type' => '(NULL)', - 'output' => "('[' || h.author_name || '] ' || h.comment_data)", - 'attempt' => '(NULL)', - 'max_attempts' => '(NULL)', + 'state_time' => 'h.comment_time', + 'timestamp' => 'UNIX_TIMESTAMP(h.comment_time)', + 'raw_timestamp' => 'h.comment_time', + 'object_id' => 'h.object_id', + 'type' => "(CASE h.entry_type WHEN 1 THEN 'comment' WHEN 2 THEN 'dt_comment' WHEN 3 THEN 'flapping' WHEN 4 THEN 'ack' END)", + 'state' => '(NULL)', + 'state_type' => '(NULL)', + 'output' => "('[' || h.author_name || '] ' || h.comment_data)", + 'attempt' => '(NULL)', + 'max_attempts' => '(NULL)', - 'host' => 'o.name1 COLLATE latin1_general_ci', - 'service' => 'o.name2 COLLATE latin1_general_ci', - 'host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'service_host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" + 'host' => 'o.name1 COLLATE latin1_general_ci', + 'service' => 'o.name2 COLLATE latin1_general_ci', + 'host_name' => 'o.name1', + 'service_description' => 'o.name2', + 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/ContactQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/ContactQuery.php index b7dd449b2..3d23b8947 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/ContactQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/ContactQuery.php @@ -7,41 +7,41 @@ class ContactQuery extends IdoQuery { protected $columnMap = array( 'contacts' => array( - 'contact_id' => 'c.contact_id', - 'contact_name' => 'co.name1 COLLATE latin1_general_ci', - 'contact_alias' => 'c.alias COLLATE latin1_general_ci', - 'contact_email' => 'c.email_address COLLATE latin1_general_ci', - 'contact_pager' => 'c.pager_address', - 'contact_object_id' => 'c.contact_object_id', - 'contact_has_host_notfications' => 'c.host_notifications_enabled', - 'contact_has_service_notfications' => 'c.service_notifications_enabled', - 'contact_can_submit_commands' => 'c.can_submit_commands', - 'contact_notify_service_recovery' => 'c.notify_service_recovery', - 'contact_notify_service_warning' => 'c.notify_service_warning', - 'contact_notify_service_critical' => 'c.notify_service_critical', - 'contact_notify_service_unknown' => 'c.notify_service_unknown', - 'contact_notify_service_flapping' => 'c.notify_service_flapping', - 'contact_notify_service_downtime' => 'c.notify_service_recovery', - 'contact_notify_host_recovery' => 'c.notify_host_recovery', - 'contact_notify_host_down' => 'c.notify_host_down', - 'contact_notify_host_unreachable' => 'c.notify_host_unreachable', - 'contact_notify_host_flapping' => 'c.notify_host_flapping', - 'contact_notify_host_downtime' => 'c.notify_host_downtime', + 'contact_id' => 'c.contact_id', + 'contact' => 'co.name1 COLLATE latin1_general_ci', + 'contact_name' => 'co.name1', + 'contact_alias' => 'c.alias COLLATE latin1_general_ci', + 'contact_email' => 'c.email_address COLLATE latin1_general_ci', + 'contact_pager' => 'c.pager_address', + 'contact_object_id' => 'c.contact_object_id', + 'contact_has_host_notfications' => 'c.host_notifications_enabled', + 'contact_has_service_notfications' => 'c.service_notifications_enabled', + 'contact_can_submit_commands' => 'c.can_submit_commands', + 'contact_notify_service_recovery' => 'c.notify_service_recovery', + 'contact_notify_service_warning' => 'c.notify_service_warning', + 'contact_notify_service_critical' => 'c.notify_service_critical', + 'contact_notify_service_unknown' => 'c.notify_service_unknown', + 'contact_notify_service_flapping' => 'c.notify_service_flapping', + 'contact_notify_service_downtime' => 'c.notify_service_recovery', + 'contact_notify_host_recovery' => 'c.notify_host_recovery', + 'contact_notify_host_down' => 'c.notify_host_down', + 'contact_notify_host_unreachable' => 'c.notify_host_unreachable', + 'contact_notify_host_flapping' => 'c.notify_host_flapping', + 'contact_notify_host_downtime' => 'c.notify_host_downtime' ), 'timeperiods' => array( - 'contact_notify_host_timeperiod' => 'ht.alias COLLATE latin1_general_ci', + 'contact_notify_host_timeperiod' => 'ht.alias COLLATE latin1_general_ci', 'contact_notify_service_timeperiod' => 'st.alias COLLATE latin1_general_ci' ), 'hosts' => array( - 'host_object_id' => 'ho.object_id', - 'host_name' => 'ho.name1 COLLATE latin1_general_ci', - 'host' => 'ho.name1 COLLATE latin1_general_ci', + 'host' => 'ho.name1 COLLATE latin1_general_ci', + 'host_name' => 'ho.name1' ), 'services' => array( - 'service_object_id' => 'so.object_id', - 'service_host_name' => 'so.name1 COLLATE latin1_general_ci', - 'service' => 'so.name1 COLLATE latin1_general_ci', - 'service_description' => 'so.name2 COLLATE latin1_general_ci', + 'service' => 'so.name2 COLLATE latin1_general_ci', + 'service_description' => 'so.name2', + 'service_host' => 'so.name1 COLLATE latin1_general_ci', + 'service_host_name' => 'so.name1' ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/ContactgroupQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/ContactgroupQuery.php index d975da05e..152e964f8 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/ContactgroupQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/ContactgroupQuery.php @@ -8,14 +8,14 @@ class ContactgroupQuery extends IdoQuery protected $columnMap = array( 'contactgroups' => array( 'contactgroup' => 'cgo.name1 COLLATE latin1_general_ci', - 'contactgroup_name' => 'cgo.name1 COLLATE latin1_general_ci', - 'contactgroup_alias' => 'cg.alias', + 'contactgroup_name' => 'cgo.name1', + 'contactgroup_alias' => 'cg.alias COLLATE latin1_general_ci' ), 'contacts' => array( 'contact' => 'co.name1 COLLATE latin1_general_ci', - 'contact_name' => 'co.name1 COLLATE latin1_general_ci', - 'contact_alias' => 'c.alias', - 'contact_email' => 'c.email_address', + 'contact_name' => 'co.name1', + 'contact_alias' => 'c.alias COLLATE latin1_general_ci', + 'contact_email' => 'c.email_address COLLATE latin1_general_ci', 'contact_pager' => 'c.pager_address', 'contact_has_host_notfications' => 'c.host_notifications_enabled', 'contact_has_service_notfications' => 'c.service_notifications_enabled', @@ -33,13 +33,14 @@ class ContactgroupQuery extends IdoQuery 'contact_notify_host_downtime' => 'c.notify_host_downtime', ), 'hosts' => array( - 'host' => 'ho.name1', + 'host' => 'ho.name1 COLLATE latin1_general_ci', 'host_name' => 'ho.name1' ), 'services' => array( 'service' => 'so.name2 COLLATE latin1_general_ci', - 'service_description' => 'so.name2 COLLATE latin1_general_ci', - 'service_host_name' => 'so.name1 COLLATE latin1_general_ci' + 'service_description' => 'so.name2', + 'service_host' => 'so.name1 COLLATE latin1_general_ci', + 'service_host_name' => 'so.name1' ) ); @@ -95,10 +96,10 @@ class ContactgroupQuery extends IdoQuery protected function joinServices() { - $scgSub = $this->db->select()->distinct()->from( - $this->prefix . 'service_contactgroups', - array('contactgroup_object_id', 'service_id') - ); +// $scgSub = $this->db->select()->distinct()->from( +// $this->prefix . 'service_contactgroups', +// array('contactgroup_object_id', 'service_id') +// ); /* This subselect is a workaround for a fucking stupid bug. Other tables diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/CustomvarQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/CustomvarQuery.php index d40a7133d..3bf54756a 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/CustomvarQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/CustomvarQuery.php @@ -13,14 +13,14 @@ class CustomvarQuery extends IdoQuery ), 'objects' => array( 'host' => 'cvo.name1 COLLATE latin1_general_ci', - 'host_name' => 'cvo.name1 COLLATE latin1_general_ci', - 'service_host_name' => 'cvo.name1 COLLATE latin1_general_ci', - 'service' => 'cvo.name2 COLLATE latin1_general_ci', - 'service_description' => 'cvo.name2 COLLATE latin1_general_ci', - 'contact_name' => 'cvo.name1 COLLATE latin1_general_ci', + 'host_name' => 'cvo.name1', + 'service' => 'cvo.name2 COLLATE latin1_general_ci', + 'service_description' => 'cvo.name2', + 'contact' => 'cvo.name1 COLLATE latin1_general_ci', + 'contact_name' => 'cvo.name1', 'object_type' => "CASE cvo.objecttype_id WHEN 1 THEN 'host' WHEN 2 THEN 'service' WHEN 10 THEN 'contact' ELSE 'invalid' END", 'object_type_id' => 'cvo.objecttype_id' -// 'object_type' => "CASE cvo.objecttype_id WHEN 1 THEN 'host' WHEN 2 THEN 'service' WHEN 3 THEN 'hostgroup' WHEN 4 THEN 'servicegroup' WHEN 5 THEN 'hostescalation' WHEN 6 THEN 'serviceescalation' WHEN 7 THEN 'hostdependency' WHEN 8 THEN 'servicedependency' WHEN 9 THEN 'timeperiod' WHEN 10 THEN 'contact' WHEN 11 THEN 'contactgroup' WHEN 12 THEN 'command' ELSE 'other' END" +// 'object_type' => "CASE cvo.objecttype_id WHEN 1 THEN 'host' WHEN 2 THEN 'service' WHEN 3 THEN 'hostgroup' WHEN 4 THEN 'servicegroup' WHEN 5 THEN 'hostescalation' WHEN 6 THEN 'serviceescalation' WHEN 7 THEN 'hostdependency' WHEN 8 THEN 'servicedependency' WHEN 9 THEN 'timeperiod' WHEN 10 THEN 'contact' WHEN 11 THEN 'contactgroup' WHEN 12 THEN 'command' ELSE 'other' END" ), ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeQuery.php index 96b0dd5d7..a3e66cbaf 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeQuery.php @@ -3,12 +3,18 @@ namespace Icinga\Module\Monitoring\Backend\Ido\Query; +/** + * Query for host and service downtimes + */ class DowntimeQuery extends IdoQuery { + /** + * {@inheritdoc} + */ protected $columnMap = array( 'downtime' => array( - 'downtime_author' => 'sd.author_name', - 'author' => 'sd.author_name', + 'downtime_author_name' => 'sd.author_name', + 'author' => 'sd.author_name COLLATE latin1_general_ci', 'downtime_comment' => 'sd.comment_data', 'downtime_entry_time' => 'UNIX_TIMESTAMP(sd.entry_time)', 'downtime_is_fixed' => 'sd.is_fixed', @@ -21,22 +27,31 @@ class DowntimeQuery extends IdoQuery 'downtime_duration' => 'sd.duration', 'downtime_is_in_effect' => 'sd.is_in_effect', 'downtime_internal_id' => 'sd.internal_downtime_id', - 'downtime_host' => 'CASE WHEN ho.name1 IS NULL THEN so.name1 ELSE ho.name1 END COLLATE latin1_general_ci', // #7278, #7279 + 'downtime_objecttype' => "CASE WHEN ho.object_id IS NULL THEN 'service' ELSE 'host' END", 'host' => 'CASE WHEN ho.name1 IS NULL THEN so.name1 ELSE ho.name1 END COLLATE latin1_general_ci', - 'downtime_service' => 'so.name2 COLLATE latin1_general_ci', - 'service' => 'so.name2 COLLATE latin1_general_ci', // #7278, #7279 - 'downtime_objecttype' => "CASE WHEN ho.object_id IS NOT NULL THEN 'host' ELSE CASE WHEN so.object_id IS NOT NULL THEN 'service' ELSE NULL END END", - 'downtime_host_state' => 'CASE WHEN hs.has_been_checked = 0 OR hs.has_been_checked IS NULL THEN 99 ELSE hs.current_state END', - 'downtime_service_state' => 'CASE WHEN ss.has_been_checked = 0 OR ss.has_been_checked IS NULL THEN 99 ELSE ss.current_state END' + 'host_name' => 'CASE WHEN ho.name1 IS NULL THEN so.name1 ELSE ho.name1 END', + 'service' => 'so.name2 COLLATE latin1_general_ci', + 'service_description' => 'so.name2', + 'service_host' => 'so.name1 COLLATE latin1_general_ci', + 'service_host_name' => 'so.name1' ), 'hosts' => array( - 'host_display_name' => 'CASE WHEN sh.display_name IS NOT NULL THEN sh.display_name ELSE h.display_name END' + 'host_display_name' => 'CASE WHEN h.display_name IS NULL THEN sh.display_name ELSE h.display_name END' + ), + 'hoststatus' => array( + 'downtime_host_state' => 'CASE WHEN hs.has_been_checked = 0 OR hs.has_been_checked IS NULL THEN 99 ELSE hs.current_state END' ), 'services' => array( 'service_display_name' => 's.display_name' + ), + 'servicestatus' => array( + 'downtime_service_state' => 'CASE WHEN ss.has_been_checked = 0 OR ss.has_been_checked IS NULL THEN 99 ELSE ss.current_state END' ) ); + /** + * {@inheritdoc} + */ protected function joinBaseTables() { $this->select->from( @@ -53,19 +68,14 @@ class DowntimeQuery extends IdoQuery 'sd.object_id = so.object_id AND so.is_active = 1 AND so.objecttype_id = 2', array() ); - $this->select->joinLeft( - array('hs' => $this->prefix . 'hoststatus'), - 'ho.object_id = hs.host_object_id', - array() - ); - $this->select->joinLeft( - array('ss' => $this->prefix . 'servicestatus'), - 'so.object_id = ss.service_object_id', - array() - ); $this->joinedVirtualTables = array('downtime' => true); } + /** + * Join downtimes' hosts + * + * @return $this + */ protected function joinHosts() { $this->select->joinLeft( @@ -76,6 +86,26 @@ class DowntimeQuery extends IdoQuery return $this; } + /** + * Join downtimes' hosts' status + * + * @return $this + */ + protected function joinHoststatus() + { + $this->select->joinLeft( + array('hs' => $this->prefix . 'hoststatus'), + 'ho.object_id = hs.host_object_id', + array() + ); + return $this; + } + + /** + * Join downtimes' services + * + * @return $this + */ protected function joinServices() { $this->select->joinLeft( @@ -90,4 +120,19 @@ class DowntimeQuery extends IdoQuery ); return $this; } + + /** + * Join downtimes' services' status + * + * @return $this + */ + protected function joinServicestatus() + { + $this->select->joinLeft( + array('ss' => $this->prefix . 'servicestatus'), + 'so.object_id = ss.service_object_id', + array() + ); + return $this; + } } diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeendhistoryQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeendhistoryQuery.php index 12f1f94e9..42d23ce05 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeendhistoryQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeendhistoryQuery.php @@ -7,24 +7,22 @@ class DowntimeendhistoryQuery extends IdoQuery { protected $columnMap = array( 'downtimehistory' => array( - 'state_time' => 'h.actual_end_time', - 'timestamp' => 'UNIX_TIMESTAMP(h.actual_end_time)', - 'raw_timestamp' => 'h.actual_end_time', - 'object_id' => 'h.object_id', - 'type' => "('dt_end')", - 'state' => '(NULL)', - 'state_type' => '(NULL)', - 'output' => "('[' || h.author_name || '] ' || h.comment_data)", - 'attempt' => '(NULL)', - 'max_attempts' => '(NULL)', + 'state_time' => 'h.actual_end_time', + 'timestamp' => 'UNIX_TIMESTAMP(h.actual_end_time)', + 'raw_timestamp' => 'h.actual_end_time', + 'object_id' => 'h.object_id', + 'type' => "('dt_end')", + 'state' => '(NULL)', + 'state_type' => '(NULL)', + 'output' => "('[' || h.author_name || '] ' || h.comment_data)", + 'attempt' => '(NULL)', + 'max_attempts' => '(NULL)', - 'host' => 'o.name1 COLLATE latin1_general_ci', - 'service' => 'o.name2 COLLATE latin1_general_ci', - 'host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'service_host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" + 'host' => 'o.name1 COLLATE latin1_general_ci', + 'service' => 'o.name2 COLLATE latin1_general_ci', + 'host_name' => 'o.name1', + 'service_description' => 'o.name2', + 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimestarthistoryQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimestarthistoryQuery.php index 99b1257ab..6f23fe174 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimestarthistoryQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimestarthistoryQuery.php @@ -7,24 +7,22 @@ class DowntimestarthistoryQuery extends IdoQuery { protected $columnMap = array( 'downtimehistory' => array( - 'state_time' => 'h.actual_start_time', - 'timestamp' => 'UNIX_TIMESTAMP(h.actual_start_time)', - 'raw_timestamp' => 'h.actual_start_time', - 'object_id' => 'h.object_id', - 'type' => "('dt_start')", - 'state' => '(NULL)', - 'state_type' => '(NULL)', - 'output' => "('[' || h.author_name || '] ' || h.comment_data)", - 'attempt' => '(NULL)', - 'max_attempts' => '(NULL)', + 'state_time' => 'h.actual_start_time', + 'timestamp' => 'UNIX_TIMESTAMP(h.actual_start_time)', + 'raw_timestamp' => 'h.actual_start_time', + 'object_id' => 'h.object_id', + 'type' => "('dt_start')", + 'state' => '(NULL)', + 'state_type' => '(NULL)', + 'output' => "('[' || h.author_name || '] ' || h.comment_data)", + 'attempt' => '(NULL)', + 'max_attempts' => '(NULL)', - 'host' => 'o.name1 COLLATE latin1_general_ci', - 'service' => 'o.name2 COLLATE latin1_general_ci', - 'host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'service_host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" + 'host' => 'o.name1 COLLATE latin1_general_ci', + 'service' => 'o.name2 COLLATE latin1_general_ci', + 'host_name' => 'o.name1', + 'service_description' => 'o.name2', + 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/EventHistoryQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/EventHistoryQuery.php index 12395abca..0c77e82a6 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/EventHistoryQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/EventHistoryQuery.php @@ -6,10 +6,23 @@ namespace Icinga\Module\Monitoring\Backend\Ido\Query; use Zend_Db_Select; use Icinga\Data\Filter\Filter; +/** + * Query for event history + */ class EventHistoryQuery extends IdoQuery { + /** + * Subqueries used for the event history query + * + * @type IdoQuery[] + * + * @see EventHistoryQuery::joinBaseTables() For the used subqueries. + */ protected $subQueries = array(); + /** + * {@inheritdoc} + */ protected $columnMap = array( 'eventhistory' => array( 'cnt_notification' => "SUM(CASE eh.type WHEN 'notify' THEN 1 ELSE 0 END)", @@ -19,19 +32,19 @@ class EventHistoryQuery extends IdoQuery 'cnt_downtime_end' => "SUM(CASE eh.type WHEN 'dt_end' THEN 1 ELSE 0 END)", 'host' => 'eho.name1 COLLATE latin1_general_ci', 'service' => 'eho.name2 COLLATE latin1_general_ci', - 'host_name' => 'eho.name1 COLLATE latin1_general_ci', - 'service_description' => 'eho.name2 COLLATE latin1_general_ci', + 'host_name' => 'eho.name1', + 'service_description' => 'eho.name2', 'object_type' => 'eh.object_type', 'timestamp' => 'eh.timestamp', 'state' => 'eh.state', 'attempt' => 'eh.attempt', 'max_attempts' => 'eh.max_attempts', 'output' => 'eh.output', // we do not want long_output - 'type' => 'eh.type', - 'service_host_name' => 'eho.name1 COLLATE latin1_general_ci' + 'type' => 'eh.type' ), 'hostgroups' => array( 'hostgroup' => 'hgo.name1 COLLATE latin1_general_ci', + 'hostgroup_name' => 'hgo.name1' ), 'hosts' => array( 'host_display_name' => 'CASE WHEN sh.display_name IS NOT NULL THEN sh.display_name ELSE h.display_name END' @@ -41,8 +54,14 @@ class EventHistoryQuery extends IdoQuery ) ); + /** + * {@inheritdoc} + */ protected $useSubqueryCount = true; + /** + * {@inheritdoc} + */ protected function joinBaseTables() { $columns = array( @@ -77,15 +96,20 @@ class EventHistoryQuery extends IdoQuery $this->joinedVirtualTables = array('eventhistory' => true); } + /** + * {@inheritdoc} + */ public function order($columnOrAlias, $dir = null) { foreach ($this->subQueries as $sub) { $sub->requireColumn($columnOrAlias); } - return parent::order($columnOrAlias, $dir); } + /** + * {@inheritdoc} + */ public function addFilter(Filter $filter) { foreach ($this->subQueries as $sub) { @@ -94,6 +118,9 @@ class EventHistoryQuery extends IdoQuery return $this; } + /** + * {@inheritdoc} + */ public function where($condition, $value = null) { $this->requireColumn($condition); @@ -103,6 +130,11 @@ class EventHistoryQuery extends IdoQuery return $this; } + /** + * Join host groups + * + * @return $this + */ protected function joinHostgroups() { $this->select->join( @@ -121,6 +153,11 @@ class EventHistoryQuery extends IdoQuery return $this; } + /** + * Join hosts + * + * @return $this + */ protected function joinHosts() { $this->select->joinLeft( @@ -131,6 +168,11 @@ class EventHistoryQuery extends IdoQuery return $this; } + /** + * Join services + * + * @return $this + */ protected function joinServices() { $this->select->joinLeft( diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/EventgridQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/EventgridQuery.php index c7764d516..2dac92e3d 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/EventgridQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/EventgridQuery.php @@ -25,17 +25,19 @@ class EventgridQuery extends IdoQuery 'cnt_ok' => 'SUM(CASE WHEN sho.objecttype_id = 2 AND sh.state = 0 THEN 1 ELSE 0 END)', 'host' => 'sho.name1 COLLATE latin1_general_ci', 'service' => 'sho.name2 COLLATE latin1_general_ci', - 'host_name' => 'sho.name1 COLLATE latin1_general_ci', - 'service_description' => 'sho.name2 COLLATE latin1_general_ci', + 'host_name' => 'sho.name1', + 'service_description' => 'sho.name2', 'timestamp' => 'UNIX_TIMESTAMP(sh.state_time)' ), 'servicegroups' => array( - 'servicegroup' => 'sgo.name1' + 'servicegroup' => 'sgo.name1 COLLATE latin1_general_ci', + 'servicegroup_name' => 'sgo.name1' ), 'hostgroups' => array( - 'hostgroup' => 'hgo.name1' + 'hostgroup' => 'hgo.name1 COLLATE latin1_general_ci', + 'hostgroup_name' => 'hgo.name1' ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/GroupsummaryQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/GroupsummaryQuery.php index 867da7e78..8b72bbf79 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/GroupsummaryQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/GroupsummaryQuery.php @@ -19,8 +19,9 @@ class GroupSummaryQuery extends IdoQuery 'hosts_down_handled' => 'SUM(CASE WHEN object_type = \'host\' AND state = 1 AND acknowledged + in_downtime != 0 THEN 1 ELSE 0 END)', 'hosts_down_unhandled' => 'SUM(CASE WHEN object_type = \'host\' AND state = 1 AND acknowledged + in_downtime = 0 THEN 1 ELSE 0 END)', 'hosts_pending' => 'SUM(CASE WHEN object_type = \'host\' AND state = 99 THEN 1 ELSE 0 END)', - 'hostgroup' => 'hostgroup', - 'hostgroup_alias' => 'hostgroup_alias' + 'hostgroup_name' => 'hostgroup_name', + 'hostgroup_alias' => 'hostgroup_alias', + 'hostgroup' => 'hostgroup' ), 'servicestatussummary' => array( 'services_total' => 'SUM(CASE WHEN object_type = \'service\' THEN 1 ELSE 0 END)', @@ -44,8 +45,9 @@ class GroupSummaryQuery extends IdoQuery 'services_warning_last_state_change_unhandled' => 'MAX(CASE WHEN object_type = \'service\' AND state = 1 AND acknowledged + in_downtime + host_state = 0 THEN state_change ELSE 0 END)', 'services_critical_last_state_change_unhandled' => 'MAX(CASE WHEN object_type = \'service\' AND state = 2 AND acknowledged + in_downtime + host_state = 0 THEN state_change ELSE 0 END)', 'services_unknown_last_state_change_unhandled' => 'MAX(CASE WHEN object_type = \'service\' AND state = 3 AND acknowledged + in_downtime + host_state = 0 THEN state_change ELSE 0 END)', - 'servicegroup' => 'servicegroup', - 'servicegroup_alias' => 'servicegroup_alias' + 'servicegroup_name' => 'servicegroup_name', + 'servicegroup_alias' => 'servicegroup_alias', + 'servicegroup' => 'servicegroup' ) ); @@ -56,14 +58,16 @@ class GroupSummaryQuery extends IdoQuery 'host_state' ); - if (in_array('servicegroup', $this->desiredColumns)) { + if (in_array('servicegroup', $this->desiredColumns) || in_array('servicegroup_name', $this->desiredColumns)) { $columns[] = 'servicegroup'; + $columns[] = 'servicegroup_name'; $columns[] = 'servicegroup_alias'; - $groupColumns = array('servicegroup', 'servicegroup_alias'); + $groupColumns = array('servicegroup_name', 'servicegroup_alias'); } else { $columns[] = 'hostgroup'; + $columns[] = 'hostgroup_name'; $columns[] = 'hostgroup_alias'; - $groupColumns = array('hostgroup', 'hostgroup_alias'); + $groupColumns = array('hostgroup_name', 'hostgroup_alias'); } $hosts = $this->createSubQuery( 'Hoststatus', @@ -75,7 +79,7 @@ class GroupSummaryQuery extends IdoQuery 'severity' => 'host_severity' ) ); - if (in_array('servicegroup', $this->desiredColumns)) { + if (in_array('servicegroup_name', $this->desiredColumns)) { $hosts->group(array( 'sgo.name1', 'ho.object_id', diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/HostgroupQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/HostgroupQuery.php index 71e1bbc19..d41a9e00b 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/HostgroupQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/HostgroupQuery.php @@ -8,13 +8,13 @@ class HostgroupQuery extends IdoQuery protected $columnMap = array( 'hostgroups' => array( 'hostgroups' => 'hgo.name1 COLLATE latin1_general_ci', - 'hostgroup_name' => 'hgo.name1 COLLATE latin1_general_ci', + 'hostgroup_name' => 'hgo.name1', 'hostgroup_alias' => 'hg.alias', - 'id' => 'hg.hostgroup_id', + 'hostgroup_id' => 'hg.hostgroup_id' ), 'hosts' => array( 'host' => 'ho.name1 COLLATE latin1_general_ci', - 'host_name' => 'ho.name1 COLLATE latin1_general_ci' + 'host_name' => 'ho.name1' ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/HoststatusQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/HoststatusQuery.php index d9b4f2892..23a8b585a 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/HoststatusQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/HoststatusQuery.php @@ -84,10 +84,12 @@ class HoststatusQuery extends IdoQuery ), 'hostgroups' => array( 'hostgroup' => 'hgo.name1 COLLATE latin1_general_ci', + 'hostgroup_name' => 'hgo.name1', 'hostgroup_alias' => 'hg.alias' ), 'servicegroups' => array( 'servicegroup' => 'sgo.name1 COLLATE latin1_general_ci', + 'servicegroup_name' => 'sgo.name1', 'servicegroup_alias' => 'sg.alias' ), 'contactgroups' => array( diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/IdoQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/IdoQuery.php index c87025fdd..2e6bec024 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/IdoQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/IdoQuery.php @@ -199,7 +199,7 @@ abstract class IdoQuery extends DbQuery * @param string $columnOrAlias The column or column alias to order by * @param int $dir The sort direction or null to use default direction * - * @return self Fluent interface + * @return $this Fluent interface */ public function order($columnOrAlias, $dir = null) { @@ -487,7 +487,7 @@ abstract class IdoQuery extends DbQuery * * @param $alias The alias of the column to require * - * @return self Fluent interface + * @return $this Fluent interface * @see IdoQuery::requireVirtualTable The method initializing required joins * @throws \Icinga\Exception\ProgrammingError When an unknown column is requested */ @@ -522,7 +522,7 @@ abstract class IdoQuery extends DbQuery * Require a virtual table for the given table name if not already required * * @param String $name The table name to require - * @return self Fluent interface + * @return $this Fluent interface */ protected function requireVirtualTable($name) { @@ -549,7 +549,7 @@ abstract class IdoQuery extends DbQuery * This requires a join$Table() method to exist * * @param String $table The table to join by calling join$Table() in the concrete implementation - * @return self Fluent interface + * @return $this Fluent interface * * @throws \Icinga\Exception\ProgrammingError If the join method for this table does not exist */ @@ -676,7 +676,7 @@ abstract class IdoQuery extends DbQuery * * @param array $columns * - * @return self + * @return $this */ public function columns(array $columns) { diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/NotificationQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/NotificationQuery.php index 4eebc640f..0133dc637 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/NotificationQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/NotificationQuery.php @@ -13,11 +13,14 @@ class NotificationQuery extends IdoQuery 'notification_object_id' => 'n.object_id' ), 'objects' => array( - 'host' => 'o.name1', - 'service' => 'o.name2' + 'host' => 'o.name1 COLLATE latin1_general_ci', + 'host_name' => 'o.name1', + 'service' => 'o.name2 COLLATE latin1_general_ci', + 'service_description' => 'o.name2' ), 'contact' => array( - 'notification_contact' => 'c_o.name1', + 'contact' => 'c_o.name1 COLLATE latin1_general_ci', + 'notification_contact_name' => 'c_o.name1', 'contact_object_id' => 'c_o.object_id' ), 'command' => array( diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/NotificationhistoryQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/NotificationhistoryQuery.php index 37a7f48b5..8bbdc0751 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/NotificationhistoryQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/NotificationhistoryQuery.php @@ -7,24 +7,22 @@ class NotificationhistoryQuery extends IdoQuery { protected $columnMap = array( 'history' => array( - 'timestamp' => 'UNIX_TIMESTAMP(n.start_time)', - 'raw_timestamp' => 'n.start_time', - 'state_time' => 'n.start_time', - 'object_id' => 'n.object_id', - 'type' => "('notify')", - 'state' => 'n.state', - 'state_type' => '(NULL)', - 'output' => null, - 'attempt' => '(NULL)', - 'max_attempts' => '(NULL)', + 'state_time' => 'n.start_time', + 'timestamp' => 'UNIX_TIMESTAMP(n.start_time)', + 'raw_timestamp' => 'n.start_time', + 'object_id' => 'n.object_id', + 'type' => "('notify')", + 'state' => 'n.state', + 'state_type' => '(NULL)', + 'output' => null, + 'attempt' => '(NULL)', + 'max_attempts' => '(NULL)', - 'host' => 'o.name1 COLLATE latin1_general_ci', - 'service' => 'o.name2 COLLATE latin1_general_ci', - 'host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'service_host_name' => 'o.name1 COLLATE latin1_general_ci', - 'service_description' => 'o.name2 COLLATE latin1_general_ci', - 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" + 'host' => 'o.name1 COLLATE latin1_general_ci', + 'service' => 'o.name2 COLLATE latin1_general_ci', + 'host_name' => 'o.name1', + 'service_description' => 'o.name2', + 'object_type' => "CASE WHEN o.objecttype_id = 1 THEN 'host' ELSE 'service' END" ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/ProgramstatusQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/ProgramstatusQuery.php index d63db8173..d1e0b71b4 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/ProgramstatusQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/ProgramstatusQuery.php @@ -12,6 +12,7 @@ class ProgramstatusQuery extends IdoQuery 'programstatus' => array( 'id' => 'programstatus_id', 'status_update_time' => 'UNIX_TIMESTAMP(programstatus.status_update_time)', + 'program_version' => 'program_version', 'program_start_time' => 'UNIX_TIMESTAMP(programstatus.program_start_time)', 'program_end_time' => 'UNIX_TIMESTAMP(programstatus.program_end_time)', 'is_currently_running' => 'CASE WHEN (programstatus.is_currently_running = 0) @@ -26,6 +27,7 @@ class ProgramstatusQuery extends IdoQuery END END', 'process_id' => 'process_id', + 'endpoint_name' => 'endpoint_name', 'daemon_mode' => 'daemon_mode', 'last_command_check' => 'UNIX_TIMESTAMP(programstatus.last_command_check)', 'last_log_rotation' => 'UNIX_TIMESTAMP(programstatus.last_log_rotation)', @@ -47,4 +49,16 @@ class ProgramstatusQuery extends IdoQuery 'global_service_event_handler' => 'global_service_event_handler', ) ); + + protected function joinBaseTables() + { + parent::joinBaseTables(); + + if (version_compare($this->getIdoVersion(), '1.11.7', '<')) { + $this->columnMap['programstatus']['endpoint_name'] = '(0)'; + } + if (version_compare($this->getIdoVersion(), '1.11.8', '<')) { + $this->columnMap['programstatus']['program_version'] = '(NULL)'; + } + } } diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/ServicegroupQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/ServicegroupQuery.php index 490cc152f..125c07005 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/ServicegroupQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/ServicegroupQuery.php @@ -7,15 +7,16 @@ class ServicegroupQuery extends IdoQuery { protected $columnMap = array( 'servicegroups' => array( - 'servicegroup_name' => 'sgo.name1 COLLATE latin1_general_ci', - 'servicegroup_alias' => 'sg.alias', + 'servicegroup' => 'sgo.name1 COLLATE latin1_general_ci', + 'servicegroup_name' => 'sgo.name1', + 'servicegroup_alias' => 'sg.alias COLLATE latin1_general_ci' ), 'services' => array( 'host' => 'so.name1 COLLATE latin1_general_ci', - 'host_name' => 'so.name1 COLLATE latin1_general_ci', + 'host_name' => 'so.name1', 'service' => 'so.name2 COLLATE latin1_general_ci', - 'service_host_name' => 'so.name1 COLLATE latin1_general_ci', - 'service_description' => 'so.name2 COLLATE latin1_general_ci' + 'service_host_name' => 'so.name1', + 'service_description' => 'so.name2' ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/StatehistoryQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/StatehistoryQuery.php index 5456c0b2b..ff3c1055a 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/StatehistoryQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/StatehistoryQuery.php @@ -12,9 +12,9 @@ class StatehistoryQuery extends IdoQuery protected $columnMap = array( 'statehistory' => array( - 'raw_timestamp' => 'sh.state_time', - 'timestamp' => 'UNIX_TIMESTAMP(sh.state_time)', 'state_time' => 'sh.state_time', + 'timestamp' => 'UNIX_TIMESTAMP(sh.state_time)', + 'raw_timestamp' => 'sh.state_time', 'object_id' => 'sho.object_id', 'type' => "(CASE WHEN sh.state_type = 1 THEN 'hard_state' ELSE 'soft_state' END)", 'state' => 'sh.state', @@ -22,11 +22,11 @@ class StatehistoryQuery extends IdoQuery 'output' => 'sh.output', 'attempt' => 'sh.current_check_attempt', 'max_attempts' => 'sh.max_check_attempts', + 'host' => 'sho.name1 COLLATE latin1_general_ci', - 'host_name' => 'sho.name1 COLLATE latin1_general_ci', 'service' => 'sho.name2 COLLATE latin1_general_ci', - 'service_description' => 'sho.name2 COLLATE latin1_general_ci', - 'service_host_name' => 'sho.name1 COLLATE latin1_general_ci', + 'host_name' => 'sho.name1', + 'service_description' => 'sho.name2', 'object_type' => "CASE WHEN sho.objecttype_id = 1 THEN 'host' ELSE 'service' END" ) ); diff --git a/modules/monitoring/library/Monitoring/Backend/Ido/Query/StatusQuery.php b/modules/monitoring/library/Monitoring/Backend/Ido/Query/StatusQuery.php index c67b13dbd..17a12259e 100644 --- a/modules/monitoring/library/Monitoring/Backend/Ido/Query/StatusQuery.php +++ b/modules/monitoring/library/Monitoring/Backend/Ido/Query/StatusQuery.php @@ -35,7 +35,7 @@ class StatusQuery extends IdoQuery protected $columnMap = array( 'hosts' => array( 'host' => 'ho.name1 COLLATE latin1_general_ci', - 'host_name' => 'ho.name1 COLLATE latin1_general_ci', + 'host_name' => 'ho.name1', 'host_display_name' => 'h.display_name', 'host_alias' => 'h.alias', 'host_address' => 'h.address', @@ -121,6 +121,7 @@ class StatusQuery extends IdoQuery 'host_retry_check_interval' => 'hs.retry_check_interval', 'host_check_timeperiod_object_id' => 'hs.check_timeperiod_object_id', 'host_status_update_time' => 'hs.status_update_time', + 'host_is_reachable' => 'hs.is_reachable', 'host_severity' => 'CASE WHEN hs.current_state = 0 THEN CASE WHEN hs.has_been_checked = 0 OR hs.has_been_checked IS NULL @@ -160,16 +161,19 @@ class StatusQuery extends IdoQuery ), 'hostgroups' => array( 'hostgroup' => 'hgo.name1 COLLATE latin1_general_ci', + 'hostgroup_name' => 'hgo.name1', 'hostgroup_alias' => 'hg.alias' ), 'servicegroups' => array( 'servicegroup' => 'sgo.name1 COLLATE latin1_general_ci', + 'servicegroup_name' => 'sgo.name1', 'servicegroup_alias' => 'sg.alias' ), 'services' => array( - 'service_host_name' => 'so.name1 COLLATE latin1_general_ci', + 'service_host' => 'so.name1 COLLATE latin1_general_ci', + 'service_host_name' => 'so.name1', 'service' => 'so.name2 COLLATE latin1_general_ci', - 'service_description' => 'so.name2 COLLATE latin1_general_ci', + 'service_description' => 'so.name2', 'service_display_name' => 's.display_name', 'service_icon_image' => 's.icon_image', 'service_action_url' => 's.action_url', @@ -259,6 +263,7 @@ class StatusQuery extends IdoQuery 'service_check_timeperiod_object_id' => 'ss.check_timeperiod_object_id', 'service_status_update_time' => 'ss.status_update_time', 'service_problem' => 'CASE WHEN ss.current_state = 0 THEN 0 ELSE 1 END', + 'service_is_reachable' => 'ss.is_reachable', 'service_severity' => 'CASE WHEN ss.current_state = 0 THEN CASE WHEN ss.has_been_checked = 0 OR ss.has_been_checked IS NULL @@ -345,6 +350,10 @@ class StatusQuery extends IdoQuery $this->columnMap['hoststatus']['host_check_source'] = '(NULL)'; $this->columnMap['servicestatus']['service_check_source'] = '(NULL)'; } + if (version_compare($this->getIdoVersion(), '1.13.0', '<')) { + $this->columnMap['hoststatus']['host_is_reachable'] = '(NULL)'; + $this->columnMap['servicestatus']['service_is_reachable'] = '(NULL)'; + } $this->select->from(array('ho' => $this->prefix . 'objects'), array()) ->join( array('hs' => $this->prefix . 'hoststatus'), @@ -589,7 +598,7 @@ SQL; { $this->select->joinLeft( array('hlcd' => $this->getLastCommentSubQuery(2, 'last_downtime_data')), - 'hlcg.object_id = hs.host_object_id', + 'hlcd.object_id = hs.host_object_id', array() ); } @@ -601,7 +610,7 @@ SQL; { $this->select->joinLeft( array('hlcf' => $this->getLastCommentSubQuery(3, 'last_flapping_data')), - 'hlcg.object_id = hs.host_object_id', + 'hlcf.object_id = hs.host_object_id', array() ); } diff --git a/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php b/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php index e34035ee0..df29a6b50 100644 --- a/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php +++ b/modules/monitoring/library/Monitoring/Backend/MonitoringBackend.php @@ -239,7 +239,7 @@ class MonitoringBackend implements Selectable, Queryable, ConnectionInterface /** * Backend entry point * - * @return self + * @return $this */ public function select() { diff --git a/modules/monitoring/library/Monitoring/Command/Object/DeleteCommentCommand.php b/modules/monitoring/library/Monitoring/Command/Object/DeleteCommentCommand.php index 00ba63a78..75f2ffb8e 100644 --- a/modules/monitoring/library/Monitoring/Command/Object/DeleteCommentCommand.php +++ b/modules/monitoring/library/Monitoring/Command/Object/DeleteCommentCommand.php @@ -3,20 +3,13 @@ namespace Icinga\Module\Monitoring\Command\Object; +use Icinga\Module\Monitoring\Command\IcingaCommand; + /** * Delete a host or service comment */ -class DeleteCommentCommand extends ObjectCommand +class DeleteCommentCommand extends IcingaCommand { - /** - * (non-PHPDoc) - * @see \Icinga\Module\Monitoring\Command\Object\ObjectCommand::$allowedObjects For the property documentation. - */ - protected $allowedObjects = array( - self::TYPE_HOST, - self::TYPE_SERVICE - ); - /** * ID of the comment that is to be deleted * @@ -24,6 +17,13 @@ class DeleteCommentCommand extends ObjectCommand */ protected $commentId; + /** + * The type of the comment, either 'host' or 'service' + * + * @var boolean + */ + protected $isService = false; + /** * Set the ID of the comment that is to be deleted * @@ -46,4 +46,27 @@ class DeleteCommentCommand extends ObjectCommand { return $this->commentId; } + + /** + * Whether the command affects a service comment + * + * @return boolean + */ + public function getIsService() + { + return $this->isService; + } + + /** + * Set whether the command affects a service + * + * @param boolean $value The value, defaults to true + * + * @return this fluent interface + */ + public function setIsService($value = true) + { + $this->isService = (bool) $value; + return $this; + } } diff --git a/modules/monitoring/library/Monitoring/Command/Object/DeleteDowntimeCommand.php b/modules/monitoring/library/Monitoring/Command/Object/DeleteDowntimeCommand.php index 52ad99e1b..a2c593f26 100644 --- a/modules/monitoring/library/Monitoring/Command/Object/DeleteDowntimeCommand.php +++ b/modules/monitoring/library/Monitoring/Command/Object/DeleteDowntimeCommand.php @@ -3,20 +3,13 @@ namespace Icinga\Module\Monitoring\Command\Object; +use Icinga\Module\Monitoring\Command\IcingaCommand; + /** * Delete a host or service downtime */ -class DeleteDowntimeCommand extends ObjectCommand +class DeleteDowntimeCommand extends IcingaCommand { - /** - * (non-PHPDoc) - * @see \Icinga\Module\Monitoring\Command\Object\ObjectCommand::$allowedObjects For the property documentation. - */ - protected $allowedObjects = array( - self::TYPE_HOST, - self::TYPE_SERVICE - ); - /** * ID of the downtime that is to be deleted * @@ -24,6 +17,33 @@ class DeleteDowntimeCommand extends ObjectCommand */ protected $downtimeId; + /** + * If the command affects a service downtime + * + * @var boolean + */ + protected $isService = false; + + /** + * Set if this command affects a service + * + * @param type $value + */ + public function setIsService($value = true) + { + $this->isService = (bool) $value; + } + + /** + * Return whether the command affects a service + * + * @return type + */ + public function getIsService() + { + return $this->isService; + } + /** * Set the ID of the downtime that is to be deleted * diff --git a/modules/monitoring/library/Monitoring/Command/Object/ScheduleServiceCheckCommand.php b/modules/monitoring/library/Monitoring/Command/Object/ScheduleServiceCheckCommand.php index ac5e4be61..192bae850 100644 --- a/modules/monitoring/library/Monitoring/Command/Object/ScheduleServiceCheckCommand.php +++ b/modules/monitoring/library/Monitoring/Command/Object/ScheduleServiceCheckCommand.php @@ -9,8 +9,7 @@ namespace Icinga\Module\Monitoring\Command\Object; class ScheduleServiceCheckCommand extends ObjectCommand { /** - * (non-PHPDoc) - * @see \Icinga\Module\Monitoring\Command\Object\ObjectCommand::$allowedObjects For the property documentation. + * {@inheritdoc} */ protected $allowedObjects = array( self::TYPE_SERVICE @@ -74,7 +73,7 @@ class ScheduleServiceCheckCommand extends ObjectCommand } /** - * Is the check forced? + * Get whether the check is forced * * @return bool */ @@ -84,8 +83,7 @@ class ScheduleServiceCheckCommand extends ObjectCommand } /** - * (non-PHPDoc) - * @see \Icinga\Module\Monitoring\Command\Object\IcingaCommand::getName() For the method documentation. + * {@inheritdoc} */ public function getName() { diff --git a/modules/monitoring/library/Monitoring/Command/Object/SendCustomNotificationCommand.php b/modules/monitoring/library/Monitoring/Command/Object/SendCustomNotificationCommand.php new file mode 100644 index 000000000..647804310 --- /dev/null +++ b/modules/monitoring/library/Monitoring/Command/Object/SendCustomNotificationCommand.php @@ -0,0 +1,82 @@ +forced; + } + + /** + * Set whether to force the notification + * + * @param bool $forced + * + * @return $this + */ + public function setForced($forced = true) + { + $this->forced = $forced; + return $this; + } + + /** + * Get whether to broadcast the notification + * + * @return bool + */ + public function getBroadcast() + { + return $this->broadcast; + } + + /** + * Set whether to broadcast the notification + * + * @param bool $broadcast + * + * @return $this + */ + public function setBroadcast($broadcast = true) + { + $this->broadcast = $broadcast; + return $this; + } +} diff --git a/modules/monitoring/library/Monitoring/Command/Renderer/IcingaCommandFileCommandRenderer.php b/modules/monitoring/library/Monitoring/Command/Renderer/IcingaCommandFileCommandRenderer.php index cf88d7d2e..f6a35dcc2 100644 --- a/modules/monitoring/library/Monitoring/Command/Renderer/IcingaCommandFileCommandRenderer.php +++ b/modules/monitoring/library/Monitoring/Command/Renderer/IcingaCommandFileCommandRenderer.php @@ -323,28 +323,18 @@ class IcingaCommandFileCommandRenderer implements IcingaCommandRendererInterface public function renderDeleteComment(DeleteCommentCommand $command) { - if ($command->getObject()->getType() === $command::TYPE_HOST) { - $commandString = 'DEL_HOST_COMMENT'; - } else { - $commandString = 'DEL_SVC_COMMENT'; - } return sprintf( '%s;%u', - $commandString, + $command->getIsService() ? 'DEL_SVC_COMMENT' : 'DEL_HOST_COMMENT', $command->getCommentId() ); } public function renderDeleteDowntime(DeleteDowntimeCommand $command) { - if ($command->getObject()->getType() === $command::TYPE_HOST) { - $commandString = 'DEL_HOST_DOWNTIME'; - } else { - $commandString = 'DEL_SVC_DOWNTIME'; - } return sprintf( '%s;%u', - $commandString, + $command->getIsService() ? 'DEL_SVC_DOWNTIME' : 'DEL_HOST_DOWNTIME', $command->getDowntimeId() ); } diff --git a/modules/monitoring/library/Monitoring/Command/Transport/CommandTransport.php b/modules/monitoring/library/Monitoring/Command/Transport/CommandTransport.php index 93af4e955..a9839565b 100644 --- a/modules/monitoring/library/Monitoring/Command/Transport/CommandTransport.php +++ b/modules/monitoring/library/Monitoring/Command/Transport/CommandTransport.php @@ -51,6 +51,7 @@ abstract class CommandTransport */ public static function fromConfig(ConfigObject $config) { + $config = clone $config; switch (strtolower($config->transport)) { case RemoteCommandFile::TRANSPORT: $transport = new RemoteCommandFile(); @@ -73,7 +74,10 @@ abstract class CommandTransport foreach ($config as $key => $value) { $method = 'set' . ucfirst($key); if (! method_exists($transport, $method)) { - throw new ConfigurationError(); + // Ignore settings from config that don't have a setter on the transport instead of throwing an + // exception here because the transport should throw an exception if it's not fully set up + // when being about to send a command + continue; } $transport->$method($value); } diff --git a/modules/monitoring/library/Monitoring/Command/Transport/LocalCommandFile.php b/modules/monitoring/library/Monitoring/Command/Transport/LocalCommandFile.php index 6af054734..197a3fdb1 100644 --- a/modules/monitoring/library/Monitoring/Command/Transport/LocalCommandFile.php +++ b/modules/monitoring/library/Monitoring/Command/Transport/LocalCommandFile.php @@ -4,8 +4,8 @@ namespace Icinga\Module\Monitoring\Command\Transport; use Exception; -use LogicException; use Icinga\Application\Logger; +use Icinga\Exception\ConfigurationError; use Icinga\Module\Monitoring\Command\Exception\TransportException; use Icinga\Module\Monitoring\Command\IcingaCommand; use Icinga\Module\Monitoring\Command\Renderer\IcingaCommandFileCommandRenderer; @@ -55,7 +55,7 @@ class LocalCommandFile implements CommandTransportInterface * * @param string $path * - * @return self + * @return $this */ public function setPath($path) { @@ -78,7 +78,7 @@ class LocalCommandFile implements CommandTransportInterface * * @param string $openMode * - * @return self + * @return $this */ public function setOpenMode($openMode) { @@ -102,13 +102,15 @@ class LocalCommandFile implements CommandTransportInterface * @param IcingaCommand $command * @param int|null $now * - * @throws LogicException + * @throws ConfigurationError * @throws TransportException */ public function send(IcingaCommand $command, $now = null) { if (! isset($this->path)) { - throw new LogicException('Can\'t send external Icinga Command. Path to the local command file is missing'); + throw new ConfigurationError( + 'Can\'t send external Icinga Command. Path to the local command file is missing' + ); } $commandString = $this->renderer->render($command, $now); Logger::debug( diff --git a/modules/monitoring/library/Monitoring/Command/Transport/RemoteCommandFile.php b/modules/monitoring/library/Monitoring/Command/Transport/RemoteCommandFile.php index 9b69a8cc4..866497a5a 100644 --- a/modules/monitoring/library/Monitoring/Command/Transport/RemoteCommandFile.php +++ b/modules/monitoring/library/Monitoring/Command/Transport/RemoteCommandFile.php @@ -3,8 +3,8 @@ namespace Icinga\Module\Monitoring\Command\Transport; -use LogicException; use Icinga\Application\Logger; +use Icinga\Exception\ConfigurationError; use Icinga\Module\Monitoring\Command\Exception\TransportException; use Icinga\Module\Monitoring\Command\IcingaCommand; use Icinga\Module\Monitoring\Command\Renderer\IcingaCommandFileCommandRenderer; @@ -71,7 +71,7 @@ class RemoteCommandFile implements CommandTransportInterface * * @param string $host * - * @return self + * @return $this */ public function setHost($host) { @@ -94,7 +94,7 @@ class RemoteCommandFile implements CommandTransportInterface * * @param int $port * - * @return self + * @return $this */ public function setPort($port) { @@ -117,7 +117,7 @@ class RemoteCommandFile implements CommandTransportInterface * * @param string $user * - * @return self + * @return $this */ public function setUser($user) { @@ -142,7 +142,7 @@ class RemoteCommandFile implements CommandTransportInterface * * @param string $path * - * @return self + * @return $this */ public function setPath($path) { @@ -166,16 +166,18 @@ class RemoteCommandFile implements CommandTransportInterface * @param IcingaCommand $command * @param int|null $now * - * @throws LogicException + * @throws ConfigurationError * @throws TransportException */ public function send(IcingaCommand $command, $now = null) { if (! isset($this->path)) { - throw new LogicException('Can\'t send external Icinga Command. Path to the remote command file is missing'); + throw new ConfigurationError( + 'Can\'t send external Icinga Command. Path to the remote command file is missing' + ); } if (! isset($this->host)) { - throw new LogicException('Can\'t send external Icinga Command. Remote host is missing'); + throw new ConfigurationError('Can\'t send external Icinga Command. Remote host is missing'); } $commandString = $this->renderer->render($command, $now); Logger::debug( diff --git a/modules/monitoring/library/Monitoring/Controller.php b/modules/monitoring/library/Monitoring/Controller.php index 3aa893502..c3cbe3c2d 100644 --- a/modules/monitoring/library/Monitoring/Controller.php +++ b/modules/monitoring/library/Monitoring/Controller.php @@ -6,13 +6,13 @@ namespace Icinga\Module\Monitoring; use Icinga\Data\Filter\Filter; use Icinga\Data\Filterable; use Icinga\File\Csv; -use Icinga\Web\Controller\ModuleActionController; +use Icinga\Web\Controller as IcingaWebController; use Icinga\Web\Url; /** * Base class for all monitoring action controller */ -class Controller extends ModuleActionController +class Controller extends IcingaWebController { /** * The backend used for this controller @@ -21,16 +21,6 @@ class Controller extends ModuleActionController */ protected $backend; - /** - * Compact layout name - * - * Set to a string containing the compact layout name to use when - * 'compact' is set as the layout parameter, otherwise null - * - * @var string - */ - protected $compactView; - protected function moduleInit() { $this->backend = Backend::createBackend($this->_getParam('backend')); @@ -39,10 +29,6 @@ class Controller extends ModuleActionController protected function handleFormatRequest($query) { - if ($this->compactView !== null && ($this->_getParam('view', false) === 'compact')) { - $this->_helper->viewRenderer($this->compactView); - } - if ($this->_getParam('format') === 'sql') { echo '
    '
                     . htmlspecialchars(wordwrap($query->dump()))
    diff --git a/modules/monitoring/library/Monitoring/DataView/Comment.php b/modules/monitoring/library/Monitoring/DataView/Comment.php
    index f2d98895c..1fadd8b62 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Comment.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Comment.php
    @@ -9,9 +9,7 @@ namespace Icinga\Module\Monitoring\DataView;
     class Comment extends DataView
     {
         /**
    -     * Retrieve columns provided by this view
    -     *
    -     * @return array
    +     * {@inheritdoc}
          */
         public function getColumns()
         {
    @@ -19,24 +17,21 @@ class Comment extends DataView
                 'comment_objecttype',
                 'comment_internal_id',
                 'comment_data',
    -            'comment_author',
    +            'comment_author_name',
                 'comment_timestamp',
                 'comment_type',
                 'comment_is_persistent',
                 'comment_expiration',
    -            'comment_host',
    -            'comment_service',
    -            'host',
    -            'service',
    +            'host_name',
    +            'service_description',
                 'host_display_name',
    -            'service_display_name'
    +            'service_display_name',
    +            'service_host_name'
             );
         }
     
         /**
    -     * Retrieve default sorting rules for particular columns. These involve sort order and potential additional to sort
    -     *
    -     * @return array
    +     * {@inheritdoc}
          */
         public function getSortRules()
         {
    @@ -60,4 +55,12 @@ class Comment extends DataView
                 )
             );
         }
    +
    +    /**
    +     * {@inheritdoc}
    +     */
    +    public function getFilterColumns()
    +    {
    +        return array('comment_author', 'host', 'service', 'service_host');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/Contact.php b/modules/monitoring/library/Monitoring/DataView/Contact.php
    index 793765fed..8116e11a4 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Contact.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Contact.php
    @@ -8,7 +8,6 @@ namespace Icinga\Module\Monitoring\DataView;
      */
     class Contact extends DataView
     {
    -
         /**
          * Retrieve columns provided by this view
          *
    @@ -17,7 +16,7 @@ class Contact extends DataView
         public function getColumns()
         {
             return array(
    -            'contact',
    +            'contact_id',
                 'contact_name',
                 'contact_alias',
                 'contact_email',
    @@ -44,8 +43,8 @@ class Contact extends DataView
                 'service_object_id',
                 'service_host_name',
                 'service_description',
    -            'service',
    -            'host',
    +            'contact_notify_host_timeperiod',
    +            'contact_notify_service_timeperiod'
             );
         }
     
    @@ -62,4 +61,9 @@ class Contact extends DataView
                 )
             );
         }
    +
    +    public function getFilterColumns()
    +    {
    +        return array('contact', 'alias', 'email', 'host', 'service', 'service_host');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/Contactgroup.php b/modules/monitoring/library/Monitoring/DataView/Contactgroup.php
    index b55b6914a..0c432c2dc 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Contactgroup.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Contactgroup.php
    @@ -8,7 +8,6 @@ namespace Icinga\Module\Monitoring\DataView;
      */
     class Contactgroup extends DataView
     {
    -
         /**
          * Retrieve columns provided by this view
          *
    @@ -17,13 +16,29 @@ class Contactgroup extends DataView
         public function getColumns()
         {
             return array(
    -            'contact',
    -            'contact_name',
    -            'contactgroup',
                 'contactgroup_name',
                 'contactgroup_alias',
    -            'host',
    -            'service'
    +            'contact_name',
    +            'contact_alias',
    +            'contact_email',
    +            'contact_pager',
    +            'contact_has_host_notfications',
    +            'contact_has_service_notfications',
    +            'contact_can_submit_commands',
    +            'contact_notify_service_recovery',
    +            'contact_notify_service_warning',
    +            'contact_notify_service_critical',
    +            'contact_notify_service_unknown',
    +            'contact_notify_service_flapping',
    +            'contact_notify_service_downtime',
    +            'contact_notify_host_recovery',
    +            'contact_notify_host_down',
    +            'contact_notify_host_unreachable',
    +            'contact_notify_host_flapping',
    +            'contact_notify_host_downtime',
    +            'host_name',
    +            'service_description',
    +            'service_host_name'
             );
         }
     
    @@ -43,4 +58,9 @@ class Contactgroup extends DataView
                 )
             );
         }
    +
    +    public function getFilterColumns()
    +    {
    +        return array('contactgroup', 'contact', 'host', 'service', 'service_host');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/Customvar.php b/modules/monitoring/library/Monitoring/DataView/Customvar.php
    index 0517542c7..d62ff3f51 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Customvar.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Customvar.php
    @@ -19,7 +19,11 @@ class Customvar extends DataView
                 'varname',
                 'varvalue',
                 'is_json',
    -            'object_type'
    +            'host_name',
    +            'service_description',
    +            'contact_name',
    +            'object_type',
    +            'object_type_id'
             );
         }
     
    @@ -37,4 +41,9 @@ class Customvar extends DataView
                 )
             );
         }
    +
    +    public function getFilterColumns()
    +    {
    +        return array('host', 'service', 'contact');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/DataView.php b/modules/monitoring/library/Monitoring/DataView/DataView.php
    index 9683c468f..c9537eff8 100644
    --- a/modules/monitoring/library/Monitoring/DataView/DataView.php
    +++ b/modules/monitoring/library/Monitoring/DataView/DataView.php
    @@ -242,6 +242,7 @@ abstract class DataView implements Browsable, Countable, Filterable, Sortable
             $order = (strtoupper($order) === static::SORT_ASC) ? 'ASC' : 'DESC';
     
             foreach ($sortColumns['columns'] as $column) {
    +            list($column, $direction) = $this->query->splitOrder($column);
                 if (! $this->isValidFilterTarget($column)) {
                     throw new QueryException(
                         mt('monitoring', 'The sort column "%s" is not allowed in "%s".'),
    @@ -249,7 +250,7 @@ abstract class DataView implements Browsable, Countable, Filterable, Sortable
                         get_class($this)
                     );
                 }
    -            $this->query->order($column, $order);
    +            $this->query->order($column, $direction !== null ? $direction : $order);
             }
             $this->isSorted = true;
             return $this;
    diff --git a/modules/monitoring/library/Monitoring/DataView/Downtime.php b/modules/monitoring/library/Monitoring/DataView/Downtime.php
    index 54a47e6b4..4eaab1860 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Downtime.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Downtime.php
    @@ -14,8 +14,7 @@ class Downtime extends DataView
         {
             return array(
                 'downtime_objecttype',
    -            'downtime_author',
    -            'author',
    +            'downtime_author_name',
                 'downtime_comment',
                 'downtime_entry_time',
                 'downtime_is_fixed',
    @@ -28,12 +27,13 @@ class Downtime extends DataView
                 'downtime_is_in_effect',
                 'downtime_triggered_by_id',
                 'downtime_internal_id',
    -            'downtime_host',
    -            'downtime_service',
                 'downtime_host_state',
                 'downtime_service_state',
                 'host_display_name',
    -            'service_display_name'
    +            'service_display_name',
    +            'host_name',
    +            'service_host_name',
    +            'service_description'
             );
         }
     
    @@ -66,4 +66,9 @@ class Downtime extends DataView
                 )
             );
         }
    +
    +    public function getFilterColumns()
    +    {
    +        return array('author', 'host', 'service', 'service_host');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/EventHistory.php b/modules/monitoring/library/Monitoring/DataView/EventHistory.php
    index 8fcc4f35a..c19a4a376 100644
    --- a/modules/monitoring/library/Monitoring/DataView/EventHistory.php
    +++ b/modules/monitoring/library/Monitoring/DataView/EventHistory.php
    @@ -22,16 +22,14 @@ class EventHistory extends DataView
                 'host_display_name',
                 'service_description',
                 'service_display_name',
    +            'hostgroup_name',
                 'object_type',
                 'timestamp',
                 'state',
                 'attempt',
                 'max_attempts',
                 'output',
    -            'type',
    -            'host',
    -            'service',
    -            'service_host_name'
    +            'type'
             );
         }
     
    @@ -47,8 +45,6 @@ class EventHistory extends DataView
     
         public function getFilterColumns()
         {
    -        return array(
    -            'hostgroups'
    -        );
    +        return array('host', 'service', 'hostgroup');
         }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/Eventgrid.php b/modules/monitoring/library/Monitoring/DataView/Eventgrid.php
    index 022c98d9c..b7c7e0b3a 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Eventgrid.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Eventgrid.php
    @@ -15,6 +15,7 @@ class Eventgrid extends DataView
             return array(
                 'day',
                 'cnt_events',
    +            'objecttype_id',
                 'cnt_up',
                 'cnt_down_hard',
                 'cnt_down',
    @@ -22,12 +23,16 @@ class Eventgrid extends DataView
                 'cnt_unreachable',
                 'cnt_unknown_hard',
                 'cnt_unknown',
    -            'cnt_unknown_hard',
                 'cnt_critical',
                 'cnt_critical_hard',
                 'cnt_warning',
                 'cnt_warning_hard',
                 'cnt_ok',
    +            'host_name',
    +            'service_description',
    +            'timestamp',
    +            'servicegroup_name',
    +            'hostgroup_name'
             );
         }
     
    @@ -39,4 +44,9 @@ class Eventgrid extends DataView
                 )
             );
         }
    +
    +    public function getFilterColumns()
    +    {
    +        return array('host', 'service', 'hostgroup', 'servicegroup');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/Groupsummary.php b/modules/monitoring/library/Monitoring/DataView/Groupsummary.php
    index bd74aebf2..562bed1da 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Groupsummary.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Groupsummary.php
    @@ -13,9 +13,9 @@ class Groupsummary extends DataView
         public function getColumns()
         {
             return array(
    -            'servicegroup',
    +            'servicegroup_name',
                 'servicegroup_alias',
    -            'hostgroup',
    +            'hostgroup_name',
                 'hostgroup_alias',
                 'hosts_up',
                 'hosts_unreachable',
    @@ -58,4 +58,9 @@ class Groupsummary extends DataView
                 )
             );
         }
    +
    +    public function getFilterColumns()
    +    {
    +        return array('hostgroup', 'servicegroup');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/HostStatus.php b/modules/monitoring/library/Monitoring/DataView/HostStatus.php
    index 904dd41f8..23df6d94a 100644
    --- a/modules/monitoring/library/Monitoring/DataView/HostStatus.php
    +++ b/modules/monitoring/library/Monitoring/DataView/HostStatus.php
    @@ -21,7 +21,6 @@ class HostStatus extends DataView
         public function getColumns()
         {
             return array(
    -            'host',
                 'host_name',
                 'host_display_name',
                 'host_alias',
    @@ -93,6 +92,13 @@ class HostStatus extends DataView
                 'host_display_name' => array(
                     'order' => self::SORT_ASC
                 ),
    +            'host_severity' => array(
    +                'columns' => array(
    +                    'host_severity DESC',
    +                    'host_last_state_change DESC',
    +                    'host_display_name ASC'
    +                )
    +            ),
                 'host_address' => array(
                     'columns' => array(
                         'host_ipv4'
    @@ -101,20 +107,13 @@ class HostStatus extends DataView
                 ),
                 'host_last_state_change' => array(
                     'order' => self::SORT_ASC
    -            ),
    -            'host_severity' => array(
    -                'columns' => array(
    -                    'host_severity',
    -                    'host_last_state_change',
    -                ),
    -                'order' => self::SORT_DESC
                 )
             );
         }
     
         public function getFilterColumns()
         {
    -        return array('hostgroup', 'service_problems', 'servicegroup');
    +        return array('host', 'hostgroup', 'hostgroup_name', 'service', 'servicegroup', 'servicegroup_name');
         }
     
         public function isValidFilterTarget($column)
    diff --git a/modules/monitoring/library/Monitoring/DataView/Hostgroup.php b/modules/monitoring/library/Monitoring/DataView/Hostgroup.php
    index 84beb4bf0..c139d8977 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Hostgroup.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Hostgroup.php
    @@ -1,7 +1,6 @@
      array(
                     'order' => self::SORT_ASC
    +            ),
    +            'hostgroup_alias' => array(
    +                'order' => self::SORT_ASC
                 )
             );
         }
    +
    +    public function getFilterColumns()
    +    {
    +        return array('hostgroup', 'host');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/Notification.php b/modules/monitoring/library/Monitoring/DataView/Notification.php
    index b4632b57c..48d8fd058 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Notification.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Notification.php
    @@ -13,11 +13,11 @@ class Notification extends DataView
         public function getColumns()
         {
             return array(
    -            'host',
    -            'service',
    +            'host_name',
    +            'service_description',
                 'notification_state',
                 'notification_start_time',
    -            'notification_contact',
    +            'notification_contact_name',
                 'notification_output',
                 'notification_command',
                 'host_display_name',
    @@ -34,4 +34,9 @@ class Notification extends DataView
                 )
             );
         }
    +
    +    public function getFilterColumns()
    +    {
    +        return array('host', 'service', 'contact');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/DataView/ServiceStatus.php b/modules/monitoring/library/Monitoring/DataView/ServiceStatus.php
    index 5c37e45ee..b4f1038da 100644
    --- a/modules/monitoring/library/Monitoring/DataView/ServiceStatus.php
    +++ b/modules/monitoring/library/Monitoring/DataView/ServiceStatus.php
    @@ -72,7 +72,6 @@ class ServiceStatus extends DataView
                 'host_action_url',
                 'host_notes_url',
                 'host_last_comment',
    -            'host',
                 'host_display_name',
                 'host_alias',
                 'host_ipv4',
    @@ -87,7 +86,6 @@ class ServiceStatus extends DataView
                 'host_last_time_down',
                 'host_last_time_unreachable',
                 'host_modified_host_attributes',
    -            'service',
                 'service_hard_state',
                 'service_problem',
                 'service_perfdata',
    @@ -123,19 +121,28 @@ class ServiceStatus extends DataView
         public function getSortRules()
         {
             return array(
    +            'service_display_name' => array(
    +                'columns' => array(
    +                    'service_display_name',
    +                    'host_display_name'
    +                ),
    +                'order' => self::SORT_ASC
    +            ),
                 'service_severity' => array(
                     'columns' => array(
    -                    'service_severity',
    -                    'service_last_state_change'
    -                ),
    -                'order' => self::SORT_DESC
    +                    'service_severity DESC',
    +                    'service_last_state_change DESC',
    +                    'service_display_name ASC',
    +                    'host_display_name ASC'
    +                )
                 ),
                 'host_severity' => array(
                     'columns' => array(
    -                    'host_severity',
    -                    'host_last_state_change',
    -                ),
    -                'order' => self::SORT_ASC
    +                    'host_severity DESC',
    +                    'host_last_state_change DESC',
    +                    'host_display_name ASC',
    +                    'service_display_name ASC'
    +                )
                 ),
                 'host_display_name' => array(
                     'columns' => array(
    @@ -156,7 +163,15 @@ class ServiceStatus extends DataView
     
         public function getFilterColumns()
         {
    -        return array('hostgroup', 'servicegroup', 'service_problems');
    +        return array(
    +            'host',
    +            'hostgroup',
    +            'hostgroup_name',
    +            'service',
    +            'service_host',
    +            'servicegroup',
    +            'servicegroup_name'
    +        );
         }
     
         public function isValidFilterTarget($column)
    diff --git a/modules/monitoring/library/Monitoring/DataView/Servicegroup.php b/modules/monitoring/library/Monitoring/DataView/Servicegroup.php
    index 411b550fc..82feabd88 100644
    --- a/modules/monitoring/library/Monitoring/DataView/Servicegroup.php
    +++ b/modules/monitoring/library/Monitoring/DataView/Servicegroup.php
    @@ -1,10 +1,8 @@
      array(
                     'order' => self::SORT_ASC
    +            ),
    +            'servicegroup_alias' => array(
    +                'order' => self::SORT_ASC
                 )
             );
         }
    +
    +    public function getFilterColumns()
    +    {
    +        return array('servicegroup', 'host', 'service');
    +    }
     }
    diff --git a/modules/monitoring/library/Monitoring/MonitoringWizard.php b/modules/monitoring/library/Monitoring/MonitoringWizard.php
    index 4e342aa75..496809c33 100644
    --- a/modules/monitoring/library/Monitoring/MonitoringWizard.php
    +++ b/modules/monitoring/library/Monitoring/MonitoringWizard.php
    @@ -3,13 +3,12 @@
     
     namespace Icinga\Module\Monitoring;
     
    -use Icinga\Application\Platform;
     use Icinga\Web\Form;
     use Icinga\Web\Wizard;
     use Icinga\Web\Request;
     use Icinga\Module\Setup\Setup;
     use Icinga\Module\Setup\SetupWizard;
    -use Icinga\Module\Setup\Requirements;
    +use Icinga\Module\Setup\RequirementSet;
     use Icinga\Module\Setup\Forms\SummaryPage;
     use Icinga\Module\Monitoring\Forms\Setup\WelcomePage;
     use Icinga\Module\Monitoring\Forms\Setup\BackendPage;
    @@ -17,6 +16,8 @@ use Icinga\Module\Monitoring\Forms\Setup\InstancePage;
     use Icinga\Module\Monitoring\Forms\Setup\SecurityPage;
     use Icinga\Module\Monitoring\Forms\Setup\IdoResourcePage;
     use Icinga\Module\Monitoring\Forms\Setup\LivestatusResourcePage;
    +use Icinga\Module\Setup\Requirement\ClassRequirement;
    +use Icinga\Module\Setup\Requirement\PhpModuleRequirement;
     
     /**
      * Monitoring Module Setup Wizard
    @@ -135,22 +136,62 @@ class MonitoringWizard extends Wizard implements SetupWizard
          */
         public function getRequirements()
         {
    -        $requirements = new Requirements();
    +        $set = new RequirementSet();
     
    -        $requirements->addOptional(
    -            'existing_php_mod_sockets',
    -            mt('monitoring', 'PHP Module: Sockets'),
    -            mt(
    +        // TODO(8254): Add this to the $backendSet
    +        $set->add(new PhpModuleRequirement(array(
    +            'optional'      => true,
    +            'condition'     => 'Sockets',
    +            'description'   => mt(
                     'monitoring',
                     'In case it\'s desired that a TCP connection is being used by Icinga Web 2 to'
                     . ' access a Livestatus interface, the Sockets module for PHP is required.'
    -            ),
    -            Platform::extensionLoaded('sockets'),
    -            Platform::extensionLoaded('sockets') ? mt('monitoring', 'The PHP Module sockets is available.') : (
    -                mt('monitoring', 'The PHP Module sockets is not available.')
                 )
    -        );
    +        )));
     
    -        return $requirements;
    +        $backendSet = new RequirementSet(false, RequirementSet::MODE_OR);
    +        $mysqlSet = new RequirementSet(true);
    +        $mysqlSet->add(new PhpModuleRequirement(array(
    +            'optional'      => true,
    +            'condition'     => 'mysql',
    +            'alias'         => 'PDO-MySQL',
    +            'description'   => mt(
    +                'monitoring',
    +                'To access the IDO stored in a MySQL database the PDO-MySQL module for PHP is required.'
    +            )
    +        )));
    +        $mysqlSet->add(new ClassRequirement(array(
    +            'optional'      => true,
    +            'condition'     => 'Zend_Db_Adapter_Pdo_Mysql',
    +            'alias'         => mt('monitoring', 'Zend database adapter for MySQL'),
    +            'description'   => mt(
    +                'monitoring',
    +                'The Zend database adapter for MySQL is required to access a MySQL database.'
    +            )
    +        )));
    +        $backendSet->merge($mysqlSet);
    +        $pgsqlSet = new RequirementSet(true);
    +        $pgsqlSet->add(new PhpModuleRequirement(array(
    +            'optional'      => true,
    +            'condition'     => 'pgsql',
    +            'alias'         => 'PDO-PostgreSQL',
    +            'description'   => mt(
    +                'monitoring',
    +                'To access the IDO stored in a PostgreSQL database the PDO-PostgreSQL module for PHP is required.'
    +            )
    +        )));
    +        $pgsqlSet->add(new ClassRequirement(array(
    +            'optional'      => true,
    +            'condition'     => 'Zend_Db_Adapter_Pdo_Pgsql',
    +            'alias'         => mt('monitoring', 'Zend database adapter for PostgreSQL'),
    +            'description'   => mt(
    +                'monitoring',
    +                'The Zend database adapter for PostgreSQL is required to access a PostgreSQL database.'
    +            )
    +        )));
    +        $backendSet->merge($pgsqlSet);
    +        $set->merge($backendSet);
    +
    +        return $set;
         }
     }
    diff --git a/modules/monitoring/library/Monitoring/Object/Host.php b/modules/monitoring/library/Monitoring/Object/Host.php
    index 273c65eae..342e78812 100644
    --- a/modules/monitoring/library/Monitoring/Object/Host.php
    +++ b/modules/monitoring/library/Monitoring/Object/Host.php
    @@ -89,49 +89,47 @@ class Host extends MonitoredObject
         protected function getDataView()
         {
             $columns = array(
    -            'host_name',
    -            'host_display_name',
    -            'host_alias',
    -            'host_address',
    -            'host_state',
    -            'host_state_type',
    -            'host_handled',
    -            'host_in_downtime',
                 'host_acknowledged',
    -            'host_last_state_change',
    -            'host_last_notification',
    -            'host_last_check',
    -            'host_next_check',
    +            'host_action_url',
    +            'host_active_checks_enabled',
    +            'host_active_checks_enabled_changed',
    +            'host_address',
    +            'host_alias',
    +            'host_check_command',
                 'host_check_execution_time',
                 'host_check_latency',
                 'host_check_source',
    -            'host_output',
    -            'host_long_output',
    -            'host_check_command',
    -            'host_perfdata',
    -            'host_passive_checks_enabled',
    -            'host_passive_checks_enabled_changed',
    -            'host_obsessing',
    -            'host_obsessing_changed',
    -            'host_notifications_enabled',
    -            'host_notifications_enabled_changed',
    +            'host_current_check_attempt',
    +            'host_current_notification_number',
    +            'host_display_name',
                 'host_event_handler_enabled',
                 'host_event_handler_enabled_changed',
                 'host_flap_detection_enabled',
                 'host_flap_detection_enabled_changed',
    -            'host_active_checks_enabled',
    -            'host_active_checks_enabled_changed',
    -            'host_current_check_attempt',
    -            'host_max_check_attempts',
    -            'host_current_notification_number',
    -            'host_percent_state_change',
    +            'host_handled',
    +            'host_in_downtime',
                 'host_is_flapping',
    -            'host_action_url',
    +            'host_is_reachable',
    +            'host_last_check',
    +            'host_last_notification',
    +            'host_last_state_change',
    +            'host_long_output',
    +            'host_max_check_attempts',
    +            'host_name',
    +            'host_next_check',
                 'host_notes_url',
    -            'host_modified_host_attributes',
    -            'host_problem',
    -            'host_process_performance_data',
    -            'process_perfdata' => 'host_process_performance_data'
    +            'host_notifications_enabled',
    +            'host_notifications_enabled_changed',
    +            'host_obsessing',
    +            'host_obsessing_changed',
    +            'host_output',
    +            'host_passive_checks_enabled',
    +            'host_passive_checks_enabled_changed',
    +            'host_percent_state_change',
    +            'host_perfdata',
    +            'host_process_perfdata' => 'host_process_performance_data',
    +            'host_state',
    +            'host_state_type'
             );
             if ($this->backend->getType() === 'livestatus') {
                 $columns[] = 'host_contacts';
    diff --git a/modules/monitoring/library/Monitoring/Object/MonitoredObject.php b/modules/monitoring/library/Monitoring/Object/MonitoredObject.php
    index 4baa7aa9b..05f201428 100644
    --- a/modules/monitoring/library/Monitoring/Object/MonitoredObject.php
    +++ b/modules/monitoring/library/Monitoring/Object/MonitoredObject.php
    @@ -120,7 +120,7 @@ abstract class MonitoredObject implements Filterable
         /**
          * Filter
          *
    -     * @type Filter
    +     * @var Filter
          */
         protected $filter;
     
    @@ -248,15 +248,18 @@ abstract class MonitoredObject implements Filterable
             $comments = $this->backend->select()->from('comment', array(
                 'id'        => 'comment_internal_id',
                 'timestamp' => 'comment_timestamp',
    -            'author'    => 'comment_author',
    +            'author'    => 'comment_author_name',
                 'comment'   => 'comment_data',
                 'type'      => 'comment_type',
             ))
                 ->where('comment_type', array('comment', 'ack'))
    -            ->where('comment_objecttype', $this->type)
    -            ->where('comment_host', $this->host_name);
    +            ->where('comment_objecttype', $this->type);
             if ($this->type === self::TYPE_SERVICE) {
    -            $comments->where('comment_service', $this->service_description);
    +            $comments
    +                ->where('service_host_name', $this->host_name)
    +                ->where('service_description', $this->service_description);
    +        } else {
    +            $comments->where('host_name', $this->host_name);
             }
             $this->comments = $comments->getQuery()->fetchAll();
             return $this;
    @@ -273,7 +276,7 @@ abstract class MonitoredObject implements Filterable
                 'id'                => 'downtime_internal_id',
                 'objecttype'        => 'downtime_objecttype',
                 'comment'           => 'downtime_comment',
    -            'author'            => 'downtime_author',
    +            'author_name'       => 'downtime_author_name',
                 'start'             => 'downtime_start',
                 'scheduled_start'   => 'downtime_scheduled_start',
                 'end'               => 'downtime_end',
    @@ -281,16 +284,18 @@ abstract class MonitoredObject implements Filterable
                 'is_flexible'       => 'downtime_is_flexible',
                 'is_fixed'          => 'downtime_is_fixed',
                 'is_in_effect'      => 'downtime_is_in_effect',
    -            'entry_time'        => 'downtime_entry_time',
    -            'host'              => 'downtime_host',
    -            'service'           => 'downtime_service'
    +            'entry_time'        => 'downtime_entry_time'
             ))
                 ->where('downtime_objecttype', $this->type)
    -            ->where('downtime_host', $this->host_name)
                 ->order('downtime_is_in_effect', 'DESC')
                 ->order('downtime_scheduled_start', 'ASC');
             if ($this->type === self::TYPE_SERVICE) {
    -            $downtimes->where('downtime_service', $this->service_description);
    +            $downtimes
    +                ->where('service_host_name', $this->host_name)
    +                ->where('service_description', $this->service_description);
    +        } else {
    +            $downtimes
    +                ->where('host_name', $this->host_name);
             }
             $this->downtimes = $downtimes->getQuery()->fetchAll();
             return $this;
    @@ -385,8 +390,9 @@ abstract class MonitoredObject implements Filterable
                     'contact_pager',
             ));
             if ($this->type === self::TYPE_SERVICE) {
    -            $contacts->where('service_host_name', $this->host_name);
    -            $contacts->where('service_description', $this->service_description);
    +            $contacts
    +                ->where('service_host_name', $this->host_name)
    +                ->where('service_description', $this->service_description);
             } else {
                 $contacts->where('host_name', $this->host_name);
             }
    @@ -426,10 +432,13 @@ abstract class MonitoredObject implements Filterable
             $contactsGroups = $this->backend->select()->from('contactgroup', array(
                     'contactgroup_name',
                     'contactgroup_alias'
    -        ))
    -            ->where('host_name', $this->host_name);
    +        ));
             if ($this->type === self::TYPE_SERVICE) {
    -            $contactsGroups->where('service_description', $this->service_description);
    +            $contactsGroups
    +                ->where('service_host_name', $this->host_name)
    +                ->where('service_description', $this->service_description);
    +        } else {
    +            $contactsGroups->where('host_name', $this->host_name);
             }
             $this->contactgroups = $contactsGroups->getQuery()->fetchAll();
             return $this;
    @@ -455,7 +464,6 @@ abstract class MonitoredObject implements Filterable
                     'output',
                     'type'
             ))
    -            ->order('timestamp', 'DESC')
                 ->where('host_name', $this->host_name);
             if ($this->type === self::TYPE_SERVICE) {
                 $eventHistory->where('service_description', $this->service_description);
    diff --git a/modules/monitoring/library/Monitoring/Object/Service.php b/modules/monitoring/library/Monitoring/Object/Service.php
    index 774511ae3..7c22ae57d 100644
    --- a/modules/monitoring/library/Monitoring/Object/Service.php
    +++ b/modules/monitoring/library/Monitoring/Object/Service.php
    @@ -106,94 +106,56 @@ class Service extends MonitoredObject
         protected function getDataView()
         {
             return $this->backend->select()->from('serviceStatus', array(
    -            'host_name',
    -            'host_display_name',
    -            'host_state',
    -            'host_state_type',
    -            'host_last_state_change',
    -            'host_address',
    -            'host_problem',
    -            'host_handled',
    -            'service_description',
    -            'service_display_name',
    -            'service_state',
    -            'service_in_downtime',
    -            'service_acknowledged',
    -            'service_handled',
    -            'service_unhandled',
    -            'service_output',
    -            'service_last_state_change',
    -            'service_icon_image',
    -            'service_long_output',
    -            'service_is_flapping',
    -            'service_state_type',
    -            'service_severity',
    -            'service_last_check',
    -            'service_notifications_enabled',
    -            'service_notifications_enabled_changed',
    -            'service_action_url',
    -            'service_notes_url',
    -            'service_last_check',
    -            'service_next_check',
    -            'service_attempt',
    -            'service_last_notification',
    -            'service_check_command',
    -            'service_check_source',
    -            'service_current_notification_number',
    -            'host_icon_image',
                 'host_acknowledged',
    -            'host_output',
    -            'host_long_output',
    -            'host_in_downtime',
    -            'host_is_flapping',
    -            'host_last_check',
    -            'host_notifications_enabled',
    -            'host_unhandled_services',
    -            'host_action_url',
    -            'host_notes_url',
    -            'host_display_name',
    -            'host_alias',
    -            'host_ipv4',
    -            'host_severity',
    -            'host_perfdata',
                 'host_active_checks_enabled',
    +            'host_address',
    +            'host_alias',
    +            'host_display_name',
    +            'host_handled',
    +            'host_in_downtime',
    +            'host_last_state_change',
    +            'host_name',
    +            'host_notifications_enabled',
                 'host_passive_checks_enabled',
    -            'host_last_hard_state',
    -            'host_last_hard_state_change',
    -            'host_last_time_up',
    -            'host_last_time_down',
    -            'host_last_time_unreachable',
    -            'host_modified_host_attributes',
    -            'host',
    -            'service',
    -            'service_hard_state',
    -            'service_problem',
    -            'service_perfdata',
    +            'host_state',
    +            'service_acknowledged',
    +            'service_action_url',
                 'service_active_checks_enabled',
                 'service_active_checks_enabled_changed',
    -            'service_passive_checks_enabled',
    -            'service_passive_checks_enabled_changed',
    -            'service_last_hard_state',
    -            'service_last_hard_state_change',
    -            'service_last_time_ok',
    -            'service_last_time_warning',
    -            'service_last_time_critical',
    -            'service_last_time_unknown',
    +            'service_attempt',
    +            'service_check_command',
                 'service_check_execution_time',
                 'service_check_latency',
    -            'service_current_check_attempt',
    -            'service_max_check_attempts',
    -            'service_obsessing',
    -            'service_obsessing_changed',
    +            'service_check_source',
    +            'service_current_notification_number',
    +            'service_description',
    +            'service_display_name',
                 'service_event_handler_enabled',
                 'service_event_handler_enabled_changed',
                 'service_flap_detection_enabled',
                 'service_flap_detection_enabled_changed',
    -            'service_modified_service_attributes',
    -            'service_process_performance_data',
    -            'process_perfdata' => 'service_process_performance_data',
    +            'service_handled',
    +            'service_in_downtime',
    +            'service_is_flapping',
    +            'service_is_reachable',
    +            'service_last_check',
    +            'service_last_notification',
    +            'service_last_state_change',
    +            'service_long_output',
    +            'service_next_check',
    +            'service_notes_url',
    +            'service_notifications_enabled',
    +            'service_notifications_enabled_changed',
    +            'service_obsessing',
    +            'service_obsessing_changed',
    +            'service_output',
    +            'service_passive_checks_enabled',
    +            'service_passive_checks_enabled_changed',
                 'service_percent_state_change',
    -            'service_host_name'
    +            'service_perfdata',
    +            'service_process_perfdata' => 'service_process_performance_data',
    +            'service_state',
    +            'service_state_type'
             ))
                 ->where('host_name', $this->host->getName())
                 ->where('service_description', $this->service);
    diff --git a/modules/monitoring/library/Monitoring/Plugin/Perfdata.php b/modules/monitoring/library/Monitoring/Plugin/Perfdata.php
    index cbf86ab19..b1c71cb72 100644
    --- a/modules/monitoring/library/Monitoring/Plugin/Perfdata.php
    +++ b/modules/monitoring/library/Monitoring/Plugin/Perfdata.php
    @@ -429,12 +429,12 @@ class Perfdata
          *
          * @param bool $html
          *
    -     * @return stringS
    +     * @return string
          */
         public function formatLabel($html = false)
         {
             return sprintf(
    -            $html ? t('%s %s (%s%%)') : t('%s %s (%s%%)'),
    +            $html ? '%s %s (%s%%)' : '%s %s (%s%%)',
                 htmlspecialchars($this->getLabel()),
                 $this->format($this->value),
                 number_format($this->getPercentage(), 2)
    diff --git a/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php b/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php
    index f553c12f3..9d27b1268 100644
    --- a/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php
    +++ b/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php
    @@ -62,7 +62,7 @@ abstract class MonitoredObjectController extends Controller
                     ->handleRequest();
                 $this->view->checkNowForm = $checkNowForm;
             }
    -        if ( ! in_array((int) $this->object->state, array(0, 99))) {
    +        if (! in_array((int) $this->object->state, array(0, 99))) {
                 if ((bool) $this->object->acknowledged) {
                     if ($auth->hasPermission('monitoring/command/remove-acknowledgement')) {
                         $removeAckForm = new RemoveAcknowledgementCommandForm();
    @@ -73,27 +73,24 @@ abstract class MonitoredObjectController extends Controller
                     }
                 }
             }
    -        if (count($this->object->comments) > 0 && $auth->hasPermission('monitoring/command/comment/delete')) {
    -            $delCommentForm = new DeleteCommentCommandForm();
    -            $delCommentForm
    -                ->setObjects($this->object)
    -                ->handleRequest();
    -            $this->view->delCommentForm = $delCommentForm;
    -        }
    -        if (count($this->object->downtimes > 0) && $auth->hasPermission('monitoring/command/downtime/delete')) {
    -            $delDowntimeForm = new DeleteDowntimeCommandForm();
    -            $delDowntimeForm
    -                ->setObjects($this->object)
    -                ->handleRequest();
    -            $this->view->delDowntimeForm = $delDowntimeForm;
    -        }
    +        $this->object->populate();
             $toggleFeaturesForm = new ToggleObjectFeaturesCommandForm();
             $toggleFeaturesForm
                 ->load($this->object)
                 ->setObjects($this->object)
                 ->handleRequest();
             $this->view->toggleFeaturesForm = $toggleFeaturesForm;
    -        $this->view->object = $this->object->populate();
    +        if (! empty($this->object->comments) && $auth->hasPermission('monitoring/command/comment/delete')) {
    +            $delCommentForm = new DeleteCommentCommandForm();
    +            $delCommentForm->handleRequest();
    +            $this->view->delCommentForm = $delCommentForm;
    +        }
    +        if (! empty($this->object->downtimes) && $auth->hasPermission('monitoring/command/downtime/delete')) {
    +            $delDowntimeForm = new DeleteDowntimeCommandForm();
    +            $delDowntimeForm->handleRequest();
    +            $this->view->delDowntimeForm = $delDowntimeForm;
    +        }
    +        $this->view->object = $this->object;
         }
     
         /**
    @@ -136,26 +133,6 @@ abstract class MonitoredObjectController extends Controller
          */
         abstract public function scheduleDowntimeAction();
     
    -    /**
    -     * Delete a comment
    -     */
    -    public function deleteCommentAction()
    -    {
    -        $this->assertHttpMethod('POST');
    -        $this->assertPermission('monitoring/command/comment/delete');
    -        $this->handleCommandForm(new DeleteCommentCommandForm());
    -    }
    -
    -    /**
    -     * Delete a downtime
    -     */
    -    public function deleteDowntimeAction()
    -    {
    -        $this->assertHttpMethod('POST');
    -        $this->assertPermission('monitoring/command/downtime/delete');
    -        $this->handleCommandForm(new DeleteDowntimeCommandForm());
    -    }
    -
         /**
          * Create tabs
          */
    diff --git a/modules/monitoring/library/Monitoring/Web/Menu/BackendAvailabilityMenuItemRenderer.php b/modules/monitoring/library/Monitoring/Web/Menu/BackendAvailabilityMenuItemRenderer.php
    new file mode 100644
    index 000000000..186351a40
    --- /dev/null
    +++ b/modules/monitoring/library/Monitoring/Web/Menu/BackendAvailabilityMenuItemRenderer.php
    @@ -0,0 +1,62 @@
    +select()->from(
    +            'programstatus',
    +            array(
    +                'is_currently_running'
    +            )
    +        )->getQuery()->fetchRow()->is_currently_running;
    +    }
    +
    +    /**
    +     * @see MenuItemRenderer::render()
    +     */
    +    public function render(Menu $menu)
    +    {
    +        return $this->getBadge() . $this->createLink($menu);
    +    }
    +
    +    protected function getBadge()
    +    {
    +        if (! (bool)$this->isCurrentlyRunning()) {
    +            return sprintf(
    +                '
    %s
    ', + mt('monitoring', 'monitoring backend is not running'), + 1 + ); + } + return ''; + } + + /** + * Get the problem data for the summary + * + * @return array|null + */ + public function getSummary() + { + if (! (bool)$this->isCurrentlyRunning()) { + return array( + 'problems' => 1, + 'title' => mt('monitoring', 'monitoring backend is not running') + ); + } + return null; + } +} diff --git a/library/Icinga/Web/Menu/MonitoringMenuItemRenderer.php b/modules/monitoring/library/Monitoring/Web/Menu/MonitoringMenuItemRenderer.php similarity index 68% rename from library/Icinga/Web/Menu/MonitoringMenuItemRenderer.php rename to modules/monitoring/library/Monitoring/Web/Menu/MonitoringMenuItemRenderer.php index 33e1c6a60..80ffb3d9c 100644 --- a/library/Icinga/Web/Menu/MonitoringMenuItemRenderer.php +++ b/modules/monitoring/library/Monitoring/Web/Menu/MonitoringMenuItemRenderer.php @@ -1,14 +1,14 @@ countItems(); - $badge = ''; - if ($count) { - $badge = sprintf( + return $this->getBadge() . $this->createLink($menu); + } + + protected function getBadge() + { + if ($count = $this->countItems()) { + return sprintf( '
    %s
    ', $this->getBadgeTitle(), $count ); } - if ($menu->getIcon() && strpos($menu->getIcon(), '.') === false) { - return sprintf( - '%s %s', - $badge, - $menu->getUrl() ?: '#', - $menu->getIcon(), - htmlspecialchars($menu->getTitle()) - ); - } - - return sprintf( - '%s%s%s', - $badge, - $menu->getUrl() ?: '#', - $menu->getIcon() ? ' ' : '', - htmlspecialchars($menu->getTitle()) - ); + return ''; } } diff --git a/modules/monitoring/library/Monitoring/Web/Menu/ProblemMenuItemRenderer.php b/modules/monitoring/library/Monitoring/Web/Menu/ProblemMenuItemRenderer.php new file mode 100644 index 000000000..d17431398 --- /dev/null +++ b/modules/monitoring/library/Monitoring/Web/Menu/ProblemMenuItemRenderer.php @@ -0,0 +1,12 @@ + * { + + .state > a { color: white; font-size: 0.8em; padding: 2px 5px; @@ -226,7 +228,9 @@ hr.command-separator { border-bottom: 2px solid @colorPetrol; } -.sort-box { - float: right; - margin-right: 1em; +div.backend-not-running { + background: @colorCritical; + color: white; + text-align: center; + padding: 0.1em; } diff --git a/modules/monitoring/public/js/module.js b/modules/monitoring/public/js/module.js index 03cfc1c3d..3421be2cf 100644 --- a/modules/monitoring/public/js/module.js +++ b/modules/monitoring/public/js/module.js @@ -44,7 +44,8 @@ /** * Prepare the timer to handle the timeline's infinite loading */ - if ($('div.timeline').length) { + var $timeline = $('div.timeline'); + if ($timeline.length && !$timeline.closest('.dashboard').length) { if (this.scrollCheckTimer === null) { this.scrollCheckTimer = this.module.icinga.timer.register( this.checkTimelinePosition, diff --git a/modules/setup/application/controllers/IndexController.php b/modules/setup/application/controllers/IndexController.php index b83c9f94e..eec43a737 100644 --- a/modules/setup/application/controllers/IndexController.php +++ b/modules/setup/application/controllers/IndexController.php @@ -1,10 +1,10 @@ resourceConfig)), $this->backendConfig['user_class'], $this->backendConfig['user_name_attribute'], - $this->backendConfig['base_dn'] + $this->backendConfig['base_dn'], + $this->backendConfig['filter'] ); } else { throw new LogicException( diff --git a/modules/setup/application/forms/AuthBackendPage.php b/modules/setup/application/forms/AuthBackendPage.php index 0ec1de30f..f3bce41fa 100644 --- a/modules/setup/application/forms/AuthBackendPage.php +++ b/modules/setup/application/forms/AuthBackendPage.php @@ -35,7 +35,7 @@ class AuthBackendPage extends Form * * @param array $config * - * @return self + * @return $this */ public function setResourceConfig(array $config) { diff --git a/modules/setup/application/forms/DatabaseCreationPage.php b/modules/setup/application/forms/DatabaseCreationPage.php index 9f4ed35a1..f92fce1c3 100644 --- a/modules/setup/application/forms/DatabaseCreationPage.php +++ b/modules/setup/application/forms/DatabaseCreationPage.php @@ -53,7 +53,7 @@ class DatabaseCreationPage extends Form * * @param array $config * - * @return self + * @return $this */ public function setResourceConfig(array $config) { @@ -66,7 +66,7 @@ class DatabaseCreationPage extends Form * * @param array $privileges The privileges * - * @return self + * @return $this */ public function setDatabaseSetupPrivileges(array $privileges) { @@ -79,7 +79,7 @@ class DatabaseCreationPage extends Form * * @param array $privileges The privileges * - * @return self + * @return $this */ public function setDatabaseUsagePrivileges(array $privileges) { diff --git a/modules/setup/application/forms/LdapDiscoveryConfirmPage.php b/modules/setup/application/forms/LdapDiscoveryConfirmPage.php index 3635fc358..acb2cd9af 100644 --- a/modules/setup/application/forms/LdapDiscoveryConfirmPage.php +++ b/modules/setup/application/forms/LdapDiscoveryConfirmPage.php @@ -45,7 +45,7 @@ EOT; * * @param array $config * - * @return self + * @return $this */ public function setResourceConfig(array $config) { diff --git a/modules/setup/application/forms/LdapDiscoveryPage.php b/modules/setup/application/forms/LdapDiscoveryPage.php index 1b8a85c77..588791e2c 100644 --- a/modules/setup/application/forms/LdapDiscoveryPage.php +++ b/modules/setup/application/forms/LdapDiscoveryPage.php @@ -3,6 +3,7 @@ namespace Icinga\Module\Setup\Forms; +use Exception; use Zend_Validate_NotEmpty; use Icinga\Web\Form; use Icinga\Web\Form\ErrorLabeller; @@ -68,9 +69,12 @@ class LdapDiscoveryPage extends Form } if (isset($data['domain']) && $data['domain']) { - $this->discovery = Discovery::discoverDomain($data['domain']); - if ($this->discovery->isSuccess()) { - return true; + try { + $this->discovery = Discovery::discoverDomain($data['domain']); + if ($this->discovery->isSuccess()) { + return true; + } + } catch (Exception $e) { } $this->addError( diff --git a/modules/setup/application/forms/RequirementsPage.php b/modules/setup/application/forms/RequirementsPage.php index f4b8ee648..2237a04ed 100644 --- a/modules/setup/application/forms/RequirementsPage.php +++ b/modules/setup/application/forms/RequirementsPage.php @@ -4,7 +4,7 @@ namespace Icinga\Module\Setup\Forms; use Icinga\Web\Form; -use Icinga\Module\Setup\Requirements; +use Icinga\Module\Setup\SetupWizard; /** * Wizard page to list setup requirements @@ -12,11 +12,11 @@ use Icinga\Module\Setup\Requirements; class RequirementsPage extends Form { /** - * The requirements to list + * The wizard * - * @var Requirements + * @var SetupWizard */ - protected $requirements; + protected $wizard; /** * Initialize this page @@ -28,30 +28,30 @@ class RequirementsPage extends Form } /** - * Set the requirements to list + * Set the wizard * - * @param Requirements $requirements + * @param SetupWizard $wizard * - * @return self + * @return $this */ - public function setRequirements(Requirements $requirements) + public function setWizard(SetupWizard $wizard) { - $this->requirements = $requirements; + $this->wizard = $wizard; return $this; } /** - * Return the requirements to list + * Return the wizard * - * @return Requirements + * @return SetupWizard */ - public function getRequirements() + public function getWizard() { - return $this->requirements; + return $this->wizard; } /** - * Validate the given form data and check whether the requirements are fulfilled + * Validate the given form data and check whether the wizard's requirements are fulfilled * * @param array $data The data to validate * @@ -63,6 +63,6 @@ class RequirementsPage extends Form return false; } - return $this->requirements->fulfilled(); + return $this->wizard->getRequirements()->fulfilled(); } } diff --git a/modules/setup/application/forms/SummaryPage.php b/modules/setup/application/forms/SummaryPage.php index 18ffcebc8..c680eaf7c 100644 --- a/modules/setup/application/forms/SummaryPage.php +++ b/modules/setup/application/forms/SummaryPage.php @@ -64,7 +64,7 @@ class SummaryPage extends Form * * @param array $summary * - * @return self + * @return $this */ public function setSummary(array $summary) { diff --git a/modules/setup/application/views/scripts/form/setup-admin-account.phtml b/modules/setup/application/views/scripts/form/setup-admin-account.phtml index 55767e96f..99e5692b3 100644 --- a/modules/setup/application/views/scripts/form/setup-admin-account.phtml +++ b/modules/setup/application/views/scripts/form/setup-admin-account.phtml @@ -20,12 +20,12 @@ $showRadioBoxes = strpos(strtolower(get_class($radioElem)), 'radio') !== false; getElement('by_name')) !== null): ?>
    - + setAttrib('data-related-radiobtn', 'by_name') : $byNameElem; ?>
    @@ -35,12 +35,12 @@ $showRadioBoxes = strpos(strtolower(get_class($radioElem)), 'radio') !== false; getElement('existing_user')) !== null): ?>
    - + setAttrib('data-related-radiobtn', 'existing_user') : $existingUserElem; ?>
    @@ -50,14 +50,14 @@ $showRadioBoxes = strpos(strtolower(get_class($radioElem)), 'radio') !== false; getElement('new_user')) !== null): ?>
    - + setAttrib('data-related-radiobtn', 'new_user') : $newUserElem; ?> getElement('new_user_password'); ?> getElement('new_user_2ndpass'); ?>
    diff --git a/modules/setup/application/views/scripts/form/setup-requirements.phtml b/modules/setup/application/views/scripts/form/setup-requirements.phtml index b3cf30101..fbd2c692a 100644 --- a/modules/setup/application/views/scripts/form/setup-requirements.phtml +++ b/modules/setup/application/views/scripts/form/setup-requirements.phtml @@ -1,64 +1,38 @@ getRequirements(); ?> -
    translate('Acknowledged') ?> + %s'; + +// add warning to links that open in new tabs to improve accessibility, as recommended by WCAG20 G201 +$newTabInfo = sprintf(' %s ', $this->translate('opens in new window')); + +$linkText = '%s ' . $newTabInfo . ''; $localLinkText = '%s'; if ($object->notes_url) { diff --git a/modules/monitoring/application/views/scripts/show/components/checksource.phtml b/modules/monitoring/application/views/scripts/show/components/checksource.phtml index 60bb944f3..07e63e835 100644 --- a/modules/monitoring/application/views/scripts/show/components/checksource.phtml +++ b/modules/monitoring/application/views/scripts/show/components/checksource.phtml @@ -1,7 +1,20 @@ -check_source) return ?> +check_source !== null): ?>
    translate('Check Source') ?> - escape($object->check_source) ?> - + translate('Check Source') ?> + + escape($object->check_source) ?> +
    + translate('Reachable') ?> + + is_reachable ? $this->translate('Yes') : $this->translate('No') ?> +
    translate('Comments'); ?> hasPermission('monitoring/command/comment/add')) { - /** @type \Icinga\Module\Monitoring\Object\MonitoredObject $object */ + /** @var \Icinga\Module\Monitoring\Object\MonitoredObject $object */ if ($object->getType() === $object::TYPE_HOST) { echo $this->qlink( $this->translate('Add comment'), @@ -43,26 +43,20 @@ foreach ($object->comments as $comment) { ) : $this->escape($comment->comment); ?> -
    escape($comment->author) ?> (timeSince($comment->timestamp) ?>) - - - - - -
    - populate(array('comment_id' => $comment->id)); - echo $delCommentForm; - } ?> - (type) ?>): - - -
    +
    escape($comment->author); ?> (timeSince($comment->timestamp); ?>) + populate( + array( + 'comment_id' => $comment->id, + 'comment_is_service' => isset($comment->service_description) + ) + ); + echo $delCommentForm; + } ?> + (translate('Comment'); ?>): ', $commentText); ?>
    +

    translate('Custom variables') ?>

    +
    translate('Downtimes'); ?> hasPermission('monitoring/command/downtime/schedule')) { - /** @type \Icinga\Module\Monitoring\Object\MonitoredObject $object */ + /** @var \Icinga\Module\Monitoring\Object\MonitoredObject $object */ if ($object->getType() === $object::TYPE_HOST) { echo $this->qlink( $this->translate('Schedule downtime'), @@ -47,36 +47,40 @@ foreach ($object->downtimes as $downtime) { ) : $this->escape($downtime->comment); if ((bool) $downtime->is_in_effect) { - $state = 'in downtime since ' . $this->timeSince($downtime->start); + $state = 'in downtime since '; + $time = $this->timeSince($downtime->start); } else { if ((bool) $downtime->is_fixed) { - $state = 'scheduled ' . $this->timeUntil($downtime->start); + $state = 'scheduled '; + $time = $this->timeUntil($downtime->start); } else { - $state = 'scheduled flexible ' . $this->timeUntil($downtime->start); + $state = 'scheduled flexible '; + $time = $this->timeUntil($downtime->start); } } ?> -
    escape($downtime->author) ?> - - - - - -
    - populate(array('downtime_id' => $downtime->id)); - echo $delDowntimeForm; - } ?> - - - -
    +
    escape($downtime->author_name); ?> + populate( + array( + 'downtime_id' => $downtime->id, + 'downtime_is_service' => $object->getType() === $object::TYPE_SERVICE + ) + ); + echo $delDowntimeForm; + } ?> + translate('Downtime'); ?> + qlink( + $state, + 'monitoring/downtime/show', + array('downtime_id' => $downtime->id), + array('data-base-target' => '_next') + ) . $time ; ?> - ', $commentText); ?>
    translate('Notifications') ?> + hasPermission('monitoring/command/send-custom-notification')) { + if ($object->getType() === $object::TYPE_HOST) { + $ackLink = $this->href( + 'monitoring/host/send-custom-notification', + array('host' => $object->getName()) + ); + } else { + $ackLink = $this->href( + 'monitoring/service/send-custom-notification', + array('host' => $object->getHost()->getName(), 'service' => $object->getName()) + ); + } + ?> + qlink( + $this->translate('Send notification'), + $ackLink, + null, + array( + 'icon' => 'bell', + 'data-base-target' => '_self', + 'title' => $this->translate( + 'Send a custom notification, share information about the' + . ' object to contacts.' + ) + ) + ) ?>
    + state, array(0, 99))) { -if ($object->current_notification_number > 0) { - if ((int) $object->current_notification_number === 1) { - $msg = sprintf( - $this->translate('A notication has been sent for this issue %s ago'), - $this->timeSince($object->last_notification) - ); + if ($object->current_notification_number > 0) { + if ((int) $object->current_notification_number === 1) { + $msg = sprintf( + $this->translate('A notication has been sent for this issue %s ago'), + $this->timeSince($object->last_notification) + ); + } else { + $msg = sprintf( + $this->translate('%s notications have been sent for this issue'), + $object->current_notification_number + ) . '
    ' . sprintf( + $this->translate('The last one occured %s ago'), + $this->timeSince($object->last_notification) + ); + } + echo $msg; } else { - $msg = sprintf( - $this->translate('%s notications have been sent for this issue'), - $object->current_notification_number - ) . '
    ' . sprintf( - $this->translate('The last one occured %s ago'), - $this->timeSince($object->last_notification) - ); + echo '(' + . $this->translate('No notification has been sent for this issue') + . ')'; } - echo $msg; -} else { - echo $this->translate('No notification has been sent for this issue'); } ?>
    - - - - - - - +

    Icinga Web 2

    +getWizard()->getRequirements(true); ?> +getWizard()->getPage('setup_modules')->getModuleWizards() as $moduleName => $wizard): ?> +

    translate('Module'); ?>

    +getRequirements(); ?> - - - - - - -

    title; ?>

    - description)): ?> -
      - description as $desc): ?> -
    • - -
    - - description; ?> - -
    message; ?>
    -
    - translate('You may also need to restart the web-server for the changes to take effect!'); ?> - qlink( - $this->translate('Refresh'), - null, - null, - array( - 'class' => 'button-like', - 'title' => $title, - 'aria-label' => sprintf($this->translate('Refresh the page; %s'), $title) - ) - ); ?> -
    -
    getElement($form->getTokenElementName()); ?> getElement($form->getUidElementName()); ?> -
    +
    getElement(Wizard::BTN_PREV); ?> getElement(Wizard::BTN_NEXT); - if (false === $requirements->fulfilled()) { + if (! $form->getWizard()->getRequirements()->fulfilled()) { $btn->setAttrib('disabled', 1); } echo $btn; ?> +
    + translate('You may also need to restart the web-server for the changes to take effect!'); ?> + qlink( + $this->translate('Refresh'), + null, + null, + array( + 'class' => 'button-like', + 'title' => $title, + 'aria-label' => sprintf($this->translate('Refresh the page; %s'), $title) + ) + ); ?> +
    - + \ No newline at end of file diff --git a/modules/setup/application/views/scripts/form/setup-welcome.phtml b/modules/setup/application/views/scripts/form/setup-welcome.phtml index d4bc1c3d7..1b37f60f0 100644 --- a/modules/setup/application/views/scripts/form/setup-welcome.phtml +++ b/modules/setup/application/views/scripts/form/setup-welcome.phtml @@ -5,6 +5,7 @@ use Icinga\Application\Config; use Icinga\Application\Platform; use Icinga\Web\Wizard; +$phpUser = Platform::getPhpUser(); $configDir = Icinga::app()->getConfigDir(); $setupTokenPath = rtrim($configDir, '/') . '/setup.token'; $cliPath = realpath(Icinga::app()->getApplicationDir() . '/../bin/icingacli'); @@ -41,10 +42,15 @@ $cliPath = realpath(Icinga::app()->getApplicationDir() . '/../bin/icingacli'); 'To run this wizard a user needs to authenticate using a token which is usually' . ' provided to him by an administrator who\'d followed the instructions below.' ); ?>

    -

    translate('In any case, make sure that a group called "icingaweb2" exists:'); ?>

    -
    - groupadd icingaweb2; -
    +

    translate('In any case, make sure that all of the following applies to your environment:'); ?>

    +
      +
    • translate('A system group called "icingaweb2" exists'); ?>
    • + +
    • translate('The user "%s" is a member of the system group "icingaweb2"'), $phpUser); ?>
    • + +
    • translate('Your webserver\'s user is a member of the system group "icingaweb2"'); ?>
    • + +

    translate('If you\'ve got the IcingaCLI installed you can do the following:'); ?>

    setup config directory --group icingaweb2; @@ -52,7 +58,7 @@ $cliPath = realpath(Icinga::app()->getApplicationDir() . '/../bin/icingacli');

    translate('In case the IcingaCLI is missing you can create the token manually:'); ?>

    - su -c "mkdir -m 2770 ; chgrp icingaweb2 ; head -c 12 /dev/urandom | base64 | tee ; chmod 0660 ;"; + su translate(''); ?> -c "mkdir -m 2770 ; chgrp icingaweb2 ; head -c 12 /dev/urandom | base64 | tee ; chmod 0660 ;";

    translate('Please see the %s for an extensive description on how to access and use this wizard.'), diff --git a/modules/setup/library/Setup/Requirement.php b/modules/setup/library/Setup/Requirement.php new file mode 100644 index 000000000..37bb5663e --- /dev/null +++ b/modules/setup/library/Setup/Requirement.php @@ -0,0 +1,279 @@ +optional = false; + $this->descriptions = array(); + + foreach ($options as $key => $value) { + $setMethod = 'set' . ucfirst($key); + $addMethod = 'add' . ucfirst($key); + if (method_exists($this, $setMethod)) { + $this->$setMethod($value); + } elseif (method_exists($this, $addMethod)) { + $this->$addMethod($value); + } else { + throw LogicException('No setter found for option key: ' . $key); + } + } + } + + /** + * Set the state of this requirement + * + * @param bool $state + * + * @return Requirement + */ + public function setState($state) + { + $this->state = (bool) $state; + return $this; + } + + /** + * Return the state of this requirement + * + * Evaluates the requirement in case there is no state set yet. + * + * @return int + */ + public function getState() + { + if ($this->state === null) { + $this->state = $this->evaluate(); + } + + return $this->state; + } + + /** + * Set a descriptive text for this requirement's current state + * + * @param string $text + * + * @return Requirement + */ + public function setStateText($text) + { + $this->stateText = $text; + return $this; + } + + /** + * Return a descriptive text for this requirement's current state + * + * @return string + */ + public function getStateText() + { + return $this->stateText; + } + + /** + * Add a description for this requirement + * + * @param string $description + * + * @return Requirement + */ + public function addDescription($description) + { + $this->descriptions[] = $description; + return $this; + } + + /** + * Return the descriptions of this wizard + * + * @return array + */ + public function getDescriptions() + { + return $this->descriptions; + } + + /** + * Set the title for this requirement + * + * @param string $title + * + * @return Requirement + */ + public function setTitle($title) + { + $this->title = $title; + return $this; + } + + /** + * Return the title of this requirement + * + * In case there is no title set the alias is returned instead. + * + * @return string + */ + public function getTitle() + { + if ($this->title === null) { + return $this->getAlias(); + } + + return $this->title; + } + + /** + * Set the condition for this requirement + * + * @param mixed $condition + * + * @return Requirement + */ + public function setCondition($condition) + { + $this->condition = $condition; + return $this; + } + + /** + * Return the condition of this requirement + * + * @return mixed + */ + public function getCondition() + { + return $this->condition; + } + + /** + * Set whether this requirement is optional + * + * @param bool $state + * + * @return Requirement + */ + public function setOptional($state = true) + { + $this->optional = (bool) $state; + return $this; + } + + /** + * Return whether this requirement is optional + * + * @return bool + */ + public function isOptional() + { + return $this->optional; + } + + /** + * Set the alias to display the condition with in a human readable way + * + * @param string $alias + * + * @return Requirement + */ + public function setAlias($alias) + { + $this->alias = $alias; + return $this; + } + + /** + * Return the alias to display the condition with in a human readable way + * + * @return string + */ + public function getAlias() + { + return $this->alias; + } + + /** + * Evaluate this requirement and return whether it is fulfilled + * + * @return bool + */ + abstract protected function evaluate(); + + /** + * Return whether the given requirement equals this one + * + * @param Requirement $requirement + * + * @return bool + */ + public function equals(Requirement $requirement) + { + if ($requirement instanceof static) { + return $this->getCondition() === $requirement->getCondition(); + } + + return false; + } +} diff --git a/modules/setup/library/Setup/Requirement/ClassRequirement.php b/modules/setup/library/Setup/Requirement/ClassRequirement.php new file mode 100644 index 000000000..e0f25cf4e --- /dev/null +++ b/modules/setup/library/Setup/Requirement/ClassRequirement.php @@ -0,0 +1,28 @@ +getCondition(); + if (Platform::classExists($classNameOrPath)) { + $this->setStateText(sprintf( + mt('setup', 'The %s is available.', 'setup.requirement.class'), + $this->getAlias() ?: $classNameOrPath . ' ' . mt('setup', 'class', 'setup.requirement.class') + )); + return true; + } else { + $this->setStateText(sprintf( + mt('setup', 'The %s is missing.', 'setup.requirement.class'), + $this->getAlias() ?: $classNameOrPath . ' ' . mt('setup', 'class', 'setup.requirement.class') + )); + return false; + } + } +} diff --git a/modules/setup/library/Setup/Requirement/ConfigDirectoryRequirement.php b/modules/setup/library/Setup/Requirement/ConfigDirectoryRequirement.php new file mode 100644 index 000000000..3404717db --- /dev/null +++ b/modules/setup/library/Setup/Requirement/ConfigDirectoryRequirement.php @@ -0,0 +1,42 @@ +getCondition(); + if (file_exists($path)) { + $readable = is_readable($path); + if ($readable && is_writable($path)) { + $this->setStateText(sprintf(mt('setup', 'The directory %s is read- and writable.'), $path)); + return true; + } else { + $this->setStateText(sprintf( + $readable + ? mt('setup', 'The directory %s is not writable.') + : mt('setup', 'The directory %s is not readable.'), + $path + )); + return false; + } + } else { + $this->setStateText(sprintf(mt('setup', 'The directory %s does not exist.'), $path)); + return false; + } + } +} diff --git a/modules/setup/library/Setup/Requirement/OSRequirement.php b/modules/setup/library/Setup/Requirement/OSRequirement.php new file mode 100644 index 000000000..ff185bb3c --- /dev/null +++ b/modules/setup/library/Setup/Requirement/OSRequirement.php @@ -0,0 +1,27 @@ +getCondition())); + } + + return $title; + } + + protected function evaluate() + { + $phpOS = Platform::getOperatingSystemName(); + $this->setStateText(sprintf(mt('setup', 'You are running PHP on a %s system.'), ucfirst($phpOS))); + return strtolower($phpOS) === strtolower($this->getCondition()); + } +} diff --git a/modules/setup/library/Setup/Requirement/PhpConfigRequirement.php b/modules/setup/library/Setup/Requirement/PhpConfigRequirement.php new file mode 100644 index 000000000..670c988e4 --- /dev/null +++ b/modules/setup/library/Setup/Requirement/PhpConfigRequirement.php @@ -0,0 +1,22 @@ +getCondition(); + $configValue = Platform::getPhpConfig($configDirective); + $this->setStateText( + $configValue + ? sprintf(mt('setup', 'The PHP config `%s\' is set to "%s".'), $configDirective, $configValue) + : sprintf(mt('setup', 'The PHP config `%s\' is not defined.'), $configDirective) + ); + return is_bool($value) ? $configValue == $value : $configValue === $value; + } +} diff --git a/modules/setup/library/Setup/Requirement/PhpModuleRequirement.php b/modules/setup/library/Setup/Requirement/PhpModuleRequirement.php new file mode 100644 index 000000000..6581797ce --- /dev/null +++ b/modules/setup/library/Setup/Requirement/PhpModuleRequirement.php @@ -0,0 +1,42 @@ +getAlias()) { + if ($title === null) { + $title = $this->getCondition(); + } + + return sprintf(mt('setup', 'PHP Module: %s'), $title); + } + + return $title; + } + + protected function evaluate() + { + $moduleName = $this->getCondition(); + if (Platform::extensionLoaded($moduleName)) { + $this->setStateText(sprintf( + mt('setup', 'The PHP module %s is available.'), + $this->getAlias() ?: $moduleName + )); + return true; + } else { + $this->setStateText(sprintf( + mt('setup', 'The PHP module %s is missing.'), + $this->getAlias() ?: $moduleName + )); + return false; + } + } +} diff --git a/modules/setup/library/Setup/Requirement/PhpVersionRequirement.php b/modules/setup/library/Setup/Requirement/PhpVersionRequirement.php new file mode 100644 index 000000000..d6ca5f189 --- /dev/null +++ b/modules/setup/library/Setup/Requirement/PhpVersionRequirement.php @@ -0,0 +1,28 @@ +setStateText(sprintf(mt('setup', 'You are running PHP version %s.'), $phpVersion)); + list($operator, $requiredVersion) = $this->getCondition(); + return version_compare($phpVersion, $requiredVersion, $operator); + } +} diff --git a/modules/setup/library/Setup/RequirementSet.php b/modules/setup/library/Setup/RequirementSet.php new file mode 100644 index 000000000..8bb018d7b --- /dev/null +++ b/modules/setup/library/Setup/RequirementSet.php @@ -0,0 +1,333 @@ +optional = $optional; + $this->requirements = array(); + $this->setMode($mode ?: static::MODE_AND); + } + + /** + * Set the state of this set + * + * @param bool $state + * + * @return RequirementSet + */ + public function setState($state) + { + $this->state = (bool) $state; + return $this; + } + + /** + * Return the state of this set + * + * Alias for RequirementSet::fulfilled(true). + * + * @return bool + */ + public function getState() + { + return $this->fulfilled(true); + } + + /** + * Set whether this set of requirements should be optional + * + * @param bool $state + * + * @return RequirementSet + */ + public function setOptional($state = true) + { + $this->optional = (bool) $state; + return $this; + } + + /** + * Return whether this set of requirements is optional + * + * @return bool + */ + public function isOptional() + { + return $this->optional; + } + + /** + * Set the mode by which to evaluate the requirements + * + * @param int $mode + * + * @return RequirementSet + * + * @throws LogicException In case the given mode is invalid + */ + public function setMode($mode) + { + if ($mode !== static::MODE_AND && $mode !== static::MODE_OR) { + throw new LogicException(sprintf('Invalid mode %u given.'), $mode); + } + + $this->mode = $mode; + return $this; + } + + /** + * Return the mode by which the requirements are evaluated + * + * @return int + */ + public function getMode() + { + return $this->mode; + } + + /** + * Register a requirement + * + * @param Requirement $requirement The requirement to add + * + * @return RequirementSet + */ + public function add(Requirement $requirement) + { + $merged = false; + foreach ($this->requirements as $knownRequirement) { + if ($knownRequirement instanceof Requirement && $requirement->equals($knownRequirement)) { + $knownRequirement->setOptional($requirement->isOptional()); + foreach ($requirement->getDescriptions() as $description) { + $knownRequirement->addDescription($description); + } + + $merged = true; + break; + } + } + + if (! $merged) { + $this->requirements[] = $requirement; + } + + return $this; + } + + /** + * Return all registered requirements + * + * @return array + */ + public function getAll() + { + return $this->requirements; + } + + /** + * Register the given set of requirements + * + * @param RequirementSet $set The set to register + * + * @return RequirementSet + */ + public function merge(RequirementSet $set) + { + if ($this->getMode() === $set->getMode() && $this->isOptional() === $set->isOptional()) { + foreach ($set->getAll() as $requirement) { + if ($requirement instanceof static) { + $this->merge($requirement); + } else { + $this->add($requirement); + } + } + } else { + $this->requirements[] = $set; + } + + return $this; + } + + /** + * Return whether all requirements can successfully be evaluated based on the current mode + * + * In case this is a optional set of requirements (and $force is false), true is returned immediately. + * + * @param bool $force Whether to ignore the optionality of a set or single requirement + * + * @return bool + */ + public function fulfilled($force = false) + { + $state = $this->isOptional(); + if (! $force && $state) { + return true; + } + + if (! $force && $this->state !== null) { + return $this->state; + } elseif ($force && $this->forcedState !== null) { + return $this->forcedState; + } + + $self = $this->requirements; + foreach ($self as $requirement) { + if ($requirement->getState()) { + $state = true; + if ($this->getMode() === static::MODE_OR) { + break; + } + } elseif ($force || !$requirement->isOptional()) { + $state = false; + if ($this->getMode() === static::MODE_AND) { + break; + } + } + } + + if ($force) { + return $this->forcedState = $state; + } + + return $this->state = $state; + } + + /** + * Return whether the current element represents a nested set of requirements + * + * @return bool + */ + public function hasChildren() + { + $current = $this->current(); + return $current instanceof static; + } + + /** + * Return a iterator for the current nested set of requirements + * + * @return RecursiveIterator + */ + public function getChildren() + { + return $this->current(); + } + + /** + * Rewind the iterator to its first element + */ + public function rewind() + { + reset($this->requirements); + } + + /** + * Return whether the current iterator position is valid + * + * @return bool + */ + public function valid() + { + return $this->key() !== null; + } + + /** + * Return the current element in the iteration + * + * @return Requirement|RequirementSet + */ + public function current() + { + return current($this->requirements); + } + + /** + * Return the position of the current element in the iteration + * + * @return int + */ + public function key() + { + return key($this->requirements); + } + + /** + * Advance the iterator to the next element + */ + public function next() + { + next($this->requirements); + } + + /** + * Return this set of requirements rendered as HTML + * + * @return string + */ + public function __toString() + { + $renderer = new RequirementsRenderer($this); + return (string) $renderer; + } +} diff --git a/modules/setup/library/Setup/Requirements.php b/modules/setup/library/Setup/Requirements.php deleted file mode 100644 index bede70aa0..000000000 --- a/modules/setup/library/Setup/Requirements.php +++ /dev/null @@ -1,197 +0,0 @@ -requirements[$name] = array_key_exists($name, $this->requirements) - ? $this->combine($this->requirements[$name], $requirement) - : $requirement; - return $this; - } - - /** - * Combine the two given requirements - * - * Returns the most important requirement with the description from the other one being added. - * - * @param object $oldRequirement - * @param object $newRequirement - * - * @return object - */ - protected function combine($oldRequirement, $newRequirement) - { - if ($newRequirement->state === static::STATE_MANDATORY && $oldRequirement->state === static::STATE_OPTIONAL) { - $tempRequirement = $oldRequirement; - $oldRequirement = $newRequirement; - $newRequirement = $tempRequirement; - } - - if (! is_array($oldRequirement->description)) { - $oldRequirement->description = array($oldRequirement->description); - } - - $oldRequirement->description[] = $newRequirement->description; - return $oldRequirement; - } - - /** - * Return all registered requirements - * - * @return array - */ - public function getAll() - { - return $this->requirements; - } - - /** - * Return an iterator of all registered requirements - * - * @return ArrayIterator - */ - public function getIterator() - { - return new ArrayIterator($this->getAll()); - } - - /** - * Register an optional requirement - * - * @param string $name - * @param string $title - * @param string $description - * @param bool $state - * @param string $message - * - * @return self - */ - public function addOptional($name, $title, $description, $state, $message) - { - $this->add( - $name, - (object) array( - 'title' => $title, - 'message' => $message, - 'description' => $description, - 'state' => (bool) $state ? static::STATE_OK : static::STATE_OPTIONAL - ) - ); - return $this; - } - - /** - * Register a mandatory requirement - * - * @param string $name - * @param string $title - * @param string $description - * @param bool $state - * @param string $message - * - * @return self - */ - public function addMandatory($name, $title, $description, $state, $message) - { - $this->add( - $name, - (object) array( - 'title' => $title, - 'message' => $message, - 'description' => $description, - 'state' => (bool) $state ? static::STATE_OK : static::STATE_MANDATORY - ) - ); - return $this; - } - - /** - * Register the given requirements - * - * @param Requirements $requirements The requirements to register - * - * @return self - */ - public function merge(Requirements $requirements) - { - foreach ($requirements->getAll() as $name => $requirement) { - $this->add($name, $requirement); - } - - return $this; - } - - /** - * Make all registered requirements being optional - * - * @return self - */ - public function allOptional() - { - foreach ($this->getAll() as $requirement) { - if ($requirement->state === static::STATE_MANDATORY) { - $requirement->state = static::STATE_OPTIONAL; - } - } - - return $this; - } - - /** - * Return whether all mandatory requirements are fulfilled - * - * @return bool - */ - public function fulfilled() - { - foreach ($this->getAll() as $requirement) { - if ($requirement->state === static::STATE_MANDATORY) { - return false; - } - } - - return true; - } -} diff --git a/modules/setup/library/Setup/RequirementsRenderer.php b/modules/setup/library/Setup/RequirementsRenderer.php new file mode 100644 index 000000000..b768a1e86 --- /dev/null +++ b/modules/setup/library/Setup/RequirementsRenderer.php @@ -0,0 +1,83 @@ +tags[] = ''; + $this->tags[] = ''; + } + + public function endIteration() + { + $this->tags[] = ''; + $this->tags[] = '
    '; + } + + public function beginChildren() + { + $this->tags[] = '

    '; + $this->beginIteration(); + } + + public function endChildren() + { + $this->endIteration(); + $this->tags[] = '

    ' . $requirement->getTitle() . '

    '; + $descriptions = $requirement->getDescriptions(); + if (count($descriptions) > 1) { + $this->tags[] = '
      '; + foreach ($descriptions as $d) { + $this->tags[] = '
    • ' . $d . '
    • '; + } + $this->tags[] = '
    '; + } elseif (! empty($descriptions)) { + $this->tags[] = $descriptions[0]; + } + $this->tags[] = '
    ' . $requirement->getStateText() . '
    ' . t('User Object Class') . '' . mt('setup', 'User Object Class') . '' . $this->data['backendConfig']['user_class'] . '
    ' . t('User Name Attribute') . '' . mt('setup', 'Custom Filter') . '' . trim($this->data['backendConfig']['filter']) ?: t('None', 'auth.ldap.filter') . '
    ' . mt('setup', 'User Name Attribute') . '' . $this->data['backendConfig']['user_name_attribute'] . '