Thomas Gelf
8ade496fdc
DataFilter: refactor the whole class(es)
2016-10-22 07:02:09 +00:00
Thomas Gelf
037c588d26
FormDataFilter: change icon for expression
2016-10-22 07:02:09 +00:00
Thomas Gelf
9349ba0f2a
FormDataFilter: new implementation for assignments
...
First prototype
2016-10-22 07:02:09 +00:00
Thomas Gelf
9ba6116091
IcingaService: support and test speciall object...
...
...name variants with apply for
2016-10-22 06:54:53 +00:00
Thomas Gelf
1f660b514a
IcingaServiceForm: allow empty name for apply rule
2016-10-22 06:09:10 +00:00
Thomas Gelf
7c31b37f27
IcingaServiceForm: remove duplicate code
...
Elements in this list are optional and may be used in various forms,
so keeping this in the base class is preferrable here
2016-10-22 06:09:00 +00:00
Thomas Gelf
5b4e7509f4
Just a couple of phpcs complaints fixed
2016-10-22 06:08:52 +00:00
Thomas Gelf
0791b900f3
QuickBaseForm: allow translation tools find 'None'
2016-10-22 06:08:44 +00:00
Corentin Ardeois
3e30d34098
Use `config` variable in apply for rules
...
* use `config` instead of `value` in apply for rules
* update documentation
refs #11976
2016-10-22 06:07:57 +00:00
Corentin Ardeois
e7bd4343b5
Add support for Apply for rules in services
...
Apply for rules are defined through `apply_for` property
Only Array custom variables will be eligible in apply_for dropdown.
API Example:
```bash
./director-curl POST director/service?name=my_service '{"apply_for": "for (checked_tcp_port in host.vars.checked_tcp_ports)" }'
```
Will render as:
```
apply Service "my_service" for (checked_tcp_port in host.vars.checked_tcp_ports) {
...
}
```
Feature: https://dev.icinga.org/issues/11976
Depends-On: https://github.com/Icinga/icingaweb2-module-director/pull/20
refs #11976
2016-10-22 06:00:54 +00:00
Thomas Gelf
b7eaab715b
Make explicit calls to renderStringWithVariables
2016-10-22 05:48:09 +00:00
Corentin Ardeois
37c91050c7
Expressions syntax is now $var$
...
Instead of $$var$$.
We make sure $$var$$ is left untouched.
refs #11976
2016-10-22 00:15:09 +00:00
Corentin Ardeois
ddcfb09f58
Handle expressions only for apply objects
...
Expressions will be handled only if the object is an ApplyRule.
Only properties and custom variables are replaced.
refs #11976
2016-10-22 00:15:09 +00:00
Corentin Ardeois
bcef87f4c9
Add support for expressions
...
Any rendered string can contain variables encapsulated with "$$" characters.
Example:
Display Name declared with `Port $$host.vars.tcp_port$$ check` will
be processed as `"Port " + host.vars.tcp_port + " check"`
API:
```bash
./director-curl POST director/service?name=my_service '{"display_name": "Port $$host.vars.tcp_port$$ check" }'
```
Rendered config:
```
apply Service "my_service" {
import "my_template"
display_name = "Port " + host.vars.tcp_port + " check"
}
```
refs #11976
2016-10-22 00:15:09 +00:00
Thomas Gelf
a9b3b2f47a
IcingaObjectImports: fix compatibility issue
...
fixes #12951
2016-10-20 19:17:52 +00:00
Thomas Gelf
b62b602f7d
DirectorObjectForm: move imports below name
2016-10-20 02:22:34 +00:00
Thomas Gelf
fc2890d865
IcingaObject: new helper method for single...
...
...resolved custom vars
2016-10-20 01:37:23 +00:00
Thomas Gelf
76936c7efb
IcingaTemplateResolver: fix resolver for unstored...
...
...objects
refs #12938
2016-10-20 01:32:52 +00:00
Thomas Gelf
d5234f723d
HostController: no loop check for 'fake' services
...
Inherited services do not exist in the db. As many services would
carry their template's name, the fallback to a name-based loop check
would trigger an erraneous error. So we trigger no preliminary loop
check for those now.
fixes #12938
2016-10-20 01:09:34 +00:00
Thomas Gelf
8c2d5ec7f9
Data: flip field/list order, as fields are...
...
...more important
2016-10-17 17:24:27 +00:00
Thomas Gelf
edbda2c592
IcingaObjectFieldLoader: silently ignore setValues
...
...when called for an object without custom var support
2016-10-17 16:57:25 +00:00
Thomas Gelf
46a5b3cb2f
CubeLinks: hook into the cube module
2016-10-14 21:14:04 +00:00
Thomas Gelf
b40f4a7ab7
QuickTable: fix 'return value in write contex'...
...
...for older PHP versions
2016-10-14 19:35:52 +00:00
Thomas Gelf
23ef9a707c
MultiEdit: make it independent of an object type
2016-10-14 18:32:34 +00:00
Thomas Gelf
6a54e00402
MultiEdit: code cleanup, add custom var support
...
fixes #12465
fixes #12906
fixes #11614
2016-10-14 17:17:07 +00:00
Thomas Gelf
69237b8ae9
MultiEditForm: first shot, provides imports
...
refs #12465
2016-10-14 13:46:06 +00:00
Thomas Gelf
732ebae339
ActionController: provide a singleTab helper
2016-10-14 13:46:06 +00:00
Thomas Gelf
41c4448685
QuickTable: provide multiselect feature
...
refs #11614
2016-10-14 13:46:06 +00:00
Thomas Gelf
6f46e6b496
YesNo: new boolean-like form fields
...
fixes #12927
2016-10-14 13:39:43 +00:00
Thomas Gelf
98708e6496
Forms: better error handling
...
fixes #12926
2016-10-14 13:35:30 +00:00
Thomas Gelf
2df7144240
TemplateResolver: no more false alarms...
...
...when multiple paths lead to the same template
refs #11803
2016-10-14 11:26:41 +00:00
Thomas Gelf
558ea82203
IcingaRelatedObject: fix syntax, add comment...
...
...stating that this is unfinished
2016-10-14 10:40:29 +00:00
Thomas Gelf
cfbf40147c
IcingaObjectImports: simplify code
2016-10-14 10:33:46 +00:00
Thomas Gelf
041fd52174
FieldLoader, TemplateResolver: more cleanup
...
A few fixes related to modified imports for unstored objects
refs #12922
2016-10-14 09:59:08 +00:00
Thomas Gelf
98acba9fb4
IcingaTemplateResolver: more tweaking
...
refs #12922
2016-10-14 09:40:01 +00:00
Thomas Gelf
61f3ffff7e
TemplateResolver: deal with unstored modified...
...
...imports property
fixes #12922
2016-10-14 09:12:05 +00:00
Thomas Gelf
e04acbc55f
IcingaObjectFieldLoader: do not fail on emtpy...
...
...parents
2016-10-14 08:33:58 +00:00
Thomas Gelf
913c2687b6
IcingaObjectFieldLoader: first implementation
...
Should already replace all former functionality
refs #12904
2016-10-13 21:25:03 +00:00
Thomas Gelf
0d930efb46
IcingaObject: add new resolving helper methods
...
This for example allows to get a single inherited var and their origin
2016-10-13 21:25:03 +00:00
Markus Frosch
f527e31b14
Merge branch 'bugfix/endpoint-remove-import-12920'
...
fixes #12920
2016-10-13 16:54:34 +02:00
Markus Frosch
cc61831258
DirectorObjectForm: Allow form to select if imports are required
...
refs #12920
2016-10-13 16:37:49 +02:00
Thomas Gelf
cf4dccc817
Notification: add fields support
...
fixes #12642
2016-10-13 14:34:25 +00:00
Thomas Gelf
71b3459540
DirectorDatafieldForm: allow to wipe all related...
...
...custom variables when removing a field
fixes #12916
2016-10-13 14:02:51 +00:00
Thomas Gelf
0e45429196
ObjectForm: do not allow to choose type...
...
...when one is already given
2016-10-13 11:55:53 +00:00
Thomas Gelf
c1afda4392
IcingaObject: do not fail when rendering objects...
...
...without imports support
fixes #12618
2016-10-13 11:11:35 +00:00
Thomas Gelf
e99568fffc
DirectorObjectForm: add unique error message...
...
...without adding an error in case we detect a loop. Also improve
resolve cache invalidation and clean up old imports-related code
refs #11803
2016-10-12 15:23:54 +00:00
Thomas Gelf
05f991c585
IcingaObject: no loop detection on unstored...
...
...objects
refs #11803
2016-10-12 14:26:44 +00:00
Thomas Gelf
7993724dcb
IcingaTemplateResolver: detect and throw nesting..
...
...errors
fixes #11803
2016-10-12 14:16:19 +00:00
Thomas Gelf
0a26b94e7c
IcingaObjectMultiRelations: fix service relations
...
...for sets
2016-10-12 09:11:05 +00:00
Thomas Gelf
34ed3da3b8
IcingaObject: remove duplicated short name logic
2016-10-12 09:09:28 +00:00