From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 4CA381FF178 for ; Mon, 1 Dec 2025 11:39:26 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 8669818759; Mon, 1 Dec 2025 11:39:50 +0100 (CET) From: Dominik Csapak To: pdm-devel@lists.proxmox.com Date: Mon, 1 Dec 2025 11:39:01 +0100 Message-ID: <20251201103917.1357369-2-d.csapak@proxmox.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251201103917.1357369-1-d.csapak@proxmox.com> References: <20251201103917.1357369-1-d.csapak@proxmox.com> MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.029 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: [pdm-devel] [PATCH yew-comp 1/2] subscription: refactor api subscription check for showing the alert X-BeenThere: pdm-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Datacenter Manager development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox Datacenter Manager development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pdm-devel-bounces@lists.proxmox.com Sender: "pdm-devel" so we can reuse that Signed-off-by: Dominik Csapak --- src/apt_repositories.rs | 8 ++------ src/subscription_alert.rs | 13 +++++++++++++ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/src/apt_repositories.rs b/src/apt_repositories.rs index ae582a6..83463c9 100644 --- a/src/apt_repositories.rs +++ b/src/apt_repositories.rs @@ -19,6 +19,7 @@ use pwt::widget::data_table::{ }; use pwt::widget::{Button, Column, Container, Fa, Row, Toolbar, Tooltip}; +use crate::subscription_alert::subscription_is_active; use crate::{ EditWindow, ExistingProduct, LoadableComponent, LoadableComponentContext, LoadableComponentMaster, ProjectInfo, SubscriptionAlert, @@ -694,12 +695,7 @@ fn standard_repo_info( impl ProxmoxAptRepositories { fn active_subscription(&self) -> bool { - match &self.subscription_status { - Some(Ok(data)) => { - data["status"].as_str().map(|s| s.to_lowercase()).as_deref() == Some("active") - } - _ => false, - } + subscription_is_active(&self.subscription_status) } fn create_show_subscription_dialog( diff --git a/src/subscription_alert.rs b/src/subscription_alert.rs index 2dca3c4..7734123 100644 --- a/src/subscription_alert.rs +++ b/src/subscription_alert.rs @@ -1,5 +1,8 @@ use std::rc::Rc; +use anyhow::Error; +use serde_json::Value; + use yew::html::{IntoEventCallback, IntoPropValue}; use yew::virtual_dom::{VComp, VNode}; @@ -63,3 +66,13 @@ impl From for VNode { VNode::from(comp) } } + +/// Check if the result of the subscription check returned an active subscription +pub fn subscription_is_active(result: &Option>) -> bool { + match result { + Some(Ok(data)) => { + data["status"].as_str().map(|s| s.to_lowercase()).as_deref() == Some("active") + } + _ => false, + } +} -- 2.47.3 _______________________________________________ pdm-devel mailing list pdm-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pdm-devel