IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
use a flex box with centered columns instead, that needs adding a div
per row, but that's IMO actually making it more clear what a row is
anyway.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Firefox doesn't correctly break to the next line if the line-height
is set as is (with certain fonts, including the default on debian it
seems). Simply remove it, as it isn't necessary.
Suggested-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
while we cannot allow editing it after realm creation it is still
interesting to know to which value it was set.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
And also add the 'backup-info' endpoint to the index.
Suggested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
While one can re-add a user quite easily, the ACLs and the old
password may still be lost, so not really just like a simple "undo".
That's why it should show the warning triangle and have no selected
as default.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
'for...in array' returns the id in the array but not the value,
'for...of array' returns the values.
Another issue that I ran into was if the property did not exist.
Checking if the property evaluates to false will catch situations where
the property does not exist or is null. All other situations where there
is a value for the name, id or type, should evaluate to true if present
as they are strings or the VMID.
Signed-off-by: Aaron Lauterer <a.lauterer@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>
As 60% is pretty low, and normally still OK and even wanted to have
(no need for having an over-dimensioned setup with lots of unused
resources).
Note, this is not a off-by-one, I want to compare real bigger > 75%
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
this one would deserve much more, especially the newer backup job
detail and not-backed-up view should be split out and done in a
declarative way (view view-controller)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
they live there now, so we can delete them here and use the ones from
widget-toolkit instead
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
we always have to calculate the url correctly, not only on creation
otherwise we try to edit the token by doing a 'PUT' request on
/access/users
and not on
/access/users/USERID/token/TOKENID
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
instead of relying on the contentTypeField (which does not need to
exists, e.g. for iscsi), explicitely write it into the panel/icon
mapping and check that
better would be if we query the backend about storage capabilities,
but such an api call does not exist yet, so this should be ok for now
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
findRecord does not match exactly, but only at the beginning and
case insensitive, by default. Change all calls to be case sensitive
and an exactmatch (we never want the default behaviour afaics).
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
we could use the official influxdata one, they provide it in their
branding guide - and the use here would seem to comply with their
rules, and would fall under fair-user, probably.
Still, not 100% clear for me and Graphite is not easy to find a good
one with clear rules, so just reuse the bar-graph Font Awesome one,
better than nothing (looks empty-wrong)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
We actually wanted to use that scheme for more new API paths, lets
see if it is really fitting starting with this.
Use the new widget-toolkit submitUrl helper to add the ID on create.
And unify the edit/create window creation, which may fit better in a
separate commit, it's quite small and was to cumbersome to untangle,
so just go against my one rules here... :(
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
adds ui support for configuring the External Metric servers.
for now, influxdb and graphite edit windows do not share code,
it would be ideal to do that once we add more plugins
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
In case that there are guests which are not covered by any backup job, a
notification is shown and a window with a grid can be opened to view
these guests.
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
The new detail view for backup jobs shows the settings similar to the
edit dialog but read only. Additionally it does show a list of all
included guests with their volumes and whether these volumes will be
included in the backup.
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Moving the following renderers to Utils.js to be able to use them in
more than one place:
* render_backup_days_of_week
* render_backup_selection
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Avoids that the user selector always pops up and tokenid is normally
more likely to change as the userid gets pre-selected to the one from
the logged in user.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
When using a diffstore, we have to specify all fields that are
displayed, otherwise the store does not know which fields to check for
change
for the acme plugin view, 'api' was missing
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
we cannot pass 'delete' on create api call, and we have to make
sure that 'default_opts' and 'sync_attributes' are alwyas available,
since they are used in onGetValues
(they were only created during setValues, which is not called
when adding a new realm)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this is not a synchronous api call, so open a taskprogress window
and reload after the task is done
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
if we use a diff/update store combo, we have to load the updatestore
not the diff store, else we get spurious empty grids
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
if the 'default' account exists, make the name field required and
remove the emptytext
get the information by querying the grid store. this may be not
up-to-date, but it is less intrusive that an extra api call that
blocks the window
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
fit's more the style used in PVE, where west-center layouts are
normally just used if there's some data relation between west and
center.
Make it more similar to panels like the HA overview, CephFS, ...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
to show the list of accounts and defined plugins
for now we ignore 'standalone' plugins here and only show 'dns' ones
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this is a rather complex edit window, because we dynamically create form
fields according to the schema we get from the api
to do this properly we have to handle a few things:
* we have to properly set the values on edit
* we have to properly track the original values
* we have to merge and split with/from the generic 'data' field
(so that if a plugin has some extra fields that we did not include in
the schema the user can still enter them)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Instead of the old 'ring_addr' property (which is kept for
compatibility), we also encode the link numbers into the new peerLinks
structure. This allows us to display which IP is assigned to which link
on the cluster in the join dialog, helping a user identify which link
should receive which interface on the new node.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
CorosyncLinkEdit is a Panel that contains between one and 8
CorosyncLinkSelectors. These can be added or removed with according
buttons.
Values submitted to the API are calculated by each
ProxmoxNetworkSelector itself. This works because ExtJS searches
recursively through all child components for ones with a value to be
submitted, i.e. the CorosyncLinkEdit and CorosyncLinkSelector components
are not part of data submission at all.
Change ClusterEdit.js to use the new component for cluster join and
create. To make space in layout, move 'password' field to the side
(where the network-selector previously was) and use 'hbox' panel for
horizontal layouting to avoid spacing issues with languages where the
fieldLabel doesn't fit on one line.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
opens a window with the parameters for the sync and two buttons:
'preview' and 'sync'
both open the taskviewer, but the 'preview' one sets the 'dry-run'
parameter so that it does not get written out to the user.cfg
loads the realm config and prefills the selection with values from
the config, and shows a hint about where to set the defaults
if none are set
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this modifies AuthEditBase so that if there is a sync inputpanel specified,
we display it in a second tab (we need to modify the bodyPadding here,
else the whole window has too much padding)
we use the same panel for both ldap/ad, since the most options behave
the same (except for user_attribute, but the default for AD is
sAMAccount which i think is good enough for now, users can still
override it in the cli)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
that breaks the schema as the POST endpoint obviously doesn't knows
about a delete property.
fixes commit 58e1ccc4f5
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
similar to storage/Base.js so that we have the different
RealmTypes in different inputpanels
this will come in handy when we define sync options
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
New version including the cluster name didn't work in some languages,
e.g. german: "Beitreten 'cluster'" vs the correct "'cluster' beitreten"
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
there's no caps.dc['Sys.Modify'] in our heuristic caps-for-frontend
and the === undefined check was wrong
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
if the webinterface got loaded the api call to check if SDN is
available did not yet returned, so we could show it by accident -
even if libpve-network-perl wasn't instralled.
Fix that by hiding it (once) in the failure callback of the API call.
also move menu entries below, before Firewall, this fits better to
networking.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
while this /could/ (not benched marked in any way) be slower it
operates on so small data sets that this isn't worth it having double
the code lines.
A map + join is still quite readable and not yet "code golfy"
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Slightly confusing with the units:
* Backend stores values in KiB/s
* Frontend displays MiB/s (which is a good choice when considering
current generation network speeds as opposed to huge KiB numbers IMO)
* Renderer previously showed no units, which would usually be interpreted
as Bytes/s
So add a pretty renderer that shows units and set backendUnit to submit
correctly converted values.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Show only links found on the cluster.
'enableColumnHide' is set to false, since it causes confusing behaviour
for the user, considering we'd overwrite part of their choices every 5
seconds.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
if no storage is selected in 'My Settings' our calculatin was done as follows:
* for every node, count 'local',
* every other storage gets only counted *once*, even if it is a local storage
as we have the 'shared' flag available, we can count local storages
for every node where they are defined which results in a storage total
calculation:
sum of all local storages on all nodes + all shared storages once
should make a better overview of storage for a cluster with local storages
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
the verification textfield, and the selected tab.
also remove the code that used the value by the userview panel, since
this is the only way to have a consistent behaviour on the userview
setting and the usermenu tfa setting
this fixes the issue that on the 'user menu' we accidentally showed
the qr code and verification field, even if the user already had a
totp code
now it shows 'Unchanged' like when opened via dc/UserView
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
since any change to them is currently silently ignored by the backend
and should result in an error anyway
partially fixes#2575
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>