Пример #1
0
        private void tbDirectors_TextChanged(object sender, EventArgs e)
        {
            IsLoadedDirectors = false;
            string text = tbDirectors.Text;

            lvDirectors.Clear();
            ColumnHeader header = new ColumnHeader();

            header.Text = "";
            header.Name = "col1";
            lvDirectors.Columns.Add(header);
            lvDirectors.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
            lvDirectors.HeaderStyle = ColumnHeaderStyle.None;
            try
            {
                using (MovieDB context = new MovieDB())
                {
                    lvDirectors.CheckBoxes = true;
                    List <director> directors = null;
                    if (text.Equals(""))
                    {
                        directors = (from c in context.directors
                                     where c.member_of_cast_and_crew.active == 1
                                     orderby c.member_of_cast_and_crew.first_name
                                     select c).ToList();
                    }
                    else
                    {
                        directors = (from c in context.directors
                                     where (c.member_of_cast_and_crew.first_name.ToLower().Contains(text.ToLower()) ||
                                            c.member_of_cast_and_crew.last_name.ToLower().Contains(text.ToLower())) &&
                                     c.member_of_cast_and_crew.active == 1
                                     orderby c.member_of_cast_and_crew.first_name
                                     select c).ToList();
                    }
                    foreach (var director in directors)
                    {
                        var item = new ListViewItem(director.member_of_cast_and_crew.first_name + " " + director.member_of_cast_and_crew.last_name);
                        item.Tag = director;
                        lvDirectors.Items.Add(item);
                        if (MovieDirectors.Contains(director))
                        {
                            item.Checked = true;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
            }
            IsLoadedDirectors = true;
        }
Пример #2
0
 private void lvDirectors_ItemChecked(object sender, ItemCheckedEventArgs e)
 {
     if (IsLoadedDirectors)
     {
         if (e.Item.Checked)
         {
             MovieDirectors.Add((director)(e.Item as ListViewItem).Tag);
             checkedDirectors.Add((director)(e.Item as ListViewItem).Tag);
         }
         else
         {
             MovieDirectors.Remove((director)(e.Item as ListViewItem).Tag);
             checkedDirectors.Remove((director)(e.Item as ListViewItem).Tag);
         }
     }
 }
        private void AddDirectorsOfMovie(ICollection <int> selectedDirectorIds, int movieId)
        {
            var collectionToAdd = new List <MovieDirectors>();

            foreach (var directorId in selectedDirectorIds.Distinct().ToList())
            {
                //check if person exists and relation doesn't
                if (DbContext.People.Any(p => p.Id == directorId) &&
                    !DbContext.MovieDirectors.Any(ma => ma.PersonId == directorId && ma.MovieId == movieId))
                {
                    var item = new MovieDirectors()
                    {
                        PersonId = directorId,
                        MovieId  = movieId
                    };

                    collectionToAdd.Add(item);
                }
            }

            DbContext.MovieDirectors.AddRange(collectionToAdd);
            DbContext.SaveChanges();
        }
Пример #4
0
        private void AddMovieForm_Load(object sender, EventArgs e)
        {
            tbName.Text          = MovieName;
            tbRuntime.Text       = Runtime == 0 ? "" : Runtime.ToString();
            dtpReleaseDate.Value = ReleaseDate;
            tbBudget.Text        = Budget == 0 ? "" : Budget.ToString();
            tbGross.Text         = Gross == 0 ? "" : Gross.ToString();
            tbTagline.Text       = Tagline;
            rtbPlotSummary.Text  = PlotSummary;
            if (Poster.StartsWith("\\"))
            {
                Poster = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName + Poster;
            }
            try
            {
                pbPoster.Image = Image.FromFile(Poster);
            }
            catch (FileNotFoundException ex)
            {
                pbPoster.Image = Image.FromFile(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName + "\\Posters\\default.png");
            }
            var genreItems = lvGenres.Items;

            foreach (var genre in Genres.ToList())
            {
                foreach (var item in genreItems)
                {
                    genre genreItem = (genre)(item as ListViewItem).Tag;
                    if (genreItem.id == genre.id)
                    {
                        (item as ListViewItem).Checked = true;
                    }
                }
                checkedGenres.Add(genre);
            }
            var languageItems = lvLanguages.Items;

            foreach (var language in Languages.ToList())
            {
                foreach (var item in languageItems)
                {
                    language languageItem = (language)(item as ListViewItem).Tag;
                    if (languageItem.id == language.id)
                    {
                        (item as ListViewItem).Checked = true;
                    }
                }
                checkedLanguages.Add(language);
            }
            var actorItems = lvActors.Items;

            foreach (var actor in MovieActors.ToList())
            {
                foreach (var item in actorItems)
                {
                    actor actorItem = (actor)(item as ListViewItem).Tag;
                    if (actorItem.id == actor.id)
                    {
                        (item as ListViewItem).Checked = true;
                    }
                }
                checkedActors.Add(actor);
            }
            var directorItems = lvDirectors.Items;

            foreach (var director in MovieDirectors.ToList())
            {
                foreach (var item in directorItems)
                {
                    director directorItem = (director)(item as ListViewItem).Tag;
                    if (directorItem.id == director.id)
                    {
                        (item as ListViewItem).Checked = true;
                    }
                }
                checkedDirectors.Add(director);
            }
        }
Пример #5
0
        private void btnAddDirector_Click(object sender, EventArgs e)
        {
            AddMemberOfCastAndCrewForm addMemberOfCastAndCrew = new AddMemberOfCastAndCrewForm("director");

            if (DialogResult.OK == addMemberOfCastAndCrew.ShowDialog())
            {
                try
                {
                    using (MovieDB context = new MovieDB())
                    {
                        DateTime?died = addMemberOfCastAndCrew.Dead ? addMemberOfCastAndCrew.Died : (DateTime?)null;
                        var      memberOfCastAndCrew = new member_of_cast_and_crew()
                        {
                            first_name = addMemberOfCastAndCrew.FirstName,
                            last_name  = addMemberOfCastAndCrew.LastName,
                            birthplace = addMemberOfCastAndCrew.Birthplace,
                            born       = addMemberOfCastAndCrew.Born,
                            died       = died,
                            bio        = addMemberOfCastAndCrew.Bio,
                            image      = addMemberOfCastAndCrew.MemberImage,
                            active     = 1
                        };
                        var director = new director()
                        {
                            member_of_cast_and_crew = memberOfCastAndCrew
                        };
                        context.directors.Add(director);
                        if (addMemberOfCastAndCrew.DoubleMember)
                        {
                            var actor = new actor()
                            {
                                member_of_cast_and_crew = memberOfCastAndCrew
                            };
                            context.actors.Add(actor);
                        }
                        context.SaveChanges();
                        FillDirectorsList();
                        var directorItems = lvDirectors.Items;
                        foreach (var checkedDirector in MovieDirectors.ToList())
                        {
                            foreach (var item in directorItems)
                            {
                                director directorItem = (director)(item as ListViewItem).Tag;
                                if (directorItem.id == checkedDirector.id)
                                {
                                    (item as ListViewItem).Checked = true;
                                }
                            }
                        }
                        FillActorsList();
                        var actorItems = lvActors.Items;
                        foreach (var checkedActor in MovieActors.ToList())
                        {
                            foreach (var item in actorItems)
                            {
                                actor actorItem = (actor)(item as ListViewItem).Tag;
                                if (actorItem.id == checkedActor.id)
                                {
                                    (item as ListViewItem).Checked = true;
                                }
                            }
                        }
                        MoviesUcl.Instance.RefreshTableAndFilters();
                        ActorsUcl.Instance.RefreshTableAndFilters();
                        DirectorsUcl.Instance.RefreshTableAndFilters();
                        MessageBox.Show("Director successfully added.", "Success", MessageBoxButtons.OK);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.StackTrace);
                }
            }
        }
Пример #6
0
        public static void Seed(ModelBuilder modelBuilder)
        {
            //seeding data klaarzetten
            //denk aan de volgorde!!
            //companies
            var companies = new Company[]
            {
                new Company {
                    Id = 1, Name = "Warner Bros"
                },
                new Company {
                    Id = 2, Name = "Universal"
                },
                new Company {
                    Id = 3, Name = "Pixar"
                }
            };
            //users
            var users = new User[]
            {
                new User {
                    Id = 1, FirstName = "Slash", LastName = "Slash", Username = "******"
                },
                new User {
                    Id = 2, FirstName = "John", LastName = "Frusciante", Username = "******"
                }
            };
            //Actors
            var actors = new Actor[]
            {
                new Actor {
                    Id = 1, FirstName = "Keanu", LastName = "Reeves"
                },
                new Actor {
                    Id = 2, FirstName = "Kim", LastName = "Basinger"
                },
                new Actor {
                    Id = 3, FirstName = "Robert", LastName = "De Niro"
                },
                new Actor {
                    Id = 4, FirstName = "Walter", LastName = "Capiau"
                },
            };
            //Directors
            var directors = new Director[]
            {
                new Director {
                    Id = 1, FirstName = "Steven", LastName = "Spielberg"
                },
                new Director {
                    Id = 2, FirstName = "Sly", LastName = "Stallone"
                },
                new Director {
                    Id = 3, FirstName = "Kathryn", LastName = "Bigelow"
                }
            };
            //movies
            var movies = new Movie[]
            {
                new Movie {
                    Id = 1, Title = "Point Break", CompanyId = 1
                },
                new Movie {
                    Id = 2, Title = "Rocky", CompanyId = 2
                },
                new Movie {
                    Id = 3, Title = "Rambo", CompanyId = 1
                }
            };
            //MovieActors
            var movieActors = new MovieActors[]
            {
                new MovieActors {
                    ActorId = 1, MovieId = 1
                },
                new MovieActors {
                    ActorId = 2, MovieId = 3
                },
                new MovieActors {
                    ActorId = 2, MovieId = 2
                },
                new MovieActors {
                    ActorId = 3, MovieId = 3
                }
            };
            //movieDirectors
            var movieDirectors = new MovieDirectors[]
            {
                new MovieDirectors {
                    MovieId = 1, DirectorId = 1
                },
                new MovieDirectors {
                    MovieId = 2, DirectorId = 2
                },
                new MovieDirectors {
                    MovieId = 3, DirectorId = 3
                }
            };
            //Ratings
            var ratings = new Rating[]
            {
                new Rating {
                    Id = 1, UserId = 1, MovieId = 1, Score = 10, Review = "Very good! Loved it!"
                },
                new Rating {
                    Id = 2, UserId = 2, MovieId = 3, Score = 4, Review = "Sucks monkeyballs!"
                },
                new Rating {
                    Id = 3, UserId = 2, MovieId = 3, Score = 10, Review = "Effing awesome!!"
                }
            };

            //call the hasdata methods for each entity
            //mind the volgorde!!
            modelBuilder.Entity <Company>().HasData(companies);
            modelBuilder.Entity <Actor>().HasData(actors);
            modelBuilder.Entity <Director>().HasData(directors);
            modelBuilder.Entity <User>().HasData(users);
            modelBuilder.Entity <Movie>().HasData(movies);
            modelBuilder.Entity <MovieDirectors>().HasData(movieDirectors);
            modelBuilder.Entity <MovieActors>().HasData(movieActors);
            modelBuilder.Entity <Rating>().HasData(ratings);
        }