2021-10-04 13:14:32 -07:00
|
|
|
""" outlink data """
|
2021-12-15 12:40:31 -08:00
|
|
|
from .activitypub_mixin import ActivitypubMixin
|
2021-10-04 13:14:32 -07:00
|
|
|
from .base_model import BookWyrmModel
|
|
|
|
from . import fields
|
|
|
|
|
2021-10-07 16:53:39 -07:00
|
|
|
|
2021-12-15 12:40:31 -08:00
|
|
|
class Link(ActivitypubMixin, BookWyrmModel):
|
2021-10-04 13:14:32 -07:00
|
|
|
"""a link to a website"""
|
|
|
|
|
2021-12-15 12:40:31 -08:00
|
|
|
url = fields.URLField(max_length=255)
|
2021-10-04 13:14:32 -07:00
|
|
|
name = fields.CharField(max_length=255)
|
|
|
|
|
2021-12-15 12:40:31 -08:00
|
|
|
def save(self, *args, **kwargs):
|
|
|
|
"""create a link"""
|
|
|
|
# this is never broadcast, the owning model broadcasts an update
|
|
|
|
if "broadcast" in kwargs:
|
|
|
|
del kwargs["broadcast"]
|
|
|
|
return super().save(*args, **kwargs)
|
|
|
|
|
2021-10-04 13:14:32 -07:00
|
|
|
|
|
|
|
class FileLink(Link):
|
|
|
|
"""a link to a file"""
|
|
|
|
|
|
|
|
filetype = fields.CharField(max_length=5)
|