Commit Graph

3951 Commits

Author SHA1 Message Date
Dominik Csapak
108a99ef15 ui: don't set the default value of combogrids to []
the combogrid sets the default itself correctly

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-14 14:56:11 +01:00
Dominik Csapak
574a6da6b9 ui: don't set the default value of combogrids to ''
the combogrid does that itself already

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-14 14:56:11 +01:00
Dominik Csapak
6cfe65ff2e ui: ipset: make ip/cidr required
it is in the backend, so make it required in the gui too

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-14 14:56:11 +01:00
Thomas Lamprecht
a8d1bc80b5 ui: ceph status: rename working state into busy
Working could be confused with "being ok", which isn't what we want to
convey here, as the lack of this status doesn't mean something "isn't
working".

So use busy, not 100% perfect but a bit closer to what we want to
convey while not taking up a whole paragraph or the like.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-13 16:24:04 +01:00
Alexandre Derumier
19823a19c4 ui: ceph status: add pg warning state
Like ceph mgr dashboard, we need a warning state.

- set degraded as warning instead working
- set undersized as warning instead error
- rename error as critical
- add "busy" (info-blue) color for working state
- use warning (orange) color for warning state

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Tested-By: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-By: Aaron Lauterer <a.lauterer@proxmox.com>
 [ TL: fold in CSS class addition ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-13 16:20:01 +01:00
Christian Ebner
038e94bbbe fix #4442: Add date-time filtering for firewall logs
Extend the current firewall log view to add date time based filtering.
The user can switch between live view, which shows logs from the
unrotated log file, or to filter mode, where date time based filtering,
including rotated logs can be performed.

Enable the feature by setting the property and the submit format
for since and until timestamps expected by the api.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
2023-11-13 15:23:49 +01:00
Hannes Laimer
9ed1408b09 ui: add bulk suspend support
Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
2023-11-13 14:14:08 +01:00
Folke Gleumes
7fb70c3b59 ui/acme: switch to new meta endpoint
Besides the switch from tos to meta endpoint, this fixes a visual bug,
where the 'Accept TOS' button would show up, even if no ToS was needed.

Signed-off-by: Folke Gleumes <f.gleumes@proxmox.com>
Reviewed-by: Fabian.Grünbichler <f.gruenbichler@proxmox.com>
Tested-by: Fabian.Grünbichler <f.gruenbichler@proxmox.com>
2023-11-13 12:06:10 +01:00
Dominik Csapak
ed38c56b2b ui: hide bulk migrate options on standalone nodes
since there is nowhere to migrate to and we hide the regular migrate
buttons/options too.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-13 11:19:46 +01:00
Dominik Csapak
01740cb2f7 ui: factor out standalone node check
into Utils and use it where we manually checked that

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-13 11:19:46 +01:00
Dominik Csapak
872e9978fd ui: resource tree: add usage percentage to storage tooltip
it is a bit more verbose than the usage bar

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-12 18:12:59 +01:00
Dominik Csapak
1ed8e0096b ui: resource tree: fix showing empty tooltips
stop the tooltip show when the there is no text
this could happen for e.g. nodes that should not have a tooltip

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-12 18:12:59 +01:00
Dominik Csapak
128e8e826a ui: resource tree: don't save the tooltip
it shouldn't be called that often, and if we save it, it gets outdated,
e.g. when starting/stopping a guest

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-12 18:12:59 +01:00
Dominik Csapak
e3bc13e14a ui: add tooltips to non-full tags globally
by using the delegate function of ExtJS' tooltips on the global
Workspace element and using the proper css selectors

this way, we can limit the tooltips to the non-full ones
(in contrast to using data-qtip on the element, which would
always be show, even for tags with the 'full' style)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-09 12:12:36 +01:00
Dominik Csapak
2f414c50c1 ui: resource tree: limit tooltip to icon and text
and exclude the tags for that, since we want the tags to have their own
tooltips

we use the delegate function of the tooltips for that

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-09 12:12:36 +01:00
Dominik Csapak
9fc36be82a ui: bulk actions: add clear filters button
to be able to clear all of them at once

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-09 12:10:48 +01:00
Dominik Csapak
f0535b036d ui: bulk actions: rework filters and include tags
This moves the filters out of the grid header for the BulkActions and
puts them into their own fieldset above the grid. With that, we can
easily include a tags filter (one include and one exclude list).

The filter fieldset is collapsible and shows the active filters in
parenthesis. aside from that the filter should be the same as before.

To achieve the result, we regenerate the filterFn on every change of
every filter field, and set it with an 'id' so that only that filter is
overridden each time.

To make this work, we have to change three tiny details:
* manually set the labelWidths for the fields, otherwise it breaks
  the ones in the fieldset.
* change the counting in the 'getErrors' of the VMSelector, so that we
  actually get the count of selected VMs, not the one from the
  selectionModel
* override the plugins to '' in the BulkAction windows, so that e.g. in
  the backup window we still have the filters in the grid header
  (we could add a filter box there too, but that is already very crowded
  and would take up too much space for now)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-09 12:10:48 +01:00
Dominik Csapak
1aa92bac27 ui: bulk actions: reorder fields and drop local-storage warning
For a better screen-space utilization use two columns and remove the
local-storage warning, since this is rather obvious anyway.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
 [ TL: slight commit message rewording ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-09 12:10:19 +01:00
Folke Gleumes
2dac21405a fix #2336: ui: adjust message for bulk start/stop/migrate
The message in the Task Log has been 'Start/Stop/Migrate all...',
which is misleading since not everything might be affected by bulk actions.
This also affects the messages send at a nodes startup and shutdown, but
since this just affects a subgroup of VMs/Containers (those who are
onboot=1) the new wording still applies better than the previous.

Signed-off-by: Folke Gleumes <f.gleumes@proxmox.com>
2023-11-07 16:50:56 +01:00
Stefan Lendl
e07191a081 ui: sdn: homogenize the casing of labels
use title case, or upper case for abbreviations, everywhere.

Signed-off-by: Stefan Lendl <s.lendl@proxmox.com>
 [ TL: adapt commit subject to our style guides ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-06 18:17:45 +01:00
Stefan Lendl
9f17d27468 ui: refer to SDN subnets as 'Subnet' not as ID
The Subnet's CIDR in the Edit view is called 'Subnet'.
Also refer to it as Subnet in the list view.

Signed-off-by: Stefan Lendl <s.lendl@proxmox.com>
 [ TL: prefix commit subject with sub-system ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-06 18:17:15 +01:00
Thomas Lamprecht
3632a02974 ui: guest wizard: increase height to match 4:3 ratio
solving an issue where the CPU extra-flags grid had less space than
it's fixed height allowed.
While we also could have reduced that height, having a nicer ratio and
a bit more vertical "breathing room" seem slightly nicer to me.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-06 17:27:02 +01:00
Dominik Csapak
ca97f6301a ui: wizards: allow adding tags in the qemu/lxc create wizard
in the general tab in the advanced section.

For that to work, we introduce a new option for the TagEditContainer
named 'editOnly', which controls now the cancel/finish buttons,
automatically enter edit mode and disable enter/escape keypresses.

We also prevent now the loading of tags while in edit mode, so the tags
don't change while editing (this can be jarring and unexpected).

Then we wrap that all in a FieldSet that implements the Field mixin, so
we can easily use that in the wizard. There we set a maxHeight so that
the field can grow so that it still fits in the wizard.

To properly align the input with the '+' button, we have to add a custom
css class there. (In the hbox we could set the alignment, but this is
not possible in the 'column' layout)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-11-06 17:02:08 +01:00
Thomas Lamprecht
81e102ebc2 ui: disable new notification UI for now, will be reworked
Lukas is currently reworking this so that we have a single panel,
where the filters are match-entries that can also provide the
functionality of the hard-coded filters in the other panel, reducing
complexity and adding flexibility.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-29 19:47:42 +01:00
Thomas Lamprecht
fea56c69dd ui: datacenter config: adapt to new default MAC prefix
The official Proxmox OUI, assigned by the IEEE, is now used as
default.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-29 18:02:21 +01:00
Alexandre Derumier
202e26d425 sdn: controllers: add isis controller 2023-10-25 13:05:20 +02:00
Dominik Csapak
33506fa03d ui: tags: fix focus for edit mode
such that one can tab through the editable tag fields.
We have to handle that manually, since ExtJs does not expect
contenteditable html tags for focus handling.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-24 16:48:46 +02:00
Christoph Heiss
8dfdcff8f0 ui: container guest status: show distro logo and name in summary header
It fits neatly there, is rather intrusive and yet still visible at
first sight. It also solves the problem of having to create a bigger
row, so that the icon is still easily recognisable. At the default
font-size of 13pt, this really wasn't the case.

Verified that each supported distro is present in the font and the
name matches up and tested through all supported distros (including
'unmanaged').

Signed-off-by: Christoph Heiss <c.heiss@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
 [ TL: html-encode, just to be sure, as reviewed by Dominik ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-23 17:28:14 +02:00
Christoph Heiss
b1785dbc65 ui: container guest status: show privileged status as new row
As that info is not available through the store (which stores the
status), it must be fetched separately.

Signed-off-by: Christoph Heiss <c.heiss@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
 [ TL: rework subject and avoid arror-fn for controller to keep `this`
   working, as reviewed by Dominik ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-23 17:27:14 +02:00
Christoph Heiss
4845cca7e2 expose font-logos via API server and load in UI
Signed-off-by: Christoph Heiss <c.heiss@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-23 17:26:08 +02:00
Thomas Lamprecht
39d58bb5b2 ui: ceph wizard: switch to reef as default release for new setups
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-17 12:55:00 +02:00
Thomas Lamprecht
e828af06bf ui: css: rename pmx-faded utility class to pmx-opacity-75
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-13 17:26:54 +02:00
Thomas Lamprecht
5265a2d1a9 ui: clarify that compression selector is for backup only
other targets/sources might have a different list of available
compressions.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-11 15:59:45 +02:00
Christian Ebner
5cd1349071 ui: makefile: readd compression selector form
Commit 65704cc2a8 apparently removed by
misstake the form/CompressionSelector.js from the Makefile.

It is however required by the backup view to select the compression
method, so readd it.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
2023-10-11 13:39:31 +02:00
Thomas Lamprecht
7e7e2dc421 ui: ceph warnings: drop summary copy button
talked with Aaron off-list and he found it OK to drop this button now
that "Copy Details" became a "Copy All".

This reduces cognitive load on the user as there are half as many
buttons.

Rename "Copy All" to "Copy to Clipboard" now that there's only one and
drop the disable logic.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-10 18:16:34 +02:00
Thomas Lamprecht
e4a2efc611 ui: ceph warnings: do not scroll expanded content into view
this causes jumps and is IMO rather irritating, keep hands off from
scrolling, that's best done by user/browser.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-10 17:38:39 +02:00
Thomas Lamprecht
aa730149a9 ui: ceph warnings: lower opacity for no-details text
to make it more clear that this is not the details, but a UI text
placeholder.
Add a `pmx-faded` class that reduced opacity, as there where recent
discussion about adding such a utility class to widget-toolkit anyway.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-10 17:38:39 +02:00
Thomas Lamprecht
43fdec754d ui: ceph warnings: disable copy-all if there are no additional infos
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-10 17:38:39 +02:00
Thomas Lamprecht
f2a0f0ec72 ui: ceph warnings: switch copy-details to copy-all
With health level, summary and full details.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-10 17:38:39 +02:00
Thomas Lamprecht
d3cbdb217c ui: ceph warnings: use normal font-weight
The use of the <pre> tag will result in font-family `monospace`, and
monospace fonts are often a bit odd w.r.t. size and weight. E.g.,
without this I get a light-font selected, which is hardly visible.

Set the weight to normal, which should not hurt those that got a
better font selection by there system/browser already.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-10 17:38:39 +02:00
Thomas Lamprecht
b2fcefa067 ui: ceph warnings: render whitespace as pre-wrap
To avoid potential horizontal scrolling on smaller screens, which can
be a PITA as the scroll bar is at the bottom, so users have to scroll
down to move it left and right..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-10 17:38:39 +02:00
Thomas Lamprecht
feb192207a ui: ceph warnings: code cleanups
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-10 17:38:39 +02:00
Aaron Lauterer
459b6c3136 ui: ceph: improve discoverability of warning details
by
* replacing the info button with expandable rows that contain the
  details of the warning
* adding two action buttons to copy the summary and details
* making the text selectable

The row expander works like the one in the mail gateway tracking center
-> doubleclick only opens it.

The height of the warning grid is limited to not grow too large.
A Diffstore is used to avoid expanded rows being collapsed on an update.

The rowexpander cannot hide the toggle out of the box. Therefore, if
there is no detailed message for a warning, we show a placeholder text.
We could consider extending it in the future to only show the toggle if
a defined condition is met.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-10 17:38:39 +02:00
Thomas Lamprecht
8e642410c7 ui: subscription upload: trim key from whitespace on submission
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-05 13:43:30 +02:00
Thomas Lamprecht
a341730bd4 ui: subscription upload: increase window and label width
Quite a few translations produce a longer label here, so account for
that, the window is still very small.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-05 13:43:30 +02:00
Thomas Lamprecht
67dc81829f ui: subscription panel: code reduction and modernization
Drop quite a few lines while actually improving readability.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-05 13:43:30 +02:00
Thomas Lamprecht
a622cbf0d9 ui: storage content: transform detected compression extension to lower-case
otherwise the form will be invalid if a uppercase one comes in.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-09-27 16:59:00 +02:00
Fiona Ebner
e11316b6f4 ui: vm selector: gracefully handle undefined/null in setValue function
Suggested-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-09-27 16:53:14 +02:00
Fiona Ebner
651221aec6 ui: vm selector: don't add invalid not found items
Doing a simple numericity check and warn in the console so developers
can notice if there is something off.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2023-09-27 16:53:14 +02:00
Fiona Ebner
4a862f4f02 ui: vm selector: gracefully handle empty IDs in setValue function
An empty string is passed by the backup job window when using
selection mode 'all', would be converted to [""] and wrongly add an
entry with VMID 0 because the item "" could not be found in the store.

Reported in the community forum:
https://forum.proxmox.com/threads/130164/

Fixes: 7a5ca76a ("fix #4239: ui: show selected but non-existing vmids in backup edit")
Suggested-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-09-27 16:53:14 +02:00