import os
from django.http import JsonResponse
from django.views.decorators.csrf import csrf_exempt
from django.core.files.storage import FileSystemStorage

# Import dari lkb.py untuk ciri Chat/Tanya AI
from .lkb import tanya_lkb_api

# Import dari suap_data.py untuk ciri Muat Naik PDF
from .suap_data import hadam_pdf, DOKUMEN_DIR

# --- 1. FUNGSI UNTUK MENJAWAB SOALAN (CHAT) ---
def api_tanya_ai(request):
    soalan = request.GET.get('soalan', None)
    
    if soalan:
        jawapan = tanya_lkb_api(soalan)
        return JsonResponse({'status': 'success', 'jawapan': jawapan})
    
    return JsonResponse({'status': 'error', 'message': 'Tiada soalan diterima'})


# --- 2. FUNGSI UNTUK MENERIMA & MENGHADAM PDF ---
@csrf_exempt 
def api_muat_naik_pdf(request):
    if request.method == 'POST' and request.FILES.get('fail_pdf'):
        fail = request.FILES['fail_pdf']
        
        if not os.path.exists(DOKUMEN_DIR):
            os.makedirs(DOKUMEN_DIR)
            
        fs = FileSystemStorage(location=DOKUMEN_DIR)
        filename = fs.save(fail.name, fail)
        
        try:
            hadam_pdf(filename)
            return JsonResponse({
                'status': 'success', 
                'message': f'Fail {filename} berjaya diserap oleh otak AI!'
            })
        except Exception as e:
            return JsonResponse({'status': 'error', 'message': str(e)})
            
    return JsonResponse({'status': 'error', 'message': 'Tiada fail diterima'})