From 3f13b8120cd16d6ec4f135fc043ae906233970b7 Mon Sep 17 00:00:00 2001 From: Andrey Groza Date: Tue, 24 Sep 2019 01:23:07 +0300 Subject: [PATCH 1/2] feat(rating): add rating --- app/Http/Controllers/RatingController.php | 23 +++++++++++++ database/factories/ReadChapterFactory.php | 1 - resources/lang/en/layout.php | 5 +++ resources/lang/en/rating.php | 8 +++++ resources/lang/ru/layout.php | 5 +++ resources/lang/ru/rating.php | 8 +++++ resources/views/layouts/app.blade.php | 7 +++- resources/views/rating/index.blade.php | 30 +++++++++++++++++ routes/web.php | 2 ++ .../Http/Controllers/RatingControllerTest.php | 32 +++++++++++++++++++ 10 files changed, 119 insertions(+), 2 deletions(-) create mode 100644 app/Http/Controllers/RatingController.php create mode 100644 resources/lang/en/layout.php create mode 100644 resources/lang/en/rating.php create mode 100644 resources/lang/ru/layout.php create mode 100644 resources/lang/ru/rating.php create mode 100644 resources/views/rating/index.blade.php create mode 100644 tests/Feature/Http/Controllers/RatingControllerTest.php diff --git a/app/Http/Controllers/RatingController.php b/app/Http/Controllers/RatingController.php new file mode 100644 index 000000000..fb5abd277 --- /dev/null +++ b/app/Http/Controllers/RatingController.php @@ -0,0 +1,23 @@ +orderBy('read_chapters_count', 'DESC') + ->get(); + + if (request()->wantsJson()) { + return $users; + } + + return view('rating.index', [ + 'users' => $users, + ]); + } +} diff --git a/database/factories/ReadChapterFactory.php b/database/factories/ReadChapterFactory.php index a62631e0b..83d101d15 100644 --- a/database/factories/ReadChapterFactory.php +++ b/database/factories/ReadChapterFactory.php @@ -11,6 +11,5 @@ $factory->define(ReadChapter::class, function (Faker $faker) { return [ 'chapter_id' => factory(Chapter::class)->create()->id, - 'user_id' => factory(User::class)->create()->id, ]; }); diff --git a/resources/lang/en/layout.php b/resources/lang/en/layout.php new file mode 100644 index 000000000..a95431337 --- /dev/null +++ b/resources/lang/en/layout.php @@ -0,0 +1,5 @@ + 'Rating', +]; diff --git a/resources/lang/en/rating.php b/resources/lang/en/rating.php new file mode 100644 index 000000000..8b577d536 --- /dev/null +++ b/resources/lang/en/rating.php @@ -0,0 +1,8 @@ + 'Users rating', + 'positions' => 'Positions', + 'user' => 'User', + 'number_of_points' => 'Number of points' +]; diff --git a/resources/lang/ru/layout.php b/resources/lang/ru/layout.php new file mode 100644 index 000000000..07da86940 --- /dev/null +++ b/resources/lang/ru/layout.php @@ -0,0 +1,5 @@ + 'Рейтинг', +]; diff --git a/resources/lang/ru/rating.php b/resources/lang/ru/rating.php new file mode 100644 index 000000000..b0e5167ef --- /dev/null +++ b/resources/lang/ru/rating.php @@ -0,0 +1,8 @@ + 'Рейтинг пользователей', + 'positions' => 'Позиция', + 'user' => 'Пользователь', + 'number_of_points' => 'Количество очков' +]; diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php index 8db12e154..26e6fa9f9 100644 --- a/resources/views/layouts/app.blade.php +++ b/resources/views/layouts/app.blade.php @@ -33,7 +33,12 @@