[scrobbles] Allow skipping the Archivebox push
This commit is contained in:
@ -27,7 +27,7 @@ def set_default_timezone(apps, schema_editor):
|
|||||||
)
|
)
|
||||||
):
|
):
|
||||||
s.timezone = "Europe/Paris"
|
s.timezone = "Europe/Paris"
|
||||||
s.save(update_fields=["timezone"])
|
s.save(update_fields=["timezone"], push_media=False)
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|||||||
@ -554,7 +554,7 @@ class Scrobble(TimeStampedModel):
|
|||||||
long_play_seconds = models.BigIntegerField(**BNULL)
|
long_play_seconds = models.BigIntegerField(**BNULL)
|
||||||
long_play_complete = models.BooleanField(**BNULL)
|
long_play_complete = models.BooleanField(**BNULL)
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
def save(self, push_media=True, *args, **kwargs):
|
||||||
if not self.uuid:
|
if not self.uuid:
|
||||||
self.uuid = uuid4()
|
self.uuid = uuid4()
|
||||||
|
|
||||||
@ -569,9 +569,11 @@ class Scrobble(TimeStampedModel):
|
|||||||
self.timestamp = self.timestamp.replace(microsecond=0)
|
self.timestamp = self.timestamp.replace(microsecond=0)
|
||||||
self.media_type = self.MediaType(self.media_obj.__class__.__name__)
|
self.media_type = self.MediaType(self.media_obj.__class__.__name__)
|
||||||
|
|
||||||
pushable_media = hasattr(
|
pushable_media = (
|
||||||
self.media_obj, "push_to_archivebox"
|
hasattr(self.media_obj, "push_to_archivebox")
|
||||||
) and callable(self.media_obj.push_to_archivebox)
|
and callable(self.media_obj.push_to_archivebox)
|
||||||
|
and push_media
|
||||||
|
)
|
||||||
|
|
||||||
if pushable_media and self.user.profile.archivebox_url:
|
if pushable_media and self.user.profile.archivebox_url:
|
||||||
try:
|
try:
|
||||||
|
|||||||
Reference in New Issue
Block a user