private void AddMovieButton_Click(object sender, RoutedEventArgs e) { try { Movie movieToAdd = new Movie(titleInput.Text, Int32.Parse(releaseYearInput.Text)); //string tryString = Convert.ToString(releaseYearInput.Text); } catch { MessageBox.Show("put in an int"); titleInput.Clear(); releaseYearInput.Clear(); animationStudioInput.Clear(); animationTypeInput.Clear(); return; } //string adjusted = Convert.ToString(releaseYearInput); if (animationTypeInput.Text != "" || animationStudioInput.Text != "") { AnimatedMovie animatedMovieToAdd = new AnimatedMovie(titleInput.Text, Int32.Parse(releaseYearInput.Text), animationStudioInput.Text, animationTypeInput.Text); MovieList.Add(animatedMovieToAdd); animationStudioInput.Clear(); animationTypeInput.Clear(); } else { Movie movieToAdd = new Movie(titleInput.Text, Int32.Parse(releaseYearInput.Text)); MovieList.Add(movieToAdd); } titleInput.Clear(); releaseYearInput.Clear(); }
public string Get() { MovieLista listaFilmes = new MovieLista(); GenList listaGeneros = new GenList().Listar(); List <Movie> filmes = new List <Movie>(); int paging = 1; int totalPages = 0; do { MovieList upCMovies = listaFilmes.Listar(paging); paging = upCMovies.page; totalPages = upCMovies.total_pages; foreach (var movie in upCMovies.results) { Movie filme = new Movie() { title = movie.title, release_date = movie.release_date, genre = new List <string>() }; foreach (int genreId in movie.genre_ids) { filme.genre.Add(listaGeneros.genres.Where(g => g.id == genreId).First().name); } filmes.Add(filme); } paging++; } while (paging != totalPages + 1); return(JsonConvert.SerializeObject(filmes)); }
/// <summary> /// Gets details for movie file from a given file name from the TMDb database. /// </summary> /// <param name="easy">An instance to a TMdbEasy.EasyClient class instance.</param> /// <param name="fileName">A file name to get movie information from the TMDb database.</param> /// <param name="posterSize">The size of the poster to get the URL for.</param> /// <returns>A TMDbDetail class instance containing the movie information from the TMDb database.</returns> public static async Task <TMDbDetail> GetMovieAsync(EasyClient easy, string fileName, string posterSize = "original") { var movieApi = easy.GetApi <IMovieApi>().Value; // create a IMovieApi.. // get the file name without extension and without path.. string fileNameNoExt = Path.GetFileNameWithoutExtension(fileName); // query the movie from the TMDb database.. MovieList list = await movieApi.SearchMoviesAsync(fileNameNoExt).ConfigureAwait(false); // if something was found.. if (list != null && list.Total_results > 0) { return(new TMDbDetail() // return the details of the movie.. { ID = list.Results[0].Id, // the first result is only taken into account.. Title = list.Results[0].Title, // set the title.. Description = list.Results[0].Overview, // set the overview.. FileName = Path.GetFileName(fileName), // set the file name.. // create an Uri for the poster path.. PosterOrStillURL = new Uri("https://image.tmdb.org/t/p/" + posterSize + list.Results[0].Poster_path) }); } else // nothing was found.. { return(new TMDbDetail() { Title = fileNameNoExt, // the title can be the file name without path or extension.. Description = fileNameNoExt, // the description can be the file name without path or extension.. FileName = Path.GetFileName(fileName) // set the file name.. }); } }
/// <summary> /// Methods /// </summary> private void PerformFiltering() { if (_filter == null) { _filter = string.Empty; } var lowerCaseFilter = Filter.ToLowerInvariant().Trim(); var result = _allMovieData.Where(d => d.Title.ToLowerInvariant().Contains(lowerCaseFilter)).ToList(); var toRemove = MovieList.Except(result).ToList(); foreach (var x in toRemove) { MovieList.Remove(x); } var resultCount = result.Count; for (int i = 0; i < resultCount; i++) { var resultItem = result[i]; if (i + 1 > MovieList.Count || !MovieList[i].Equals(resultItem)) { MovieList.Insert(i, resultItem); } } }
public ActionResult AddRecommendationToMovieList(MovieList movie) { var UserId = User.Identity.GetUserId(); if (!ModelState.IsValid) { return(View("../Shared/Error")); //go to error page } try { //1. ORM Entities AddMovie = new Entities(); //copy the same ORM for each of these if (AddMovie.MovieLists.Where(x => x.Id == UserId).Any(x => x.title != movie.title)) { //2. Action: Add to MovieList table AddMovie.MovieLists.Add(movie); AddMovie.SaveChanges(); //3. stay on search results view return(RedirectToAction("Recommendation", new { Id = User.Identity.GetUserId() })); } else { //validates but does not warn user return(RedirectToAction("Recommendation", new { Id = User.Identity.GetUserId() })); } } catch (Exception) { return(View("../Shared/Error")); } }
private async Task BindListview(MobileServiceClient client) { IMobileServiceTable <Character> CharacterTable = client.GetTable <Character>(); var characters = await CharacterTable.ToListAsync(); var movies = characters.SelectMany(x => from item in x.Appearances select new { Id = item.Id, MovieName = item.Title } ).Distinct().ToList(); List <MovieList> list = new List <MovieList>(); foreach (var m in movies) { var c = characters.Where(x => x.Appearances.Select(p => p.Id).Contains(m.Id)).ToList(); if (c != null) { var mg = new MovieList(); foreach (var item in c) { mg.Characters.Add(item); } mg.MovieName = m.MovieName; list.Add(mg); } } ListOfMovies = list; uiListviewMovies.ItemsSource = ListOfMovies; uiListviewMovies.IsGroupingEnabled = true; }
public async Task <ActionResult <MovieList> > RemoveListItem(int listId, int movieId) { MovieList list = await this._context.MovieLists .Where(m => m.Id == listId && m.additionalType.Equals(MovieList.WATCHLIST)) .Include("items") .FirstOrDefaultAsync(); if (list is null) { return(NotFound(new { message = "watch list was not found" })); } else if (!(list is null) && !(list.items.Any(i => i.Id == movieId))) { return(BadRequest(new { message = "Movie is not in the list" })); } list.items = list.items.Where(i => i.Id != movieId).ToList(); await this._context.SaveChangesAsync(); return(list); }
/// /// Worked & Tested: 02-Aug-2019 05:13 pm /// Set the Movie List for Testing. /// This will use the memory db rather than actual one because /// you don't want to mess up your real database. Can't even use /// the real database in the test method. /// public void ShowReturnAllMovie() { var movieList = MovieList.ToList(); var movieCount = movieList.Count; Assert.Equal(5, movieCount); }
public void getMovieListTest2() { MovieList movieList = new MovieList(); Movie movie = new Movie(); ArrayList expected = new ArrayList { new Movie("A Bug's Life", 1998, "animated"), new Movie("Brave", 2012, "animated"), new Movie("Cars", 2006, "animated"), new Movie("Cars 2", 2011, "animated"), new Movie("Cars 3", 2017, "animated"), new Movie("Coco", 2017, "animated"), new Movie("Finding Dory", 2016, "animated"), new Movie("Finding Nemo", 2003, "animated"), new Movie("Incredibles 2", 2018, "animated"), new Movie("Inside Out", 2015, "animated"), new Movie("Monsters University", 2013, "animated"), new Movie("Monsters, Inc.", 2001, "animated"), new Movie("Ratatouille", 2007, "animated"), new Movie("The Good Dinosaur", 2015, "animated"), new Movie("The Incredibles", 2004, "animated"), new Movie("Toy Story", 1995, "animated"), new Movie("Toy Story 2", 1999, "animated"), new Movie("Toy Story 3", 2010, "animated"), new Movie("Up", 2009, "animated"), new Movie("WALL-E", 2008, "animated") }; ArrayList actual = movieList.getMovieList("horror"); CollectionAssert.AreNotEqual(expected, actual, movie); }
/// <summary> /// get movies by filter /// </summary> /// <param name="filter">filter</param> /// <returns></returns> private MovieList QueryMovies(MovieFilter filter) { IEnumerable <Movie> movies = repository.Movies; if (!String.IsNullOrEmpty(filter.Keywords)) { movies = movies.Where(m => m.Title.ContainsIgnoreCase(filter.Keywords) || (m.HasDetail && m.Actors.ContainsIgnoreCase(filter.Keywords))); } movies = FilterByGenre(movies, filter.Genre); movies = FilterByCountry(movies, filter.Country); movies = FilterByYear(movies, filter.Year); movies = FilterByPrice(movies, filter.Price); MovieList model = new MovieList { Movies = movies .OrderBy(m => m.Price) .Skip((filter.Page - 1) * ITEM_PER_PAGE) .Take(ITEM_PER_PAGE), Pages = new Models.PageInfo { CurrentPage = filter.Page, ItemPerPage = ITEM_PER_PAGE, TotalItems = movies.Count() } }; return(model); }
public static async Task <IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = "GetMovieList/{id}")] HttpRequest req, int?id, ILogger log) { //TODO: get this from ClaimsPrincipal var userid = "1"; if (id == null) { return(new BadRequestObjectResult("Must Provide Id.")); } var listRepository = new MovieListRepository(ConnectionStringRepository.GetSqlAzureConnectionString("SQLConnectionString")); var movieRepository = new MovieRepository(ConnectionStringRepository.GetSqlAzureConnectionString("SQLConnectionString")); MovieList data = await listRepository.GetAsync(userid, id.Value); if (data == null) { return(new BadRequestObjectResult("Invalid Id Provided.")); } data.Movies = await movieRepository.GetByListIdAsync(data.Id); return(new OkObjectResult(data)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,MovieName,Genre,Rating,ReleaseYear,ImdbLink")] MovieList movieList) { if (id != movieList.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(movieList); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!MovieListExists(movieList.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(movieList)); }
public MovieList GetRecommendedMoviesFromFacet() { Assert.IsNotNull(Tracker.Current, "Tracker.Current"); Assert.IsNotNull(Tracker.Current.Session, "Tracker.Current.Session"); using (XConnectClient client = Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.GetClient()) { var contactReference = new IdentifiedContactReference("xDB.Tracker", Tracker.Current.Session.Contact.ContactId.ToString("N")); var contact = client.Get(contactReference, new ContactExpandOptions(MovieRecommendationFacet.DefaultFacetKey)); var facet = contact?.GetFacet <MovieRecommendationFacet>(MovieRecommendationFacet.DefaultFacetKey); if (facet == null) { return(new MovieList()); } var movieList = new MovieList() { Count = 50, Items = facet.MovieRecommendations.Skip(Math.Max(0, facet.MovieRecommendations.Count - 50)).ToList() }; return(movieList); } }
public void GetSearchCandidate() { SearchCandidate = new ObservableCollection <string>(); List <Movie> model = new List <Movie>(); if (SearchType == MySearchType.称) { model = MovieList.Where(m => m.title.ToUpper().Contains(Search.ToUpper())).ToList(); model.ForEach(arg => { SearchCandidate.Add(arg.title); }); } else if (SearchType == MySearchType.演员) { model = MovieList.Where(m => m.actor.ToUpper().Contains(Search.ToUpper())).ToList(); List <string> actors = new List <string>(); model.ForEach(arg => { string[] actor = arg.actor.Split(new char[] { ' ', '/' }); foreach (var item in actor) { if (!string.IsNullOrEmpty(item) & item.IndexOf(' ') < 0) { if (!actors.Contains(item) & item.ToUpper().IndexOf(Search.ToUpper()) >= 0) { actors.Add(item); } } } }); actors.ForEach(arg => { SearchCandidate.Add(arg); }); } else if (SearchType == MySearchType.识别码) { model = MovieList.Where(m => m.id.ToUpper().Contains(Search.ToUpper())).ToList(); model.ForEach(arg => { SearchCandidate.Add(arg.id); }); } }
private void refreshmovielist() { MovieData.Tables[0].DefaultView.Sort = "sort ASC"; // MovieList.DataSource = MovieData.Tables[0]; button2.Text = MovieList.Rows.Count.ToString(); foreach (DataGridViewRow dr in MovieList.Rows) { dr.Cells[0].ToolTipText = dr.Cells[4].Value.ToString(); switch ((string)dr.Cells[3].Value) { case "1": dr.Cells[0].Style.ForeColor = Color.Green; break; case "0": dr.Cells[0].Style.ForeColor = Color.Black; break; default: dr.Cells[0].Style.ForeColor = Color.Red; break; } } MovieList.EndEdit(); }
public async void Reset() { TextType = "所有视频"; List <Movie> models = null; cdb = new DataBase(); if (!cdb.IsTableExist("movie")) { cdb.CloseDB(); return; } models = await cdb.SelectMoviesById(""); cdb.CloseDB(); if (models.Count == 0) { MovieCount = $"本页有 0 个,总计 0 个"; } if (models != null && MovieList != null && models.Count == MovieList.ToList().Count) { return; } MovieList = new ObservableCollection <Movie>(); models?.ForEach(arg => { MovieList.Add(arg); }); Sort(); cdb.CloseDB(); }
public IHttpActionResult CreateMovieList(MovieListAddDTO movieListDTO) { MovieList movieList = MovieListAddDTO.ToMovieList(movieListDTO); _createMovieListCommand.Execute(movieList); return(Ok()); }
private MovieList GetMovieList(string apiUrl) { string result = HttpHelper.HttpGet(apiUrl); MovieList movieList = result.ToObject <MovieList>(); return(movieList); }
private void DisplayMovie() { try { if (MovieList != null) { MovieList.Clear(); } var selectedGenres = GenersList.FirstOrDefault(a => a.GenerName == continent); if (selectedGenres.GenerId == 0) { MovieList = MainMovieList; return; } //var List = MainMovieList; var ListSelected = MainMovieList.Where(movie => movie.GenreIds.Contains(selectedGenres.GenerId)); MovieList = new ObservableCollection <MovieDetails>(ListSelected); } catch (Exception ex) { //UserDialogs.Instance.Alert(ex.Message, "Apologies", "Ok"); } }
public ActionResult WatchListPage() {//take us to the page view that will show us the user novies he paid to watch //Check the user Watch List and update the list if neccery CheckWatchList(Session["UserName"].ToString()); //connect to db Order OrderDal dal = new OrderDal(); List <Movie> movies_list = new List <Movie>(); string UsreName = Session["UserName"].ToString(); //get the movies that was paid by the user List <Order> ord_list = (from o in dal.Orders where o.UserName == UsreName && o.Paid == "true" select o).ToList <Order>(); //creat the movie list with only the movies the user paid for foreach (Order o in ord_list) { movies_list.Add(GetMovie(o.MovieName)); } MovieList list = new MovieList(); list.movies = movies_list; return(View(list)); }
//logged in user saves movie to their movielist, from the Movies by Mood generator public ActionResult MoodRecToMovieList(MovieList newMovie) { if (!ModelState.IsValid) { return(View("../Shared/Error")); } try { //1. ORM Entities AddMovie = new Entities(); if (!AddMovie.MovieLists.Any(x => x.title == newMovie.title)) { //2. Action: Find the title, save to MovieList AddMovie.MovieLists.Add(newMovie); AddMovie.SaveChanges(); //3. move to the user's movielist page return(RedirectToAction("GetMoviesByUser", new { Id = User.Identity.GetUserId() })); } else { //this validation is successful, however, it does not alert the user that they are attempting //to enter a duplicate on their list. also, it returns to movie by mood, but the mood is lost //(maybe store in temp data and pass back?) so the page does not display results until a mood is selected again. return(RedirectToAction("MovieByMood")); } } catch (Exception) { return(View("../Shared/Error")); } }
//saves updates to rating and watched y/n -- input is from drop down public ActionResult SaveMovieUpdate(MovieList updatedMovie) { if (!ModelState.IsValid) { return(View("../Shared/Error"));// error page } try { //1. ORM Entities Movie = new Entities(); //2. Find the Movie Movie.Entry(Movie.MovieLists.Find(updatedMovie.MovieListNumber)). CurrentValues.SetValues(updatedMovie); //3. Movie.SaveChanges(); //4. back to movielist for the user return(RedirectToAction("GetMoviesByUser", new { Id = User.Identity.GetUserId() })); } catch (Exception) { return(View("../Shared/Error")); } }
public async Task <IHttpActionResult> PutMovieList(int id, MovieList movieList) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != movieList.Id) { return(BadRequest()); } db.Entry(movieList).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!MovieListExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
//logged in user saves movie to their movielist public ActionResult AddMoodToMovieList(MovieList newMovie) { if (!ModelState.IsValid) { return(View("../Shared/Error")); } try { var UserId = User.Identity.GetUserId(); //1. ORM Entities AddMovie = new Entities(); if (AddMovie.MovieLists.Where(x => x.Id == UserId).Any(x => x.title != newMovie.title)) { //2. Action: Find the title, save to MovieList AddMovie.MovieLists.Add(newMovie); AddMovie.SaveChanges(); //3. stay Get Movies by Search view return(RedirectToAction("GetMoviesByUser", new { Id = User.Identity.GetUserId() })); } else { //this validation is successful, however, it does not alert the user that they are attempting //to enter a duplicate on their list return(RedirectToAction("GetMoviesByUser", new { Id = User.Identity.GetUserId() })); } } catch (Exception) { return(View("../Shared/Error")); } }
// GET api/<controller> public async Task <HttpResponseMessage> Get() { string url = HttpContext.Current.Request.Url.AbsoluteUri.Replace("/api/cheapestmovie", ""); MovieList movieList = await GetMovies(url); List <MovieDetail> movieDetailList = new List <MovieDetail>(); foreach (Movie movie in movieList.Movies) { using (var client = new HttpClient()) { client.BaseAddress = new Uri(url); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var response = client.GetAsync("api/movies/?movieId=" + movie.ID).Result; if (response.IsSuccessStatusCode) { var result = await response.Content.ReadAsStringAsync(); var movieDetail = JsonConvert.DeserializeObject <MovieDetail>(result); movieDetailList.Add(movieDetail); } } } List <MovieDetail> Movies = _movieBL.GetCheapestMovies(movieDetailList, 1); return(Request.CreateResponse(HttpStatusCode.OK, Movies)); }
public async Task <IHttpActionResult> AddMovie(int id, [FromBody] Movie movie) { MovieList movieList = await db.MovieLists.FindAsync(id); if (movieList == null || movie == null) { return(NotFound()); } movieList.Movies.Add(movie); db.Entry(movieList).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!MovieListExists(id)) { return(NotFound()); } else { throw; } } return(Ok(movieList)); }
public IActionResult NewMovie(MovieList newMovie) { if (UserSession == null) { return(View("Login")); } else { if (ModelState.IsValid) { dbContext.Movies.Add(newMovie.MovieToAdd); dbContext.SaveChanges(); return(RedirectToAction("Library")); } else { List <Movie> AllMovies = dbContext.Movies .Include(m => m.MovieReviews) .ToList(); List <Review> AllReviews = dbContext.Reviews .OrderByDescending(r => r.CreatedAt) .Include(r => r.Creator) .ToList(); MovieList moviesInDb = new MovieList(); moviesInDb.MovieLibrary = AllMovies; MovieList reviewsInDb = new MovieList(); reviewsInDb.MovieReviews = AllReviews; ViewBag.DisplayReviews = reviewsInDb; ViewBag.hasError = true; return(View("Library", moviesInDb)); } } }
private static void AddMovieList(MovieListContext context) { var movielists = new MovieList[] { new MovieList { UserID = Guid.Parse("5b5d772b-1f2f-48cf-9303-59405736c438"), Title = "Star Wars", ReleaseDate = "1979", Picture = "https://starwarsblog.starwars.com/wp-content/uploads/2015/10/tfa_poster_wide_header-1536x864-959818851016.jpg", Rating = 5 }, new MovieList { UserID = Guid.Parse("5b5d772b-1f2f-48cf-9303-59405736c438"), Title = "Star Wars: Rouge One", ReleaseDate = "2018", Picture = "https://upload.wikimedia.org/wikipedia/en/d/d4/Rogue_One%2C_A_Star_Wars_Story_poster.png", Rating = 5 }, new MovieList { UserID = Guid.Parse("5b5d772b-1f2f-48cf-9303-59405736c438"), Title = "Another Star Trek Movie", ReleaseDate = "2017", Picture = "https://upload.wikimedia.org/wikipedia/en/b/ba/Star_Trek_Beyond_poster.jpg", Rating = 4 }, }; foreach (MovieList e in movielists) { { context.MovieLists.Add(e); } } context.SaveChanges(); }
public async Task <MovieList> Create(int userId, MovieList movieList) { var name = movieList.Name; if (string.IsNullOrWhiteSpace(name)) { throw new AppException("Movie list name is invalid!"); } if (await _context.MovieLists.AnyAsync(_movieList => (_movieList.Name == name && _movieList.UserId == userId))) { throw new AppException("Movie List already exists!"); } movieList.UserId = userId; movieList.Created = DateTime.Now; await _context.MovieLists.AddAsync(movieList); await _context.SaveChangesAsync(); movieList.Slug = GeneralHelpers.Slugify(name, movieList.Id); await _context.SaveChangesAsync(); return(movieList); }
public async Task <IHttpActionResult> RemoveMovie(int id, int movieId) { MovieList movieList = await db.MovieLists.FindAsync(id); Movie movie = await db.Movies.FindAsync(movieId); if (movieList == null || movie == null) { return(NotFound()); } if (movieList.Movies.Any(m => m.ID == movie.ID)) { db.Movies.Remove(movie); movieList.Movies.Remove(movie); } else { return(BadRequest("Movie was not in list")); } db.Entry(movieList).State = EntityState.Modified; db.Entry(movie).State = EntityState.Deleted; await db.SaveChangesAsync(); // Get list from db to send back fresh copy movieList = await db.MovieLists.FindAsync(id); return(Ok(movieList)); }
public MainWindow() { Movies = new MovieList (); Movies.LoadAll (); InitializeComponent (); Loaded += new RoutedEventHandler (MainWindowLoaded); DeleteCommand = new CommandDelete (gridView, Movies); EditRawDataCommand = new CommandEditRawData (gridView, Movies); }
public MovieHandler() { activeMovies = new MovieList(); inactiveMovies = new MovieList(); disabledGenres = new List<string>(); uniqueActors = new List<string>(); uniqueActresses = new List<string>(); uniqueDirectors = new List<string>(); disabledCertifications = new List<string>(); actorFilter = actressFilter = directorFilter = "All"; System.Diagnostics.Process.Start("mongod.exe"); //readXML("movies.xml"); getMoviesFromDB(); getUniqueActors(); getUniqueActresses(); getUniqueDirectors(); defferalTimer.Tick += new EventHandler(defferalTimer_Tick); }
public CommandDelete(SortableGridView gridView, MovieList movies) { m_gridView = gridView; m_movies = movies; }
public CommandEditRawData(SortableGridView gridView, MovieList movies) { m_gridView = gridView; m_movies = movies; }