public void RemoveInstructor(int memberId) { string roleInstructor = UserRoles.Instructor.ToString(); InstructorData instructor = _repository.GetQuery <InstructorData>(d => d.MemberId == memberId) .Include(d => d.Member) .FirstOrDefault(); if (instructor == null) { throw new ApplicationException("No instructor record found associated with MemberID=" + memberId.ToString()); } Member member = _repository.GetQuery <Member>(m => m.Id == memberId) .Include(m => m.Roles) .FirstOrDefault(); // delete instructor data _repository.Delete <InstructorData>(i => i.Id == instructor.Id); // remove instructor role Role role = member.Roles.FirstOrDefault(r => r.Name == roleInstructor); if (role != null) { member.Roles.Remove(role); } _repository.UnitOfWork.SaveChanges(); }
public ActionResult UpdateInstructor(int?id) { if (User.IsInRole("Instructor")) { ProfileCommon profile = HttpContext.Profile as ProfileCommon; int memberId = profile.MemberId; InstructorData instructor = _dataService.GetInstructorInfoByMemberId(memberId); UpdateInstructorViewModel viewModel = null; if (instructor != null) { viewModel = new UpdateInstructorViewModel(instructor); if (instructor.AuthorizedAircraft != null && instructor.AuthorizedAircraft.Count > 0) { viewModel.AuthorizedAircraft = instructor.AuthorizedAircraft.Select(a => a.AircraftId).ToList(); } } else { viewModel = new UpdateInstructorViewModel(); } viewModel.MemberId = memberId; viewModel.AircraftList = GetAircraftList(); return(View(ViewNames.UpdateInstructor, viewModel)); } else if (User.IsInRole("Admin")) { if (id == null) { throw new HttpException("Must have member ID"); } InstructorData instructor = _dataService.GetInstructorInfoByMemberId((int)id); UpdateInstructorViewModel viewModel = null; if (instructor != null) { viewModel = new UpdateInstructorViewModel(instructor); if (instructor.AuthorizedAircraft != null && instructor.AuthorizedAircraft.Count > 0) { viewModel.AuthorizedAircraft = instructor.AuthorizedAircraft.Select(a => a.AircraftId).ToList(); } } else { viewModel = new UpdateInstructorViewModel(); } viewModel.MemberId = (int)id; viewModel.AircraftList = GetAircraftList(); return(View(ViewNames.UpdateInstructor, viewModel)); } else { throw new HttpException(403, "You are not authorized to perform this operation."); } }
public void getInstructorsDataTest() { var service = new Service1(); InstructorData instructors = service.getInstructorsData(); Assert.IsTrue(instructors.InstructorsTable.Rows.Count > 0); }
public InstructorData GetInstructorInfoByMemberId(int memberId) { InstructorData info = _repository.GetQuery <InstructorData>(o => o.MemberId == memberId) .Include(o => o.Member) .Include(o => o.AuthorizedAircraft) .Include("AuthorizedAircraft.Aircraft") .FirstOrDefault(); return(info); }
protected override void Seed(ContosoUniversityContext context) { base.Seed(context); StudentsData.Seed(context); InstructorData.Seed(context); DepartmentData.Seed(context); CourseData.Seed(context); OfficeAssignmentData.Seed(context); EnrollmentData.Seed(context); }
public void SaveInstructor(InstructorData instructor) { if (instructor.Id > 0) { _repository.Attach(instructor); } else { _repository.Add(instructor); } _repository.UnitOfWork.SaveChanges(); }
private void ValidateUserData(InstructorData request) { _validation.NotValidId(request.Id, $"{nameof(request.Id)}"); _validation.NotValidField(request.FullName, 50, $"{nameof(request.FullName)}"); _validation.NotValidEmail(request.Email); _validation.NotValidField(request.Bio, 256, $"{nameof(request.Bio)}"); _validation.NotValidField(request.Language, 10, $"{nameof(request.Language)}"); }
public UpdateInstructorViewModel(InstructorData entity) { Id = entity.Id; MemberId = entity.MemberId; CertificateNumber = entity.CertificateNumber; Ratings = entity.Ratings; InstructOnWeekends = entity.InstructOnWeekends; InstructOnWeekdays = entity.InstructOnWeekdays; InstructOnWeekdayNights = entity.InstructOnWeekdayNights; AvailableForCheckoutsAnnuals = entity.AvailableForCheckoutsAnnuals; DesignatedForStageChecks = entity.DesignatedForStageChecks; Comments = entity.Comments; AuthorizedAircraft = new List <int>(); }
public async Task <Instructor> GetInstructor(int id) { var httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", Preferences.Get("accesstoken", "")); var response = await httpClient.GetStringAsync(baseUrl + "instructors/" + id); JObject jsonResponse = JObject.Parse(response); JToken result = jsonResponse["data"]; var instructorAttributes = result["attributes"]; InstructorData instructorData = result.ToObject <InstructorData>(); instructorData.instructorAttributes = instructorAttributes.ToObject <InstructorAttributes>(); Instructor instructor = CreateInstructorFromData(instructorData); return(instructor); }
public ActionResult InstructorDetails(int memberId) { InstructorData instructor = _dataService.GetInstructorInfoByMemberId(memberId); Member member = _dataService.GetMember(memberId); InstructorViewModel instructorVM = new InstructorViewModel() { MemberId = instructor.MemberId, AltPhone = member.Phone, AvailableForCheckoutsAnnuals = instructor.AvailableForCheckoutsAnnuals, InstructOnWeekdayNights = instructor.InstructOnWeekdayNights, InstructOnWeekdays = instructor.InstructOnWeekdays, InstructOnWeekends = instructor.InstructOnWeekends, CeritifcateNumber = instructor.CertificateNumber, Comments = instructor.Comments, DesignatedForStageChecks = instructor.DesignatedForStageChecks, Email = member.Login.Email, FullName = member.FullName, Id = instructor.Id, Phone = member.Phone, Ratings = instructor.Ratings }; if (instructor.AuthorizedAircraft != null) { instructorVM.AuthorizedAircraft = new List <AircraftListItemViewModel>(); foreach (var ac in instructor.AuthorizedAircraft) { AircraftListItemViewModel avm = new AircraftListItemViewModel { Id = ac.AircraftId, RegistrationNumber = ac.Aircraft.RegistrationNumber }; instructorVM.AuthorizedAircraft.Add(avm); } } return(View(ViewNames.InstructorDetails, instructorVM)); }
public async Task <List <Instructor> > GetInstructors() { var httpClient = new HttpClient(); Console.WriteLine("Access token: " + Preferences.Get("accesstoken", "")); httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", Preferences.Get("accesstoken", "")); var response = await httpClient.GetStringAsync(baseUrl + "instructors"); JObject jsonResponse = JObject.Parse(response); IList <JToken> results = jsonResponse["data"].Children().ToList(); List <Instructor> instructorz = new List <Instructor>(); foreach (JToken result in results) { var instructorAttributes = result["attributes"]; InstructorData instructorData = result.ToObject <InstructorData>(); instructorData.instructorAttributes = instructorAttributes.ToObject <InstructorAttributes>(); instructorz.Add(CreateInstructorFromData(instructorData)); } return(instructorz); //return true; }
private Instructor CreateInstructorFromData(InstructorData instructorData) { Instructor instructor = new Instructor { Id = Convert.ToInt32(instructorData.Id), Name = instructorData.instructorAttributes.Name, Language = instructorData.instructorAttributes.Language, Nationality = instructorData.instructorAttributes.Nationality, Gender = instructorData.instructorAttributes.Gender, Phone = instructorData.instructorAttributes.Phone, Email = instructorData.instructorAttributes.Email, Education = instructorData.instructorAttributes.Education, OneLineTitle = instructorData.instructorAttributes.OneLineTitle, Description = instructorData.instructorAttributes.Description, Experience = instructorData.instructorAttributes.Experience, HourlyRate = instructorData.instructorAttributes.HourlyRate, CourseDomain = instructorData.instructorAttributes.CourseDomain, City = instructorData.instructorAttributes.City, ImagePath = instructorData.instructorAttributes.ImageUrl.Replace("http://localhost:3000/", rootUrl) }; return(instructor); }
public void CreateLoginsAndMembers() { Role roleAdmin = _dbContext.Roles.First(r => r.Id == (int)UserRoles.Admin); Role rolePilot = _dbContext.Roles.FirstOrDefault(r => r.Id == (int)UserRoles.Pilot); Role roleInstructor = _dbContext.Roles.FirstOrDefault(r => r.Id == (int)UserRoles.Instructor); Role roleOwner = _dbContext.Roles.First(r => r.Id == (int)UserRoles.AircraftOwner); string salt = SimpleHash.GetSalt(32); string hash = SimpleHash.MD5("password1", salt); Login loginAdmin = new Login() { Username = "******", Password = SimpleHash.MD5("password1", salt), PasswordSalt = salt, MemberPIN = "1110", Email = "*****@*****.**" }; try { _dbContext.Logins.Add(loginAdmin); _dbContext.SaveChanges(); } catch (DbEntityValidationException ex) { foreach (var e in ex.EntityValidationErrors) { Debug.WriteLine(e.Entry); } throw; } Member memberAdmin = new Member() { Status = "Active", AddressLine_1 = "1234 Main St", City = "Plano", Zip = "75035", FirstName = "Frank", LastName = "Zappa", LastMedical = DateTime.Now, //PrimaryEmail = "*****@*****.**", LoginId = loginAdmin.Id, Roles = new List <Role>() { roleAdmin } }; _dbContext.Members.Add(memberAdmin); _dbContext.SaveChanges(); Login loginOwner1 = new Login() { Username = "******", Email = "*****@*****.**", Password = SimpleHash.MD5("test", salt), PasswordSalt = salt, MemberPIN = "1211" }; _dbContext.Logins.Add(loginOwner1); _dbContext.SaveChanges(); Member memberOwner1 = new Member() { Status = "Active", AddressLine_1 = "1234 Main St", City = "Beverly Hills", Zip = "23031", FirstName = "John", LastName = "Travolta", LastMedical = DateTime.Now, //PrimaryEmail = "*****@*****.**", LoginId = loginOwner1.Id, Roles = new List <Role>() { roleOwner } }; _dbContext.Members.Add(memberOwner1); Login loginOwner2 = new Login() { Username = "******", Email = "*****@*****.**", Password = SimpleHash.MD5("test", salt), PasswordSalt = salt, MemberPIN = "1351" }; _dbContext.Logins.Add(loginOwner2); _dbContext.SaveChanges(); Member memberOwner2 = new Member() { Status = "Active", AddressLine_1 = "1234 Poplar Ave", City = "Santa Monica", Zip = "450123", FirstName = "Harrison", LastName = "Ford", LastMedical = DateTime.Now, //PrimaryEmail = "*****@*****.**", LoginId = loginOwner2.Id, Roles = new List <Role>() { roleOwner } }; _dbContext.Members.Add(memberOwner2); Login loginPilot1 = new Login() { Username = "******", Email = "*****@*****.**", Password = SimpleHash.MD5("test", salt), PasswordSalt = salt, MemberPIN = "1525" }; _dbContext.Logins.Add(loginPilot1); _dbContext.SaveChanges(); Member memberPilot1 = new Member() { Status = "Active", AddressLine_1 = "1010 Addison Circle", City = "Addison", Zip = "750444", FirstName = "Bob", LastName = "Hoover", LastMedical = DateTime.Now.AddDays(-100), //PrimaryEmail = "*****@*****.**", LoginId = loginPilot1.Id, Roles = new List <Role>() { rolePilot } }; _dbContext.Members.Add(memberPilot1); _dbContext.SaveChanges(); Login loginInstructor1 = new Login() { Username = "******", Email = "*****@*****.**", Password = SimpleHash.MD5("test", salt), PasswordSalt = salt, MemberPIN = "1010" }; _dbContext.Logins.Add(loginInstructor1); _dbContext.SaveChanges(); Member memberInstructor1 = new Member() { Status = "Active", AddressLine_1 = "1234 Somewhere Lane", City = "Beverly Hills", Zip = "90210", FirstName = "Billy", LastName = "Bathwater", LastMedical = DateTime.Now.AddDays(-100), //PrimaryEmail = "*****@*****.**", LoginId = loginInstructor1.Id, Roles = new List <Role>() { roleInstructor } }; _dbContext.Members.Add(memberInstructor1); _dbContext.SaveChanges(); InstructorData instructor1Data = new InstructorData() { AvailableForCheckoutsAnnuals = true, CertificateNumber = "1234567890", DesignatedForStageChecks = false, InstructOnWeekdayNights = false, InstructOnWeekdays = false, InstructOnWeekends = true, Member = memberInstructor1, Ratings = "CFI, CFII, MEI" }; _dbContext.InstructorData.Add(instructor1Data); _dbContext.SaveChanges(); Login loginGuest = new Login() { Username = "******", Email = "*****@*****.**", Password = SimpleHash.MD5("password1", salt), PasswordSalt = salt, ForumUserId = 179, MemberPIN = "1790" }; _dbContext.Logins.Add(loginGuest); _dbContext.SaveChanges(); Login jeremyLogin = new Login() { Username = "******", Password = SimpleHash.MD5("2g4uFOOl", "6YA+Ie1h2GLV1GU/K5EobHfSm4GPpXgAm+BbICN2RvM="), PasswordSalt = "6YA+Ie1h2GLV1GU/K5EobHfSm4GPpXgAm+BbICN2RvM=", ForumUserId = 1, Email = "*****@*****.**", MemberPIN = "1530" }; _dbContext.Logins.Add(jeremyLogin); _dbContext.SaveChanges(); Member jeremyMember = new Member() { Status = "ace1", AddressLine_1 = "1234 Venture Dr", City = "McKinney", Zip = "75070", FirstName = "Ace", LastName = "Ventura", LastMedical = DateTime.Now, LoginId = jeremyLogin.Id, Roles = new List <Role>() { roleAdmin } }; _dbContext.Members.Add(jeremyMember); _dbContext.SaveChanges(); }
public ActionResult UpdateInstructor(UpdateInstructorViewModel viewModel) { InstructorData instructor = _dataService.GetInstructorInfoByMemberId(viewModel.MemberId); if (instructor == null) { instructor = new InstructorData(); } ProfileCommon profile = ProfileCommon.GetProfile(); instructor.MemberId = viewModel.MemberId; instructor.AvailableForCheckoutsAnnuals = viewModel.AvailableForCheckoutsAnnuals; instructor.CertificateNumber = viewModel.CertificateNumber; instructor.Ratings = viewModel.Ratings; instructor.InstructOnWeekdayNights = viewModel.InstructOnWeekdayNights; instructor.InstructOnWeekdays = viewModel.InstructOnWeekdays; instructor.InstructOnWeekends = viewModel.InstructOnWeekends; instructor.Comments = viewModel.Comments; if (User.IsInRole(UserRoles.Admin.ToString())) { instructor.DesignatedForStageChecks = viewModel.DesignatedForStageChecks; if (viewModel.AuthorizedAircraft.Count > 0) { if (instructor.AuthorizedAircraft == null) { instructor.AuthorizedAircraft = new List <InstructorAuthorization>(); } foreach (var acId in viewModel.AuthorizedAircraft) { if (instructor.AuthorizedAircraft.Any(aa => aa.AircraftId == acId)) { continue; } InstructorAuthorization auth = new InstructorAuthorization() { AircraftId = acId, InstructorId = viewModel.Id, AuthorizedOn = DateTime.Now, AuthorizedById = profile.MemberId }; instructor.AuthorizedAircraft.Add(auth); } } } _dataService.SaveInstructor(instructor); //Member member = _dataService.GetMember(instructor.MemberId); //InstructorViewModel instructorVM = new InstructorViewModel() //{ // MemberId = instructor.MemberId, // AltPhone = member.Phone, // AvailableForCheckoutsAnnuals = instructor.AvailableForCheckoutsAnnuals, // InstructOnWeekdayNights = instructor.InstructOnWeekdayNights, // InstructOnWeekdays = instructor.InstructOnWeekdays, // InstructOnWeekends = instructor.InstructOnWeekends, // CeritifcateNumber = instructor.CertificateNumber, // Comments = instructor.Comments, // DesignatedForStageChecks = instructor.DesignatedForStageChecks, // Email = member.Login.Email, // FullName = member.FullName, // Id = instructor.Id, // Phone = member.Phone, // Ratings = instructor.Ratings //}; return(RedirectToAction("InstructorDetails", new { memberId = instructor.MemberId })); }
public void ImportInstructors() { IEnumerator <NtfcDataSet.InstructorIDRow> rows = _dataSet.InstructorID.GetEnumerator(); Role instructorRole = _dbContext.Roles.First(r => r.Name.Contains("Instructor")); while (rows.MoveNext()) { NtfcDataSet.InstructorIDRow row = rows.Current; if (row.Instructor_MID == "537" || row.Instructor_MID == "547" || row.Instructor_MID == "734" || row.Instructor_MID == "735" || row.Instructor_MID == "999") { continue; } InstructorData instructor = new InstructorData(); if (!row.IsannualsNull()) { instructor.AvailableForCheckoutsAnnuals = row.annuals.ToLower() == "yes" ? true : false; } else { instructor.AvailableForCheckoutsAnnuals = false; } instructor.CertificateNumber = String.Empty; if (!row.IsnotesNull()) { instructor.Comments = row.notes; } instructor.DesignatedForStageChecks = false; if (!row.IsdaysNull()) { instructor.InstructOnWeekdays = row.days.ToLower() == "yes" ? true : false; } else { instructor.InstructOnWeekdays = false; } if (!row.IseveningsNull()) { instructor.InstructOnWeekdayNights = row.evenings.ToLower() == "yes" ? true : false; } else { instructor.InstructOnWeekdayNights = false; } if (!row.IsweekendsNull()) { instructor.InstructOnWeekends = row.weekends.ToLower() == "yes" ? true : false; } else { instructor.InstructOnWeekends = false; } instructor.Ratings = String.Empty; Login login = _dbContext.Logins.Where(l => l.MemberPIN == row.Instructor_MID).Include(l => l.ClubMember).FirstOrDefault(); if (login == null) { continue; } Member member = login.ClubMember.First(); member.Roles.Add(instructorRole); instructor.Member = member; _dbContext.InstructorData.Add(instructor); _dbContext.SaveChanges(); } }