public async Task <IHttpActionResult> PutFilmCrew(int id, FilmCrew filmCrew)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != filmCrew.CrewMemberId)
            {
                return(BadRequest());
            }

            db.Entry(filmCrew).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!FilmCrewExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Beispiel #2
0
        public ActionResult AddMovie(FilmCrew filmCrew)
        {
            db.FilmCrew.Add(filmCrew);
            db.SaveChanges();

            return(Redirect("/Person/Edit?PersonId=" + filmCrew.PersonId));
        }
Beispiel #3
0
        public ActionResult AddPerson(FilmCrew filmCrew)
        {
            db.FilmCrew.Add(filmCrew);
            db.SaveChanges();

            return(Redirect("/Movie/Edit?MovieId=" + filmCrew.MovieId));
        }
Beispiel #4
0
        public ActionResult FilmDetails(string filmName)
        {
            FilmDetailsViewModel vm = new FilmDetailsViewModel();
            Films film = db.Films
                         .Where(f => f.FSeo == filmName).FirstOrDefault();
            List <Comments>   cmts       = db.Comments.Include("SubComments").Where(c => c.CFId == film.FId && c.CStatus == true).OrderByDescending(c => c.CDate).ToList();
            List <Sources>    src        = db.Sources.Where(s => s.SFId == film.FId).ToList();
            List <FilmCrew>   crew       = db.FilmCrew.Include("Crews").Where(c => c.FId == film.FId && c.FCMission == "Oyuncu").ToList();
            FilmCrew          director   = db.FilmCrew.Include("Crews").Where(fc => fc.FId == film.FId && fc.FCMission == "Yönetmen").FirstOrDefault();
            List <Categories> categories = (from c in db.Categories
                                            join fc in db.FilmCategory.Where(fc => fc.FId == film.FId) on c.CId equals fc.CId
                                            select c).ToList();
            string category = "";
            int    p        = 0;

            foreach (Categories cat in categories)
            {
                category += cat.CAd;
                if (p != categories.Count - 1)
                {
                    category += ",";
                }
                p++;
            }
            vm.film          = film;
            vm.comment       = cmts;
            vm.filmSource    = src;
            vm.crew          = crew;
            ViewBag.Director = director != null?director.Crews.CName.ToString() : "-";

            ViewBag.Categories = category;
            return(View(vm));
        }
        public async Task <IHttpActionResult> GetFilmCrew(int id)
        {
            FilmCrew filmCrew = await db.FilmCrews.FindAsync(id);

            if (filmCrew == null)
            {
                return(NotFound());
            }

            return(Ok(filmCrew));
        }
        public async Task <IHttpActionResult> PostFilmCrew(FilmCrew filmCrew)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.FilmCrews.Add(filmCrew);
            await db.SaveChangesAsync();

            return(CreatedAtRoute("DefaultApi", new { id = filmCrew.CrewMemberId }, filmCrew));
        }
        public async Task <IHttpActionResult> DeleteFilmCrew(int id)
        {
            FilmCrew filmCrew = await db.FilmCrews.FindAsync(id);

            if (filmCrew == null)
            {
                return(NotFound());
            }

            db.FilmCrews.Remove(filmCrew);
            await db.SaveChangesAsync();

            return(Ok(filmCrew));
        }
Beispiel #8
0
        public ActionResult AddCrewToFilm(FilmCrew filmCrew)
        {
            var inFc = db.FilmCrew.Where(fc => fc.FId == filmCrew.FId && fc.CId == filmCrew.CId).FirstOrDefault();

            if (inFc != null)
            {
                return(RedirectToAction("FilmCrew"));
            }

            db.FilmCrew.Add(filmCrew);
            db.SaveChanges();


            return(RedirectToAction("FilmCrew"));
        }
Beispiel #9
0
        public IEnumerable <Film> GetAllFilms()
        {
            ICollection <Film> films = new List <Film>();

            string              title;
            DateTime            releaseDate;
            Language            language;
            Director            director;
            bool?               hasBlurayRelease;
            ICollection <Actor> actors = new List <Actor>();
            FilmCrew            filmCrew;

            IEnumerable <XElement> filmElements = Document.Element(FilmsElementName).Elements(FilmElementName);

            foreach (XElement filmElement in filmElements)
            {
                title       = filmElement.Attribute(TitleAttribute).Value;
                releaseDate = DateTime.Parse(filmElement.Attribute(ReleaseDateAttribute).Value);
                language    = (Language)Enum.Parse(typeof(Language), filmElement.Attribute(LanguageAttribute).Value);

                string blurayRelease = filmElement.Attribute(BlureyReleaseAttribute).Value;
                hasBlurayRelease = string.IsNullOrEmpty(blurayRelease) ? (bool?)null : Convert.ToBoolean(blurayRelease);

                XElement directorElement = filmElement.Element(FilmCrewElementName).Element(DirectorElementName);
                director = new Director(new Human(directorElement.Attribute(NameAttribute).Value, directorElement.Attribute(SurnameAttribute).Value));
                IEnumerable <XElement> actorElements = filmElement.Element(FilmCrewElementName).Element(ActorsElementName).Elements(ActorElementName);
                foreach (XElement actorElement in actorElements)
                {
                    actors.Add(new Actor(new Human(actorElement.Attribute(NameAttribute).Value, actorElement.Attribute(SurnameAttribute).Value)));
                }
                filmCrew = new FilmCrew(director, actors);
                films.Add(new Film(title, releaseDate, language, filmCrew)
                {
                    HasBlurayRelease = hasBlurayRelease
                });
                actors.Clear();
            }

            return(films);
        }
Beispiel #10
0
        public ActionResult DeleteMovie(int PersonId, int MovieId, int PositionId)
        {
            Person person = db.People.Find(PersonId);

            if (person == null)
            {
                return(RedirectToAction("List", new { message = StatusMessage.PersonNotFound }));
            }

            if (person.Delete == true)
            {
                return(RedirectToAction("List", new { message = StatusMessage.PersonDeleted }));
            }

            Movie movie = db.Movies.Find(MovieId);

            if (movie == null)
            {
                return(RedirectToAction("Edit", new { message = StatusMessage.MovieNotFound }));
            }

            if (movie.Delete == true)
            {
                return(RedirectToAction("Edit", new { message = StatusMessage.MovieDeleted }));
            }


            FilmCrew filmCrew = db.FilmCrew.Find(PersonId, MovieId, PositionId);

            if (filmCrew == null)
            {
                return(RedirectToAction("Edit", new { message = StatusMessage.PositionNotFound }));
            }

            db.FilmCrew.Remove(filmCrew);
            db.SaveChanges();

            return(RedirectToAction("Edit", new { PersonId = PersonId, message = StatusMessage.PositionDeleteSuccess }));
        }
Beispiel #11
0
        private async void updateItemButton_ClickAsync(object sender, RoutedEventArgs e)
        {
            try
            {
                int cellValueInt = Convert.ToInt32(cellValue);

                if (entityPickerCombo.Text == myEntities[0])
                {
                    Movie obj = new Movie
                    {
                        MovieId        = cellValueInt,
                        Title          = addField1.Text,
                        ProductionYear = Convert.ToInt32(addField2.Text),
                        Budget         = Convert.ToInt32(addField3.Text),
                        Genre          = addField4.Text,
                        StudioId       = Convert.ToInt32(addCombo1.Text.Split('.')[0])
                    };
                    await UpdateItemAsync(obj, "movies", cellValueInt);
                }
                if (entityPickerCombo.Text == myEntities[1])
                {
                    Contract obj = new Contract
                    {
                        ContractId   = cellValueInt,
                        Duration     = Convert.ToInt32(addField1.Text),
                        Salary       = Convert.ToInt32(addField2.Text),
                        CrewMemberId = Convert.ToInt32(addCombo1.Text.Split('.')[0]),  ///
                        MovieId      = Convert.ToInt32(addCombo2.Text.Split('.')[0])
                    };
                    await UpdateItemAsync(obj, "contracts", cellValueInt);
                }
                if (entityPickerCombo.Text == myEntities[2])
                {
                    FilmCrew obj = new FilmCrew
                    {
                        CrewMemberId = cellValueInt,
                        Name         = addField1.Text,
                        Firstname    = addField2.Text,
                        Age          = Convert.ToInt32(addField3.Text),
                        PositionId   = Convert.ToInt32(addCombo1.Text.Split('.')[0])
                    };
                    await UpdateItemAsync(obj, "filmcrews", cellValueInt);
                }
                if (entityPickerCombo.Text == myEntities[3])
                {
                    Position obj = new Position
                    {
                        PositionId   = cellValueInt,
                        PositionName = addField1.Text
                    };
                    await UpdateItemAsync(obj, "positions", cellValueInt);
                }
                if (entityPickerCombo.Text == myEntities[4])
                {
                    Studio obj = new Studio
                    {
                        StudioId            = cellValueInt,
                        Name                = addField1.Text,
                        YearOfEstablishment = Convert.ToInt32(addField2.Text)
                    };
                    await UpdateItemAsync(obj, "studios", cellValueInt);
                }

                MessageBox.Show("Successfully updated data!");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message.Trim() + " Failed to update data!");
            }
            LoadWindow(0);
        }
Beispiel #12
0
        private async void Row_MouseDoubleClickAsync(object sender, MouseButtonEventArgs e)
        {
            cellValue = GetSelectedCellValue();
            string path = $"api/{currentEntity}/{cellValue}";


            if (currentView == "FilmCrewView")
            {
                LoadWindow(2);
                FilmCrew            obj      = new FilmCrew();
                HttpResponseMessage response = await client.GetAsync(path);

                if (response.IsSuccessStatusCode)
                {
                    obj = await response.Content.ReadAsAsync <FilmCrew>();
                }
                LoadCrewBoxesAsync();
                addField1.Text = obj.Firstname;
                addField2.Text = obj.Name;
                addField3.Text = obj.Age.ToString();
            }
            if (currentView == "MovieView")
            {
                LoadWindow(0);
                Movie obj = new Movie();
                HttpResponseMessage response = await client.GetAsync(path);

                if (response.IsSuccessStatusCode)
                {
                    obj = await response.Content.ReadAsAsync <Movie>();
                }
                LoadMovieBoxesAsync();
                addField1.Text = obj.Title;
                addField2.Text = obj.ProductionYear.ToString();
                addField3.Text = obj.Budget.ToString();;
                addField4.Text = obj.Genre;
            }
            if (currentView == "ContractView")
            {
                LoadWindow(1);
                Contract            obj      = new Contract();
                HttpResponseMessage response = await client.GetAsync(path);

                if (response.IsSuccessStatusCode)
                {
                    obj = await response.Content.ReadAsAsync <Contract>();
                }
                LoadContractBoxesAsync();
                addField1.Text = obj.Duration.ToString();
                addField2.Text = obj.Salary.ToString();
            }
            if (currentView == "Studio")
            {
                LoadWindow(4);
                Studio obj = new Studio();
                HttpResponseMessage response = await client.GetAsync(path);

                if (response.IsSuccessStatusCode)
                {
                    obj = await response.Content.ReadAsAsync <Studio>();
                }
                LoadStudioBoxes();
                addField1.Text = obj.Name;
                addField2.Text = obj.YearOfEstablishment.ToString();
            }
            if (currentView == "Position")
            {
                LoadWindow(3);
                Position            obj      = new Position();
                HttpResponseMessage response = await client.GetAsync(path);

                if (response.IsSuccessStatusCode)
                {
                    obj = await response.Content.ReadAsAsync <Position>();
                }
                LoadPositionBoxes();
                addField1.Text = obj.PositionName;
            }
        }