예제 #1
0
        private static void FillAllItemsList()
        {
            ClearItemsList();

            foreach (var s in CounList)
            {
                var item = new ListItem {
                    AdditionalProperties = { [NAME] = s }
                };
                item.SetLabel("Name", "[Country." + s + "]");
                if (SelectedCountrys.Contains(s))
                {
                    item.Selected = true;
                }
                Countrys.Add(item);
            }
            Refresh(Countrys);

            foreach (var s in CityList)
            {
                var item = new ListItem {
                    AdditionalProperties = { [NAME] = s }
                };
                item.SetLabel("Name", s);
                if (SelectedCitys.Contains(s))
                {
                    item.Selected = true;
                }
                Citys.Add(item);
            }
            Refresh(Citys);

            foreach (var s in BitrList)
            {
                var item = new ListItem {
                    AdditionalProperties = { [NAME] = Convert.ToInt32(s) + " kbps" }
                };
                item.SetLabel("Name", Convert.ToInt32(s) + " kbps");
                if (SelectedBitrate.Contains(Convert.ToInt32(s) + " kbps"))
                {
                    item.Selected = true;
                }
                Bitrate.Add(item);
            }
            Refresh(Bitrate);

            foreach (var s in GenrList)
            {
                var item = new ListItem {
                    AdditionalProperties = { [NAME] = s }
                };
                item.SetLabel("Name", s);
                if (SelectedGenres.Contains(s))
                {
                    item.Selected = true;
                }
                Genres.Add(item);
            }
            Refresh(Genres);
        }
        private async Task ExecuteLoadGenreCommand()
        {
            if (IsBusy)
            {
                return;
            }
            IsBusy = true;
            try
            {
                Genres.Clear();
                var genres = await DataStore.GetGenreAsync(true);

                if (genres.Any())
                {
                    foreach (var item in genres)
                    {
                        Genres.Add(item);
                    }
                }
            }
            catch (Exception ex)
            {
                Trace.TraceError(ex.Message);
            }
            finally
            {
                IsBusy = false;
            }
        }
예제 #3
0
        public CatalogEntry(string title, string subtitle, List <string> ids, string publisher, string pubDate = null, int?pages = null, string desc = null, string shelf = null, int?minAge = null, int?maxAge = null, GradeLevels minGrd = GradeLevels.NotSet, GradeLevels maxGrd = GradeLevels.NotSet, params string[] genres) : base(true)
        {
            Title    = title;
            Subtitle = subtitle;
            if (!ids.IsNullOrEmpty())
            {
                foreach (var i in ids)
                {
                    Identifiers.Add(new Identifier(this, i));
                }
            }

            Publisher     = publisher;
            PubDate       = pubDate;
            PageCount     = pages;
            Description   = !string.IsNullOrWhiteSpace(desc) ? desc.Trim() : null;
            MinAge        = minAge;
            MaxAge        = maxAge;
            MinGrade      = minGrd;
            MaxGrade      = maxGrd;
            ShelfLocation = !string.IsNullOrWhiteSpace(shelf) ? shelf : null;
            if (!genres.IsNullOrEmpty())
            {
                foreach (var g in genres)
                {
                    Genres.Add(new Genre(this, g));
                }
            }
        }
예제 #4
0
        public MainWindow()
        {
            this.catalogSourse.Add(new Films()
            {
                Name = "Мег: Монстр глубины", Genre = new List <string>()
                {
                    "ужасы"
                }, Year = 2019, ImagePath = "Res\\TheMeg.jpg", Description = "Глубоководный батискаф, осуществляющий наблюдение в рамках международной программы по изучению подводной жизни, был атакован огромным существом, которое все считали давно вымершим. Неисправный аппарат теперь лежит на дне глубочайшей впадины Тихого океана… с оказавшимся в ловушке экипажем. Их время на исходе. Китайский океанограф-новатор, несмотря на протесты его дочери Суинь, зовет спасателя-подводника Джонаса Тейлора, чтобы тот помог спасти команду и океан от невиданной угрозы — доисторической 23-метровой акулы, мегалодона. Никто и подумать не мог, что много лет назад Тейлор уже сталкивался с этим чудовищным созданием."
            });
            this.catalogSourse.Add(new Films()
            {
                Name = "Миссия невыполнима: Последствия", Genre = new List <string>()
                {
                    "боевик", "ужасы"
                }, Year = 2018, ImagePath = "Res\\MissionImpossibleFallout.jpg", Description = "Итан Хант и его команда, а также недавно примкнувшие к ним союзники, вынуждены действовать наперегонки со временем, когда новая миссия идет не по плану."
            });
            this.catalogSourse.Add(new Films()
            {
                Name = "Побег из Шоушенка", Genre = new List <string>()
                {
                    "драма"
                }, Year = 1994, ImagePath = "Res\\TheShawshankRedemption.jpg", Description = "Бухгалтер Энди Дюфрейн обвинен в убийстве собственной жены и ее любовника. Оказавшись в тюрьме под названием Шоушенк, он сталкивается с жестокостью и беззаконием, царящими по обе стороны решетки. Каждый, кто попадает в эти стены, становится их рабом до конца жизни. Но Энди, обладающий живым умом и доброй душой, находит подход как к заключенным, так и к охранникам, добиваясь их особого к себе расположения."
            });
            this.catalogSourse.Add(new Films()
            {
                Name = "Форрест Гамп", Genre = new List <string>()
                {
                    "драма", "мелодрама"
                }, Year = 1994, ImagePath = "Res\\ForrestGump.jpg", Description = "От лица главного героя Форреста Гампа, слабоумного безобидного человека с благородным и открытым сердцем, рассказывается история его необыкновенной жизни.Фантастическим образом превращается он в известного футболиста, героя войны, преуспевающего бизнесмена.Он становится миллиардером, но остается таким же бесхитростным, глупым и добрым.Форреста ждет постоянный успех во всем, а он любит девочку, с которой дружил в детстве, но взаимность приходит слишком поздно."
            });
            this.catalogSourse.Add(new Films()
            {
                Name = "Зеленая миля", Genre = new List <string>()
                {
                    "фэнтези", "драма", "криминал", "детектив"
                }, Year = 1999, ImagePath = "Res\\TheGreenMile.jpg", Description = "Пол Эджкомб — начальник блока смертников в тюрьме «Холодная гора», каждый из узников которого однажды проходит «зеленую милю» по пути к месту казни. Пол повидал много заключённых и надзирателей за время работы. Однако гигант Джон Коффи, обвинённый в страшном преступлении, стал одним из самых необычных обитателей блока."
            });
            this.catalogSourse.Add(new Films()
            {
                Name = "Список Шиндлера", Genre = new List <string>()
                {
                    "драма", "биография", "история"
                }, Year = 1993, ImagePath = "Res\\Schindler'sList.jpg", Description = "Фильм рассказывает реальную историю загадочного Оскара Шиндлера, члена нацистской партии, преуспевающего фабриканта, спасшего во время Второй мировой войны почти 1200 евреев."
            });


            List <string> temp = new List <string>();

            this.catalogSourse.ForEach(f => temp.AddRange(f.Genre.ToList()));
            this.genres.AddRange(temp.Distinct());
            this.years.AddRange(this.catalogSourse.Select(c => c.Year).Distinct().ToList());
            this.years.Sort();

            years.ForEach(c => Years.Add(c));
            genres.ForEach(c => Genres.Add(c));

            InitializeComponent();
            DataContext = this;
            this.UpadateSearch();
        }
예제 #5
0
        async void GetGenresAsync()
        {
            if (!IsBusy)
            {
                Exception Error = null;

                try
                {
                    IsBusy = true;
                    var reposiroty = new GenreRepository();
                    var genres     = await reposiroty.GenreMovieListAsync();

                    foreach (var genre in genres)
                    {
                        Genres.Add(genre);
                    }
                }
                catch (Exception ex)
                {
                    Error = ex;
                }
                finally
                {
                    IsBusy = false;
                }

                if (Error != null)
                {
                    await Application.Current.MainPage.DisplayAlert("Falha ao conectar com o Servidor.", Error.Message, "OK");
                }
            }

            return;
        }
예제 #6
0
        private void updateObservableListings() /* call whenever adding/removing a movie from static list */
        {
            Genres.Clear();
            Directors.Clear();
            Actors.Clear();

            foreach (Genre genre in NeoSingleton._allGenres())
            {
                if (!Genres.Contains(genre.Name))
                {
                    Genres.Add(genre.Name);
                }
            }

            foreach (Director director in NeoSingleton._allDirectors())
            {
                if (!Directors.Contains(director.Name))
                {
                    Directors.Add(director.Name);
                }
            }

            foreach (Actor actor in NeoSingleton._allActors())
            {
                if (!Actors.Contains(actor.Name))
                {
                    Actors.Add(actor.Name);
                }
            }
        }
예제 #7
0
        public void AddTag(IDmKeyword tagReference)
        {
            switch (tagReference.Type)
            {
            case TagType.Autor:
                Autors.Add((DmAutor)tagReference);
                break;

            case TagType.Category:
                Categories.Add((DmCategory)tagReference);
                break;

            case TagType.Genre:
                Genres.Add((DmGenre)tagReference);
                break;

            case TagType.People:
                Peoples.Add((DmPeople)tagReference);
                break;

            case TagType.Tag:
                Keywords.Add((DmKeyword)tagReference);
                break;

            case TagType.Collection:
                Collections.Add((DmCollection)tagReference);
                break;
            }
        }
예제 #8
0
        private void OnDeserialized(StreamingContext context)
        {
            foreach (var token in _additionalData["categories"])
            {
                Categories.Add(token["description"].ToString());
            }

            foreach (var token in _additionalData["genres"])
            {
                Genres.Add(token["description"].ToString());
            }

            if (_additionalData.ContainsKey("recommendations"))
            {
                var token = _additionalData["recommendations"];
                if (token["total"] != null)
                {
                    RecommendationCount = token["total"].ToObject <int>();
                }
            }

            if (_additionalData.ContainsKey("metacritic"))
            {
                var token = _additionalData["metacritic"];
                if (token["total"] != null)
                {
                    MetacriticScore = token["score"].ToObject <int>();
                }
            }
        }
예제 #9
0
        public async override Task OnNavigatedToAsync(object parameter, NavigationMode mode, IDictionary <string, object> state)
        {
            try
            {
                // Fill Genres and Kinds dictionaries
                GenresDictionary = await SoundCloudHelper.GetGenres();

                KindsDictionary = await SoundCloudHelper.GetKinds();

                foreach (var g in GenresDictionary)
                {
                    Genres.Add(g.Value);
                }
                foreach (var k in KindsDictionary)
                {
                    Kinds.Add(k.Value);
                }
                // Select first Genre and Kind
                SelectedGenre = Genres.FirstOrDefault();
                SelectedKind  = Kinds.FirstOrDefault();
                await base.OnNavigatedToAsync(parameter, mode, state);
            }
            catch (Exception ex)
            {
                Logger.LogError(this, ex.Message);
                ShowErrorMessage("There was an error during fetching tracks from SoundCloud.");
            }
        }
예제 #10
0
        private void CopyGenres(Media media)
        {
            var c  = Genres.Count;
            var ec = media.Genres.Count;

            while (c > ec)
            {
                Genres.Remove(Genres.ElementAt(--c));
            }

            for (var i = 0; i < ec; i++)
            {
                MediaGenre genre;
                if (c < i + 1)
                {
                    genre = new MediaGenre();
                    Genres.Add(genre);
                }
                else
                {
                    genre = Genres.ElementAt(i);
                }

                genre.CopyFrom(media.Genres.ElementAt(i));
            }
        }
예제 #11
0
 private static List <string> SetGenre(string genres)
 {
     if (!Genres.Contains(genres))
     {
         Genres.Add(genres);
     }
     return(Genres);
 }
예제 #12
0
        private void addNewGenre(object sender, RoutedEventArgs e)
        {
            var g = new Genre();

            Genres.Add(g);
            lv_DSTheLoai.SelectedItem = g;
            lv_DSTheLoai.ScrollIntoView(g);
        }
예제 #13
0
        public MainViewModel()
        {
            settingsHandler.LoadSettings();
            //ShowSeen = settingsHandler.ShowSeen;
            //ShowNotSeen = settingsHandler.ShowNotSeen;

            if (settingsHandler.OpenPreviousOnStartup)
            {
                DataStorage.OpenListFromFile(settingsHandler.PreviousFile);
                currentSaveFileName = settingsHandler.PreviousFile;
                StatusString        = "File loaded: " + currentSaveFileName;
                // only show random movie if list contains a movie
                if (DataStorage.Movies.Count() > 0)
                {
                    //GetRandomMovie();
                    if (DataStorage.MovieExistsInCollection(settingsHandler.PreviousCurrentMovieID))
                    {
                        SelectedMovie = DataStorage.GetMovieWithID(settingsHandler.PreviousCurrentMovieID);
                    }
                    else
                    {
                        //Debug.WriteLine("Before creating new movie from settings " + settingsHandler.PreviousCurrentMovieID);
                        //SelectedMovie = new Movie(settingsHandler.PreviousCurrentMovieID);
                        GetRandomMovie();
                        //Debug.WriteLine("After creating new movie from settings " + settingsHandler.PreviousCurrentMovieID);
                    }
                }
            }

            // connect the icollectionview to observable collection movie
            _movieCollectionView = CollectionViewSource.GetDefaultView(Movies);
            // connect the icollectionview to the observable collection genre
            _genresCollectionView = CollectionViewSource.GetDefaultView(Genres);

            if (Genres.Count == 0)
            {
                Genres.Add("All");
            }

            // sort according to title
            _movieCollectionView.SortDescriptions.Add(new SortDescription("Title", ListSortDirection.Ascending));
            // create filter to filter the collection
            _movieCollectionView.Filter = FullFilter;


            DataStorage.UpdateGenresFull();

            // Not elegant
            _SortByListTerms = new List <string>();
            SortByListTerms.Add("Title asc");
            SortByListTerms.Add("Title desc");
            SortByListTerms.Add("IMDB desc");
            SortByListTerms.Add("IMDB asc");
            SortByListTerms.Add("My rating desc");
            SortByListTerms.Add("My rating asc");
            SortByListTerms.Add("Year desc");
            SortByListTerms.Add("Year asc");
        }
예제 #14
0
 public void SetGenres(MovieCollectorContext _context, Movie movie)
 {
     // TODO - Remove usage of dbContext in the view model
     // Add selected genres from tmdb.org
     foreach (var genre in movie.Genres)
     {
         Genres.Add(_context.Genres.Where(x => x.Name == genre.Name).First().ID.ToString());
     }
 }
예제 #15
0
        private void PopulateGenres()
        {
            Genres.Clear();

            foreach (string genre in m_DataModel.Database.Genres)
            {
                Genres.Add(new MusicCollectionItem(genre, Genres.Count));
            }
        }
예제 #16
0
        private void LoadGenres()
        {
            Genres.Clear();
            var genresFromDb = dm.Genres.ToList();

            foreach (var genre in genresFromDb)
            {
                Genres.Add(new GenreViewModel(genre));
            }
        }
예제 #17
0
        private void Thriller_OnClick(object sender, RoutedEventArgs e)
        {
            if (Thriller.IsChecked == true)
            {
                Genres.Add("Thriller");
            }
            else
            {
                Genres.Remove("Thriller");
            }

            SortMovies();
        }
예제 #18
0
        private void Action_OnClick(object sender, RoutedEventArgs e)
        {
            if (Action.IsChecked == true)
            {
                Genres.Add("Action");
            }
            else
            {
                Genres.Remove("Action");
            }

            SortMovies();
        }
예제 #19
0
        private void Comedy_OnClick(object sender, RoutedEventArgs e)
        {
            if (Comedy.IsChecked == true)
            {
                Genres.Add("Comedy");
            }
            else
            {
                Genres.Remove("Comedy");
            }

            SortMovies();
        }
예제 #20
0
        private void Documentary_OnClick(object sender, RoutedEventArgs e)
        {
            if (Documentary.IsChecked == true)
            {
                Genres.Add("Documentary");
            }
            else
            {
                Genres.Remove("Documentary");
            }

            SortMovies();
        }
예제 #21
0
        private void Horror_OnClick(object sender, RoutedEventArgs e)
        {
            if (Horror.IsChecked == true)
            {
                Genres.Add("Horror");
            }
            else
            {
                Genres.Remove("Horror");
            }

            SortMovies();
        }
예제 #22
0
        private void Drama_OnClick(object sender, RoutedEventArgs e)
        {
            if (Drama.IsChecked == true)
            {
                Genres.Add("Drama");
            }
            else
            {
                Genres.Remove("Drama");
            }

            SortMovies();
        }
예제 #23
0
        private void Romance_OnClick(object sender, RoutedEventArgs e)
        {
            if (Romance.IsChecked == true)
            {
                Genres.Add("Romance");
            }
            else
            {
                Genres.Remove("Romance");
            }

            SortMovies();
        }
예제 #24
0
        public async Task Load()
        {
            dic_Genre generalGenre = new dic_Genre();

            generalGenre.name = "All/Any";
            dic_Product_type generalProductType = new dic_Product_type();

            generalProductType.name = "All/Any";
            dic_condition generalCondition = new dic_condition();

            generalCondition.name = "All/Any";
            using (var client = new HttpClient())
            {
                URLBuilder url     = new URLBuilder("/api/Dictionary/");
                var        request = new HttpRequestMessage()
                {
                    RequestUri = new Uri(url.URL),
                    Method     = HttpMethod.Get,
                };
                var response = await client.SendAsync(request);

                var contents = await response.Content.ReadAsStringAsync();

                if (!response.IsSuccessStatusCode)
                {
                    return;
                }
                DictionaryDto          result = JsonConvert.DeserializeObject <DictionaryDto>(contents);
                IEnumerable <GenreDto> genres = result.Genres;
                Genres.Add(new GenreWrapper(generalGenre));
                foreach (GenreDto g in genres)
                {
                    GenreWrapper wrap = g.createGenre();
                    Genres.Add(wrap);
                }
                IEnumerable <ConditionDto> conditions = result.Conditions;
                Conditions.Add(new ConditionWrapper(generalCondition));
                foreach (ConditionDto c in conditions)
                {
                    Conditions.Add(c.createCondition());
                }
                IEnumerable <ProductTypeDto> productTypes = result.ProductTypes;

                ProductTypes.Add(new ProductTypeWrapper(generalProductType));
                foreach (var p in productTypes)
                {
                    ProductTypes.Add(p.createProductType());
                }
            }
        }
예제 #25
0
        private Genre GetGenre(string genreName)
        {
            foreach (Genre g in Genres)
            {
                if (g.Name == genreName)
                {
                    return(g);
                }
            }
            Genre genre = new Genre(genreName);

            Genres.Add(genre);
            genresDao.Save(Genres);
            return(genre);
        }
예제 #26
0
 public GenreModel()
 {
     Genres.Add(new GenreModel {
         GenreId = 1, GenreTitle = "Fantasy"
     });
     Genres.Add(new GenreModel {
         GenreId = 2, GenreTitle = "Scifi"
     });
     Genres.Add(new GenreModel {
         GenreId = 3, GenreTitle = "Education"
     });
     Genres.Add(new GenreModel {
         GenreId = 4, GenreTitle = "Fiction"
     });
 }
예제 #27
0
 private void lvGenres_ItemChecked(object sender, ItemCheckedEventArgs e)
 {
     if (IsLoadedGenres)
     {
         if (e.Item.Checked)
         {
             Genres.Add((genre)(e.Item as ListViewItem).Tag);
             checkedGenres.Add((genre)(e.Item as ListViewItem).Tag);
         }
         else
         {
             checkedGenres.Add((genre)(e.Item as ListViewItem).Tag);
             Genres.Remove((genre)(e.Item as ListViewItem).Tag);
         }
     }
 }
예제 #28
0
        public void TestInsert()
        {
            for (int i = 0; i < 200; i++)
            {
                Random random = new Random();
                Book   book   = new Book();
                book.DateInsert = DateTimeOffset.Now;
                book.DateUpdate = DateTimeOffset.Now;
                book.DateWrite  = new DateTime(1857 + i, random.Next(1, 12), random.Next(1, 28));
                book.Title      = "дата издания " + book.DateWrite;

                Author author  = new Author();
                var    fixture = new Fixture();
                author.firstName  = new Fixture().Create <string>();
                author.middleName = new Fixture().Create <string>();
                author.lastName   = new Fixture().Create <string>();
                author.DateInsert = DateTimeOffset.Now;
                author.DateUpdate = DateTime.Now;

                Genre genre = new Genre();
                genre.name       = new Fixture().Create <string>();
                genre.DateInsert = DateTimeOffset.Now;
                genre.DateUpdate = DateTimeOffset.Now;


                LibraryCards libraryCards = new LibraryCards();
                libraryCards.date_refund = DateTime.Now.AddDays(7);

                Person person = new Person();
                person.FirstName  = new Fixture().Create <string>();
                person.MiddleName = new Fixture().Create <string>();
                person.LastName   = new Fixture().Create <string>();

                book.Genre.Add(genre);
                book.author = author;
                genre.book.Add(book);
                libraryCards.Book   = book;
                libraryCards.Person = person;

                this.Books.Add(book);
                Genres.Add(genre);
                LibraryCards.Add(libraryCards);
                Persons.Add(person);
                Authors.Add(author);
                SaveChanges();
            }
        }
예제 #29
0
        /// <summary>
        /// Adds a genre to the item
        /// </summary>
        /// <param name="name">The name.</param>
        /// <exception cref="System.ArgumentNullException"></exception>
        public void AddGenre(string name)
        {
            if (string.IsNullOrWhiteSpace(name))
            {
                throw new ArgumentNullException();
            }

            if (Genres == null)
            {
                Genres = new List <string>();
            }

            if (!Genres.Contains(name, StringComparer.OrdinalIgnoreCase))
            {
                Genres.Add(name);
            }
        }
예제 #30
0
        /// <summary>
        /// Categorise the specified selected objects
        /// </summary>
        /// <param name="selectedObjects"></param>
        public GroupedSelection(IEnumerable <object> selectedObjects)
        {
            // Save the unprocessed objects.
            SelectedObjects = selectedObjects;

            // Group the objects into sets of Song, PlaylistItem, IPlaylist, Artist, ArtistAlbum, Album and Genre (string) items
            foreach (object selectedObject in selectedObjects)
            {
                if (selectedObject is Song song)
                {
                    Songs.Add(song);
                }
                else if (selectedObject is PlaylistItem playlistItem)
                {
                    PlaylistItems.Add(playlistItem);
                }
                else if (selectedObject is Playlist playlist)
                {
                    Playlists.Add(playlist);
                }
                else if (selectedObject is Artist artist)
                {
                    Artists.Add(artist);
                }
                else if (selectedObject is ArtistAlbum artistAlbum)
                {
                    ArtistAlbums.Add(artistAlbum);
                }
                else if (selectedObject is Album album)
                {
                    Albums.Add(album);
                }
                else if (selectedObject is string str)
                {
                    Genres.Add(str);
                }
            }

            // Determine if there is a parent playlist
            if (PlaylistItems.Count > 0)
            {
                ParentPlaylist = DBTest.Playlists.GetParentPlaylist(PlaylistItems[0]);
            }
        }