Now the whole page gets refreshed on container changes, if
we encounter issues with that we can improve it afterwards
or roll back some cahnges already made in previous commits
refs #4611
- The ActionController is now able to render a seperate detail view
- All list scripts select the currently active row from the detail view with
the 'active' class
- Autosubmit is now again attached to the onchange attribute (to prevent issues
when js can't load correctly)
- Logout is now recognized and causes a page refresh (will be made more generic)
- Add history mock for testing url changes
- Update all grids to implement the app/mainDetailGrid component
refs #4611
This commit introduces the following changes (although they are not
implemented in the templates, this follows):
- links in the top and navigation bar are loaded in the background
- generic main/detail container component handling click/load delegation
- mainDetailGrid implementation handling selection and render targets
- Generic history implementation handling URI change detection and reloading
refs #4611
Remove old (now-unusable) module loader and components and corresponding unit
tests. Give the component loader and the component registry more meaningful names.
refs #4456
Add a component loader that finds components by searching for elements with the
"data-icinga-component" attribute and loads the corresponding JavaScript file
from the backend to render the component.
refs #4456
When the X-Icinga-Module-Enable header is send, the
modulemanager automatically tries to load javascript files for
that module. This is realized by adding the 'registerHeaderListener'
method to the async manager, which allows to listen to specific headers
and firing callbacks if a response with the specified header is retrieved.
Also the tests have changed a bit, requireNow should be used when using
the requiremock, so a require always loads files new.
refs #4092
refs #3753
Behaviours are now modules and icinga.js automatically
requests module/list (which should be served by the application
and is non static) and retrieves a list of modules to request and
enable.
refs #3753
This commit adds tests for the module loader and registry of
icinga2-web. It mainly registers event handlers and calls
custom enable/disable functions
refs #3753
The getDefine method check's for existence of the 'arg' variable,
which was renamed to 'name', causing the typeof arg === "undefined"
to always return true
refs #4308
Tests can now call require('requiremock') to bootstrap an alternative
requirejs implementation and use the resulting object for defining
dependencies and mocks
refs #4308