Sinnes-tau.de Homepage
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

219 lines
7.2 KiB

from django.shortcuts import render,redirect,reverse
from django.http import HttpResponse, HttpResponseNotFound, Http404,HttpResponseRedirect
#zeitgeraffel
from django.utils import timezone
from django.core.exceptions import ObjectDoesNotExist
import datetime
import pytz
#
from django.conf import settings as conf_settings
# Model related
from hpst.models import Termin
from hpst.models import Kontakt
from hpst.forms import KontaktForm
from django.db.models import Q
#Email
from django.core.mail import BadHeaderError,send_mail
# Hauptseite
def index(request):
termine=Termin.objects.filter(Q(date__gte=timezone.now())|Q(end_date__gte=timezone.now())).order_by( 'date')
#print("Here in view")
#print(conf_settings.DEBUG(Q(creator=owner) | Q(moderated=False)))
context ={
"termine":termine,
"form":KontaktForm(initial={'subject': 'Kontaktformular - Index - sinnestau.de','stack':0,})
}
return render(request, "index.html", context)
def wildnispaedagogik(request):
termine=Termin.objects.filter(Q(date__gte=timezone.now())|Q(end_date__gte=timezone.now())).filter(termintyp__in=['P']).order_by( 'date')
context ={
"termine":termine,
}
return render(request, "wildnispaedagogik.html", context)
def kinderfreizeit(request):
termine=Termin.objects.filter(Q(date__gte=timezone.now())|Q(end_date__gte=timezone.now())).filter(termintyp__in=['K','W']).order_by( 'date')
context ={
"termine":termine,
}
return render(request, "kinderfreizeit.html", context)
def lamatour(request):
termine=Termin.objects.filter(Q(date__gte=timezone.now())|Q(end_date__gte=timezone.now())).filter(termintyp='L').order_by('date')
context ={
"termine":termine,
"form":KontaktForm(initial={'subject': 'Kontaktformular - Lamatour - sinnestau.de','stack':0,})
}
return render(request, "lamatour.html", context)
def externereferentin(request):
termine=Termin.objects.filter(date__gt=timezone.now()).order_by( 'date')
context ={
"termine":termine,
}
# return response with template and context
return render(request, "externereferentin.html", context)
def honigmassage(request):
termine=Termin.objects.filter(date__gt=timezone.now()).order_by( 'date')
context ={
"termine":termine,
}
return render(request, "honigmassage.html", context)
def psychologischeberatung(request):
termine=Termin.objects.filter(date__gt=timezone.now()).order_by( 'date')
context ={
"termine":termine,
}
return render(request, "psychologischeberatung.html", context)
def pflanzenheilkunde(request):
termine=Termin.objects.filter(date__gt=timezone.now()).order_by( 'date')
context ={
"termine":termine,
}
return render(request, "pflanzenheilkunde.html", context)
def ohrakupunktur(request):
termine=Termin.objects.filter(date__gt=timezone.now()).order_by( 'date')
context ={
"termine":termine,
}
return render(request, "ohrakupunktur.html", context)
def termin(request,tid):
#print (tid)
error=""
try:
termin=Termin.objects.get(id=tid)
except ObjectDoesNotExist:
r_message = {
"titel": "404",
"text": "Dieser Termin existiert nicht!",
"exception":None
}
return render(request, "404.html", {'message':r_message})
terminvorbei=False
if((termin.end_date == None)):
if(termin.date<datetime.date.today()):
terminvorbei=True
else:
if(termin.end_date<datetime.date.today()):
terminvorbei=True
if(terminvorbei):
r_message = {
"titel": "404",
"text": "Dieser Termin liegt in der Vergangenheit!",
"exception":None
}
return render(request, "404.html", {'message':r_message})
if termin.showform:
form = KontaktForm(initial={'subject': 'Kontaktformular - '+termin.titel+' - sinnestau.de',})
else:form=None
if(termin.uhrzeit==datetime.time(0)):termin.showuhrzeit=False
else:termin.showuhrzeit=True
#print(termin.uhrzeit)
context ={
"termin":termin,
"error":error,
"form":form,
}
return render(request, "termin.html", context)
def impressum(request):
cookies=request.COOKIES
#print(cookies)
error="Kein Impressum"
context ={
"cookies":cookies,
}
# return response with template and context
return render(request, "impressum.html", context)
def contactView(request):
r_message = {
"titel": "Kontaktformular",
"color": "w3-yellow",
"text": 'Hier das Kontaktformular',
"error":"",
}
if request.method == 'GET':
r_message['titel']="Kontakt Form"
form = KontaktForm(initial={'subject': 'Kontaktformular - Kontakt - sinnestau.de',})
else:
#print("havepost")
form = KontaktForm(request.POST)
if form.is_valid():
#print("form valid")
subject = form.cleaned_data['subject']
from_email = form.cleaned_data['from_email']
message = form.cleaned_data['message']
name = form.cleaned_data['name']
text=name+' - '+from_email+' schrieb\n.........................\n'+message
newkon=Kontakt.objects.create(
name=name,
subject=subject,
email=from_email,
text=text
)
r_message['titel']="Vielen Dank "+name
r_message['color']="w3-green"
r_message['text']="Wir haben Ihre Mitteilung erhalten!"
form=None
try:
send_mail(subject, text, from_email , ['info@sinnes-tau.de'])
# send_mail(subject, text, from_email , ['peter@kuntner.de'])
except BadHeaderError:
return HttpResponse('Invalid header found.')
#return redirect('success')
else:
print(form.errors)
r_message['titel']="Fehler"
r_message['color']="w3-orange"
r_message['text']="Ungültiges Formular!"
estr=str(form.errors)
r_message['error']=estr.replace('__all__','Allgemeiner Fehler')
form=None
return render(request, "email.html", {'form': form,'message':r_message})
def successView(request):
return HttpResponse('Success! Thank you for your message.')
def page_not_found_view(request, exception):
print("pagenotfoundview")
r_message = {
"titel": "404",
"text": "Seite wurde nicht gefunden",
"exception":exception
}
return render(request, "404.html", {'message':r_message})
def error_view(request):
r_message = {
"titel": "404",
"text": "Fehlerseite",
}
return render(request, "404.html", {'message':r_message})
def bad_request_view(request, exception):
r_message = {
"titel": "404",
"text": "Falscher Aufruf",
"exception":exception
}
return render(request, "404.html", {'message':r_message})
def permission_denied_view(request, exception):
r_message = {
"titel": "404",
"text": "Kein Berechtigung",
"exception":exception
}
return render(request, "404.html", {'message':r_message})