public async Task <ActionResult> Enroll(int id, bool authenticated) { var offer = await OfferFacade.GetOfferAsync(id); string name = ""; if (offer.CreatorRole == UserRole.Corporation) { var corporation = await UserFacade.GetCorporationAsync(offer.CreatorId); name = corporation.Name; } if (offer.CreatorRole == UserRole.Freelancer) { var freelancer = await UserFacade.GetFreelancerAsync(offer.CreatorId); name = freelancer.Name; } if (!authenticated) { var model = new OfferEnrollUnregisteredViewModel { Offer = offer, CreatorId = offer.CreatorId, Creator = name, OfferId = offer.Id }; return(View("OfferEnrollUnregisteredView", model)); } UserDTO loggedInUser = await UserFacade.GetUserAccordingToUsernameAsync(User.Identity.Name); var offerEnrollModel = new OfferEnrollRegisteredViewModel { Offer = offer, CreatorId = offer.CreatorId, Creator = name, OfferId = offer.Id, User = loggedInUser }; return(View("OfferEnrollRegisteredView", offerEnrollModel)); }
// GET: OffersController/Details/5 public async Task <ActionResult> Details(int id) { var model = await OfferFacade.GetOfferAsync(id); var newModel = await InitializeOfferDetailViewModel(model); return(View("OfferDetailView", newModel)); }
public async Task <ActionResult> EnrollUnregistered(FormCollection collection, int id) { try { UnregisteredUserDTO newUnregistered = new UnregisteredUserDTO(); foreach (string key in collection.AllKeys) { switch (key) { case "Name": newUnregistered.Name = collection[key]; break; case "Email": newUnregistered.Email = collection[key]; break; case "PhoneNumber": newUnregistered.PhoneNumber = collection[key]; break; case "Info": newUnregistered.Info = collection[key]; break; case "Location": newUnregistered.Location = collection[key]; break; } } await UserFacade.CreateUnregisteredAsync(newUnregistered); // Tuto cast kodu prosim zignorujme. DB nam pri Create vzdy vracala Id 0, hoci objekt ho ma v DB ako napr. 47. // Inak neviem ako ziskat toho uzivatela var unregisteredUsersLikeThis = await UserFacade.GetUnregisteredsAsync(new UnregisteredUserFilterDTO { SearchedName = newUnregistered.Name, SearchedLocation = newUnregistered.Location }); var offer = await OfferFacade.GetOfferAsync(id); offer.ApplierId = unregisteredUsersLikeThis.Items.Last().Id; offer.ApplierRole = UserRole.Unregistered; offer.State = State.InProgress; await OfferFacade.EditOfferAsync(offer); return(View("EnrollmentCompleteView")); } catch { return(View("~/Views/Home/GeneralExceptionView.cshtml")); } }
public async Task <ActionResult> FinishOffer(int id) { var offer = await OfferFacade.GetOfferAsync(id); offer.State = State.Finished; await OfferFacade.EditOfferAsync(offer); return(RedirectToAction("Details", new { id = id })); }
public async Task <ActionResult> EnrollRegistered(int id, int userId, string userRole) { var offer = await OfferFacade.GetOfferAsync(id); offer.ApplierId = userId; if (Enum.TryParse <UserRole>(userRole, out UserRole role)) { offer.ApplierRole = role; } offer.State = State.InProgress; await OfferFacade.EditOfferAsync(offer); return(View("EnrollmentCompleteView")); }
// GET: OffersController/Edit/5 public async Task <ActionResult> Edit(int id) { var model = await OfferFacade.GetOfferAsync(id); return(View("OfferEditView", model)); }