Johannes Meyer
63e639caf0
Handle module identification directly in the ActionController
...
Fixes some issues with more complex customisations in a
module's controller.
Obsoletes: 93f8297344
2015-08-19 13:39:46 +02:00
Johannes Meyer
036da072c5
Revert "ActionController: Give modules a chance to dynamically require auth"
...
This reverts commit 93f8297344
.
2015-08-19 13:39:46 +02:00
Eric Lippmann
1492218962
Fix SortBox not usable w/o SortRules
...
The SortBox assumes the first avaiable sort column as default column if the given Sortable does not implement the SortRules interface.
When changing the direction of the default sort column, the sort box did not pass the column to Sortable::sort(). Thus the Sortable did not know by which column to sort.
Now the SortBox passes the sort column even if the direction of the default column is changed.
refs #9333
2015-08-18 14:18:48 +02:00
Johannes Meyer
93f8297344
ActionController: Give modules a chance to dynamically require auth
2015-08-18 11:28:02 +02:00
Eric Lippmann
e31dce97a9
Fix dispatching namespaced module controllers
...
refs #5786
2015-08-18 11:11:28 +02:00
Johannes Meyer
e5f249270a
Merge branch 'master' into feature/provide-a-complete-list-of-filter-columns-9029
2015-08-17 15:41:40 +02:00
Johannes Meyer
f7b0e6956d
FilterEditor: Only apply the filter if a query is set
...
refs #9029
2015-08-17 13:43:48 +02:00
Eric Lippmann
7252f3237a
Introduce a constant for the controller namespace
...
refs #5786
2015-08-17 13:43:34 +02:00
Eric Lippmann
06e879f078
Throw an expcetion in our Dispatcher if the controller is not an instance of Zend_Controller_Action_Interface
...
refs #5786
2015-08-17 13:38:16 +02:00
Eric Lippmann
e26a7fd4d1
Use Zend_Cotroller_Dispatcher_Standard::getActionMethod() in the Dispatcher
...
refs #5786
2015-08-17 13:34:47 +02:00
Eric Lippmann
965fee1e9e
Fix 'void' method result used in the Dispatcher
...
refs #5786
2015-08-17 13:31:05 +02:00
Eric Lippmann
8b32edd6e9
Default to Zend's dispatcher if the controller name is empty
...
refs #5786
2015-08-17 13:29:47 +02:00
Eric Lippmann
e8c0e97bb3
Add PHPDoc to the Dispatcher
...
refs #5786
2015-08-17 13:10:01 +02:00
Eric Lippmann
f972a034e7
Fix license header in Dispatcher
...
refs #5786
2015-08-17 13:08:41 +02:00
Eric Lippmann
392eee5a1f
Merge branch 'master' into feature/namespaced-controllers-5786
...
Conflicts:
library/Icinga/Application/Web.php
2015-08-17 12:59:44 +02:00
Johannes Meyer
97245c5166
FilterEditor: Uppercase all words for non labelled filter columns
...
refs #9029
2015-08-14 15:36:54 +02:00
Johannes Meyer
ca4789f114
FilterEditor: Fix automatic filter label creation
...
refs #9029
2015-08-13 17:20:40 +02:00
Johannes Meyer
1e6c394693
Controller: Create the filter editor in setupFilterControl() ...
...
...instead of demanding a concrete controller to do so.
We still have to decide how to handle parameter preservation
properly.
refs #9029
2015-08-13 17:05:13 +02:00
Johannes Meyer
63fb8dcafa
FilterEditor: Do not show an empty line at the bottom of the select
2015-08-13 15:59:00 +02:00
Johannes Meyer
41b80efa0e
FilterEditor: Support queries implementing the FilterColumns interface
...
refs #9029
2015-08-13 15:58:04 +02:00
Johannes Meyer
2e7ff7dd6e
FilterEditor: Require an instance of Filterable for setQuery()
...
refs #9029
2015-08-13 11:35:45 +02:00
Johannes Meyer
fc35f3e46b
FilterEditor: Apply the filter on the query internally
...
refs #9029
2015-08-13 11:33:25 +02:00
Johannes Meyer
069fcc40ea
FilterEditor: Accept null for method setColumns()
...
refs #9029
2015-08-13 11:30:26 +02:00
Johannes Meyer
9ad14fc644
FilterEditor: Accept null for method setSearchColumns()
...
refs #9029
2015-08-13 11:30:05 +02:00
Alexander Fuhr
a9ff6eebc0
Merge branch 'master' into bugfix/cookie-support-7383
2015-08-13 11:22:14 +02:00
Alexander Fuhr
813154f6ef
Cookie: Make it no static and use the request
...
refs #7383
2015-08-13 11:19:48 +02:00
Alexander Fuhr
2332b94f0b
Request: Add getResponse() to retrieve the Response
...
refs #7383
2015-08-13 11:19:08 +02:00
Johannes Meyer
fa1e3a763d
Do not show the full layout on the login page
...
...
refs #9892
2015-08-13 08:12:30 +02:00
Alexander Fuhr
ad8f16c185
Cookie: Set the rigth license line header
...
refs #7383
2015-08-11 16:37:05 +02:00
Alexander Fuhr
cea3727c97
Merge conflicts
2015-08-11 16:35:14 +02:00
Eric Lippmann
aa4e3c5a22
Dashboard: Defer construction of the Url object to Dashlet::getUrl()
...
Before, the Url object was constructed in Dashlet::setUrl() and Dashlet::__construct8) which lead to an exception when parsing a module's configuration.php from our CLI.
refs #9375
2015-08-10 14:05:08 +02:00
Eric Lippmann
1363ea4370
Menu: Defer construction of the Url object to Menu::getUrl()
...
Before, the Url object was constructed in Menu::setUrl() which lead to an exception when parsing a module's configuration.php from our CLI.
refs #9375
2015-08-10 14:05:00 +02:00
Johannes Meyer
c7cc9e66df
JavaScript: Load all available module javascript files
...
refs #9702
2015-08-06 15:15:02 +02:00
Johannes Meyer
9cea83242c
StyleSheet: Load all available module stylesheets
...
refs #9702
2015-08-06 15:14:29 +02:00
Eric Lippmann
688a08585b
Merge branch 'master' into bugfix/error-prone-generictts-9611
...
Conflicts:
modules/monitoring/application/views/scripts/show/components/downtime.phtml
2015-08-03 15:05:45 +02:00
Eric Lippmann
ea5db51213
Fix "Try to get an inexistent pane." when clicking on the "Search" tab
2015-08-03 13:01:11 +02:00
Eric Lippmann
139baffdc6
lib: Make Dashboard::$tabs protected
...
The SearchDashboard has to override Dashboard::getTabs() in order to set up the correct tab.
2015-08-03 13:01:11 +02:00
Eric Lippmann
177fafaa56
lib: Fix TicketHook's PHPDoc
...
refs #9611
2015-08-03 11:05:48 +02:00
Eric Lippmann
451be1e97f
monitoring/hooks: Add TicketHook::createLinks()
...
Instead of calling preg_replace_callback w/o error handling in our view scripts, TicketHook::createLinks() will take care of that.
refs #9611
2015-07-31 15:31:41 +02:00
Johannes Meyer
6c105b867e
Form: Be less error-prone while calling array_search
2015-07-31 11:05:09 +02:00
Johannes Meyer
5345831742
SessionNamespace: Be less error-prone while calling array_search
2015-07-31 11:04:51 +02:00
Johannes Meyer
449a19c3a3
Session: Be less error-prone while calling array_search
2015-07-31 11:04:43 +02:00
Johannes Meyer
24cb123f47
Tabs: Be less error-prone while calling array_search
2015-07-31 11:04:36 +02:00
Eric Lippmann
a234852f32
Merge branch 'feature/basic-auth-9660'
...
resolves #9660
2015-07-30 15:05:07 +02:00
Eric Lippmann
9060e8a034
lib: Only call Icinga::app()->getRequest() for getting the request outside of a controller
...
Saves a call to getFrontController().
refs #9660
2015-07-30 14:02:44 +02:00
Eric Lippmann
81aad9d6a6
Rename Notifiation::getMessages() to popMessages()
...
Because the call to popMessages()--before getMessages()--automatically resets the notification messages on the instance, popMessages() is a much better name for the method.
refs #9660
2015-07-30 13:45:39 +02:00
Eric Lippmann
d545e1f7d1
lib: Don't write the empty notifications array into the session
...
I combined this w/ introducing some constants for notification types and PHPDoc.
refs #9660
2015-07-30 13:42:59 +02:00
Eric Lippmann
9aa1599a18
Form: Disable CSRF counter measure only on API requests
...
refs #9660
2015-07-30 12:04:22 +02:00
Eric Lippmann
c23c7a5fa9
lib: Add Request::getIsApiRequest()
...
If the Accept header is set to application/json it's an API request.
refs #9660
2015-07-30 12:03:33 +02:00
Eric Lippmann
db505281ee
lib: Disable CSRF token on HTTP authenticated users and not XHR
...
refs #9660
2015-07-30 09:33:04 +02:00
Eric Lippmann
9f0e48a0a1
Don't send the X-Icinga-Module header more than once
...
fixes #9349
2015-07-30 09:28:05 +02:00
Matthias Jentsch
20aa17c831
Merge branch 'bugfix/selected-row-lost-after-autorefresh-8623'
...
fixes #8623
2015-07-29 17:30:45 +02:00
Matthias Jentsch
3e7cc299ec
Fix issue that caused the refresh button to remove side bar
...
Do not apply base target globally for all toolbar elements, but specifically for those that should remove side-bars.
refs #8623
refs #6436
2015-07-29 17:18:52 +02:00
Thomas Gelf
ba906d2fca
FilterEditor: allow to set custom filter columns
2015-07-29 17:13:18 +02:00
Eric Lippmann
432efcb089
lib: Handle Response::setRerenderLayout() correctly
...
The header is different if it's not a redirect.
refs #9660
2015-07-29 15:08:36 +02:00
Eric Lippmann
aaae7e03b4
lib: Introduce Response::setRerenderLayout()
...
Instead of handling response headers based on flags in our controllers, this should happen in the request for usage w/o controllers.
refs #9660
2015-07-29 14:39:45 +02:00
Eric Lippmann
91720810cc
lib: Document Response::redirectAndExit()
...
refs #9660
2015-07-29 14:22:45 +02:00
Eric Lippmann
a31c799043
lib: Introduce Response::getRequest()
...
refs #9660
2015-07-29 14:20:39 +02:00
Eric Lippmann
07849e0fea
lib: Rename Authentication/Manager to Authentication/Auth
...
refs #9660
2015-07-28 17:08:55 +02:00
Eric Lippmann
7cfc78558d
Merge branch 'master' into feature/secure-modules-9644
...
Conflicts:
library/Icinga/Exception/IcingaException.php
2015-07-28 13:42:02 +02:00
Johannes Meyer
e231ef8061
SortBox: Fix some documenation and code style issues
2015-07-28 12:04:16 +02:00
Johannes Meyer
f7b35b04f4
SortBox: Properly apply sort rules and show the user the default
...
refs #6644
2015-07-28 12:03:50 +02:00
Eric Lippmann
78285b95a3
Make Controller::httpNotFound() variadic
...
refs #9644
2015-07-28 10:40:02 +02:00
Johannes Meyer
4d9aa54814
SortBox: Utilize a separate form for each control
...
refs #9421
2015-07-27 11:43:47 +02:00
Johannes Meyer
86ad6c48ff
Form: Automatically remove query parameters only for GET forms
...
refs #9421
2015-07-27 08:52:33 +02:00
Eric Lippmann
8358e9165c
Don't require the module permission for the default module
...
refs #9644
2015-07-24 15:11:21 +02:00
Thomas Gelf
727a2d7141
Paginator: relax requirements to Paginatable
...
* we need no full query interface here
* introduced new interface "Paginatable"
fixes #9483
2015-07-23 13:48:49 +02:00
Eric Lippmann
a34ad0227f
Don't load module menu entries if the authenticated user lacks the module permission
...
refs #9644
2015-07-23 12:59:30 +02:00
Eric Lippmann
fd77c30838
Don't load module dashboards if the authenticated user lacks the module permission
...
refs #9644
2015-07-23 12:57:23 +02:00
Eric Lippmann
e8e01257e6
Change interface of SearchDashboard to allow setting a user before calling ::search()
...
Because search dashlets are provided by modules, the authenticated user's module permissions have to be validated before loading search dashlets provided by modules.
refs #9644
2015-07-23 12:53:08 +02:00
Eric Lippmann
b4f4ce4406
Require the module's permission for every module automatically
...
Module permissions are not required if authentication is disabled on the controller.
refs #9644
2015-07-23 12:51:10 +02:00
Eric Lippmann
b000ae3a37
Do not require permissions if authentication is not required
...
refs #9644
2015-07-23 12:50:02 +02:00
Eric Lippmann
aa567f8cd7
Introduce ModuleActionController::$requiresModulePermission
...
refs #9644
2015-07-22 14:56:02 +02:00
Eric Lippmann
13d954a956
Fix rawurlencode call
2015-07-22 13:36:25 +02:00
Eric Lippmann
52e352751e
Revert "ModuleActionController: fix forward/X-Icinga-Module"
...
This reverts commit bf82bd4ce1
.
We have a not merged branch for this.
refs #9349
2015-07-22 13:34:44 +02:00
Markus Frosch
ab8e775188
Fix duplicate headers on forward() inside a controller
...
This avoids that the JS loader flattening arrays.
refs #9349
2015-07-22 13:34:44 +02:00
Johannes Meyer
54a77b7253
Merge branch 'master' into feature/support-for-file-uploads-8758
2015-07-22 13:30:56 +02:00
Johannes Meyer
a199d36207
Stylesheet: Disable extendend @import statements provided by LESS
...
fixes #9687
2015-07-22 12:45:10 +02:00
Thomas Gelf
bf82bd4ce1
ModuleActionController: fix forward/X-Icinga-Module
2015-07-22 10:53:42 +02:00
Johannes Meyer
cecd94be50
Merge branch 'master' into feature/support-for-file-uploads-8758
2015-07-22 08:47:24 +02:00
Johannes Meyer
c0de2e6ee3
Form: Add missing use statement for the ProgrammingError exception
2015-07-22 08:39:24 +02:00
Eric Lippmann
ce2b686252
Add file and line of logged menu item renderer exceptions
...
fixes #9696
2015-07-21 16:54:23 +02:00
Johannes Meyer
8f2849f32a
Form: Improve code readability..
...
..and avoid the necessity to provide another mock when testing
Form::handleRequest().
refs #8758
2015-07-21 16:48:56 +02:00
Johannes Meyer
7c89887773
Form: Provide an absolute url as redirect url for successful frame uploads
...
refs #8758
2015-07-21 16:35:56 +02:00
Johannes Meyer
6c9819204d
Form: Only work with a single type when handling redirect urls
...
$form->setRedirectUrl('some/url') still works, but $form->getRedirectUrl()
will only return instances of Icinga\Web\Url now.
2015-07-21 16:33:24 +02:00
Johannes Meyer
fc481e527b
Form: Process request parameter _frameUpload
...
This parameter is being used to flag a request as form submission issued
by utilizing an iframe. Appending it to a form's action causes no redirection
to take place in case of successful submission and a reduced but still valid
layout to be printed in any way. Redirection must be handled by the client
regarding the meta tag "redirectUrl".
refs #8758
2015-07-21 15:22:24 +02:00
Johannes Meyer
0a9a066749
Form: Do not create a new instance of Url when returning the redirect url
...
We're shifting parameters and by creating a new instance we'll lose
such changes.
refs #8758
2015-07-21 15:13:56 +02:00
Johannes Meyer
47fbc24f17
Merge branch 'master' into bugfix/improve-form-notifications-8983
...
Conflicts:
library/Icinga/Web/Form.php
modules/setup/application/forms/AdminAccountPage.php
2015-07-20 15:52:10 +02:00
Johannes Meyer
2164bb86c8
Tabs: Do not create a new instance of Url when rendering the refresh url
...
We're shifting parameters and by creating a new instance we'll lose
such changes.
refs #8758
2015-07-16 11:27:31 +02:00
Johannes Meyer
549f36f82c
Form: Do not create a new instance of Url when setting the action
...
We're shifting parameters and by creating a new instance we'll lose
such changes.
refs #8758
2015-07-16 11:27:02 +02:00
Johannes Meyer
d192410435
Introduce GET parameter _disableLayout to ... disable the entire layout
...
refs #8758
2015-07-16 11:23:48 +02:00
Johannes Meyer
f3c8f2229f
ErrorLabeller: Provide localized output for the MimeType validator
...
refs #8758
2015-07-15 15:15:15 +02:00
Johannes Meyer
5b908d85bb
Form: Fix notifications
...
* Coding style issues
* Notifications were not grouped by type
* Notifications of sub-forms were overwriting existing ones
(cherry picked from commit 147f6be714
)
2015-07-01 14:26:03 +02:00
Johannes Meyer
d5ba40ac19
Form: Add hint support
...
Hints are short messages displayed at the bottom of a form
used to describe specific aspects on how to interact with
the form.
refs #8983
2015-06-30 15:02:58 +02:00
Johannes Meyer
ea6f707bdf
FormDescriptions: Do not render a description for required fields
...
refs #8983
2015-06-30 14:28:27 +02:00
Johannes Meyer
147f6be714
Form: Fix notifications
...
* Coding style issues
* Notifications were not grouped by type
* Notifications of sub-forms were overwriting existing ones
2015-06-30 14:25:33 +02:00
Matthias Jentsch
aecfb2eb97
Merge branch 'bugfix/multiselection-not-visible-9054'
...
fixes #9054
fixes #9346
2015-06-30 14:08:19 +02:00
Johannes Meyer
702a9c9523
Form: Show notifications and errors below any descriptions
...
They might be textually related to one or more descriptions.
refs #8983
2015-06-30 13:22:54 +02:00
Matthias Jentsch
6a7e3fe440
Document multi selection and use clearer names
...
refs #9054
2015-06-30 13:03:41 +02:00
Matthias Jentsch
aec59d9941
Use current filter to highlight active rows instead of storing active rows in JS
...
Clean up selection code and move it into separate behavior and parse filter query to fetch selectable rows.
refs #9054
refs #9346
2015-06-29 18:48:42 +02:00