introduce service plans

This commit is contained in:
Tobias Brunner 2025-01-28 10:41:39 +01:00
parent f69f7fb755
commit 70f4a02db9
No known key found for this signature in database
11 changed files with 362 additions and 20 deletions

View file

@ -9,6 +9,7 @@ from .models import (
CloudProvider,
ConsultingPartner,
Category,
Plan,
)
from .forms import LeadForm
@ -86,12 +87,21 @@ def thank_you(request, slug):
def create_lead(request, slug):
service = get_object_or_404(Service, slug=slug)
selected_plan = None
if request.GET.get("plan"):
selected_plan = get_object_or_404(
Plan, id=request.GET.get("plan"), service=service
)
else:
selected_plan = service.get_default_plan()
if request.method == "POST":
form = LeadForm(request.POST)
if form.is_valid():
lead = form.save(commit=False)
lead.service = service
lead.plan = selected_plan
try:
logger.info(f"Attempting to create lead for service: {service.name}")
@ -115,5 +125,7 @@ def create_lead(request, slug):
form = LeadForm()
return render(
request, "services/lead_form.html", {"form": form, "service": service}
request,
"services/lead_form.html",
{"form": form, "service": service, "selected_plan": selected_plan},
)