public ActionResult NewEntry(ModelWrapper m)
        {
            if (m.NewContestEntryBindingModel.ImageInputFile == null || m.NewContestEntryBindingModel.ImageInputFile.ContentLength < 1)
            {
                return View("Error");
            }
            string[] formats = { ".jpg", ".png", ".gif", ".jpeg" };

            if (!formats.Any(f => m.NewContestEntryBindingModel.ImageInputFile.FileName
                .EndsWith(f, StringComparison.OrdinalIgnoreCase)))
            {
                return Content("File is in different format!");
            }

            var userId = User.Identity.GetUserId();

            var imgUrl = UploadFile(m.NewContestEntryBindingModel);

            var entry = new ContestEntry
            {
                Title = m.NewContestEntryBindingModel.Title,
                ContestId = m.NewContestEntryBindingModel.ContestId,
                PhotoUrl = imgUrl.Result,
                AuthorId = userId,
                Upploaded = DateTime.Now
            };

           
            this.Data.ContestEntries.Add(entry);

            this.Data.SaveChanges();

            return RedirectToAction("Details","Contest",new {id = entry.ContestId});
        }
Exemple #2
0
        public ActionResult Details(int? page, int id)
        {
            this.ViewBag.Contest = id;
            this.ViewBag.Page = page;

            var contest = this.Data.Contests.All()
                .Where(c => c.Id == id)
                .ProjectTo<ContestDetailsViewModel>().FirstOrDefault();

            var entries = this.Data.ContestEntries.All()
                .Where(ce => ce.ContestId == id)
                .Where(ce => ce.State == ContestEntryState.Acceppted)
                 .OrderByDescending(e => e.Upploaded)
                .ProjectTo<ContestEntryShortViewModel>()
                .ToPagedList(page ?? GlobalConstants.DefaultStartPage, GlobalConstants.DefaultPageSizeCe); ;

            var winners = this.Data.ContestEntries.All()
               .Where(ce => ce.ContestId == id)
               .Where(ce => ce.State == ContestEntryState.Acceppted)
               .Where(ce => ce.IsWinner == true)
               .OrderByDescending(e => e.Upploaded)
               .ProjectTo<ContestEntryShortViewModel>()
               .ToPagedList(page ?? GlobalConstants.DefaultStartPage, GlobalConstants.DefaultPageSizeCe); ;

            var result = new ModelWrapper()
            {
                ContestDetailsViewModel = contest,
                ContestEntryShortViewModel = entries,
                ContestWinners = winners
            };

            return this.View("Details", result);
        }
        public void ShouldBeAbleToChangeCreateWrapperFunction()
        {
            var wrapper1 = new ModelWrapper(new Model { Name = "One" });
            var wrapper2 = new ModelWrapper(new Model { Name = "Two" });

            var collectionA = new ObservableCollection<Model>();
            var wrapper = new ObservableCollectionWrapper<Model, ModelWrapper>(collectionA, item => wrapper1);

            collectionA.Add(wrapper1.Source);
            wrapper.Contains(wrapper1).ShouldBe(true);

            // ---

            wrapper.CreateWrapper = item => wrapper2;

            collectionA.Add(wrapper2.Source);
            wrapper.Contains(wrapper2).ShouldBe(true);
        }
Exemple #4
0
 public void StartLoan([FromBody] ModelWrapper wrapper)
 {
     new LoanElasticServerDAO().StartLoan(wrapper.Item, wrapper.Person, wrapper.Date);
 }