From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id 159A71FF168 for ; Tue, 4 Mar 2025 15:15:02 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 3C4BE783; Tue, 4 Mar 2025 15:14:56 +0100 (CET) From: Dominik Csapak To: pve-devel@lists.proxmox.com Date: Tue, 4 Mar 2025 15:14:52 +0100 Message-Id: <20250304141452.2594160-1-d.csapak@proxmox.com> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.022 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. 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 manager v2] fix #6138: ui: storage content: use locale for sorting X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" by using 'localeCompare'. Assume the files 'a', 'B' and 'c'. The current default sorting results in : 'B' 'a' 'c' (C collation) With this patch we use locale dependent sorting, so the browser/client setting controls how it's sorted. For example with english, the list becomes: 'a' 'B' 'c' Which makes it easier to visually search for specific entries. Using the default settings here makes sense (so no explicit 'sensitivity' setting for example.), since that is whats most expected per locale. Also enable 'numeric' sorting, so 'foo10' is sorted after 'foo2'. Interestingly, the initial sorter (via the 'sorters' property of the store), cannot seem to reuse the sorter defined in the columns, so we have to specify it twice, once for the initial sort and once when the user clicks the column header. Signed-off-by: Dominik Csapak --- changes from v1: * also include numeric sorting. Thanks @Fiona for noticing this! www/manager6/storage/ContentView.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/www/manager6/storage/ContentView.js b/www/manager6/storage/ContentView.js index daefaf4f..31f100f1 100644 --- a/www/manager6/storage/ContentView.js +++ b/www/manager6/storage/ContentView.js @@ -43,10 +43,10 @@ Ext.define('PVE.storage.ContentView', { content: content, }, }, - sorters: { - property: 'volid', - direction: 'ASC', - }, + sorters: [ + (a, b) => a.data.text.toString().localeCompare( + b.data.text.toString(), undefined, { numeric: true }), + ], }); if (!me.sm) { @@ -153,6 +153,8 @@ Ext.define('PVE.storage.ContentView', { flex: 2, sortable: true, renderer: PVE.Utils.render_storage_content, + sorter: (a, b) => a.data.text.toString().localeCompare( + b.data.text.toString(), undefined, { numeric: true }), dataIndex: 'text', }, 'notes': { -- 2.39.5 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel