Commit Graph

899 Commits

Author SHA1 Message Date
Johannes Meyer 18188f7185 loader.js: Don't load a redirect in col1, if col2 has similar content
fixes Icinga/icingadb-web#284
2021-10-08 17:12:13 +02:00
Ravi Kumar Kempapura Srinivasa 72e63dd0a1 Update selection-info-count immediately on selection
The selection-info-count at the left bottom of host or service info needs to be updated immediately after selection.
Hence use the already defined ´count´ to update the selection info on click. Also, avoid refreshing the active columns.
2021-10-08 15:46:05 +02:00
Johannes Meyer 908adc66c1 js: Don't focus the announcment container
fixes #4543
2021-10-07 15:19:10 +02:00
Johannes Meyer 7ae8f26b92 js: Really maintain refresh interval over redirects
fixes #4549
2021-10-07 14:29:57 +02:00
Johannes Meyer dcf394eaa6 modal.js: Don't disable inputs before the actual form submit is done
fixes Icinga/icingadb-web#376
2021-09-27 14:10:48 +02:00
Sukhwinder Dhillon 15b9bac755 modal.js: Do not open multiple modal windows by clicking more than once 2021-09-21 16:02:06 +02:00
Sukhwinder Dhillon 414a2ff7aa modal.js: Submit form only once 2021-09-21 12:38:07 +02:00
Johannes Meyer 47891ddc72 datetime-picker.js: Add support for french 2021-07-27 11:27:35 +02:00
Johannes Meyer bf229c97b8 datetime-picker.js: Don't do anything with native inputs
fixes #4442
2021-07-27 09:54:28 +02:00
Johannes Meyer a4376cd14f datetime-picker.js: Don't append nodes to content..
..but individual dynamic containers.

fixes #4461
2021-07-26 11:55:50 +02:00
Johannes Meyer 832a1c88c4 collapsible.js: Properly setup collapsibles in `onLayoutChange` 2021-07-23 17:03:49 +02:00
Johannes Meyer 228e503131 js: Allow to reload the window 2021-07-07 09:41:48 +02:00
Johannes Meyer 54acf35c69 Revert "js: Don't bypass our cache when reloading CSS"
This reverts commit 1c7e5b31bf.

fixes #4417
refs #4340
2021-07-02 14:46:22 +02:00
Florian Strohmaier 8b7a3f05af JS: Add icon to js notifications 2021-06-30 08:33:51 +02:00
Johannes Meyer 23ee95e45f js: Only show a single datetime picker in each container at a time 2021-06-22 11:22:19 +02:00
Johannes Meyer c01e0f9dc8 js: Don't add scheme and location when reloading CSS
It's not necessary and may (has) lead to the following case:
`http://localhost/http://localhost/icingaweb2/css/icinga.min.css`
2021-06-18 17:19:18 +02:00
Johannes Meyer 1c7e5b31bf js: Don't bypass our cache when reloading CSS
The timestamp previously added, forces the browser to ignore
its own cache and thus it doesn't transmit the `If-None-Match`
header. We then re-calculate the the CSS possibly for no reason.
If there is a re-calculation indeed required it should be still
done now since the ETag transmitted by the browser is outdated.

refs #4340
2021-06-16 14:59:19 +02:00
Johannes Meyer 7c4488ddc7 input-enrichment: Fix incorrect identification of enriched elements 2021-06-09 15:19:05 +02:00
Johannes Meyer e794967389 js: Require libs from `icinga/icinga-php-library` now 2021-06-01 12:06:58 +02:00
Johannes Meyer cc0c6fc71b js: Avoid usage of `.matches()` as it isn't available with IE11 2021-05-25 17:19:03 +02:00
Johannes Meyer 4236dd84d9 datetime-picker.js: Show an icon inside the flatpickr input 2021-05-17 13:20:43 +02:00
Johannes Meyer 5a6e3cf32f datetime-picker.js: Cleanup unused flatpickr instances 2021-05-17 13:20:43 +02:00
Johannes Meyer e704309c41 modal.js: Trigger `close-modal` when.. closing a modal 2021-05-17 13:20:43 +02:00
Johannes Meyer 90a056d988 datetime-picker.js: Append flatpickr container not to body
The body isn't cleared without a full reload. This way the
flatpickr container resides in the same container as the
input's form.
2021-05-17 13:20:43 +02:00
Johannes Meyer 162d898d42 js: Introduce `DatetimePicker` behavior
Utilizes `flatpickr` from ipl-web.
2021-05-17 13:20:42 +02:00
Johannes Meyer c202eccf65 define.js: Support libs that require `exports`
I'm not sure how this actually is supposed to work,
but I believe this is how we can support it so that
it's still useful.
2021-05-17 13:20:42 +02:00
Johannes Meyer cb4e6011f3 js: Remove jquery-migrate 2021-05-17 10:44:27 +02:00
Johannes Meyer 54720a1fc1 collapsible.js: Fix flickering 2021-05-12 09:06:26 +02:00
Johannes Meyer f50c095e15 js: Support custom collapsible controls in place of the default one 2021-05-05 17:59:12 +02:00
Johannes Meyer 85e9f06510 js: Mark autosubmits as autosubmits, not as autorefreshes
fixes #4346
2021-04-12 09:39:48 +02:00
Johannes Meyer aa03631eef js: Allow to mark requests explicitly as autosubmits 2021-04-12 09:39:48 +02:00
Johannes Meyer a8be92c245 loader.js: Still apply some accessibility changes..
..if a renderHook discards an autorefresh. There is
unfortunately no way to distinguish between a renderHook
that really discards changes or one that applies them
on the DOM itself. If it's the first, this change
*shouldn't* hurt. If it's the latter, users should
benefit.
2021-03-31 12:38:35 +02:00
Johannes Meyer e65ec1900a js: Add new special redirect target `__CLOSE__`
This has the same effect as a normal redirect. The benefit of it however
is that the server doesn't need to know what's being shown in the left
column. It just instructs the client to close the right and refresh the
left column. But still produces a new history state, it's a forward
navigation nonetheless.
2021-03-30 13:25:40 +02:00
Johannes Meyer 94a16056d7 js: Speedup collapsible.js by a factor of 10
It's still relatively slow as it forces a reflow in the
browser if there are many collapsibles in the view.
I didn't manage to identify the issue yet, but I left
a TODO at the location that's responsible for it.
2021-03-30 09:31:57 +02:00
Johannes Meyer 1675cc6d74 js: Make Utils.getCSSPath work without a jQuery set 2021-03-30 09:31:57 +02:00
Johannes Meyer 25263e767b js: Allow to disable persistence for collapsibles 2021-03-30 09:27:22 +02:00
Johannes Meyer 07251e6d5e modal.js: Really only close the modal if the user clicks outside of it
The click event fires only after the mouse button is released, which
may happen on the outside, after the user tried to select something
and overrun accidentally. A close is then not desired as the user
may loose input. The mousedown event fires right when the button
is pressed and suffices on the outside of the modal.
2021-03-09 08:52:10 +01:00
Johannes Meyer 7790a72efa js: Only close a modal if an ESC press is not handled otherwise 2021-03-09 08:52:10 +01:00
Johannes Meyer b4531b6b45 js: Add support for the `search-editor` input enrichment
Also makes it possible to enrich inputs in modals
2021-03-09 08:52:10 +01:00
Johannes Meyer b17be671bc js: Accept non-jQuery nodes in method `EventListener.bind()` 2021-03-09 08:52:10 +01:00
Johannes Meyer e4ff391b1a js: Trigger a `rendered` event if SearchBar editor is opened 2021-03-09 08:52:10 +01:00
Johannes Meyer f44ea884bd js: Suspend auto refresh once `search-bar` enrichment opens its editor 2021-03-09 08:52:10 +01:00
Johannes Meyer 1f29c4a2fe js: Allow to suspend auto refresh for individual containers 2021-03-09 08:52:10 +01:00
Johannes Meyer 4366f93127 js: Support new input enrichment type `search-bar` 2021-03-09 08:52:10 +01:00
Johannes Meyer 027e468943 js: Update a form's action if it's a auto submit response with `X-Icinga-Location-Query` 2021-03-09 08:52:10 +01:00
Johannes Meyer 43dd89f946 js: Also support `_self` and such target ids for response header `X-Icinga-Container`
The server can now instruct the client to render the response in a different container
2021-03-09 08:52:10 +01:00
Johannes Meyer 6e8ca9cdda js: Add method `identifyLinkTarget()` to the loader 2021-03-09 08:52:10 +01:00
Johannes Meyer 4f57aa68cd js: Transmit `X-Icinga-Container` for all requests
This tells the server which container the client will use
to render the response in
2021-03-09 08:52:10 +01:00
Johannes Meyer 4d4f5b3a69 js: Don't serve scripts utilizing ECMA2016+ features
i.e. library javascript assets
2021-02-22 16:01:42 +01:00
Johannes Meyer 5c5e83a700 loader.js: Don't use the regex DotAll modifier, it's ES2018+ only
i.e. not supported by Microsoft Edge
2021-02-22 15:07:55 +01:00