diff --git a/course_discovery/apps/core/admin.py b/course_discovery/apps/core/admin.py index d6804fb0ab..9a61866bc2 100644 --- a/course_discovery/apps/core/admin.py +++ b/course_discovery/apps/core/admin.py @@ -40,7 +40,7 @@ class CurrencyAdmin(admin.ModelAdmin): class PartnerAdmin(admin.ModelAdmin): fieldsets = ( (None, { - 'fields': ('name', 'short_code', 'lms_url', 'lms_admin_url', 'studio_url', 'publisher_url', 'site') + 'fields': ('name', 'short_code', 'lms_url', 'lms_admin_url', 'studio_url', 'publisher_url', 'site', 'is_disabled',) }), (_('API Configuration'), { 'description': _('Configure the APIs that will be used to retrieve data.'), diff --git a/course_discovery/apps/core/migrations/0019_auto_20240402_1929.py b/course_discovery/apps/core/migrations/0019_auto_20240402_1929.py new file mode 100644 index 0000000000..ddccf2d83f --- /dev/null +++ b/course_discovery/apps/core/migrations/0019_auto_20240402_1929.py @@ -0,0 +1,23 @@ +# Generated by Django 2.2.16 on 2024-04-02 19:29 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('core', '0018_auto_20200414_0739'), + ] + + operations = [ + migrations.AddField( + model_name='historicalpartner', + name='is_disabled', + field=models.BooleanField(default=False, verbose_name='Disable Partner'), + ), + migrations.AddField( + model_name='partner', + name='is_disabled', + field=models.BooleanField(default=False, verbose_name='Disable Partner'), + ), + ] diff --git a/course_discovery/apps/core/models.py b/course_discovery/apps/core/models.py index 589bd364b9..54f41f0f2c 100644 --- a/course_discovery/apps/core/models.py +++ b/course_discovery/apps/core/models.py @@ -98,6 +98,7 @@ class Partner(TimeStampedModel): ) analytics_url = models.URLField(max_length=255, blank=True, verbose_name=_('Analytics API URL'), default='') analytics_token = models.CharField(max_length=255, blank=True, verbose_name=_('Analytics Access Token'), default='') + is_disabled = models.BooleanField(verbose_name=_('Disable Partner'), default=False) history = HistoricalRecords() diff --git a/course_discovery/apps/course_metadata/management/commands/refresh_course_metadata.py b/course_discovery/apps/course_metadata/management/commands/refresh_course_metadata.py index 3357fa70d9..a6fb58f85d 100644 --- a/course_discovery/apps/course_metadata/management/commands/refresh_course_metadata.py +++ b/course_discovery/apps/course_metadata/management/commands/refresh_course_metadata.py @@ -82,7 +82,7 @@ def handle(self, *args, **options): signal.disconnect(receiver=api_change_receiver, sender=model) # For each partner defined... - partners = Partner.objects.all() + partners = Partner.objects.filter(is_disabled=False) # If a specific partner was indicated, filter down the set partner_code = options.get('partner_code')