private Product CreateProductOnCategory(Category category, ProductDefinition productDefinition, string sku, string name, decimal price, string shortDescription = "", string longDescription = "") { var product = CreateBaseProduct(productDefinition, sku, null, name); GenericHelpers.DoForEachCulture( language => { if (!product.HasDescription(language)) { product.AddProductDescription(new ProductDescription() { CultureCode = language, DisplayName = name, ShortDescription = shortDescription, LongDescription = longDescription }); } }); CreateProductPricesForProduct(category, price, product); // uCommerce checks whether the product already exists in the create // when creating the new relation. product.AddCategory(category, 0); product.Save(); return(product); }
private DataTypeEnum GenerateColourDataTypeEnum(string colour, DataType parentDataType) { var dataTypeEnum = DataTypeEnum.SingleOrDefault(x => x.Value == colour && x.DataType.DataTypeId == parentDataType.DataTypeId) ?? new DataTypeEnumFactory().NewWithDefaults(colour); dataTypeEnum.Deleted = false; dataTypeEnum.DataType = DataType.Get(parentDataType.DataTypeId); dataTypeEnum.Save(); GenericHelpers.DoForEachCulture(language => { if (dataTypeEnum.GetDescription(language) == null) { dataTypeEnum.AddDescription(new DataTypeEnumDescription { CultureCode = language, DisplayName = colour, Description = colour }); } }); return(dataTypeEnum); }
private static Category CreateCategory(ProductCatalog catalog, string name) { var definition = Definition.SingleOrDefault(d => d.Name == "Default Category Definition"); var category = Category.SingleOrDefault(c => c.Name == name) ?? new CategoryFactory().NewWithDefaults(catalog, definition, name); category.DisplayOnSite = true; GenericHelpers.DoForEachCulture(language => { if (category.GetDescription(language) == null) { category.AddCategoryDescription(new CategoryDescription() { CultureCode = language, DisplayName = name }); } }); category.Save(); return(category); }