django-orchestra/orchestra/contrib/webapps/api.py

29 lines
846 B
Python
Raw Normal View History

2014-05-08 16:59:35 +00:00
from rest_framework import viewsets
2015-04-05 18:02:36 +00:00
from orchestra.api import router, LogApiMixin
2015-04-05 10:46:24 +00:00
from orchestra.contrib.accounts.api import AccountApiMixin
2014-05-08 16:59:35 +00:00
from . import settings
from .models import WebApp
from .serializers import WebAppSerializer
2015-04-05 18:02:36 +00:00
class WebAppViewSet(LogApiMixin, AccountApiMixin, viewsets.ModelViewSet):
2014-05-08 16:59:35 +00:00
model = WebApp
serializer_class = WebAppSerializer
filter_fields = ('name',)
2014-05-13 13:46:40 +00:00
def metadata(self, request):
ret = super(WebAppViewSet, self).metadata(request)
2014-05-08 16:59:35 +00:00
names = [
'WEBAPPS_BASE_ROOT', 'WEBAPPS_TYPES', 'WEBAPPS_WEBAPP_OPTIONS',
'WEBAPPS_PHP_DISABLED_FUNCTIONS', 'WEBAPPS_DEFAULT_TYPE'
]
2014-05-13 13:46:40 +00:00
ret['settings'] = {
name.lower(): getattr(settings, name, None) for name in names
}
return ret
2014-05-08 16:59:35 +00:00
router.register(r'webapps', WebAppViewSet)