from django.http import JsonResponse
from django.shortcuts import render, redirect
from django.contrib import messages
from contactus.forms import ContactForm
from questions.models import QuestionsOne, QuestionsTwo
from portfolio.models import PortfolioItem, PortfolioCategory
from services.models import Service
from django.middleware.csrf import get_token


def index(request):
    get_token(request)
    form = ContactForm()

    if request.method == 'POST':
        form = ContactForm(request.POST)
        if form.is_valid():
            form.save()

            if request.headers.get('x-requested-with') == 'XMLHttpRequest':
                return JsonResponse({'status': 'success', 'message': ' تم إرسال الرسالة بنجاح'}, status=200)

            messages.success(request, " تم إرسال رسالتك بنجاح")
            return redirect('index')
        else:
            if request.headers.get('x-requested-with') == 'XMLHttpRequest':
                return JsonResponse({
                    'status': 'error',
                    'errors': form.errors.get_json_data()
                }, status=400)

    context = {
        'form': form,
        'questions_one': QuestionsOne.objects.all(),
        'questions_two': QuestionsTwo.objects.all(),
        'items': PortfolioItem.objects.select_related('category').all(),
        'categories': PortfolioCategory.objects.all(),
        'services': Service.objects.all()[:4],
    }
    return render(request, 'index.html', context)



from django.shortcuts import redirect
from django.utils import translation
from django.conf import settings

def set_language(request):
    lang_code = request.GET.get('language')
    if lang_code in dict(settings.LANGUAGES):
        request.session[translation.LANGUAGE_SESSION_KEY] = lang_code
        translation.activate(lang_code)
    return redirect(request.META.get('HTTP_REFERER', '/'))
