protected virtual void ConvertCheckoutAttribute(ProductVariantQuery query, string key, ICollection <string> values) { var ids = key.Replace("cattr", "").SplitSafe("-"); if (ids.Length <= 0) { return; } var attributeId = ids[0].ToInt(); var isDate = key.EndsWith("-date") || key.EndsWith("-year"); var isFile = key.EndsWith("-file"); var isText = key.EndsWith("-text"); if (isDate || isFile || isText) { var value = isText ? string.Join(",", values) : values.First(); var attribute = new CheckoutAttributeQueryItem(attributeId, value) { IsFile = isFile, IsText = isText }; if (isDate) { attribute.Date = ConvertToDate(key, value); } query.AddCheckoutAttribute(attribute); } else { foreach (var value in values) { query.AddCheckoutAttribute(new CheckoutAttributeQueryItem(attributeId, value)); } } }
protected virtual void ConvertCheckoutAttribute(ProductVariantQuery query, string key, string value) { if (key.EndsWith("-day") || key.EndsWith("-month")) { return; } var ids = key.Replace("cattr", "").SplitSafe("-"); if (ids.Length > 0) { var attribute = new CheckoutAttributeQueryItem(ids[0].ToInt(), value); if (key.EndsWith("-date") || key.EndsWith("-year")) { attribute.Date = ConvertToDate(key, value); } query.AddCheckoutAttribute(attribute); } }