Prechádzať zdrojové kódy

Allow profile disable of lastfm imports

Colin Powell 2 rokov pred
rodič
commit
8042c726b0

+ 18 - 0
vrobbler/apps/profiles/migrations/0008_userprofile_lastfm_auto_import.py

@@ -0,0 +1,18 @@
+# Generated by Django 4.1.7 on 2023-04-06 17:36
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ("profiles", "0007_alter_userprofile_timezone"),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name="userprofile",
+            name="lastfm_auto_import",
+            field=models.BooleanField(default=False),
+        ),
+    ]

+ 1 - 0
vrobbler/apps/profiles/models.py

@@ -23,6 +23,7 @@ class UserProfile(TimeStampedModel):
     )
     lastfm_username = models.CharField(max_length=255, **BNULL)
     lastfm_password = EncryptedField(**BNULL)
+    lastfm_auto_import = models.BooleanField(default=False)
 
     def __str__(self):
         return f"User profile for {self.user}"

+ 3 - 1
vrobbler/apps/scrobbles/utils.py

@@ -197,7 +197,9 @@ def import_lastfm_for_all_users():
     """Grab a list of all users with LastFM enabled and kickoff imports for them"""
     LastFmImport = apps.get_model("scrobbles", "LastFMImport")
     lastfm_enabled_user_ids = UserProfile.objects.filter(
-        lastfm_username__isnull=False, lastfm_password__isnull=False
+        lastfm_username__isnull=False,
+        lastfm_password__isnull=False,
+        lastfm_auto_import=True,
     ).values_list("user_id", flat=True)
 
     for user_id in lastfm_enabled_user_ids: