from django.shortcuts import render, redirect from django.contrib import messages import os import subprocess # To run external scripts def login_view(request): if request.method == 'POST': username = request.POST.get('username') password = request.POST.get('password') if username == 'bob' and password == 'guest': # Set session variables request.session['logged_in'] = True request.session['username'] = username # Optional: Store username messages.success(request, 'Login successful!') return redirect('success') # Redirect to a success page else: messages.error(request, 'Invalid credentials!') return render(request, 'authapp/login.html') def success_view(request): # Check if user is logged in via session if not request.session.get('logged_in'): messages.error(request, 'You must log in first!') return redirect('login') # Redirect to login page if not authenticated # Define paths to your images (adjust as needed) image1 = os.path.join('..', 'a.jpg') # Full path to a.jpg image2 = os.path.join('..', 'b.jpg') # Full path to b.jpg try: result = subprocess.run( ["python", "../dedup.py", image1, image2, "-noansi", "-scores"], capture_output=True, text=True ) script_output = result.stdout except Exception as e: script_output = f"Error: {e}" # Pass results to the template return render(request, "authapp/success.html", { "script_output": script_output, }) def home_view(request): return render(request, 'authapp/home.html') # Create home.html in templates def logout_view(request): # Clear session data request.session.flush() # Or use del request.session['logged_in'] messages.success(request, 'You have been logged out.') return redirect('login')