from django.views import View
from django.http import JsonResponse
from apps.newsletter.models import NewsLetterSubscription

# Create your views here.


def is_ajax(request):
    return request.META.get('HTTP_X_REQUESTED_WITH') == 'XMLHttpRequest'


class NewsLetterSubscriptionView(View):
    """ Index view """
    def get(self, request, *args, **kwargs):
        # code to process a GET request:
        pass

    def post(self, request, *args, **kwargs):
        # code to process a POST request
        if is_ajax(request):
            if 'email' in request.POST :
                email = request.POST['email']
                if email != '':
                    subscription = NewsLetterSubscription(
                        email=email,
                        subscribed = True
                    )
                    subscription.save()
                    return JsonResponse({'status': 'success','message': 'Thank you for subscribing to our newsletter!'})
        return JsonResponse({'status': 'error','message': 'There was an error subscribing. Please try again.'})