From defb75d1672c2bec584066e20f084aecac16bb04 Mon Sep 17 00:00:00 2001 From: ayishanishana21 Date: Wed, 16 Sep 2026 13:38:51 +0530 Subject: [PATCH] added flag as is_active in the fossmdlcourses --- events/formsv2.py | 5 ++-- events/helpers.py | 10 ++++---- events/migrations/0059_auto_20260916_2154.py | 25 ++++++++++++++++++++ events/models.py | 2 ++ events/viewsv2.py | 2 +- 5 files changed, 35 insertions(+), 9 deletions(-) create mode 100644 events/migrations/0059_auto_20260916_2154.py diff --git a/events/formsv2.py b/events/formsv2.py index 7f7cdab30..62fe8182b 100644 --- a/events/formsv2.py +++ b/events/formsv2.py @@ -58,7 +58,7 @@ class TrainingRequestForm(forms.ModelForm): foss_category = forms.ChoiceField(choices=[('', '---------'), (0, 'Foss available only for Training'), (1, 'Foss available for Training and Test')]) course = forms.ModelChoiceField(empty_label='---------', queryset=CourseMap.objects.filter(category=0).select_related('foss', 'course')) batch = forms.ModelChoiceField(empty_label='---------', queryset=StudentBatch.objects.none()) - fossmdlmap = forms.ModelChoiceField( label="Test Type", queryset=FossMdlCourses.objects.all().select_related('level', 'language'), required=False, empty_label='---------',) + fossmdlmap = forms.ModelChoiceField( label="Test Type", queryset=FossMdlCourses.objects.filter(is_active=True).select_related('level', 'language'), required=False, empty_label='---------',) training_planner = forms.CharField() class Meta(object): @@ -101,8 +101,7 @@ def __init__(self, *args, **kwargs): fossmdlmap = kwargs.pop('fossmdlmap', None) if fossmdlmap: self.fields['fossmdlmap'].queryset = ( - FossMdlCourses.objects.all() - ) + FossMdlCourses.objects.filter(is_active=True)) if kwargs and 'data' in kwargs: # Generating students batch list based on department diff --git a/events/helpers.py b/events/helpers.py index ea1764e97..44b0ee192 100644 --- a/events/helpers.py +++ b/events/helpers.py @@ -83,14 +83,14 @@ def send_bulk_student_reset_mail(ac, batches, count, new_password, user): def get_fossmdlcourse(foss_id, fossmdlmap_id=None): if fossmdlmap_id is not None: - return FossMdlCourses.objects.get(id = fossmdlmap_id) + return FossMdlCourses.objects.get(id = fossmdlmap_id,is_active=True) try: - fossmdlcourse = FossMdlCourses.objects.get(foss_id = foss_id) + fossmdlcourse = FossMdlCourses.objects.get(foss_id = foss_id,is_active=True) except FossMdlCourses.MultipleObjectsReturned: advanced=3 #default english=22 #default try: - fossmdlcourse = FossMdlCourses.objects.get(foss_id=foss_id, language_id=english, level_id=advanced) + fossmdlcourse = FossMdlCourses.objects.get(foss_id=foss_id, language_id=english, level_id=advanced,is_active=True) except FossMdlCourses.DoesNotExist: - fossmdlcourse = FossMdlCourses.objects.get(foss_id=foss_id, language__isnull=True, level__isnull=True) - return fossmdlcourse \ No newline at end of file + fossmdlcourse = FossMdlCourses.objects.get(foss_id=foss_id, language__isnull=True, level__isnull=True,is_active=True) + return fossmdlcourse diff --git a/events/migrations/0059_auto_20260916_2154.py b/events/migrations/0059_auto_20260916_2154.py new file mode 100644 index 000000000..eb8fbc8d0 --- /dev/null +++ b/events/migrations/0059_auto_20260916_2154.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.29 on 2026-09-16 16:24 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('events', '0058_auto_20260818_1620'), + ] + + operations = [ + migrations.AddField( + model_name='fossmdlcourses', + name='is_active', + field=models.BooleanField(default=True), + ), + migrations.AlterField( + model_name='academicpaymentstatus', + name='subscription', + field=models.CharField(choices=[('', '-----'), ('365', 'One_Year'), ('182', 'Six_Months'), ('455', 'Fifteen_Months')], max_length=50), + ), + ] diff --git a/events/models.py b/events/models.py index e7acc0073..6c2fa9214 100755 --- a/events/models.py +++ b/events/models.py @@ -488,6 +488,8 @@ class FossMdlCourses(models.Model): mdlquiz_id = models.PositiveIntegerField() language = models.ForeignKey(Language, on_delete=models.PROTECT, null=True, blank=True) level = models.ForeignKey(Level, on_delete=models.PROTECT, null=True, blank=True) + is_active = models.BooleanField(default=True) + def __str__(self): if self.language is None: diff --git a/events/viewsv2.py b/events/viewsv2.py index 0d9cda08c..61568c6db 100755 --- a/events/viewsv2.py +++ b/events/viewsv2.py @@ -292,7 +292,7 @@ def get_language_level_option(request): pass if course_id: cm = CourseMap.objects.get(id=course_id) - fmdl = FossMdlCourses.objects.filter(foss_id=cm.foss_id) + fmdl = FossMdlCourses.objects.filter(foss_id=cm.foss_id,is_active=True) for item in fmdl: item_name = str(item).strip().lower() if not include_basic and "basic" in item_name: