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 Website
|
|
|
|
from .serializers import WebsiteSerializer
|
|
|
|
|
|
|
|
|
2015-04-05 18:02:36 +00:00
|
|
|
class WebsiteViewSet(LogApiMixin, AccountApiMixin, viewsets.ModelViewSet):
|
2014-05-08 16:59:35 +00:00
|
|
|
model = Website
|
|
|
|
serializer_class = WebsiteSerializer
|
|
|
|
filter_fields = ('name',)
|
|
|
|
|
2014-05-13 13:46:40 +00:00
|
|
|
def metadata(self, request):
|
|
|
|
ret = super(WebsiteViewSet, self).metadata(request)
|
2014-05-08 16:59:35 +00:00
|
|
|
names = ['WEBSITES_OPTIONS', 'WEBSITES_PORT_CHOICES']
|
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'websites', WebsiteViewSet)
|