ef8ae14582
The conact modals where moved in seperated templates. Further to evaluate the form without reloading the page some ajax was added.
66 lines
2 KiB
Python
66 lines
2 KiB
Python
from django.views.generic import TemplateView
|
|
|
|
from django.utils.translation import get_language, get_language_info
|
|
from django.utils.translation import ugettext_lazy as _
|
|
from django.views.generic.edit import FormView
|
|
from django.contrib import messages
|
|
from django.core.urlresolvers import reverse_lazy, reverse
|
|
from django.shortcuts import render
|
|
|
|
from utils.forms import ContactUsForm
|
|
|
|
class IndexView(TemplateView):
|
|
template_name = "alplora/index.html"
|
|
|
|
def get_context_data(self, *args, **kwargs):
|
|
context = super(IndexView, self).get_context_data(**kwargs)
|
|
languages = getlanguages()
|
|
context.update(languages)
|
|
return context
|
|
|
|
class ContactView(FormView):
|
|
template_name = 'alplora/contact.html'
|
|
form_class = ContactUsForm
|
|
success_message = _('Message Successfully Sent')
|
|
|
|
def get_context_data(self, *args, **kwargs):
|
|
context = super(ContactView, self).get_context_data(**kwargs)
|
|
languages = getlanguages()
|
|
context.update(languages)
|
|
return context
|
|
|
|
def form_valid(self, form):
|
|
form.save()
|
|
form.send_email(email_to='info@alplora.ch')
|
|
messages.add_message(self.request, messages.SUCCESS, self.success_message)
|
|
return render(self.request, 'alplora/contact_success.html', {})
|
|
|
|
class LoginView(TemplateView):
|
|
template_name = "alplora/login.html"
|
|
|
|
def get_context_data(self, *args, **kwargs):
|
|
context = super(LoginView, self).get_context_data(**kwargs)
|
|
languages = getlanguages()
|
|
context.update(languages)
|
|
return context
|
|
|
|
|
|
def getlanguages():
|
|
language = get_language()
|
|
language_activate = get_language_info(language)
|
|
if language == 'de':
|
|
list_language = {
|
|
'name': 'English',
|
|
'code': 'en-us'
|
|
}
|
|
else:
|
|
list_language = {
|
|
'name': 'Deutsch',
|
|
'code': 'de'
|
|
}
|
|
|
|
return {
|
|
'language': language,
|
|
'list_language': list_language,
|
|
'language_activate': language_activate['name_local']
|
|
}
|