]> git.proxmox.com Git - proxmox-widget-toolkit.git/log
proxmox-widget-toolkit.git
2 years agod/control: bump eslint requirement
Thomas Lamprecht [Tue, 6 Jul 2021 12:14:09 +0000 (14:14 +0200)]
d/control: bump eslint requirement

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 3.2-4
Thomas Lamprecht [Mon, 5 Jul 2021 14:50:58 +0000 (16:50 +0200)]
bump version to 3.2-4

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode/Tasks: add 'clear filter' button
Dominik Csapak [Mon, 5 Jul 2021 14:34:02 +0000 (16:34 +0200)]
node/Tasks: add 'clear filter' button

that does two things,

show the user that some filters are active (even if filters are collapsed),
and let the user to reset the filters all at once

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agonode/Task: show errors on store load
Dominik Csapak [Mon, 5 Jul 2021 14:34:01 +0000 (16:34 +0200)]
node/Task: show errors on store load

since we use a buffered store on a grid, we cannot use our
normal monStoreErrors from Utils (The store on the grid is a memorystore
without our 'proxmox' proxy, and the store in the viewmodel is not
initialized yet in the init)

simply set the mask in the already existing 'updateLayout' function
which is exactly the right place for the buffered store load

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agonode/Tasks: deselect entries when filter changes
Dominik Csapak [Mon, 5 Jul 2021 14:34:00 +0000 (16:34 +0200)]
node/Tasks: deselect entries when filter changes

since we use a remotefilter on a bufferedstore, the only event where
we can check if the selected element is still there is the 'refresh'
event. Simply deselect if the seleceted element is not in the store

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agonode/Task: remove leftover 'datastore' reference
Dominik Csapak [Mon, 5 Jul 2021 14:33:59 +0000 (16:33 +0200)]
node/Task: remove leftover 'datastore' reference

this does nothing here, since the 'datastore' would be an
'extraFilter' defined in pbs itself

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agonode: repos: always skip "you get updates" on parsing error
Thomas Lamprecht [Mon, 5 Jul 2021 14:39:21 +0000 (16:39 +0200)]
node: repos: always skip "you get updates" on parsing error

As normally that means that the host does not gets updates, as most
apt use will fail too.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repos: improve repo-parsing error message
Thomas Lamprecht [Mon, 5 Jul 2021 14:38:46 +0000 (16:38 +0200)]
node: repos: improve repo-parsing error message

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repos: factor out addCritical into closure
Thomas Lamprecht [Mon, 5 Jul 2021 14:38:14 +0000 (16:38 +0200)]
node: repos: factor out addCritical into closure

now that there's more use for it

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode/APTRepositories: make 'no pve repositories' an error
Dominik Csapak [Mon, 5 Jul 2021 14:06:58 +0000 (16:06 +0200)]
node/APTRepositories: make 'no pve repositories' an error

since we also show it as error in the node summary

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agobump version to 3.2-3
Thomas Lamprecht [Mon, 5 Jul 2021 08:02:32 +0000 (10:02 +0200)]
bump version to 3.2-3

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoutils: fix typo in variable name
Thomas Lamprecht [Mon, 5 Jul 2021 08:11:41 +0000 (10:11 +0200)]
utils: fix typo in variable name

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoutils: updateColumnWidth: allow overriding tresholdWidth and make that more general
Thomas Lamprecht [Mon, 5 Jul 2021 07:46:58 +0000 (09:46 +0200)]
utils: updateColumnWidth: allow overriding tresholdWidth and make that more general

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoutils: column width handler: drop duplicate
Thomas Lamprecht [Mon, 5 Jul 2021 07:34:32 +0000 (09:34 +0200)]
utils: column width handler: drop duplicate

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoinfo widget: early return from update if text & value stayed the same
Thomas Lamprecht [Sun, 4 Jul 2021 19:59:59 +0000 (21:59 +0200)]
info widget: early return from update if text & value stayed the same

No need then and if we'd call into update we'd still generate new
elements which is annoying for debugging and extra DOM work we can
avoid.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agomarkdown: extend blocked tags in sanitizer
Thomas Lamprecht [Sun, 4 Jul 2021 18:32:37 +0000 (20:32 +0200)]
markdown: extend blocked tags in sanitizer

not all of those are really problematic, but it's always easier to
start out stricter than required and see if any user even would use
those.

It seems that we should probably switch to a white-list approach...

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agomarkdown: make sanitizer more strict
Thomas Lamprecht [Sun, 4 Jul 2021 18:06:26 +0000 (20:06 +0200)]
markdown: make sanitizer more strict

The href, and in some browser also the src attrs on img, or a tags
can be made to execute JS rather easily, catch thoseand just remove
the attr if, after creating an URL object from it, it does not looks
like it's a http(s) request.

Further, filter out the style tag completely, as that can be misused
too, even if only to break cosmetics.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agomarkdown: encode bad nodes HTML instead of pruning it
Thomas Lamprecht [Sun, 4 Jul 2021 17:22:38 +0000 (19:22 +0200)]
markdown: encode bad nodes HTML instead of pruning it

As pruning means content an user wrote into the box, even if with
malicious intend, gets hidden and that can be quite confusing..

So rather get the outerHTML, transform it with ExtJS's htmlEncode and
set it again.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repos: handle that components can be undefined
Thomas Lamprecht [Sun, 4 Jul 2021 17:09:42 +0000 (19:09 +0200)]
node: repos: handle that components can be undefined

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 3.2-2
Thomas Lamprecht [Sat, 3 Jul 2021 14:34:47 +0000 (16:34 +0200)]
bump version to 3.2-2

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repo: use more stati-schema like code style to configure store
Thomas Lamprecht [Sat, 3 Jul 2021 14:34:38 +0000 (16:34 +0200)]
node: repo: use more stati-schema like code style to configure store

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repo: use more stati-schema like code style to set grouping feature
Thomas Lamprecht [Sat, 3 Jul 2021 14:21:17 +0000 (16:21 +0200)]
node: repo: use more stati-schema like code style to set grouping feature

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repo: avoid using IDs on elements, as that breaks easily on clusters
Thomas Lamprecht [Sat, 3 Jul 2021 14:06:14 +0000 (16:06 +0200)]
node: repo: avoid using IDs on elements, as that breaks easily on clusters

Anything where more instances can exist, even if only for a very
short time, must NOT use `id` as that needs to be unique in all
current instances of components/elements of the whole gui.

Here it broke most of the gui when switching between node, as the new
nodes repo gui was instantiated before the old ones was completely
destroyed, so there where (at least) two elements with the same id ->
💥 boom.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 3.2-1
Thomas Lamprecht [Fri, 2 Jul 2021 22:12:38 +0000 (00:12 +0200)]
bump version to 3.2-1

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repo: health: drop br line-breaks, replaced by flex display
Thomas Lamprecht [Fri, 2 Jul 2021 22:09:07 +0000 (00:09 +0200)]
node: repo: health: drop br line-breaks, replaced by flex display

Firefox ignores them anyway but chrome adds them additionally, making
it look rather weird..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: repo status: adapt some warning/error gettexts
Thomas Lamprecht [Fri, 2 Jul 2021 21:59:56 +0000 (23:59 +0200)]
ui: repo status: adapt some warning/error gettexts

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: repo status: do not duplicate warning to health icon
Thomas Lamprecht [Fri, 2 Jul 2021 21:58:24 +0000 (23:58 +0200)]
ui: repo status: do not duplicate warning to health icon

It feels quite weird to have the last warning text duplicated, the
left health icon should be a very concise summary only.

allow one to force it by setting important, but that's not yet used
anywhere.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agofixup! ui: repo status: code cleanup/refactoring
Thomas Lamprecht [Fri, 2 Jul 2021 21:58:02 +0000 (23:58 +0200)]
fixup! ui: repo status: code cleanup/refactoring

2 years agoui: repo status: adapt flex-ratio and center health vertically
Thomas Lamprecht [Fri, 2 Jul 2021 21:57:20 +0000 (23:57 +0200)]
ui: repo status: adapt flex-ratio and center health vertically

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agocss: add centered-flex-column class
Thomas Lamprecht [Fri, 2 Jul 2021 21:56:19 +0000 (23:56 +0200)]
css: add centered-flex-column class

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: repo status: code cleanup/refactoring
Thomas Lamprecht [Fri, 2 Jul 2021 21:12:53 +0000 (23:12 +0200)]
ui: repo status: code cleanup/refactoring

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoadd OpenID icon
Thomas Lamprecht [Fri, 2 Jul 2021 19:58:09 +0000 (21:58 +0200)]
add OpenID icon

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode/APTRepositories: improve error/warning display
Dominik Csapak [Fri, 2 Jul 2021 14:27:15 +0000 (16:27 +0200)]
node/APTRepositories: improve error/warning display

always show grid besides status, with the accumulated
stati/warnings/errors

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agonode/APTRepositories: rework top status and error grid
Dominik Csapak [Fri, 2 Jul 2021 10:48:59 +0000 (12:48 +0200)]
node/APTRepositories: rework top status and error grid

instead of having a title bar and a seperate error grid,
add an always visible panel that displays the status (ok, warning, errors)
which also contains the error grid (if necessary, ala ceph summary)

this makes the panel more consistent to use and it is immediatly
visible if something is wrong

this also adds a test for the 'test' repositories, as well as a test
for not correctly configured suites

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoUtils: add get_health_icon from PVE
Dominik Csapak [Fri, 2 Jul 2021 10:48:58 +0000 (12:48 +0200)]
Utils: add get_health_icon from PVE

we'll need it here too

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoutils: followup: fix base class
Thomas Lamprecht [Fri, 2 Jul 2021 13:17:47 +0000 (15:17 +0200)]
utils: followup: fix base class

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: Utils: refactor userid parsing to Utils
Thomas Lamprecht [Fri, 2 Jul 2021 13:06:25 +0000 (15:06 +0200)]
ui: Utils: refactor userid parsing to Utils

Originally-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoutils: add getOpenIDRedirectionAuthorization: to avoid code-duplication
Thomas Lamprecht [Fri, 2 Jul 2021 11:53:11 +0000 (13:53 +0200)]
utils: add getOpenIDRedirectionAuthorization: to avoid code-duplication

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agocss: fix debian openlogo background-size for chrom* based browsers
Thomas Lamprecht [Fri, 2 Jul 2021 07:16:41 +0000 (09:16 +0200)]
css: fix debian openlogo background-size for chrom* based browsers

The debian one higher than wide and it seems, contrary to my belief,
the background-size is not taken for both, height and width if only
one param is set, but rather the second paramet height then defaults
to `auto` which Firefox and Chromium handle different in this case.

Set both to make this fixed.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agofixup comment
Thomas Lamprecht [Fri, 2 Jul 2021 06:09:37 +0000 (08:09 +0200)]
fixup comment

forgot to save in vim when editing the comment before committing..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repo: highlight proxmox repos that are not producition-ready
Thomas Lamprecht [Thu, 1 Jul 2021 16:38:04 +0000 (18:38 +0200)]
node: repo: highlight proxmox repos that are not producition-ready

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repos: fix reversed validation on configured
Thomas Lamprecht [Thu, 1 Jul 2021 08:49:25 +0000 (10:49 +0200)]
node: repos: fix reversed validation on configured

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapt repos: use correct URL
Fabian Ebner [Thu, 1 Jul 2021 07:53:59 +0000 (09:53 +0200)]
apt repos: use correct URL

so there is a 'result' property, which the window expects.

Suggested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agonode: repos: fix add repo validator
Thomas Lamprecht [Thu, 1 Jul 2021 08:43:10 +0000 (10:43 +0200)]
node: repos: fix add repo validator

isValid is a boolean not a callback, so won't really work and just
set the state once.

Use the `validator` and first call into the parents helper, then do
our logic and return a string  with an explanation in the expected
invalid case.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repos: fallback to "Other" for unknown origin
Thomas Lamprecht [Wed, 30 Jun 2021 19:58:29 +0000 (21:58 +0200)]
node: repos: fallback to "Other" for unknown origin

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repos: use warning, not critical for suite-errors if disabled
Thomas Lamprecht [Wed, 30 Jun 2021 19:47:53 +0000 (21:47 +0200)]
node: repos: use warning, not critical for suite-errors if disabled

As in that case it's actually safe, so rather show as warning, albeit
even info/notice like would probably be enough, but still, it is not
a configuration that is wanted permanently.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repos: fade text of disabled rows
Thomas Lamprecht [Wed, 30 Jun 2021 19:47:20 +0000 (21:47 +0200)]
node: repos: fade text of disabled rows

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: repos: increase width of add-repo window + style cleanup
Thomas Lamprecht [Wed, 30 Jun 2021 19:46:10 +0000 (21:46 +0200)]
node: repos: increase width of add-repo window + style cleanup

We have some longer descriptions so the default width looks crammed.

Also, avoid a intermediate variable which is only used once without
any change.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoAPTRepositories: remove unecessary selection model
Dominik Csapak [Wed, 30 Jun 2021 15:14:59 +0000 (17:14 +0200)]
APTRepositories: remove unecessary selection model

this is the default anyway, no reason to explicitely create it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoAPTRepositories: make the Suites warnings inline errors
Dominik Csapak [Wed, 30 Jun 2021 15:14:58 +0000 (17:14 +0200)]
APTRepositories: make the Suites warnings inline errors

by iterating only once over the info array and adding them directly
to the records this way we can avoid iterating over the records
again

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoAPTRepositories: change updating button text/state to viewcontroller
Dominik Csapak [Wed, 30 Jun 2021 15:14:57 +0000 (17:14 +0200)]
APTRepositories: change updating button text/state to viewcontroller

we already have a viewmodel we can use, and so the handler does
not have to navigate the component tree up/down

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoAPTRepositories: make panel scrollable
Dominik Csapak [Wed, 30 Jun 2021 15:14:56 +0000 (17:14 +0200)]
APTRepositories: make panel scrollable

so that it is still usable with many errors and/or repositories

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoAPTRepositories: change separation style between panels
Dominik Csapak [Wed, 30 Jun 2021 15:14:55 +0000 (17:14 +0200)]
APTRepositories: change separation style between panels

having double borders does not look so nice, separate them with a bit
of padding

also change the warning panel to a simple header

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agonode: repos: render Origin logo for Debian & Proxmox
Thomas Lamprecht [Wed, 30 Jun 2021 19:26:18 +0000 (21:26 +0200)]
node: repos: render Origin logo for Debian & Proxmox

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: apt: spawn a window for adding repository
Fabian Ebner [Wed, 30 Jun 2021 15:07:54 +0000 (17:07 +0200)]
node: apt: spawn a window for adding repository

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agocss: increase padding for Debian and Proxmox symbol logos
Thomas Lamprecht [Wed, 30 Jun 2021 19:21:25 +0000 (21:21 +0200)]
css: increase padding for Debian and Proxmox symbol logos

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoimages: use svgcleaner to reduce logo SVG sizes
Thomas Lamprecht [Wed, 30 Jun 2021 18:30:31 +0000 (20:30 +0200)]
images: use svgcleaner to reduce logo SVG sizes

Used svgcleaner[0] with the following safe[1] command:

```
svgcleaner INPUT.svg OUTPUT.svg --indent 1 --resolve-use no \
 --convert-shapes no --group-by-style no --join-arcto-flags no \
 --join-style-attributes no --remove-comments no --remove-declarations no \
 --remove-invisible-elements no --remove-metadata no \
 --remove-nonsvg-attributes no --remove-nonsvg-elements no \
 --remove-text-attributes no --remove-title no \
 --remove-unreferenced-ids no --trim-ids no --ungroup-groups no \
 --list-separator comma
```

Resulting size reductions:

Debian   22.51% smaller
Proxmox  51.00% smaller

Note that the Debian one had a small issue with a unused variable set
which I reported[2] and cleaned up manually for now.

[0]: https://github.com/RazrFalcon/svgcleaner
[1]: https://commons.wikimedia.org/wiki/User:JoKalliauer/Optimization#svgcleaner
[2]: https://github.com/RazrFalcon/svgcleaner/issues/240

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoadd Debian and Proxmox symbol logos and css
Thomas Lamprecht [Wed, 30 Jun 2021 16:24:45 +0000 (18:24 +0200)]
add Debian and Proxmox symbol logos and css

also add a new 'pmx-itype-icon' helper class for the classic bg
repeat/position option to allow more easier reuse

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode: services: fix logic for displaying unit state
Thomas Lamprecht [Wed, 30 Jun 2021 19:21:55 +0000 (21:21 +0200)]
node: services: fix logic for displaying unit state

still hacky but at least works now ;-)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobuildsys: do not install css or images with executable flag
Thomas Lamprecht [Wed, 30 Jun 2021 13:20:20 +0000 (15:20 +0200)]
buildsys: do not install css or images with executable flag

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agocss: some markdown heading and paragraph font-size & padding tuning
Thomas Lamprecht [Wed, 30 Jun 2021 12:21:50 +0000 (14:21 +0200)]
css: some markdown heading and paragraph font-size & padding tuning

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapt repositories: replace OfficialHost with Origin
Fabian Ebner [Wed, 30 Jun 2021 10:20:19 +0000 (12:20 +0200)]
apt repositories: replace OfficialHost with Origin

to adapt to the new backend behavior.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoadd basic .gitignore
Thomas Lamprecht [Tue, 29 Jun 2021 10:21:06 +0000 (12:21 +0200)]
add basic .gitignore

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 3.1-4
Thomas Lamprecht [Mon, 28 Jun 2021 17:14:50 +0000 (19:14 +0200)]
bump version to 3.1-4

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode tasks: fixup overly-short comment lengths
Thomas Lamprecht [Mon, 28 Jun 2021 14:19:38 +0000 (16:19 +0200)]
node tasks: fixup overly-short comment lengths

The minimum "max length" should be 80cc, and 100cc is also fine.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode/Tasks: merge improvements from PBS and make it more generic
Dominik Csapak [Thu, 24 Jun 2021 07:16:16 +0000 (09:16 +0200)]
node/Tasks: merge improvements from PBS and make it more generic

this copies most of the task grid from pbs, but adds handling so that
users can add aribtrary filter fields

the filter fields always present are:
* since
* until
* task type
* task status

other filters fields can be added by giving an 'extraFilter' array
which must contain widget definitions that emit a 'change' event.
this is then used to update the filters for the api call

also you can add a 'preFilter' object, that sets the filter parameter
only once at the beginning

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agocbind mixin: also descend in elements with an cbind property
Thomas Lamprecht [Fri, 25 Jun 2021 06:42:39 +0000 (08:42 +0200)]
cbind mixin: also descend in elements with an cbind property

Not only into those with an xtype one, as we can either have a
implicit default xtype (e.g., in tbars for buttons, or set explicitly
via the `defaults` mechanism) or want to apply cbinds to stores or
other objects.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 3.1-3
Thomas Lamprecht [Wed, 23 Jun 2021 21:11:46 +0000 (23:11 +0200)]
bump version to 3.1-3

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapt repos: move Official to the right & use checkbox to render enabled
Thomas Lamprecht [Wed, 23 Jun 2021 17:57:30 +0000 (19:57 +0200)]
apt repos: move Official to the right & use checkbox to render enabled

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapt repos: add product config-option and rework warning renderer
Thomas Lamprecht [Wed, 23 Jun 2021 17:42:08 +0000 (19:42 +0200)]
apt repos: add product config-option and rework warning renderer

product defaults to PVE. It is added in the warnings and should be
set by any instance correctly.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapt repos: make add-repo a checked command
Thomas Lamprecht [Wed, 23 Jun 2021 17:40:54 +0000 (19:40 +0200)]
apt repos: make add-repo a checked command

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapt repos: style grouping headers a bit different
Thomas Lamprecht [Wed, 23 Jun 2021 17:39:46 +0000 (19:39 +0200)]
apt repos: style grouping headers a bit different

else the repo/header difference is not that big, and it gets a bit
hard to read as it feels a bit monotonic

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapt repos: make enable/disable text selection dependent
Thomas Lamprecht [Wed, 23 Jun 2021 17:38:29 +0000 (19:38 +0200)]
apt repos: make enable/disable text selection dependent

the size hack is copied over from pve-manager's qemu/HardwareView

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapt repos: code/format cleanups
Thomas Lamprecht [Wed, 23 Jun 2021 17:00:57 +0000 (19:00 +0200)]
apt repos: code/format cleanups

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoadd buttons for add/enable/disable
Fabian Ebner [Wed, 23 Jun 2021 13:39:00 +0000 (15:39 +0200)]
add buttons for add/enable/disable

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoadd UI for APT repositories
Fabian Ebner [Wed, 23 Jun 2021 13:38:59 +0000 (15:38 +0200)]
add UI for APT repositories

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agonode/services: show masked and some unknown units as disabled (greyed out)
Thomas Lamprecht [Wed, 23 Jun 2021 13:55:00 +0000 (15:55 +0200)]
node/services: show masked and some unknown units as disabled (greyed out)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode/services: disable start/stop for masked and unknown units-states
Thomas Lamprecht [Wed, 23 Jun 2021 13:54:17 +0000 (15:54 +0200)]
node/services: disable start/stop for masked and unknown units-states

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode/services: optionally show unit/active states
Thomas Lamprecht [Wed, 23 Jun 2021 13:53:29 +0000 (15:53 +0200)]
node/services: optionally show unit/active states

show unit state by default for PVE, with a bit of an hack

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agonode/service view: code cleanups
Thomas Lamprecht [Tue, 22 Jun 2021 12:39:29 +0000 (14:39 +0200)]
node/service view: code cleanups

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agopanel/JournalView: fix flickering in journal livemode
Dominik Csapak [Tue, 22 Jun 2021 09:57:25 +0000 (11:57 +0200)]
panel/JournalView: fix flickering in journal livemode

it seems that something changed in extjs 7 which does not quite
restore the correct scroll position when the identical content is set
on a component. this means that sometimes, we update the text
with the identical one, but the scroll position is now off, only
to scroll back to the bottom

this causes a flickering everytime we do the api call.

instead, only update the component when the content really changed.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agocss: markdown: add some nicer blockquote styling
Thomas Lamprecht [Mon, 21 Jun 2021 16:08:06 +0000 (18:08 +0200)]
css: markdown: add some nicer blockquote styling

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoparser: sanitize HTML: allow 'disabled', 'start', 'type' and 'checked' attributes
Thomas Lamprecht [Mon, 21 Jun 2021 15:37:27 +0000 (17:37 +0200)]
parser: sanitize HTML: allow 'disabled', 'start', 'type' and 'checked' attributes

This makes check box lists like the following snipped work:

- [X] Done
- [ ] not done

Further allow the start attr, sometimes generated for ordered lists.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agocss: markdown: add some nicer table styling
Thomas Lamprecht [Mon, 21 Jun 2021 14:24:27 +0000 (16:24 +0200)]
css: markdown: add some nicer table styling

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 3.1-2
Thomas Lamprecht [Fri, 18 Jun 2021 13:32:31 +0000 (15:32 +0200)]
bump version to 3.1-2

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agointegrate marked as markdown parser
Thomas Lamprecht [Fri, 18 Jun 2021 12:57:20 +0000 (14:57 +0200)]
integrate marked as markdown parser

Define our own, rather minimal interface so that we change the parser
under the hood if ever needed, I already did so once during
evaluating this, as first I checked out Snarkdown[0], which is really
nice for the few lines of code it needs, but is a bit to limited for
the use case.

Currently marked[1] is used, provided by the libjs-marked Debian
package.

For now statically link the marked parser in on built time to avoid
the need to add new directories to serve in our pve/pmg/pbs proxies.
This is a bit ugly but can be cleaned up afterwards transparently
too.

We sanitize the produced HTML ourselves (most MD JS parser/renderer
don't do that) by creating a real, but not active, DOM tree and
recursively prune bad nodes/attrs from it and let it spit out HTML
again at the end. While a tad inefficient it really won't matter for
our use case, as the notes/comments we render are only a few KiB of
text and it's done on the client side anyway.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agod/copyright: mark license explicitly and indent like machine readable format
Thomas Lamprecht [Fri, 18 Jun 2021 13:18:11 +0000 (15:18 +0200)]
d/copyright: mark license explicitly and indent like machine readable format

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: network: add columns for vlan-id and vlan-raw-device
Aaron Lauterer [Mon, 12 Apr 2021 13:14:37 +0000 (15:14 +0200)]
ui: network: add columns for vlan-id and vlan-raw-device

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2 years agobuildsys: change upload dist to bullseye
Thomas Lamprecht [Tue, 8 Jun 2021 07:46:54 +0000 (09:46 +0200)]
buildsys: change upload dist to bullseye

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agocombo grid: load: rework auto-selection and validity logic
Thomas Lamprecht [Mon, 7 Jun 2021 16:03:25 +0000 (18:03 +0200)]
combo grid: load: rework auto-selection and validity logic

We do not want to trigger an autoSelect if there's a value set, even
if it isn't found in the store, as that hides the fact that an (now)
invalid valid is configured from the user, which can be confusing if
something is not working, as when editing an object it seems like a
valid value is selected.

Further, if a value is set we mark the field as invalid from the
start, at least if it's neither disabled nor allowed to have a
value which is does not exists in the backing store.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agocombo grid: reformat/place comment
Thomas Lamprecht [Mon, 7 Jun 2021 16:02:08 +0000 (18:02 +0200)]
combo grid: reformat/place comment

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 3.1-1
Thomas Lamprecht [Wed, 2 Jun 2021 14:18:37 +0000 (16:18 +0200)]
bump version to 3.1-1

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agopanel: disks: more static task window creation
Thomas Lamprecht [Wed, 2 Jun 2021 14:26:43 +0000 (16:26 +0200)]
panel: disks: more static task window creation

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobuildsys: cleanup variable names/grouping
Thomas Lamprecht [Wed, 2 Jun 2021 14:10:58 +0000 (16:10 +0200)]
buildsys: cleanup variable names/grouping

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobuildsys: enforce eslint for api-viewer
Thomas Lamprecht [Wed, 2 Jun 2021 14:10:31 +0000 (16:10 +0200)]
buildsys: enforce eslint for api-viewer

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapi-viewer: eslint fixes, code cleanups
Thomas Lamprecht [Wed, 2 Jun 2021 14:08:32 +0000 (16:08 +0200)]
api-viewer: eslint fixes, code cleanups

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapi-viewer: drop unused clicmdhash
Thomas Lamprecht [Wed, 2 Jun 2021 14:08:06 +0000 (16:08 +0200)]
api-viewer: drop unused clicmdhash

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapi viewer: rename gloabl schema variable and tell eslint about it
Thomas Lamprecht [Wed, 2 Jun 2021 12:46:32 +0000 (14:46 +0200)]
api viewer: rename gloabl schema variable and tell eslint about it

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapi viewer: eslint (auto) fixes + slight cleanup
Thomas Lamprecht [Wed, 2 Jun 2021 12:43:51 +0000 (14:43 +0200)]
api viewer: eslint (auto) fixes + slight cleanup

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agodon't shout: s/APIVIEWER/APIViewer/
Thomas Lamprecht [Wed, 2 Jun 2021 12:43:13 +0000 (14:43 +0200)]
don't shout: s/APIVIEWER/APIViewer/

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>