mirror of
https://github.com/vale981/vale981_fahrschule
synced 2025-03-05 09:51:41 -05:00
Neuer Login
This commit is contained in:
parent
e69263d952
commit
ae37ebd181
8 changed files with 56 additions and 25 deletions
|
@ -7,6 +7,7 @@ urlpatterns = patterns('',
|
||||||
# Examples:
|
# Examples:
|
||||||
(r'^quiz/', include('fs_quiz.urls')),
|
(r'^quiz/', include('fs_quiz.urls')),
|
||||||
# url(r'^blog/', include('blog.urls')),
|
# url(r'^blog/', include('blog.urls')),
|
||||||
|
(r'^/', 'fahrschule_vale981.views.login'),
|
||||||
(r'^login/', 'fahrschule_vale981.views.login'),
|
(r'^login/', 'fahrschule_vale981.views.login'),
|
||||||
(r'^logout/', 'fahrschule_vale981.views.logout_view'),
|
(r'^logout/', 'fahrschule_vale981.views.logout_view'),
|
||||||
(r'^auth/', 'fahrschule_vale981.views.auth_view'),
|
(r'^auth/', 'fahrschule_vale981.views.auth_view'),
|
||||||
|
|
|
@ -3,6 +3,11 @@ from django.http import HttpResponseRedirect
|
||||||
from django.contrib import auth
|
from django.contrib import auth
|
||||||
from django.core.context_processors import csrf
|
from django.core.context_processors import csrf
|
||||||
from django.contrib.auth import logout
|
from django.contrib.auth import logout
|
||||||
|
from django.contrib.auth.models import User
|
||||||
|
from django.contrib.auth.models import UserManager
|
||||||
|
from userprofile.models import UserQuizRel
|
||||||
|
from fs_quiz.models import Quiz
|
||||||
|
|
||||||
|
|
||||||
def login(request):
|
def login(request):
|
||||||
c = {}
|
c = {}
|
||||||
|
@ -10,11 +15,21 @@ def login(request):
|
||||||
return render_to_response('login.html', c)
|
return render_to_response('login.html', c)
|
||||||
|
|
||||||
def auth_view(request):
|
def auth_view(request):
|
||||||
username = request.POST.get('username', '')
|
|
||||||
password = request.POST.get('password', '')
|
firstname = request.POST.get('firstname', '')
|
||||||
|
lastname = request.POST.get('lastname', '')
|
||||||
|
password = 'standart'
|
||||||
|
username = firstname + lastname
|
||||||
|
User.objects.create_user(username=firstname+lastname, password='standart', first_name=firstname, last_name=lastname)
|
||||||
|
|
||||||
user = auth.authenticate(username=username, password=password)
|
user = auth.authenticate(username=username, password=password)
|
||||||
|
|
||||||
if user is not None:
|
if user is not None:
|
||||||
auth.login(request, user)
|
auth.login(request, user)
|
||||||
|
uqr = UserQuizRel(user=request.user)
|
||||||
|
uqr.save()
|
||||||
|
uqr.allowed_quiz = Quiz.objects.all()
|
||||||
|
uqr.save()
|
||||||
return HttpResponseRedirect('/quiz/all/')
|
return HttpResponseRedirect('/quiz/all/')
|
||||||
else:
|
else:
|
||||||
return HttpResponseRedirect('/fehler/')
|
return HttpResponseRedirect('/fehler/')
|
||||||
|
|
|
@ -92,7 +92,7 @@ def check_view(request):
|
||||||
|
|
||||||
def auswertung_index(request):
|
def auswertung_index(request):
|
||||||
return render_to_response('auswertung.html', {'user': request.user,
|
return render_to_response('auswertung.html', {'user': request.user,
|
||||||
'users': User.objects.filter(groups__name = 'Schüler')})
|
'users': User.objects.all()})
|
||||||
|
|
||||||
def ausw_user(request, user_id=1):
|
def ausw_user(request, user_id=1):
|
||||||
user = User.objects.get(id=user_id)
|
user = User.objects.get(id=user_id)
|
||||||
|
|
|
@ -8,37 +8,40 @@ max-height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
#framecontent{
|
#framecontent{
|
||||||
position: absolute;
|
position: relative;
|
||||||
top: 0;
|
top: 0;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
width: 150px; /*Width of frame div*/
|
width: 100%; /*Width of frame div*/
|
||||||
height: 100%;
|
height: 30px;
|
||||||
overflow: hidden; /*Disable scrollbars. Set to "scroll" to enable*/
|
overflow: hidden; /*Disable scrollbars. Set to "scroll" to enable*/
|
||||||
background: #0404AF;
|
background: #0404AF;
|
||||||
color: white;
|
color: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
#maincontent{
|
#maincontent{
|
||||||
position: fixed;
|
position: relative;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 150px; /*Set left value to WidthOfFrameDiv*/
|
overflow: hidden;
|
||||||
|
/*Set left value to WidthOfFrameDiv*/
|
||||||
right: 0;
|
right: 0;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
overflow: auto;
|
|
||||||
background: #fff;
|
background: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.innertube{
|
.innertube{
|
||||||
margin: 15px; /*Margins for inner DIV inside each DIV (to provide padding)*/
|
margin: 15px; /*Margins for inner DIV inside each DIV (to provide padding)*/
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.men_div:hover{
|
.men_div{
|
||||||
|
display: inline;
|
||||||
background-color: dodgerblue;
|
position: relative;
|
||||||
|
top:3px
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
* html body{ /*IE6 hack*/
|
* html body{ /*IE6 hack*/
|
||||||
padding: 0 0 0 200px; /*Set value to (0 0 0 WidthOfFrameDiv)*/
|
padding: 0 0 0 200px; /*Set value to (0 0 0 WidthOfFrameDiv)*/
|
||||||
}
|
}
|
||||||
|
@ -50,9 +53,10 @@ width: 100%;
|
||||||
|
|
||||||
#men{
|
#men{
|
||||||
font-family: Arial, sans-serif;
|
font-family: Arial, sans-serif;
|
||||||
font-size: 24px;
|
font-size: 20px;
|
||||||
color: lightgrey;
|
color: lightgrey;
|
||||||
margin-left: 15px;
|
margin-left: 15px;
|
||||||
|
text-align: left;
|
||||||
}
|
}
|
||||||
#men:link {color:white; text-decoration:none;} /* unvisited link */
|
#men:link {color:white; text-decoration:none;} /* unvisited link */
|
||||||
#men:visited {color: #ffffff;} /* visited link */
|
#men:visited {color: #ffffff;} /* visited link */
|
||||||
|
@ -62,6 +66,7 @@ width: 100%;
|
||||||
color: dodgerblue;
|
color: dodgerblue;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
h1{
|
h1{
|
||||||
font-family: Arial, sans-serif;
|
font-family: Arial, sans-serif;
|
||||||
|
@ -291,4 +296,9 @@ background-image: linear-gradient(top, #ebf3fc, #dce9f9);
|
||||||
position:relative;
|
position:relative;
|
||||||
top:1px;
|
top:1px;
|
||||||
}
|
}
|
||||||
/* This button was generated using CSSButtonGenerator.com */
|
.login{
|
||||||
|
width: 300px;
|
||||||
|
height: 30px;
|
||||||
|
font-size: 20px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
|
@ -3,12 +3,14 @@
|
||||||
{% if form.errors %}
|
{% if form.errors %}
|
||||||
<p class="error">Benutzernahme oder Passwort falsch!</p>
|
<p class="error">Benutzernahme oder Passwort falsch!</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
<table class="bordered">
|
||||||
<form action="/auth/" method="post">{% csrf_token %}
|
<form action="/auth/" method="post">{% csrf_token %}
|
||||||
<label for="username">Benutzer:</label>
|
<tr><th><label for="firstname">Vorname:</label></th>
|
||||||
<input type="text" name="username" value="" id="username">
|
<td style="width: 100px"><input type="text" class="login" name="firstname" value="" id="firstname"></td></tr>
|
||||||
<label for="password">Passwort:</label>
|
<tr><th><label for="lastname">Nachname:</label></th>
|
||||||
<input type="password" name="password" value="" id="password">
|
<td><input type="text" class="login" name="lastname" value="" id="lastname"></td></tr>
|
||||||
<input type="submit" value="Login" />
|
<input type="submit" class="button" value="Los Gehts!" />
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
</table>
|
||||||
{% endblock %}
|
{% endblock %}
|
|
@ -8,4 +8,5 @@ h1{
|
||||||
font-family: Calibri;
|
font-family: Calibri;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,11 +16,11 @@
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
{% if user.is_staff == True %}
|
||||||
<div id="framecontent">
|
<div id="framecontent">
|
||||||
<div class="innertube_men">
|
<div class="innertube_men">
|
||||||
{% block menu %}
|
{% block menu %}
|
||||||
<div class="men_div" style="margin-top: 15px;">
|
<div class="men_div">
|
||||||
<a id="men" href="/quiz/all">Übersicht</a>
|
<a id="men" href="/quiz/all">Übersicht</a>
|
||||||
</div>
|
</div>
|
||||||
{% if user.is_staff %}
|
{% if user.is_staff %}
|
||||||
|
@ -43,10 +43,10 @@
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
<div id="maincontent">
|
<div id="maincontent">
|
||||||
<div class="innertube">
|
<div class="innertube" align="center">
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
{% if user.is_authenticated %}
|
{% if user.is_authenticated %}
|
||||||
|
@ -79,6 +79,8 @@
|
||||||
{% else %}
|
{% else %}
|
||||||
<h1 id="main_link" align="center">Sie sind nicht angemeldet! Bitte <a href="/login">einloggen!</a> </h1>
|
<h1 id="main_link" align="center">Sie sind nicht angemeldet! Bitte <a href="/login">einloggen!</a> </h1>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
<br>
|
||||||
|
<a href="/logout/"><input type="submit" class="button" value="Schließen"/></a>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -8,7 +8,7 @@ def get_def():
|
||||||
|
|
||||||
class UserQuizRel(models.Model):
|
class UserQuizRel(models.Model):
|
||||||
quiz=models.ManyToManyField(Quiz, blank=True, related_name='User', verbose_name='abgeschlossene Quizs')
|
quiz=models.ManyToManyField(Quiz, blank=True, related_name='User', verbose_name='abgeschlossene Quizs')
|
||||||
allowed_quiz=models.ManyToManyField(Quiz, blank=True, related_name='User-get', verbose_name='Erlaubte Quizs', default=get_def())
|
allowed_quiz=models.ManyToManyField(Quiz, blank=True, related_name='User-get', verbose_name='Erlaubte Quizs', default=Quiz.objects.all())
|
||||||
user=models.OneToOneField(User)
|
user=models.OneToOneField(User)
|
||||||
|
|
||||||
class ResultGroup(models.Model):
|
class ResultGroup(models.Model):
|
||||||
|
|
Loading…
Add table
Reference in a new issue