Commit graph

477 commits

Author SHA1 Message Date
Johannes Meyer
93a2589909 NodeMoveAction: Interpret $from as index and not as display value 2019-02-22 12:26:24 +01:00
Johannes Meyer
bc03569765 Properly handle display values when performing other actions than moving nodes 2019-02-22 12:26:24 +01:00
Johannes Meyer
f022c0f101 NodeMoveAction: Properly handle unbound nodes 2019-02-22 12:26:24 +01:00
Johannes Meyer
98f2ed8f48 TreeRenderer: Remove obsolete placeholder element 2019-02-22 12:26:24 +01:00
Johannes Meyer
ec14a7dbe1 NodeMoveAction: Properly check display values 2019-02-22 12:26:24 +01:00
Johannes Meyer
0d0ac5381e NodeApplyManualOrderAction: Also include non-toplevel processes 2019-02-22 12:26:24 +01:00
Johannes Meyer
72f3af9fc9 BpNode: Reset keys when automatically sorting nodes 2019-02-22 12:26:24 +01:00
Johannes Meyer
da4bf7ffc6 NodeMoveAction: Don't allow to accidentally override the placement of nodes 2019-02-22 12:26:24 +01:00
Johannes Meyer
eb043b32c8 ProcessChanges: Verify that actions can be applied before pushing 2019-02-22 12:26:24 +01:00
Johannes Meyer
eef8adb9be NodeAction: Allow method appliesTo to throw an exception
Also implements it's usage in all available actions.
2019-02-22 12:26:24 +01:00
Johannes Meyer
877f86a746 js: Allow to move nodes between processes 2019-02-22 12:26:24 +01:00
Johannes Meyer
ea0a04065d Add support to move nodes between processes 2019-02-22 12:26:24 +01:00
Johannes Meyer
48ba2a7bba TreeRenderer: Render add button as action link in the top right 2019-02-22 12:26:24 +01:00
Johannes Meyer
36dd4e0296 TreeRenderer: Use a more homogenous html structure
i.e. no divs, just uls and lis
2019-02-22 12:26:24 +01:00
Johannes Meyer
eac7f3e76f Enhance drag&drop in the tree view
The style is not final, of course..
2019-02-22 12:26:23 +01:00
Johannes Meyer
c804177ca4 Also save user defined order of processes nodes while in tree view 2019-02-22 12:26:23 +01:00
Johannes Meyer
f07441ae8f TileRenderer: Explicitly set sortable direction to horizontal
Since Sortable.js v1.8.0-rc1 the automatic detection seems unreliable.
2019-02-22 12:26:23 +01:00
Johannes Meyer
0707d1d7e7 ProcessChanges: Add new action to move processes/nodes 2019-02-22 12:26:23 +01:00
Johannes Meyer
c609f0c6b3 ProcessChanges: Add new action to apply manual sorting 2019-02-22 12:26:23 +01:00
Johannes Meyer
abafbacf1a CsrfToken: Fix exception when validating tokens 2019-02-22 12:26:23 +01:00
Johannes Meyer
876a577e85 Don't sort processes in case manual sorting has been applied 2019-02-22 12:26:23 +01:00
Johannes Meyer
c7f25ba0c4 MetaData: Introduce new header option `ManualOrder' 2019-02-22 12:26:23 +01:00
Johannes Meyer
8c2f0e30bb TileRenderer: Allow to reorder tiles by using drag&drop 2019-02-22 12:26:23 +01:00
Johannes Meyer
68aedc3dce Restrict host and service lists when adding new or editing old nodes
resolves #67
2019-02-22 12:21:18 +01:00
Johannes Meyer
d1f32c59f1 Node: Aggregate parents if none are registered yet
fixes #134
2019-02-19 11:02:08 +01:00
Alexander A. Klimov
3985f67fe7 Fix "Host not found" error
refs #147
2019-02-18 13:54:39 +01:00
Johannes Meyer
56e37d2876 auth: Check the businessprocess/showall permission prior any restrictions
fixes #200
2019-02-18 13:43:06 +01:00
Johannes Meyer
763ac872d3 Introduce and utilize class NoDuplicateChildrenValidator 2019-02-14 11:29:30 +01:00
Dominik Riva
c7e24d27de Fix misspelled delete / cancel icon name. 2019-02-01 14:49:38 +01:00
Johannes Meyer
327cb7c28c Allow to import processes from different configurations 2019-01-17 15:20:25 +01:00
Johannes Meyer
510267c7d0 Prevent nodes from being added twice
fixes #186
fixes #128
fixes #114
2019-01-17 15:20:25 +01:00
Johannes Meyer
6c83fee2d6 NodeTile: Show total amount of children beneath a parent's name 2019-01-17 14:57:38 +01:00
Johannes Meyer
4ae3509662 TileRenderer: Drop pseudo tiles and show link to add new nodes in the header 2019-01-17 14:57:38 +01:00
Johannes Meyer
c40a192078 NodeTile: Allow to add sub nodes directly from a parent's overview 2019-01-17 14:57:38 +01:00
Johannes Meyer
dc169cb6a8 test: Integrate icingaweb2-module-ipl as dependency
refs #130
2019-01-17 13:46:23 +01:00
Johannes Meyer
d195b78886 Drop libs and tests of Icinga\Module\Businessprocess\Html
refs #130
2019-01-17 13:45:42 +01:00
Johannes Meyer
19ae300aca lib: Remove all traces of Icinga\Module\Businessprocess\Html
refs #130
2019-01-17 13:21:46 +01:00
Johannes Meyer
908dbd905f BpConfig: Don't ignore the Statetype header
fixes #112
2019-01-10 09:17:36 +01:00
Thomas Gelf
20b957a999 Tiles: navigate in place when drilling down
fixes #192
2018-12-12 16:36:09 +01:00
Thomas Gelf
8b7311591f Revert "Adjust tile navigation"
This reverts commit 50e18766f6.

refs #192
2018-12-12 16:36:09 +01:00
Thomas Gelf
6bd1cb26c3 Breadcrumb: provide a link back to the dashboard
fixes #191
2018-12-12 16:35:28 +01:00
Thomas Gelf
079352d3b8 MonitoringState: filter host_name, not name
fixes #189
2018-12-12 15:40:14 +01:00
Thomas Gelf
5c08a71bd7 NodeTile: open external URLs in a new browser tab
fixes #187
2018-11-08 11:36:16 +01:00
Eric Lippmann
c4ee09d567 Ignore action URL parameter for tile links
Else every tile opens with the action for the current tile.
2018-08-15 09:40:17 +02:00
Eric Lippmann
50e18766f6 Adjust tile navigation
* Left to right tile drill down
* Actions redirect to main
2018-08-15 09:37:43 +02:00
Eric Lippmann
7cb7f40e87 Don't show edit actions for the unbound nodes tile 2018-08-14 10:37:44 +02:00
Eric Lippmann
7c491496fa Use natcasesort 2018-08-13 13:30:33 +02:00
Eric Lippmann
e3e24fd29a Fix link base targets for the tile view
Node details now always open in the detail area instead of the same
column.
2018-08-01 13:53:01 +02:00
Eric Lippmann
146ad0171f Display root nodes in the dashboard 2018-08-01 13:53:01 +02:00
Eric Lippmann
059a59b119 Support exporting to CSV, JSON and PDF 2018-08-01 13:12:08 +02:00
Alexander A. Klimov
15cc3e88e0 Require Icinga Web 2.5.1
refs #113
2018-08-01 09:37:59 +02:00
Alexander A. Klimov
ee3cdf67a1 Url: remove unneccessary duplicate code
refs #113
2018-08-01 09:37:23 +02:00
Jennifer Mourek
87b1d961bc Add functionality to edit node 2018-07-31 12:50:25 +02:00
Eric Lippmann
024d537272
Merge pull request #169 from Icinga/fix/minimum-worst-state
BpNode: Use worst state in minimum state calculation
2018-07-02 17:24:18 +02:00
Eric Lippmann
28bed2859b
Merge pull request #152 from Icinga/bugfix/cannot-remove-a-node-132
Make node removal working as expected
2018-07-02 17:23:32 +02:00
Eric Lippmann
1c76e7a152
Merge pull request #139 from Icinga/missing-counters
BpNode: Count missing nodes in getStateSummary
2018-07-02 17:22:35 +02:00
Eric Lippmann
c741d52a89
Merge pull request #155 from Icinga/bugfix/tile-view-info-url
Show the info URL also in the tile view
2018-07-02 17:20:54 +02:00
Eric Lippmann
14211fc3f7
Merge pull request #176 from Icinga/feature/update-styles
Feature/update styles
2018-07-02 17:19:15 +02:00
Jennifer Mourek
fffdffbe63 Remove badge container, when there is no conent 2018-06-28 13:37:46 +02:00
Jennifer Mourek
5391dff635 Change info URL icon 2018-06-26 16:11:29 +02:00
Jennifer Mourek
af6c0593a2 Change lock text and make action-bar icons bigger
Many users were confused by the lock/unlock functionality, this should make it a bit more clear.
2018-06-26 08:55:23 +02:00
Jennifer Mourek
a544f25551 Remove help from node detail view 2018-06-25 15:31:34 +02:00
Markus Frosch
9120449acb BpNode: Use worst state in minimum state calculation
Ensure we use the worst state within a minimum condition, previously we
did use the Xth best.

refs #167
2018-03-20 16:59:13 +01:00
Alexander A. Klimov
e4e651cbe8 Make node removal working as expected
refs #132
2017-12-04 14:14:06 +01:00
Alexander A. Klimov
89347648e1 Show the info URL also in the tile view 2017-12-04 14:13:28 +01:00
Markus Frosch
98cc43f01b BpNode: Count missing nodes in getStateSummary
Children that are missing should increment the counter, as well as
if no children are present.

So it's easy to find missing nodes following the counters.
2017-06-01 16:51:22 +02:00
Markus Frosch
bf52fd0dd6 MonitoringState: Improve host and service filter
`host IN ...` is a lot faster than `host = 'xx' OR host = 'yy'` in
larger processes.

And document performance of querying for specific services.
2017-06-01 15:40:09 +02:00
Markus Frosch
5dfe4782ea LegacyConfigParser: Trim line in parseHeaderLine
To avoid whitespace and \r in header. Also supports DOS line endings.

fixes #136
2017-05-31 14:26:31 +02:00
Thomas Gelf
52dfd0ceaa LegacyConfigParser: trim header lines
fixes #136
2017-05-31 14:09:06 +02:00
Thomas Gelf
30d04c423c Html: use add missing Exception class 2017-05-31 14:08:43 +02:00
Thomas Gelf
ad1ff7af91 BpNode: use loop detection when checking for...
...missing children

fixes  #121
2017-03-21 11:30:49 +01:00
Max Stephan
ec813683ab check "canModify" also in simulation mode 2017-03-16 09:23:47 +01:00
Thomas Gelf
be5d8116ce Html: defer rendering of array content 2017-02-27 12:28:40 +01:00
Thomas Gelf
94e29aec1d BaseElement: fix addAttributes() helper 2017-02-27 12:28:00 +01:00
Thomas Gelf
892780de96 doc/changelog: add a changelog 2017-02-20 15:16:33 +01:00
Thomas Gelf
98bd02c164 Node: clear missing when setting state 2017-02-20 15:01:10 +01:00
Thomas Gelf
14e30e4741 BpNode: set missing to unknown before fetching...
...sorting state

refs #105
2017-02-20 14:57:17 +01:00
Thomas Gelf
9750e13234 BpNode, process/show: error for missing children...
...and unknown as state

fixes #105
2017-02-20 14:47:30 +01:00
Thomas Gelf
2f3e5fb419 BpConfig: allow access to a fake unbound base node
fixes #100
2017-02-20 14:19:52 +01:00
Thomas Gelf
72fc8b03c9 Metadata: allowed roles are a simple array
refs #98
2017-02-17 18:49:17 +01:00
Thomas Gelf
59d721fdbc ImportedNode: fix link to linked node 2017-02-17 18:40:54 +01:00
Thomas Gelf
8871dbd8e1 TreeRenderer: fix outdated edit link
fixes #101
2017-02-17 15:38:36 +01:00
Thomas Gelf
f5d551bbf0 ImportedNode: improve link targets, fix rendering
refs #108
2017-02-16 14:05:16 +01:00
Thomas Gelf
369c52dfd4 ImportedNode: use MonitoringState
fixes #108
2017-02-16 13:35:28 +01:00
Thomas Gelf
d88522eb85 Renderers: do not show links and buttons...
...pointing to readwrite actions in case such are not allowed

refs #107
2017-02-08 17:59:03 +01:00
Thomas Gelf
7452a39f82 BpConfig/UploadForm: unify common code, enforce...
...prefix(es) according configured restrictions

refs  #106
2017-02-08 16:08:29 +01:00
Thomas Gelf
52ee6d759f Metadata: add support for 'prefix' restriction
refs #106
2017-02-08 16:05:06 +01:00
Thomas Gelf
a722615d9b Metadata: fix group membership check
refs #98
2017-01-27 21:04:22 +01:00
Thomas Gelf
61fd8caa93 BpNode: add a new helper method 2017-01-27 15:32:08 +01:00
Thomas Gelf
5cbd46b6e3 Node: return myself in every path
fixes #96
2017-01-27 15:01:48 +01:00
Thomas Gelf
0c395cc005 DeleteNode: use parent, not path
fixes #94
2017-01-27 14:57:57 +01:00
Thomas Gelf
52b3abb929 Simulation: load current simulations from session
fixes #93
2017-01-27 13:04:43 +01:00
Thomas Gelf
8b6ab3d2fe Renderer, js: redirect links from dashboard tiles 2017-01-27 11:53:58 +01:00
Thomas Gelf
f599029726 css: fix compact styling 2017-01-27 11:22:36 +01:00
Thomas Gelf
605820adb7 RenderedProcessActionBar: show config link only...
...on root level

fixes #78
2017-01-27 10:19:06 +01:00
Thomas Gelf
dfd9ee74c3 BpUploadForm: completely refactor upload
It's much more comfortable and consists of two steps, upload - and a validation
allowing one to manually tweak the source before storing it.

fixes #8
2017-01-27 10:04:59 +01:00
Thomas Gelf
2023cae041 LegacyConfigParser: parse metadata from string
fixes #91
2017-01-27 10:02:35 +01:00
Thomas Gelf
60d043cb18 Simulation: refactor the whole class
First step, more to come. Single node simulations should be moved to a
dedicated class of course

fixes #88
fixes #89
2017-01-26 22:09:38 +01:00
Thomas Gelf
3718968883 TreeRenderer: fix process/node distinction
fixes #86
2017-01-26 15:59:43 +01:00
Thomas Gelf
9091ea4ecd RenderedProcessActionBar: cleanup 2017-01-25 10:06:08 +01:00
Thomas Gelf
7a4c9d4f6d RenderedProcessActionBar: help for tree/tile view
fixes #79
2017-01-25 10:03:45 +01:00
Thomas Gelf
4d3afdda4d Html: add a prepend() method 2017-01-25 01:03:36 +01:00
Thomas Gelf
051f9376b7 LegacyConfig: fix info_url parsing and rendering
fixes #71
2017-01-23 23:38:43 +01:00
Thomas Gelf
4d912dffc3 TileRenderer: link unbound with name, not label 2017-01-23 10:18:58 +01:00
Thomas Gelf
404223a306 Renderer: provide classes for missing nodes
fixes #76
2017-01-23 09:54:53 +01:00
Thomas Gelf
2b8f51e983 Renderer: calculate state before retrieving...
...unbound nodes

fixes #74
2017-01-23 09:50:19 +01:00
Thomas Gelf
6d66ebd72a WtfTabs: add a comment exlaining this WtfClass 2017-01-20 13:29:01 +01:00
Thomas Gelf
d6c1cd8849 Tabs: add a wrapper to work around PHP bug #43200
refs #81
2017-01-20 13:21:51 +01:00
Thomas Gelf
3dff6848ec Merge branch 'feature/travis' 2017-01-11 23:58:57 +01:00
Thomas Gelf
d87edba377 Just a couple of newlines to satisfy latest PSR2
...checks in phpcs
2017-01-11 23:56:17 +01:00
Thomas Gelf
5f6b35906d AddNode: fix creating nested nodes
fixes #13883
2017-01-11 17:38:19 +01:00
Thomas Gelf
c083b117dd Modification: rename $bp to $config 2017-01-11 17:36:32 +01:00
Thomas Gelf
56ab13d2b0 LegacyConfigRenderer: use correct helper...
...when rendering required process
2017-01-11 17:01:45 +01:00
Thomas Gelf
fc117217dd Storage: cosmetics 2017-01-11 17:01:34 +01:00
Thomas Gelf
f769fd3855 Renderer: rename config property 2017-01-11 14:33:35 +01:00
Thomas Gelf
22583aa083 BpConfig: renamed from BusinessProcess 2017-01-11 14:09:30 +01:00
Thomas Gelf
149696fb50 BpNode: remove code related to legacy config 2017-01-11 13:40:42 +01:00
Thomas Gelf
5443d73f08 Node: use concret implementation in type hint 2017-01-11 13:38:47 +01:00
Thomas Gelf
e26daca0f4 LegacyConfigRenderer: make some helpers static 2017-01-11 13:38:21 +01:00
Thomas Gelf
0b9e0a2d86 BusinessProcess: add new helpers for BpNodes 2017-01-11 13:37:52 +01:00
Thomas Gelf
c52c970528 LegacyConfigParser: new parser class
Takes over and cleans up logic from LegacyStorage
2017-01-11 13:36:38 +01:00
Thomas Gelf
1acf06aaba Storage: fix method name 2017-01-11 12:57:38 +01:00
Thomas Gelf
a9331a1e05 LegacyConfigRenderer: move rendering to dedicated
...class, simplifies LegacyStorage
2017-01-11 12:00:20 +01:00
Thomas Gelf
a03feb03c5 Storage: clean up interface 2017-01-11 11:57:10 +01:00
Thomas Gelf
8f1ce049de MonitoringState: introduce new helper class
Removes logic from BusinessProcess class
2017-01-11 09:51:39 +01:00
Thomas Gelf
1ca7e3e1d1 Add a couple of comments 2017-01-11 09:48:16 +01:00
Thomas Gelf
b3df39d1b0 NodeController: add business impact action
Show all paths to a specific node to visualize it's business impact

fixes #8573
2017-01-10 16:49:53 +01:00
Thomas Gelf
6155bb5e2b Controller: remove obsolete code 2017-01-10 15:56:19 +01:00
Thomas Gelf
e4b773e827 BusinessProcess: add hasRootNode helper 2017-01-10 15:54:03 +01:00
Thomas Gelf
26d41a445d views/scripts: remove unified scripts 2017-01-08 23:09:22 +01:00
Thomas Gelf
f16715814f BusinessProcess: provide createImportedNode helper 2017-01-03 11:39:36 +01:00
Thomas Gelf
5f26440a00 NodeAddChildrenAction: do nothing for missing node 2017-01-03 11:37:39 +01:00
Thomas Gelf
32f50c85cf Node: add helpers related to deletion 2017-01-03 11:35:09 +01:00
Thomas Gelf
2dc08be767 ProcessChanges: make path optional for deleteNode 2017-01-03 11:30:48 +01:00
Thomas Gelf
eb866bf4b1 Renderer: blacklist some more parameters 2017-01-03 11:30:27 +01:00
Thomas Gelf
549ec814ab TileRenderer: show unbound nodes only at root level 2017-01-03 11:30:03 +01:00
Thomas Gelf
8770ff05ce ConfigDiff: just a newline at end of file 2017-01-03 11:29:19 +01:00
Thomas Gelf
5b9748c208 Controller: fix class usage, add new helper 2017-01-03 11:28:58 +01:00
Thomas Gelf
9c22289bf3 BpNode: tweak hasInfoUrl() 2017-01-03 11:27:58 +01:00
Thomas Gelf
8bd1e10f95 DeleteNode: quite some rework, provide more...
...possibilities, remove "not implemented" exception
2017-01-03 11:23:05 +01:00
Thomas Gelf
65524e7a8b NodeTile: tweak some links 2017-01-03 11:20:01 +01:00
Thomas Gelf
a45bb7c6cb BusinessProcess: provide a listRootNodes() method 2017-01-03 11:18:37 +01:00
Thomas Gelf
e1ec6c7b6a ImportedNode: make imports more robust 2017-01-03 11:17:17 +01:00
Thomas Gelf
047e9dd70d LegacyStorage: throw error on incomplete imports 2017-01-03 11:16:00 +01:00
Thomas Gelf
898576f63a RenderedProcessActionBar: introduce new class...
...to keep ActionBar more generic
2017-01-03 11:12:20 +01:00
Thomas Gelf
e385a8cab2 php-diff: replace vendor lib 2017-01-03 11:03:30 +01:00
Thomas Gelf
5443bd5b4e LegacyStorage: new list helper method 2016-12-26 11:43:32 +01:00
Thomas Gelf
79ea88fe08 MetaData: fix typo 2016-12-23 12:47:43 +01:00
Thomas Gelf
40165353d8 ProcessChanges: fit changed NodeRemove api 2016-12-23 11:16:37 +01:00
Thomas Gelf
1fc6634b75 Renderer: do not preserve action-related params 2016-12-23 11:14:00 +01:00