From e25547198451c05500835acdf87d7eb6b79d3bd9 Mon Sep 17 00:00:00 2001 From: Thomas Gelf Date: Mon, 27 May 2019 13:24:33 +0200 Subject: [PATCH] IcingaObjectFieldForm: propose command arguments ...for Host and Service Templates --- application/forms/IcingaObjectFieldForm.php | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/application/forms/IcingaObjectFieldForm.php b/application/forms/IcingaObjectFieldForm.php index 5024ce0d..537c95e4 100644 --- a/application/forms/IcingaObjectFieldForm.php +++ b/application/forms/IcingaObjectFieldForm.php @@ -2,6 +2,7 @@ namespace Icinga\Module\Director\Forms; +use Icinga\Module\Director\Objects\IcingaCommand; use Icinga\Module\Director\Objects\IcingaHost; use Icinga\Module\Director\Objects\IcingaObject; use Icinga\Module\Director\Objects\DirectorDatafield; @@ -51,9 +52,16 @@ class IcingaObjectFieldForm extends DirectorObjectForm // TODO: do not suggest chosen ones $argumentVars = array(); $argumentVarDescriptions = array(); + if ($object instanceof IcingaCommand) { + $command = $object; + } elseif ($object->hasProperty('check_command_id')) { + $command = $object->getResolvedRelated('check_command'); + } else { + $command = null; + } - if ($object->supportsArguments()) { - foreach ($object->arguments() as $arg) { + if ($command) { + foreach ($command->arguments() as $arg) { if ($arg->argument_format === 'string') { $val = $arg->argument_value; // TODO: create var::extractMacros or so