From ExtJS4 to 6 the debug files have doubled in size from
4.4MB to 8.8MB
HTTPServer.pm compress these files on the fly before sending them
to the browser (as "Accept-Encoding: gzip" is the default in
browsers)
On very slow systems (AMD Bobcat for instance, as discussed in
https://forum.proxmox.com/threads/no-webfrontend-showed-in-browser-with-new-gui-pvetest.26951/#post-135699
the compression of this file can take up to 5 seconds, and this will
hit the HTTP Timeout (line 1629) we use for serving static files, provoking the
error:
curl -k --verbose --insecure --header "Accept-Encoding: gzip" https://slowhost:8006/pve2/ext6/ext-all-debug.js
curl: (18) transfer closed with 1991108 bytes remaining to read
Non-debug files are 4 times smaller, and since everybody will benefit of having
a faster initial load of PVE, there is no reason not to make this default.
this patch checks if only the bootdisk changed,
using the multikey funcionality
also use this in the revert button handler,
to revert the bootdisk also
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
we set the pveNodeSelector to [] by default,
but filter by !node (![] == false), so that no vms are shown
this occurs, when the pveNodeSelector store loads after the store
for the vm list, which rarely happens
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
on comboboxes/combogrids with multiselect,
if you deselect an item (but not the last),
the order of the selected items after resetting is
not the same as the original order
because of this, the reset button is still enabled
this happens, because extjs only adds the missing
values instead of overwriting the whole array
with this fix, we overwrite the reset function of
the comboboxes and only if the values do not match
(after a reset) do we clear and set the value again
so we only change the behaviour when it is necessary
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this fixes a nasty combogrid/multiselect/storeload bug
in which the value of a combogrid gets set to a string instead
of an array, under certain circumstances
we overwrite the getRawValue method of our ComboGrid,
and on multiselect ComboGrids, we just get the value out of
me.rawValue, else we call the method of the parent class
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
jslint does not like names that begin with _
also it complains when you do not filter
a for in statement with a hasOwnProperty(property) as first
if statement
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
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>
in one change, there is also a change from object['property']
to object.property which jslint complains about
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
ext4 would not select a tree item on right click,
ext6 does this, so we have to save which
mousebutton was clicked and react accordingly
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
with this fix, we (again) allow ipv4 cidr to be as low as 8
also check the cidr for ipv6 and show the valid ranges in the
error text
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
refactor the test for the bootdisk, to make future changes easier,
also, only allow one bootdisk to be selected
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
we mistakenly did not reset the originalvalues after the inital
load, which meant that on reset we would not get the correct values
furthermore we have to suspend only the change event and not all,
otherwise the functions for enabling/disabling the ok/reset buttons
do not trigger (on validitychange and dirtychange)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
instead of disabling a combogrid when its store loads,
we make the gridpanel bigger, to show its loading mask
since we do not disable/enable anymore, we have no reason
to suspend/resume the validitychange event anymore
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>
Strings like 'Linux 4.X/3.X/2.6 Kernel' are difficult
enough to visually parse, so don't append the internal
representation (l26) at the end: it does not bring any relevant
information to the user, and we usually don't display
internal representations in the GUI.
with this patch, the resourceGrid saves its state when
the columns are changed (resized, sorted, etc.)
also add a little reset button to the toolbar
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
previously, we had a disk/memory usage column in the resource grid,
whose raw data were the bytes used, but we added a renderer
to display it as percentage
with this, the columns sorted by bytes and not by percentage,
which made the column rather confusing
with this patch, we add a real percentage column (where the
data is a float from 0 to 1) so it sorts correctly
also make the old columns show the used size in B/KiB/etc.
by default we still only show the percentage column
since the disk usage part was always zero with qemu guests,
leave it empty there
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
previously the upper border of a dialog window was white only, thus
when a window opened it had a little less contrast.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>