Fix-variant-display-in-API

This commit is contained in:
sysadmin
2025-10-03 20:20:25 +01:00
parent e5f19f8b83
commit 8075560877
2 changed files with 59 additions and 4 deletions

View File

@@ -385,13 +385,19 @@ namespace TeleBot.UI
{
string variantInfo = "";
// Show price if different from base product price
if (variant.Price.HasValue && variant.Price.Value != product.Price)
{
variantInfo = $" - £{variant.Price.Value:F2}";
}
if (variant.StockLevel > 0)
{
variantInfo = $" ({variant.StockLevel} in stock";
variantInfo += variantInfo == "" ? $" ({variant.StockLevel} in stock" : $" ({variant.StockLevel} in stock";
}
else if (variant.StockLevel == 0)
{
variantInfo = " (Out of stock";
variantInfo += variantInfo == "" ? " (Out of stock" : " (Out of stock";
}
if (variant.Weight.HasValue)
@@ -406,10 +412,17 @@ namespace TeleBot.UI
6 => "L",
_ => "unit"
};
variantInfo += variantInfo == "" ? $" ({variant.Weight}{unitName}" : $", {variant.Weight}{unitName}";
if (variantInfo.Contains("("))
{
variantInfo += $", {variant.Weight}{unitName}";
}
else
{
variantInfo += variantInfo == "" ? $" ({variant.Weight}{unitName}" : $" ({variant.Weight}{unitName}";
}
}
if (variantInfo != "")
if (variantInfo.Contains("(") && !variantInfo.EndsWith(")"))
{
variantInfo += ")";
}