953 Commits

Author SHA1 Message Date
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
Johannes Meyer
9dae3bdf88 loader.js: Only abort GET autorefresh requests 2021-02-18 14:10:02 +01:00
Johannes Meyer
57b4a31bc3 js: Don't navigate right when opening a modal
Isn't the prettiest fix. I would have liked to completely
remove the target preparation from `getLinkTargetFor`.
But this is the easiest fix since it's only for modals
that preparation is not desired. It's also the most
compatible change.
2021-02-17 12:51:26 +01:00
Johannes Meyer
defd8132aa form.js: Don't abort content updates in case of auto submits 2021-02-09 09:13:11 +01:00
Johannes Meyer
f2e53d420b js: Don't mark requests caused by __BACK__ as autorefresh
It's not an autorefresh and causes issues with form.js otherwise.
2021-02-05 16:38:17 +01:00
Johannes Meyer
eff5c4e1d1 input-enrichment.js: Import required classes with require() 2021-01-14 11:57:24 +01:00
Johannes Meyer
dc5e39ef1c input-enrichment.js: Add method update() 2021-01-14 11:57:24 +01:00
Johannes Meyer
67de8a079a js: Initialize all types of input enrichments 2021-01-14 11:57:24 +01:00
Johannes Meyer
fcd0a0a698 complete.js: Keep IE11 compatibility 2021-01-14 11:57:06 +01:00
Johannes Meyer
4019522da1 loader.js: Disable inputs in forms not having role search
Previously only the `#search` input wasn't disabled, now also
the new filter input isn't. This is required to re-focus the
input after submission as disabled elements loose focus.
2021-01-14 11:57:06 +01:00
Johannes Meyer
3c41c14653 complete.js: Properly manage enrichment persistence 2021-01-14 11:57:06 +01:00
Johannes Meyer
d19a55311b complete.js: Keep used terms in case of an autorefresh 2021-01-14 11:57:06 +01:00
Johannes Meyer
5924d610a1 js: Provide additional parameters for events beforerender and rendered
beforerender: content, action, autorefresh, scripted
rendered: autorefresh, scripted
2021-01-14 11:57:05 +01:00
Johannes Meyer
dad0122f11 js: Introduce behavior complete.js 2021-01-14 11:56:06 +01:00
Johannes Meyer
46769b9be2 js: Add .impact to .content if a control is automatically submitted 2021-01-13 17:19:39 +01:00
Johannes Meyer
6197d5f0af form.js: Only track real value changes and reset upon reverts 2021-01-13 17:19:18 +01:00
Johannes Meyer
ca74e14812 ui.js: Don't require jQuery objects in getUniqueContainerId 2021-01-13 17:18:55 +01:00
Johannes Meyer
fbf3a1f757 loader.js: Don't add form submits other than GETs to the history
This has previously not been an issue, as form submits seem to have
never targeted another url than their container's current one.
Though any form that did this, was pushed to history upon submit.
This happens now only for `GET` forms.
2021-01-13 17:17:48 +01:00
Johannes Meyer
e346c1c88c events.js: Also accept $autoSubmittedBy from event.detail 2021-01-13 17:17:18 +01:00
Johannes Meyer
3e29fba052 js: Transmit X-Icinga-Autorefresh=1 with autorefresh requests 2021-01-13 17:16:53 +01:00
Johannes Meyer
2c7b2330a7 loader.js: Support behaviors as well as multipart update targets 2021-01-13 17:16:30 +01:00
Johannes Meyer
f05f905d14 history.js: Set lastPushUrl in method replaceCurrentState()
Without this, any subsequent call to `pushCurrentState()` has
no effect in case the same url is used that was replaced.
2021-01-13 17:15:58 +01:00
Johannes Meyer
5a38977906 js: Add define.js 2020-11-18 13:21:33 +01:00
Johannes Meyer
d918d6c86f
Merge pull request #4235 from Icinga/fix/sparkline-js-performance
Drop sparkline.js and render inline-pies as SVG
2020-11-18 09:37:31 +01:00
Johannes Meyer
0b94489c7e loader.js: Introduce new header X-Icinga-Location-Query
This header is only used in case the response includes
multipart content. It's meant to provide a new query
string that replaces the one of the targeted container
and the resulting change also replaces the current
history entry.
2020-11-06 11:26:05 +01:00
Johannes Meyer
70c3023f3c loader.js: Also match newlines when interpreting multipart content 2020-11-06 11:21:33 +01:00
Johannes Meyer
e68e8c8e9c loader.js: Only discard content if a renderHook returns null
Previously any false value had this effect, though empty strings
were also discarded due to this. However, in case an empty string
is the content in the first place, the content must be updated.
2020-11-06 11:21:33 +01:00
Johannes Meyer
4ce9165f77 js: Don't force focus in multipart updates if focus isn't affected 2020-11-06 11:20:28 +01:00
Johannes Meyer
37fb455977 js: Drop sparkline lib and behavior 2020-09-28 16:39:54 +02:00
Johannes Meyer
2a64a97302 js: Don't add class impact to already finished targets 2020-06-08 10:49:02 +02:00
Johannes Meyer
a59977f181 js: Properly parse/build url query values
fixes #4167
2020-06-05 08:57:30 +02:00
Johannes Meyer
74a9a8edf0 modal.js: Request compact content with showCompact 2020-06-04 08:50:41 +02:00
Alexander A. Klimov
4232a344b7 Icinga.Loader#onFailure(): treat 5xx response as connection failure
... not to break the container with the reverse proxy's response not fitting into our layout.

refs #4133
2020-04-24 08:39:23 +02:00
Johannes Meyer
344598e845 loader.js: Wait for cols being painted prior adding class impact
Allows for the new loading effect's transition to play correctly
also for columns which get opened the first time.
2020-04-14 10:40:23 +02:00
Johannes Meyer
969c1615c7 history.js: Don't load location bar as if it's an autorefresh 2020-02-28 14:37:46 +01:00
Yonas Habteab
0432b7d50d Revert "JS: Do not apply 'menu-hovered' on #layout"
This reverts commit 5443bfe9fa02abdff8e785d8c3186e609f317c54.
2020-02-28 11:36:04 +01:00
nmartini
1cf2f767a2 Make sure that class container has its container 2020-02-28 08:30:23 +01:00
Johannes Meyer
fd97e8b056 actiontable.js: Properly handle encoded filter values 2020-01-30 08:31:06 +01:00
Johannes Meyer
5a031bf659 utils.js: Fix method removeUrlParams() 2020-01-28 15:23:41 +01:00
Johannes Meyer
3464455021 js: Preserve scroll position if focus is forced to a particular element 2020-01-16 15:54:17 +01:00
Johannes Meyer
8bc84a5f9e js: Teach the url parsing a final lesson about query strings
`utils.parseParams()` now returns an array instead of an object.
This may require some changes in modules using this directly or
by `utils.parseUrl().params`

refs #4056
2020-01-16 13:45:10 +01:00
Eric Lippmann
0355b20da0 JS: Respect container in Icinga.Ui.focusElement()
Though IDs should be unique across the whole page, focusElement() must
not fail if there is the same anchor in the left and right column.
focusElement() now also respects the container when searching the
element to focus by ID.
2020-01-16 10:47:28 +01:00
Johannes Meyer
8d4e0126ca
Merge pull request #4055 from Icinga/feature/js-history-replace-state
JS: Introduce Icinga.History.replaceCurrentState()
2020-01-16 08:54:49 +01:00
Johannes Meyer
4c39772667
Merge pull request #4053 from Icinga/feature/js-addUrlFlag
JS: Introduce Icinga.Utils.addUrlFlag()
2020-01-16 08:14:20 +01:00
Johannes Meyer
477649900c js: Also adjust utils.removeUrlParams()..
..and properly handle flags in `utils.addUrlParams()`

refs #4056
2020-01-16 08:13:11 +01:00
Johannes Meyer
fdd14c96b1 js: Only encode new params in utils.addUrlParams() 2020-01-15 16:47:30 +01:00
Johannes Meyer
3db65d79c6 js: Fix improper parsing in utils.parseParams() 2020-01-15 16:46:46 +01:00