Added View to render payment page, Added Payment and summary forms, Added Payment.js library to request stripe token , Added jQuery validator for handling payment form errors
This commit is contained in:
parent
4e23adcea6
commit
38801abed7
13 changed files with 480 additions and 71 deletions
|
|
@ -3,32 +3,32 @@ from django.shortcuts import get_object_or_404, render
|
|||
from django.core.urlresolvers import reverse_lazy, reverse
|
||||
|
||||
from django.views.generic import View, CreateView, FormView
|
||||
from django.shortcuts import redirect
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.contrib.auth import authenticate, login
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
|
||||
from membership.forms import PaymentForm
|
||||
from membership.models import CustomUser
|
||||
from .models import RailsBetaUser, VirtualMachineType
|
||||
from .forms import HostingUserSignupForm, HostingUserLoginForm
|
||||
from .mixins import ProcessVMSelectionMixin
|
||||
|
||||
|
||||
class VMPricingView(View):
|
||||
template_name = "hosting/pricing.html"
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
return render(request, self.template_name, request)
|
||||
|
||||
|
||||
class DjangoHostingView(View):
|
||||
class DjangoHostingView(ProcessVMSelectionMixin, View):
|
||||
template_name = "hosting/django.html"
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = {}
|
||||
context["hosting"] = "django"
|
||||
context["hosting_long"] = "Django"
|
||||
context["domain"] = "django-hosting.ch"
|
||||
context["google_analytics"] = "UA-62285904-6"
|
||||
context["email"] = "info@django-hosting.ch"
|
||||
context["vm_types"] = VirtualMachineType.get_serialized_vm_types()
|
||||
context = {
|
||||
'hosting': "django",
|
||||
'hosting_long': "Django",
|
||||
'domain': "django-hosting.ch",
|
||||
'google_analytics': "UA-62285904-6",
|
||||
'email': "info@django-hosting.ch",
|
||||
'vm_types': VirtualMachineType.get_serialized_vm_types(),
|
||||
}
|
||||
return context
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
|
|
@ -36,17 +36,18 @@ class DjangoHostingView(View):
|
|||
return render(request, self.template_name, context)
|
||||
|
||||
|
||||
class RailsHostingView(View):
|
||||
class RailsHostingView(ProcessVMSelectionMixin, View):
|
||||
template_name = "hosting/rails.html"
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = {}
|
||||
context["hosting"] = "rails"
|
||||
context["hosting_long"] = "Ruby On Rails"
|
||||
context["domain"] = "rails-hosting.ch"
|
||||
context["google_analytics"] = "UA-62285904-5"
|
||||
context["email"] = "info@rails-hosting.ch"
|
||||
context["vm_types"] = VirtualMachineType.get_serialized_vm_types()
|
||||
context = {
|
||||
'hosting': "rails",
|
||||
'hosting_long': "Ruby On Rails",
|
||||
'domain': "rails-hosting.ch",
|
||||
'google_analytics': "UA-62285904-5",
|
||||
'email': "info@rails-hosting.ch",
|
||||
'vm_types': VirtualMachineType.get_serialized_vm_types(),
|
||||
}
|
||||
return context
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
|
|
@ -54,17 +55,18 @@ class RailsHostingView(View):
|
|||
return render(request, self.template_name, context)
|
||||
|
||||
|
||||
class NodeJSHostingView(View):
|
||||
class NodeJSHostingView(ProcessVMSelectionMixin, View):
|
||||
template_name = "hosting/nodejs.html"
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = {}
|
||||
context["hosting"] = "nodejs"
|
||||
context["hosting_long"] = "NodeJS"
|
||||
context["domain"] = "node-hosting.ch"
|
||||
context["google_analytics"] = "UA-62285904-7"
|
||||
context["email"] = "info@node-hosting.ch"
|
||||
context["vm_types"] = VirtualMachineType.get_serialized_vm_types()
|
||||
context = {
|
||||
'hosting': "nodejs",
|
||||
'hosting_long': "NodeJS",
|
||||
'domain': "node-hosting.ch",
|
||||
'google_analytics': "UA-62285904-7",
|
||||
'email': "info@node-hosting.ch",
|
||||
'vm_types': VirtualMachineType.get_serialized_vm_types(),
|
||||
}
|
||||
return context
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
|
|
@ -76,13 +78,14 @@ class IndexView(View):
|
|||
template_name = "hosting/index.html"
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = {}
|
||||
context["hosting"] = "nodejs"
|
||||
context["hosting_long"] = "NodeJS"
|
||||
context["domain"] = "node-hosting.ch"
|
||||
context["google_analytics"] = "UA-62285904-7"
|
||||
context["email"] = "info@node-hosting.ch"
|
||||
context["vm_types"] = VirtualMachineType.get_serialized_vm_types()
|
||||
context = {
|
||||
'hosting': "nodejs",
|
||||
'hosting_long': "NodeJS",
|
||||
'domain': "node-hosting.ch",
|
||||
'google_analytics': "UA-62285904-7",
|
||||
'email': "info@node-hosting.ch",
|
||||
'vm_types': VirtualMachineType.get_serialized_vm_types(),
|
||||
}
|
||||
return context
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
|
|
@ -124,6 +127,22 @@ class SignupView(CreateView):
|
|||
return HttpResponseRedirect(self.get_success_url())
|
||||
|
||||
|
||||
class PaymentVMView(FormView):
|
||||
template_name = 'hosting/payment.html'
|
||||
form_class = PaymentForm
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = super(PaymentVMView, self).get_context_data(**kwargs)
|
||||
context.update({
|
||||
'stripe_key': settings.STRIPE_API_PUBLIC_KEY
|
||||
})
|
||||
return context
|
||||
|
||||
# moodel = CustomUser
|
||||
|
||||
# def get(self, request, *args, **kwargs):
|
||||
|
||||
# return render(request, self.template_name, self.context)
|
||||
|
||||
# class RailsBetaUserForm(ModelForm):
|
||||
# required_css_class = 'form-control'
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue