Commit Graph

1169 Commits

Author SHA1 Message Date
Alexander Klimov 1e06c20dcb FileWriter: implement getPath()
refs #7060
2014-09-03 12:09:38 +02:00
Alexander Klimov 6aeab59ead Logger: implement getWriter() and getInstance()
refs #7060
2014-09-03 12:02:11 +02:00
Alexander Klimov 70cf14f775 Logger: rename getWriter() -> createWriter()
refs #7060
2014-09-03 11:34:21 +02:00
Alexander Klimov 3ade6da44d FileReaderException: extend IcingaException 2014-09-03 11:14:22 +02:00
Thomas Gelf 3d352ba446 Filter: add FilterNotEqual and FilterMatch
fixes #6557
2014-09-02 19:51:56 +02:00
Eric Lippmann 0b1d2bf685 Merge branch 'bugfix/rebuild-form-builder-5525' into bugfix/commands-6593 2014-09-02 17:09:36 +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
Thomas Gelf b60b811335 ApplicationBootstrap: list "core" translations
Just to make application fit module capabilities. We might find a better
place for both later on.

refs #7054
2014-09-02 16:51:17 +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 4cef333add Modules\Module: implement listLocales
fixes #7054
2014-09-02 16:28:27 +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 9bcd861b1c Merge branch 'bugfix/rebuild-form-builder-5525' into bugfix/commands-6593 2014-09-02 15:27:27 +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
Matthias Jentsch 4b55bcf8b6 Add tooltips to bar charts
Add a class to format and populate tooltips from graph data sets and implement
those tooltips in the ChartController.
2014-09-02 12:24:29 +02:00
Alexander Fuhr bb0e1dc105 Revert "Fixes unaccepted behavior in module configuration"
This reverts commit 236d384bab.
2014-09-02 10:23:41 +02:00
Marius Hein ee6145a173 Ldap/Query: Remove __toString()
This is needed because of exception handling. Exceptions can now bubble
up for default handling. Method render() was renamed to create() because
the method create a query. Adjust the test for method create().

refs #5536
2014-09-02 10:17:01 +02:00
Marius Hein baf768040f LdapQuery: Use Ldap/Exception for errors
refs #5536
2014-09-02 09:55:57 +02:00
Marius Hein 6b6826f737 Bug7043Test: Fix test to run without ini configuration
fixes #7043
2014-09-01 15:53:32 +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 30965c247b Merge branch 'bugfix/rebuild-form-builder-5525' into bugfix/commands-6593 2014-09-01 14:50:32 +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
Marius Hein 30f391035c Postgres/DbQuery: Add orderfields to select
refs #6896
2014-09-01 10:00:04 +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
Eric Lippmann a01ee00c27 Merge branch 'bugfix/rebuild-form-builder-5525' into bugfix/commands-6593
Conflicts:
	library/Icinga/Protocol/Commandpipe/Transport/Transport.php
2014-08-29 17:24:44 +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 e020dd3541 Icinga\App..\Config: Rename __construct to fromIni and add setConfigPath
Prior to this change it was not possible to create an instance of Config
without passing a config file.
2014-08-29 12:23:48 +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
Matthias Jentsch a26370bb12 Adjust PieCharts that are rendered without labels
Center and resize PieCharts to use the full width and height of the available view port
2014-08-28 18:25:19 +02:00
Matthias Jentsch 00a2d225a2 Ensure that PieCharts are centered and that labels dont leave the viewBox
Add scaling and transformations to move the PieChart into a valid coordinate system and reduce the offset of the labels to make more efficient use of available space.
2014-08-28 16:42:31 +02:00
Matthias Jentsch c5cface661 Improve readability of small pie charts
Use a bigger font, to ensure that small pie charts still have readable labels.
2014-08-28 16:40:34 +02:00
Matthias Jentsch 98809a1447 Do not use width and height as width and height percentages in the outer SVG element
Height and width are solely used to define the SVGs ratio and should not cause side effects on the SVGs size in the site context.
2014-08-28 16:37:21 +02:00
Matthias Jentsch a9eec0d672 Remove useless width and height properties from PieChart 2014-08-28 16:33:38 +02:00
Matthias Jentsch f77cd9cafa Fix coding guidelines 2014-08-28 16:21:16 +02:00
Matthias Jentsch 573a4ea12f Fix spelling mistakes 2014-08-28 16:14:59 +02:00
Eric Lippmann 4ca1eaa7ce Merge branch 'bugfix/rebuild-form-builder-5525' into bugfix/commands-6593
Conflicts:
	library/Icinga/Web/Form.php
	modules/monitoring/application/forms/Config/SecurityForm.php
2014-08-28 13:58:02 +02:00
Marius Hein e345aa257a Platform: Drop *Available function
Create a function extensionLoaded and change usages.

refs #5514
2014-08-28 12:14:55 +02:00
Marius Hein 9d0037a53a ResourceFactory: Add function create(<name>)
The ConfigAwareFactory is an interface forcing "backend-type" classes to call
ResourceFactory::createResource() passing a config they got in the constructor.

That's kind of overdesigned, if the ResourceFactory wants to be something like
a service locator it's responsabilities should include object instantiation.

refs #5514
2014-08-28 12:14:54 +02:00
Marius Hein 35d11bd145 Class doc for Platform
refs #5514
2014-08-28 12:14:54 +02:00
Marius Hein 9b83074cc9 Class doc for ResourceFactory
refs #5514
2014-08-28 12:14:54 +02:00
Marius Hein 22e17e9901 ResourceFactory: Move available function to platform
refs #5514
2014-08-28 12:14:54 +02:00
Matthias Jentsch 947cd0c5d3 Merge branch 'master' of git.icinga.org:icingaweb2
fixes #7006
2014-08-27 17:22:09 +02:00
Alexander Klimov e6612fefe7 FilterParseException: extend IcingaException
refs #6931
2014-08-27 16:26:43 +02:00
Alexander Klimov afd0c20c42 FilterException: extend IcingaException
refs #6931
2014-08-27 16:23:44 +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
Matthias Jentsch 4a59ff6712 Support preserveAspectRatio in SVGRenderer
Add support for the preserveAspectRatio attributes in root SVG elements, to improve the handling of padding and automatic resizing of inline SVG.
2014-08-27 13:51:52 +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 89541f5727 Merge branch 'bugfix/hook-interface-6932'
fixes #6932
fixes #6928
2014-08-27 09:39:56 +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
Matthias Jentsch 1ff63dbf3f Support nested keys expressed as single strings in the PreservingIniWriter
Automatically convert keys with dots into nested configurations to avoid errors during the property diff, of the old and new configuration file.
2014-08-26 18:05:22 +02:00
Eric Lippmann 6b88f1c98e Move Commandpipe/* classes from Icinga Web 2's library to the monitoring module
refs #6593
2014-08-26 16:35:30 +02:00
Matthias Jentsch ff1d2e4fed Fix coding style 2014-08-26 15:20:15 +02:00
Goran Rakic 23aa57a5d7 Remove 100% pie slice hack
The getPieSlicePath primitive can draw it now.
2014-08-26 15:20:15 +02:00
Goran Rakic 2575634dec Draw full circle pie slice (100%) as a primitive
Allows getPieSlicePath to draw a full circle pie slice (100%) by slightly adjusting endpoint to have a valid arc. Also hides a central line as there will be no more pie slices.
2014-08-26 15:20:15 +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 a2011b1665 SystemPermissionException: extend IcingaException
refs #6931
2014-08-26 11:21:57 +02:00
Alexander Klimov febb2d1ae2 ProgrammingError: extend IcingaException
refs #6931
2014-08-26 11:15:19 +02:00
Alexander Fuhr d8bbd7a0a0 Merge branch 'bugfix/modules-dashlet-provider-6639'
fixes #6639
2014-08-26 10:57:37 +02:00
Alexander Klimov 4ec6dbe3f0 Prefer single quotes ' rather than double quotes " 2014-08-26 10:41:17 +02:00
Alexander Fuhr 42e2b34356 Implement self provided configuration for dashboard/dashlets in modules
refs #6639
2014-08-26 10:34:36 +02:00
Alexander Klimov f754531e4d Fix grammatical error 2014-08-26 10:22:14 +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
Alexander Klimov 7074fa1331 NotWritableError: extend IcingaException
refs #6931
2014-08-25 12:56:35 +02:00
Alexander Klimov 6c9947326d NotReadableError: extend IcingaException
refs #6931
2014-08-25 12:38:34 +02:00
Alexander Klimov f4dbb4df96 NotImplementedError: extend IcingaException
refs #6931
2014-08-25 12:21:59 +02:00
Alexander Klimov 013aad8f73 MissingParameterException: extend IcingaException
refs #6931
2014-08-25 12:14:18 +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 20cead67a6 Merge branch 'master' into bugfix/modules-menu-provider-6639 2014-08-22 11:44:10 +02:00