public async Task <IActionResult> PutMovieStatus(byte id, MovieStatus movieStatus)
        {
            if (id != movieStatus.Id)
            {
                return(BadRequest());
            }

            _context.Entry(movieStatus).State = EntityState.Modified;

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

            return(NoContent());
        }
        public async Task <ActionResult <MovieStatus> > PostMovieStatus(MovieStatus movieStatus)
        {
            _context.MovieStatuses.Add(movieStatus);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetMovieStatus", new { id = movieStatus.Id }, movieStatus));
        }
Example #3
0
 public Movie(string id, string name, int imageIndex, MovieStatus movieStatus)
 {
     this.id          = id;
     this.name        = name;
     this.imageIndex  = imageIndex;
     this.movieStatus = movieStatus;
 }
Example #4
0
 public void UpdateStatus(MovieStatus movieStatus)
 {
     if ((short)movieStatus >= (short)this.IdStatus || this.IdStatus == MovieStatus.InError)
     {
         this.IdStatus = movieStatus;
     }
 }
Example #5
0
        private void btnAddMovie_Click(object sender, EventArgs e)
        {
            if (txbMovieName.Text == "")
            {
                MessageBox.Show("Vui lòng nhập tên phim!");
                lbMovieNotify.Text      = "Thêm phim không thành công";
                lbMovieNotify.BackColor = failNotifyColor;
                return;
            }
            MovieStatus status   = movieStatusString.FirstOrDefault(x => x.Value == cbbMovieStatus.Text).Key;
            Movie       newMovie = new Movie(
                id: (currentMovieId++).ToString(),
                name: txbMovieName.Text,
                imageIndex: imageIndex,
                movieStatus: status
                );

            movies.Add(newMovie);
            lvMovie.Items.Add(newMovie.id, newMovie.id + " - " + newMovie.name, newMovie.imageIndex);

            lvMovie.Refresh();
            lvMovie.Invalidate();

            lbMovieNotify.Text      = "Thêm phim thành công";
            lbMovieNotify.BackColor = successNotifyColor;
        }
 public static string GetString(this MovieStatus movieStatus)
 {
     return(movieStatus switch
     {
         MovieStatus.Active => "Активно",
         MovieStatus.Blocked => "Заблокировано"
     });
Example #7
0
        public Movie UpdateStatus(Movie movie, MovieStatus newStatus)
        {
            bool changeAllowed = false;

            if (movie.IdStatus != newStatus)
            {
                switch (newStatus)
                {
                case MovieStatus.InError:
                    changeAllowed = true;
                    break;

                case MovieStatus.Downloaded:
                    if (movie.IdStatus == MovieStatus.HasTorrent)
                    {
                        changeAllowed = true;
                    }
                    break;

                case MovieStatus.Finished:
                    if (movie.IdStatus == MovieStatus.HasTorrent || movie.IdStatus == MovieStatus.Downloaded)
                    {
                        changeAllowed = true;
                    }
                    break;

                case MovieStatus.HasTorrent:
                    if (movie.IdStatus == MovieStatus.Scanned)
                    {
                        changeAllowed = true;
                    }
                    break;

                case MovieStatus.Scanned:
                    if (movie.IdStatus == MovieStatus.NotScanned)
                    {
                        changeAllowed = true;
                    }
                    break;

                default:
                    changeAllowed = true;
                    break;
                }

                if (changeAllowed)
                {
                    movie.IdStatus = newStatus;
                }
            }

            return(movie);
        }
        public async Task <Movie> SetWatchStatus(Guid id, MovieStatus movieStatus)
        {
            var movie = await _context.Movies
                        .Include(_ => _.Category)
                        .SingleOrDefaultAsync(_ => _.Id == id);

            movie.SetStatus(movieStatus);

            _context.Movies.Update(movie);
            await _context.SaveChangesAsync();

            return(movie);
        }
Example #9
0
        private void addMovie_Click(object sender, EventArgs e)
        {
            if (DirectorBox.Text == "" || ProducerBox.Text == "" || ComposerBox.Text == "" || MovieName.Text == "" || MovieGenre.Text == "")
            {
                MovieStatus.Text      = "Missing Inputs";
                MovieStatus.ForeColor = System.Drawing.Color.Red;
                MovieStatus.Show();
                return;
            }
            int           DirectorID = Convert.ToInt32(((ComboboxItem)DirectorBox.SelectedItem).Key);
            int           ProducerID = Convert.ToInt32(((ComboboxItem)ProducerBox.SelectedItem).Key);
            int           ComposerID = Convert.ToInt32(((ComboboxItem)ComposerBox.SelectedItem).Key);
            String        conString  = @"Data Source=SHERIF\SQLEXPRESS;Initial Catalog=PopCornia;Persist Security Info=True;User ID=sa;Password=123456";
            SqlConnection connection = new SqlConnection(conString);

            connection.Open();
            SqlCommand query = new SqlCommand();

            query.CommandText = "INSERT INTO Movies(Name, Year, Genre, Director_ID, Producer_ID, Composer_ID) VALUES ('" +
                                MovieName.Text + "', '" +
                                MovieDate.Value + "', '" +
                                MovieGenre.Text + "', '" +
                                DirectorID + "', '" +
                                ProducerID + "', '" +
                                ComposerID +
                                "');";
            query.Connection  = connection;
            query.CommandType = CommandType.Text;
            try
            {
                query.ExecuteNonQuery();
                MovieStatus.Text      = "Added!";
                MovieStatus.ForeColor = System.Drawing.Color.LimeGreen;
                MovieStatus.Show();
                MovieName.Clear();
                MovieGenre.SelectedIndex  = -1;
                DirectorBox.SelectedIndex = -1;
                ProducerBox.SelectedIndex = -1;
                ComposerBox.SelectedIndex = -1;
                updateDropLists(1);
                addMovie.Enabled = false;
            }
            catch (Exception x)
            {
                MovieStatus.Text      = "Invalid IDs";
                MovieStatus.ForeColor = System.Drawing.Color.Red;
                MovieStatus.Show();
                MovieName.Clear();
                addMovie.Enabled = false;
            }
        }
        public ActionResult UpdateMovieCollection(MovieCollection movie, String movieStatus)
        {
            MovieCollection movieToBeUpdated = db.MovieCollections.Where(x => x.MovieCollectionId == movie.MovieCollectionId).FirstOrDefault();
            MovieStatus     newStatus        = db.MovieStatuses.Where(x => x.Name == movieStatus).FirstOrDefault();

            try
            {
                movieToBeUpdated.MovieStatus = newStatus;
                db.SaveChanges();
            }
            catch (Exception e)
            {
            }
            return(View("Index"));
        }
            public void SwitchMovieStatus()
            {
                if (!API.IsRentedByCustomer(State.User, TargetMovie.Id))
                {
                    if (Status == MovieStatus.Hyr)
                    {
                        Status = MovieStatus.Vald;
                    }
                    else
                    {
                        Status = MovieStatus.Hyr;
                    }
                }

                _buttonContainer.SetAppearance(Status);
            }
            public void SetNewMovie(Movie movie)
            {
                TargetMovie = movie;
                if (API.IsRentedByCustomer(State.User, movie.Id))
                {
                    Status = MovieStatus.Uthyrd;
                }
                else if (selectedMovies.ContainsKey(movie))
                {
                    Status = MovieStatus.Uthyrd;
                }
                else
                {
                    Status = MovieStatus.Hyr;
                }

                _imageContainer.SetActiveMovie(movie.ImageURL);
                _buttonContainer.SetAppearance(Status);
            }
Example #13
0
                public static async Task <Movie_Data> MovieEnable(string guid, MovieStatus status)
                {
                    var movie = await db.Movie_Data.Where(x => x.guid == guid).FirstAsync();

                    if (movie != null)
                    {
                        if (status == MovieStatus.Enable)
                        {
                            movie.enabled = true;
                        }
                        else if (status == MovieStatus.Disable)
                        {
                            movie.enabled = false;
                        }
                        await db.SaveChangesAsync();

                        return(movie);
                    }
                    return(null);
                }
            /// <summary>
            ///
            /// </summary>
            /// <param name="targetElement">The element to be contained by the selectmovie-box.</param>
            /// <param name="stack">The stackpanel the element shall belong to.</param>
            public SelectMovieContainer(Movie movie, MouseButtonEventHandler mouseButtonEventHandler)
            {
                if (!_TargetMovieIsValid(movie))
                {
                    throw new Exception("Invalid use o SelectMovieContainer.");
                }

                TargetMovie = movie;

                if (API.IsRentedByCustomer(State.User, TargetMovie.Id))
                {
                    Status = MovieStatus.Uthyrd;
                }

                _imageContainer  = new MovieImageContainer(TargetMovie.ImageURL);
                _buttonContainer = new MovieButtonContainer(Status, TargetMovie, mouseButtonEventHandler);

                _stackPanel = new StackPanel();
                _stackPanel.Children.Add(_imageContainer.Image);
                _stackPanel.Children.Add(_buttonContainer.Button);
            }
Example #15
0
        private void btnSuaPhim_Click(object sender, EventArgs e)
        {
            if (lvMovie.SelectedItems.Count > 0)
            {
                Movie selectedMovie = movies.Find(x => x.id == lvMovie.SelectedItems[0].Name);

                if (selectedMovie != null)
                {
                    // change movie on backend
                    MovieStatus status = movieStatusString.FirstOrDefault(x => x.Value == cbbMovieStatus.Text).Key;
                    selectedMovie.name        = txbMovieName.Text;
                    selectedMovie.imageIndex  = imageIndex;
                    selectedMovie.movieStatus = status;

                    // change movie on frontend
                    lvMovie.SelectedItems[0].Text       = selectedMovie.id + " - " + selectedMovie.name;
                    lvMovie.SelectedItems[0].ImageIndex = selectedMovie.imageIndex;

                    lbMovieNotify.Text      = "Sửa thông tin phim thành công";
                    lbMovieNotify.BackColor = successNotifyColor;
                }
            }
        }
Example #16
0
        public List<string> getTable(MovieStatus movie, InfoModel infoModel)
        {
            //Hämta ut tider i restaurangen det finns och välja på
            //Jag har dag och tid = när bion börjar (2h lång)

            //Gå in till restaurang länk
            var restaurangUrl = infoModel.linkList[2];
            //Nytt anrop
            var web = new HtmlWeb();
            var restaurangDoc = web.Load(restaurangUrl);

            //Håller värdet i radio knapp
            List<string> radioNodeList = new List<string>();

            //Hämtar ut dagar det gäller
            foreach (HtmlNode link in restaurangDoc.DocumentNode.SelectNodes("//input[@type='radio']"))
            {
                int counter = 0;
                foreach (var item in link.Attributes)
                {
                    //vill åt sista attrebutet 3/3
                    if (counter == 2)
                    {
                        radioNodeList.Add(item.Value);
                    }
                    counter++;
                }
            }

            //matcha rätt dag det gäller
            string day = movie.Day;

            day = day.Replace("å", "a");
            day = day.Replace("ä", "a");
            day = day.Replace("ö", "o");

            //Hämta ut tre första bokstäverna i list där dag finnns
            string orginalDay = day.Substring(0, 3);
            orginalDay = orginalDay.ToLower();

            //Håller den dagen som fungerar att äta på
            List<string> dayTimeList = new List<string>();
            foreach (var item in radioNodeList)
            {
                string matchDay = item.Substring(0, 3);
                if (orginalDay == matchDay)
                {
                    dayTimeList.Add(item);
                }
            }

            //Hämta klockan på när filmen börjar
            string time = movie.Time;

            int orginalTimeNr = Int32.Parse(time.Substring(0, 2));
            //Lägger till "2h" för längden på filmen
            orginalTimeNr += 2;

            //Håller dom tiderna som fungerar att äta på
            List<string> restaurangTimesList = new List<string>();

            foreach (var item in dayTimeList)
            {
                //lor1618
                string timeString = item.Remove(0, 3);
                int timeNr = Int32.Parse(timeString.Substring(0, 2));
                if (orginalTimeNr <= timeNr)
                {
                    //Dessa tider finns lediga tider
                    restaurangTimesList.Add(item);
                }
            }

            //Hämta länken i form action /dinner/login för posta inloggningen

            foreach (HtmlNode link in restaurangDoc.DocumentNode.SelectNodes("//form[@action]"))
            {
                var newLink = link.Attributes["action"].Value;
                var newUrl = infoModel.Url + newLink;
                infoModel.linkList.Add(newUrl);
            }

            return restaurangTimesList;
        }
Example #17
0
        private static IEnumerable <Domain.Model.Movie> LoadMovies(int page)
        {
            var apiKey = ConfigurationManager.AppSettings["tmd-api-key"];

            var request = (HttpWebRequest)WebRequest.Create(String.Format("http://api.themoviedb.org/3/movie/top_rated?api_key={0}&page={1}", apiKey, page));

            request.KeepAlive     = true;
            request.Method        = "GET";
            request.Accept        = "application/json";
            request.ContentLength = 0;
            string responseContent;

            using (var response = (HttpWebResponse)request.GetResponse())
            {
                using (var reader = new StreamReader(response.GetResponseStream()))
                {
                    responseContent = reader.ReadToEnd();
                }
            }

            var results = JsonConvert.DeserializeObject <RootMovie>(responseContent).results;
            var movies  = new List <Domain.Model.Movie>();

            foreach (var result in results)
            {
                request               = (HttpWebRequest)WebRequest.Create(String.Format("http://api.themoviedb.org/3/movie/{1}?api_key={0}", apiKey, result.id));
                request.KeepAlive     = true;
                request.Method        = "GET";
                request.Accept        = "application/json";
                request.ContentLength = 0;
                using (var response = (HttpWebResponse)request.GetResponse())
                {
                    using (var reader = new StreamReader(response.GetResponseStream()))
                    {
                        responseContent = reader.ReadToEnd();
                    }
                }

                var detail = JsonConvert.DeserializeObject <RootMovieDetail>(responseContent);

                if (detail.release_date == "")
                {
                    continue;
                }

                var status = _statuses.SingleOrDefault(stat => stat.Status == detail.status);
                if (status == null)
                {
                    status = new MovieStatus(detail.status);
                    _statuses.Add(status);
                }

                var movie = new Domain.Model.Movie(detail.title, detail.id, DateTime.Parse(detail.release_date), status)
                {
                    Overview = detail.overview, AverageRating = (decimal?)detail.vote_average
                };
                foreach (var genre in detail.genres)
                {
                    var selectedGenre = _genres.SingleOrDefault(gen => gen.Name == genre.name);

                    if (selectedGenre == null)
                    {
                        selectedGenre = new Domain.Model.Genre(genre.name);
                        _genres.Add(selectedGenre);
                    }

                    movie.MovieGenres.Add(new MovieGenre(movie, selectedGenre));
                }

                foreach (var productionCompany in detail.production_companies)
                {
                    var selectedCompany = _productionCompanies.SingleOrDefault(comp => comp.Name == productionCompany.name);

                    if (selectedCompany == null)
                    {
                        selectedCompany = new Domain.Model.ProductionCompany(productionCompany.name);
                        _productionCompanies.Add(selectedCompany);
                    }

                    movie.ProductionCompanyMovies.Add(new ProductionCompanyMovie(selectedCompany, movie));
                }

                request               = (HttpWebRequest)WebRequest.Create(String.Format("http://api.themoviedb.org/3/movie/{1}/credits?api_key={0}", apiKey, result.id));
                request.KeepAlive     = true;
                request.Method        = "GET";
                request.Accept        = "application/json";
                request.ContentLength = 0;
                using (var response = (HttpWebResponse)request.GetResponse())
                {
                    using (var reader = new StreamReader(response.GetResponseStream()))
                    {
                        responseContent = reader.ReadToEnd();
                    }
                }

                var credit = JsonConvert.DeserializeObject <RootCredits>(responseContent);

                foreach (var cast in credit.cast)
                {
                    var selectedActor = _actors.SingleOrDefault(actor => actor.Name == cast.name);

                    if (selectedActor == null)
                    {
                        selectedActor = new Actor(cast.name);
                        _actors.Add(selectedActor);
                    }

                    movie.Characters.Add(new Character(cast.character, movie, selectedActor));
                }

                movies.Add(movie);
            }

            return(movies);
        }
Example #18
0
 public void SetStatus(MovieStatus movieStatus)
 {
     Status = movieStatus;
 }