Commit Graph

484 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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 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 &amp; 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, &amp; 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 666591beb7 Encode url before passing it to Icinga\Form\Dashboard\AddUrlForm
fixes #6611
2014-08-13 16:41:40 +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
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
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
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 e6dee9fe89 Protect login against CSRF
refs #5626
2014-07-16 09:55:23 +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 3105c2059e Remove license headers from all files
refs #6309
2014-07-15 13:43:52 +02:00
Johannes Meyer e567ad67c5 Display statehistory summary vertically
fixes #6636
2014-07-14 15:26:35 +02:00
Thomas Gelf 49c679fe0f FilterEditor: hide "add" links
They where there to show how this should look like. Removed for now as
they are not implemented yet.

refs #6668
2014-07-08 17:21:36 +02:00
Johannes Meyer bb2c85f90b Remove forgotten ActionController::requiresConfig() call
Should have been reverted by last commit but was not.
2014-07-07 16:12:26 +02:00
Johannes Meyer 82d2f5ac9b Revert "Merge branch 'feature/install-wizard-6136'"
This reverts commit 88d4262e7c, reversing
changes made to 6fae333048.

Conflicts:

	application/controllers/InstallController.php
	library/Icinga/Web/Controller/ActionController.php
2014-07-07 15:09:03 +02:00
Thomas Gelf 0d4166b1bd ModuleActionController: fix reference, var removed 2014-07-04 12:39:23 +02:00
Thomas Gelf 3cfdf4c977 Web\Response: add redirection function
The response now provides redirectAndExit(). One more step to clean up
our action controller. Please not that this is still unused right now.
2014-07-04 12:35:33 +02:00
Thomas Gelf 3772b9c16f ActionController: set layout module name early
Didn't work correctly before
2014-07-04 12:33:49 +02:00
Johannes Meyer 143a1e44fe Add a HTML renderer for Icinga\Web\Menu
The menu was being rendered through recursive partials before. The
overhead this fact implicates is not as efficient as standard recursion
so there is now a special renderer for Icinga\Web\Menu utilizing
the RecursiveIteratorIterator

refs #6153
2014-07-03 15:46:46 +02:00
Johannes Meyer be18af7e7e Merge Icinga\Web\MenuItem into Icinga\Web\Menu
We do not need an additional class for the menu's root item just to
encapsulate our config handling, so these two classes were now merged
into a single one. Icinga\Web\Menu now also extends from
RecursiveIterator to be able to render the menu more efficient to html.

refs #6153
2014-07-03 15:14:47 +02:00
Johannes Meyer 7eb0f3c472 Remove @codingStandardsIgnoreStart/-Stop annotations
refs #6091
2014-06-30 13:59:58 +02:00
Johannes Meyer f2e5d8afa5 Remove @codeCoverageIgnoreStart/-Stop annotations
refs #6091
2014-06-30 13:58:37 +02:00
Thomas Gelf 62928c48b0 helpers/timeSince: fix c&p error 2014-06-27 23:37:39 +02:00
Thomas Gelf 7112ed23f4 Chart\InlinePie: locale-ignorant cast for floats
This has already been fixed with 92f454c3 and got broken again with be0c5d4b.
Time for a regression test I guess.

refs #6348
2014-06-25 22:13:19 +02:00
Thomas Gelf 10d1520711 Widget\Limiter: show "all"
In case we pass limit=0 we show this, still unsure whether we should
provide a link for "showing all" - might really hurt with millions of
history rows.
2014-06-25 20:39:10 +02:00
Thomas Gelf 59dd80ed32 ActionController: benchmark should measure rendering
We have been cheating a little bit, now the measurement should be more
precise.
2014-06-25 20:37:17 +02:00
Matthias Jentsch d49f30ff77 Improve InlinePie performance
Use str_replace instead of preg_replace
2014-06-25 15:24:53 +02:00
Matthias Jentsch 7b19bd1d99 Improve interface of InlinePie
Method setLabel can also accept a simple string and title is mandatory in constructor
2014-06-25 15:21:12 +02:00
Matthias Jentsch 8839166090 Add number format 'none' to InlinePie 2014-06-25 14:53:39 +02:00
Matthias Jentsch 35a5431512 Revert "Refractor InlinePie and Perfdata helper"
This reverts commit f003c38abd.
2014-06-25 14:29:17 +02:00
Matthias Jentsch f003c38abd Refractor InlinePie and Perfdata helper
Refractor InlinePie methods for better usability, fix several coding guideline
issues and fix some typos
2014-06-25 12:41:17 +02:00
Thomas Gelf 4591297e56 SortBox: use POST instead of GET
This avoids trouble with complex filter URLs

fixes #6556
2014-06-25 11:00:10 +02:00
Thomas Gelf 1dcf44b9cd FilterEditor: fix buggy dropdown boxes
There were some issues with option names. Also cleaned up HTML a
little bit and added autosubmission.
2014-06-25 10:37:06 +02:00
Thomas Gelf b40d0f6a1e FilterWidget: POST instead of GET
Might have been a JS issue, but instead of messing with the URL just
POSTing is easier here - and works. Filters from the search box are
now added flawlessly to the filter tree.
2014-06-25 10:34:09 +02:00
Thomas Gelf 2746b5ff9f ConfigController: switch over to new config tabs
Module configuration now takes place in module detail view and does no
longer pollute our config tabs. Modules are now able to provide a bunch
of own config tabs, we don't really care what they use them for.
2014-06-24 21:31:59 +02:00
Thomas Gelf b38bcfc19b Widget\FilterEditor: correct expression output
Filter expressions should be filled into form fields exactly as we
expect them at parse time.

fixes #6568
2014-06-24 21:00:01 +02:00
Thomas Gelf 47b893e1ea Widget\FilterEditor: handle custom vars
There was an issue with custom vars as they made only partially part
of the column dropdown. Sorted columns and tried to beautify column
names.

fixes #6569
2014-06-24 20:57:41 +02:00
Thomas Gelf 3f9f4bb9e1 ModuleActionController: module object shortcut
This helps modules with the need to know more about themselves. No
more App -> Module Manager -> Module voodoo.
2014-06-24 20:54:39 +02:00
Thomas Gelf b7b99cfd67 Widget\AlertMessageBox: fix broken widget
This widget is pretty useless as the error view script can to it's
job. Interestingly nobody missed it, even the render() call was wrong.

I guess we will remove this soon, but for now it's fixed. Looks ugly,
but works.
2014-06-24 20:30:41 +02:00
Thomas Gelf ba9a633b73 Web\Form: relax form submission check
We have to live with some badly designed forms right now. Some have
submit buttons but don't know about, others don't have such but link
to foreign controllers fiddling with the form and adding different
button AFTER the form got submitted - it's a mess.

Relaxing the submission check to "just check whether btn_submit has
a value" fixes most of this. However I do not consider this being a
solution for the long run.

fixes #6423
fixes #5967
refs #6540
2014-06-23 13:31:34 +02:00
Thomas Gelf ea44de8698 ActionController/translate: detect domain only once 2014-06-22 20:09:23 +02:00
Thomas Gelf 23ed744747 params/_render: replace it everywhere
Cleaning up controllers and JS, using headers only and respecting
history.
2014-06-22 20:07:44 +02:00
Thomas Gelf 61600ae2d4 ModuleActionController: fix typo 2014-06-22 19:39:54 +02:00
Thomas Gelf 997587d729 Chart\InlinePie: remove ugly default border 2014-06-22 16:38:12 +02:00
Thomas Gelf 216f0f3f55 isIframe: clean up, load less html and js
We use isIframe only when we have no JS, therefore it makes no sense
to load JS files in an iFrame. Also removed sidebar.
2014-06-22 16:30:06 +02:00
Thomas Gelf 3b84078b2f Params/_render: get rid of it, start with iframe 2014-06-22 16:18:23 +02:00
Thomas Gelf bb23d0636c ModuleActionController: use isXhr() 2014-06-22 16:04:55 +02:00
Thomas Gelf 3774eb6889 ActionController: add isXhr() method
Makes things easier as we use this a lot
2014-06-22 15:36:41 +02:00
Thomas Gelf 331d756a2a ActionController: isolate ignoreXhrBody
This function is only a workaround for broken forms not redirecting
after submission. Will hopefully be removed soon.
2014-06-22 15:33:38 +02:00
Thomas Gelf b4f8ef74fa ActionController: remove obsolete code 2014-06-22 15:20:55 +02:00
Thomas Gelf 631603aba3 ActionController: create postDispatchXhr
Moved XHR-specific stuff to a dedicated post-dispatch function
2014-06-22 15:17:28 +02:00
Thomas Gelf cf995b366b ActionController: cleanup postDispatch
Make XHR handling more readable, move module-related stuff to the
module controller
2014-06-22 15:11:08 +02:00
Thomas Gelf de19745eb2 ActionController: move moduleInit to Module controller 2014-06-22 13:54:02 +02:00
Thomas Gelf 2cd25b7376 ActionController: if/else should be easy to read 2014-06-22 13:52:40 +02:00
Thomas Gelf b7fc0b67a8 Web/controllers: use own Request/Response objects
* introduces Icinga\Web\Response
* uses ModuleActionController where necessary
* no module translationDomain voodoo in base ActionController
2014-06-22 13:49:21 +02:00
Thomas Gelf ef5e1b54fd Web\Window: fix it's usage, add helper function
Improved window handling, fixed controllers using it.
2014-06-22 13:21:21 +02:00
Thomas Gelf b350e3640d Web\Window: move window handle to dedicated class
One more step in cleaning up our ActionController
2014-06-22 13:01:48 +02:00
Thomas Gelf d69a6d1640 ActionController: remove getRequestUrl
Thie removes complexity and makes redirection to login less error-
prone.
2014-06-22 12:23:34 +02:00
Thomas Gelf 9608d8254d ActionController: remove addModuleContainer
This method was obsolete
2014-06-22 12:09:07 +02:00
Thomas Gelf 4980b700da ActionController: __construct() as first function 2014-06-22 12:07:50 +02:00
Thomas Gelf a4955df1a9 controller->Auth(): one more lazy-loading helper
Not sure about the capital A, but doesn't look so bad - and similar
to Config().
2014-06-22 12:06:09 +02:00
Thomas Gelf 373e1c5ecb Web\Controller: re-introduce ModuleActionController
This will help getting rid of a couple of if/else constructs
2014-06-22 12:03:37 +02:00
Thomas Gelf 469eb3dc98 Web\Url: remove forgotten "debug" line 2014-06-22 11:59:24 +02:00
Thomas Gelf b3cdeee35d monitoring/timeline: should benefit from new filter
Different changes have been applied:

* Allow integer unix timestamps as parameters for timestamp columns
* Remove alias-rewriting from Url class
* Remove all traces of raw_timestamp
* Use new filters
2014-06-21 03:09:40 +02:00
Thomas Gelf 216c2ca770 Autorefresh: should work also on initial page load
fixes #6296
2014-06-21 01:54:32 +02:00
Thomas Gelf c0c7a815f8 Merge remote-tracking branch 'origin/master' into feature/query-interfaces-6018 2014-06-20 19:18:38 +02:00
Thomas Gelf 3e24a2cbe4 Paginator/SlidingWithBorder: use less space
Showing less items right now. It would be great if we could steer
this by parameter. IMO we should also think about dropping ZF
pagination and use a custom tiny widget.
2014-06-20 17:31:32 +02:00
Thomas Gelf afd6b11b7b Web\Url: add set/mergeValues support 2014-06-20 15:50:55 +02:00