Beispiel #1
0
    /// <summary>
    /// Returns value of the specified product public status column.
    /// If the product is evaluated as a new product in the store, public status set by 'CMSStoreNewProductStatus' setting is used, otherwise product public status is used.
    /// </summary>
    /// <param name="sku">SKU data</param>
    /// <param name="column">Name of the product public status column the value should be retrieved from</param>
    public static object GetSKUIndicatorProperty(SKUInfo sku, string column)
    {
        // Do not process
        if (sku == null)
        {
            return(null);
        }

        PublicStatusInfo status     = null;
        string           siteName   = SiteInfoProvider.GetSiteName(sku.SKUSiteID);
        string           statusName = ECommerceSettings.NewProductStatus(siteName);

        if (!string.IsNullOrEmpty(statusName) && SKUInfoProvider.IsSKUNew(sku))
        {
            // Get 'new product' status
            status = PublicStatusInfoProvider.GetPublicStatusInfo(statusName, siteName);
        }
        else
        {
            // Get product public status
            if (sku.SKUPublicStatusID > 0)
            {
                status = PublicStatusInfoProvider.GetPublicStatusInfo(sku.SKUPublicStatusID);
            }
        }

        // Get specified column value
        return(GetColumnValue(status, column));
    }