Commit Graph

181 Commits

Author SHA1 Message Date
Dominik Csapak
f973c5b262 gui: let users choose the number of columns
introduce a new browser setting, with which the users can choose between
the automatic mode of choosing columns, or always using 1/2/3 columns

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-12-09 14:20:37 +01:00
Dominik Csapak
bbc833099e gui: GuestSummary: choose columns based on container width
instead of the viewport width. This means that the number of columns can
change when the tree width changes, not only on browser window resize

for this to work reliably, we have to change the structure of the first
two panels, so that they are in one container for non-templates. if
we do not do this, there are some weird glitches on resizing with the
scrollbar

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-12-09 14:20:37 +01:00
Thomas Lamprecht
176a62d392 followup: vm QGA type: handle a explicit set virtio type
as else we'd show "Unknown" if one set the type explicitly to
"virtio", either over API/CLI or editing the configuration directly

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-20 20:45:30 +01:00
Matt Dunwoodie
5a6c563c06 Add 'type' option to AgentFeatureSelector
This adds an extra field to the AgentFeatureSelector that reflects the
change in qemu-server.

Changes since previous version:

 * Use map rather than if/else if/else for type display string.
 * Use Proxmox.Utils.unknownText for unknown type (should not occur with
   regular use).
 * Keep existing fields as boxLabel rather than fieldLabel, as they
   look crammed with fieldLabel.
 * Use __default__ for default option, to save space and replicate
   behaviour in other places.
 * Store option in advancedItems as it is a special case.

Even though the map only contains one item, it will be easily added to
in the future. There is only one item as there is no need to have a
string for "virtio" as it is not displayed because of __default__.

Signed-off-by: Matt Dunwoodie <ncon@noconroy.net>
2019-11-20 20:45:30 +01:00
Dominik Csapak
49dfba72c8 gui: Utils: add propertyString helper
this helper conditionally sets the given value to the given property
on the given object, optionally a different value

this is useful for our MP/HD Edit panels, where we set the options
of the drive/mp this way for every gui option we have

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-11-06 21:12:35 +01:00
Thomas Lamprecht
3b0facc93f ui: vm/options: use 'none' if no spice enhancement is set
to make it more clear that this is not a single option which can be
disabled or enabled, but that it consists of multiple options

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-07 16:21:46 +02:00
Aaron Lauterer
9c22da325d ui: vm-options: add spice enhancements
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2019-10-07 16:16:34 +02:00
Thomas Lamprecht
af89f6820b ui: openVNCViewer: mobile has no Ext.state.Manager
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-01 16:01:29 +02:00
Thomas Lamprecht
635cc133e0 vnc scaling: still fallback to old default value if not set
as else we change behavior for those who never set the new scaling
variable, or cleared the browser local store.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-04 13:46:57 +02:00
Dominic Jäger
26fcae336c Close #2262: Add noVNC scale setting
Add a setting to choose the scale mode of the noVNC pop-up as well as
the embedded console in the content panel to "My Settings". Having both
set to local scaling was the most important use-case for the users. One
setting for both places is the simplest solution making this possible.

The new section (fieldset) makes adding further options such as
"Local Cursor" easy.

Co-developed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Dominic Jäger <d.jaeger@proxmox.com>
2019-09-03 14:15:37 +02:00
Stefan Reiter
beb3c8a455 Include Windows Server 2019 in OS-Type list
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2019-07-23 18:21:06 +02:00
Dominik Csapak
23c83a3aa0 gui: ceph: add HEALTH_UPGRADE state
to have 2 different states for
* packages are outdated
* packages are up to date but the service runs with the old version

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-22 15:52:07 +02:00
Thomas Lamprecht
bd9537d735 followup coide cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-12 14:07:25 +02:00
Dominik Csapak
f932cffa89 ui: improve console fallback logic if default is not available
instead of instantly defaulting to novnc when the chosen
default is not available, try the other (better variant)
before falling back to novnc

e.g. having no default set is equivalent to having it set
to xtermjs, and having a vm with spice then previously
defaulted to novnc, now to spice (the reverse is also true)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-12 14:00:51 +02:00
Dominik Csapak
54453c3873 ui: fix wrong defaultConsole fallback in tree
having spice does not mean it can also have xtermjs, and
we get the information in the status call already
so give the correct parameters to openDefaultConsoleWindow

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-12 14:00:33 +02:00
Thomas Lamprecht
8ec8af9c60 use https links to our sites
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-26 14:33:56 +02:00
Thomas Lamprecht
da9d14cd7a switch over default console viewer to xterm.js
at least where possible, this affects mostly the node shell button.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-25 17:10:33 +02:00
Thomas Lamprecht
ca71cd5deb gui: ostypes: include 5.x in Linux series and reword to range
Make clear thet the 5.x is also supported and reword a bit as
"5.X/4.X/3.X/2.6" is a bit hard to read, so use "5.X - 2.6"

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-19 14:57:22 +02:00
Dominik Csapak
6284a48ad1 gui: add lock to resource store and tree
add the lock to the css classes and to the columns, also check
the lock field for changed items

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-06-13 11:11:38 +02:00
Thomas Lamprecht
76bbe3e2d5 drop references to un-maintained sheepdog plugin
as already announced over two months ago[0], remove the unofficial
SheepDog plugin now completely. Besides that it was never fully
supported in Proxmox VE one of its main developer and ex-maintainer
declared it as abandoned[1], and thus just let's remove it, git
allows to resurrect it any time if a wonder happens anyway.

[0]: https://pve.proxmox.com/pipermail/pve-user/2019-March/170497.html
[1]: http://lists.wpkg.org/pipermail/sheepdog/2019-March/068449.html

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-04 17:45:38 +02:00
Thomas Lamprecht
35306f4767 followup: make ceph version handling more flexible
ceph has a bad reputation for chaging such minor things a few times,
even during a stable release, and as here a bit more flexibillity
cost exactly nothing let's do so and accept versions with one to
arbitrary version levels

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-31 15:45:37 +02:00
Dominik Csapak
005e0a6091 gui: add compare_ceph_versions
this correctly compares ceph versions by its numeric parts
the way it is written, it can be used as a function for 'sort'

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-05-31 15:28:14 +02:00
Dominik Csapak
95d0de895a gui: ceph: add Services.js
Used for a new Panel in ceph dashboard, shows the ceph services
managed by us (mon,mgr,mds)

some code is copied from 'ceph/StatusDetail.js' and is not necessary there
anymore

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-05-27 16:17:29 +02:00
Dominik Csapak
2f5b82ae95 gui: ceph: add get_ceph_icon_html to utils
returns html code for a ceph health icon, will be used in Services.js

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-05-27 16:17:29 +02:00
Dominik Csapak
aa240b298d gui: ceph: add 'old' to ceph health
this will be used for the dashboard to show outdated services/osds

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-05-27 16:17:29 +02:00
Thomas Lamprecht
bb469a1176 ui: dc/options: allow to edit cluster wide migration settings
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-10 16:04:34 +02:00
Thomas Lamprecht
41ca346587 followuop: ui/dc/options: fix default
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-10 15:35:38 +02:00
Thomas Lamprecht
8f17b4965a ui: dc/options: allow to edit HA shutdown policy
add some helpers handling this, can be re used for adding the
migration field, maybe we want to move this to widget-toolkits parent
ObjectGrid class, a bit cleaned up.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-10 15:31:24 +02:00
Thomas Lamprecht
2d41c7e6f2 ui: u2f: refactor error code map out and use in login window
to avoid showing numbers as error codes to users, even though the
strings are not much more helpful either...

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-10 09:49:13 +02:00
Tim Marx
f992ef807e ui: ceph: differentiate between install & configure only
Signed-off-by: Tim Marx <t.marx@proxmox.com>
2019-03-29 13:07:36 +01:00
Dominik Csapak
a1ee14a296 gui: add qemu/SystemEdit
contains the inputpanel for the coming system tab in the vm creation
wizard, where the user can configure the vm system hardware like
the scsi controller, display, etc.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-03-28 17:04:06 +01:00
Thomas Lamprecht
a7e8b87bdb ui: ceph install: fixup gettext string
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-03-12 09:53:07 +01:00
Tim Marx
4616a55b37 added basic ability to install ceph via gui
Signed-off-by: Tim Marx <t.marx@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2019-03-08 12:33:31 +01:00
Tim Marx
b945c7c1be add cmd parameter & rework query string creation
Signed-off-by: Tim Marx <t.marx@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2019-03-08 12:30:11 +01:00
Tim Marx
8eccc68f6c added new parameter to pass a command to the newly opened terminal
Ext.urlEncode is deprecated, use Ext.Object.toQueryString instead

Signed-off-by: Tim Marx <t.marx@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2019-03-08 12:29:49 +01:00
Dominik Csapak
7af1ab47f6 fix popup behaviour in firefox with touchscreens on desktop
when the popup blocker is active, nw is undefined and nw.focus() throws an
error and the touchend event is not finished, causing extjs to retry the
touchevent and click handler, which tries to open a popup which gets blocked
here, and so on

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-21 11:58:14 +01:00
Dominik Csapak
aef28e0430 add snippets content type to the gui
we only show that a storage can store snippets, but for now
we do not allow to set or upload them via the gui

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-01-31 11:05:55 +01:00
Christian Ebner
9f0b4e045b Add context menu to global search entries
This add a context menu to the entries of the global search field instead of
showing the browsers default one.
This allows to search and easily manage nodes, VMs and CTs similar to the
behaviour in the resource tree.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
2019-01-29 14:04:10 +01:00
Dominik Csapak
89ae1bb151 gui: add virtio-gpu and none to combobox
since 'virtio' is alredy used in that file for a number,
we have to add jslint confusion

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-01-28 17:32:32 +01:00
Dominik Csapak
0e244a2990 refactor format_content_types
much shorter and more generic

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-01-21 19:52:35 +01:00
Dominik Csapak
6ad4be69ab gui: refactor render_full_name
this also fixes a missing  htmlEncode in UserSelector

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-11-26 12:30:30 +01:00
Thomas Lamprecht
4a4b2b6e0b ui: dc/storage: allow to add CephFS
Allow to add CephFS storage over GUI. Reuse viewcontroller and model from RBD
to detect if we can do a "hyper-converged" addition (with PVE maintained Ceph)
or if only external is possible.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-19 10:40:49 +01:00
Tim Marx
8c8604bae3 node zfs: added check for undefined & new case AVAIL
Signed-off-by: Tim Marx <t.marx@proxmox.com>
2018-11-09 14:46:26 +01:00
Dominik Csapak
4f3e66d89b gui: let users edit the vga memory
and show the default for each type of virtual gpu

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-11-09 14:02:35 +01:00
Fabian Grünbichler
483bd394f8 fix #1897: bump max number of mountpoints to 256
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-09-11 07:55:28 +02:00
Dominik Csapak
fee716d32b add ZFS list/detail/create gui
list shows zpools only, with detail the user can see
the status of the indiviual vdevs/mirrors

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-08-08 08:14:06 +02:00
Stoiko Ivanov
1662ccdbfd ui/qemu: Extend Qemu Guest agent
Change to agent now being a property_string, and including  fstrim_cloned_disks.

Co-Authored-By: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-02 16:20:12 +02:00
Thomas Lamprecht
0d1ac958bc ui: storage: combine RBD external and hyperconverged add dialog
Combine both dialogues. This reduces storage choices from the
Storage -> Add menu, and thus improves usability.

We make the whole dialog also more intelligent by querying the
monitors, so that we can show them for the hyper converged case
keeping a similar interface for both cases. Further we can use this
to decide if a hyperconverged setup is possible at all.
While this information would also be available through the fact if
the pool selector has entries I wanted to show them anyway and could
make logic a bit easier using it.
2018-07-31 14:04:57 +02:00
Dominik Csapak
ab9f0fe1b1 fix doubleclick on vm with spice console
allowSpice needs to be a real boolean, because of a
'=== true' check to open a spice console if allowed, so make it one here

this fixes the issue that a doubleclick on a tree item only opened
the novnc console even if spice is the default and the vm is spice
enabled

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-07-30 11:53:33 +02:00
Dominik Csapak
16e64c97d6 set resize to 'off' for the novnc popup
this makes it easier to handle the resize parameter in novnc code

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-07-23 11:19:40 +02:00
Dominik Csapak
cdd9b6c0a7 add _blank target for optional url
so that they open in a new tab/window

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-05-08 13:38:09 +02:00
Dominik Csapak
27809975f2 add render functions for Certificates
this adds render_optional_url for a field which may contain a link
and render_san which simply displays the different values
in each line

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-05-04 16:11:00 +02:00
Dominik Csapak
4ace5c6fc1 jslint fixes
those found their way in during a rebase of my patches

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-25 11:56:09 +02:00
Dominik Csapak
3438c27eab allow xtermjs to be the default console
if not available for a vm, we fallback to novnc like with spice

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-23 09:42:55 +02:00
Dominik Csapak
14a845bc7b Utils: add forEachMP
in the style of forEachBus, but for containers, so that we
only have to save the count once

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Thomas Lamprecht
062a7f4955 ui/Utils: add storage schema
add a schema describing our storages name, the map for its
InputPanel, the icon we show in the add menu, and if it is available
at all there.

For now just use it to simplify the ugly if/else mess
format_storage_type was, future patches will use the information to
generalise Adding/Editing of those storages.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-03-28 13:19:41 +02:00
Thomas Lamprecht
70d4f9b41e ui/Utils: do not create non-standard console.dir fallback
resolves a future jslint type confusion and as it's nor standarized
nor used by our code we can just drop it.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-03-28 13:19:41 +02:00
Dominik Csapak
9bad05bd76 make container clones/template available in the gui
also refactor the right click menu logic

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-21 15:54:32 +01:00
Dominik Csapak
34c61eaf4b adapt and rescope TemplateMenu for containers
make it guest agnostic so that we can use it for lxc also

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-21 15:54:32 +01:00
Wolfgang Link
ca9a198ac7 Add cifs storage plugin 2018-03-19 12:56:13 +01:00
Dominik Csapak
abe824aa95 add PVE.Utils.forEachBus and use it in qemu/HardwareView
this iterates over all busses or over the ones you specify
( a single or an array )

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-16 10:05:57 +01:00
Thomas Lamprecht
857b97a7dc ui: move loadSSHKeyFromFile from lxc/Create to Utils
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-02-22 15:04:51 +01:00
Dominik Csapak
35a04562fd change PVE.UserName/CSRFPreventionToken to Proxmox
this is now all in the widget-toolkit and needs to be
set/read to/from there, else we possibly get an inconsistent view on
those

this fixes as issue, where after login the ResourceStore would not update

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Tested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-01-25 14:49:11 +01:00
Thomas Lamprecht
755b9083dc dc/OptionView: cleanup & use new features from ObjectGrid
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2018-01-25 13:36:38 +01:00
Dominik Csapak
e7ade592e3 use Proxmox.Utils instead of PVE.Utils
some function are now in Proxmox.Utils instead, so we have to use that

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-01-25 13:36:38 +01:00
Dominik Csapak
c6b2336c3f add new xtermjs viewer window to Utils
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-12-12 08:34:07 +01:00
Dominik Csapak
4dbc64a786 improve tree/grid icons
we improve the icons in the tree and the resource grid by
differentiating between cluster online/offline status and no rrd data

when we have no rrd data from a node/storage, instead of showing a
red x (which is scary) even if the node is reachable by corosync (which
confused quite a bit of people, because we show all nodes as online in
the datacenter summary), we show the node/storage with a '?'

this signals that something is wrong with this node, even if we can
reach it via cluster methods

this rewrite of the logic includes a refactoring of the method
of getting the icon, because we want the same icons in the tree and the
grid, and an optimization on how we use the css classes
(introducing a x-grid-custom-icon class)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-14 13:27:07 +01:00
Thomas Lamprecht
50713765af ui: GuestStatusView: simplify HA state display
simplify HA Information in VM/CT Summary panel.
Use the already translated  'HA State' instead of 'Managed by HA'
(which now becomes obsolete as it was the single appearance).
Simplify PVE.Utils.format_ha respectively to mach the new name,
as here is the only use of this function we have no side effects.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Acked-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-16 14:14:19 +02:00
Thomas Lamprecht
45d6c71af2 kvm_ostype: move to store-like format
move from the key => value format to one where all versions from a
base OS type can be directly used as data for a store.

We will rely on this in the next patch to allow a easy transition to
combobox UI for the OS type selector.

We also avoid having the base type multiple times.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-25 14:11:50 +02:00
Dominik Csapak
6760ab9248 show 'RBD' instead of 'RBD (external)' on storage summary
we cannot differentiate between external and pve-managed there,
so we just want to show 'RBD'

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 12:53:27 +02:00
Dominik Csapak
3c23c0258b add new "RBD (PVE)" storage choice
this is for adding a pve managed ceph rbd storage, so that the user
just has to select the pool, and does not need to write the monitor
hosts and copy the keyring

the old "RBD" is renamed to "RBD (external)"

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 12:35:14 +02:00
Fabian Grünbichler
fe15d330c4 add task description for cephcreatepool
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Dominik Csapak
dfe6d184ff adapt render_ceph_health for luminous
it is using 'status' instead of 'overall_health' now

also only give the health object now

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-07-24 16:10:24 +02:00
Wolfgang Bumiller
1ec226c31d gui: drop cirrus from the GUI
now only available from the CLI
2017-06-28 12:13:45 +02:00
Dominik Csapak
530ee6b769 change short duration format to x.y
so we always show one decimal place
(instead of all with seconds and none with minutes, hours, days)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-06-22 10:08:56 +02:00
Dominik Csapak
ddd26302d7 add render_duration
for replica interval

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-06-14 07:30:46 +02:00
Emmanuel Kasper
2125c18a23 Adapt SafeDestroy component to be able to delete Ceph Pools 2017-06-13 05:40:08 +02:00
Dominik Csapak
c11ab8cb4a add right-click menu for nodes
to easier reach the bulk actions, create wizards, and shell

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-04-14 15:18:54 +02:00
Emmanuel Kasper
b9628aa501 Do not translate IT terms which should be used 'as is' in every language
for 'Initialize GPT' we use the alternate 'Initialize Disk with GPT' string
which was already existing
2017-03-02 10:39:41 +01:00
Emmanuel Kasper
3f6336553c Add a new renderer for displaying dates in a human readable way
render_timestamp returns a Date as
"2017-01-31 16:17:33"
which is good for computers and column sorting but unfit
for human consumption

the new renderer added by this patch renders a Date as
"Tuesday 31 January 2017 16:18:08"

Day-month-year order is the most used ordering
in the world and also commonly used in the USA for
official documents.
source:
https://en.wikipedia.org/wiki/Date_and_time_notation_in_the_United_States
https://en.wikipedia.org/wiki/Date_format_by_country
2017-02-01 10:09:38 +01:00
Emmanuel Kasper
a3b8efb45c Add new renderer function for toggling enabled/disabled options 2017-01-24 08:53:39 +01:00
Emmanuel Kasper
ec99b1c367 Remove duplicate strings 2017-01-18 10:19:43 +01:00
Emmanuel Kasper
2b9e88286e Add Windows 2016 as available ostype to select 2016-11-29 09:11:28 +01:00
Dominik Csapak
946730cdc6 add new ceph dashboard
this patch changes the ceph dashboard

now we show the information in a more graphical way, namely:

the overall status is displayed by a big icon (+health)
the warnings/errors are in a list (with severity)

we show more detailed information about monitors, osds, and pgs

we show the usage of the cluster as a gauge graph, and
the reads, writes and iops as running charts (the last 5 minutes)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-11-22 16:38:11 +01:00
Dominik Csapak
046e640c54 refactor health status widget and ceph status data
this adds a new component health widget, used for cluster and ceph
status

also refactor ceph error levels and ceph status data into PVE.Utils

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-11-22 16:37:09 +01:00
Dominik Csapak
428bc4a224 refactor health icons
instead of setting them manually every time, factor them out in a
get_health_icon function

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-11-22 16:36:46 +01:00
Dietmar Maurer
fbd60cfd4c new helper call_menu_handler 2016-11-12 12:45:21 +01:00
Thomas Lamprecht
fe4f00adc9 add 'delete_if_default' helper and use it
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-11-02 11:00:16 +01:00
Dominik Csapak
2b2fe160f5 show ha error state in tree and resource grid
with this patch, vms in an ha error state get an icon (reusing the node
offline icon) to indicate the error

in the resource grid, we also add the icon, and have an additional
column where we can display the ha state

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-10-28 09:35:05 +02:00
Dominik Csapak
bab64974a5 fix 'NaN%' when max value is 0
when we get a max value of 0
(for example when a storage is not active)

the render function would show:
'NaN% (0B of 0B)'

because of a division by 0

this patch simply returns 'N/A' because
a max value of 0 should never be valid

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-10-19 12:05:36 +02:00
Emmanuel Kasper
c15c61d3e8 Move globally defined regexpes into PVE.Utils
Those globally defined regexpes were only used in Toolkit.js
2016-10-18 12:40:47 +02:00
Emmanuel Kasper
9fa2e36d3a Turn PVE.Utils into a singleton
This will allow us to add contructed values ( regexp a = stringA + stringB )
into the constructor.
Access to the PVE.Utils properties and methods stays the same.
2016-10-18 12:40:28 +02:00
Dietmar Maurer
c8802a60b7 use auto-generated block IDs to reference online docu. 2016-10-13 11:26:06 +02:00
Dominik Csapak
4eb76884a6 move DocsPages from global to PVE.Utils namespace
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-10-07 08:34:32 +02:00
Emmanuel Kasper
98a01af2a8 Add regexp to match a bus entry in a VM config 2016-10-07 07:01:36 +02:00
Dominik Csapak
a50de12435 add tooltip hashmap/generator for help button
instead of manually setting the onlineHelpTooltip property
we now have a method which maps links to the docs to
titles

for now this uses a static hashmap, but in the future
we want to generate this by the pve-docs package

also most of the subheaders we can generate instead of
saving them because they simply have each word capitalized
(e.g. '_container_network' => 'Container Network')

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-09-15 11:58:17 +02:00
Dominik Csapak
a36deac4a5 add DiskList panel
this patch adds a disk list panel which:
lists the disks with typical columns
(type, vendor, serial, smart, wearout, etc.)

and with a doubleclick you can show the smart attributes

and with a click on init disk you can initialize a disk
with a gpt table

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-09-07 11:17:53 +02:00
Dominik Csapak
054ac1b879 add new StatusView component
this adds a component StatusView which is intended to
replace the old statusview panels of qemu/lxc/nodes
(later maybe also pools and storages)

it extends Ext.panel.Panel and expects an rstore and title

it is not intended to be used directly but to be subclassed

it works like this:

on instantiating, it adds a listener to the rstore load,
so that on every rstore load 'updateValues' gets executed

there, if successful, looks for every subcomponent of type
'pveInfoWidget' and calls 'updateField' on it

'updateField' calculates the update text and value for
the info widgets based on the given class variables

using either:
textField -> which gets the value from the store and
displays it simple as text (with renderer and calculator)

or valueField and (optional) maxField
where it determines the usage
(also with a renderer and calculator)

for both there is a default calculator/renderer
but this can be overwritten when instantiating/declaring

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-08-19 13:54:30 +02:00
Dominik Csapak
e31294433f open vm console on doubleclick in tree
with this patch you can open the console of a guest
with a simple doubleclick in the tree

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-07-21 13:10:49 +02:00
Dominik Csapak
70e779e47b add HostList validator and check monhosts with it
this adds a vtype which splits the given string into a list by
; or , or space
and checks if it is a valid (hostname|ip) port notation

also make the rbd monhost input field use it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-07-15 11:53:05 +02:00