Commit Graph

2240 Commits

Author SHA1 Message Date
Thomas Gelf 27e38b566d ObjectsController: allow child classes to...
...fiddle with our table
2017-07-20 22:29:23 +02:00
Thomas Gelf 44458d2eec CommandArguments: refactor table, controller 2017-07-20 22:29:00 +02:00
Thomas Gelf 3062cf2ebd AgentWizard: use new installer syntax 2017-07-20 18:33:49 +02:00
Thomas Gelf 5e9effc697 CheckCommandsDashlet: text for all command types 2017-07-20 17:22:45 +02:00
Thomas Gelf d16bc24b1c Commands: show external commands separately 2017-07-20 17:19:51 +02:00
Thomas Gelf 408e3753ab AgentWizard: add new functionality 2017-07-20 16:58:48 +02:00
Thomas Gelf 8a60e9f041 Data: case 2017-07-20 15:10:12 +02:00
Thomas Gelf 014963f96c Tables: get rid of assemble workaround 2017-07-20 14:58:23 +02:00
Thomas Gelf 4cd3c02a90 TemplatesTable: translate header 2017-07-20 12:48:01 +02:00
Thomas Gelf 27d1297303 InfraTabs: add missing tab class 2017-07-20 11:06:58 +02:00
Thomas Gelf 31d65fadc2 Deployment: add Info class, refactor LogRenderer
No more view script, based on ipl
2017-07-20 11:06:20 +02:00
Thomas Gelf cda6970594 ipl: Components are now Widgets 2017-07-20 10:19:32 +02:00
Thomas Gelf 68324d9b52 Controllers: formatting 2017-07-20 09:53:31 +02:00
Thomas Gelf 1ba276cf15 DeploymentLinkForm: introduce new form 2017-07-20 09:24:42 +02:00
Thomas Gelf 5d01c1d843 ObjectController: use new DeploymentForm, tables 2017-07-20 08:31:53 +02:00
Thomas Gelf 1df9ef13d9 ObjectsTable: show 100 lines instead of 25 2017-07-20 08:28:38 +02:00
Thomas Gelf 5e98ea7b9b TemplatesTable: clean up links 2017-07-20 08:25:30 +02:00
Thomas Gelf cca4092151 Deployment: move logic to dedicated classes
Extended DirectorDeploymentLog, new DeploymentInfo class
2017-07-20 08:22:31 +02:00
Thomas Gelf db31f337f1 Table: override inherited assemble method
This is an ugly workaround for now, need to find a better solution
2017-07-19 19:07:42 +02:00
Thomas Gelf 37b3a8da82 Activity/DeploymentLogTable: completely refactored 2017-07-19 18:45:12 +02:00
Thomas Gelf 44f1ddc891 Dashboards: allow to ship tabs, use them to...
...improve usability
2017-07-19 18:37:19 +02:00
Thomas Gelf e6a9b1197d QuickForm: allow options for submit button helpers 2017-07-19 18:29:16 +02:00
Thomas Gelf 29d93512e6 Objects/Icinga(Host|Service): fix typo 2017-07-18 13:36:05 +02:00
Thomas Gelf dc110e87ed Notifications: add usage overview and table 2017-07-14 15:21:08 +02:00
Thomas Gelf 9f96b1d31b IcingaObjectFilterHelper: do not fail with no...
...involved parents (indirect inheritance with no child template)
2017-07-14 15:19:05 +02:00
Thomas Gelf ea02d0b23c ImportRowModifier: add missing property 2017-07-14 14:56:22 +02:00
Thomas Gelf 2cdba2aa65 Import and Sync: add description fields
fixes #1018
2017-07-14 14:27:05 +02:00
Thomas Gelf 3d666d1157 DatafieldTable: fix search columns 2017-07-14 13:45:31 +02:00
Thomas Gelf b89c337d3b CustomvarTable: do not break 2017-07-14 13:43:28 +02:00
Thomas Gelf d8a18f8638 DataDashboard: add missing link
refs #1016
2017-07-14 13:21:42 +02:00
Thomas Gelf e200221529 data/vars: add a new table
Also cleaned up some obsolete code

fixes #1016
2017-07-14 13:21:42 +02:00
Thomas Gelf acddf07849 DataTabs: remove them from the controller 2017-07-14 13:21:42 +02:00
Thomas Gelf 953baf5b95 DataFilter: code cleanup 2017-07-14 13:21:42 +02:00
Thomas Gelf 95e7b2bf0a ObjectController: permissions are plural 2017-07-14 13:21:42 +02:00
Thomas Gelf fe822c3e31 ObjectsController: it's apply, not apply_rule 2017-07-14 13:21:42 +02:00
Thomas Gelf e0667a1d9b ApplyRulesTable: fix restriction name 2017-07-14 13:21:42 +02:00
Thomas Gelf ee582b7106 ObjectsController: fix 'add' link for apply rules 2017-07-14 13:21:42 +02:00
Thomas Gelf 5457a0865f ObjectTabs: relax notification apply permissions
refs #1015
2017-07-14 13:21:42 +02:00
Thomas Gelf 1c4d6598c0 Notifications: allow access to apply rules with...
...director/notifications permission

fixes #1015
2017-07-14 13:21:42 +02:00
Thomas Gelf 6874a5f90c Dashboards: restructured
fixes #1014
2017-07-14 13:21:42 +02:00
Thomas Gelf 05d8e5bb00 Datalist: Allow to restrict entries by role
fixes #1012
2017-07-14 13:21:42 +02:00
Thomas Gelf 45832f94e5 DataTypeDirectorObject: provide Service Sets
fixes #1010
2017-07-14 13:21:42 +02:00
Thomas Gelf 8f8f9a508e QuickForm: split method, new helpers for buttons 2017-07-14 13:21:42 +02:00
Thomas Gelf a1469f46be DataTypeDirectorObject: no optional enum for multi
...selections / extensible sets

fixes #1011
2017-07-14 13:21:42 +02:00
Thomas Gelf b9fd1f42d9 DirectorObjectForm: fallback, static auth 2017-07-14 13:21:42 +02:00
Thomas Gelf bf2b90fd6c Settings: fix global zone defaults and settings 2017-07-14 13:21:42 +02:00
Thomas Gelf fe249a18be Settings: use ipl, clean up, fix array handling 2017-07-14 13:21:42 +02:00
Thomas Gelf 2ca7f26b49 SelfService: fix booleans, add new options
refs #486
2017-07-14 13:21:42 +02:00
Peter Backes ad825f9c58 Sync: Allow syncing lists of template imports
fixes #946
2017-07-14 13:21:42 +02:00
Thomas Gelf a23e77ef90 ApplyRulesTable: gray out disabled rows like in...
...objects tables
2017-07-14 13:21:42 +02:00
Bernd Arnold 7e2b8ce97b Object: fix typos
throught -> through

Since every sentence ends with a dot here, I've also added a dot for the last
sentence.

fixes #990
2017-07-14 13:21:42 +02:00
Peter Backes bec8ef1ac2 DbObject: Don't confuse ids and object_names
fixes #992
2017-07-14 13:21:42 +02:00
Thomas Gelf 4a0e8df2f2 Host,Service: add check_timeout property
fixes #546
2017-07-14 13:21:42 +02:00
Thomas Gelf aca6d812f1 Notifications: make tabs fit dashlets, no objects 2017-07-14 13:21:42 +02:00
Thomas Gelf 3eb3d82f44 Apply/TemplatesTable: allow to restrict by name
refs #898
2017-07-14 13:21:42 +02:00
Thomas Gelf e4d35d74e3 Migrations: fail on PHP 5.3.x
fixes #1006
2017-07-14 13:21:42 +02:00
Thomas Gelf b11c6b9f34 Boolean: hardcode isValid for true/false
Not perfect, but should do the job unless we move to better forms

fixes #690
2017-07-14 13:21:42 +02:00
Thomas Gelf 8216daa3af Core: give empty list on 404, remove obsolete...
...view scripts
2017-07-14 13:21:42 +02:00
Thomas Gelf e27bb05fb1 Inspect: completely refactored
* new tree renderer
* more tables with details
* styling
* allow to show status

fixes #1003
fixes #1005
2017-07-14 13:21:42 +02:00
Thomas Gelf be18c37968 TemplateTreeRenderer: use translation 2017-07-14 13:21:42 +02:00
Thomas Gelf 2e0e601cee QuickBaseForm: less code 2017-07-14 13:21:42 +02:00
Thomas Gelf 15e87a15bb CustomVariables: fix and test numeric key rendering
fixes #996
2017-07-14 13:21:42 +02:00
Thomas Gelf 46d24e7600 GroupMemberTable, SelfServiceController: cs 2017-07-14 13:21:42 +02:00
Thomas Gelf 0c7e3eee41 Data: controller, table, form - ipl adjustments 2017-07-14 13:21:42 +02:00
Thomas Gelf 180fc2ccfa Datafield: on rename ask whether to also rename vars
fixes #818
2017-07-14 13:21:42 +02:00
Thomas Gelf 1e531bef1b Group members: hosts only for now 2017-07-14 13:21:42 +02:00
Thomas Gelf 2691081349 HosttemplateController: introduce usage view
fixes #884
2017-07-14 13:21:42 +02:00
Thomas Gelf 58accea801 GroupMemberTable: show group members
fixes #994
2017-07-14 13:21:42 +02:00
Thomas Gelf 47ee34d1c3 Util: cosmetics 2017-07-14 13:21:42 +02:00
Thomas Gelf 29abb6c6e7 ObjectController: fix issue with Apply tabs 2017-07-14 13:21:42 +02:00
Thomas Gelf 27a51ac34c SelfService: implement powershell-parameters
fixes #486
2017-07-14 13:21:42 +02:00
Thomas Gelf 8a8540bc3e IcingaHost: generate API keys 2017-07-14 13:21:42 +02:00
Thomas Gelf 4fe2b0e541 SelfService: controller, form, admin dashlet
refs #486
2017-07-14 13:21:42 +02:00
Thomas Gelf 475c84de1e RestApi: allow to override permission check 2017-07-14 13:21:42 +02:00
Thomas Gelf e562d00a50 QuickForm: improve REST API support
refs #486
2017-07-14 13:21:42 +02:00
Thomas Gelf 086e081268 SelfServiceSettings: settings for the new Self...
...Service API feature

refs #486
2017-07-14 13:21:42 +02:00
Thomas Gelf 15942f93f7 DirectorForm: new base class, should get logic...
...useful to all Director forms, even for those not dealing with a DbObject
2017-07-14 13:21:42 +02:00
Thomas Gelf 120a7532a1 ObjectController: fix history and fields 2017-07-14 13:21:42 +02:00
Thomas Gelf efe6cfbbaa QuickTable: every QuickTable is ValidHtml 2017-07-14 13:21:42 +02:00
Thomas Gelf 1a7a83e28b TemplatesTable: link hosts to "edit" as long as...
...usage is missing
2017-07-14 13:21:42 +02:00
Thomas Gelf 6aaae3c445 TimePeriods: do not enforce template 2017-07-14 13:21:42 +02:00
Thomas Gelf ed6a77af5d ExtensibleSet: allow to hide elements, for choices 2017-07-14 13:21:42 +02:00
Thomas Gelf ceebe08ecd TemplateChoice: work without form loader 2017-07-14 13:21:42 +02:00
Thomas Gelf 0ec5ec8197 TemplateChoice: delegate storing members to...
...the object, use a single form
2017-07-14 13:21:42 +02:00
Thomas Gelf 456c8557a4 ObjectsTableHost: remove obsolete comment 2017-07-14 13:21:42 +02:00
Thomas Gelf 126dd29ecc IcingaObject: work around a resolver issue 2017-07-14 13:21:42 +02:00
Thomas Gelf 6aab867682 GroupMembershipResolver: ignore unstored objects
Currently affects tests only
2017-07-14 13:21:42 +02:00
Thomas Gelf 67d802d39a Host,Service: hide choice property 2017-07-14 13:21:42 +02:00
Thomas Gelf f2abd3541e ObjectController: phpcs, formattinObjectController: phpcs, formattingg 2017-07-14 13:21:42 +02:00
Thomas Gelf f8ffc13642 Tables: use 'disabled' property 2017-07-14 13:21:42 +02:00
Thomas Gelf cea78db5af ServiceSetTables: implement ValidHtml 2017-07-14 13:21:42 +02:00
Thomas Gelf 68ce145332 CommandsDashboard: temporarily disable distinct...
...dashlets
2017-07-14 13:21:42 +02:00
Thomas Gelf 0cf6676c3c Host/Service/ObjectController: use more ipl 2017-07-14 13:21:42 +02:00
Thomas Gelf 20310a0c9e Choices: add dedicated action bar, add to...
...ObjectTabs, refine choice(s)Controller
2017-07-14 13:21:42 +02:00
Thomas Gelf a9a2295c8a IcingaObject, Host/Service: add supportsChoices() 2017-07-14 13:21:42 +02:00
Thomas Gelf 6c943e4d06 ObjectsController: remove obsolete "global" types 2017-07-14 13:21:42 +02:00
Thomas Gelf f9271da888 ApplyRulesTable: remove action links for now...
...and allow to filter by inheritance
2017-07-14 13:21:42 +02:00
Thomas Gelf 652c805387 TemplatesTable: allow to filter by inheritance 2017-07-14 13:21:42 +02:00
Thomas Gelf 74dfbcaa67 ActionController: treat different viewRenderers 2017-07-14 13:21:42 +02:00
Thomas Gelf 8f1ae6fc94 RestApi: remove useless code
This is handled in the controller
2017-07-14 13:21:42 +02:00
Thomas Gelf 2f79920a18 TemplateChoice: small fixes, forms 2017-07-14 13:21:42 +02:00
Thomas Gelf 1739b950a8 ObjectController: hendly duplicate key errors
fixes #977
2017-07-14 13:21:42 +02:00
Thomas Gelf afcd928dfa ObjectsTableService: fix multiselect by using id
Not nice, but works
2017-07-14 13:21:42 +02:00
Thomas Gelf 0b89c222eb IcingaTemplateChoice: take over code generating...
...the choice form element
2017-07-14 13:21:42 +02:00
Thomas Gelf d7422fa55c DirectorObjectForm: adjust choice loading to fit
...new class names
2017-07-14 13:21:42 +02:00
Thomas Gelf 9845cddcb4 QureyBasedTable: move to ipl 2017-07-14 13:21:42 +02:00
Thomas Gelf f3a11213f7 cs fixes 2017-07-14 13:21:42 +02:00
Thomas Gelf edc887969e tables: remove obsolete code and files 2017-07-14 13:21:42 +02:00
Thomas Gelf 6597cd2027 ObjectController: adjust to fit new base controller 2017-07-14 13:21:42 +02:00
Thomas Gelf f7cbe4a3be IcingaHost: reference to choices 2017-07-14 13:21:42 +02:00
Thomas Gelf 68a22590a8 IcingaTemplateResolver: just a newline 2017-07-14 13:21:42 +02:00
Thomas Gelf 92982c37aa ObjectRestriction: work with Zf Select 2017-07-14 13:21:42 +02:00
Thomas Gelf a5854e6dd3 ServicesDashboard: re-order, add choices 2017-07-14 13:21:42 +02:00
Thomas Gelf 8f2ac7cc3a Dashboard: refactor based on ipl 2017-07-14 13:21:42 +02:00
Thomas Gelf 90e0d1a50b ObjectsController: refactored, use new tables 2017-07-14 13:21:42 +02:00
Thomas Gelf 2f8ec92722 DirectorObjectForm: implement choices 2017-07-14 13:21:42 +02:00
Thomas Gelf 60ab0b58a6 NewObjectsController: obsolete 2017-07-14 13:21:42 +02:00
Thomas Gelf 117eeee67e ActionController: use traits, less code 2017-07-14 13:21:42 +02:00
Thomas Gelf 708cd237d0 TemplatesTable: new generic base table 2017-07-14 13:21:42 +02:00
Thomas Gelf cc2cb11cf3 ObjectsTable: new generic table 2017-07-14 13:21:42 +02:00
Thomas Gelf 0815c881cc ObjectSetTable: new generic table for sets 2017-07-14 13:21:42 +02:00
Thomas Gelf 69ccc3be74 QueryBasedTable: add forgotten table base class 2017-07-14 13:21:42 +02:00
Thomas Gelf df1832aaa9 ChoicesTable: new generic implementation 2017-07-14 13:21:42 +02:00
Thomas Gelf 0cb1b328ec ChoicesDashlet: new dashlets, host, service 2017-07-14 13:21:42 +02:00
Thomas Gelf cef947e6fc IcingaTemplateChoice: new base object, host/service 2017-07-14 13:21:42 +02:00
Thomas Gelf 171e15e95a ObjectsTableService: new variant for legacy table 2017-07-14 13:21:42 +02:00
Thomas Gelf 61e8621716 IcingaObjectFilterHelper: external filter helpers 2017-07-14 13:21:42 +02:00
Thomas Gelf 28f0a2cb05 HostgroupRestriction: new class 2017-07-14 13:21:42 +02:00
Thomas Gelf 68821540d0 HostsDashlet: one more dashlet 2017-07-14 13:21:42 +02:00
Thomas Gelf 0b8d67a3ff ObjectRestrictions: new controller extension 2017-07-14 13:21:42 +02:00
Thomas Gelf 14eb6df712 ObjectTabs: a new set of tabs 2017-07-14 13:21:42 +02:00
Thomas Gelf 11b054d296 ObjectsTableHost: new table 2017-07-14 13:21:42 +02:00
Thomas Gelf 36eaff3d9c Dashlet: introduce new command dashlets, wip 2017-07-14 13:21:42 +02:00
Thomas Gelf 8f30956992 Dashlet: fix some links and permissions 2017-07-14 13:21:42 +02:00
Thomas Gelf f7f2cd2eea CommandsDashboard: new dashboard, still unfinished 2017-07-14 13:21:42 +02:00
Thomas Gelf 1b1fcb32ed CommandObjectDashlet: fix translation, link 2017-07-14 13:21:42 +02:00
Thomas Gelf 3437691ce2 HostGroupsDashlet: just a new dashlet 2017-07-14 13:21:42 +02:00
Thomas Gelf a74785755c DirectorBaseActionBar: attempt to provide some...
...helpers needed in multiple ActionBars
2017-07-14 13:21:42 +02:00
Thomas Gelf 96495722f9 ActionBar: add Objects and Template implementation 2017-07-14 13:21:42 +02:00
Thomas Gelf 0ae96fbaad HostTemplatesDashlet: just a new dashlet 2017-07-14 13:21:42 +02:00
Thomas Gelf 6f3c76c4f2 IconHelper: add new icons 2017-07-14 13:21:42 +02:00
Thomas Gelf 04e22f5a23 ExtensibleSet: completely refactored based on ipl 2017-07-14 13:21:42 +02:00
Thomas Gelf 311629bbd1 Web\Table\Objects*: a couple of new tables 2017-07-14 13:21:42 +02:00
Thomas Gelf 70c0f2f21c ServiceSetsDashlet: fix url 2017-07-14 13:21:42 +02:00
Thomas Gelf 43eda94918 TemplateUsageTable: new generic implementation 2017-07-14 13:21:42 +02:00
Thomas Gelf c4bf4cb57d ApplyRulesTable: new generic implementation 2017-07-14 13:21:42 +02:00
Thomas Gelf 9384d6cd43 ServiceApplyRulesTable: we are a QueryBasedTable 2017-07-14 13:21:42 +02:00
Thomas Gelf 4590fa1d73 QuickForm: guess what? We are ValidHtml! 2017-07-14 13:21:42 +02:00
Thomas Gelf b5ce24fa42 TemplateTreeRenderer: introduce a new tree 2017-07-14 13:21:42 +02:00
Thomas Gelf 9c45485b5b Dashlet: base code on ipl\BaseElement 2017-07-14 13:21:42 +02:00
Thomas Gelf 04bbe90adf Dashlet: we are not escaped 2017-07-14 13:21:42 +02:00
Thomas Gelf ac1574c94a RestApi: move also the RestApi to a trait 2017-07-14 13:21:42 +02:00
Thomas Gelf dc6ec2a41d CoreApi: one more trait, for CoreApi functionality 2017-07-14 13:21:42 +02:00
Thomas Gelf e88c13663f DirectorDb: new controller extension 2017-07-14 13:21:42 +02:00
Thomas Gelf 7502706284 QuickSearch: add a trait for tables too 2017-07-14 13:21:42 +02:00
Thomas Gelf 9d3b1d1096 ServiceTemplateUsageTable: new implementation 2017-07-14 13:21:42 +02:00
Thomas Gelf bf5b7dbf32 QuickSearch: implement it as a trait 2017-07-14 13:21:42 +02:00
Thomas Gelf e0589d3560 DbObject: allow to instantiate from Db row...
...even from outside. This breaks some legacy principles, but this class is
going to be separated into multiple components anyways. Also allow to directly
get a specific property
2017-07-14 13:21:42 +02:00
Thomas Gelf fd99b6924e SingleObjectApiHandler: attempt to move REST API
...and it's related logic away from controllers
2017-07-14 13:21:42 +02:00
Thomas Gelf 8fd60b87c0 SimpleController: remove functionality...
...as it is implemented elsewhere
2017-07-14 13:21:42 +02:00
Thomas Gelf 4f2a53dc90 MultiSelect: add table extension trait 2017-07-14 13:21:42 +02:00
Thomas Gelf d84a3c68e0 QuickForm: no role and tabindex for fake submit 2017-07-14 13:21:42 +02:00
Thomas Gelf 84b56da899 TemplateTree: independent new implementation 2017-07-14 13:21:42 +02:00
Thomas Gelf 4f3f4e7f52 IcingaTemplateResolver: implement a reverse index 2017-07-14 13:21:42 +02:00
Thomas Gelf 51e8af2266 BaseTestCase: be precise on type hint 2017-07-14 13:21:42 +02:00
Thomas Gelf 2038ab28d7 HostsDashboard: introduce a new dashboard 2017-07-14 13:21:42 +02:00
Thomas Gelf ac815b14b6 GroupMembershipResolver: fix SQL table alias 2017-07-14 13:21:42 +02:00
Thomas Gelf 18c0ce3c4f IcingaObject: allow to prefetch related object...
...types
2017-07-14 13:21:42 +02:00
Thomas Gelf 875627ead7 ObjectApplyMatches: refactor host-only code
refs #897
2017-07-14 13:21:42 +02:00
Thomas Gelf 526492580c GroupMembershipResolver: refactor from HostGroup
This is now a more generic implementation and can serve multiple object types

refs #897
2017-07-14 13:21:42 +02:00
Thomas Gelf aa3a8987ba HostGroupMembershipResolver: handle single groups
Formerly this worked only with apply rules, now this also respects single host/
group assignments.

fixes #832
2017-07-14 13:21:42 +02:00
Thomas Gelf 0e759fb2f6 Sync: do not fail on non-IcingaObject, fix typo
refs #832
2017-07-14 13:21:42 +02:00
Thomas Gelf b558cc405b BetaHostgroupRestriction: fix permissions, use...
...new resolved table

refs #832
2017-07-14 13:21:42 +02:00
Thomas Gelf 5ae7997f9d Sync: tune membership resolver
Also fixes error on host creation

refs #832
2017-07-14 13:21:42 +02:00
Thomas Gelf 3cb38596c0 Dashboard: remove newline for phpcs 2017-07-14 13:21:42 +02:00
Thomas Gelf 45c93b3445 HostGroupMembershipResolver: first implementation
refs #832
2017-07-14 13:21:42 +02:00
Thomas Gelf 56af88ee3f BetaHostgroupRestriction: fix single-host query 2017-07-14 13:21:42 +02:00
Thomas Gelf 02a3652c86 Restrictriction: add simple hostgroup restrictions
refs #832
2017-07-14 13:21:42 +02:00
Thomas Gelf cde328eeed CoreApi: add checkServiceAndWaitForResult()
Will be moved to icingadb soon, committing this to clean up my stash
2017-07-14 13:21:42 +02:00
Thomas Gelf cb1804111f Controllers: whitespace fixes 2017-07-14 13:21:42 +02:00
Thomas Gelf b753341e64 ServicesDashboard: add a bunch of new Dashlets...
...and related tables
2017-07-14 13:21:42 +02:00
Thomas Gelf 69406d631c ServicesOnHosts: add a new table 2017-07-14 13:21:42 +02:00
Thomas Gelf d877949e60 Services/ObjectsController: rough integration...
...for multiselect on services
2017-07-14 13:21:42 +02:00
Thomas Gelf 200d00d092 SimpleController: new base controller based on ipl 2017-07-14 13:21:42 +02:00
Thomas Gelf 47bfb2d31d IcingaObjectImports: add meaningful error...
...would have saved me some troubleshooting time
2017-07-14 13:21:42 +02:00
Markus Frosch fa61805df2 QuickTable: Fix enforced filters for non-FilterAnd filters
We need to use the result of andFilter() as the new Filter.

The filter gets replaced by FilterAnd($oldFilter, $enforcedFilter) here.
2017-06-02 14:59:26 +02:00
Thomas Gelf 2237272b6b SyncRule: do not allow to sync unless some...
...properties have been defined.

fixes #383
2017-05-03 11:24:22 +02:00
Thomas Gelf f91dd5fa0e PropertyModifierCombine: implementation, tests...
...and related changes with some documentation

fixes #922
2017-05-03 10:39:49 +02:00
Thomas Gelf 220d15c523 IcingaObjectFieldLoader: return early...
...and save CPU-cycles
2017-04-27 15:45:17 +02:00
Thomas Gelf 6de258730b Sync: fix issues with PHP 5.3
Problem has been introduced with f885d90

fixes #906
2017-04-26 15:31:24 +02:00
Thomas Gelf a63135be2a ExtensibleSet: check for empty array
refs #906
2017-04-21 15:11:18 +02:00
Thomas Gelf 1887780363 PropertyModifierHook: add setSetting() method
This is required for our tests

refs #908
2017-04-20 12:49:30 +02:00
Thomas Gelf c284dfef88 PropertyModifierArrayFilter: new modifier
fixes #908
2017-04-20 12:33:54 +02:00
Thomas Gelf 6234648a1f IcingaEndpoint: work on Zone, not on the id
fixes #878
2017-03-29 12:52:54 +02:00
Thomas Gelf 58ba7f9f86 IcingaEndpoint: deploy to where it's Zone is...
...to be found

refs #463
2017-03-29 11:41:13 +02:00
Thomas Gelf 3714d2567b IcingaEndpoint: fix indentation 2017-03-28 20:56:10 +02:00
Thomas Gelf 9f2070dced IcingaEndpoint: provide getRestApiClient() helper
fixes #877
2017-03-28 18:08:27 +02:00
Thomas Gelf f885d90a0a Sync: also fetch columns used in filters only
Filters might otherwise in some circumstances not work as expected

fixes #876
2017-03-28 18:03:53 +02:00
Thomas Gelf e1760724b8 AssignRenderer: hardcode int for specific filters
fixes #850
2017-03-15 15:00:38 +01:00
Thomas Gelf afce89dc98 DirectorActivityLog: log username and ip
Logged values are now JSON-encoded

fixes #849
2017-03-15 12:02:08 +01:00
Thomas Gelf da41e2f4db AssignRenderer: improve/separate in-related code
fixes #844
2017-03-13 22:25:04 +01:00
Thomas Gelf 8b98113e83 CoreApi: just comments 2017-03-13 22:08:43 +01:00
Thomas Gelf 242bff4011 KickstartHelper: handle renamed master
* fix zone cleanup
* delete obsolete endpoints
* re-structure code
* remove obsolete Db helper

fixes #842
2017-03-13 22:06:10 +01:00
Thomas Gelf cb9fff90ef IcingaObject: add new static helper, expose...
...existing one

refs #842
2017-03-13 22:03:02 +01:00
Thomas Gelf 1b57171583 SyncUtils: allow special varnames, add tests
fixes #839
2017-03-09 10:57:37 +01:00
Thomas Gelf 4963b5fe54 SyncUtils: fix PHP 5.3 compatibility 2017-03-09 10:56:14 +01:00
Thomas Gelf 20ee7f6728 PropertyModifierLConfCustomVar: add array support 2017-03-09 08:54:39 +01:00
Thomas Gelf ff4e953a11 PropertyModifierLConfCustomVar: trim left side 2017-03-09 08:52:19 +01:00
Thomas Gelf a7ff250ecd PropertyModifierLConfCustomVar: new modifier
fixes #837
2017-03-09 08:49:31 +01:00
Thomas Gelf a48e0c6dda AssignRenderer: test and fix contains rendering
fixes #803
2017-03-06 11:10:24 +01:00
Thomas Gelf bff76dad8e HostApplyMatches: fix matching for "contains"
fixes  #803
2017-03-03 09:41:25 +01:00
Thomas Gelf 5842e40fb6 AssignRenderer: do not re-use json-encoded value
...as encoding in Icinga 2 differs

fixes #558
2017-03-03 09:24:15 +01:00
Tobias von der Krone fd53224a58 Return data list name
Return the data list name instead of the id for the function
getDatalistName().

refs #621
2017-02-17 23:32:15 +01:00
Thomas Gelf 82e79c810f IcingaServiceSetForm: redirect to host services...
...when adding a set to a single host

fixes #804
2017-02-17 16:35:13 +01:00
Thomas Gelf 099eca0d0b IcingaCommandForm: allow to configure zones
fixes #802
2017-02-17 16:08:57 +01:00
Thomas Gelf 4860082d4b host/services: show applied service sets
fixes #735
2017-02-17 08:44:08 +01:00
Thomas Gelf 25395656ce CustomVariable: fix rendering for keys starting...
...with numbers

fixes #792
2017-02-15 12:50:27 +01:00
Thomas Gelf 2bc477daaa Migration: do not require a Director\Db 2017-02-14 09:13:42 +01:00
Thomas Gelf dc1d572229 HostController: override REST API handling
fixes #759
2017-02-08 12:38:14 +01:00
Thomas Gelf bfde75a0a2 IcingaServiceSet: import DirectorOverrideTemplate
...when rendering services belonging to a set for a single host

fixes #776
2017-02-08 10:04:47 +01:00
Thomas Gelf a3249350c2 CoreApi: remove space for compliance 2017-02-02 12:34:00 +01:00
Thomas Gelf aa0c04d5e7 CoreApi: add a couple of helper methods 2017-01-31 10:03:58 +01:00
Thomas Gelf 6396fbc1ee Migrations: table name should depend on module
refs #746
2017-01-24 16:41:43 +01:00
Thomas Gelf 0e2a056f49 Migrations: make it ready for use by other modules
fixes #746
2017-01-24 15:17:59 +01:00
Thomas Gelf e1b420d4c4 CoreApi: allow to stream raw events
fixes #744
2017-01-24 11:14:12 +01:00
Thomas Gelf d4b769b8d7 IcingaHost: do not render Endpoint and Zone...
...for disabled hosts

fixes #741
2017-01-24 09:45:32 +01:00
Thomas Gelf 5c158e708e RestApiClient: re-add lost method 2017-01-19 22:49:51 +01:00
Thomas Gelf c75b4fc6b0 DirectorDatafield: phpcs -> SpacingBeforeClose 2017-01-19 13:58:07 +01:00
Thomas Gelf b08be6ecc0 DirectorDatafield: do not fail on missing command
refs #712
refs #731
2017-01-19 13:55:59 +01:00
Thomas Gelf 164b5bd93d Fields: fix inheriting fields from commands
refs #712
refs #731
2017-01-19 13:50:50 +01:00
Thomas Gelf c7d90481a4 AgentWizard: endpoints should be an array
refs #651 - but doesn't fix the issue
2017-01-18 14:31:54 +01:00
Thomas Gelf 44866c5176 IcingaObjectFieldLoader: force values related...
...to filtered data fields to be removed. This also changes field order and
places fields without filter first
2017-01-18 11:20:59 +01:00
Thomas Gelf 3bbf06d6b7 DirectorObjectForm: simplify method call
FieldLoader already has the object
2017-01-18 11:04:23 +01:00
Thomas Gelf e4dbdbe808 Kickstart: unify strings 2017-01-16 17:30:22 +01:00
Thomas Gelf bc67f603f9 KickstartDashlet: extend description 2017-01-16 11:41:08 +01:00
Thomas Gelf d3e55ed5c9 Dashboards: add Infrastructure dashboard
fixes #14017
2017-01-16 08:50:18 +01:00
Thomas Gelf b7a10d296c phpcs: mostly new PSR-2 SpacingAfter/Before checks 2017-01-13 20:54:52 +01:00
Thomas Gelf 8cc99f76d0 tests: simplify bootstrap, enforce PSR-2 2017-01-13 20:10:35 +01:00
Thomas Gelf 2416007b24 ActionController: fix indentation 2017-01-13 19:59:11 +01:00
Thomas Gelf 9e771f2d5a Fix phpcs complaints 2017-01-13 19:47:54 +01:00
Thomas Gelf f6fca75eae Acl: code cleanup, more comments 2017-01-13 18:59:04 +01:00
Thomas Gelf 1b71df732e CubeLinks: cleanup, comments 2017-01-13 18:58:46 +01:00
Thomas Gelf 792e58abae DirectorDatafield: just newlines 2017-01-13 16:39:35 +01:00
Thomas Gelf f874a79bb4 IcingaObjectFieldLoader: no mandatory field on cmd
fixes #12644
2017-01-13 16:05:34 +01:00
Thomas Gelf 9b6eda4e97 IcingaObjectFieldLoader: cleanup, improve handling 2017-01-13 15:24:50 +01:00
Thomas Gelf 40ff51e487 IcingaTemplateResolver: separate concerns...
...and make helper accessible
2017-01-13 15:20:04 +01:00
Thomas Gelf 4a75804d86 various: change icinga.org to icinga.com
fixes #14001
2017-01-13 13:33:58 +01:00
Thomas Gelf 7a3a845570 Forms: try to give dev UI more hints on fluent...
...code
2017-01-13 13:15:01 +01:00
Thomas Gelf 9fc3957f11 QuickForm: fix broken submit button 2017-01-02 10:49:14 +01:00
Thomas Gelf 87f88bf0c7 DirectorObjectForm: allow to hook custom code...
...after fields have been added
2017-01-02 10:17:49 +01:00
Thomas Gelf 0a9ed6ff39 HostApplyMatches: allow usage for single hosts
refs #13849
2017-01-02 10:15:55 +01:00
Thomas Gelf c9929f7b17 QuickForm: postpone default submit button creation
This gives more possibilities to override them at a late stage
2017-01-02 10:14:30 +01:00
Thomas Gelf a395923aed QuickTable: provide more hooks for special tables 2016-12-30 21:10:29 +01:00
Thomas Gelf 441f94bb37 PropertyModifierRegexpSplit: adjust name 2016-12-30 12:22:39 +01:00
Markus Frosch 4c576f9edc PropertyModifierRegexSplit: Add regexp based split modifier
fixes #13841
2016-12-30 12:11:50 +01:00
Thomas Gelf fae2a57ed5 Import: fix some type hints and comments 2016-12-30 10:20:24 +01:00
Thomas Gelf a9874879dd TemplateResolver: add new methods for stricter...
...path resolution. Also ships related tests

refs #13839
2016-12-30 10:15:25 +01:00
Thomas Gelf efe6fd35ab IcingaObject: remove code loading fields...
...we now have a dedicated class for this
2016-12-28 12:44:51 +01:00
Thomas Gelf 6800d2cbd2 PropertyModifierJsonDecode: show substring on fail 2016-12-22 12:30:22 +01:00
Thomas Gelf 2ef36899e9 PropertyModifierJsonDecode: fail on error...
...and give some details

fixes #13733
2016-12-22 12:21:49 +01:00
Thomas Gelf 990e3fc04b DirectorObjectFrom: set every property we get
fixes #13659
fixes #13673
2016-12-19 14:32:52 +01:00
Thomas Gelf d4736f4a41 IcingaObject: better way to get resolved props? 2016-12-16 13:21:48 +01:00
Thomas Gelf 241404d9ba HostApplyMatches: do not skip defaults
May avoid errors when working with properties defined only on some of your
hosts
2016-12-16 13:19:02 +01:00
Thomas Gelf 8687ecaeeb Db: cosmetics 2016-12-16 12:23:47 +01:00
Thomas Gelf ec0cbac657 ObjectQuery, FilterRenderer: two new classes...
...required when working with the cache

refs #13068
2016-12-16 12:19:57 +01:00
Thomas Gelf 251eb4f9a5 ObjectController: add explicit NotFoundError...
...handling for REST API requests

fixes #13641
2016-12-16 12:07:01 +01:00
Thomas Gelf 2918ef555e schema: fix lost/diverged foreign keys
fixes #13591
2016-12-15 15:51:48 +01:00
Thomas Gelf 3d8ccf2448 DirectorObjectForm: skip empty related sets...
...provides as objects

fixes #13605
2016-12-15 11:44:52 +01:00
Thomas Gelf 65181ca67e ExtensibleSet: be strict on values...
...and provide a meaningful Exception in case something fails

refs #13605
2016-12-15 11:43:56 +01:00
Marc DeTrano 66ece6010d NewObjectsController: pass dummy object to...
...provideFilterEditorForTable()

fixes #13597
2016-12-14 23:59:57 +01:00
Thomas Gelf 15b031272e IcingaObjectFieldLoader: pass db to resolved...
...flat object

refs #13583
2016-12-14 22:44:56 +01:00
Thomas Gelf e85c13ae13 DirectorObjectForm: some more steps to simplify...
...this old monster

fixes #13583
2016-12-14 21:07:07 +01:00
Thomas Gelf a30f34a026 DirectorObjectForm: be careful when continuing...
...after an exception
2016-12-14 20:59:26 +01:00
Thomas Gelf cbb3c7aa88 DirectorObjectForm: remove unused parameter for...
...object() helper method
2016-12-14 20:48:59 +01:00
Thomas Gelf 145e1fc6a9 DirectorObjectForm: add has_agent to early props 2016-12-14 20:27:52 +01:00
Thomas Gelf 7e7e2601d3 ObjectFields: prefix filters, respect inheritance
refs #13253
2016-12-14 17:33:13 +01:00
Thomas Gelf 949d6c9b54 IcingaCommandField: one more implementation 2016-12-14 16:36:33 +01:00
Thomas Gelf 5847913987 Fields: add a possibility to show fields based...
...on filter rules
2016-12-14 16:36:33 +01:00
Thomas Gelf ec0ea2ee6d NotificationsController: use new base class...
...with less tabs, less and simpler code

fixes #13565
fixes #13157
2016-12-14 15:04:38 +01:00
Thomas Gelf 068735021b ActionController: fix REST API issue 2016-12-14 15:04:00 +01:00
Thomas Gelf 8841906aad Dashboard: provide apply summaries where available 2016-12-14 15:01:43 +01:00
Thomas Gelf abab92bdf2 Notifications: add some new dashlets
refs #13565
2016-12-14 15:01:07 +01:00
Thomas Gelf f614d75edc Dashlet: provide new summary text helpers 2016-12-14 14:53:29 +01:00
Thomas Gelf 34be3801ce Dashboard: make it easier to override behavior 2016-12-14 12:34:59 +01:00
Thomas Gelf 24bb170889 Dashlet: allow to hide regardless of permissions 2016-12-14 12:34:02 +01:00
Thomas Gelf a6962dc326 Dashboard: show description if any 2016-12-14 12:33:19 +01:00
Thomas Gelf 4c1ab4dae6 php: just some comments and cleanup 2016-12-13 18:25:14 +01:00
Thomas Gelf 04f9b360da DirectorDataField: preserve settings in fromDbRow
refs #13259
2016-12-13 17:14:58 +01:00
Thomas Gelf 2cfa78af14 FieldLoader: do not fail missing fields
One might have toggled template or command, sent values for missing fields
might therefore be perfectly legal and should be silently ignored

refs #13241
2016-12-13 16:57:32 +01:00
Thomas Gelf e60fdb31b8 DirectorObjectForm: move check_command to main
fixes #13551
2016-12-13 16:57:05 +01:00
Thomas Gelf e207bb2bc9 DirectorObjectForm: resolve ids 2016-12-13 16:34:31 +01:00
Thomas Gelf bb25de6126 FieldLoader: fix field handling issues
fixes #13241
fixes #13259
2016-12-13 16:34:31 +01:00
Thomas Gelf c1e80afff4 Boolean: fix multiedit-related issues
fixes #13131
2016-12-13 16:04:09 +01:00
Thomas Gelf 7c6a10013f AssignFilter: add 'contains' operator
fixes #13133
2016-12-13 14:49:36 +01:00
Thomas Gelf 58a64cee78 SyncRule: initialize hasServiceSet 2016-12-13 13:51:41 +01:00
Thomas Gelf d2adc1b4ec IcingaObjectFieldLoader: attach fields to form...
...before adding them to a display group. Many thanks to Marc DeTrano for
troubleshooting this tricky issue.

fixes #13279
2016-12-13 12:46:45 +01:00
Thomas Gelf f1a61e2557 ServiceGroup: allow to assign them to services...
...via assignment rules

fixes #13415
2016-12-13 09:51:52 +01:00
Thomas Gelf 1acf332f6b DirectorDataField: whether a field is required...
...is a setting
2016-12-07 09:43:16 +01:00
Thomas Gelf 2ea573e338 IcingaVar: use new CustomVar helpers 2016-12-07 08:29:20 +01:00
Thomas Gelf 57a450f878 Monitoring: add host state helper 2016-12-06 08:55:55 +01:00
Thomas Gelf 962e545a79 CustomVariable: add new helper methods
toJson, checksum, render - will be used later on
2016-12-06 08:35:27 +01:00
Thomas Gelf 0bb1df2f77 CubeLinks: implement Cube v1.0.0 action hook
fixes #13379
2016-12-01 15:08:04 +01:00
Christoph Niemann ddc4b9321b agent helper: add new linux agent script
fixes #12910
2016-11-30 09:45:34 +01:00
Thomas Gelf 7dd2ac6b83 IcingaService: enum service vars, not host vars
fixes #13359
2016-11-30 09:33:29 +01:00
Thomas Gelf 2ce84baa70 BaseTestCases: make 'em abstract to not be empty 2016-11-30 09:23:36 +01:00
Thomas Gelf 1e9e15278a Merge branch 'bugfix/service-set-contraints-13309' 2016-11-30 08:16:47 +01:00
Markus Frosch 4a838ca277 IcingaHostGroup(Legacy): Load zones prefetched
refs #13049
2016-11-30 08:12:27 +01:00
Markus Frosch c2734fd4d4 IcingaHostGroup(Legacy): Render assigned groups to all zones
So we still can support hosts with direct groups.

refs #13049
2016-11-30 08:12:27 +01:00
Markus Frosch aaeca533fc IcingaConfig/IcingaObject(Legacy): Render dummy notification settings
So we avoid warnings about nothing configured.

refs #13049
2016-11-30 08:12:27 +01:00
Markus Frosch 3a8cad2486 IcingaServiceSet: Check if object_name is unique for templates
refs #13309
2016-11-28 15:32:41 +01:00
Markus Frosch ab169e4b78 DbObject: Add and use DuplicateKeyException 2016-11-28 15:32:41 +01:00
Markus Frosch d7ddb3e63c Add IcingaObjectTestCase for testing IcingaObjects 2016-11-28 15:32:41 +01:00
Thomas Gelf 72bb29694d multi-edit: show deployment link 2016-11-25 20:51:02 +01:00
Thomas Gelf 42f98e9bbf CubeLinks: fit modified Cube API 2016-11-25 20:50:31 +01:00
Thomas Gelf db61528748 CustomVariable: fix issues with PHP bug #43200
fixes #13271
2016-11-21 22:44:31 +01:00
Thomas Gelf b39e7efce7 ObjectForm: allow to preset imports 2016-11-16 16:02:28 +01:00
Thomas Gelf 5407c4fe7c ObjectsController: template table for templates...
...but load the other one first to trick the autoloader
2016-11-16 13:36:07 +01:00
Thomas Gelf 698d523c88 js: put focus on first form element 2016-11-16 13:20:31 +01:00
Thomas Gelf d5131f7fac Arguments: always render += instead of =
This allows to extend existing arguments

fixes #12941
2016-11-15 17:57:02 +01:00
Markus Frosch 4e5dfb097e IcingaService(Legacy): Fix duplicated rendering of apply
refs #13049
2016-11-15 10:52:03 +01:00
Markus Frosch b40cfd5f05 IcingaHostGroup(Legacy): Fix member rendering with correct attribute
refs #13049
2016-11-14 15:36:55 +01:00
Markus Frosch 5ee911ef7c IcingaObject(Legacy): Fix event_handler rendering
refs #13049
2016-11-14 15:32:14 +01:00
Markus Frosch d4c3be0bf5 IcingaHostGroup|IcingaService(Set): Fix legacy config file extension
refs #13049
2016-11-14 15:28:52 +01:00
Thomas Gelf 913d934762 IcingaObject: introduce getSingleResolvedProperty()
Motivation: getResolvedProperty() has the effect that objects will fully
resolve all inherited properties, vars and fields. This is overkill in
situations where only a few resolves properties are needed and has quite
an influence on overall rendering performance.

Over time we might completely fade out that part of our resolving logic
as it predates current cache implementations. Meanwhile, we keep two
methods for two (internal) purposes.
2016-11-14 13:25:26 +01:00
Thomas Gelf a6928a8bc1 CustomVariable: render expressions in Arrays...
...and introduce a new abstract method
2016-11-14 10:17:52 +01:00
Thomas Gelf d32f22d493 Config: do not count twice for benchmark 2016-11-14 10:17:52 +01:00
Markus Frosch ae70de9755 IcingaServiceSetTable: Fix counter to show distinct counted values
refs #12891
2016-11-11 15:18:21 +01:00
Markus Frosch 116016bbfc HostApplyMatches: Raise memory_limit for bigger caches
refs #13049
2016-11-11 11:49:37 +01:00
Markus Frosch a8a9278806 IcingaHostGroup(legacy): Render assign to a hostgroup_member list
Supporting active-passive and masterless, by writing multiple versions of the object.

refs #13049
2016-11-11 11:49:37 +01:00
Markus Frosch 31520a7d21 IcingaService: Don't even try to render service_set related services
refs #12891
2016-11-11 11:49:37 +01:00
Markus Frosch 1a51e55563 Merge branch 'feature/better-import-table' 2016-11-11 11:30:56 +01:00
Markus Frosch 8b5689545c Sync(Rule): Allow to sync services of a ServiceSet
This extends the destination key pattern for Sync.

refs #12891
2016-11-11 11:06:01 +01:00
Markus Frosch ddd59ab274 IcingaServiceSet: A simple key identifies a ServiceSet (template)
refs #12891
2016-11-11 11:06:01 +01:00
Markus Frosch b08f3df882 IcingaServiceSet*: Improve Table and view
Add filter and pagination, and some nice display features.

refs #12891
2016-11-11 10:44:22 +01:00
Markus Frosch 39538a3f33 SyncRule: Support hasCombinedKey for serviceSet
refs #12891
2016-11-11 10:44:22 +01:00
Markus Frosch b051b2da17 ObjectsController: Unify feature detection and setAction
Groups, Assign and Sets will be checked on the base Object for a group.

refs #12891
2016-11-11 10:44:22 +01:00
Thomas Gelf eb1f1a2c33 doc/testing: fix syntax 2016-11-10 20:03:29 +01:00
Markus Frosch b4cb6f8ccb ImportRun: Add access to ImportSource 2016-11-09 14:20:35 +01:00
Thomas Gelf 64f00940b1 config/file: unify look and feel, link back
fixes #13087
2016-11-08 22:16:56 +01:00
Thomas Gelf 8ca17f4e7b StartupLogRenderer: remove heavvy logic from view 2016-11-08 16:48:45 +01:00
Thomas Gelf 5bae792901 IcingaTemplateResolver: ignore multicolumn key...
...objects on refresh (for now)

fixes #13081
2016-11-08 16:27:44 +01:00
Thomas Gelf 1a311bc9a9 IcingaServiceSet: ignore empty sets when rendering
fixes #13079
2016-11-08 16:23:16 +01:00
Thomas Gelf 8ce4cf49c0 inspect: show tabs, allow for all hosts
fixes #13073
2016-11-08 16:13:01 +01:00
Thomas Gelf 63bf607a1d IcingaObjectFieldLoader: allow exotic var names
fixes #12094
fixes #12962
2016-11-08 02:00:38 +01:00
Thomas Gelf 588926a9f9 config/activities: allow to filter them
fixes #12239
2016-11-07 22:04:51 +01:00
Markus Frosch e116e36051 IcingaService(legacy): Test for not null
refs #13049
2016-11-07 14:12:30 +01:00
Markus Frosch 314b0675ee HostApplyMatches: Prefetch Hostgroups for resolving
refs #13049
2016-11-07 14:12:06 +01:00
Thomas Gelf 068d38fddc IcingaService(v1): render single service apply...
...fully resolved to all matching hosts respecting their rendering zone
2016-11-07 13:34:20 +01:00
Thomas Gelf 7e749da982 IcingaServiceSet: implement target zone for...
...resolved v1 apply rules
2016-11-07 12:42:27 +01:00
Thomas Gelf 2c1f745c4e IcingaService: render service_description for v1 2016-11-07 11:38:02 +01:00