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
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
Alexander Fuhr
1886569174
Implement Module self provided configuration for menus
...
refs #6639
2014-08-22 11:35:42 +02:00
Johannes Meyer
bc05d2ee64
Merge LoggingForm into GeneralForm
...
fixes #6933
2014-08-22 11:05:20 +02:00
Alexander Klimov
b764993091
AuthenticationException: extend IcingaException
...
refs #6931
2014-08-22 10:59:52 +02:00
Alexander Klimov
b55a313146
Implement IcingaException
...
refs #6931
2014-08-22 10:27:30 +02:00
Thomas Gelf
09412d03b6
Benchmark: hide timestamp on HTML output
...
Wastes space and is mostly useless, absolut and relative expired time
gives more than enough information.
2014-08-22 09:34:43 +02:00
Alexander Klimov
8733238a6e
Loader::registerNamespace(): correct exception message
2014-08-21 12:40:41 +02:00
Johannes Meyer
bb7972aa39
Merge branch 'master' into bugfix/rebuild-form-builder-5525
...
Conflicts:
application/controllers/AuthenticationController.php
application/controllers/ConfigController.php
application/forms/Authentication/LoginForm.php
application/forms/Preference/GeneralForm.php
modules/monitoring/application/controllers/ChartController.php
2014-08-20 13:13:50 +02:00
Eric Lippmann
995355ec30
lib/Limiter: fix translate w/ sprintf
2014-08-19 16:29:11 +02:00
Thomas Gelf
f49a34625e
Url\Params: check for QUERY_STRING before using it
...
fixes #6957
2014-08-19 14:53:56 +02:00
Eric Lippmann
1c74fd7028
Merge branch 'master' into feature/display-documentation-4820
...
Conflicts:
modules/doc/library/Doc/DocParser.php
2014-08-19 13:39:48 +02:00
Thomas Gelf
db3ef8fbd0
ActionController: remove redirectToLogin default
...
The redirectOnLogin function now doesn't have any predefined default.
This also leads to the behaviour that "Logout" will not redirect you
anywhere on a new login while "forcibly being logged out" (e.g. by
logging out in another browser tab) will bring you back to where you
came from.
2014-08-19 12:28:24 +02:00
Thomas Gelf
a38d71f17c
Cli\Command: provide Config()
...
This makes it feel more like action controllers
fixes #6954
2014-08-19 10:27:26 +02:00
Thomas Gelf
9d4a4f49c9
ActionController: JS should redirect to __SELF__...
...
...once you lost your session. That's the only way to do this in a
smooth way. When the server get's an unauthenticated request for a
single container, redirecting to auth/login?redir=<that-container>
was not what you expect.
Together with JS handling __SELF__ in redirection URLs this will
play fine.
refs #6935
2014-08-19 09:57:24 +02:00
Thomas Gelf
b9cc964e24
Url\Params: remove() should reindex on change
...
There was a small bug, fixed.
refs #6699
2014-08-19 09:49:53 +02:00
Thomas Gelf
344909dfcd
Web\UrlParams: add() and set() should encode...
...
...while there is now a addEncoded function, mostly for internal use.
refs #6699
2014-08-19 09:45:58 +02:00
Thomas Gelf
217595dc15
Web/Url: more intuitive separator usage
...
One might not expect to get a URL with params separated by & while
this is the correct way of writing them to HTML attributes. So default
behaviour is right now that all functions return URL params separated
by &, but if you cast a URL (or it's params) to a string, & will be
used.
Additionally there are toString functions allowing you to choose the
separator "manually".
refs #6699
2014-08-19 09:42:16 +02:00
Thomas Gelf
7caccd7691
Web\Url: remove stripUrlFragment()
...
This function had an interesting history and seems to be a result of
missunderstanding of each others commits. Removed, as the fragment is
already there.
refs #6699
2014-08-19 09:36:15 +02:00
Johannes Meyer
f2ed813c9a
Fix that Icinga\Web\Url::fromPath drops fragments
...
fixes #6284
2014-08-14 14:23:31 +02:00
Johannes Meyer
4ddc0e718b
Report the default language also as being available for setting up the locale
...
fixes #6905
2014-08-14 10:48:52 +02:00
Johannes Meyer
dc8181cdc5
Escape linefeeds and carriage returns in commands and show them as html
...
fixes #6088
2014-08-14 10:23:04 +02:00
Johannes Meyer
666591beb7
Encode url before passing it to Icinga\Form\Dashboard\AddUrlForm
...
fixes #6611
2014-08-13 16:41:40 +02:00
Johannes Meyer
7311ab964e
Do not set the full url from the request as action with form parameters
...
Setting an url with parameters named like form elements in a form with
method POST causes Zend to ignore any POST data because GET will be
processed with higher priority.
fixes #6806
2014-08-13 14:50:21 +02:00
Johannes Meyer
e7da9c0a00
Make our anti CSRF logic being a form element
...
refs #5525
2014-08-12 14:43:10 +02:00
Johannes Meyer
fe63ce664f
Make use if 'ignore´ instead of explicitly unsetting array keys
...
refs #5525
2014-08-12 13:57:28 +02:00
Johannes Meyer
4b1169c0a1
Fix improper form submission
...
refs #5525
2014-08-12 10:41:19 +02:00
Thomas Gelf
8f729bfb65
ActionController: set a default window title
...
In case a controller action didn't set a view title this fix restores
the default title on XHR requests.
fixes #6797
2014-07-31 17:04:26 +02:00
Marius Hein
56a29354d3
AutoLogin: Check the remote username against logged in user
...
fixes #6462
2014-07-30 12:54:08 +02:00
Marius Hein
e2c761a7aa
AutoLogin/Logout: Remove own session namespace
...
Store data in the user and implement interface to left
backends store remote information.
fixes #6461
2014-07-30 12:35:55 +02:00
Eric Lippmann
294728ac47
Revert "Autologin: Test logged session against remote user"
...
This reverts commit 64954e9924
.
If the strip_username_regex is configured on the autologin backend and applies on a user's name,
the authenticated user's username does never match the REMOTE_USER server variable.
Thus the application will logout/login on every request which results in a redirect loop.
refs #6462
2014-07-29 17:50:44 +02:00
Marius Hein
64954e9924
Autologin: Test logged session against remote user
...
fixes #6462
2014-07-29 12:06:43 +02:00
Marius Hein
8b9d446d2e
Autologin: Remove deprecated autologin methods
...
Remove methods from manager because autologin
is now handled with special backends (AutoLoginBackend).
The session is used to store the status about a remote
user authentication to send a 401 header to the client
upon logout.
refs #6461
2014-07-29 10:48:57 +02:00
Eric Lippmann
edc89d6ad6
lib: Remove `NodeRenderer'
...
`NodeRenderer' is superseded by `TocRenderer'.
2014-07-28 19:12:35 +02:00
Eric Lippmann
e26d360561
lib/Node: Remove method `findNodeBy()'
...
The new `DocTree' class provides `getNode()'.
2014-07-28 19:07:13 +02:00
Eric Lippmann
bbcdcb4609
lib: Add `Identifiable' interface for objects that are identifiable by an ID of any type
2014-07-28 19:05:37 +02:00
Johannes Meyer
c3731fa79e
Adjust removeresource-action to suit the new resource form interface
...
refs #5525
2014-07-24 16:17:30 +02:00
Eric Lippmann
a68ccecb28
Revert "Do not use htmlspecialchars in widgets"
...
This reverts commit 2ff43abcf5
.
`Widget::escape()' does not exist. But `Widget::view()::espcae()' does.
2014-07-23 12:28:04 +02:00
Alexander Klimov
2ff43abcf5
Do not use htmlspecialchars in widgets
...
refs #6759
2014-07-23 12:12:05 +02:00
Johannes Meyer
8b2cc3a558
Do not consider <button type=submit> when checking form completion
...
refs #5525
2014-07-23 10:58:45 +02:00
Johannes Meyer
0bf0213547
Rename Form::addElement to Form::createElement
...
Since we are using mainly createElement and addElement is only an alias for
createElement if no object is passed our changes to addElement can safely
be moved to createElement.
refs #5525
2014-07-23 10:57:46 +02:00
Johannes Meyer
25c9ee567d
Add missing use statement for Zend_View_Abstract
2014-07-23 10:54:22 +02:00
Eric Lippmann
e005333806
Merge branch 'master' into feature/display-documentation-4820
2014-07-22 12:25:58 +02:00
Matthias Jentsch
0eaaaf2f29
Make bar charts thicker
2014-07-22 11:32:52 +02:00
Matthias Jentsch
4b8bb99fa1
Fix svg text rotation in firefox
...
Use the SVG transform attribute instead of the writing-mode attribute to support firefox.
2014-07-22 11:26:35 +02:00
Matthias Jentsch
0a500efd8a
Determine the max value in LinearUnit dynamically
...
The range between min and max should always be divisable by the amount of
ticks, to ensure that the vertical lines are always at a full discrete value.
fixes #6769
2014-07-21 17:21:54 +02:00
Johannes Meyer
75e09f2c69
Do not consider submit buttons when checking form completion
...
refs #5525
2014-07-21 15:25:00 +02:00
Alexander Klimov
cebd71b2ff
Fix "Fatal error: Interface 'Icinga\Data\DatasourceInterface' not found in Icinga\Protocol\File\Reader"
...
fixes #6722
2014-07-21 14:14:13 +02:00
Alexander Klimov
c5ecbf250d
lib: add FileReaderException for file reader specific errors
...
refs #6722
2014-07-21 14:11:08 +02:00
Alexander Klimov
6df7be7ee5
File/Query: Fix `applyFilter' and `order' not matching SimpleQuery's interfaces
...
refs #6722
2014-07-21 14:09:40 +02:00
Matthias Jentsch
091ddbe552
Partiall revert bfc54b7e
...
Refactor Url->getParams() to return an instance of UrlParam instead of an array.
fixes #6760
2014-07-21 09:22:19 +02:00
Johannes Meyer
f5ac592645
Do not consider disabled elements when checking form completion
...
Values of disabled inputs are not sent by browsers.
refs #5525
2014-07-21 08:57:41 +02:00
Alexander Klimov
5ea02b41ea
Optimize variable names and positions, cast array direct to object
2014-07-18 17:35:24 +02:00
Thomas Gelf
2a204897b4
DbQuery: improve method description
...
Not English mine this was, copy paste did I ;)
2014-07-18 16:48:52 +02:00
Thomas Gelf
209894d857
DbQuery: add dummy isTimestamp function
...
Not the best solution, but helps for now.
fixes #6675
2014-07-18 16:35:29 +02:00
Johannes Meyer
f4ff2c90f2
It's a form's responsibility how its submit button should look like
...
refs #5525
2014-07-18 09:54:36 +02:00
Johannes Meyer
6ac471c598
Also mention the viewscript functionality of Form::loadDefaultDecorators()
...
refs #5525
2014-07-18 09:52:50 +02:00
Johannes Meyer
8f0b9899a3
We cannot know what kind of data is passed to Form::isValid()
...
refs #5525
2014-07-18 09:52:05 +02:00
Johannes Meyer
78a6175acc
Make form creation lazy and implement the new validation mechanism
...
Form creation must not depend on specific function calls. If a forms' elements are required and missing, create them. Form::isValid() must be
able to determine whether a form can be processed or not without to rely
on a particular button value.
refs #5525
2014-07-18 09:51:15 +02:00
Johannes Meyer
37fd3deb67
Rename initCsrfToken to addCsrfToken and move it upwards
...
Form::addCsrfToken() should be public and fluent to ensure more
flexibility.
refs #5525
2014-07-18 09:43:03 +02:00
Johannes Meyer
58188c5cc1
We only want to rely on Form::isValid() when about to process forms
...
As the new auto-submission implementation does not depend on whether
a submit button was pressed or not we need another way to determine
whether a form should be processed.
refs #5525
2014-07-18 09:33:09 +02:00
Johannes Meyer
802c095bf8
Configuration values need to be inserted to forms explicitly
...
It's the controllers' responsibility to ensure that forms are populated with
configuration values on GET requests.
refs #5525
2014-07-18 09:27:10 +02:00
Johannes Meyer
21cd503ee7
Form buttons need to be added explicitly
...
We either demand the user to add a submit button or provide a implicit
function call to be implemented by him, adding additional elements once
the form gets rendered.
refs #5525
2014-07-18 09:24:49 +02:00
Johannes Meyer
47ae4d79dc
Forms do not need a special title property
...
As our upcoming wizard has no menu and our tabs are hardcoded we do not
need a special "title" property anymore.
refs #5525
2014-07-18 09:21:11 +02:00
Johannes Meyer
1de2d0c14f
Merge branch 'master' into bugfix/rebuild-form-builder-5525
...
Conflicts:
application/forms/Authentication/LoginForm.php
library/Icinga/Test/BaseTestCase.php
library/Icinga/Web/Form.php
library/Icinga/Web/Form/Decorator/BootstrapForm.php
2014-07-17 13:15:42 +02:00
Matthias Jentsch
bfc54b7e32
Fix array conversion of the Dashboard and its Components
...
Do not omit the parameters when converting the dashboard components to
an array. Add an array conversion to the UrlParams class.
refs #6691
2014-07-16 17:31:01 +02:00
Johannes Meyer
5c507d5d91
Fix notice that the session has been already started after retrieving its id
2014-07-16 15:39:40 +02:00
Johannes Meyer
eb977b7a55
Fix wrong variable assignment causing preferred languages not being set
2014-07-16 15:17:14 +02:00
Johannes Meyer
e5fdf78c98
Fix testing errors due to accessing the session id by using our container
2014-07-16 10:18:00 +02:00
Johannes Meyer
e6dee9fe89
Protect login against CSRF
...
refs #5626
2014-07-16 09:55:23 +02:00
Johannes Meyer
b40027b6c7
Purge session when logging out
...
fixes #6739
2014-07-16 09:55:22 +02:00
Johannes Meyer
19f05256a0
Only call session_start() when reading from session
...
fixes #6383
2014-07-16 09:55:22 +02:00
Johannes Meyer
c7c2ad3790
Improve preference changeset calculation
...
The calculation is still subject to the concrete writer implementation as its
parent Icinga\User\Preferences\PreferencesStore is only an abstraction
layer without any knowledge how the data is actually stored so it is not able
to determine how to handle differences.
fixes #6220
2014-07-15 14:54:57 +02:00