public AdminBootcampSessionListViewModel Get() { AdminBootcampSessionListViewModel model = new AdminBootcampSessionListViewModel(); //get all bootcamp sessions and convert their format for view model foreach (BootcampSession session in _bootcampSessionRepo.GetAllBootcampSessions()) { BootcampSessionAng item = new BootcampSessionAng { BootcampSessionId = session.BootcampSessionID, BootcampName = _bootcampRepo.GetBootcampByID(session.BootcampID.Value).Name }; Location locationById = _locationRepo.GetLocationById(session.LocationID.Value); item.Location = locationById.City + ", " + locationById.Country; item.Technology = _techRepo.GetTechnologyById(session.TechnologyID.Value).Name; item.StartDate = session.StartDate.ToString("d"); item.EndDate = session.EndDate.ToString("d"); //add converted bootcamp session to model model.Sessions.Add(item); } //get a list of all bootcamps (in converted format) for drop down list foreach (Bootcamp bootcamp in _bootcampRepo.GetAllBootcamps()) { BootcampAng ang2 = new BootcampAng { BootcampID = bootcamp.BootcampID, Name = bootcamp.Name }; model.Bootcamps.Add(ang2); } return(model); }
public AdminBootcampListViewModel Get() { AdminBootcampListViewModel model = new AdminBootcampListViewModel(); //loop through each bootcamp and convert format for view model foreach (Bootcamp bootcamp in _bootcampRepo.GetAllBootcamps()) { BootcampListAng item = new BootcampListAng { BootcampID = bootcamp.BootcampID, Name = bootcamp.Name, LengthInWeeks = bootcamp.LengthInWeeks, PriceString = Helper.GetPriceString(bootcamp.Price, _locationRepo.GetLocationById(bootcamp.LocationID).Country) }; Location locationById = _locationRepo.GetLocationById(bootcamp.LocationID); item.Location = locationById.City + ", " + locationById.Country; item.Technology = _techRepo.GetTechnologyById(bootcamp.PrimaryTechnologyID).Name; //add each converted bootcamp object to the view model model.Bootcamps.Add(item); } //get each location and convert format for view model (drop down list) foreach (Location location2 in _locationRepo.GetAllLocations()) { LocationAng ang2 = new LocationAng { LocationId = location2.LocationID, Name = location2.City + ", " + location2.Country }; model.Locations.Add(ang2); } //get each technology and convert format for view model (drop down list) foreach (Technology technology in _techRepo.GetAllTechnologies()) { TechnologyAng ang3 = new TechnologyAng { TechnologyId = technology.TechnologyID, Name = technology.Name }; model.Technologies.Add(ang3); } return(model); }
public AdminBootcampTechnologyViewModel Get() { AdminBootcampTechnologyViewModel model = new AdminBootcampTechnologyViewModel(); //get all bootcamp technologies, and convert each to correct format //before adding each to the angular view model foreach (BootcampTechnology technology in _bootcampTechRepo.GetAllBootcampTechnologies()) { BootcampTechnologyAng item = new BootcampTechnologyAng { BootcampTechnologyId = technology.BootcampTechnologyID, BootcampName = _bootcampRepo.GetBootcampByID(technology.BootcampID.Value).Name, Technology = _techRepo.GetTechnologyById(technology.TechnologyID.Value).Name }; model.BootcampTechnologies.Add(item); } //get all bootcamps (name and id) and add to the model foreach (Bootcamp bootcamp in _bootcampRepo.GetAllBootcamps()) { BootcampAng ang2 = new BootcampAng { BootcampID = bootcamp.BootcampID, Name = bootcamp.Name }; model.Bootcamps.Add(ang2); } //get all technologies (name and id) and add to the view model foreach (Technology technology2 in _techRepo.GetAllTechnologies()) { TechnologyAng ang3 = new TechnologyAng { TechnologyId = technology2.TechnologyID, Name = technology2.Name }; model.Technologies.Add(ang3); } return(model); }
public void GetTechnologyByIdTest() { Assert.AreEqual(repo.GetTechnologyById(1).Name, "Ruby on Rails"); }
public ActionResult Index(string id) { //parse URL to get bootcamp ID string bootcampName = id.Replace("-", " "); int? bootcampID = _bootcampRepo.GetBootcampIDByName(bootcampName); //if bootcamp does not exist, redirect to the home page if (id == null) { return(RedirectToAction("Index", "Home")); } //get bootcampID and locationID var bootcampByID = _bootcampRepo.GetBootcampByID((int)bootcampID); var locationById = _locationRepo.GetLocationById(bootcampByID.LocationID); //insert basic bootcamp info into view model var model = new BootcampViewModel { BootcampID = (int)bootcampID, Location = locationById.City + ", " + locationById.Country, Name = bootcampByID.Name, LogoLink = bootcampByID.LogoLink, Url = bootcampByID.Website, Price = Helper.GetPriceString(bootcampByID.Price, _locationRepo.GetLocationById(bootcampByID.LocationID).Country) }; //get all links info for bootcamp and add to view model foreach (var link in _linkRepo.GetAllLinksByBootcampId((int)bootcampID)) { Site siteById = _siteRepo.GetSiteById((int)link.SiteID); string linkText = link.LinkText; if (linkText.Length > 60) { linkText = linkText.Substring(0, 60) + "..."; } FutureCodr.UI.Models.Bootcamp.Link item = new FutureCodr.UI.Models.Bootcamp.Link { URL = link.URL, SiteName = siteById.SiteName, SiteLogoURL = siteById.SiteLogoURL, Title = linkText, Date = link.Date }; model.Links.Add(item); } //order links by most recent model.Links = (from m in model.Links orderby m.Date descending select m).ToList(); //add bootcamp locations to view model foreach (var location2 in _bootcampLocationsRepo.GetAllBootcampLocationsByBootcampId((int)bootcampID)) { FutureCodr.Models.Location location3 = _locationRepo.GetLocationById(location2.LocationID); FutureCodr.UI.Models.Bootcamp.Location location4 = new FutureCodr.UI.Models.Bootcamp.Location { City = location3.City, Name = location3.City + ", " + location3.Country, Id = location2.LocationID }; model.Locations.Add(location4); } //add bootcamp sessions to view model if they start in the future foreach (var session in _sessionRepo.GetBootcampSessionsByBootcampId((int)bootcampID)) { if (session.StartDate > DateTime.Now) { Session session2 = new Session { Technology = _technologyRepo.GetTechnologyById(session.TechnologyID.Value).Name, Location = _locationRepo.GetLocationById((int)session.LocationID).City + ", " + _locationRepo.GetLocationById(session.LocationID.Value).Country, StartDate = session.StartDate, EndDate = session.EndDate }; model.Sessions.Add(session2); } } //order sessions by soonest to start model.Sessions = (from m in model.Sessions orderby m.StartDate select m).ToList(); //add bootcamp technologies to the view model foreach (var technology in _bootcampTechnologyRepo.GetAllBootcampTechnologiesByBootcampId((int)bootcampID)) { FutureCodr.UI.Models.Bootcamp.Technology technology2 = new FutureCodr.UI.Models.Bootcamp.Technology { Name = _technologyRepo.GetTechnologyById(technology.TechnologyID.Value).Name, Id = technology.TechnologyID.Value }; model.Technologies.Add(technology2); } //return the strongly typed view with the view model passed in return(View(model)); }