Files
CTFd/CTFd/schemas/unlocks.py
Kevin Chung 6833378c36 Format all the things (#991)
* Format Javascript and CSS files with `prettier`: `prettier --write 'CTFd/themes/**/*'`
* Format Python with `black`: `black CTFd` & `black tests`
* Travis now uses xenial instead of trusty.
2019-05-11 21:09:37 -04:00

24 lines
662 B
Python

from CTFd.models import ma, Unlocks
from CTFd.utils import string_types
class UnlockSchema(ma.ModelSchema):
class Meta:
model = Unlocks
include_fk = True
dump_only = ("id", "date")
views = {
"admin": ["user_id", "target", "team_id", "date", "type", "id"],
"user": ["target", "date", "type", "id"],
}
def __init__(self, view=None, *args, **kwargs):
if view:
if isinstance(view, string_types):
kwargs["only"] = self.views[view]
elif isinstance(view, list):
kwargs["only"] = view
super(UnlockSchema, self).__init__(*args, **kwargs)