From e99a0552bbd4d5d70236bc427af25aad1cc8cb26 Mon Sep 17 00:00:00 2001 From: formsdev <136701234+formsdev@users.noreply.github.com> Date: Wed, 15 Nov 2023 14:38:53 +0530 Subject: [PATCH] Fix template limit slider (#239) --- app/Http/Controllers/TemplateController.php | 17 ++++++----------- .../pages/welcome/TemplatesSlider.vue | 9 ++++++--- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/app/Http/Controllers/TemplateController.php b/app/Http/Controllers/TemplateController.php index 1137a5d..151f0d6 100644 --- a/app/Http/Controllers/TemplateController.php +++ b/app/Http/Controllers/TemplateController.php @@ -13,18 +13,10 @@ class TemplateController extends Controller { public function index(Request $request) { - $limit = null; - if ($request->offsetExists('limit') && $request->get('limit') > 0) { - $limit = (int)$request->get('limit'); - } + $limit = (int)$request->get('limit', 0); + $onlyMy = (bool)$request->get('onlymy', false); - $onlyMy = false; - if ($request->offsetExists('onlymy') && $request->get('onlymy')) { - $onlyMy = true; - } - - $templates = Template::limit($limit) - ->when(Auth::check(), function ($query) use ($onlyMy) { + $templates = Template::when(Auth::check(), function ($query) use ($onlyMy) { if ($onlyMy) { $query->where('creator_id', Auth::id()); } else { @@ -37,6 +29,9 @@ class TemplateController extends Controller ->when(!Auth::check(), function ($query) { $query->where('publicly_listed', true); }) + ->when($limit > 0, function ($query) use ($limit) { + $query->limit($limit); + }) ->orderByDesc('created_at') ->get(); diff --git a/resources/js/components/pages/welcome/TemplatesSlider.vue b/resources/js/components/pages/welcome/TemplatesSlider.vue index 1f0309a..eb82868 100644 --- a/resources/js/components/pages/welcome/TemplatesSlider.vue +++ b/resources/js/components/pages/welcome/TemplatesSlider.vue @@ -21,7 +21,7 @@ class="w-full inline-flex flex-nowrap overflow-hidden [mask-image:_linear-gradient(to_right,transparent_0,_black_128px,_black_calc(100%-128px),transparent_100%)]" > @@ -42,7 +42,10 @@ export default { computed: { ...mapState({ templates: state => state['open/templates'].content - }) + }), + sliderTemplates () { + return this.templates.slice(0, 20) + } }, watch: { @@ -54,7 +57,7 @@ export default { }, mounted() { - store.dispatch('open/templates/loadAll', {'limit':10}) + store.dispatch('open/templates/loadAll', { limit: 20 }) }, methods: {