class User(db.Model):
    __tablename__ = 'users'

    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(50), nullable=False, unique=True)
    password = db.Column(db.String(200), nullable=False)

    def __init__(self, username, password):
        self.username = username
        self.password = password
class Message(db.Model):
    __tablename__ = 'MESSAGES'
    messageID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    orig_msg = db.Column(db.String(2048), nullable=False)
    tl_msg = db.Column(db.String(2048), nullable=True)
    region = db.Column(db.String(2), nullable=True)
    username = db.Column(db.String(64), nullable=True)

    def __init__(self, orig_msg, tl_msg, region, username):
        self.orig_msg = orig_msg
        self.tl_msg = tl_msg
        self.region = region
        self.username = username
class Gallery(db.Model):
    __tablename__ = 'GALLERY'
    artworkID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    artworkLink = db.Column(db.String(2048), nullable=False)
    artistLink = db.Column(db.String(2048), nullable=True)
    username = db.Column(db.String(64), nullable=True)
    title = db.Column(db.String(64), nullable=True)

    def __init__(self, artworkLink, username, title, artistLink):
        self.artworkLink = artworkLink
        self.artistLink = artistLink
        self.username = username
        self.title = title
class Games(db.Model):
    __tablename__ = 'GAMES'
    gameID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    gameLink = db.Column(db.String(2048), nullable=False)
    gitLink = db.Column(db.String(2048), nullable=True)
    title = db.Column(db.String(64), nullable=False)
    description = db.Column(db.String(256), nullable=True)

    def __init__(self, gameLink, gitLink, title, description):
        self.gameLink = gameLink
        self.gitLink = gitLink
        self.title = title
        self.description = description
Example #5
0
class Video(db.Model):
    __tablename__ = 'VIDEOS'
    videoID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    videoLink = db.Column(db.String(256), nullable=False)
    artistLink = db.Column(db.String(256), nullable=True)
    username = db.Column(db.String(64), nullable=True)
    title = db.Column(db.String(64), nullable=True)

    def __init__(self, videoLink, username, title, artistLink):
        self.videoLink = videoLink
        self.artistLink = artistLink
        self.username = username
        self.title = title
class Animation(db.Model):
    __tablename__ = 'ANIMATION'
    animationID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    animationLink = db.Column(db.String(2048), nullable=False)
    artistLink = db.Column(db.String(2048), nullable=True)
    username = db.Column(db.String(64), nullable=True)
    title = db.Column(db.String(64), nullable=True)

    def __init__(self, animationLink, username, title, artistLink):
        self.animationLink = animationLink
        self.artistLink = artistLink
        self.username = username
        self.title = title
class Message(db.Model):
    __tablename__ = 'MESSAGES'
    messageID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    orig_msg = db.Column(db.String(2048), nullable=False)
    tl_msg = db.Column(db.String(2048), nullable=True)
    # Longest is Iofi's name with her katakana
    recipient = db.Column(db.String(35), nullable=False)
    username = db.Column(db.String(64), nullable=True)

    def __init__(self, orig_msg, tl_msg, recipient, username):
        self.orig_msg = orig_msg
        self.tl_msg = tl_msg
        self.recipient = recipient
        self.username = username
Example #8
0
class Message(db.Model):
    __tablename__ = 'MESSAGES'
    messageID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    # historically, we've had really long messages
    orig_msg = db.Column(db.String(4096), nullable=False)
    tl_msg = db.Column(db.String(4096), nullable=True)
    country = db.Column(db.String(16), nullable=True)
    username = db.Column(db.String(64), nullable=True)

    def __init__(self, orig_msg, tl_msg, country, username):
        self.orig_msg = orig_msg
        self.tl_msg = tl_msg
        self.country = country
        self.username = username
class Announcement(db.Model):
    __tablename__ = 'ANNOUNCEMENTS'
    announcementID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    message = db.Column(db.String(1024), nullable=False)

    def __init__(self, message):
        self.message = message
Example #10
0
class Gallery(db.Model):
    __tablename__ = 'GALLERY'
    artworkID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    artworkLink = db.Column(db.String(256), nullable=False)
    blurhash = db.Column(db.String(64), nullable=True)
    artistLink = db.Column(db.String(256), nullable=True)
    username = db.Column(db.String(64), nullable=True)
    # 4096 because title can be a message too
    title = db.Column(db.String(4096), nullable=True)

    def __init__(self, artworkLink, blurhash, username, title, artistLink):
        self.artworkLink = artworkLink
        self.blurhash = blurhash
        self.artistLink = artistLink
        self.username = username
        self.title = title
class ArchiveCoco(db.Model):
    __tablename__ = 'COCO'
    archiveID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    # We are not actually storing URLs, but the 11-character Youtube IDs
    archiveURL = db.Column(db.String(11), nullable=False)

    def __init__(self, archiveURL):
        self.archiveURL = archiveURL
Example #12
0
class MultiGallery(db.Model):
    __tablename__ = 'MULTIGALLERY'
    artworkID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    setID = db.Column(db.String(32),
                      db.ForeignKey(SetMetadata.setID),
                      nullable=False)
    setmetadata = db.relationship(SetMetadata)
    artworkLink = db.Column(db.String(256), nullable=False)
    blurhash = db.Column(db.String(64), nullable=True)

    def __init__(
        self,
        setID,
        artworkLink,
        blurhash,
    ):
        self.setID = setID
        self.artworkLink = artworkLink
        self.blurhash = blurhash
class SetMetadata(db.Model):
    __tablename__ = 'SETMETADATA'
    metadataID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    setID = db.Column(db.String(32), nullable=False)
    artistLink = db.Column(db.String(2048), nullable=True)
    username = db.Column(db.String(64), nullable=False)
    title = db.Column(db.String(64), nullable=True)

    def __init__(
        self,
        setID,
        username,
        title,
        artistLink,
    ):
        self.setID = setID
        self.artistLink = artistLink
        self.username = username
        self.title = title
Example #14
0
class SetMetadata(db.Model):
    __tablename__ = 'SETMETADATA'
    metadataID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    setID = db.Column(db.String(32), nullable=False)
    artistLink = db.Column(db.String(256), nullable=True)
    username = db.Column(db.String(64), nullable=False)
    message = db.Column(db.String(4096), nullable=True)
    # setID must be a unique constraint for foreign keys to work
    __table_args__ = (db.UniqueConstraint('setID'), )

    def __init__(
        self,
        setID,
        username,
        message,
        artistLink,
    ):
        self.setID = setID
        self.artistLink = artistLink
        self.username = username
        self.message = message
class MultiGallery(db.Model):
    __tablename__ = 'MULTIGALLERY'
    artworkID = db.Column(db.Integer, primary_key=True, autoincrement=True)
    setID = db.Column(db.Integer,
                      db.ForeignKey('SETMETADATA.setID'),
                      nullable=False)
    setmetadata = db.relationship("SetMetadata")
    artworkLink = db.Column(db.String(2048), nullable=False)

    def __init__(
        self,
        setID,
        artworkLink,
    ):
        self.setID = setID
        self.artworkLink = artworkLink