from django.shortcuts import render, redirect from django.contrib.auth import login, logout from .forms import PhoneLoginForm from django.contrib import messages from django.contrib.auth.decorators import login_required def login_view(request): if request.user.is_authenticated: return redirect('dashboard') if request.method == "POST": form = PhoneLoginForm(request.POST) if form.is_valid(): user = form.get_user() login(request, user) return redirect('dashboard') else: messages.error(request, "Invalid phone number or password") else: form = PhoneLoginForm() return render(request, "auth/login.html", {"form": form}) def logout_view(request): logout(request) return redirect('login') @login_required def dashboard(request): if request.user.role == "businessman": return redirect("businessman_dashboard") elif request.user.role == "manager": return redirect("manager_dashboard") elif request.user.role == "employee": return redirect("employee_dashboard") else: return redirect("login") def csrf_failure(request, reason=""): logout(request) return redirect("login")