Commit Graph

2328 Commits

Author SHA1 Message Date
Sukhwinder Dhillon 8739a9da73
Fix setup wizard (#5094) 2023-09-07 13:37:10 +02:00
Johannes Meyer 6e16ded825 loader.js: Don't attempt to load an extra update to a closed column 2023-09-07 13:00:45 +02:00
Johannes Meyer a3c04f9108 loader.js: Allow to initiate a refresh with `__REFRESH__` 2023-09-07 12:59:53 +02:00
Johannes Meyer 8f5b62f532 loader.js: Perform a proper redirect upon `__CLOSE__`
This allows the temporary adjustment of the autorefresh
interval.
2023-09-07 12:07:48 +02:00
Johannes Meyer 03f62887b8 loader.js: Don't refresh twice upon `__CLOSE__` 2023-09-07 09:42:05 +02:00
Sukhwinder Dhillon 9dd21841a3 loader.js: Push current state to history only on `onComplete`.
- Previously, in case of `abort` the url was already pushed to history at the beginning of `onFailure`, setting `addToHistory` to true only prevents it from being added twice (again in `onComplete`).
- Now we only push the url to history in `onComplete`, so setting `addToHistory` to false is only necessary if req is scripted.
- We intentionally push the canceled url into history to continue navigating with the browser`s back/forward key.
2023-09-07 09:22:24 +02:00
Sukhwinder Dhillon d794439537 ui.js: Update browser address bar url when container closes
`stopPendingRequestsFor()` cancel the pending request but push the canceled url to history (by calling `loader::OnFailure` internally).
Now the `icingaUrl` is set again, remove it and push again the current state to history.
2023-09-07 09:22:24 +02:00
Sukhwinder Dhillon f3f35f86fd ui.js: Add event `column-moved`
- Param1 is the event itself (event.target.id == #col where the content is moved)
- Param2 is the soucre col id, form which the content is moved
2023-09-07 08:57:37 +02:00
Johannes Meyer a9b0e1e2d2 css: Hide details marker of collapsibles in Safari
In Chrome the marker was already invisible since normalize.css
applies `display:block` to `summary`. Hence we should also disable
the marker by default in Safari.

fixes https://github.com/Icinga/icingaweb2-module-businessprocess/issues/406
2023-08-31 13:05:19 +02:00
Johannes Meyer c3b1ad12ab loader.js: Don't update history for redirects
A redirect now also does NOT:

* Remove `.impact` from the container
* Try to set a menu item active..

fixes #4879
2023-08-29 15:02:44 +02:00
raviks789 4e8107c231 RoleForm: Replace static inline styles with css class
The static inline style for resetriction text element is replaced with css class `role-restriction-text`
to avoid Content-Security-Policy violations.
2023-08-28 16:40:37 +02:00
raviks789 da1bf7048d Remove inline scripts
Remove inline scripts present in `layout.phtml` and `logout.phtml` to prevent CSP violation.
2023-08-28 16:40:37 +02:00
raviks789 33a5f765b9 Use `style` element to create css class for dynamic inline style
The `style` element with `nonce` attribute is used to create css classes for
inline styles that are not static. This prevents Content-Security-Policy violations.
2023-08-28 16:40:33 +02:00
raviks789 459f4198c3 Replace static inline styles with css class
The static inline styles are replaced with css class to avoid Content-Security-Policy violations.
2023-08-28 16:30:12 +02:00
Yonas Habteab 9c7d19ea95 JS: Don't always prefix extra updates containers with `#` 2023-08-11 16:14:17 +02:00
Johannes Meyer 4a52a653e4 js: Always load redirects to their designated target
The server applies the redirection magic now, but only
for compatibility reasons.

resolves #4881
2023-08-11 16:08:00 +02:00
Johannes Meyer 51992f414e modal.js: Use a modal toggle's container as redirect target by default
Not the container's base target. The redirect target may still be
overridden by `data-base-target` on the `form` or by the response
using `X-Icinga-Container`.
2023-08-11 10:32:29 +02:00
Johannes Meyer 257a7070a1 js: Support `__CLOSE__` as extra update 2023-08-11 10:32:29 +02:00
Johannes Meyer eed6374dd2 js: Enhance server side container closing
* Let response header `X-Icinga-Container` either influence a request's `$target` or `$redirectTarget`, but not both
* Close a request's `$target` instead of the `$redirectTarget` upon the redirect url `__CLOSE__`

* Issuing a `__CLOSE__` in a detail url still closes `#col2` and refreshes `#col1`
* Issuing a `__CLOSE__` for a nested container still empties it
* Issuing a `__CLOSE__` in a modal, now refreshes the modal openers container
* If `X-Icinga-Extra-Updates` is set, automatic refreshing won't happen
2023-08-11 10:32:29 +02:00
Yonas Habteab 4ccebb78b5 `loader.js`: Allow to override the actual form action using `formaction` attr 2023-07-18 10:47:52 +02:00
Johannes Meyer 10d3fb64f9 js: Automatically transform .time-until widgets into .time-ago ones 2023-06-22 15:02:37 +02:00
raviks789 f74041e00a Javascript: Add `copy-to-clipboard` behavior
Utilizes `CopyToClipboard.js` from ipl-web
2023-06-20 12:06:27 +02:00
Sukhwinder Dhillon 65b9024bc5 Winter.less: Don't set bg-color to transparent 2023-06-19 10:09:49 +02:00
Sukhwinder Dhillon 09b9d7401c base.less: Make menu nav-level-2 hover better visible 2023-06-19 10:09:36 +02:00
Eric Lippmann a3235555bb js: Also preserve scroll-y upon auto-refresh 2023-05-19 15:29:44 +02:00
Johannes Meyer cb6a0c120f events.js: Trigger a real submit upon autosubmit 2023-05-19 14:53:31 +02:00
Johannes Meyer 7da5eb0972 modal.js: Trigger a real submit upon autosubmit 2023-05-19 14:53:31 +02:00
Johannes Meyer 63eae12d33 loader.js: Transmit nearest identifiable parent as origin..
..upon autosubmit if the real element has no id or name.
2023-05-19 14:42:00 +02:00
Johannes Meyer 88caf3c141 loader.js: Empty nested containers upon `__CLOSE__` 2023-05-19 14:17:41 +02:00
Johannes Meyer cbf8cfc738 js: Transmit `X-Icinga-AutoSubmittedBy` upon autosubmits
This header contains the name or id of the element responsible
for triggering the automatic form submission.
2023-01-12 09:54:18 +01:00
Johannes Meyer 4641d8e820 js: Don't disable inputs upon auto-submits at all 2023-01-12 09:39:31 +01:00
Johannes Meyer 7cea0d78e4 js: Only disable submit buttons on form submit
Previously all `input` elements (text, date, number, ...)
got also disabled. This is unecessary.
2023-01-12 09:39:31 +01:00
Johannes Meyer 12af81d4c3 css: Support fieldsets wrapped by `.control-group` 2022-12-14 13:15:50 +01:00
Johannes Meyer 723eaae08c print.less: Make sure that client print attempts work fine 2022-12-07 11:57:48 +01:00
Johannes Meyer 8cd892359d form.js: Don't ignore autosubmit elements
A while ago this already has changed so that autosubmit
responses are guaranteed to be applied. Thus this
exception is now obsolete.

fixes #4942
2022-12-07 11:57:10 +01:00
Johannes Meyer 9b3e6165ea collapsible.js: Fix invalid default selectors
refs #4884
2022-11-03 16:41:25 +01:00
Johannes Meyer bb4b53e90c css: Optimize performance
I don't quite understand why exactly this rule exposes
such an issue. We have several other rules that are
similar. But they don't reference form elements on the
left. I suspect a different issue somewhere else, this
only exaggerated it.

fixes #4929
2022-10-17 11:30:40 +02:00
Johannes Meyer aef6e99cf8 collapsible.js: Add support for external controls 2022-10-10 15:55:33 +02:00
Florian Strohmaier f13161b69d collapsible.js: Enhance markup flexibility 2022-10-10 15:54:24 +02:00
Johannes Meyer 22cb1f2143 utils.js: Optimize performance of `getCSSPath()` 2022-10-10 10:42:45 +02:00
Johannes Meyer 3c2c79b669 css: Apply `box-sizing:border-box` to all `<details>` children
We have this everywhere else, so it should not be different here.
2022-10-10 10:42:45 +02:00
Johannes Meyer 503f9b7316 PrivilegeAudit: Use the `<details>` tag 2022-10-10 10:42:45 +02:00
Johannes Meyer 5059a782a8 RoleForm: Use the `<details>` tag 2022-10-10 10:42:45 +02:00
Johannes Meyer c4ce98159c collapsible.js: Use ES6's class syntax 2022-10-10 10:42:45 +02:00
Johannes Meyer b0622dcde2 collapsible.js: Don't use jQuery, but some ES6 features 2022-10-10 10:42:45 +02:00
Johannes Meyer 917e68d68d collapsible.js: Minor performance improvements 2022-10-10 10:42:45 +02:00
Johannes Meyer 17bd3ce14f collapsible.js: Use a data-attr to identify collapsible collapsibles 2022-10-10 10:42:45 +02:00
Johannes Meyer 181b18cfec css: Only apply .collapsible-control styles to outer buttons
Inner buttons usually have their own style
2022-10-10 10:42:45 +02:00
Johannes Meyer 222a6a8e0f collapsible.js: Add support for `<details>` 2022-10-10 10:42:45 +02:00
Johannes Meyer e8cae1f28a css: Let collapsible icons be anywhere inside the control 2022-10-10 10:42:45 +02:00