38 lines
930 B
Python
38 lines
930 B
Python
import datetime
|
|
from typing import List
|
|
|
|
import FAAPI
|
|
import Comment
|
|
import User
|
|
|
|
|
|
class Submission:
|
|
"""
|
|
A FurAffinity submission.
|
|
"""
|
|
|
|
def __init__(self, id: int):
|
|
self.id: int = id
|
|
self.title: str = None
|
|
self.author: User.User = None
|
|
self.description: str = None
|
|
self.tags: List[str] = None
|
|
self.timestamp: datetime = None
|
|
self.category: str = None
|
|
self.theme: str = None
|
|
self.species: str = None
|
|
self.gender: str = None
|
|
self.faves: int = None
|
|
self.comments: List[Comment.Comment] = None
|
|
self.views: int = None
|
|
|
|
@property
|
|
def url(self):
|
|
if self.id and self.id > 0:
|
|
return '{}/view/{}'.format(FAAPI.FA_BASE_URL, self.id)
|
|
else:
|
|
return None
|
|
|
|
def __str__(self):
|
|
return '{} - {} ({}/view/{})'.format(self.author, self.title, FAAPI.FA_BASE_URL, self.id)
|