public IActionResult Create(VacatureViewModel vm)
        {
            var temp = new Vacature
            {
                Functie      = vm.Functie,
                Beschrijving = vm.Beschrijving,
            };

            temp.organisatie = (Organisatie)_userManager.GetUserAsync(HttpContext.User).Result;

            var templist = new List <Competentie>();

            foreach (var item in vm.CompetentieGrondhoudingAanTeVullenIds)
            {
                if (!IsSchrapOptie(item.AanvulOptieGeselecteerd, item.Id))
                {
                    var comp = _competentieRepository.GetBy(item.Id);
                    temp.AddCompetentie(comp, comp.Aanvulling.Opties.FirstOrDefault(o => o.Id.Equals(item.AanvulOptieGeselecteerd)));
                }
            }
            foreach (var item in vm.CompetentieKennisAanTeVullenIds)
            {
                if (!IsSchrapOptie(item.AanvulOptieGeselecteerd, item.Id))
                {
                    var comp = _competentieRepository.GetBy(item.Id);
                    temp.AddCompetentie(comp, comp.Aanvulling.Opties.FirstOrDefault(o => o.Id.Equals(item.AanvulOptieGeselecteerd)));
                }
            }
            foreach (var item in vm.CompetentieVaardighedenAanTeVullenIds)
            {
                if (!IsSchrapOptie(item.AanvulOptieGeselecteerd, item.Id))
                {
                    var comp = _competentieRepository.GetBy(item.Id);
                    temp.AddCompetentie(comp, comp.Aanvulling.Opties.FirstOrDefault(o => o.Id.Equals(item.AanvulOptieGeselecteerd)));
                }
            }

            foreach (var item in vm.CompetentieGrondhoudingBasisIds)
            {
                templist.Add(_competentieRepository.GetBy(item.Id));
            }
            if (vm.CompetentieKennisBasisIds != null)
            {
                foreach (var item in vm.CompetentieKennisBasisIds)
                {
                    templist.Add(_competentieRepository.GetBy(item.Id));
                }
            }

            foreach (var item in vm.CompetentieVaardighedenBasisIds)
            {
                templist.Add(_competentieRepository.GetBy(item.Id));
            }

            temp.AddCompetenties(templist);

            _vacatureRepository.Add(temp);

            return(RedirectToAction("VacaturesList"));
        }
        public IActionResult Details(String id)
        {
            var vac  = _vacatureRepository.GetBy(id);
            var temp = new VacatureViewModel(vac);

            return(View(temp));
        }
        public IActionResult SelecteerCompetenties(VacatureViewModel vm)
        {
            foreach (var item in _competentieRepository.GetAll())
            {
                vm.CompetentieIds.Add(new CompetentieCheckboxViewModel
                {
                    Naam            = item.Naam,
                    Id              = item.Id,
                    Verklaring      = item.Verklaring,
                    Aanvulling      = item.Aanvulling?.Beschrijving,
                    AanvulOpties    = item.Aanvulling?.Opties,
                    HeeftAanvulling = (item.Aanvulling != null),
                    Type            = item.Type
                });
            }
            vm.CompetentieGrondhoudingAanTeVullenIds = vm.CompetentieIds.Where(c => c.Type.Equals(CompetentieType.GRONDHOUDING) && c.HeeftAanvulling).ToList();
            vm.CompetentieKennisAanTeVullenIds       = vm.CompetentieIds.Where(c => c.Type.Equals(CompetentieType.KENNIS) && c.HeeftAanvulling).ToList();
            vm.CompetentieVaardighedenAanTeVullenIds = vm.CompetentieIds.Where(c => c.Type.Equals(CompetentieType.VAARDIGHEDEN) && c.HeeftAanvulling).ToList();

            vm.CompetentieGrondhoudingBasisIds = vm.CompetentieIds.Where(c => c.Type.Equals(CompetentieType.GRONDHOUDING) && !c.HeeftAanvulling).ToList();
            vm.CompetentieKennisBasisIds       = vm.CompetentieIds.Where(c => c.Type.Equals(CompetentieType.KENNIS) && !c.HeeftAanvulling).ToList();
            vm.CompetentieVaardighedenBasisIds = vm.CompetentieIds.Where(c => c.Type.Equals(CompetentieType.VAARDIGHEDEN) && !c.HeeftAanvulling).ToList();


            return(View(vm));
        }
        public IActionResult Create()
        {
            var temp = new VacatureViewModel();

            var vac = new Vacature();

            vac.AddCompetenties(_competentieRepository.GetBasisCompetenties().ToList());
            temp.VacatureCompetenties = vac.CompetentiesLijst.Select(c => c.CompetentieId).ToList();

            return(View(temp));
        }