public IActionResult Create(string businessType)
        {
            var model = getModelByBusinessType(businessType);

            model.Listing.Categories.AddRange(ListingHelper.GetCategories(model.Listing));
            return(View(model));
        }
        public IActionResult Create(BusinessViewModel model)
        {
            var listing    = model.Listing;
            var categories = ListingHelper.GetCategories(listing);

            listing.Categories.AddRange(categories);
            businessRepo.Add(listing);
            return(RedirectToAction("CreateLocation", new { id = model.Listing.Id.ToString() }));
        }
Exemple #3
0
        public override bool Logic(MongoClient client, IMongoDatabase db)
        {
            var businessCollection = db.GetCollection <BusinessListing>("businesses");
            var businesses         = businessCollection.AsQueryable().ToList();

            foreach (var item in businesses)
            {
                var categories = ListingHelper.GetCategories(item);
                item.Categories.AddRange(categories);
                businessCollection.FindOneAndReplace <BusinessListing>(l => l.Id == item.Id, item);
            }

            var categoriesCollection = db.GetCollection <Category>("categories");

            // Update shopkeepers to retail
            var shopKeepersCategory = categoriesCollection.AsQueryable().Single(c => c.Name == "Shopkeepers");

            shopKeepersCategory.DisplayName = "Retail";
            categoriesCollection.FindOneAndReplace <Category>(c => c.Id == shopKeepersCategory.Id, shopKeepersCategory);

            // Update Information to Support & Information
            var informationCategory = categoriesCollection.AsQueryable().Single(c => c.Name == "Information");

            informationCategory.DisplayName = "Support & Information";
            informationCategory.Description = "Do you offer support or information?";
            categoriesCollection.FindOneAndReplace <Category>(c => c.Id == informationCategory.Id, informationCategory);

            var businessCategories = categoriesCollection.AsQueryable().ToList().Where(c => c.Type == ListingCategory.Business).OrderBy(c => c.DisplayName);
            int count = 1;

            foreach (var item in businessCategories)
            {
                if (item.Name == "Other")
                {
                    item.DisplayOrder = 10;
                }
                else
                {
                    item.DisplayOrder = 10 + count;
                    count++;
                }
                categoriesCollection.FindOneAndReplace <Category>(c => c.Id == item.Id, item);
            }


            return(true);
        }