Commit Graph

1183 Commits

Author SHA1 Message Date
Johannes Meyer 9c5d44caf0 Fix that webkit submits datetime values not according to RFC 3339
That's actually more of a workaround instead of a fix as the bug itself
is part of webkit, not Icinga Web 2.

fixes #8457
2015-02-17 12:50:11 +01:00
Alexander Klimov 43691f6612 Drop BasketAction as it's not used anywhere 2015-02-16 14:37:54 +01:00
Alexander Fuhr 7be134a774 Merge master fixed conflicts 2015-02-16 11:24:15 +01:00
Johannes Meyer 5321c2f9e5 Mute icons properly using the new automatic mechanisms of our view helpers
refs #8360
2015-02-16 10:52:42 +01:00
Johannes Meyer 243bc6ec0c Make the view helpers qlink, img and icon handle aria-tags automatically
refs #8358
refs #8360
2015-02-16 10:26:03 +01:00
Alexander Fuhr 2112676594 Implement hidden accessible control for auto refresh on the page
refs #7945
2015-02-13 14:34:29 +01:00
Marius Hein ce3a564de7 Header: Add header to tabs extension
refs #7976
2015-02-13 11:26:09 +01:00
Alexander Fuhr b9c9f564ec Add editable auto_refresh parameter to the user preferences
refs #7945
2015-02-12 15:12:10 +01:00
Johannes Meyer 9232c5cf22 Add aria-hidden="true" to all icons that exist only for design reasons
refs #8360
2015-02-12 13:49:31 +01:00
Marius Hein 09349288e1 Merge branch 'master' into feature/skip-content-7933 2015-02-12 13:14:56 +01:00
Marius Hein b6daf2237d Menu: Add html5 nav element to menu
refs #7933
2015-02-12 13:14:01 +01:00
Johannes Meyer 9e933d835d Add Icinga\Web\Form\ErrorLabeller
refs #8415
2015-02-12 09:11:03 +01:00
Johannes Meyer aa473fb8cf Standardize path validators according to Zend's validators
refs #8415
2015-02-12 09:11:02 +01:00
Johannes Meyer a2f3e7d4f7 Display an error in case a user inputs an invalid formatted datetime string
resolves #7975
2015-02-12 09:11:02 +01:00
Johannes Meyer a630db93e8 Show proper examples in case a user doesn't enter a permitted/correct val
resolves #7973
2015-02-12 09:11:02 +01:00
Johannes Meyer eb3063e36d Form: Add prefix path for custom form validators
refs #8415
2015-02-12 09:11:02 +01:00
Eric Lippmann 97261cd8bd lib: Do not setLayout('pdf') twice 2015-02-11 15:15:18 +01:00
Eric Lippmann ec8a89b96e lib: Add recursive iterator over a DOMNode 2015-02-11 13:20:01 +01:00
Johannes Meyer c5b6d7ee41 Ensure that all required form elements are marked as such in HTML markup
refs #8349
2015-02-05 13:15:18 +01:00
Eric Lippmann 6bae2e0a53 Note that our license is GPL v2 or any later version in our license header instead of pointing to the license's URL 2015-02-04 10:52:27 +01:00
Eric Lippmann 49e96b7200 Revert "monitoring/security: Guard delete comment action"
This reverts commit 4ef5f0c813.
2015-02-03 16:51:00 +01:00
Matthias Jentsch e8466ec7be Fix inlinePie borders and SVG sizes
Add white border to inline piecharts in the list, to make them more visible on mouse hovering. Set a default image size for the loaded svg charts.
2015-02-03 16:46:12 +01:00
Eric Lippmann 5b4fab0750 Add license header
This time without syntax errors hopefully :)
2015-02-03 16:27:59 +01:00
Eric Lippmann 5fa2e3cfdc Revert "Add license header"
This reverts commit 338d067aba.
2015-02-03 16:16:26 +01:00
Eric Lippmann 4ef5f0c813 monitoring/security: Guard delete comment action 2015-02-03 16:11:56 +01:00
Eric Lippmann 338d067aba Add license header
fixes #7788
2015-02-03 15:51:04 +01:00
Eric Lippmann 08fd000496 Remove any topbar related stuff
It's not used anywhere.
2015-02-03 12:42:02 +01:00
Markus Frosch cb08b25e17 Remove executable flags from some PHP libraries
Note: dompdf.php is actually a CLI script, but has no shebang and is not used
in Icingaweb2.

Fixes #8345
2015-02-03 10:50:50 +01:00
Thomas Gelf f8c5bf6819 Web\Hook: support hook base classes in modules
refs #8207
2015-02-02 17:44:29 +01:00
Thomas Gelf 3596e7ce62 FilterEditor: use preserved params
fixes #7904
2015-02-02 17:07:54 +01:00
Eric Lippmann 9d6906bd64 Save user dashboards to Icinga Web 2's configuration directory
fixes #8056
2015-02-02 15:06:29 +01:00
Eric Lippmann 5a1ebf9c89 lib: Implement Tab::getUrl() 2015-02-02 14:16:26 +01:00
Johannes Meyer bf470125c3 Merge branch 'master' into feature/create-missing-directories-when-creating-inis-8219
Conflicts:
	modules/monitoring/library/Monitoring/MonitoringWizard.php
2015-01-30 16:21:42 +01:00
Eric Lippmann df29dd0e7c Implement Form::hasPermission() and Form::getPermission() 2015-01-30 09:35:01 +01:00
Eric Lippmann 2faf5f0ca1 Throw SecurityException in ActionController::assertPermission() 2015-01-30 09:34:19 +01:00
Johannes Meyer 63305fdf9a Add Icinga\Application\Config::saveIni()
Simplifies saving INI files. Icinga\File\Ini\IniWriter does already require an
instance of Icinga\Application\Config so it's obvious to give "Config" the
task to initialize the writer.. We do also have a central place to handle
creating missing ancestor directories now.

refs #8219
2015-01-30 09:32:08 +01:00
Marius Hein dd483d98df LessCompiler: Remove useless argument
refs #6417
2015-01-29 14:04:47 +01:00
Marius Hein c1df1f822e ifont: Reorganize files and drop use less attributes
fixes #6417
2015-01-29 11:25:37 +01:00
Marius Hein 4abb30e55b Merge branch 'master' into bugfix/ie8-fixes-6417 2015-01-28 17:08:56 +01:00
Marius Hein 9d05190517 ifont: Fix empty font glyphs for IE8
The embedded font is included inline in the stylesheets. IE falls back and
tries to load one of the other font sources which was not exported by the web
server. This fix moves the fontello directory to public and add add a
prefix path to the embedded stylesheet.

refs #6417
2015-01-28 17:06:55 +01:00
Johannes Meyer 6fde4eec30 Show all tabs except "Add to Dashboard" when issuing a command
refs #8279
2015-01-28 12:50:29 +01:00
Eric Lippmann cd8822ceff lib: Add View::hasPermission() 2015-01-23 09:36:45 +01:00
Eric Lippmann 6da3cb8403 lib: Reorder auth related functions in the ActionController 2015-01-23 09:36:05 +01:00
Eric Lippmann ef0a7c0e77 Revert "Security: Temporary grant all permissions"
This reverts commit 9b7e75a616.

Patching function hasPermission is not enough. A fix will follow.
2015-01-22 17:11:53 +01:00
Eric Lippmann 0f13c0428c Controller: Introduce method assertHttpMethod()
We have actions where only certain HTTP methods, e.g. POST are allowed but they are not restricted yet.
Controller::assertHttpMethod() takes a number of allowed HTTP methods and responds with HTTP 405 in case
the current request's method is not one of the given methods.
2015-01-22 15:47:16 +01:00
Eric Lippmann 9b7e75a616 Security: Temporary grant all permissions
We'll introduce permissions and restrictions in the next hours. Because our web setup
does not configure permissions yet, all permissions are granted for all users from now on.
2015-01-22 15:20:38 +01:00
Johannes Meyer 94d727dbb8 Fix error in Icinga\Web\Form in case the label decorator is missing
Zend_Form::getDecorator() returns false instead of null in case the
decorator is not found.
2015-01-22 09:21:50 +01:00
Johannes Meyer 10eacf9682 Allow jumping to already visited pages
This was already possible using just the base implementation of Wizard
but since WebWizard has optional pages it did not work with pages that
had such an optional page as previous page.

refs #8191
2015-01-21 15:39:06 +01:00
Johannes Meyer 64a8006973 Add Wizard::isComplete()
Wizard::isFinished() is not applicable in case a wizard is a child of another
wizard. Wizard::isComplete() fulfills the need to check whether a user went
through a wizard entirely.

refs #8191
2015-01-21 13:56:53 +01:00
Johannes Meyer 1f6a81aefb Add Wizard::skipPage()
Required to not to duplicate code in custom wizards and to avoid errors
when detecting the direction.

refs #8191
2015-01-21 13:07:08 +01:00
Johannes Meyer 2288e2a687 Add support for nested wizards
The amount of vertical dimensions is not limited as well as the location a
nested wizard can occur in the main wizard's order. In case a custom
implementation is used as nested wizard, all core functionalities are
still being utilized.

refs #8191
2015-01-20 15:54:14 +01:00
Eric Lippmann a1a36301fe View: Add string helpers 2015-01-19 14:20:57 +01:00
Eric Lippmann 50bbf77d0c Fix module domain detection in Form::getTranslationDomain()
The usage of preg_replace had two errors:
1) The regular expression was wrong
2) $matches[0] always contains the full matched string, not the first parenthesized subpattern

The correct version of preg_replace would've been:

if (preg_match('/^Icinga\\\\Module\\\\([A-Za-z]+)\\\\/', get_called_class(), $matches) === 1) {
    return strtolower($matches[1]);
}

But since there's no benefit of using a regular expression here except less speed, I replaced it
with using explode.

refs #7551
2014-12-30 10:08:33 +01:00
Matthias Jentsch a1950aabba Fix some obsolete or wrong docstrings 2014-12-29 16:27:28 +01:00
Matthias Jentsch 4cf8da4bb9 Do not focus logout menu item after a recurring login
Implement new MenuItemRenderer made for pages that are not part
of the regular site navigation and should trigger a complete site reload
instead of handling it via XHR.
2014-12-29 16:20:05 +01:00
Boden Garman 5e40ce2088 Only check the session save path is writable if the session handler is 'files'
fixes #8053

Signed-off-by: Eric Lippmann <eric.lippmann@netways.de>
2014-12-29 09:37:47 +01:00
Eric Lippmann 7f5ba135ee Revert "Relax session storage check to the `files' save handler"
This reverts commit f7d11ce11f.

Sorry mate but a guy on GitHub was faster ;)

refs #8053
2014-12-29 09:37:07 +01:00
Matthias Jentsch 41c101d99f Use neutral default color in perfdata piecharts
If nothing is known about the state of the monitoring object, the piecharts should neither indicate OK nor Critical.
2014-12-23 16:12:25 +01:00
Matthias Jentsch cda5a6a903 Streamline chart implementation
Define sparkline layout through CSS class and remove label/tooltip formatting.

fixes #7077
2014-12-23 15:26:45 +01:00
Matthias Jentsch 64a2acd12e Do not display labels for single data sets in perfdata piecharts
Display generic chart titles for the whole piechart that only contain title and percentage and don't style perfdata piecharts using HTML properties.

refs #7077
refs #6200
refs #7304
2014-12-23 15:14:17 +01:00
Johannes Meyer f7d11ce11f Relax session storage check to the `files' save handler
fixes #8053
2014-12-22 11:02:48 +01:00
Johannes Meyer 6d263ae316 Do NOT fetch the translation domain from the request in Form::translate(..)
It might be the case that a module is using a library form...

refs #7551
2014-12-19 13:07:51 +01:00
Johannes Meyer cf43b81400 Use the class namespace instead of the request in Form::translate(Plural)
refs #7551
2014-12-19 12:08:54 +01:00
Johannes Meyer e5d2d4cec2 Add module-aware Form::translate and Form::translatePlural
refs #7551
2014-12-19 11:29:24 +01:00
Eric Lippmann 4dfac28393 lib: Fix PHPDoc of Form::setOnSuccess() 2014-12-18 17:21:06 +01:00
Eric Lippmann 9647293f1b Add our own dispatcher prototype for namespaced controllers
refs #5786
2014-12-18 17:11:30 +01:00
Johannes Meyer 7710fd7b0e Hide unsupported export formats
refs #8112
2014-12-18 16:20:41 +01:00
Johannes Meyer 3fde78f2b3 Enable the dompdf float support and fix our list's layout 2014-12-15 13:56:19 +01:00
Johannes Meyer bca28a5ae2 Display inline pie-charts also in views exported to PDF
fixes #6463
2014-12-15 13:55:20 +01:00
Thomas Gelf cddb68bffb ActionController: shift global parameters globally 2014-12-03 10:40:48 +01:00
Alexander Fuhr 1e8523aae6 Add Cookie helper class for cookie support detection
refs #7383
2014-11-26 14:24:19 +01:00
Eric Lippmann d41602a67c Rearrange imports in Menu.php 2014-11-25 16:11:01 +01:00
Eric Lippmann eed10159fd Menu: Don't render sub menus when a dot appears in the label
I guess this was intended to be a feature. Turns out to be a bug though :)

fixes #7772
2014-11-21 17:39:18 +01:00
Eric Lippmann d84318d8b8 Fix Menu's PHPDoc
Don't use @var and don't use @return self for fluent interfaces.
2014-11-21 17:13:39 +01:00
Eric Lippmann 99ad72a0da Remove the Help decorator 2014-11-20 13:50:40 +01:00
Marius Hein bdc0321f62 Dashboard: Fix wrong URL
refs #7751
2014-11-20 13:41:12 +01:00
Eric Lippmann bb664a87ea Fix ugly positioning of help icons
If an element has a description, the description is now added to the element's label as title.
The CSS class has-feedback ensurers that the help icon is rendererd. If everything is working fine,
I'll the remove the super duper Help decorator.
2014-11-20 13:25:58 +01:00
Marius Hein e600dc8adb Dashboard: Rename component to dashlet
refs #7751
2014-11-20 12:08:50 +01:00
Thomas Gelf fa44197947 Dashboard: fix complex urls 2014-11-19 16:45:15 +01:00
Eric Lippmann 2830b13082 Merge branch 'master' into feature/security-gui-5647 2014-11-19 16:31:26 +01:00
Marius Hein 32af89e0a7 Merge remote-tracking branch 'origin/master' into bugfix/broken-badges-7736 2014-11-19 15:28:27 +01:00
Eric Lippmann a2818bd937 Merge branch 'master' into feature/security-gui-5647 2014-11-19 14:13:26 +01:00
Matthias Jentsch 48699cacf4 Fix navigation layout in firefox and chrome
Hover css still broken

refs #7736
2014-11-19 12:15:18 +01:00
Marius Hein dbc1b1ce3e Merge remote-tracking branch 'origin/master' into feature/add-to-dashboard-4537 2014-11-19 11:48:22 +01:00
Marius Hein a40f357f3c Dashboard: Show error message when can not write to file
refs #4537
2014-11-19 11:47:31 +01:00
Thomas Gelf 47d81ccf7b css: allow to override vendor styles
* no more hovered icon underline
* simulate padding for headers in .controls
2014-11-19 10:33:57 +01:00
Marius Hein a5411c7a1c Dashboard: Fix reading and disabled system dashboards
refs #4537
2014-11-19 10:33:41 +01:00
Marius Hein cfb0ca1be0 Merge remote-tracking branch 'origin/master' into feature/add-to-dashboard-4537 2014-11-19 10:21:50 +01:00
Thomas Gelf 704a87c0f2 FilterEditor: make active element fit hover colors 2014-11-19 10:07:30 +01:00
Thomas Gelf eb823c4045 Widget\FilterEditor: fix root element stripping 2014-11-19 09:53:25 +01:00
Thomas Gelf c6ffdb3862 Widget\FilterEditor: fix failing parameter checking 2014-11-19 09:44:47 +01:00
Marius Hein 5ace5fd2dc Dashboard: Change icons
refs #4537
2014-11-18 17:47:57 +01:00
Eric Lippmann aef81a56d6 Merge branch 'master' into feature/security-gui-5647
Conflicts:
	library/Icinga/Application/Config.php
	library/Icinga/File/Ini/IniWriter.php
	library/Icinga/Web/Form.php
	library/Icinga/Web/Menu.php
2014-11-18 17:08:25 +01:00
Eric Lippmann f2717b6d26 Introduce Form::setOnSuccess() in favor of overriding the constructor
Zend_Form uses setters for options if a respective setter method exists.
It is not necessary to override the constructor for introducing new options.

Conflicts:
	library/Icinga/Web/Form.php
2014-11-18 17:02:39 +01:00
Marius Hein 10cfecf2ec Merge remote-tracking branch 'origin/master' into feature/add-to-dashboard-4537
Conflicts:
	application/controllers/DashboardController.php
	library/Icinga/Web/Form.php
	library/Icinga/Web/Widget/Dashboard.php
2014-11-18 16:36:42 +01:00
Bernd Erk 07c0180b1c Merge branch 'master' into feature/redesign-7144 2014-11-18 16:36:19 +01:00
Marius Hein 80871313e4 Dashboard: Remove actions
refs #4537
2014-11-18 16:28:04 +01:00
Johannes Meyer 1cbdd2b51c Fix that hidden elements are getting ovewritten when validating a form
This works by "disabling" hidden elements which causes the browser not
to submit them. Due to a bug in Zend we need to manually ensure that
Form::isValid does not overwrite the value of disabled elements with null.

fixes #7717
2014-11-18 15:06:46 +01:00
Johannes Meyer 760bf1a020 Disable partial validation of forms by default 2014-11-18 15:06:46 +01:00
Alexander Fuhr 38ef33276a Replace description decorator through help decorator
refs #7696
resolves #7696
2014-11-18 14:58:54 +01:00
Alexander Fuhr 4a4fbaee8e Add Help decorator for icon help description
refs #7696
2014-11-18 14:58:05 +01:00
Johannes Meyer c288a68ed5 Merge branch 'master' into bugfix/drop-zend-config-7147
Conflicts:
	application/forms/LdapDiscoveryForm.php
2014-11-18 13:21:18 +01:00
Johannes Meyer 7621f6642d Adjust usages of Icinga\Application\Config
refs #7147
2014-11-18 13:11:52 +01:00
Marius Hein 8805e4af4b Merge remote-tracking branch 'origin/master' into feature/add-to-dashboard-4537 2014-11-18 12:52:02 +01:00
Marius Hein 3e58ec2530 Dashboard: Use new controller actions
refs #4537
2014-11-18 12:51:28 +01:00
Eric Lippmann f9d7062476 Form: Add our element and decorator paths instead of calling createIcingaFormElement
createIcingaFormElement lacks all stuff applied in Zend_Form::createElement().
2014-11-18 12:51:06 +01:00
Gunnar Beutner 9a79cd58e9 Re-enable auto-refresh 2014-11-18 10:48:33 +01:00
Eric Lippmann e3629a7f41 Number element: Use is_numeric in favor of Zend's float validator
The float validator uses Zend_Locale which we have stripped in our vendor library thus leading to erroneous validation.
Further we'll use php-intl instead of Zend_Locale one day :)

fixes #7692
2014-11-18 10:31:40 +01:00
Marius Hein cbcd276b44 Dashboard: Rewrite forms and controller [WIP]
refs #4537
2014-11-18 10:04:41 +01:00
Eric Lippmann 47414f3528 Introduce Form::setOnSuccess() in favor of overriding the constructor
Zend_Form uses setters for options if a respective setter method exists.
It is not necessary to override the constructor for introducing new options.
2014-11-18 10:00:58 +01:00
Marius Hein bec0085683 Dashboard: Add urls to any dashboard (form)
refs #4537
2014-11-18 09:59:24 +01:00
Marius Hein 769e8f2636 Dashboard/Component: Add remove link
refs #4537
2014-11-18 09:59:23 +01:00
Marius Hein b679c1e770 Dashboard: Refactor search/replace implementation
refs #4537
2014-11-18 09:59:23 +01:00
Marius Hein 979bec24a5 Dashboard: Write user dashboards to disk
refs #4537
2014-11-18 09:59:23 +01:00
Marius Hein f6a2f6515d Dashboard: Introduce user flag widget
Fix: Do not render disabled components.

refs #4537
2014-11-18 09:59:23 +01:00
Marius Hein af799d42dc Widget/Dashboard: Cleanup object and remove unused stuff
refs #4537
2014-11-18 09:59:23 +01:00
Bernd Erk f83bcbfd2b updates current font set and changes service and reporting icons 2014-11-17 17:08:08 +01:00
Bernd Erk 878aa81d98 Changes conf icon in menu 2014-11-17 17:08:08 +01:00
Thomas Gelf 0cea370a5c Widget\Tab: fix tagParams check breaking tabs 2014-11-16 19:37:11 +01:00
Thomas Gelf 2e1cc8ed35 Widget\Tabs: use icon font 2014-11-16 14:41:22 +01:00
Thomas Gelf 9e0e3f12e3 FilterChain: addFilter should return itself 2014-11-16 02:49:33 +01:00
Thomas Gelf 387928de02 Filter: support 'q' searches
This makes the overall search play nice with the FilterEditor and
reduces code in the action controller. Still some work to do, but
seems to be pretty fine right now.
2014-11-16 02:40:28 +01:00
Thomas Gelf 5630374058 FilterEditor: handle ignoreParams correctly 2014-11-16 00:19:28 +01:00
Thomas Gelf e0bf021fb9 FilterEditor: apply submitted changes do filter 2014-11-15 23:49:37 +01:00
Thomas Gelf b1f82bd025 FilterEditor: add request handle support 2014-11-15 23:49:06 +01:00
Thomas Gelf 7da87b7341 FilterEditor: split render function and clean up 2014-11-15 23:48:17 +01:00
Thomas Gelf 0e4a8575a9 FilterEditor: new helper for text inputs 2014-11-15 23:46:36 +01:00
Thomas Gelf 1c5cba9ddf FilterEditor: don't sort all select's
Columns are now sorted separately, so that's fine
2014-11-15 23:45:03 +01:00
Thomas Gelf 2eb2fa51da FilterEditor: cache available columns 2014-11-15 23:43:13 +01:00
Thomas Gelf 1d4ea88251 FilterEditor: clean up selectColumn 2014-11-15 23:42:15 +01:00
Thomas Gelf e6ded2eb3c FilterEditor: use new id helper in selectSign 2014-11-15 23:39:21 +01:00
Thomas Gelf 934a0a4914 FilterEditor: helper function for op dropdown 2014-11-15 23:38:36 +01:00
Thomas Gelf c700e86008 FilterEditor: add helper rendering new filters 2014-11-15 23:37:31 +01:00
Thomas Gelf 711b1a5224 FilterEditor: elementId helper method for inputs 2014-11-15 23:34:21 +01:00
Thomas Gelf 7993ad2fde FilterEditor: add a couple of link generators
remove/add/strip/cancel
2014-11-15 23:32:38 +01:00
Thomas Gelf d6e3f06997 FilterEditor: readability 2014-11-15 23:31:17 +01:00
Thomas Gelf 4a38c069f3 FilterEditor: do not export removal function 2014-11-15 23:30:06 +01:00
Thomas Gelf 8858069514 FilterEditor: addTo method for special operations
Removed obsolete mark function
2014-11-15 23:27:58 +01:00
Thomas Gelf ee16391720 FilterEditor: no title, add cancel button 2014-11-15 23:24:55 +01:00
Thomas Gelf dcc0c213b2 FilterEditor: add redirect support
Not the cleanest way, could be improved
2014-11-15 23:18:50 +01:00
Thomas Gelf ac483a0fe6 FilterEditor: add compact search render support
We show the search box and a filter preview while not modifying the
filter
2014-11-15 23:11:55 +01:00
Thomas Gelf 44d5ee8fa0 FilterEditor: make constructor parameter optional
...and use new setters
2014-11-15 23:02:38 +01:00
Thomas Gelf c5ca3b633c FilterEditor: allow additional parameter control
We may want to keep additional parameters in our url and ignore other
ones when the filter changes
2014-11-15 22:57:25 +01:00
Thomas Gelf 269f4b4c83 FilterEditor: allow to set the query from outside
Query will be used to provide a column list
2014-11-15 22:55:26 +01:00
Thomas Gelf 118abbe980 FilterEditor: url-setter and protected lazy-shortcut 2014-11-15 22:54:40 +01:00
Thomas Gelf e75d0aa10e FilterEditor: add getter and setter for Filter
We will shift quite some logic over here
2014-11-15 22:52:55 +01:00
Thomas Gelf a75bfd1dfb FilterEditor: add failsafe string cast 2014-11-15 22:50:35 +01:00
Thomas Gelf 0fd4a094ea Web\Request: the request should know the URL 2014-11-15 22:40:29 +01:00
Thomas Gelf 2ecdfefa85 Widget\Tabs: use icon for dropdown tabs 2014-11-15 22:39:42 +01:00
Thomas Gelf 39d7d13ddb AbstractWidget: default properties should be empty
Helps troubleshooting, getter would fail with a hard-to-track error
otherwise.
2014-11-15 16:54:59 +01:00
Thomas Gelf da47c7fc7e Merge remote-tracking branch 'origin/master' into feature/redesign-7144 2014-11-14 21:32:57 +01:00
Johannes Meyer ddf2ef5cc9 Remove $request parameter from Form::onSuccess and Form::onRequest
fixes #7552
2014-11-14 14:59:29 +01:00
Eric Lippmann 49d66a7b73 Use lessphp from the include path
refs #6165
refs #6166
2014-11-14 13:27:02 +01:00
Eric Lippmann 6624b764cf Use JShrink from the include path
refs #6165
refs #6166
2014-11-14 11:55:06 +01:00
Johannes Meyer 1c4a5ce86f Leave it up to Icinga\Web\Form to instantiate our own form elements 2014-11-14 10:15:27 +01:00
Johannes Meyer 872dce2208 Prefer form elements of Icinga\Web\Form\Element in Form::createElement 2014-11-14 10:15:27 +01:00
Thomas Gelf 69fdc6a329 Chart/InlinePie: smaller, white border for hover
I roughly changed the piechart defaults to their original (icon-like)
size. However, this is NOT how we should handle such changes. We MUST
be able to style them via CSS and get rid of that incredible amount of
HTML attributes.

I want to be able to set the height directly in CSS as em/px. And I want
also be able to set it to 100% and size the outer container.

refs #7077
2014-11-14 09:54:20 +01:00
Thomas Gelf d55c2a4c87 Widget\Filter*: fix parse error, replace minus 2014-11-13 21:47:40 +01:00
Bernd Erk 903219b302 Merge branch 'master' into feature/redesign-7144
Conflicts:
	library/Icinga/Web/Menu.php
	public/css/icinga/menu.less
2014-11-13 21:11:36 +01:00
Bernd Erk 20be45e8da Enable icon font 2014-11-13 20:08:58 +01:00
Bernd Erk 6201858a68 Merge branch 'master' into feature/redesign-7144 2014-11-13 17:47:26 +01:00
Eric Lippmann ac2ec83852 Merge branch 'master' into feature/localization-form-6073
Conflicts:
	library/Icinga/Application/ApplicationBootstrap.php
	test/php/library/Icinga/User/Store/DbStoreTest.php
2014-11-13 17:03:41 +01:00
Thomas Gelf f86d3e7636 Web\StyleSheet: PCRE problem workaround, PHP5.3.7
Lines with embedded fonts where too long for lessphp's PCRE matches
unless PHP 5.3.7
2014-11-13 16:35:26 +01:00
Thomas Gelf 28c239c6fd Web\Controller: initial commit
* This is the controller all modules should inherit from.
* We will flip code with the ModuleActionController as soon as a couple
  of pending feature branches are merged back to the master.
2014-11-13 15:42:25 +01:00
Thomas Gelf 1c0e427d3b Web\StyleSheet: compile webfont too
refs #6936
2014-11-13 15:41:13 +01:00
Thomas Gelf 50869c783d MonitoringMenuItemRenderer: webfont icon support
refs #6936
2014-11-13 15:30:00 +01:00
Thomas Gelf b16959bc44 Widget\Tab: support webfont icons
refs #6936
2014-11-13 15:22:47 +01:00
Thomas Gelf 29c7c2e707 Web\MenuRenderer: support webfont icons
refs #6936
2014-11-13 15:21:49 +01:00
Thomas Gelf 1aa8858dca helpers/icon: support webfont shortcuts
* set icon class instead of icon image if no such is given
* fix TODO: merge parameter classes

refs #6936
2014-11-13 15:17:36 +01:00
Bernd Erk ef2ec0442c Merge branch 'master' into feature/redesign-7144 2014-11-13 14:40:26 +01:00
Johannes Meyer 6be51d1565 Use Icinga\Web\Form\Element\Button instead of Zend's button
Due to a bug in Zend prior to 1.12.2 we need our own button implementation
to support earlier versions of the Zend Framework. The side effect is, that
this button can also be used as submit button for our forms as isChecked
will do its job now properly.
2014-11-13 14:26:12 +01:00
Bernd Erk ac8cc0613c Merge branch 'master' into feature/redesign-7144
Conflicts:
	application/views/scripts/authentication/login.phtml
	public/css/icinga/login.less
2014-11-12 17:21:54 +01:00
Eric Lippmann 75475b1684 Rename getBootstrapDirecory() to getBootstrapDirectory() 2014-11-12 17:14:43 +01:00
Eric Lippmann b27d1d0058 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 14:48:15 +01:00
Alexander Fuhr 993390941a Add user account menu and move logout and preferences inside it 2014-11-12 13:22:14 +01:00
Thomas Gelf 5851886877 Widget\Tab: no underlined space after icon 2014-11-12 11:30:06 +01:00
Johannes Meyer 62aacce469 Place the noscript button next to the element it is supposed to apply 2014-11-12 10:48:52 +01:00
Johannes Meyer 7aae291f69 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 10:08:28 +01:00
Thomas Gelf f24b0e2a4e MonitoringBackend: a few more places, doesn't hurt 2014-11-12 00:20:37 +01:00
Thomas Gelf 0992f6cc15 Monitoring/MenuRenderers: unify logic, perftuning
This reduces duplicate code, query will be fired only once right now.

fixes #7554
2014-11-11 21:50:49 +01:00
Eric Lippmann 8e3394fd55 Merge branch 'master' into feature/redesign-7144 2014-11-11 13:54:13 +01:00
Johannes Meyer 9d292269b1 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/Resource/LdapResourceForm.php
	test/php/application/forms/Config/Authentication/LdapBackendFormTest.php
2014-11-11 09:44:11 +01:00
Johannes Meyer 8f212018ec Move the setup wizard code to a dedicated module
refs #7163
2014-11-10 15:11:44 +01:00
Johannes Meyer 79493592bb Do not use Installer anywhere.
"It's setup."

refs #7163
2014-11-10 10:30:52 +01:00
Johannes Meyer 7b99b74ae1 Prefer Icinga\Application\Config instead of Zend_Config
refs #7147
2014-11-07 13:53:03 +01:00
Bernd Erk f9e8cc84b9 Design: headline and main menu 2014-11-06 00:09:14 +01:00
Eric Lippmann a06568ce41 security: Add menu entry for security
refs #5647
2014-11-04 16:19:20 +01:00
Eric Lippmann d2eddcbec6 Introduce Form::setOnSuccess() in favor of overriding the constructor
Zend_Form uses setters for options if a respective setter method exists.
It is not necessary to override the constructor for introducing new options.
2014-11-04 16:15:06 +01:00
Johannes Meyer 0db658b7f3 Fix that pgsql privileges were tested in case of mysql
refs #7163
2014-11-04 15:51:11 +01:00
Johannes Meyer 170ded6510 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	library/Icinga/Authentication/Backend/LdapUserBackend.php
	library/Icinga/File/Ini/IniWriter.php
2014-11-04 14:22:53 +01:00
Johannes Meyer 581935c26f Fix database setup and add support for the new schema
refs #7163
2014-11-04 13:51:15 +01:00
Johannes Meyer 805cb9f079 Do not report whether files were skipped because they already exist
I've removed the summary earlier as a user does not configure this in any
way so it's not necessary to show him what should had happened to files
as well.

refs #7163
2014-11-04 13:47:37 +01:00
Eric Lippmann ea1f51ad9a Use callable as type hint instead of Callback
PHP 5.4 introduces callable for type hinting and PSR-5 proposes callable.
2014-10-31 15:59:45 +01:00
Eric Lippmann 16352fc10c Move Logger to the Application namespace
fixes #7148
2014-10-31 10:27:17 +01:00
Johannes Meyer 538bc8aec8 Drop unused method parameter in DbTool::checkPrivileges 2014-10-30 15:08:04 +01:00
Johannes Meyer 521a36e0af Fix method documentation of DbTool::checkPgsqlPriv() 2014-10-30 15:07:33 +01:00
Johannes Meyer e58520c3e6 Drop irritating and redundant docblock warning 2014-10-30 15:06:57 +01:00
Johannes Meyer 1bd1b58d46 Drop unused use statement 2014-10-30 15:06:14 +01:00
Johannes Meyer 9cd4aeec06 Fix MySQL login creation in DbTool::addLogin()
refs #7163
2014-10-29 15:45:57 +01:00
Johannes Meyer 33a64eb55a Do not throw an exception in DbTool due to an implementation detail
Throwing exceptions due to failing logic which is purely an implementation
detail must not affect the calling code in any way.

refs #7163
2014-10-29 15:45:26 +01:00
Johannes Meyer 47d9426a1f Use a hardcoded path where to look for modules
refs #7163
2014-10-29 15:43:08 +01:00
Johannes Meyer 6a3244d8df Do not show a summary for the MakeDirStep
The user does not configure anything this step will process so there is no
need to show the user a summary about something he can't control.

refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer 83cfcef85c Add EnableModuleStep
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer a899070606 Move MakeDirStep to Icinga\Web\Setup
refs #7163
2014-10-29 08:38:59 +01:00
Matthias Jentsch 2e8c0cffe6 Check privileges of database user accounts before continuing with the setup
Implement owner and privilege checks for postgresql, and fix some errors in
existing MySQL privilege checks.

resolves #7389
2014-10-27 15:08:52 +01:00
Johannes Meyer 851682cf18 Make page count assertion more sensitive
refs #7163
2014-10-24 14:06:31 +02:00
Johannes Meyer 03bbc2e2e6 Use a dedicated method to clear a wizard's session
Simplifies session removal in case a sub-class of Icinga\Web\Wizard
requires special session handling

refs #7163
2014-10-24 13:55:41 +02:00
Johannes Meyer 216c072024 Implement installation routines modularly
This allows us to "merge" module installation
routines with our main installer routines.

refs #7163
2014-10-23 11:41:16 +02:00
Johannes Meyer a5b10235d2 Add more detail to error messages when token validation fails
refs #7163
fixes #7410
2014-10-21 16:10:21 +02:00
Johannes Meyer 9f127be1dc Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/General/LoggingConfigForm.php
2014-10-17 13:04:59 +02:00
Johannes Meyer d1ea7e87a2 Improve form styling slightly 2014-10-15 15:46:07 +02:00
Johannes Meyer 38ee467603 Fix that the session is written too early when post-dispatching 2014-10-15 13:15:30 +02:00
Johannes Meyer 2c09ca1623 Fix that retrieving notifications causes them to be dropped entirely
I've broke this when doing some improvements while being
brainless, obviously.
2014-10-15 13:14:51 +02:00
Johannes Meyer 5d44a005a0 Fix that notifications are not registered 2014-10-15 13:02:56 +02:00
Matthias Jentsch 937dbe2c15 Add missing close buttons to views without tabs 2014-10-14 17:54:52 +02:00
Johannes Meyer b5798331db Wrap form notifications in <p> by default, not <div> 2014-10-13 09:41:36 +02:00
Johannes Meyer 437b41c6c1 Merge branch 'master' into feature/setup-wizard-7163 2014-10-13 08:18:43 +02:00
Johannes Meyer ca6eca6b67 Quote database names, usernames and passwords when setting up the db
refs #7163
2014-10-09 16:02:18 +02:00
Johannes Meyer c3404fdc67 Support prepared statements in DbTool::exec and DbTool::query
refs #7163
2014-10-09 15:03:51 +02:00
Johannes Meyer f8f27e046d Ensure that we advance a wizard when pushing ENTER
refs #7163
2014-10-09 13:41:06 +02:00
Eric Lippmann cc61dc2b01 Form: Don't override Zend_Form::setDefaults()
fixes #7315
2014-10-08 17:43:28 +02:00
Johannes Meyer 1cbe2451a8 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/Resource/StatusdatResourceForm.php
2014-10-08 16:34:31 +02:00
Johannes Meyer 89ae05899b Query a particular login name and create database logins using the DbTool
refs #7163
2014-10-08 15:33:51 +02:00
Johannes Meyer abc34a5f1a Add database setup routines
refs #7163
2014-10-07 17:08:50 +02:00
Johannes Meyer b50c780bcf Let the setup's view scripts be a bit more generic
refs #7163
2014-10-06 16:04:58 +02:00
Johannes Meyer 83006c014c Wrap wizard buttons in a div
refs #7163
2014-10-06 11:07:21 +02:00
Eric Lippmann 2956d9e342 form: Correctly set our default element decorators 2014-10-06 10:42:24 +02:00
Eric Lippmann fa96a1cbbe Number: Extend our FormElement class 2014-10-06 10:21:17 +02:00
Eric Lippmann a3409b166d Note: Extend our FormElement class 2014-10-06 10:21:02 +02:00
Eric Lippmann 9be52a9148 DateTimePicker: Extend our FormElement class
fixes #7322
2014-10-06 10:20:26 +02:00
Eric Lippmann 9db76bf371 CsrfCounterMeasure: Save calls to `setRequired()' and `setIgnore()' 2014-10-06 10:19:36 +02:00
Eric Lippmann 8106fe4f79 form: Add `FormElement' as base class for our elements 2014-10-06 10:19:05 +02:00
Johannes Meyer a980184eb9 Move css instructions to dedicated stylesheet
refs #7163
2014-10-01 15:46:58 +02:00
Matthias Jentsch ed91e119d2 Add close-button to all containers
refs #6216
2014-10-01 14:51:51 +02:00
Johannes Meyer 8f79e0a713 Fix warning "references should be passed by variable only" 2014-10-01 09:17:48 +02:00
Johannes Meyer 08d259eccf Add database creation page
refs #7163
2014-10-01 09:16:53 +02:00
Eric Lippmann bbee06b57f form: Ignore note elments when retrieving values at form level 2014-10-01 08:18:34 +02:00
Johannes Meyer 7b01525456 Fix that navigation buttons have labels
refs #7163
refs #7320
2014-09-29 16:42:38 +02:00
Johannes Meyer 513d5e30a4 Merge branch 'master' into feature/setup-wizard-7163 2014-09-29 16:16:12 +02:00
Johannes Meyer ab8436dea8 Fix Icinga\Web\Form\Element\Note using its default decorators 2014-09-29 16:12:38 +02:00
Johannes Meyer cbadaa78d6 Merge branch 'master' into feature/setup-wizard-7163 2014-09-29 15:35:52 +02:00
Johannes Meyer 4a14dc5916 Add interface for setup wizards
refs #7163
2014-09-29 14:19:05 +02:00
Johannes Meyer 5d6391242c Add interface for installers
refs #7163
2014-09-29 14:18:50 +02:00
Johannes Meyer 929344e68b Add container to store and handle installation requirements
refs #7163
2014-09-29 12:25:29 +02:00
Johannes Meyer aa17f2828d Add utility to ease working with databases without the use of Zend
refs #7163
2014-09-29 12:24:56 +02:00
Johannes Meyer 7c53e6f7be Improve page permission handling
refs #7163
2014-09-29 11:31:59 +02:00
Johannes Meyer 5c13a19b1a Populate a wizard page in case the user moves backwards
refs #7163
2014-09-29 11:31:13 +02:00
Johannes Meyer 73b41769e7 __toString() should call __toString() as well if possible
There may be cases that an error occurs and another _toString()
implementation handles that appropriately. This is such a case.
2014-09-29 11:28:58 +02:00
Johannes Meyer 3107eb87bb Silence stat() call 2014-09-29 11:24:59 +02:00
Alexander Fuhr b2f12e1caa Revert "lib: Remove form element `Note'"
This reverts commit c21d7d1fdd.
2014-09-26 16:19:44 +02:00
Alexander Fuhr c8a24f72b8 Introduce getValue() in Preferences and fix the loading of values 2014-09-26 14:15:50 +02:00
Johannes Meyer 8e48853f4d Add Wizard
This is a container/controller for form based wizards. Can be used directly
or by using a subclass that allows for a more customized handling.

refs #7163
2014-09-24 10:46:36 +02:00
Johannes Meyer 028a6c442b Fix persisting notification messages in the session 2014-09-24 10:46:35 +02:00
Johannes Meyer 635b802a2b Add tests for hasChanged, set/getByRef and fix setByRef 2014-09-24 10:46:35 +02:00
Johannes Meyer 6f988cb94c Remove method write() from Icinga\Web\Session\SessionNamespace 2014-09-24 10:46:35 +02:00
Johannes Meyer c00dbf9f46 Write session on response
There should not be any necessity to write the session once changes are
being made to it. We now track whether changes were made and write
the session when responding to the user's request if so.
2014-09-24 10:46:35 +02:00
Johannes Meyer 7fcd665aaa Fix value invalidation in Icinga\Web\Session\SessionNamespace 2014-09-24 10:46:35 +02:00
Johannes Meyer efab6c7827 Add method set/getByRef to Icinga\Web\Session\SessionNamespace 2014-09-24 10:46:35 +02:00
Johannes Meyer c772787967 Re-add TokenValidator
refs #7163
2014-09-24 10:46:35 +02:00
Eric Lippmann cde3ec6bc8 Merge branch 'master' into bugfix/commands-6593
Conflicts:
	modules/monitoring/application/controllers/TimelineController.php
2014-09-23 22:54:17 -07:00
Alexander Fuhr 07a4b25560 Merge branch 'master' into bug/history-notification-time-format-6980 2014-09-23 11:38:24 +02:00
Alexander Fuhr e784aa34b6 Implement DateTimeRenderer and fix history time format
refs #6980
2014-09-23 11:36:09 +02:00
Matthias Jentsch 6c8f324dd4 Add filter widget to StateHistorySummary and fix some minor bugs
fixes #6979
2014-09-19 17:41:44 +02:00
Matthias Jentsch 4ce71ef2f2 Display a tooltip on days without events 2014-09-19 17:41:44 +02:00
Matthias Jentsch 6f1cb6f1f3 Adjust brightness for different event type colors 2014-09-19 17:41:44 +02:00
Matthias Jentsch 65203fddcf Add additional state history filters for time interval and event type 2014-09-19 17:41:44 +02:00
Matthias Jentsch ef2f332869 Do not refresh a container when form input was changed or a form element is focused
Listen for changes in form elements and abort all reloads that contain a form with
at least one changed form element. Do not refresh containers that contain a focused form
element, except of elements with autofocus, to preserve form elements with a dropdown.
Only focus autofocus elements when there is currently no other selection.

refs #7146
refs #5537
fixes #7162
2014-09-19 15:48:44 +02:00
Eric Lippmann 264d818133 Do not save config references in the `ActionController'
This is redundant because our `Config' class already caches loaded configs.
2014-09-19 14:44:21 +02:00
Eric Lippmann 119e23e79e Make `InlinePie's setters fluent 2014-09-19 14:43:25 +02:00
Eric Lippmann bea110d0c7 Fix `Form::isSubmitted()' for dynamic submit labels 2014-09-19 14:27:04 +02:00
Eric Lippmann 5b5f553d0d form: Fix dynamic submit label retrieval 2014-09-19 13:39:38 +02:00
Eric Lippmann c51b05296e Merge branch 'master' into bugfix/commands-6593 2014-09-19 13:18:47 +02:00
Eric Lippmann 3c9859a0f1 Call `Form::getSubmitLabal()' in `Form::addSubmitButton()'
This allows us to dynamically define submit labels in form subclasses.
2014-09-19 13:00:15 +02:00
Eric Lippmann 5ba96c32f9 `Form::setDefaults()' fix strict standards violation
Declaration of Icinga\Web\Form::setDefaults() should be compatible with that of Zend_Form::setDefaults().
2014-09-19 12:59:01 +02:00
Eric Lippmann 7eb51f6367 form/csrf: Set the csrf element decorators in the element not in the form 2014-09-19 12:57:53 +02:00
Eric Lippmann d091e2150c Fix `ActionController::prepareInit()' php doc 2014-09-16 18:43:14 +02:00
Alexander Fuhr b38ef9c0bd Implement plural and context based translation functionality
refs #6982
2014-09-16 15:19:23 +02:00
Eric Lippmann c21d7d1fdd lib: Remove form element `Note'
Zend already provides this.
2014-09-16 09:54:23 +02:00
Eric Lippmann 5c647719e4 lib/ModuleActionController: Fix stupid code 2014-09-16 09:29:03 +02:00
Eric Lippmann f8edb4f220 lib: Add method `ActionController::prepareInit()'
As it should not be required for controllers to call the parent's init() method, base controllers should use
prepareInit() in order to prepare the controller initialization.
2014-09-16 09:28:10 +02:00
Alexander Fuhr e2b5e05f21 Implement plural translation (testing) 2014-09-15 14:11:42 +02:00
Eric Lippmann 8bf66425d1 Merge branch 'master' into bugfix/commands-6593 2014-09-15 09:27:56 +02:00
Eric Lippmann 9e0d6657b7 Merge branch 'bugfix/rebuild-form-builder-5525' into bugfix/commands-6593
Conflicts:
	application/forms/Preference/GeneralForm.php
2014-09-15 09:27:07 +02:00
Alexander Fuhr f48094f01a Merge branch 'master' into feature/translation-plurals-6982 2014-09-15 08:34:19 +02:00
Matthias Jentsch 1932a912f8 Fix month-naming for different week arrangements
fixes #7179
2014-09-12 11:51:51 +02:00
Matthias Jentsch 6c3c466f92 Start history grid weeks at monday
Add configuration option for week-start and set the default to Monday.
2014-09-12 11:51:51 +02:00
Matthias Jentsch e42b7b3026 Display current weeks at the beginning of the history grid
fixes #7179
2014-09-12 11:51:51 +02:00
Thomas Gelf 8ceef96d28 Web\Hook: remove unused methods 2014-09-12 09:53:38 +02:00
Thomas Gelf 93777ac15e Web/Response: use & to encode XHR redirection URLs 2014-09-12 09:28:11 +02:00
Matthias Jentsch ad53f7ad3d Use EventEmitter class as a way to delegate events from behaviors to the dom 2014-09-12 09:09:21 +02:00
Thomas Gelf 0e926ba05e Revert "Revert "Web\Hook: register('grapher')
This reverts commit 65564cda65.

The test was wrong, not the code.
2014-09-12 09:02:23 +02:00
Alexander Fuhr 583fd46f15 Experimental Plural Translation Implementation
Personal BACKUP
2014-09-11 18:04:10 +02:00
Alexander Fuhr 65564cda65 Revert "Web\Hook: register('grapher') => GrapherHook"
This reverts commit 4a89c2e163.
2014-09-11 15:00:28 +02:00
Matthias Jentsch 9376ceed33 Add missing use-statement for Exceptions in MenuRenderer
fixes #7157
2014-09-10 17:12:19 +02:00
Matthias Jentsch f58da73e2d Move javascript behaviors into separate classes 2014-09-10 17:02:39 +02:00
Matthias Jentsch d99d50b3c4 Add stub for javascript behaviors 2014-09-10 17:02:38 +02:00
Thomas Gelf ea63dad087 viewHelpers: use the view
refs #7177
2014-09-10 16:56:26 +02:00
Thomas Gelf 631b3d9f6e viewHelpers: There is no $this, not before 5.4
refs #7177
2014-09-10 16:54:57 +02:00
Thomas Gelf c2fe0232ca helpers/attributes: escape value
refs #7177
2014-09-10 16:07:00 +02:00
Matthias Jentsch 27960fc628 Catch exceptions in MenuItemRenderers
fixes #7157
2014-09-10 14:38:11 +02:00
Johannes Meyer 83772c6684 Merge branch 'master' into bugfix/rebuild-form-builder-5525 2014-09-09 16:03:22 +02:00
Matthias Jentsch 71f55e388f Only display custom menu renders on XHR requests and not in regular HTML
The main navigation should be rendered without a working backend.

fixes #7143
2014-09-09 15:33:42 +02:00
Johannes Meyer e7c021845d Simplify subform usage
refs #5525
2014-09-09 15:00:33 +02:00
Johannes Meyer f7f6bcc447 Make Form base class more test friendly..
refs #5525
2014-09-09 09:31:15 +02:00
Johannes Meyer c8ce1088c9 Disable checking whether a form is sent when form identification is disabled
refs #5525
2014-09-09 09:30:33 +02:00
Matthias Jentsch a352131d65 Move charts.less into widgets.less
Don't use a separate less file for only two styles
2014-09-08 16:25:11 +02:00
Matthias Jentsch e8164c6da0 Show tooltips to describe menu badges 2014-09-08 10:38:02 +02:00
Eric Lippmann 0e7ca591ec Merge branch 'master' into bugfix/commands-6593
Conflicts:
	application/forms/Preference/GeneralForm.php
	application/views/helpers/FormDateTime.php
	modules/monitoring/application/forms/Command/CommandForm.php
2014-09-08 10:16:05 +02:00
Matthias Jentsch e39dd64a1b Fix layout of HistoryColorGrid
Use actual color for critical hosts and only display the first two letters of the weekday
2014-09-08 09:52:28 +02:00
Johannes Meyer 12b4865559 Fix incompatible declaration of Form::setDefaults()
PHP with strict standards: Declaration of Icinga\Web\Form::setDefaults()
should be compatible with that of Zend_Form::setDefaults()

refs #5525
2014-09-08 09:42:02 +02:00
Johannes Meyer 930e6e7d71 We shouldn't require Form::createElements() to return self
refs #5525
2014-09-08 09:24:53 +02:00
Johannes Meyer ae9e5a40cc Merge branch 'master' into bugfix/rebuild-form-builder-5525
Conflicts:
	application/forms/Preference/GeneralForm.php
2014-09-08 08:46:53 +02:00
Thomas Gelf 4a89c2e163 Web\Hook: register('grapher') => GrapherHook 2014-09-05 18:54:50 +02:00
Matthias Jentsch 51d14af154 Merge branch 'master' into feature/navigation-unhandled-badges-7114
Conflicts:
	library/Icinga/Web/Menu.php
2014-09-05 18:14:29 +02:00
Matthias Jentsch 19eca5f50b Show all unhandled host and services in a menu
Add the option to define custom renderers for menu items and implement renderers to
display all unhandled services and host in a badge in the navigation.

resolves #7114
2014-09-05 17:57:20 +02:00
Thomas Gelf 596800bd7d helpers/url: overwrite existing params 2014-09-05 17:56:55 +02:00
Thomas Gelf 4bb065d9bb Web\Menu: provide and render unique id
fixes #7083
2014-09-05 17:24:55 +02:00
Thomas Gelf b034028ff8 Menu: do not show application log when none exists
Added new functions to the logger to get rid of distributed logging config
"knowledge".

fixes #7062
fixes #7098
2014-09-05 15:31:30 +02:00
Marius Hein 3ce42489c6 Timezone detection: Client implementation
refs #6078
2014-09-05 15:24:13 +02:00
Thomas Gelf e205ca4d0b FilterWidget: remove icon titles
fixes #7105
2014-09-05 14:50:22 +02:00
Thomas Gelf 33d2175b77 Web\UrlParams: allow to merge single value 2014-09-05 13:35:51 +02:00
Thomas Gelf baa775dd74 Web\Url: document with() method 2014-09-05 11:40:43 +02:00
Thomas Gelf 1c2207f51d Web\Url: provide a with() function 2014-09-05 11:21:10 +02:00
Thomas Gelf 4c8407e2b6 Web\StyleSheet: outer #layout access for modules
fixes #7093
2014-09-05 10:56:26 +02:00
Thomas Gelf b14e7f5696 LessCompiler: remove obsolete cache-related comment 2014-09-05 10:56:25 +02:00
Johannes Meyer fc72ddfbc8 Adjust Preferences/GeneralForm to use handleRequest() &. Co.
refs #5525
2014-09-05 10:21:24 +02:00
Johannes Meyer d021747bde Fix form widgets
refs #5525
2014-09-05 09:17:09 +02:00
Johannes Meyer 8846f17ae1 Make it possible to disable form identification
refs #5525
2014-09-05 09:16:09 +02:00
Alexander Fuhr ba623d0544 SearchDashboard: adjust SearchDashboardTest and rename searchQuery to searchString 2014-09-04 22:54:41 +02:00
Thomas Gelf 0f7f2f2d8b SearchDashboard: rename ::load() to ::search()
Function signature didn't match parent factory function

fixes #7081
2014-09-04 19:35:31 +02:00
Thomas Gelf 0f8d5bddba Web\Menu: make use of Web\Url
refs #7083
2014-09-04 19:18:09 +02:00
Thomas Gelf f91892cb80 Web\Url: add matches() function
fixes #6992
2014-09-04 18:46:58 +02:00
Alexander Fuhr e4d1143870 Add SearchDashboardTest 2014-09-04 18:31:08 +02:00
Alexander Fuhr 1eacde0233 Implement modules self provided search configuration
refs #6495
2014-09-04 16:31:10 +02:00
Marius Hein c8eaf66823 GrapherHook: Rework hook
refs #6932
2014-09-04 14:00:48 +02:00
Marius Hein 4fb47ef768 Hook classes: Add class suffix if not exist
refs #7066
refs #7067
refs #7068
2014-09-04 14:00:48 +02:00
Eric Lippmann c3c0043307 Merge branch 'master' into bugfix/commands-6593 2014-09-03 23:23:20 +02:00
Eric Lippmann a4da3b61b3 Merge branch 'bugfix/rebuild-form-builder-5525' into bugfix/commands-6593 2014-09-03 23:23:02 +02:00
Matthias Jentsch da85112538 Merge branch 'master' into feature/svg-chart-tooltips-7024 2014-09-03 17:08:00 +02:00
Matthias Jentsch 37b168995b Rename tipsy stylesheet file type to css and add license 2014-09-03 17:01:07 +02:00
Matthias Jentsch b10b1ea034 Add jQuery tooltips 2014-09-03 15:53:56 +02:00
Eric Lippmann 2025fb3a2f lib: Let the date-and-time input control behave as defined in HTML5
refs #6593
2014-09-03 14:40:58 +02:00
Alexander Fuhr acbd2bd7c0 Merge branch 'master' into feature/dashboard-component-disabled-property-6986 2014-09-03 14:40:30 +02:00
Eric Lippmann 906de4e679 lib: Add the HTML5 attributes 'min', 'max' and 'step' to the number input control
refs #6593
2014-09-03 14:39:42 +02:00
Eric Lippmann 1a4e908461 lib: Let `DateTimeValidator' validate values as defined in HTML5
See http://www.w3.org/TR/html-markup/datatypes.html#common.data.datetime for the specification.

refs #6593
2014-09-03 14:36:18 +02:00
Alexander Fuhr 7cfc051228 Add tests for Dashboard and fix doc blocks
refs #6986
2014-09-03 14:36:04 +02:00
Johannes Meyer 54a834266c Form::createElements() should add elements instead of returning them
In case createElements() would still return the elements while requiring
the caller to add them to the form all form dependent configurations get
lost. (displaygroups, belongTo, ...) Wizards or parent forms can still
retrieve only input relevant fields by just calling createElements() and
getElements().

refs #5525
2014-09-03 12:21:31 +02:00
Thomas Gelf 3d352ba446 Filter: add FilterNotEqual and FilterMatch
fixes #6557
2014-09-02 19:51:56 +02:00
Eric Lippmann 5485ca8a25 lib: Use Zend's `Int' validator in the `Number' form element
Further disabled default decorators since our form sets them.

refs #5525
2014-09-02 16:54:43 +02:00
Johannes Meyer 95c839a8bd Remove remaining usages of the ElementWrapper- and HelpText-Decorator
refs #5525
2014-09-02 16:50:59 +02:00
Thomas Gelf 6faedf5733 ActionController: no benchmark for no renderer
Benchmarks should not be shown when the renderer is no longer available.
2014-09-02 16:49:28 +02:00
Thomas Gelf e4687a60f9 Web\JavaScript: use Cache and ETags
refs #6927
2014-09-02 16:25:44 +02:00
Johannes Meyer 1ba3df310c Remove BaseConfigController, User\Message and Widget\AlertMesageBox
refs #6758
2014-09-02 16:25:03 +02:00
Johannes Meyer 539ab91ffa Add the FormErrors decorator as default decorator for forms
This allows us to use Zend_Form::addError() to show error messages for
the entire form context.

refs #5525
2014-09-02 16:25:03 +02:00
Thomas Gelf f0d6cf994e Web\StyleSheet: use Cache and ETags 2014-09-02 16:24:55 +02:00
Thomas Gelf ff6483cec5 Web\FileCache: initial implementation
refs #6927
2014-09-02 16:22:48 +02:00
Johannes Meyer 338f549233 Add class ReadablePathValidator 2014-09-02 16:19:45 +02:00
Johannes Meyer 39bb01b433 Rename Icinga\Web\Form::onShow() to onRequest()
onShow() is misleading because at the time this method is being called the
form is neither shown nor created.

refs #5525
2014-09-02 16:19:45 +02:00
Eric Lippmann d4c4ab7b2c lib/form: Fix default element decorators but breaking noscript layout
Replaced `ElementWrapper' and `HelpText' with Zend's `HtmlTag' and `Label' respectively.

Instances of Zend_Form_Element returned by `Form::createElements()' now receive our desired default decorators.

refs #5525
2014-09-02 15:23:07 +02:00
Eric Lippmann 8478ef3fce lib: Remove `HelpText' form element decorator
Zend already has a `Description' decorator.

refs #5525
2014-09-02 15:05:47 +02:00
Eric Lippmann 7143837ae3 lib: Remove `ElementWrapper' form element decorator
Zend has a `Label' decorator already.

refs #5525
2014-09-02 15:04:23 +02:00
Thomas Gelf 62c0f0be03 Web\Session: implement lazy loading
fixes #7055
2014-09-02 13:23:15 +02:00
Alexander Fuhr 26339b128a Add disabled property and implement the functionality
refs #6986
2014-09-02 13:16:21 +02:00
Alexander Fuhr bb0e1dc105 Revert "Fixes unaccepted behavior in module configuration"
This reverts commit 236d384bab.
2014-09-02 10:23:41 +02:00
Johannes Meyer cd8015f41a Pass the current form instance to the callback as second argument
refs #5525
2014-09-01 14:58:16 +02:00
Eric Lippmann 0822aff293 library/form: Fix return value of `getName()' not being filterd the first time it's called
`Form::getName()' auto-detects the form's name if it's not set and sets the form's name using `Zend_Form::setName()'.
`Zend_Form::setName()' then filters the form name stripping backslash '\' characters. The first call to `Form::getName()'
did not regard the filtering and thus returned the unfiltered name which led to `Form::wasSent()' returning `false'.

refs #5525
2014-09-01 14:40:45 +02:00
Eric Lippmann f3e74f0f24 library/form: Append class 'autosubmit' in case the element to autosubmit has the class attribute set
Before, the class attribute would've been overwritten.

refs #5525
2014-09-01 09:44:04 +02:00
Johannes Meyer fb5685bac3 Merge branch 'master' into bugfix/rebuild-form-builder-5525
Conflicts:
	application/forms/Config/Authentication/BaseBackendForm.php
	application/forms/Config/Authentication/DbBackendForm.php
	application/forms/Config/Authentication/LdapBackendForm.php
	application/forms/Config/Authentication/ReorderForm.php
	application/forms/Config/LoggingForm.php
	application/forms/Config/ResourceForm.php
	application/forms/Preference/GeneralForm.php
	library/Icinga/Application/Config.php
	library/Icinga/Web/Form.php
	modules/monitoring/application/controllers/ConfigController.php
	modules/monitoring/application/forms/Config/Backend/CreateBackendForm.php
	modules/monitoring/application/forms/Config/Instance/CreateInstanceForm.php
	modules/monitoring/application/forms/Config/Instance/EditInstanceForm.php
	modules/monitoring/application/forms/Config/SecurityForm.php
2014-08-29 16:05:56 +02:00
Johannes Meyer 79b0ed64ec Make it possible to provide a closure to be called instead of onSuccess()
This allows us to write generic forms like the ConfirmRemoval form but to
utilize handleRequest() while providing a closure in the array that is passed
to a form's constructor.

refs #5525
2014-08-29 12:21:31 +02:00
Johannes Meyer bf23688e73 Make autosubmit work in non-JS enviroments
We require forms to set autosubmit=true on elements which are supposed
to be submitted automatically now. The base form then ensures that this
works in JS environments and non-JS environments as well by applying the
right changes to the HTML.

refs #5525
2014-08-29 09:08:53 +02:00
Johannes Meyer 486104d59e Check explictly for FALSE when calling onSuccess()
This allows us to just end onSuccess() without requiring it to return TRUE
to initiate redirection.

refs #5525
2014-08-29 09:04:20 +02:00
Matthias Jentsch 3642b7b6fc Adjust CSS for inlinePies to be centered on the current line 2014-08-28 18:27:30 +02:00
Alexander Klimov 45638b218c Throw IcingaException rather than Exception
fixes #7014
2014-08-27 16:03:15 +02:00
Alexander Klimov 7ff51caed0 Remove leading backslashes from the targets of use statements
- use \Exception;
+ use Exception;
2014-08-27 15:51:49 +02:00
Alexander Fuhr 236d384bab Fixes unaccepted behavior in module configuration
fixes #7011
2014-08-27 14:57:08 +02:00
Johannes Meyer e1329058db Do not hard code the name of the form identification element
Like the csrf element name the form identification element name should
be publicly accessible as well.

refs #5525
2014-08-27 13:14:40 +02:00
Eric Lippmann 1dea19504f Revert "Remove leading backslashes from the targets of use statements"
This reverts commit 87a5967501.

At least 'modules/doc/run.php' issues a warning about "The use statement with non-compound name 'Zend_Controller_Router_Route' has no effect"
2014-08-27 12:24:11 +02:00
Marius Hein 88698cb05d Hook/TopBar: Rework interface for monitoring top bar
refs #6929
2014-08-27 11:31:48 +02:00
Marius Hein b7ae66b496 Hook: Add web hook base class
refs #6929
2014-08-27 11:31:47 +02:00
Marius Hein e0d7c3855d Hook: Add class suffix for base class testing
refs #6928
2014-08-27 11:31:47 +02:00
Alexander Klimov 87a5967501 Remove leading backslashes from the targets of use statements
- use \Exception;
+ use Exception;
2014-08-27 11:16:44 +02:00
Marius Hein 5abf41edef Hook/ConfigurationTab: Remove deprecated implementation
ConfigurationTab hook is not used anywhere. Test is
removed also.
2014-08-27 10:29:04 +02:00
Johannes Meyer 6783d51f76 A form is "submitted" when it was "sent" but no submit label was set
This enables us to use handleRequest() as is when no specific submit button
is required.

refs #5525
2014-08-27 10:28:50 +02:00
Johannes Meyer 0ff79b0948 Replace Form::onFailure() with Form::onShow()
There is currently no usecase for onFailure() but for onShow() wherewith
the case is covered when a form needs to be prepared before showing it
to the user while the form was not submitted in any way.

refs #5525
2014-08-27 10:25:50 +02:00
Johannes Meyer d3c2fc858c Access formdata internally using a public helper method
This way concrete form implementations can also simply fetch form
dependent request values without referring to the form's submission
method.

refs #5525
2014-08-27 10:19:33 +02:00
Johannes Meyer 65dd3f9a5b Make the form in view scripts accessible using $form instead of $element
refs #5525
2014-08-27 10:10:55 +02:00
Johannes Meyer 98b2bce15e Icinga\Web\Form::onSuccess() must not return TRUE
When using Icinga\Web\Form directly without creating a specific sub-class
and calling handleRequest() one must not get redirected.

refs #5525
2014-08-27 10:09:29 +02:00
Marius Hein 7e5b5a0b30 Hook/Grapher: Rework hook interface
Rework interface based on specification and changed consumer calls.

refs #6932
2014-08-27 09:35:43 +02:00
Marius Hein 376e9aa160 Rename hook base classes
Adding suffix "Hook" to every base class. This simplifies development
because you don't need to alias bases classes in your concrete
hook classes

refs #6928
2014-08-26 14:29:55 +02:00
Johannes Meyer 45cbd3f067 We do not require the request being passed to handleRequest()
refs #5525
2014-08-26 12:31:05 +02:00
Johannes Meyer 5c7999fe9b Forms should be responsible for any redirection as well
If no specific url has been set with setRedirectUrl() a form redirects to the
current action it was posted to.

refs #5525
2014-08-26 12:30:37 +02:00
Alexander Klimov 1f7d4cb61b Merge branch 'master' into bugfix/exceptions-with-printf-params-6931 2014-08-26 11:24:33 +02:00
Alexander Klimov febb2d1ae2 ProgrammingError: extend IcingaException
refs #6931
2014-08-26 11:15:19 +02:00
Alexander Fuhr 42e2b34356 Implement self provided configuration for dashboard/dashlets in modules
refs #6639
2014-08-26 10:34:36 +02:00
Johannes Meyer 52534a2f46 It is a form's responsibility to process the request it was submitted with
How forms are being validated should not be a task that is part of the
controller action, but should be handled by the form base class as it is
most of the time the same procedure. Now a controller action just sets
up the form to use, calls handleRequest() and acts upon its return value.
(e.g. calling handleRequest() from another form or any redirection)

refs #5525
2014-08-25 17:06:45 +02:00
Johannes Meyer c93ab7951d Check whether a form's data was sent instead of whether it's complete
It is not sufficient to just check whether all required elements are being
submitted. We definetely need to check whether the submit button was
pressed. But doing this and providing a standard button with a static name
simultaneously will produce conflicts if forms are using the same action
urls. To fix this, we'll add an additional form-identification check by using
a form's name or class.

refs #5525
2014-08-25 16:49:54 +02:00
Johannes Meyer 7b221e2aba It should not be a form's responsibility how its submit button should look..
...in case it's a standard button. No need to be DRY here.

refs #5525
2014-08-22 15:20:54 +02:00
Johannes Meyer 2b879b344f Do not populate using createElements() and fix documentation blocks
refs #5525
2014-08-22 12:04:14 +02:00
Alexander Klimov 9c5878cbbe ConfigurationError: extend IcingaException
refs #6931
2014-08-22 11:46:11 +02:00
Alexander Fuhr 1886569174 Implement Module self provided configuration for menus
refs #6639
2014-08-22 11:35:42 +02:00