##// END OF EJS Templates
Search by tags also, not only their posts
Search by tags also, not only their posts

File last commit:

r1942:412bb996 default
r1950:78a65fab default
Show More
sticker_factory.py
32 lines | 908 B | text/x-python | PythonLexer
from boards.abstracts.settingsmanager import SessionSettingsManager
from boards.models import Attachment
class StickerFactory:
def get_image(self, alias):
pass
class SessionStickerFactory(StickerFactory):
def __init__(self, session):
self.session = session
def get_image(self, alias):
settings_manager = SessionSettingsManager(self.session)
return settings_manager.get_attachment_by_alias(alias)
class ModelStickerFactory(StickerFactory):
def get_image(self, alias):
return Attachment.objects.get_by_alias(alias)
def get_attachment_by_alias(alias, session):
"""Gets attachment from a source (local or server/global) using an alias."""
factories = [SessionStickerFactory(session), ModelStickerFactory()]
for factory in factories:
image = factory.get_image(alias)
if image is not None:
return image