with the commit
40342aa6c4
we introduced a validator on the guestidselector, but did not
notice that the wizard checks the validity on the field change event,
but the selector gets valid/invalid in an api callback(so a little later)
with this patch, we now validate the field correctly with validate()
and also listen on the validitychange event to catch it
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
(cherry picked from commit c5dc0be54ca75a11af86e7bbf1590407157c11b1)
this adds a default filter for bulk start and stop, so that only the
relevant vms are visible (stopped and started respectively)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this is mostly copied from MigrateAll.js, but a more generic way,
to allow startall and stopall to also use it
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
We closed the Edit window too early, so listeners set to
the 'close' event would reload the underlying grid before the action
successfully completed on the server side.
this will be used to filter the dashboard storage graph to the selected
storages, so that one can choose which storages are relevant
e.g. if you have one nfs server with multiple exports (on the same filesystem),
you only want to count it once
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This allows to display a 'CT', a 'VM', or a 'CT/VM' label
to be displayed, depending on the context.
Currently when restoring a CT backup or creating a CT via the
wizard, we are asked to enter a *VM* ID, which is confusing.
by mistake we checked if me.vtype is 'qemu'
but the property is me.vmtype, so we would always show
restart mode
note that this error was purely cosmetic, behaviour was correct
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
for now we have to explicitely define the
onlineHelp: 'blockid'
string, so that the parser picks it up
in the future we should refactor that window, so that we define the
blockid when declaring the component
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
As we cannot migrate to the source node do not show it in the
migration window's node selector.
Fixes#1049 partly
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
this adds a subclass of Ext.form.field.Number with the settings for
Integers (allowDecimals: false and allowExponential: false and default
step size 1)
and use it where we only accept integers
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this adds a menu right to the username with an entry 'my settings',
this opens a window with (for now) browser specific settings
and a place to reset them
the plan would be to add password change, 2fa setup etc here
one remark: the reset layout button reloads the window,
to really apply the reset
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this patch adds a checkbox to the login window,
which uses the localstorage to save the username
if one is saved, set the textfield and move focus
to the password field
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
on touch devices, the isValid function of forms trigger
a layout event, which the edit window listens to and
executes an isValid on the form -> infinite loop
we now suspend the layout before this and continue afterwards
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Inside a wizard, switching to a new tab will fire
the 'activate' event to the new tab, causing
the inputPanel of this tab to display its help in
the wizard window.
before ECMA5 trailing commas in arrays and objects
are forbidden
in jslint this is an error and cannot be deactivated
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
fix various type confusion, for example:
items: {} and items: []
style: string and style: {}
also fix object['property'] access with
object.property
also fix /=/ with either '=' or /\=/ where appropriate
(/=/ can be confused with /= according to jslint)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
we always checked the validity of the panels of the wizard,
when the event validitychange of a subelement triggered,
sadly this does not always happen
for example:
when switching back and forth between 'cdrom' and iso
while having no valid iso selected, the validitchange does not
trigger for the combogrids
instead we listen to the 'change' event, then the check will
be executed at the right time
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
disable_at() iterates over all the fields of the previously selected
tab and disables them
however disabling an input field makes it valid for validation purposes. I can't see a reason why disabling the tab fields
is needed, since the tab already hidden
and after testing, it seems safe to remove this call
this fix a problem when going back and forth in the wizard would
make some fields uneditable for the wrong reason
usability fix: when showing the login window,
make the username field have the default focus,
so that one can enter the username right away
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
* replace scrollable with autoScroll and move to prototype body
* use 'activate' to load store on F5
* do not set a height on the StatusView component: it hides some rows,
and the framework sets a good working default height
* replace deprecated 'rows' parameter in textareafield with
height in pixels
Without this, the summary grid in the end of the LXC creation
wizard needs to be scrolled to see some settings.
Note that we still want to use a fixed height, so that all wizard
panels have the same height and next/previous buttons
are always displayed at the same place.