From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <f.ebner@proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by lists.proxmox.com (Postfix) with ESMTPS id E91F3624E2
 for <pve-devel@lists.proxmox.com>; Wed, 16 Sep 2020 14:51:22 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
 by firstgate.proxmox.com (Proxmox) with ESMTP id 8D6D124104
 for <pve-devel@lists.proxmox.com>; Wed, 16 Sep 2020 14:50:52 +0200 (CEST)
Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com
 [212.186.127.180])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by firstgate.proxmox.com (Proxmox) with ESMTPS id 62781240BE
 for <pve-devel@lists.proxmox.com>; Wed, 16 Sep 2020 14:50:50 +0200 (CEST)
Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1])
 by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 1AE9C453E3
 for <pve-devel@lists.proxmox.com>; Wed, 16 Sep 2020 14:50:50 +0200 (CEST)
From: Fabian Ebner <f.ebner@proxmox.com>
To: pve-devel@lists.proxmox.com
Date: Wed, 16 Sep 2020 14:50:21 +0200
Message-Id: <20200916125041.4151-1-f.ebner@proxmox.com>
X-Mailer: git-send-email 2.20.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SPAM-LEVEL: Spam detection results:  0
 AWL -0.064 Adjusted score from AWL reputation of From: address
 KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment
 RCVD_IN_DNSWL_MED        -2.3 Sender listed at https://www.dnswl.org/,
 medium trust
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_PASS               -0.001 SPF: sender matches SPF record
Subject: [pve-devel] [PATCH-SERIES v2 manager] split up content view into a
 view for each type
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
X-List-Received-Date: Wed, 16 Sep 2020 12:51:23 -0000

The goal of doing this is to have more flexibility/cleaner code for
content-type-dependent features in the content view. Now only buttons
that are useful for each content type are displayed. And it might make
sense to display different columns for different content types, e.g.
'parent' for cloned VM/CT images. The mechanism introduced in this series
(patch #16) is not used yet, suggestions for which columns to use for
which types are welcome.

API calls might be faster if only one type of content is requested.
The obvious drawback is that there is no view with all contents anymore.

The first patch is not directly related. It fixes the extension filters
when selecting a file to upload.

The last four patches are not directly related, but group backups by backup group
and introduce the prune window, which was essentially copied from the PBS code.


Changes from v1:
    * fix extension filter for upload window
    * group backups and add prune button to the group header
    * make individual components stateful
    * better icons and text for the storage browser panel

Fabian Ebner (20):
  fix extension filter for upload window
  config panel: allow new nodes to be added later
  storage panel/browser: use insertNodes function
  add CD ROM and lxc icons for treelist-item-icon
  use separate view for each content type
  remove the now unnecessary grouping by content type
  remove the now unneccessary content type column
  content view: allow specifying title bar elements for init
  turn {nodename,storage,sm} into object variables
  add upload button conditionally
  create and use TemplateView
  create and use BackupView
  get rid of unneccessary enableFn's
  create ImageView and use it for VM and CT images
  simplify reload call
  content view: allow specifying which columns to show on init
  group backups by backup groups in backup view
  allow child classes of ContentView to specify their own listeners
  add CSS for button in grid's group header
  backup view: add prune window

 www/css/ext6-pve.css                 |  28 ++
 www/manager6/Makefile                |   4 +
 www/manager6/panel/ConfigPanel.js    |  93 ++---
 www/manager6/storage/BackupView.js   | 126 +++++++
 www/manager6/storage/Browser.js      |  97 ++++-
 www/manager6/storage/ContentView.js  | 539 ++++++---------------------
 www/manager6/storage/ImageView.js    |  74 ++++
 www/manager6/storage/TemplateView.js | 215 +++++++++++
 www/manager6/window/Prune.js         | 230 ++++++++++++
 9 files changed, 934 insertions(+), 472 deletions(-)
 create mode 100644 www/manager6/storage/BackupView.js
 create mode 100644 www/manager6/storage/ImageView.js
 create mode 100644 www/manager6/storage/TemplateView.js
 create mode 100644 www/manager6/window/Prune.js

-- 
2.20.1