Files
CTFd/CTFd/schemas/unlocks.py
2019-04-17 01:36:30 -04:00

36 lines
801 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)