def process_checkout(request): request.session['order_step'] = None try: if request.session['current_fundraiser']: request.session['finalized_order'] = request.session['current_fundraiser'] del request.session['current_fundraiser'] except: pass try: finalized_order = Fundraiser.objects.get(id=request.session['finalized_order']) order_type = str(finalized_order.get_payment_type()) except: finalized_order = None order_type = None session_finalized_fundraiser = SessionVariable(request).session_finalized_fundraiser() context = { 'finalized_order' : finalized_order, 'order_type' : order_type, 'form' : SimpleSignUpForm } # if session_finalized_fundraiser.profile.email: if session_finalized_fundraiser.profile.email and not session_finalized_fundraiser.receipt_email_sent: data = { 'user' : session_finalized_fundraiser.profile.contact_person(), 'organization' : session_finalized_fundraiser.profile.organization, 'address' : session_finalized_fundraiser.shipment().address.street, 'city' : session_finalized_fundraiser.shipment().address.city, 'state' : session_finalized_fundraiser.shipment().address.state, 'zip_code' : session_finalized_fundraiser.shipment().address.zip_code, 'total' : session_finalized_fundraiser.net_total_in_dollars(), 'title' : session_finalized_fundraiser.title, 'selections' : session_finalized_fundraiser.selections_str(), 'shipping' : session_finalized_fundraiser.free_shipping(), 'phone' : session_finalized_fundraiser.profile.phone_number } template_name = EMAIL_TEMPLATE_DIR + 'email_fundraiser_receipt_text_based.txt' text_email = loader.render_to_string(template_name,data) email = session_finalized_fundraiser.profile.email type = session_finalized_fundraiser.type send_fundraiser_receipt_email.delay( str(finalized_order.organization())+' Fundraiser', text_email, 'Jose Madrid Salsa fundraising <*****@*****.**>', [email], type.id ) session_finalized_fundraiser.receipt_email_sent = True session_finalized_fundraiser.save() template = 'fundraiser/checkout-invoice.html' return render(request,template,context)