From b5dde96746884d5dc419be75d885b0c634d6054f Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Wed, 4 Apr 2018 12:19:21 +0200 Subject: [PATCH] FilterEditor: save changes on element addition refs #2900 --- library/Icinga/Web/Widget/FilterEditor.php | 35 +++++++++++----------- public/css/icinga/widgets.less | 5 ++++ 2 files changed, 22 insertions(+), 18 deletions(-) diff --git a/library/Icinga/Web/Widget/FilterEditor.php b/library/Icinga/Web/Widget/FilterEditor.php index a15cd9d94..d8f2ff763 100644 --- a/library/Icinga/Web/Widget/FilterEditor.php +++ b/library/Icinga/Web/Widget/FilterEditor.php @@ -327,6 +327,17 @@ class FilterEditor extends AbstractWidget $filter = $this->applyChanges($request->getPost()); $url = $this->url()->setQueryString($filter->toQueryString())->addParams($preserve); $url->getParams()->add('modifyFilter'); + + $addFilter = $request->get('add_filter'); + if ($addFilter !== null) { + $url->setParam('addFilter', $addFilter); + } + + $removeFilter = $request->get('remove_filter'); + if ($removeFilter !== null) { + $url->setParam('removeFilter', $removeFilter); + } + $this->redirectNow($url); } } @@ -388,28 +399,16 @@ class FilterEditor extends AbstractWidget protected function removeLink(Filter $filter) { - return $this->view()->qlink( - '', - $this->preservedUrl()->with('removeFilter', $filter->getId()), - null, - array( - 'icon' => 'trash', - 'title' => t('Remove this part of your filter') - ) - ); + return "'; } protected function addLink(Filter $filter) { - return $this->view()->qlink( - '', - $this->preservedUrl()->with('addFilter', $filter->getId()), - null, - array( - 'icon' => 'plus', - 'title' => t('Add another filter') - ) - ); + return "'; } protected function stripLink(Filter $filter) diff --git a/public/css/icinga/widgets.less b/public/css/icinga/widgets.less index e33f33461..4dbbc7316 100644 --- a/public/css/icinga/widgets.less +++ b/public/css/icinga/widgets.less @@ -164,6 +164,11 @@ table.multiselect tr[href] td { div.buttons { float: right; } + + button { + border: none; + background: none; + } } }