Refactor error_response function for improved argument handling
- Enhanced the `error_response` function to support backward compatibility by normalizing arguments when positional arguments are misused. - Updated various views to pass `None` for the `errors` parameter in `error_response` calls, ensuring consistent response formatting. - Adjusted logging in `ContentSyncService` and `WordPressClient` to use debug level for expected 401 errors, improving log clarity. - Removed deprecated fields from serializers and views, streamlining content management processes.
This commit is contained in:
@@ -54,6 +54,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
else:
|
||||
return error_response(
|
||||
result.get('message', 'Connection test failed'),
|
||||
None,
|
||||
status.HTTP_400_BAD_REQUEST,
|
||||
request
|
||||
)
|
||||
@@ -78,14 +79,14 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
site_url = request.data.get('site_url')
|
||||
|
||||
if not site_id:
|
||||
return error_response('site_id is required', status.HTTP_400_BAD_REQUEST, request)
|
||||
return error_response('site_id is required', None, status.HTTP_400_BAD_REQUEST, request)
|
||||
|
||||
# Verify site exists
|
||||
from igny8_core.auth.models import Site
|
||||
try:
|
||||
site = Site.objects.get(id=int(site_id))
|
||||
except (Site.DoesNotExist, ValueError, TypeError):
|
||||
return error_response('Site not found or invalid', status.HTTP_404_NOT_FOUND, request)
|
||||
return error_response('Site not found or invalid', None, status.HTTP_404_NOT_FOUND, request)
|
||||
|
||||
# Authentication: accept either authenticated user OR matching API key in body
|
||||
api_key = request.data.get('api_key') or api_key
|
||||
@@ -107,7 +108,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
authenticated = True
|
||||
|
||||
if not authenticated:
|
||||
return error_response('Authentication credentials were not provided.', status.HTTP_403_FORBIDDEN, request)
|
||||
return error_response('Authentication credentials were not provided.', None, status.HTTP_403_FORBIDDEN, request)
|
||||
|
||||
# Try to find an existing integration for this site+platform
|
||||
integration = SiteIntegration.objects.filter(site=site, platform='wordpress').first()
|
||||
@@ -128,7 +129,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
if result.get('success'):
|
||||
return success_response(result, request=request)
|
||||
else:
|
||||
return error_response(result.get('message', 'Connection test failed'), status.HTTP_400_BAD_REQUEST, request)
|
||||
return error_response(result.get('message', 'Connection test failed'), None, status.HTTP_400_BAD_REQUEST, request)
|
||||
|
||||
@action(detail=True, methods=['post'])
|
||||
def sync(self, request, pk=None):
|
||||
@@ -275,6 +276,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
except (ValueError, TypeError):
|
||||
return error_response(
|
||||
'Invalid site_id',
|
||||
None,
|
||||
status.HTTP_400_BAD_REQUEST,
|
||||
request
|
||||
)
|
||||
@@ -286,6 +288,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
except Site.DoesNotExist:
|
||||
return error_response(
|
||||
'Site not found',
|
||||
None,
|
||||
status.HTTP_404_NOT_FOUND,
|
||||
request
|
||||
)
|
||||
@@ -314,6 +317,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
except (ValueError, TypeError):
|
||||
return error_response(
|
||||
'Invalid site_id',
|
||||
None,
|
||||
status.HTTP_400_BAD_REQUEST,
|
||||
request
|
||||
)
|
||||
@@ -325,6 +329,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
except Site.DoesNotExist:
|
||||
return error_response(
|
||||
'Site not found',
|
||||
None,
|
||||
status.HTTP_404_NOT_FOUND,
|
||||
request
|
||||
)
|
||||
@@ -342,6 +347,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
if not integrations.exists():
|
||||
return error_response(
|
||||
'No active integrations found for this site',
|
||||
None,
|
||||
status.HTTP_400_BAD_REQUEST,
|
||||
request
|
||||
)
|
||||
@@ -381,6 +387,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
except (ValueError, TypeError):
|
||||
return error_response(
|
||||
'Invalid site_id',
|
||||
None,
|
||||
status.HTTP_400_BAD_REQUEST,
|
||||
request
|
||||
)
|
||||
@@ -392,6 +399,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
except Site.DoesNotExist:
|
||||
return error_response(
|
||||
'Site not found',
|
||||
None,
|
||||
status.HTTP_404_NOT_FOUND,
|
||||
request
|
||||
)
|
||||
@@ -418,6 +426,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
except (ValueError, TypeError):
|
||||
return error_response(
|
||||
'Invalid site_id',
|
||||
None,
|
||||
status.HTTP_400_BAD_REQUEST,
|
||||
request
|
||||
)
|
||||
@@ -429,6 +438,7 @@ class IntegrationViewSet(SiteSectorModelViewSet):
|
||||
except Site.DoesNotExist:
|
||||
return error_response(
|
||||
'Site not found',
|
||||
None,
|
||||
status.HTTP_404_NOT_FOUND,
|
||||
request
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user