public IActionResult EditPetProfile(int id) { PetProfile petProfile = _repo.PetProfile.GetPetByIdIncludeAll(id); var userId = this.User.FindFirstValue(ClaimTypes.NameIdentifier); var petOwnerId = _repo.PetOwner.GetPetOwnerById(userId).Id; ViewModelPetProfile petProfileUpdating = new ViewModelPetProfile(); petProfileUpdating.PetOwnerId = petOwnerId; petProfileUpdating.PetProfileId = id; petProfileUpdating.Name = petProfile.Name; petProfileUpdating.Age = petProfile.Age; ViewData["PetType"] = new SelectList(_repo.PetType.GetAllPetTypes(), "Id", "TypeName"); Dictionary <int, string> genderDictionary = CreateNullableBoolDictionary("N/A", "Male", "Female"); ViewData["GenderSelection"] = new SelectList(genderDictionary, "Key", "Value"); Dictionary <int, string> adoption = CreateNullableBoolDictionary("N/A", "Adopted", "Avaliable"); ViewData["AdoptionStatus"] = new SelectList(adoption, "Key", "Value"); //petProfile.PetOwner = new PetOwner(); return(View(petProfileUpdating)); }
public IActionResult CreatePetProfile(ViewModelPetProfile viewModel) { try { var userId = this.User.FindFirstValue(ClaimTypes.NameIdentifier); var petOwnerId = _repo.PetOwner.GetPetOwnerById(userId).Id; string uniqueFileName = UploadedPicture(viewModel); PetProfile petProfile = new PetProfile { Name = viewModel.Name, Age = viewModel.Age, IsMale = viewModel.IsMale, IsAdopted = viewModel.IsAdopted, PetOwnerId = petOwnerId, PetTypeId = viewModel.PetTypeId, ProfilePicture = uniqueFileName, }; _repo.PetProfile.CreatePetProfile(petOwnerId, petProfile.PetTypeId, petProfile.Name, petProfile.Age, petProfile.IsMale, petProfile.IsAdopted, uniqueFileName); _repo.Save(); return(RedirectToAction(nameof(DisplayPetProfiles))); } catch { ViewData["PetType"] = new SelectList(_repo.PetType.GetAllPetTypes(), "Id", "TypeName"); Dictionary <int, string> genderDictionary = CreateNullableBoolDictionary("N/A", "Male", "Female"); ViewData["GenderSelection"] = new SelectList(genderDictionary, "Key", "Value"); Dictionary <int, string> adoption = CreateNullableBoolDictionary("N/A", "Adopted", "Avaliable"); ViewData["AdoptionStatus"] = new SelectList(adoption, "Key", "Value"); return(View(viewModel)); } }
public IActionResult DisplayNotMyPetProfileDetails(int id) { //PetProfile pet = _repo.PetProfile.GetPetAndIncludeAll().Where(p => p.Id == id).FirstOrDefault(); PetProfile petProfile = _repo.PetProfile.GetPetByIdIncludeAll(id); ViewModelPetProfile petProfileViewing = new ViewModelPetProfile(); petProfileViewing.PetProfileId = id; petProfileViewing.Name = petProfile.Name; petProfileViewing.Age = petProfile.Age; petProfileViewing.PetOwnerId = petProfile.PetOwnerId; ViewData["PetType"] = new SelectList(_repo.PetType.GetAllPetTypes(), "Id", "TypeName"); Dictionary <int, string> genderDictionary = CreateNullableBoolDictionary("N/A", "Male", "Female"); ViewData["GenderSelection"] = new SelectList(genderDictionary, "Key", "Value"); Dictionary <int, string> adoption = CreateNullableBoolDictionary("N/A", "Adopted", "Avaliable"); ViewData["AdoptionStatus"] = new SelectList(adoption, "Key", "Value"); return(View(petProfileViewing)); }
public IActionResult DeletePetProfile(ViewModelPetProfile viewModel) { //PetProfile petProfileToDelete = _repo.PetProfile.GetPetAndIncludeAll().FirstOrDefault(s => s.Id == petProfile.Id); //_repo.PetProfile.Delete(_repo.PetProfile.GetPetById(petProfile.Id)); //_repo.Save(); //return RedirectToAction(nameof(DisplayPetProfiles)); PetProfile petProfileDeleting = _repo.PetProfile.GetPetAndIncludeAll().FirstOrDefault(s => s.Id == viewModel.PetProfileId); //petProfileDeleting.Id = viewModel.PetProfileId; _repo.PetProfile.Delete(petProfileDeleting); _repo.Save(); return(RedirectToAction(nameof(DisplayPetProfiles))); }
private string UploadedPicture(ViewModelPetProfile model) { string uniqueFileName = null; if (model.ProfileImage != null) { string uploadsFolder = Path.Combine(webHostEnvironment.WebRootPath, "images"); uniqueFileName = Guid.NewGuid().ToString() + "_" + model.ProfileImage.FileName; string filePath = Path.Combine(uploadsFolder, uniqueFileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { model.ProfileImage.CopyTo(fileStream); } } return(uniqueFileName); }
public IActionResult CreatePetProfile() { ViewModelPetProfile petProfile = new ViewModelPetProfile(); _repo.PetType.GetAllPetTypes(); ViewData["PetType"] = new SelectList(_repo.PetType.GetAllPetTypes(), "Id", "TypeName"); Dictionary <int, string> genderDictionary = CreateNullableBoolDictionary("N/A", "Male", "Female"); ViewData["GenderSelection"] = new SelectList(genderDictionary, "Key", "Value"); Dictionary <int, string> adoption = CreateNullableBoolDictionary("N/A", "Adopted", "Avaliable"); ViewData["AdoptionStatus"] = new SelectList(adoption, "Key", "Value"); return(View(petProfile)); }
public IActionResult EditPetProfile(int id, ViewModelPetProfile viewModel) { string uniqueFileName = UploadedPicture(viewModel); PetProfile petProfile = _repo.PetProfile.FindByCondition(p => p.Id == id).FirstOrDefault(); petProfile.Name = viewModel.Name; petProfile.Age = viewModel.Age; petProfile.IsMale = viewModel.IsMale; petProfile.IsAdopted = viewModel.IsAdopted; petProfile.PetOwnerId = viewModel.PetOwnerId; petProfile.PetTypeId = viewModel.PetTypeId; petProfile.ProfilePicture = uniqueFileName; _repo.PetProfile.Update(petProfile); _repo.Save(); return(RedirectToAction(nameof(DisplayPetProfiles))); }
public IActionResult DeletePetProfile(int id) { PetProfile petProfile = _repo.PetProfile.GetPetByIdIncludeAll(id); ViewModelPetProfile petProfileDeleting = new ViewModelPetProfile(); petProfileDeleting.PetProfileId = id; petProfileDeleting.Name = petProfile.Name; petProfileDeleting.Age = petProfile.Age; ViewData["PetType"] = new SelectList(_repo.PetType.GetAllPetTypes(), "Id", "TypeName"); Dictionary <int, string> genderDictionary = CreateNullableBoolDictionary("N/A", "Male", "Female"); ViewData["GenderSelection"] = new SelectList(genderDictionary, "Key", "Value"); Dictionary <int, string> adoption = CreateNullableBoolDictionary("N/A", "Adopted", "Avaliable"); ViewData["AdoptionStatus"] = new SelectList(adoption, "Key", "Value"); return(View(petProfileDeleting)); }
public async Task <IActionResult> SearchPetProfiles() { var userId = this.User.FindFirstValue(ClaimTypes.NameIdentifier); var petOwnerId = _repo.PetOwner.GetPetOwnerById(userId).Id; ViewModelPetProfile viewModel = new ViewModelPetProfile(); var pets = await _repo.PetProfile.GetPetIncludeAll(); IEnumerable <PetProfile> petProfiles = pets.ToList(); //IQueryable<PetProfile> notMyPets = new PetProfile[] { }.AsQueryable(); //foreach (var pet in petProfiles) //{ // if(pet.PetOwnerId != petOwnerId) // { // var notMyPet = _repo.PetProfile.GetPetById(pet.Id); // notMyPets.Concat(notMyPet); // } //} //viewModel.PetProfiles = petProfiles.ToList(); viewModel.PetProfiles = petProfiles.ToList(); viewModel.PetProfiles.Insert(0, (new PetProfile())); viewModel.PetTypes = _repo.PetType.GetAllPetTypes().ToList(); viewModel.PetTypes.Insert(0, new PetType()); viewModel.GenderOptions = new Dictionary <int, string>() { { 0, "" }, { 1, "N/A" }, { 2, "Male" }, { 3, "Female" } }; viewModel.Adoption = new Dictionary <int, string>() { { 0, "" }, { 1, "N/A" }, { 2, "Adopted" }, { 3, "Avaliable" } }; return(View(viewModel)); }
public async Task <IActionResult> FilteredThroughPetProfiles(ViewModelPetProfile searchResults) { ViewModelPetProfile viewModel = new ViewModelPetProfile(); var pets = await _repo.PetProfile.GetPetIncludeAll(); IEnumerable <PetProfile> petProfiles = pets.ToList(); if (searchResults.PetTypeId != 0) { petProfiles = petProfiles.Where(bt => bt.PetTypeId == searchResults.PetTypeId); } if (searchResults.GenderSelection != 0) { switch (searchResults.GenderSelection) { case 1: petProfiles = petProfiles.Where(p => p.IsMale == null); break; case 2: petProfiles = petProfiles.Where(p => p.IsMale == true); break; case 3: petProfiles = petProfiles.Where(p => p.IsMale == false); break; default: break; } } if (searchResults.AdoptionStatus != 0) { switch (searchResults.AdoptionStatus) { case 1: petProfiles = petProfiles.Where(p => p.IsAdopted == null); break; case 2: petProfiles = petProfiles.Where(p => p.IsAdopted == true); break; case 3: petProfiles = petProfiles.Where(p => p.IsAdopted == false); break; default: break; } } viewModel.PetProfiles = petProfiles.ToList(); viewModel.PetProfiles.Insert(0, (new PetProfile())); viewModel.PetTypes = _repo.PetType.GetAllPetTypes().ToList(); viewModel.PetTypes.Insert(0, new PetType()); viewModel.GenderOptions = new Dictionary <int, string>() { { 0, "" }, { 1, "N/A" }, { 2, "Male" }, { 3, "Female" } }; viewModel.Adoption = new Dictionary <int, string>() { { 0, "" }, { 1, "N/A" }, { 2, "Adopted" }, { 3, "Avaliable" } }; return(View("SearchPetProfiles", viewModel)); }