diff --git a/apps/main/serializers.py b/apps/main/serializers.py index 410eb6bb..561a50c0 100644 --- a/apps/main/serializers.py +++ b/apps/main/serializers.py @@ -108,7 +108,14 @@ class SiteSerializer(serializers.ModelSerializer): fields = [ 'subdomain', 'site_url', - 'country' + 'country', + 'default_site', + 'pinterest_page_url', + 'twitter_page_url', + 'facebook_page_url', + 'instagram_page_url', + 'contact_email', + 'currency' ] @@ -132,6 +139,22 @@ class SiteBackOfficeSerializer(SiteSerializer): ] +class FeatureSerializer(serializers.ModelSerializer): + """Site feature serializer.""" + + class Meta: + """Meta class.""" + + model = models.Feature + fields = ( + 'id', + 'slug', + 'priority', + 'route', + 'site_settings', + ) + + # class SiteFeatureSerializer(serializers.ModelSerializer): # """Site feature serializer.""" # diff --git a/apps/main/urls/back.py b/apps/main/urls/back.py index 40011aa2..99e6a50f 100644 --- a/apps/main/urls/back.py +++ b/apps/main/urls/back.py @@ -9,7 +9,9 @@ urlpatterns = [ path('awards/', views.AwardLstView.as_view(), name='awards-list-create'), path('awards//', views.AwardRUDView.as_view(), name='awards-rud'), path('content_type/', views.ContentTypeView.as_view(), name='content_type-list'), - path('sites/', views.SiteListBackOfficeView.as_view(), name='site-list'), + path('sites/', views.SiteListBackOfficeView.as_view(), name='site-list-create'), path('site-settings//', views.SiteSettingsBackOfficeView.as_view(), name='site-settings'), + path('feature/', views.FeatureBackView.as_view(), name='feature-list-create'), + path('feature//', views.FeatureRUDBackView.as_view(), name='feature-rud') ] diff --git a/apps/main/views/back.py b/apps/main/views/back.py index de47825b..76c99e3d 100644 --- a/apps/main/views/back.py +++ b/apps/main/views/back.py @@ -39,6 +39,16 @@ class ContentTypeView(generics.ListAPIView): ) +class FeatureBackView(generics.ListCreateAPIView): + """Feature list or create View.""" + serializer_class = serializers.FeatureSerializer + + +class FeatureRUDBackView(generics.RetrieveUpdateDestroyAPIView): + """Feature RUD View.""" + serializer_class = serializers.FeatureSerializer + + class SiteSettingsBackOfficeView(SiteSettingsView): """Site settings View.""" serializer_class = serializers.SiteSettingsBackOfficeSerializer diff --git a/apps/main/views/web.py b/apps/main/views/web.py index 86c550da..12e23649 100644 --- a/apps/main/views/web.py +++ b/apps/main/views/web.py @@ -19,7 +19,7 @@ class DetermineSiteView(generics.GenericAPIView): return Response(data={'url': url}) -class SiteSettingsView(generics.RetrieveAPIView): +class SiteSettingsView(generics.RetrieveUpdateDestroyAPIView): """Site settings View.""" lookup_field = 'subdomain' @@ -28,7 +28,7 @@ class SiteSettingsView(generics.RetrieveAPIView): serializer_class = serializers.SiteSettingsBackOfficeSerializer -class SiteListView(generics.ListAPIView): +class SiteListView(generics.ListCreateAPIView): """Site settings View.""" pagination_class = None