[notifications] Add click to finish

This commit is contained in:
2024-11-24 09:36:50 -05:00
parent fd38046113
commit 51c1acd677
15 changed files with 23 additions and 21 deletions

View File

@ -67,6 +67,9 @@ class Beer(ScrobblableMixin):
def get_absolute_url(self) -> str:
return reverse("beers:beer_detail", kwargs={"slug": self.uuid})
def __str__(self):
return f"{self.title} by {self.producer}"
@property
def subtitle(self):
return self.producer.name

View File

@ -150,9 +150,6 @@ class Book(LongPlayScrobblableMixin):
url = self.cover_medium.url
return url
def get_start_url(self):
return reverse("scrobbles:start", kwargs={"uuid": self.uuid})
def get_absolute_url(self):
return reverse("books:book_detail", kwargs={"slug": self.uuid})

View File

@ -38,9 +38,6 @@ class Mood(ScrobblableMixin):
def get_absolute_url(self):
return reverse("moods:mood-detail", kwargs={"slug": self.uuid})
def get_start_url(self):
return reverse("scrobbles:start", kwargs={"uuid": self.uuid})
@property
def subtitle(self) -> str:
return ""

View File

@ -95,9 +95,14 @@ class ScrobblableMixin(TimeStampedModel):
)
return Scrobble.create_or_update(self, user_id, scrobble_data)
def get_start_url(self):
@property
def start_url(self):
return reverse("scrobbles:start", kwargs={"uuid": self.uuid})
@property
def finish_url(self) -> str:
return reverse("scrobbles:finish", kwargs={"uuid": self.uuid})
@property
def strings(self) -> ScrobblableConstants:
return ScrobblableConstants()

View File

@ -309,5 +309,6 @@ def send_notifications_for_scrobble(scrobble_id):
"Title": scrobble.media_obj.strings.verb,
"Priority": scrobble.media_obj.strings.priority,
"Tags": scrobble.media_obj.strings.tags,
"Click": scrobble.finish_url,
},
)

View File

@ -169,9 +169,6 @@ class VideoGame(LongPlayScrobblableMixin):
slug = self.title.lower().replace(" ", "-")
return f"https://igdb.com/games/{slug}"
def get_start_url(self):
return reverse("scrobbles:start", kwargs={"uuid": self.uuid})
@property
def logdata_cls(self):
return VideoGameLogData

View File

@ -23,6 +23,7 @@ from videos.imdb import lookup_video_from_imdb
logger = logging.getLogger(__name__)
BNULL = {"blank": True, "null": True}
class Channel(TimeStampedModel):
uuid = models.UUIDField(default=uuid4, editable=False, **BNULL)
name = models.CharField(max_length=255)
@ -75,6 +76,7 @@ class Channel(TimeStampedModel):
logger.warning("Not implemented yet")
return
class Series(TimeStampedModel):
uuid = models.UUIDField(default=uuid4, editable=False, **BNULL)
name = models.CharField(max_length=255)
@ -223,9 +225,9 @@ class Video(ScrobblableMixin):
def __str__(self):
if self.video_type == self.VideoType.TV_EPISODE:
return f"{self.title} - {self.tv_series} - Season {self.season_number}, Episode {self.episode_number}"
return f"{self.title} / [S{self.season_number}E{self.episode_number}] {self.tv_series}"
if self.video_type == self.VideoType.YOUTUBE:
return f"{self.title} - {self.channel}"
return f"{self.title} / {self.channel}"
return self.title
def get_absolute_url(self):