Commit Graph

2052 Commits

Author SHA1 Message Date
Eric Lippmann 7f8ee4f94d JS: Deprecate Icinga.Loader.addUrlFlag() in favor of Icinga.Utils.addUrlFlag() 2020-01-14 14:58:34 +01:00
Eric Lippmann 4d02d8f6d6 JS: Introduce Icinga.Utils.addUrlFlag() 2020-01-14 14:58:34 +01:00
Johannes Meyer 33f6047973 css: Remove left-right padding from inline form elements
fixes #4036
2020-01-14 11:11:25 +01:00
Johannes Meyer e9b27b338f css: Set correct line-height for tabs
Otherwise a gap is shown between the dropdown toggle and
menu which causes FF to hide the dropdown too fast.
2020-01-13 16:02:50 +01:00
Johannes Meyer b85360449b js: Ignore anchors without href in `events.linkClicked()` 2019-12-13 16:13:55 +01:00
Johannes Meyer 63452ba250 js: Enhance scroll location detection in `ui.focusElement()` 2019-12-13 16:13:13 +01:00
Johannes Meyer f5ce5d42ef js: Add jQuery plugin `offsetTopRelativeTo($ancestor)` 2019-12-13 16:12:40 +01:00
ValeDaRold 5edd267f2a Refresh container if X-Icinga-Extra-Updates with length 1 is defined (#3970)
* Refresh container if X-Icinga-Extra-Updates with length 1 is defined
2019-12-12 13:50:03 +01:00
Johannes Meyer d6677bfb66 loader.js: Also preserve scroll position of `display:flex` containers 2019-12-11 15:27:03 +01:00
Florian Strohmaier 680467a1aa CSS: Fix flex-box scrolling for different browsers 2019-12-11 12:57:20 +01:00
Johannes Meyer 168fcfec36 layout.less: Relax specificity of content and controls padding 2019-12-11 11:31:23 +01:00
Johannes Meyer 55b9b44be9 js: Fix error when focusing navigation anchors 2019-12-11 09:27:18 +01:00
Johannes Meyer 6a4c3ea542 layout: Don't use explicit `width` anymore to resize multiple columns 2019-12-06 16:05:24 +01:00
Johannes Meyer d83ae2cd9b layout: Apply `overflow:auto` also to `.container` elements
Otherwise content not wrapped with `.content` lets overflow
the entire page.
2019-12-06 16:04:10 +01:00
Johannes Meyer 9a32be2f4e Winter.less: Properly apply snow effect to menu items 2019-12-06 15:41:16 +01:00
Johannes Meyer 60dfbcbad9 Remove remaining usages of `#menu-container` 2019-12-06 15:39:14 +01:00
Johannes Meyer 9acd45df13 css: Remove `min-height` and `overflow` from `body`
Causes issues in minimal layouts otherwise, at least in
Chrome. Safari suffers from this, but who cares...
2019-12-06 15:39:14 +01:00
Johannes Meyer 8922447d10 css: Remove remaining position instructions used for the legacy layout 2019-12-06 15:39:14 +01:00
Johannes Meyer e61eb6f160 ui: Fix sidebar issues in minimal layout
Was completely broken even prior the removal of `ui.fixControls()`..
2019-12-06 15:39:14 +01:00
Johannes Meyer 4af48c797d js: Remove `ui.fixControls()` and `ui.initializeControls()`
Hooray!
2019-12-06 15:39:14 +01:00
Johannes Meyer 83d6a258ec application-state.js: Remove redundant rendered callback 2019-12-06 15:39:14 +01:00
Johannes Meyer cfb9450cf0 Winter.less: Apply snow effect to directly to tabs
The header has no height anymore without announcements.
2019-12-06 15:39:14 +01:00
Johannes Meyer 31e3ce70a8 layout: Don't use id `header` if it's not a global header 2019-12-06 15:36:34 +01:00
Florian Strohmaier 6218ad8cde menu.less: Use appropriate less functions to darken colors 2019-12-06 15:36:34 +01:00
Florian Strohmaier 2b2f0cf48f menu.less: Align .badge-nav-item with flexbox 2019-12-06 15:36:34 +01:00
Florian Strohmaier ca02547bf6 Tabs: Beautify tabs hover 2019-12-06 15:36:34 +01:00
Florian Strohmaier 5443bfe9fa JS: Do not apply 'menu-hovered' on #layout
refs #3904
2019-12-06 15:36:34 +01:00
Florian Strohmaier 7864150054 JS: Fix navigation flyout not fading out after mouseout
refs #3904
2019-12-06 15:36:34 +01:00
Florian Strohmaier 88db9c80c3 CSS: Compensate .tabs-spacer
refs #3810
refs #3815
2019-12-06 15:36:34 +01:00
Florian Strohmaier eb104c3332 CSS: Prevent tabs from line-break
refs #3810
refs #3815
2019-12-06 15:36:34 +01:00
Florian Strohmaier c6c77aa411 JS: Remove unused code 2019-12-06 15:36:34 +01:00
Florian Strohmaier 6d7bccc348 CSS: Fix special view layout issues 2019-12-06 15:36:34 +01:00
Florian Strohmaier 516bbc1ef0 JS: Fix sidebar animating out 2019-12-06 15:36:34 +01:00
Florian Strohmaier 0da89bb977 JS: Reinstate mobile menu 2019-12-06 15:36:34 +01:00
Florian Strohmaier 4febf7433e CSS: Add minimal-layout styles for #content-wrapper 2019-12-06 15:36:34 +01:00
Florian Strohmaier 615085d744 CSS: Fix collapsed sidebar 2019-12-06 15:36:34 +01:00
Florian Strohmaier 59d6237a5a CSS: Style fixes for sidebar 2019-12-06 15:36:34 +01:00
Florian Strohmaier cbb88d1d5e CSS: Add tabs background 2019-12-06 15:36:34 +01:00
Florian Strohmaier 400abfe7f2 CSS: Fix overflowing content in Safari 2019-12-06 15:36:34 +01:00
Florian Strohmaier c06aec0471 Remove unused code 2019-12-06 15:36:34 +01:00
Florian Strohmaier 955ab298f7 CSS: Flex layout to container contents 2019-12-06 15:36:34 +01:00
Florian Strohmaier 8c7b5fcd57 CSS: Add flex-box to #main 2019-12-06 15:36:34 +01:00
Florian Strohmaier ead543e373 CSS: Hide ‘empty’ containers in main 2019-12-06 15:36:34 +01:00
Florian Strohmaier d579428ff9 CSS: Restrict #content-wrapper height to window 2019-12-06 15:36:34 +01:00
Florian Strohmaier cfbeb26354 JS: Disable fixControls() 2019-12-06 15:36:34 +01:00
Florian Strohmaier b819dd6881 CSS: Add sidebar layout 2019-12-06 15:36:34 +01:00
Florian Strohmaier 739dd50384 CSS: Set basic layout structure 2019-12-06 15:36:34 +01:00
Florian Strohmaier 722cbfe47f CSS: Make body and #layout 100% of viewport 2019-12-06 15:36:34 +01:00
Johannes Meyer 4157821c89 IcingaCheckbox: Don't `display:none` the checkbox but add `.sr-only` to it 2019-12-05 16:12:41 +01:00
Feu Mourek 8236b3baf0 Move form colours to the base.less 2019-12-04 11:35:25 +01:00
Florian Strohmaier 1755c01390 base.less: Add gray-semilight var 2019-11-28 15:32:38 +01:00
Johannes Meyer cc065b949b js: Use custom event `icinga-init` to trigger initial render events
The `load` event is not really only fired *after all shared resources are loaded*.
Just Chromium ensures this event is fired only after `ready` and `DOMContentLoaded`.
FF, IE and Safari don't so we need our own post-init event: `icinga-init`
2019-11-26 16:00:21 +01:00
Johannes Meyer 48098a2830 js: Don't initialize modules using a `beforerender` event
`beforerender` is already too late. Module initialization
done using an event handler is wrong anyway. It's some
kind of bootstrapping after all and should be performed
by parts of the code which is directly responsible for
DOM content handling of modules. (i.e. loader.js)

This change though introduces a side-effect which was
not the case previously: Nested `.container` elements
trigger `rendered` events now. I've introduced this to
ensure we're also lazy loading modules and let them
handle their `rendered` events right after a redirect
which rerendered the layout. (Only `#layout` got a
`rendered` event then prior to this change)
2019-11-21 09:55:20 +01:00
Johannes Meyer 7f78c1a8a8 js: Properly initialize modules and don't trigger `rendered` events twice
Cleans up how our JS initializes module javascript. Previously the `rendered`
event only got fired upon page load if a module got loaded as well. This is
now decoupled and `rendered` events fire for all containers and the entire
layout upon page load.

Notable changes:
* A `load` event initializes modules and triggers `rendered` on `.container` and `#layout` elements
* Module javascript (module.js) is still lazy loaded but with a `beforerender` event, not `rendered`
* Previously `#layout` received a `rendered` event during bootstrapping, this is not the case anymore
* Initial search value preservation now got its own handler `events.onRenderedMenu()`
* Initial dashlet loading now git its own handler `events.loadDashlets()`
2019-11-20 16:22:56 +01:00
Johannes Meyer 47c2a8bdc1 js: Utilize `utils.objectsEqual()` in `actiontable.select()` 2019-11-20 16:22:56 +01:00
Johannes Meyer 2dbf9ca8ab js: Properly parse/decode query params in `utils.parseParams()` 2019-11-20 16:22:56 +01:00
Johannes Meyer 5f739deea3 loader.js: Enhance __BACK__ handling 2019-11-05 15:04:23 +01:00
Johannes Meyer da565f4d16 loader.js: Refresh left twice in case right has been closed..
..if the redirect target is `__BACK__`
2019-11-04 17:25:05 +01:00
Johannes Meyer 42e596f457 loader.js: Navigate back if redirect target is `__BACK__` 2019-11-04 16:03:54 +01:00
Johannes Meyer a13d2b1e48 js: Introduce behavior modal.js 2019-11-04 12:46:30 +01:00
Florian Strohmaier ad66582e9c CSS: Add modal styles 2019-11-04 12:46:30 +01:00
Johannes Meyer c0cac6fe3c loader.js: Allow to use a separate target for redirections 2019-11-04 12:46:30 +01:00
Johannes Meyer 0e5e046ae5 js: Split event handling and processing of form submits 2019-11-04 12:46:30 +01:00
Johannes Meyer 50bf126d36 js: Move function events.getLinkTargetFor to loader.js 2019-11-04 12:46:30 +01:00
Florian Strohmaier 82e02c8ce1 CSS: Align value-table-name width with label width 2019-10-31 14:43:37 +01:00
Florian Strohmaier a00151ef5c CSS: Use margin-right only for non-inline control-groups 2019-10-30 14:57:13 +01:00
Johannes Meyer 2979ad1da0 css: Fix toggle placement in Firefox 2019-10-08 13:12:33 +02:00
Florian Strohmaier 30a4c62a2a CSS: Fix hidden radio inputs
refs #3957
2019-10-08 09:17:13 +02:00
Johannes Meyer 2896cbd781 loader.js: Avoid named capture groups to parse multipart content
fixes #3975
2019-10-07 14:35:49 +02:00
Johannes Meyer a8dc609b62 loader.js: Add support for multipart content
refs #3953
2019-09-25 10:34:24 +02:00
Johannes Meyer dda49b5ff1 loader.js: Drop redundant method `cacheLoadedIcons` 2019-09-25 10:34:24 +02:00
Johannes Meyer da513a746d loader.js: Add support for extra updates
refs #3953
2019-09-25 10:34:24 +02:00
Johannes Meyer 329f54cc96 ui.js: Don't generate a container id if its parent is #col1
refs #3953
2019-09-25 10:34:24 +02:00
Johannes Meyer b15c012671 loader.js: Only pre-wrap a search response's html with a div
It's not required for all responses anymore.

refs #3953
2019-09-25 10:34:24 +02:00
Johannes Meyer f98f988aff Remove tristate form element 2019-09-23 08:36:24 +02:00
Florian Strohmaier 1778ec673b IE11: Fix nav flyouts being covered by #main
fixes #3942
2019-09-04 12:26:37 +02:00
Florian Strohmaier b7617bf81b CSS: Don’t make .inline forms 100% width 2019-08-22 14:38:40 +02:00
Florian Strohmaier 7b0b32fc43 CSS: Adapt form design for button links 2019-08-22 14:37:26 +02:00
Feu Mourek da7086cede Center inputs in loginform (#3919)
fixes #3918
2019-08-14 13:09:06 +02:00
Feu Mourek 2ca3ffcb60 Add borders around form inputs (#3908) 2019-08-12 13:34:05 +02:00
Eric Lippmann 6e05d852ee Forms: Distinguish placeholders from real values (#3911)
We now also use the ::placeholder pseudo-element selector instead of
several vendor prefixes.
2019-08-12 12:54:44 +02:00
Johannes Meyer 6bbafd1c3e
Merge pull request #3899 from Icinga/bugfix/solarized-theme-contrast-issues-3892
Bugfix/solarized theme contrast issues 3892
2019-08-12 11:24:31 +02:00
Johannes Meyer 6e5353fd50 solarized-dark: Let the dashboard settings look less weird 2019-08-12 11:17:12 +02:00
Feu Mourek 18f23ec551 Fix menu header contrast (#3898)
fixes #3897
2019-08-12 11:01:14 +02:00
Feu Mourek 359d7f735b CSS: Edit form control classes in solarized dark 2019-08-08 11:00:13 +02:00
Eric Lippmann 53529115e5 Fix bad looking login form errors 2019-08-05 17:17:32 +02:00
Florian Strohmaier fab25f87a7 Login: Fix error messages 2019-08-05 15:47:17 +02:00
Feu Mourek 75971ac3e2 Apply styles to editor / fiter controlls as well 2019-08-05 13:02:21 +02:00
Feu Mourek 61eabf0724 Darken menu styles and add splash of colour for selected 2019-08-05 12:51:43 +02:00
Feu Mourek b71f0780a7 Sort colour variables and adapt menu colours 2019-08-02 15:47:11 +02:00
Johannes Meyer 5333bbf04d loader.js: Also set title directly if layout is base target 2019-08-02 15:42:58 +02:00
Feu Mourek bc4bb6741b Add form-backgrounds colour and apply to toggles and buttons 2019-08-02 12:53:52 +02:00
Feu Mourek 7acdf789e0 Change input background colour to darker shade 2019-08-02 10:54:11 +02:00
Feu Mourek f9a18e1ee6 Fix contrast for form inputs
refs #3892
2019-08-01 13:59:16 +02:00
Johannes Meyer 5a57903f6c forms.less: Fix element error layout 2019-07-30 10:17:57 +02:00
Eric Lippmann bfec423eae Compat: Provide empty LESS mixin .code()
Some 3rd party modules (e.g. vsphere) use this mixin (though we never had it).
With lessphp version 0.5.0 using undefined mixins now throws exceptions.
Since we can't rely that users upgrade those modules first,
we provide the mixin for compatibility here.
2019-07-30 08:31:03 +02:00
Johannes Meyer b31dd77812
Merge pull request #3676 from Icinga/feature/form-styling
Improve look of our forms
2019-07-30 08:26:08 +02:00
Johannes Meyer 5849c06314 storage.js: Don't try and allow to register events for non-local backends 2019-07-30 08:17:29 +02:00
Eric Lippmann 62d4e73d5a Use session storage for sidebar state
The sidebar state is now maintained per tab/window because users view
different things in different tabs/windows. E.g. users work with a
specific module constantly clicking through the menu while having
other tabs/windows with some important dashboards open.
When the sidebar is closed in one tab/widnow, it should not close
the sidebar in the other tabs/windows.
2019-07-30 08:14:49 +02:00
Eric Lippmann a1a18feb04 js/storage: Allow to set the storage backend 2019-07-30 08:14:49 +02:00
Markus Frosch c66d206042 Cleanup executable flags on files
Some or scripts, but if so just vendor artifacts
2019-07-30 07:53:54 +02:00
Johannes Meyer eb0d808aec collapsible.js: Enhance height calculations
`data-visible-height` now only covers the actual content height
2019-07-29 16:02:48 +02:00
Johannes Meyer 27cd34dd2d js: Add new jQuery plugin `getData()` 2019-07-29 16:02:48 +02:00
Johannes Meyer 9e3c9bbab7 css: Don't apply .collapsible-control style to custom controls 2019-07-29 16:02:48 +02:00
Florian Strohmaier 1d5cfef78d CSS: Fix input height in filter editor 2019-07-29 14:19:59 +02:00
Johannes Meyer c884a9b61d forms.less: Add general style for fieldsets 2019-07-29 10:19:39 +02:00
Johannes Meyer 23d9eb8f38 forms.less: Move role-form related styles to widgets.less 2019-07-29 10:19:39 +02:00
Florian Strohmaier faca0962ef Navigation: Hide search clear button when value is empty
refs #3676
2019-07-29 10:19:39 +02:00
Florian Strohmaier d4c7566aad CSS: Fix menu search input styles
refs #3676
2019-07-29 10:19:39 +02:00
Florian Strohmaier 4235d4a392 CSS: Prevent collapsible fieldset headings in form to be selected on open 2019-07-29 10:19:39 +02:00
Florian Strohmaier 3c48daf022 CSS: Style role form 2019-07-29 10:19:39 +02:00
Florian Strohmaier f57fc96b57 Add styles for roles form 2019-07-29 10:19:39 +02:00
Johannes Meyer 8cd6a46388 collapsible.js: Add support for custom control elements 2019-07-29 10:19:29 +02:00
Johannes Meyer c7a3783034 css: Avoid that toggle switches break onto a new line in minimal layout 2019-07-29 10:17:59 +02:00
Johannes Meyer b1881c6a53 forms.less: Enhance differentiation between layout and style 2019-07-29 10:17:59 +02:00
Johannes Meyer 4675d24a03 css: Re-add hover effect for .control-info elements 2019-07-29 10:17:59 +02:00
Johannes Meyer 13ad506393 css: Rename class `icinga-forms` to `icinga-form` 2019-07-29 10:17:59 +02:00
Johannes Meyer eaeda473e5 forms.less: Ensure that spinners are properly aligned..
..no matter how big the font size is
2019-07-29 10:17:59 +02:00
Johannes Meyer 212606de78 setup: Apply new icinga form style 2019-07-29 10:17:59 +02:00
Johannes Meyer 47a4d8d410 Fix form layout/button placement when responsive 2019-07-29 10:17:59 +02:00
Johannes Meyer 297e6fc71d forms.less: Remove negative margin from .control-group elements 2019-07-29 10:17:59 +02:00
Johannes Meyer 346083109a Apply new form style to the filter editor 2019-07-29 10:17:59 +02:00
Johannes Meyer 05613c413d Enhance toggle-switch, spinner and control-info placement
tested with Chromium, IE11 (Win7), Edge (Win10)
2019-07-29 10:17:59 +02:00
Johannes Meyer d0eca387ee js: Also handle spinner elements which are not direct descendants of an element 2019-07-29 10:17:59 +02:00
Johannes Meyer bc2e7588d7 FormNotifications: Don't ignore warning and error notifications 2019-07-29 10:17:59 +02:00
Johannes Meyer 5c6d04f5d7 LimiterControlForm: Remove class inline and update css 2019-07-29 10:17:59 +02:00
Johannes Meyer 02565ec326 user/list: Make backend selection look good again 2019-07-29 10:17:59 +02:00
Johannes Meyer cb51d9cf55 forms.less: Only apply form layout and design to our own forms
See the file's header for more details.
2019-07-29 10:17:59 +02:00
Johannes Meyer 923582c5de mixins.less: To pass css lists to less mixins a trailing semicolon is required 2019-07-29 10:17:59 +02:00
Florian Strohmaier 24723b662c CSS: Add spacing below .filter 2019-07-29 10:17:59 +02:00
Florian Strohmaier ace9fe6526 CSS: Add styles for graphite date and timepicker
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier 3ec11f3bf9 CSS: Fix submit button jumping on submit
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier f14256a7ee CSS: Adapt form design with filter editor
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier b21c9d6ebd CSS: Optimize filter editor layout 2019-07-29 10:17:59 +02:00
Florian Strohmaier f70f996085 Announcements: Increase font-size and align control layout
refs #3676
refs #3560
refs #3839
2019-07-29 10:17:59 +02:00
Florian Strohmaier 7eca14386a CSS: Align menu search input icon 2019-07-29 10:17:59 +02:00
Eric Lippmann b8c607b6a6 CSS: Fix comments and add missing semicolons 2019-07-29 10:17:59 +02:00
Florian Strohmaier 70a891825e CSS: Grant filter icon some space to breathe 2019-07-29 10:17:59 +02:00
Florian Strohmaier 9caa345948 CSS: Fix Detail view inline check now button 2019-07-29 10:17:59 +02:00
Florian Strohmaier d125b44188 CSS: Fix multiselect inputs 2019-07-29 10:17:59 +02:00
Florian Strohmaier 7d68212962 CSS: Fix select line height in controls 2019-07-29 10:17:59 +02:00
Florian Strohmaier 0fa97ea420 CSS: Align control-group elements to vertical top 2019-07-29 10:17:59 +02:00
Florian Strohmaier 7d8cdefc7d CSS: Prevent selects with long option values from exceeding the container 2019-07-29 10:17:59 +02:00
Florian Strohmaier d452dfefaf CSS: Tidy redundant code 2019-07-29 10:17:59 +02:00
Florian Strohmaier fa4d39f7c6 CSS: Compensate select line height inconsistencies 2019-07-29 10:17:59 +02:00
Florian Strohmaier 0083a193b1 CSS: Add filter input styles 2019-07-29 10:17:59 +02:00
Florian Strohmaier 333d702a9a CSS: Use vars for input padding 2019-07-29 10:17:59 +02:00
Florian Strohmaier 21055d2bfe CSS: move controls specific styles to controls.less 2019-07-29 10:17:59 +02:00
Florian Strohmaier 1c12d84eee CSS: Reset line-height for inputs in .control-groups
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier e04d42b7a9 CSS: Move controls styles to controls.less
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier 54ba112d64 CSS: Align controls elements
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier 73f82d2d31 CSS: align corrections
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier f8ccce9bb8 CSS: Apply margin to spinner in form-controls only
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier 59271fd8c0 CSS: Align control-info fly over correctly
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier e1fd0899dc CSS: Increase form-description-icon size
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier 3a3fce23f7 CSS: Right align form control elements
refs #3676
2019-07-29 10:17:59 +02:00
Florian Strohmaier a43b54ae22 CSS: Fix layout issues
refs #3676
2019-07-29 10:17:59 +02:00
Jennifer Mourek bf48b6d26b WIP: New form styles
Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2019-07-29 10:17:59 +02:00
Johannes Meyer 23590c5e20 js: Remove redundant vendor libraries 2019-07-29 09:52:52 +02:00
Johannes Meyer a4848803c8 collapsible.js: Listen on `#layout` for rendered events 2019-07-26 16:23:18 +02:00
Johannes Meyer 91a8bdf786 collapsible.js: Don't collapse until at least twice the visible space is required 2019-07-26 07:36:17 +02:00
Johannes Meyer 1fd673a034 collapsible.js: Let fade effect look good in containers with .impact 2019-07-26 07:36:17 +02:00
Johannes Meyer 74cb0ef3c9 collapsible.js: Don't enforce `data-visible-rows` for tables and lists 2019-07-26 07:36:17 +02:00
Johannes Meyer 2179518904 storage.js: Properly check if we have any keys left before clearing the storage 2019-07-26 07:36:17 +02:00
Johannes Meyer 9d0ef4cf33 Wrap any markdown output with a `<section>` and remove explicit containers 2019-07-23 14:45:32 +02:00
Florian Strohmaier 31815d1035 CSS: Adjust logo-container to match tab’s height, when sidebar collapsed 2019-07-23 11:36:04 +02:00
Johannes Meyer f1db972cc5 ui.js: Only set tabindex=-1 on elements which are otherwise not focusable 2019-07-22 13:41:52 +02:00
Johannes Meyer dd4cfaba50 navigation.js: Store and load sidebar collapse state from localStorage
resolves #3628
2019-07-18 09:43:22 +02:00
Johannes Meyer 3310bbc680 js: Patch vendor library sparkline to ensure compatibility with jQuery v3 2019-07-18 07:57:14 +02:00
Johannes Meyer f8d3f43965 js: Drop vendor library tipsy 2019-07-18 07:57:14 +02:00
Johannes Meyer eac3a106ad Render `<title>` tags for line and bar charts instead of tipsy titles 2019-07-18 07:57:14 +02:00
Johannes Meyer c100654412 js: Integrate vendor library jquery-migrate 2019-07-18 07:57:14 +02:00
Johannes Meyer ec3a6b0572 ui.js: Don't use jquery blur shorthand but the element's native method 2019-07-18 07:57:14 +02:00
Johannes Meyer b168c3d7db js: Don't use jquery.focus shorthand anymore, but icinga.ui.focusElement 2019-07-18 07:57:14 +02:00
Johannes Meyer f844094475 ui.js: Don't use deprecated .size() method but property .length 2019-07-18 07:57:14 +02:00
Johannes Meyer 6323a065ea loader.js: Keep using the promise interface for complete callbacks 2019-07-18 07:57:14 +02:00
Johannes Meyer 5cf71c9bbd js: Drop iframe-upload fallback for IE 2019-07-18 07:57:14 +02:00
Johannes Meyer 97d5b39662 helpers.js: Drop polyfills for IE8 and IE9 2019-07-18 07:57:14 +02:00
Johannes Meyer 91e4baa221 Remove remaining special cases for IE8 2019-07-18 07:57:14 +02:00
Jennifer Mourek f6a5f952bb loader.js: Remove comment 2019-07-18 07:56:09 +02:00
Florian Strohmaier 5fe264be6a JS: Fix errors
refs #3813
2019-07-18 07:56:09 +02:00
Florian Strohmaier 77c8111162 JS: Update jquery to 3.4.1
refs #3813
2019-07-18 07:56:09 +02:00
Jennifer Mourek 55d35b9e5b Remove jquery 1.11 dependency
refs #3784
2019-07-18 07:56:09 +02:00
Johannes Meyer 8893db0cbc js: Drop a StorageAwareMap entirely from storage if all keys expired 2019-07-18 07:43:42 +02:00
Johannes Meyer cfa3af51db storage.js: Don't return in `StorageAwareMap.forEach` 2019-07-17 13:12:41 +02:00
Johannes Meyer 5c290e1b68 collapsible.js: Rename event callbacks
`onExternalCollapse` => `onCollapse`
`onExternalExpansion` => `onExpand`
2019-07-17 13:12:41 +02:00
Johannes Meyer c976eb48c9 storage.js: Properly handle invalid values 2019-07-17 13:12:41 +02:00
Johannes Meyer 2280551484 storage.js: Use substring instead of startsWith on strings
IE11 doesn't support startsWith..
2019-07-17 13:12:41 +02:00
Johannes Meyer f11de266f4 storage.js: Avoid to call JSON.parse with an empty string
IE11 seems not to like this..
2019-07-17 13:12:41 +02:00
Johannes Meyer 9561057b81 storage.js: Allow to subscribe with multiple handlers to the same key 2019-07-17 13:12:41 +02:00
Johannes Meyer 2bf050f57d storage.js: Don't use the native event mechanism but a simple callback handling 2019-07-17 13:12:41 +02:00
Johannes Meyer c05291296a collapsible.js: Only apply external expansions/collapses if necessary 2019-07-17 13:12:41 +02:00
Johannes Meyer 2fd7ba5aed storage.js: Utilize a single event listener for all storage events
It doesn't make sense to register an event listener for every
created storage instance. They're all using entirely different
keys after all.
2019-07-17 13:12:41 +02:00
Johannes Meyer 2ac848828a storage.js: Prevent conflicts with other apps accessing the same storage 2019-07-17 13:12:41 +02:00
Johannes Meyer 0f16e20d92 storage.js: Write `null` instead of `undefined` to the storage
`undefined` causes the key to be ignored by JSON.stringify
2019-07-17 13:12:41 +02:00
Johannes Meyer 383895fd92 storage.js: Pass the value to event subscribers of StorageAwareMap 2019-07-17 13:12:41 +02:00
Johannes Meyer 8937e11a09 storage.js: Properly handle if keys are entirely removed 2019-07-17 13:12:41 +02:00
Johannes Meyer 363486277b storage.js: Rename Storage.subscribe to onChange 2019-07-17 13:12:41 +02:00
Johannes Meyer c5beabf891 storage.js: Cleanup `StorageAwareMap` key corpses after 90 days 2019-07-17 13:12:41 +02:00
Johannes Meyer cbd1e1bb92 storage.js: Drop `StorageAwareSet` and replace it with `StorageAwareMap` 2019-07-17 13:12:41 +02:00