From 5c8378f2d4014673a7d2693f149f1915e94af8a9 Mon Sep 17 00:00:00 2001 From: Jannat Patel Date: Wed, 15 Jan 2025 12:31:23 +0530 Subject: [PATCH] fix: changed sorting order of batch list --- frontend/src/pages/Batches.vue | 10 ++++++++-- lms/lms/utils.py | 4 ++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/frontend/src/pages/Batches.vue b/frontend/src/pages/Batches.vue index 9e69eb72..f2868bb4 100644 --- a/frontend/src/pages/Batches.vue +++ b/frontend/src/pages/Batches.vue @@ -55,7 +55,7 @@
@@ -101,7 +101,8 @@ const categories = ref([]) const currentCategory = ref(null) const title = ref('') const filters = ref({}) -const currentTab = ref('All') +const currentTab = ref(user.data?.is_student ? 'All' : 'Upcoming') +const orderBy = ref('start_date') onMounted(() => { setFiltersFromQuery() @@ -141,6 +142,7 @@ const updateBatches = () => { updateFilters() batches.update({ filters: filters.value, + orderBy: orderBy.value, }) batches.reload() } @@ -170,18 +172,22 @@ const updateTitleFilter = () => { } const updateTabFilter = () => { + orderBy.value = 'start_date' if (!user.data) { return } if (currentTab.value == 'Enrolled' && user.data?.is_student) { filters.value['enrolled'] = 1 + orderBy.value = 'start_date desc' } else if (user.data?.is_student) { delete filters.value['enrolled'] } else { delete filters.value['start_date'] delete filters.value['published'] + orderBy.value = 'start_date desc' if (currentTab.value == 'Upcoming') { filters.value['start_date'] = ['>=', dayjs().format('YYYY-MM-DD')] + orderBy.value = 'start_date' } else if (currentTab.value == 'Archived') { filters.value['start_date'] = ['<', dayjs().format('YYYY-MM-DD')] } else if (currentTab.value == 'Unpublished') { diff --git a/lms/lms/utils.py b/lms/lms/utils.py index 24411553..bc02ac79 100644 --- a/lms/lms/utils.py +++ b/lms/lms/utils.py @@ -1851,7 +1851,7 @@ def enroll_in_program_course(program, course): @frappe.whitelist(allow_guest=True) -def get_batches(filters=None, start=0, page_length=20): +def get_batches(filters=None, start=0, page_length=20, order_by="start_date"): if not filters: filters = {} @@ -1884,7 +1884,7 @@ def get_batches(filters=None, start=0, page_length=20): "published", "category", ], - order_by="start_date desc", + order_by=order_by, start=start, page_length=page_length, )