From d5d5a3e493be54e566b75d794b739d8d8d4fd7a4 Mon Sep 17 00:00:00 2001 From: Nawfal Ahmed Date: Mon, 29 Sep 2025 14:42:14 +0500 Subject: [PATCH] feat: disable manual order enrollment endpoint --- ecommerce/extensions/api/v2/views/orders.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ecommerce/extensions/api/v2/views/orders.py b/ecommerce/extensions/api/v2/views/orders.py index 17eba2919e5..8d31d3e41fe 100644 --- a/ecommerce/extensions/api/v2/views/orders.py +++ b/ecommerce/extensions/api/v2/views/orders.py @@ -6,6 +6,7 @@ import dateutil import django_filters +import waffle from django.contrib.auth import get_user_model from django.core.exceptions import ValidationError from django.db import transaction @@ -206,6 +207,18 @@ def create(self, request): Course in which learner is enrolled. """ + logger.info( + f"[ManualCourseEnrollmentOrderViewSet] Request for user: {request.user.username}, " + f"referer: {request.META.get('HTTP_REFERER')}, " + f"client IP: {request.META.get('REMOTE_ADDR')}, " + f"and params: {request.get_full_path()}" + ) + + if waffle.flag_is_active(request, 'disable_ecommerce_service'): + return Response( + {'error': 'Service unavailable'}, status=status.HTTP_503_SERVICE_UNAVAILABLE + ) + try: enrollments = request.data["enrollments"] except KeyError: