예제 #1
0
 public void OnGet(string searchString)
 {
     FoundUsers   = ContentMaker.SearchUsers(searchString);
     FoundBooks   = ContentMaker.SearchBooks(searchString);
     FoundFilms   = ContentMaker.SearchFilms(searchString);
     FoundSerials = ContentMaker.SearchSerials(searchString);
 }
예제 #2
0
 public void OnGet(int?genreId, string searchString)
 {
     SerialsCount = genreId is null
         ? ContentMaker.SearchBooks(searchString).Count()
         : Repository
                    .Get <SerialGenre>(g => g.Id == genreId)
                    .Serials
                    .Select(e => (Serial)e)
                    .Intersect(ContentMaker.SearchSerials(searchString))
                    .Count();
 }
예제 #3
0
 public void OnGet(int?genreId, string searchString)
 {
     FilmsCount = genreId is null
         ? ContentMaker.SearchBooks(searchString).Count()
         : Repository
                  .Get <FilmGenre>(g => g.Id == genreId)
                  .Films
                  .Select(e => (Film)e)
                  .Intersect(ContentMaker.SearchFilms(searchString))
                  .Count();
 }
예제 #4
0
        public void OnGet(int id)
        {
            Film         = Repository.Get <Film>(film => film.Id == id);
            SimilarFilms = ContentMaker.GetSimilarFilms(Film).ToList();

            var user = Auth.GetUser(HttpContext);

            if (user == null)
            {
                return;
            }
            Evaluation = Repository
                         .Get <FilmEvaluation>(e => e.User.First() == user && e.Film.First() == Film)?.Value;
            IsPending = user.PendingFilms.Contains(Film);
        }
예제 #5
0
        public void OnGet(int id)
        {
            Book         = Repository.Get <Book>(book => book.Id == id);
            SimilarBooks = ContentMaker.GetSimilarBooks(Book).ToList();

            var user = Auth.GetUser(HttpContext);

            if (user == null)
            {
                return;
            }
            Evaluation = Repository
                         .Get <BookEvaluation>(e => e.User.First() == user && e.Book.First() == Book)?.Value;
            IsPending = user.PendingBooks.Contains(Book);
        }
예제 #6
0
        public void OnGet(int id)
        {
            Serial         = Repository.Get <Serial>(serial => serial.Id == id);
            SimilarSerials = ContentMaker.GetSimilarSerials(Serial).ToList();

            var user = Auth.GetUser(HttpContext);

            if (user == null)
            {
                return;
            }
            Evaluation = Repository
                         .Get <SerialEvaluation>(e => e.User.First() == user && e.Serial.First() == Serial)?.Value;
            IsPending = user.PendingSerials.Contains(Serial);
        }
예제 #7
0
        public void OnGet(int?genreId, string sort, string searchString, int count)
        {
            Books = genreId is null
                ? ContentMaker.SearchBooks(searchString)
                : Repository
                    .Get <BookGenre>(g => g.Id == genreId)
                    .Books
                    .Select(e => (Book)e)
                    .Intersect(ContentMaker.SearchBooks(searchString));

            Books = sort switch
            {
                "alphabet" => Books.OrderBy(e => e.Title),
                "rating" => Books.OrderBy(ContentMaker.GetRating),
                "new" => Books.OrderByDescending(e => e.Year),
                "old" => Books.OrderBy(e => e.Year),
                _ => Books
            };

            Books = Books.Skip(count).Take(5);
        }
    }
예제 #8
0
        public void OnGet(int?genreId, string sort, string searchString, int count)
        {
            Serials = genreId is null
                ? ContentMaker.SearchSerials(searchString)
                : Repository
                      .Get <SerialGenre>(g => g.Id == genreId)
                      .Serials
                      .Select(e => (Serial)e)
                      .Intersect(ContentMaker.SearchSerials(searchString));

            Serials = sort switch
            {
                "alphabet" => Serials.OrderBy(e => e.Title),
                "rating" => Serials.OrderBy(ContentMaker.GetRating),
                "new" => Serials.OrderByDescending(e => e.StartYear),
                "old" => Serials.OrderBy(e => e.StartYear),
                _ => Serials
            };

            Serials = Serials.Skip(count).Take(5);
        }
    }
예제 #9
0
 public void OnGet()
 {
     Popular = ContentMaker.GetMostPopular().ToList();
 }