all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Philipp Hufnagl <p.hufnagl@proxmox.com>
To: pbs-devel@lists.proxmox.com
Subject: [pbs-devel] [PATCH proxmox-backup v4] ui: fix #4260: add dynamic notes in backup group comment
Date: Mon,  2 Oct 2023 17:23:18 +0200	[thread overview]
Message-ID: <20231002152318.680675-1-p.hufnagl@proxmox.com> (raw)

When there is no comment for a backup group, the comment of the last
snapshot in this group will be shown slightly grayed out as long as
the group is collapsed.

Changes since v1:
* fixed typo at "additonal classes"
* renamed css class to "faded" so it can be used more generic
* guarded snapshot comment for not being a string guarded snapshot

Changes since v2:
* fixed variable name in violation of coding guidelines
Signed-off-by: Philipp Hufnagl <p.hufnagl@proxmox.com>

Changes since v3:
* fixed intentation
* removed span prefix from faded class

---
 www/css/ext6-pbs.css     |  3 +++
 www/datastore/Content.js | 17 ++++++++++++++---
 2 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/www/css/ext6-pbs.css b/www/css/ext6-pbs.css
index 5fd65d25..bb239e95 100644
--- a/www/css/ext6-pbs.css
+++ b/www/css/ext6-pbs.css
@@ -226,6 +226,9 @@ span.snapshot-comment-column {
     display: inline-block;
     width: calc(100% - 18px);
 }
+pmx-faded {
+    opacity: 0.7;
+}
 
 .x-action-col-icon.good:before {
     color: #21BF4B;
diff --git a/www/datastore/Content.js b/www/datastore/Content.js
index 9fc07d49..740d10bf 100644
--- a/www/datastore/Content.js
+++ b/www/datastore/Content.js
@@ -146,6 +146,7 @@ Ext.define('PBS.DataStoreContent', {
 		    leaf: false,
 		    iconCls: "fa " + cls,
 		    expanded: false,
+		    comment: item.data.comment,
 		    backup_type: item.data["backup-type"],
 		    backup_id: item.data["backup-id"],
 		    children: [],
@@ -287,6 +288,7 @@ Ext.define('PBS.DataStoreContent', {
 		    if (item["backup-time"] > last_backup && item.size !== null) {
 			last_backup = item["backup-time"];
 			group["backup-time"] = last_backup;
+			group["last-comment"] = item.comment;
 			group.files = item.files;
 			group.size = item.size;
 			group.owner = item.owner;
@@ -903,13 +905,22 @@ Ext.define('PBS.DataStoreContent', {
 		if (!data || data.leaf || data.root) {
 		    return '';
 		}
-		if (v === undefined || v === null) {
-		    v = '';
+
+		let additionalClasses = "";
+		// when there is no group comment and the section is collapsed,
+		// display the most recent snapshot comment
+		if (v === undefined || v === null|| v === '') {
+		    if (data.expanded === false) {
+			v = data['last-comment'] ?? '';
+			additionalClasses = "pmx-faded";
+		    } else {
+			v = '';
+		    }
 		}
 		v = Ext.String.htmlEncode(v);
 		let icon = 'x-action-col-icon fa fa-fw fa-pencil pointer';
 
-		return `<span class="snapshot-comment-column">${v}</span>
+		return `<span class="snapshot-comment-column ${additionalClasses}">${v}</span>
 		    <i data-qtip="${gettext('Edit')}" style="float: right; margin: 0px;" class="${icon}"></i>`;
 	    },
 	    listeners: {
-- 
2.39.2





             reply	other threads:[~2023-10-02 15:23 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-02 15:23 Philipp Hufnagl [this message]
2023-10-03 10:34 ` Dominik Csapak
2023-10-03 12:37   ` Philipp Hufnagl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231002152318.680675-1-p.hufnagl@proxmox.com \
    --to=p.hufnagl@proxmox.com \
    --cc=pbs-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal