public Boolean IsContactFromOpdracht(ContactPersoon persoon)
 {
     return HasContact(persoon) != null;
 }
 public void AddContactPersoon(ContactPersoon persoon)
 {
     this.ContactPersonen.Add(persoon);
 }
        public ContactPersoon HasContact(ContactPersoon persoon)
        {
            if (Ondertekenaar != null)
            {

                if (Ondertekenaar.Id == persoon.Id)
                {
                    return persoon;
                }
            }
            if (StageMentor != null)
            {

                if (StageMentor.Id == persoon.Id)
                {
                    return persoon;
                }
            }
            return null;
        }
 public Boolean IsOpdrachtenWithContact(ContactPersoon persoon)
 {
     return FindOpdrachtWithContact(persoon).Count != 0;
 }
 public void RemoveContactPersoon(ContactPersoon persoon)
 {
     this.ContactPersonen.Remove(persoon);
 }
 public List<Opdracht> FindOpdrachtWithContact(ContactPersoon persoon)
 {
     List<Opdracht> opdrachten = new List<Opdracht>();
     foreach (Opdracht opdracht in Opdrachten)
     {
         if (opdracht.IsContactFromOpdracht(persoon))
         {
             opdrachten.Add(opdracht);
         }
     }
     return opdrachten;
 }
 public void VerwijderContact(ContactPersoon contact)
 {
     contactpersonen.Remove(contact);
     SaveChanges();
 }
 public ActionResult MakeStageBegeleiderFromForm(ContactModel model, int id)
 {
     Opdracht opdracht = opdrachtRepository.FindOpdracht(id);
     Bedrijf bedrijf = bedrijfRepository.FindBedrijfByOpdrachtId(id);
     if (ModelState.IsValid)
     {
         ContactPersoon c = null;
         ContactPersoon contact = contactPersoonRepository.FindPersoonWithNaamVoornaamEmail(model.Naam, model.Voornaam,
             model.ContactEmail);
         if (contact!=null)
         {
             c = contact;
             c.Actief = true;
         }
         else
         {
             c = new ContactPersoon()
             {
                 ContactEmail = model.ContactEmail.Trim(),
                 ContactTelNr = model.ContactTelNr,
                 Functie = model.Functie.Trim(),
                 GsmNummer = model.GsmNummer,
                 Naam = model.Naam.Trim(),
                 Voornaam = model.Voornaam.Trim()
             };
             bedrijf.AddContactPersoon(c);
         }
      
         opdracht.StageMentor = c;
         opdrachtRepository.SaveChanges();
         if (Request.IsAjaxRequest())
         {
             return PartialView("_ContactDetail", c);
         }
     }
     if (Request.IsAjaxRequest())
     {
         return PartialView("_StageBegeleiderForm", model);
     }
     return RedirectToAction("GetNewStageBegeleider", model);
 }
 public ActionResult MakeContactFromForm(ContactModel model, int id)
 {
     Opdracht opdracht = opdrachtRepository.FindOpdracht(id);
     Bedrijf bedrijf = bedrijfRepository.FindBedrijfByOpdrachtId(id);
     if (ModelState.IsValid)
     {
         ContactPersoon c = new ContactPersoon()
         {
             ContactEmail = model.ContactEmail.Trim(),
             ContactTelNr = model.ContactTelNr,
             Functie = model.Functie.Trim(),
             GsmNummer = model.GsmNummer,
             Naam = model.Naam.Trim(),
             Voornaam = model.Voornaam.Trim()
         };
         bedrijf.AddContactPersoon(c);
         opdracht.Ondertekenaar = c;
         bedrijfRepository.SaveChanges();
         if (Request.IsAjaxRequest())
         {
             return PartialView("_ContactDetail", c);
         }
     }
     if (Request.IsAjaxRequest())
     {
         return PartialView("_ContactFormPartial", model);
     }
     return RedirectToAction("MakeContactFromForm", model);
 }
 public CreateOpdrachtViewModel(IEnumerable<Specialisatie> specialisaties,
     IEnumerable<ContactPersoon> contactPersonen,
     OpdrachtViewModel opdrachtViewModel, String berdrijfId, IGemeenteRepository gemeenteRepository)
 {
     ContactModelOndertekenaar = new ContactPersoon().ConvertToContactCreateModel(BedrijfId);
     ContactModelStageMentor = new ContactPersoon().ConvertToContactCreateModel(BedrijfId);
     SpecialisatieList = new SelectList(specialisaties);
     List<String> lijstSemester = new List<string>(new String[] {"Semester 1", "Semester 2", "Semester 1 en 2"});
     SemesterLijst = new SelectList(lijstSemester);
     SchooljaarSelectList = new SelectList(Bewerkingen.MakeSchooljaarSelectList());
     OpdrachtViewModel = opdrachtViewModel;
     OndertekenaarSelectList = new SelectList(contactPersonen);
     StageMentorSelectList = new SelectList(contactPersonen);
     AantalStudenten = new SelectList(new int[] {1, 2, 3, 4, 5});
     BedrijfId = berdrijfId;
     IEnumerable<Gemeente> gem = gemeenteRepository.GetAlleGemeentes();
     Gemeenten = new SelectList(gem);
     //FillOpdrachtView();
 }