Commit Graph

2629 Commits

Author SHA1 Message Date
Johannes Meyer 07b17cc701 Wizard: Add Spinner decorator to the first (and only) submit button
refs #8369
2015-08-21 09:52:57 +02:00
Matthias Jentsch 44271471e3 Allow declarative definitions of badge renderers and improve interface
Allow the data backend, columns and generated tooltips to be defined in the configuration instead of providing subclasses for every new configuration. Provide an abstract BadgeMenuItemRenderer that allows creating Badges with less boilerplate.

fixes #9694
2015-08-20 18:16:33 +02:00
Eric Lippmann 5da139943c lib: Fix type hint for $menuItems in Module 2015-08-20 16:59:02 +02:00
Eric Lippmann 9aa62c9898 lib: Fix type hint for $tabs in Module 2015-08-20 16:58:24 +02:00
Johannes Meyer 46cd47b73c Form: Automatically set data-progress-element...
..for forms with form based autosubmit warnings.

refs #8369
2015-08-20 16:54:20 +02:00
Eric Lippmann 800173b19f lib: Fix type hint for $router in Module 2015-08-20 16:47:17 +02:00
Eric Lippmann 5d8f091209 lib: Don't alias Zend classes in Module 2015-08-20 16:46:31 +02:00
Eric Lippmann f24449b225 modules: Register controller namesoace in Module::registerWebIntegration()
Else we get an exception when loading modules on the CLI because Zend classes are not autoloaded.

refs #5786
2015-08-20 16:24:12 +02:00
Johannes Meyer 32f8c0770c Wizard: Use a single spinner for all submit buttons
refs #8369
2015-08-20 16:13:56 +02:00
Johannes Meyer 20f144bd4b Spinner: Accept option `id'
refs #8369
2015-08-20 16:13:30 +02:00
Johannes Meyer a77dc3665c Form: Show a spinner for ongoing form submits
This will only be shown if there's no progress label set.

refs #8369
2015-08-20 15:05:02 +02:00
Johannes Meyer 275b57cb69 Form: Allow to set a progress label
refs #8369
2015-08-20 15:04:15 +02:00
Johannes Meyer 690d60672c Introduce form element decorator Spinner
refs #8369
2015-08-20 14:34:43 +02:00
Matthias Jentsch 9e40f5f2c7 Remove option to skip certificate validation to prevent insecure configurations
Skipping certificate validation will allow MITM on every single request and not give any real security over just running unencrypted queries. On top of that, there is no way to configure this behavior from within PHP except of setting environment variables, which is really hacky and has side effects on other requests.

fixes #9607
2015-08-19 16:20:33 +02:00
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 7abc5778ea Fix PHPDoc in the String helper 2015-08-19 12:50:05 +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
Eric Lippmann f2f1e12b8e Let PivotTable implement Sortable
refs #9333
2015-08-18 14:17:07 +02:00
Eric Lippmann d1f9c5ff0d Don't call setUseSubqueryCount() in the PivotTable
The query implementation handles this automatically.

refs #9333
2015-08-18 13:42:06 +02:00
Eric Lippmann d0f2887367 Fix PHPDoc indents in the PivotTable
refs #9333
2015-08-18 13:35:50 +02:00
Eric Lippmann 0a7a8d377e Remove unnecessary import in the PivotTable
refs #9333
2015-08-18 13:34:14 +02:00
Eric Lippmann 3c812e6d2b Register module controller namespace
refs #5786
2015-08-18 13:02:54 +02:00
Eric Lippmann d267686ef4 Fix PHPDoc in Web to read class loader instead of auto loader
refs #5786
2015-08-18 12:51:46 +02:00
Eric Lippmann cb8fb93ab0 Fix PHPDoc in ApplicationBootstrap to read class loader instead of auto loader
refs #5786
2015-08-18 12:50:46 +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
Eric Lippmann fae2e0979a Fix class loading to not rely on the longest namespace match
refs #5786
2015-08-18 10:50:29 +02:00
Eric Lippmann 234dc951d2 Remove the is_dir check from the ClassLoader
refs #5786
2015-08-18 09:32:00 +02:00
Eric Lippmann ac99e54f17 Fix PHPDoc in ClassLoader
refs #5786
2015-08-18 09:27:34 +02:00
Eric Lippmann a382a563d5 Move Loader::__destruct to the bottom of the method list
refs #5786
2015-08-18 09:10:23 +02:00
Eric Lippmann 13fc7e16f2 Rename Loader to ClassLoader
refs #5786
2015-08-18 09:06:58 +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
Eric Lippmann b6fdbf055e Remove unnecessary pass by refenrece in the loader
refs #5786
2015-08-17 14:35:35 +02:00
Eric Lippmann 7563a7a0ba Rename Loader::unRegister() to Loader::register() 2015-08-17 14:34:39 +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 1e1d4531c6 Register the controller namespace
refs #5786
2015-08-17 13:31:26 +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 d4de7c0519 lib: Make Loader::registerNamespace() fluent
refs #5786
2015-08-17 13:29:15 +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 59e7731efb RepositoryQuery: Implement interface FilterColumns
refs #9029
2015-08-13 14:21:39 +02:00
Johannes Meyer bcdb670f5c Introduce interface Icinga\Data\FilterColumns
refs #9029
2015-08-13 14:21:11 +02:00
Johannes Meyer 38622e96d5 Repository: Allow implementations to provide search columns
refs #9029
2015-08-13 14:20:21 +02:00
Johannes Meyer 4b6849eea7 Repository: Introduce query column blacklists
We can no longer use $filterColumns to blacklist query columns so
there is now another set of column names required to achieve this.

refs #9029
2015-08-13 14:06:27 +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 1495cf5d04 Merge branch 'bugfix/icingacli-no-request-object-9375'
fixes #9375
2015-08-11 09:20:59 +02:00
Matthias Jentsch 438f2650db Conform to coding guidelines
Use exclusively getters and setters for accessing class variables. Add better documentation to INI parser and writer classes.
2015-08-10 15:15:40 +02:00
Matthias Jentsch fe805c82ca Support multi line values in INI files 2015-08-10 15:15:40 +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
Eric Lippmann b0a75dd89b lib: Fix PHPDoc in ConfigObject 2015-08-10 13:25:08 +02:00
Johannes Meyer 282aaa6e5b Load additional static files for modules, really
Since we're only processing the config script upon calling
Module::hasJs/Css() if no module.js or module.css exists,
we need to ensure that it's processed when calling
Module::getJS/CssFiles().

refs #9702
2015-08-10 10:00:02 +02:00
Matthias Jentsch aa3cc9847d Fix issue that bricked the dashboard when quotes in dashlets
Escape more special chars in IniWriter, support reading escaped readers in IniParser and add tests for all important escape cases.
2015-08-07 12:55:19 +02:00
Matthias Jentsch 308c8ccf79 Fix issue that caused exceptions when using sections with trailing or leading whitespaces
Trim all incoming section identifier to prevent ambiguities between parsd sections and input sections.
2015-08-07 09:26:50 +02:00
Matthias Jentsch eebd8be746 Prevent configuration changes that would break PHP lib ini parser 2015-08-06 17:39:46 +02:00
Matthias Jentsch 9b373e9d10 Fix issue that caused IniWriter to fail on empty configs 2015-08-06 17:21:52 +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
Johannes Meyer 712d545f48 Module: Allow to define additional Javascript files
refs #9702
2015-08-06 15:10:54 +02:00
Johannes Meyer 51aa22d429 Module: Allow to define additional CSS/LESS files
refs #9702
2015-08-06 15:10:33 +02:00
Johannes Meyer 59ef54314a Extend the Web bootstrapper from the EmbeddedWeb bootstrapper
In a embedded web environment we may also need a request and response.

refs #9702
2015-08-06 15:08:41 +02:00
Johannes Meyer 0695d5900c Merge branch 'master' into feature/less-costly-count-queries-for-history-views-8615 2015-08-06 13:11:28 +02:00
Eric Lippmann 528382098e db: Respect group by for count queries, really
Missed that Johannes introduced DbQuery::getGroup().

refs #9828
2015-08-06 10:46:40 +02:00
Johannes Meyer 7662545c2a SimpleQuery: Provide a getter for the current iterator position
refs #8615
2015-08-06 09:39:23 +02:00
Matthias Jentsch 60675979bc Merge branch 'bugfix/creating-dashlet-with-parentheses-9530'
fixes #9530
2015-08-05 18:22:29 +02:00
Matthias Jentsch f8e2dc850c Drop IniEditor and clean up IniWriter
Replace the ini editor code with a new parser implementation that manipulates a DOM. Do not support capabillities that are no longer needed, like nested configurations, section inheritance, section-less properties.
2015-08-05 18:10:17 +02:00
Johannes Meyer a0d5509f19 DbQuery: Drop attribute $maxCount
It's not used anywhere and completely useless the way it's implemented.
2015-08-05 10:54:14 +02:00
Eric Lippmann 064e821383 lib: Fix wrong count for queries having a group by clause
fixes #9828
2015-08-04 16:25:34 +02:00
Matthias Jentsch 28e1b3119c Remove unused "extends"-code 2015-08-04 15:14:10 +02:00
Alexander Fuhr c3fe14a205 Modules/Manager: Fix that non-existent modules can be disabled
fixes #9374
2015-08-04 14:34:30 +02:00
Matthias Jentsch 7095ad5bc7 Improve ini editor and dashlet input validation 2015-08-04 13:23:30 +02:00
Matthias Jentsch d88c628b6b Escape section names before applying regex
refs #9530
2015-08-04 13:14:46 +02:00
Johannes Meyer d1917ad2b4 Merge branch 'master' into bugfix/do-not-use-count-queries-for-emptiness-checks-9632
Conflicts:
	modules/monitoring/application/views/scripts/service/history.phtml
2015-08-03 16:46:27 +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
Johannes Meyer 9a0e47a3e1 SimpleQuery: Add method hasResult()
refs #9632
2015-08-03 14:49:33 +02:00
Johannes Meyer dbc2f98053 SimpleQuery: Initialize self::$iteratorPosition as late as possible
refs #9632
2015-08-03 14:09:55 +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