Esempio n. 1
0
        public ActionResult Edit(Event @event, long[] technologies, string[] speakers)
        {
            if (technologies == null)
                technologies = new long[] { };
            if (speakers == null)
                speakers = new string[] { };

            db.Event.Attach(@event);
            db.Entry(@event).Collection("Technology").Load();
            db.Entry(@event).Collection("Event_AspNetUsers").Load();
            @event.Technology = db.Technology.Where(t => technologies.Contains(t.id)).ToList();
            @event.Event_AspNetUsers = speakers.Select(s => new Event_AspNetUsers { user_id = s, event_id = @event.id, type = "speaker" }).ToList();

            if (ModelState.IsValid)
            {
                db.Entry(@event).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            EventEditViewModel eventEditViewModel = new EventEditViewModel();
            eventEditViewModel.Event = @event;
            eventEditViewModel.selectedTechnologies = @event.Technology.ToList();
            eventEditViewModel.technologies = DataAccess.Technology.GetTechnologiesList().Where(t => [email protected](e => e.id).Contains(t.id)).ToList();
            List<string> speaker_event_user = @event.Event_AspNetUsers.Where(u => u.type == "speaker").Select(u => u.user_id).ToList();
            eventEditViewModel.selectedSpeakers = db.AspNetUsers.Where(u => speaker_event_user.Contains(u.Id)).ToList();
            eventEditViewModel.speakers = DataAccess.AspNetUsers.GetUsersList().Where(u => !speaker_event_user.Contains(u.Id)).ToList();
            return View(eventEditViewModel);
        }
Esempio n. 2
0
 public ActionResult Edit(long? id)
 {
     if (id == null)
     {
         return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
     }
     Event @event = db.Event.Find(id);
     if (@event == null)
     {
         return HttpNotFound();
     }
     string currentUserId = User.Identity.GetUserId();
     Event_AspNetUsers event_AspNetUsers = db.Event_AspNetUsers.Where(u => u.event_id == @event.id && u.user_id == currentUserId).FirstOrDefault();
     if (event_AspNetUsers == null)
     {
         return RedirectToAction("Index");
     }
     EventEditViewModel eventEditViewModel = new EventEditViewModel();
     eventEditViewModel.Event = @event;
     eventEditViewModel.selectedTechnologies = @event.Technology.ToList();
     eventEditViewModel.technologies = DataAccess.Technology.GetTechnologiesList().Where(t => [email protected](e => e.id).Contains(t.id)).ToList();
     List<string> speaker_event_user = @event.Event_AspNetUsers.Where(u => u.type == "speaker").Select(u => u.user_id).ToList();
     eventEditViewModel.selectedSpeakers = db.AspNetUsers.Where(u => speaker_event_user.Contains(u.Id)).ToList();
     eventEditViewModel.speakers = DataAccess.AspNetUsers.GetUsersList().Where(u => !speaker_event_user.Contains(u.Id)).ToList();
     return View(eventEditViewModel);
 }