the backend will have actual explicit length limits on the
description properties (was limited indirectly through PUT/POST
request size limit of 64 KiB), so convey that limit also in the GUI.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
while the command itself is 'suspend', the task description
is 'qmpause', so simply add a parameter and overwrite it for the pause
menu item
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
we should not warn for ceph's built-in default value for min_size as
having the min_size half of the size (rounded up) is ok and even the
default for ceph
Since there seems to be no 'quorum based' pg inconsistency recovery[0],
only a copy from the authoritative osd, there is nothing wrong
with setting that.
0: https://docs.ceph.com/en/latest/rados/operations/pg-repair/
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
fixes 'infinite' height of the guest notes, by setting the height on the
container a level up
the notes view itself is already scrollable, so if it is too large,
there'll be a scrollbar
this does not change anything for templates, as there we show nothing
under the notes and thus there the infinite height is ok
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
and also show the retention options that will be used for a given storage. A
user with Datastore.AllocateSpace and VM.Backup can already remove backups from
the GUI manually, so it shouldn't be a problem if they can set the remove flag
when starting a manual backup in the GUI.
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
but not too early. Because of an ExtJS bug/limitation, it can only happen after
the window is rendered, so use an afterrender listener. Without setting the
mask there, the window will be active already before the storage selectors
change listener triggers, which can only happen after the storage selectors
store is loaded.
Made noticable by the new "filling in defaults" behavior, but the issue was
already present earlier, where the compression selector for PBS storages would
be disabled late, after the window was already active.
Also move the setValue call into the afterrender listener, so ordering is easy
to verify/more stable.
Reported-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
so that mailto and mode are not overwritten if the first /vzdump/defaults call
failed, but a later one succeeds.
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
could be triggered when there are no backup storages at all configured or if
the 'Backup now' button is clicked before the storage selector from the guests
'Backup' tab could load its store.
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
Without this the check and the, through the 'install' target
triggered, incremental lint target triggered a full eslint run.
Makes it similar to what PBS did from the beginning of eslint
inclusion..
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
preparatory steps for better make dependencies when executing the
lint check.
People can still just make the .js targets directly or use the
install target.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
there was a spurious leftover single quote("'"), that prevented
the correct css class to be inserted
(e.g., fa-exclamation' instead of fa-exclamation)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
on extjs 7.0, this triggers when the handler is not available anymore,
so use the beforedestroy event instead
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
treelist technically allows deselection and this happens on destruction
in extjs 7.0 so simply return early to avoid errors accessing
components that do not exist anymore
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
else with extjs 7.0, the first render does not happen yet, because
the grid is not visible at that time
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
while the function in '.on' and '.un' are identical, they are not the
*same* function, thus the '.un' does not really remove the listener,
and we have leftover references to the grid which means it will never
really garbage-collected
instead, use '.mon' on the grid, which automatically cleans up the
listeners
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
otherwise the grid is confused about the row height (since it is
variable here) and renders the scrollbars weirdly
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
match returns 'null' if the regex does not match, which is not
destructurable. so we have to save the match and check if it valid
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
use the node as key, so that a target switch would still trigger a
new one - else there's a slight chance that a user could get the
check out-of-sync (from another node).
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>