public ActionResult Edit(PilotAndRoleMergeViewModel pilotForUpdate)
        {
            //If The role is Default Role so the new role for this pilot will be null
            if (pilotForUpdate.PilotDetail.Role.RoleId == -1)
            {
                pilotForUpdate.PilotDetail.Role = null;
            }

            if (!ModelState.IsValid)
            {
                pilotForUpdate.Roles = new RoleList(_context).GetAllAvalableRoles();
                return(View(pilotForUpdate));
            }

            DetailedPilot Sp = new DetailedPilot(_context);
            PilotAndRoleMergeViewModel model = new PilotAndRoleMergeViewModel();

            try
            {
                model.PilotDetail = Sp.UpdatePilot(pilotForUpdate.PilotDetail);
            }
            catch (DbUpdateException exceptionCatched)
            {
                //If the SaveChange() as crashed !
            }
            //Actualize the Roles
            model.Roles       = new RoleList(_context).GetAllAvalableRoles();
            model.PilotDetail = new DetailedPilot(_context).GetSpecific(pilotForUpdate.PilotDetail.Id);

            //Send the model to the View
            return(View(model));
        }
        public ActionResult Creation()
        {
            var roles = new RoleList(_context).GetAllAvalableRoles();
            PilotAndRoleMergeViewModel model = new PilotAndRoleMergeViewModel()
            {
                Roles = roles
            };

            return(View(model));
        }
        public ActionResult Edit(int id)
        {
            RoleList      Rl = new RoleList(_context);
            DetailedPilot Dp = new DetailedPilot(_context);
            PilotAndRoleMergeViewModel myModel = new PilotAndRoleMergeViewModel
            {
                PilotDetail = Dp.GetSpecific(id),
                Roles       = Rl.GetAllAvalableRoles()
            };

            // ENVOYER LE VIEWMODEL A LA VUE
            return(View("Edit", myModel));
        }
        public ActionResult Creation(PilotAndRoleMergeViewModel NewPilot)
        {
            if (NewPilot.PilotDetail.Role.RoleId == -1)
            {
                NewPilot.PilotDetail.Role = null;
            }

            PilotDetailDto pilotDtoToCreate = NewPilot.PilotDetail;

            new DetailedPilot(_context).CreateNewPilot(pilotDtoToCreate);

            return(RedirectToAction("Index"));
        }