Merge branch 'master' into voucher
This commit is contained in:
		
							
								
								
									
										1
									
								
								Pipfile
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								Pipfile
									
									
									
									
									
								
							@@ -10,6 +10,7 @@ pylint = "*"
 | 
				
			|||||||
django = "*"
 | 
					django = "*"
 | 
				
			||||||
django-thumbs-v2 = "*"
 | 
					django-thumbs-v2 = "*"
 | 
				
			||||||
image = "*"
 | 
					image = "*"
 | 
				
			||||||
 | 
					django-widget-tweaks = "*"
 | 
				
			||||||
# Commented out to not explicitly specify Python3 subversion.
 | 
					# Commented out to not explicitly specify Python3 subversion.
 | 
				
			||||||
# [requires]
 | 
					# [requires]
 | 
				
			||||||
# python_version = "3.8"
 | 
					# python_version = "3.8"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -41,7 +41,8 @@ INSTALLED_APPS = [
 | 
				
			|||||||
    'django.contrib.sessions',
 | 
					    'django.contrib.sessions',
 | 
				
			||||||
    'django.contrib.messages',
 | 
					    'django.contrib.messages',
 | 
				
			||||||
    'django.contrib.staticfiles',
 | 
					    'django.contrib.staticfiles',
 | 
				
			||||||
    'django_thumbs'
 | 
					    'django_thumbs',
 | 
				
			||||||
 | 
						'widget_tweaks',
 | 
				
			||||||
]
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MIDDLEWARE = [
 | 
					MIDDLEWARE = [
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -7,11 +7,6 @@ from django import forms
 | 
				
			|||||||
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
 | 
					from django.contrib.auth.forms import UserCreationForm, UserChangeForm
 | 
				
			||||||
from .models import Explorer, Place, PlaceImage, Voucher
 | 
					from .models import Explorer, Place, PlaceImage, Voucher
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class VoucherVerifyForm(forms.ModelForm):
 | 
					 | 
				
			||||||
    class Meta:
 | 
					 | 
				
			||||||
        model = Voucher
 | 
					 | 
				
			||||||
        fields = ['code']
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class ExplorerCreationForm(UserCreationForm):
 | 
					class ExplorerCreationForm(UserCreationForm):
 | 
				
			||||||
    class Meta:
 | 
					    class Meta:
 | 
				
			||||||
        model = Explorer
 | 
					        model = Explorer
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,11 @@
 | 
				
			|||||||
 | 
					@font-face {
 | 
				
			||||||
 | 
					  font-family: Crimson;
 | 
				
			||||||
 | 
					  src: url("fonts/Crimson/CrimsonText-Regular.ttf"), url("fonts/Crimson/CrimsonText-Bold.ttf"), url("fonts/Crimson/CrimsonText-Italic.ttf"); }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@font-face {
 | 
				
			||||||
 | 
					  font-family: Montserrat;
 | 
				
			||||||
 | 
					  src: url("fonts/Montserrat/Montserrat-Regular.otf"), url("fonts/Montserrat/Montserrat-Bold.otf"), url("fonts/Montserrat/Montserrat-Italic.otf"); }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Link {
 | 
					.LP-Link {
 | 
				
			||||||
  color: #565656;
 | 
					  color: #565656;
 | 
				
			||||||
  text-decoration: none;
 | 
					  text-decoration: none;
 | 
				
			||||||
@@ -13,7 +21,7 @@
 | 
				
			|||||||
  display: inline; }
 | 
					  display: inline; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Headline {
 | 
					.LP-Headline {
 | 
				
			||||||
  font-family: "Trebuchet MS", Helvetica, sans-serif;
 | 
					  font-family: Montserrat, Helvetica, sans-serif;
 | 
				
			||||||
  color: #565656;
 | 
					  color: #565656;
 | 
				
			||||||
  font-size: 1.7rem;
 | 
					  font-size: 1.7rem;
 | 
				
			||||||
  padding-top: 0px;
 | 
					  padding-top: 0px;
 | 
				
			||||||
@@ -27,9 +35,9 @@
 | 
				
			|||||||
  .LP-Headline--inline {
 | 
					  .LP-Headline--inline {
 | 
				
			||||||
    display: inline; }
 | 
					    display: inline; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Text {
 | 
					.LP-Paragraph {
 | 
				
			||||||
  color: black;
 | 
					  color: black;
 | 
				
			||||||
  font-family: "Times New Roman", Times, serif;
 | 
					  font-family: Crimson, Times, serif;
 | 
				
			||||||
  font-size: 1.2rem; }
 | 
					  font-size: 1.2rem; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Icon {
 | 
					.LP-Icon {
 | 
				
			||||||
@@ -45,12 +53,99 @@
 | 
				
			|||||||
  .LP-Icon__List .LP-Icon__Item {
 | 
					  .LP-Icon__List .LP-Icon__Item {
 | 
				
			||||||
    padding: 0 3px; }
 | 
					    padding: 0 3px; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.LP-Button {
 | 
				
			||||||
 | 
					  background-color: #C09F80;
 | 
				
			||||||
 | 
					  color: #565656;
 | 
				
			||||||
 | 
					  border: none;
 | 
				
			||||||
 | 
					  padding: 8px 14px;
 | 
				
			||||||
 | 
					  border-radius: 2px;
 | 
				
			||||||
 | 
					  font-weight: bold; }
 | 
				
			||||||
 | 
					  .LP-Button:active {
 | 
				
			||||||
 | 
					    background-color: #76323F;
 | 
				
			||||||
 | 
					    color: #f9f9f9; }
 | 
				
			||||||
 | 
					  .LP-Button--cancel {
 | 
				
			||||||
 | 
					    background-color: #f9f9f9; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.LP-Form .LP-Form__Checkbox {
 | 
				
			||||||
 | 
					  display: none; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.LP-Form .LP-Form__CheckBox__CheckMark {
 | 
				
			||||||
 | 
					  height: 1em;
 | 
				
			||||||
 | 
					  width: 1em;
 | 
				
			||||||
 | 
					  border: 1px solid black;
 | 
				
			||||||
 | 
					  padding: 0 calc(.5em + 2px);
 | 
				
			||||||
 | 
					  margin-right: .7em; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.LP-Input {
 | 
				
			||||||
 | 
					  display: flex;
 | 
				
			||||||
 | 
					  flex-direction: column;
 | 
				
			||||||
 | 
					  margin-bottom: -30px;
 | 
				
			||||||
 | 
					  padding: 10px 0; }
 | 
				
			||||||
 | 
					  .LP-Input .LP-Input__Field {
 | 
				
			||||||
 | 
					    border: none;
 | 
				
			||||||
 | 
					    border-bottom: 1px solid #565656;
 | 
				
			||||||
 | 
					    padding: 8px;
 | 
				
			||||||
 | 
					    margin-bottom: 30px; }
 | 
				
			||||||
 | 
					    .LP-Input .LP-Input__Field:focus, .LP-Input .LP-Input__Field:active, .LP-Input .LP-Input__Field:invalid {
 | 
				
			||||||
 | 
					      margin-bottom: 29px;
 | 
				
			||||||
 | 
					      border-bottom: 2px solid #76323F;
 | 
				
			||||||
 | 
					      background-color: #f9f9f9;
 | 
				
			||||||
 | 
					      border-radius: 3px 3px 0 0;
 | 
				
			||||||
 | 
					      box-shadow: none; }
 | 
				
			||||||
 | 
					  .LP-Input .LP-Input__Label {
 | 
				
			||||||
 | 
					    font-family: Montserrat, Helvetica, sans-serif;
 | 
				
			||||||
 | 
					    font-size: 16px; }
 | 
				
			||||||
 | 
					  .LP-Input .LP-Input__Message {
 | 
				
			||||||
 | 
					    font-family: Montserrat, Helvetica, sans-serif;
 | 
				
			||||||
 | 
					    font-style: italic;
 | 
				
			||||||
 | 
					    font-size: 13px;
 | 
				
			||||||
 | 
					    padding: 3px;
 | 
				
			||||||
 | 
					    position: relative;
 | 
				
			||||||
 | 
					    top: -30px; }
 | 
				
			||||||
 | 
					  .LP-Input--error .LP-Input__Field {
 | 
				
			||||||
 | 
					    margin-bottom: 25px;
 | 
				
			||||||
 | 
					    border-bottom: 2px solid #76323F;
 | 
				
			||||||
 | 
					    margin-bottom: 29px; }
 | 
				
			||||||
 | 
					  .LP-Input--error .LP-Input__Message {
 | 
				
			||||||
 | 
					    color: #76323F; }
 | 
				
			||||||
 | 
					  .LP-Input--disabled .LP-Input__Field, .LP-Input--disabled .LP-Input__Field:disabled {
 | 
				
			||||||
 | 
					    background-color: transparent;
 | 
				
			||||||
 | 
					    border-bottom: 1px dashed #565656;
 | 
				
			||||||
 | 
					    cursor: not-allowed; }
 | 
				
			||||||
 | 
					    label + .LP-Input--disabled .LP-Input__Field, label + .LP-Input--disabled .LP-Input__Field:disabled {
 | 
				
			||||||
 | 
					      color: red; }
 | 
				
			||||||
 | 
					    .LP-Input--disabled .LP-Input__Field:focus, .LP-Input--disabled .LP-Input__Field:active, .LP-Input--disabled .LP-Input__Field:disabled:focus, .LP-Input--disabled .LP-Input__Field:disabled:active {
 | 
				
			||||||
 | 
					      margin-bottom: 30px;
 | 
				
			||||||
 | 
					      border-radius: 0; }
 | 
				
			||||||
 | 
					    .LP-Input--disabled .LP-Input__Field ~ .LP-Input__Message, .LP-Input--disabled .LP-Input__Field:disabled ~ .LP-Input__Message {
 | 
				
			||||||
 | 
					      visibility: hidden; }
 | 
				
			||||||
 | 
					  .LP-Input--disabled .LP-Input__Label {
 | 
				
			||||||
 | 
					    color: #565656; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.LP-Image {
 | 
				
			||||||
 | 
					  object-fit: cover;
 | 
				
			||||||
 | 
					  width: 100%;
 | 
				
			||||||
 | 
					  height: auto;
 | 
				
			||||||
 | 
					  vertical-align: top; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Logo {
 | 
					.LP-Logo {
 | 
				
			||||||
  max-width: 100%;
 | 
					  max-width: 100%;
 | 
				
			||||||
  max-height: 100%;
 | 
					  max-height: 100%;
 | 
				
			||||||
  width: auto;
 | 
					  width: auto;
 | 
				
			||||||
  object-fit: contain; }
 | 
					  object-fit: contain; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.LP-Tag {
 | 
				
			||||||
 | 
					  padding: 8px 14px;
 | 
				
			||||||
 | 
					  background-color: #D7CEC7;
 | 
				
			||||||
 | 
					  border-radius: 2px;
 | 
				
			||||||
 | 
					  width: max-content; }
 | 
				
			||||||
 | 
					  .LP-Tag .LP-Paragraph {
 | 
				
			||||||
 | 
					    padding: 0;
 | 
				
			||||||
 | 
					    margin: 0;
 | 
				
			||||||
 | 
					    font-family: Montserrat, Helvetica, sans-serif;
 | 
				
			||||||
 | 
					    font-size: 1em;
 | 
				
			||||||
 | 
					    display: inline; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Content {
 | 
					.LP-Content {
 | 
				
			||||||
  padding: 35px; }
 | 
					  padding: 35px; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -61,72 +156,90 @@
 | 
				
			|||||||
.LP-TextSection .LP-Text {
 | 
					.LP-TextSection .LP-Text {
 | 
				
			||||||
  line-height: 1.4rem; }
 | 
					  line-height: 1.4rem; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Place .LP-Place__Image {
 | 
					.LP-PlaceTeaser {
 | 
				
			||||||
  width: 280px;
 | 
					  width: 280px; }
 | 
				
			||||||
  height: 165px;
 | 
					  .LP-PlaceTeaser .LP-PlaceTeaser__Image {
 | 
				
			||||||
  object-fit: cover; }
 | 
					    height: 165px;
 | 
				
			||||||
 | 
					    width: 280px;
 | 
				
			||||||
 | 
					    overflow: hidden; }
 | 
				
			||||||
 | 
					    .LP-PlaceTeaser .LP-PlaceTeaser__Image .LP-Image {
 | 
				
			||||||
 | 
					      max-width: unset;
 | 
				
			||||||
 | 
					      max-height: unset;
 | 
				
			||||||
 | 
					      object-fit: cover; }
 | 
				
			||||||
 | 
					  .LP-PlaceTeaser .LP-PlaceTeaser__Meta {
 | 
				
			||||||
 | 
					    display: flex;
 | 
				
			||||||
 | 
					    align-items: center;
 | 
				
			||||||
 | 
					    justify-content: space-between;
 | 
				
			||||||
 | 
					    padding-bottom: 10px; }
 | 
				
			||||||
 | 
					    .LP-PlaceTeaser .LP-PlaceTeaser__Meta .LP-Paragraph {
 | 
				
			||||||
 | 
					      font-family: Montserrat, Helvetica, sans-serif;
 | 
				
			||||||
 | 
					      padding: 0;
 | 
				
			||||||
 | 
					      margin: 0;
 | 
				
			||||||
 | 
					      margin-top: 5px;
 | 
				
			||||||
 | 
					      font-size: 0.9rem; }
 | 
				
			||||||
 | 
					    .LP-PlaceTeaser .LP-PlaceTeaser__Meta .LP-Headline {
 | 
				
			||||||
 | 
					      font-family: Montserrat, Helvetica, sans-serif;
 | 
				
			||||||
 | 
					      color: #565656;
 | 
				
			||||||
 | 
					      font-size: 1rem;
 | 
				
			||||||
 | 
					      padding: 0px;
 | 
				
			||||||
 | 
					      margin: 0px; }
 | 
				
			||||||
 | 
					  .LP-PlaceTeaser .LP-PlaceTeaser__Description {
 | 
				
			||||||
 | 
					    font-family: Roboto, Arial, sans-serif;
 | 
				
			||||||
 | 
					    color: #565656;
 | 
				
			||||||
 | 
					    display: none; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Place .LP-Place__Assets {
 | 
					@media (min-width: 650px) {
 | 
				
			||||||
  display: flex;
 | 
					  .LP-PlaceTeaser--extended {
 | 
				
			||||||
  align-items: center;
 | 
					    display: flex;
 | 
				
			||||||
  justify-content: space-between;
 | 
					    flex-direction: row;
 | 
				
			||||||
  margin-top: 0.8rem;
 | 
					    width: auto;
 | 
				
			||||||
  padding: 0 10px;
 | 
					    padding-right: 25px;
 | 
				
			||||||
  padding-bottom: 10px; }
 | 
					    height: 165px; }
 | 
				
			||||||
 | 
					    .LP-PlaceTeaser--extended .LP-PlaceTeaser__Meta {
 | 
				
			||||||
 | 
					      margin: 0;
 | 
				
			||||||
 | 
					      padding: 5px;
 | 
				
			||||||
 | 
					      padding-left: 25px;
 | 
				
			||||||
 | 
					      display: flex;
 | 
				
			||||||
 | 
					      flex-direction: column;
 | 
				
			||||||
 | 
					      justify-content: space-between;
 | 
				
			||||||
 | 
					      align-items: flex-start; }
 | 
				
			||||||
 | 
					      .LP-PlaceTeaser--extended .LP-PlaceTeaser__Meta .LP-PlaceTeaser__Info .LP-Headline {
 | 
				
			||||||
 | 
					        font-size: 28px; }
 | 
				
			||||||
 | 
					      .LP-PlaceTeaser--extended .LP-PlaceTeaser__Meta .LP-PlaceTeaser__Icons {
 | 
				
			||||||
 | 
					        margin-top: auto; }
 | 
				
			||||||
 | 
					        .LP-PlaceTeaser--extended .LP-PlaceTeaser__Meta .LP-PlaceTeaser__Icons ul {
 | 
				
			||||||
 | 
					          padding: 0;
 | 
				
			||||||
 | 
					          margin: 0; }
 | 
				
			||||||
 | 
					    .LP-PlaceTeaser--extended .LP-PlaceTeaser__Description {
 | 
				
			||||||
 | 
					      display: block;
 | 
				
			||||||
 | 
					      max-height: 55px;
 | 
				
			||||||
 | 
					      overflow: hidden; }
 | 
				
			||||||
 | 
					    .LP-PlaceTeaser--extended .LP-PlaceTeaser__Image {
 | 
				
			||||||
 | 
					      height: 165px;
 | 
				
			||||||
 | 
					      width: 280px;
 | 
				
			||||||
 | 
					      flex-shrink: 0;
 | 
				
			||||||
 | 
					      flex-grow: 0; } }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Place .LP-Place__Info .LP-Place__Title {
 | 
					.LP-TagList .LP-TagList__List {
 | 
				
			||||||
  font-family: "Trebuchet MS", Helvetica, sans-serif;
 | 
					 | 
				
			||||||
  color: #565656;
 | 
					 | 
				
			||||||
  font-size: 1rem;
 | 
					 | 
				
			||||||
  padding: 0px;
 | 
					 | 
				
			||||||
  margin: 0px; }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.LP-Place .LP-Place__Info .LP-Place__Description {
 | 
					 | 
				
			||||||
  font-family: Roboto, Arial, sans-serif;
 | 
					 | 
				
			||||||
  color: #565656; }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.LP-Place .LP-Place__Info .LP-Place__Detail {
 | 
					 | 
				
			||||||
  font-family: "Trebuchet MS", Helvetica, sans-serif;
 | 
					 | 
				
			||||||
  padding: 0;
 | 
					 | 
				
			||||||
  margin: 0;
 | 
					 | 
				
			||||||
  margin-top: 5px;
 | 
					 | 
				
			||||||
  font-size: 0.9rem; }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.LP-SecurityMeasure__List {
 | 
					 | 
				
			||||||
  list-style-type: none;
 | 
					  list-style-type: none;
 | 
				
			||||||
  display: flex;
 | 
					  display: flex;
 | 
				
			||||||
  flex-wrap: wrap;
 | 
					  flex-wrap: wrap;
 | 
				
			||||||
  padding: 0;
 | 
					  padding: 0;
 | 
				
			||||||
  margin: 0; }
 | 
					  margin: 0; }
 | 
				
			||||||
  .LP-SecurityMeasure__List .LP-SecurityMeasure__Item {
 | 
					  .LP-TagList .LP-TagList__List .LP-TagList__Item {
 | 
				
			||||||
    margin: 5px 5px;
 | 
					    margin: 6px; }
 | 
				
			||||||
    padding: 5px 8px;
 | 
					 | 
				
			||||||
    background-color: #D7CEC7;
 | 
					 | 
				
			||||||
    border-radius: 2px; }
 | 
					 | 
				
			||||||
    .LP-SecurityMeasure__List .LP-SecurityMeasure__Item .LP-Text {
 | 
					 | 
				
			||||||
      font-family: "Trebuchet MS", Helvetica, sans-serif;
 | 
					 | 
				
			||||||
      font-size: 1.2rem; }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Header {
 | 
					.LP-Menu .LP-Menu__List {
 | 
				
			||||||
  display: flex;
 | 
					 | 
				
			||||||
  align-items: center;
 | 
					 | 
				
			||||||
  justify-content: space-between;
 | 
					 | 
				
			||||||
  margin-bottom: 70px; }
 | 
					 | 
				
			||||||
  .LP-Header__Logo {
 | 
					 | 
				
			||||||
    max-width: 300px;
 | 
					 | 
				
			||||||
    width: 35%;
 | 
					 | 
				
			||||||
    object-fit: contain; }
 | 
					 | 
				
			||||||
  .LP-Header .LP-Header__Logo {
 | 
					 | 
				
			||||||
    margin: 25px; }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.LP-Menu__List {
 | 
					 | 
				
			||||||
  list-style-type: none;
 | 
					  list-style-type: none;
 | 
				
			||||||
  display: inline-flex;
 | 
					  display: flex;
 | 
				
			||||||
  justify-content: space-around; }
 | 
					  flex-direction: row;
 | 
				
			||||||
 | 
					  justify-content: space-between;
 | 
				
			||||||
 | 
					  padding: 0;
 | 
				
			||||||
 | 
					  margin: 0; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Menu__Item {
 | 
					.LP-Menu .LP-Menu__Item {
 | 
				
			||||||
  padding: 10px 15px;
 | 
					  padding: 15px 0;
 | 
				
			||||||
  margin: 0 15px;
 | 
					  margin: 0;
 | 
				
			||||||
  width: 100px;
 | 
					  width: 100px;
 | 
				
			||||||
  text-align: center;
 | 
					  text-align: center;
 | 
				
			||||||
  background-color: transparent; }
 | 
					  background-color: transparent; }
 | 
				
			||||||
@@ -138,65 +251,80 @@
 | 
				
			|||||||
  .LP-Menu .LP-Link__Text:hover {
 | 
					  .LP-Menu .LP-Link__Text:hover {
 | 
				
			||||||
    color: #76323F; }
 | 
					    color: #76323F; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Introduction .LP-Headline {
 | 
					@media (max-width: 750px) {
 | 
				
			||||||
  font-size: 2rem; }
 | 
					  .LP-Menu .LP-Menu__List {
 | 
				
			||||||
 | 
					    display: flex;
 | 
				
			||||||
 | 
					    flex-direction: row;
 | 
				
			||||||
 | 
					    justify-content: flex-start; } }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Introduction .LP-Text {
 | 
					@media (max-width: 450px) {
 | 
				
			||||||
  font-size: 1.3rem; }
 | 
					  .LP-Menu .LP-Menu__List {
 | 
				
			||||||
 | 
					    justify-content: space-between; } }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Place__Grid {
 | 
					.LP-Header {
 | 
				
			||||||
 | 
					  display: flex;
 | 
				
			||||||
 | 
					  align-items: center;
 | 
				
			||||||
 | 
					  justify-content: space-between;
 | 
				
			||||||
 | 
					  margin-bottom: 70px;
 | 
				
			||||||
 | 
					  height: 60px; }
 | 
				
			||||||
 | 
					  .LP-Header__Logo {
 | 
				
			||||||
 | 
					    height: 60px;
 | 
				
			||||||
 | 
					    margin: 25px;
 | 
				
			||||||
 | 
					    object-fit: cover;
 | 
				
			||||||
 | 
					    max-height: 100%;
 | 
				
			||||||
 | 
					    overflow: hidden; }
 | 
				
			||||||
 | 
					    .LP-Header__Logo .LP-Image {
 | 
				
			||||||
 | 
					      height: 60px; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@media (max-width: 750px) {
 | 
				
			||||||
 | 
					  .LP-Header__Logo {
 | 
				
			||||||
 | 
					    width: 60px; }
 | 
				
			||||||
 | 
					    .LP-Header__Logo .LP-Image {
 | 
				
			||||||
 | 
					      object-position: 0 0;
 | 
				
			||||||
 | 
					      object-fit: cover; } }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@media (max-width: 450px) {
 | 
				
			||||||
 | 
					  .LP-Header__Logo {
 | 
				
			||||||
 | 
					    display: none; }
 | 
				
			||||||
 | 
					  .LP-Header__Navigation {
 | 
				
			||||||
 | 
					    width: 100%; } }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.LP-PlaceGrid .LP-PlaceGrid__Grid {
 | 
				
			||||||
  margin: 0;
 | 
					  margin: 0;
 | 
				
			||||||
  padding: 0;
 | 
					  padding: 0;
 | 
				
			||||||
  list-style-type: none;
 | 
					  list-style-type: none;
 | 
				
			||||||
  display: flex;
 | 
					  display: flex;
 | 
				
			||||||
  flex-direction: row;
 | 
					  flex-direction: row;
 | 
				
			||||||
  flex-wrap: wrap; }
 | 
					  flex-wrap: wrap; }
 | 
				
			||||||
  .LP-Place__Grid > .LP-Place__Item {
 | 
					  .LP-PlaceGrid .LP-PlaceGrid__Grid .LP-PlaceGrid__Item {
 | 
				
			||||||
    margin: 0 15px;
 | 
					    margin: 18px; }
 | 
				
			||||||
    margin-bottom: 50px; }
 | 
					  .LP-PlaceGrid .LP-PlaceGrid__Grid .LP-Link .LP-PlaceTeaser:hover {
 | 
				
			||||||
  .LP-Place__Grid .LP-Link .LP-Place__Description {
 | 
					    box-shadow: 0 0 2px #565656; }
 | 
				
			||||||
    display: none; }
 | 
					 | 
				
			||||||
  .LP-Place__Grid .LP-Link .LP-Place:hover {
 | 
					 | 
				
			||||||
    box-shadow: 0 0 8px #565656; }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-Place__List {
 | 
					.LP-PlaceList .LP-PlaceList__List {
 | 
				
			||||||
  list-style-type: none; }
 | 
					  list-style-type: none; }
 | 
				
			||||||
  .LP-Place__List .LP-Place__Item {
 | 
					  .LP-PlaceList .LP-PlaceList__List .LP-Link .LP-Place:hover {
 | 
				
			||||||
 | 
					    color: #565656;
 | 
				
			||||||
 | 
					    background-color: #f9f9f9;
 | 
				
			||||||
 | 
					    position: relative;
 | 
				
			||||||
 | 
					    left: -2px; }
 | 
				
			||||||
 | 
					    .LP-PlaceList .LP-PlaceList__List .LP-Link .LP-Place:hover > .LP-Place__Image {
 | 
				
			||||||
 | 
					      border-left: 2px #565656 solid; }
 | 
				
			||||||
 | 
					  .LP-PlaceList .LP-PlaceList__List .LP-PlaceList__Item {
 | 
				
			||||||
    max-width: 900px;
 | 
					    max-width: 900px;
 | 
				
			||||||
    min-width: 450px;
 | 
					    min-width: 450px;
 | 
				
			||||||
    margin: 25px 0; }
 | 
					    margin: 18px 0; }
 | 
				
			||||||
    .LP-Place__List .LP-Place__Item .LP-Place {
 | 
					 | 
				
			||||||
      display: flex;
 | 
					 | 
				
			||||||
      flex-direction: row;
 | 
					 | 
				
			||||||
      width: auto;
 | 
					 | 
				
			||||||
      padding-right: 25px; }
 | 
					 | 
				
			||||||
      .LP-Place__List .LP-Place__Item .LP-Place .LP-Place__Assets {
 | 
					 | 
				
			||||||
        margin: 0;
 | 
					 | 
				
			||||||
        padding: 0;
 | 
					 | 
				
			||||||
        padding-left: 25px;
 | 
					 | 
				
			||||||
        display: flex;
 | 
					 | 
				
			||||||
        flex-direction: column;
 | 
					 | 
				
			||||||
        justify-content: space-between;
 | 
					 | 
				
			||||||
        align-items: flex-start; }
 | 
					 | 
				
			||||||
        .LP-Place__List .LP-Place__Item .LP-Place .LP-Place__Assets .LP-Place__Info .LP-Place__Title {
 | 
					 | 
				
			||||||
          font-size: 28px; }
 | 
					 | 
				
			||||||
        .LP-Place__List .LP-Place__Item .LP-Place .LP-Place__Assets .LP-Icon__List {
 | 
					 | 
				
			||||||
          justify-self: flex-end; }
 | 
					 | 
				
			||||||
      .LP-Place__List .LP-Place__Item .LP-Place > .LP-Place__Image {
 | 
					 | 
				
			||||||
        height: 168px;
 | 
					 | 
				
			||||||
        width: 280px; }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-LinkList__List {
 | 
					.LP-LinkList__List {
 | 
				
			||||||
  list-style-type: none;
 | 
					  list-style-type: none;
 | 
				
			||||||
  display: grid;
 | 
					  display: grid;
 | 
				
			||||||
  grid-template-columns: repeat(auto-fit, 300px);
 | 
					  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
 | 
				
			||||||
  margin: 0;
 | 
					  margin: 0;
 | 
				
			||||||
  padding: 0; }
 | 
					  padding: 0; }
 | 
				
			||||||
  .LP-LinkList__List .LP-LinkList__Item {
 | 
					  .LP-LinkList__List .LP-LinkList__Item {
 | 
				
			||||||
    border-left: 1px solid #C09F80;
 | 
					    border-left: 1px solid #C09F80;
 | 
				
			||||||
    width: 100%;
 | 
					    width: 100%;
 | 
				
			||||||
    margin-top: 12px;
 | 
					    margin-top: 12px; }
 | 
				
			||||||
    height: 55px; }
 | 
					 | 
				
			||||||
    .LP-LinkList__List .LP-LinkList__Item .LP-Link {
 | 
					    .LP-LinkList__List .LP-LinkList__Item .LP-Link {
 | 
				
			||||||
      padding: 1em 0 1em 1em;
 | 
					      padding: 1em 0 1em 1em;
 | 
				
			||||||
      width: calc(100% - $-link-padding);
 | 
					      width: calc(100% - $-link-padding);
 | 
				
			||||||
@@ -247,6 +375,44 @@
 | 
				
			|||||||
        .LP-Footer .LP-LinkList__List .LP-LinkList__Item .LP-Link:hover {
 | 
					        .LP-Footer .LP-LinkList__List .LP-LinkList__Item .LP-Link:hover {
 | 
				
			||||||
          background-color: inherit; }
 | 
					          background-color: inherit; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.LP-Form .LP-Form__Fieldset {
 | 
				
			||||||
 | 
					  border: none; }
 | 
				
			||||||
 | 
					  .LP-Form .LP-Form__Fieldset .LP-Form__Legend {
 | 
				
			||||||
 | 
					    margin: 0;
 | 
				
			||||||
 | 
					    padding: 0;
 | 
				
			||||||
 | 
					    font-family: Montserrat, Helvetica, sans-serif;
 | 
				
			||||||
 | 
					    font-size: 21px; }
 | 
				
			||||||
 | 
					  .LP-Form .LP-Form__Fieldset .LP-Form__Composition {
 | 
				
			||||||
 | 
					    display: flex;
 | 
				
			||||||
 | 
					    flex-direction: row;
 | 
				
			||||||
 | 
					    justify-content: space-between; }
 | 
				
			||||||
 | 
					    .LP-Form .LP-Form__Fieldset .LP-Form__Composition .LP-Form__Field {
 | 
				
			||||||
 | 
					      flex: 3 1 100px;
 | 
				
			||||||
 | 
					      padding: 6px 15px; }
 | 
				
			||||||
 | 
					      .LP-Form .LP-Form__Fieldset .LP-Form__Composition .LP-Form__Field--wider {
 | 
				
			||||||
 | 
					        flex: 5 1; }
 | 
				
			||||||
 | 
					      .LP-Form .LP-Form__Fieldset .LP-Form__Composition .LP-Form__Field--wide {
 | 
				
			||||||
 | 
					        flex: 4 1; }
 | 
				
			||||||
 | 
					      .LP-Form .LP-Form__Fieldset .LP-Form__Composition .LP-Form__Field--narrow {
 | 
				
			||||||
 | 
					        flex: 2 0; }
 | 
				
			||||||
 | 
					      .LP-Form .LP-Form__Fieldset .LP-Form__Composition .LP-Form__Field--narrower {
 | 
				
			||||||
 | 
					        flex: 1 0; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@media (max-width: 650px) {
 | 
				
			||||||
 | 
					  .LP-Form .LP-Form__Fieldset .LP-Form__Composition--breakable {
 | 
				
			||||||
 | 
					    display: flex;
 | 
				
			||||||
 | 
					    flex-direction: column;
 | 
				
			||||||
 | 
					    justify-content: space-between; } }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@media (max-width: 450px) {
 | 
				
			||||||
 | 
					  .LP-Form .LP-Form__Fieldset .LP-Form__Composition {
 | 
				
			||||||
 | 
					    display: flex;
 | 
				
			||||||
 | 
					    flex-direction: column;
 | 
				
			||||||
 | 
					    justify-content: space-between; }
 | 
				
			||||||
 | 
					    .LP-Form .LP-Form__Fieldset .LP-Form__Composition .LP-Form__Field {
 | 
				
			||||||
 | 
					      flex: 3 1 100px;
 | 
				
			||||||
 | 
					      padding: 12px 15px; } }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-MainContainer {
 | 
					.LP-MainContainer {
 | 
				
			||||||
  margin: 0 auto;
 | 
					  margin: 0 auto;
 | 
				
			||||||
  max-width: 1280px; }
 | 
					  max-width: 1280px; }
 | 
				
			||||||
@@ -254,45 +420,50 @@
 | 
				
			|||||||
.LP-HorizontalLine {
 | 
					.LP-HorizontalLine {
 | 
				
			||||||
  color: #565656; }
 | 
					  color: #565656; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@media (max-width: 650px) {
 | 
				
			||||||
 | 
					  .LP-MainContainer {
 | 
				
			||||||
 | 
					    width: 100%; } }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-PlaceOverview .LP-PlaceOverview__Info .LP-PlaceOveriew__Image {
 | 
					.LP-PlaceOverview .LP-PlaceOverview__Info .LP-PlaceOveriew__Image {
 | 
				
			||||||
  width: 700px;
 | 
					  width: 700px;
 | 
				
			||||||
  height: 450px;
 | 
					 | 
				
			||||||
  box-shadow: 0 0 10px #565656;
 | 
					  box-shadow: 0 0 10px #565656;
 | 
				
			||||||
  object-fit: cover;
 | 
					  object-fit: cover;
 | 
				
			||||||
 | 
					  object-position: 0 0;
 | 
				
			||||||
  float: right;
 | 
					  float: right;
 | 
				
			||||||
  margin-left: 35px;
 | 
					  margin-left: 35px;
 | 
				
			||||||
  margin-bottom: 35px; }
 | 
					  margin-bottom: 35px;
 | 
				
			||||||
 | 
					  overflow: hidden; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-PlaceOverview .LP-PlaceOverview__Info .LP-PlaceOverView__Description {
 | 
					.LP-PlaceOverview .LP-PlaceOverview__Info .LP-PlaceOverView__Description {
 | 
				
			||||||
  padding: 0px;
 | 
					  padding: 0px;
 | 
				
			||||||
  position: relative;
 | 
					  position: relative;
 | 
				
			||||||
  top: -15px; }
 | 
					  top: -15px; }
 | 
				
			||||||
 | 
					  .LP-PlaceOverview .LP-PlaceOverview__Info .LP-PlaceOverView__Description .LP-Headline {
 | 
				
			||||||
 | 
					    position: relative;
 | 
				
			||||||
 | 
					    top: 15px; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.LP-PlaceOverview .LP-PlaceOverView__ImageList {
 | 
					.LP-PlaceOverview .LP-PlaceOverView__ImageList {
 | 
				
			||||||
  list-style-type: none;
 | 
					  list-style-type: none;
 | 
				
			||||||
  display: grid;
 | 
					  display: grid;
 | 
				
			||||||
  grid-template-columns: repeat(auto-fit, 300px);
 | 
					  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
 | 
				
			||||||
  margin: 0px;
 | 
					  margin: 0px;
 | 
				
			||||||
  padding: 0px; }
 | 
					  padding: 0px; }
 | 
				
			||||||
  .LP-PlaceOverview .LP-PlaceOverView__ImageList .LP-PlaceOverView__ImageItem img {
 | 
					  .LP-PlaceOverview .LP-PlaceOverView__ImageList .LP-PlaceOverView__ImageItem {
 | 
				
			||||||
    box-shadow: 0 0 5px #565656;
 | 
					 | 
				
			||||||
    height: 200px;
 | 
					 | 
				
			||||||
    width: 290px;
 | 
					 | 
				
			||||||
    object-fit: cover;
 | 
					 | 
				
			||||||
    margin-top: 10px; }
 | 
					    margin-top: 10px; }
 | 
				
			||||||
 | 
					    .LP-PlaceOverview .LP-PlaceOverView__ImageList .LP-PlaceOverView__ImageItem .LP-Link {
 | 
				
			||||||
 | 
					      overflow: hidden; }
 | 
				
			||||||
 | 
					    .LP-PlaceOverview .LP-PlaceOverView__ImageList .LP-PlaceOverView__ImageItem .LP-Image {
 | 
				
			||||||
 | 
					      box-shadow: 0 0 5px #565656;
 | 
				
			||||||
 | 
					      height: 200px;
 | 
				
			||||||
 | 
					      width: 290px;
 | 
				
			||||||
 | 
					      object-fit: cover; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@media (max-width: 1290px) {
 | 
					@media (max-width: 1000px) {
 | 
				
			||||||
  .LP-PlaceOverview .LP-PlaceOverview__Info .LP-TextSection {
 | 
					  .LP-PlaceOverview .LP-PlaceOverview__Info .LP-TextSection {
 | 
				
			||||||
    margin-top: -100px; }
 | 
					    margin-top: 30px; }
 | 
				
			||||||
  .LP-PlaceOverview .LP-PlaceOverview__Info .LP-Headline {
 | 
					 | 
				
			||||||
    position: relative;
 | 
					 | 
				
			||||||
    top: -400px;
 | 
					 | 
				
			||||||
    margin-bottom: 100px;
 | 
					 | 
				
			||||||
    width: 100vw;
 | 
					 | 
				
			||||||
    display: block; }
 | 
					 | 
				
			||||||
  .LP-PlaceOverview .LP-PlaceOverview__Info .LP-PlaceOveriew__Image {
 | 
					  .LP-PlaceOverview .LP-PlaceOverview__Info .LP-PlaceOveriew__Image {
 | 
				
			||||||
    float: none;
 | 
					    float: none;
 | 
				
			||||||
    width: calc(100vw - 30px);
 | 
					    width: 100%;
 | 
				
			||||||
 | 
					    height: auto;
 | 
				
			||||||
    margin: 0;
 | 
					    margin: 0;
 | 
				
			||||||
    padding: 0;
 | 
					    padding: 0; } }
 | 
				
			||||||
    margin-left: 7px; } }
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
@@ -0,0 +1,16 @@
 | 
				
			|||||||
 | 
					{% load widget_tweaks %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<div class="LP-Input {% if field.errors %} LP-Input--error {% endif %}">
 | 
				
			||||||
 | 
						<label for="{{field.id_for_label}}" class="LP-Input__Label">{{field.label}}</label>
 | 
				
			||||||
 | 
						{% render_field field class="LP-Input__Field"%}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						<span class="LP-Input__Message">
 | 
				
			||||||
 | 
							{% if field.errors %} 
 | 
				
			||||||
 | 
								{% for error in field.errors%}
 | 
				
			||||||
 | 
									{{error}}
 | 
				
			||||||
 | 
								{% endfor %}
 | 
				
			||||||
 | 
							{% elif field.help_text%}
 | 
				
			||||||
 | 
								{{ field.help_text }}
 | 
				
			||||||
 | 
							{% endif %}
 | 
				
			||||||
 | 
						</span>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
@@ -1,15 +0,0 @@
 | 
				
			|||||||
{% extends 'global.html'%}
 | 
					 | 
				
			||||||
{% load static %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# {% block title %}Voucher-Überprüfung{% endblock %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{% block maincontent %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<h2>Voucher-Überprüfung</h2>
 | 
					 | 
				
			||||||
<form method="post">
 | 
					 | 
				
			||||||
  {% csrf_token %}
 | 
					 | 
				
			||||||
  {{ voucher_form.as_p }}
 | 
					 | 
				
			||||||
  <button type="submit">Überprüfen</button>
 | 
					 | 
				
			||||||
</form>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{% endblock maincontent %}
 | 
					 | 
				
			||||||
@@ -1,7 +1,6 @@
 | 
				
			|||||||
from django.urls import path
 | 
					from django.urls import path
 | 
				
			||||||
from .views import (
 | 
					from .views import (
 | 
				
			||||||
    hello_world, 
 | 
					    hello_world,
 | 
				
			||||||
    VoucherVerifyView,
 | 
					 | 
				
			||||||
    place_detail_view, 
 | 
					    place_detail_view, 
 | 
				
			||||||
    place_list_view, 
 | 
					    place_list_view, 
 | 
				
			||||||
    SignUpView, 
 | 
					    SignUpView, 
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -5,40 +5,16 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
from django.shortcuts import render, redirect, get_object_or_404
 | 
					from django.shortcuts import render, redirect, get_object_or_404
 | 
				
			||||||
from django.urls import reverse_lazy
 | 
					from django.urls import reverse_lazy
 | 
				
			||||||
from django.views.generic.edit import CreateView, UpdateView
 | 
					from django.views.generic.edit import CreateView
 | 
				
			||||||
from django.views import View
 | 
					from django.views import View
 | 
				
			||||||
from django.http import Http404
 | 
					from django.http import Http404
 | 
				
			||||||
 | 
					from django.views.generic.edit import UpdateView
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from .forms import ExplorerCreationForm, PlaceForm, PlaceImageCreateForm, VoucherVerifyForm
 | 
					from .forms import ExplorerCreationForm, PlaceForm, PlaceImageCreateForm
 | 
				
			||||||
from .models import Place, PlaceImage, Voucher
 | 
					from .models import Place, PlaceImage, Voucher
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Create your views here.
 | 
					# Create your views here.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class VoucherVerifyView(View):
 | 
					 | 
				
			||||||
    formclass = VoucherVerifyForm
 | 
					 | 
				
			||||||
    fields = ['code']
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
    def get(self, request, *args, **kwargs):
 | 
					 | 
				
			||||||
        voucher_form = VoucherVerifyForm()
 | 
					 | 
				
			||||||
        return render(request, 'voucher-verify.html', {'voucher_form': voucher_form})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    def post(self, request, *args, **kwargs):
 | 
					 | 
				
			||||||
        voucher_form  = VoucherVerifyForm(request.POST)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if voucher_form.is_valid():
 | 
					 | 
				
			||||||
            # Compare voucher from form with available vouchers in Voucher.
 | 
					 | 
				
			||||||
            for voucher in Voucher.objects.all():
 | 
					 | 
				
			||||||
                print(voucher.code)
 | 
					 | 
				
			||||||
                if voucher.code == voucher_form.cleaned_data.get('code'):
 | 
					 | 
				
			||||||
                    kwargs_to_pass = {
 | 
					 | 
				
			||||||
                        'voucher_pk': voucher.pk
 | 
					 | 
				
			||||||
                    }
 | 
					 | 
				
			||||||
                    return redirect(reverse_lazy('signup'), kwargs=kwargs_to_pass)
 | 
					 | 
				
			||||||
                else:
 | 
					 | 
				
			||||||
                    return redirect(reverse_lazy('enter_voucher'))
 | 
					 | 
				
			||||||
        else:
 | 
					 | 
				
			||||||
            return redirect(reverse_lazy('enter_voucher'))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class SignUpView(CreateView):
 | 
					class SignUpView(CreateView):
 | 
				
			||||||
    form_class = ExplorerCreationForm
 | 
					    form_class = ExplorerCreationForm
 | 
				
			||||||
    success_url = reverse_lazy('login')
 | 
					    success_url = reverse_lazy('login')
 | 
				
			||||||
@@ -62,6 +38,7 @@ class PlaceUpdateView(UpdateView):
 | 
				
			|||||||
        return reverse_lazy('place_detail', kwargs={'pk':self.get_object().pk})
 | 
					        return reverse_lazy('place_detail', kwargs={'pk':self.get_object().pk})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class PlaceCreateView(View):
 | 
					class PlaceCreateView(View):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def get(self, request, *args, **kwargs):
 | 
					    def get(self, request, *args, **kwargs):
 | 
				
			||||||
        place_image_form = PlaceImageCreateForm()
 | 
					        place_image_form = PlaceImageCreateForm()
 | 
				
			||||||
        place_form = PlaceForm()
 | 
					        place_form = PlaceForm()
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,15 +1,40 @@
 | 
				
			|||||||
{% extends 'global.html'%}
 | 
					{% extends 'global.html'%}
 | 
				
			||||||
{% load static %}
 | 
					{% load static %}
 | 
				
			||||||
 | 
					{% load widget_tweaks %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# {% block title %}Registrierung{% endblock %}
 | 
					# {% block title %}Registrierung{% endblock %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block maincontent %}
 | 
					{% block maincontent %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<h2>Registrierung</h2>
 | 
					<form class="LP-Form" method="POST">
 | 
				
			||||||
<form method="post">
 | 
						<fieldset class="LP-Form__Fieldset">
 | 
				
			||||||
  {% csrf_token %}
 | 
							<legend class="LP-Form__Legend">Registrierung</legend>
 | 
				
			||||||
  {{ form.as_p }}
 | 
							{% csrf_token %}
 | 
				
			||||||
  <button type="submit">Sign up</button>
 | 
							<div class="LP-Form__Composition LP-Form__Composition--breakable">
 | 
				
			||||||
 | 
								<div class="LP-Form__Field">
 | 
				
			||||||
 | 
									{% include 'partials/form/inputField.html' with field=form.username %}
 | 
				
			||||||
 | 
								</div>
 | 
				
			||||||
 | 
								<div class="LP-Form__Field">
 | 
				
			||||||
 | 
									{% include 'partials/form/inputField.html' with field=form.email %}
 | 
				
			||||||
 | 
								</div>
 | 
				
			||||||
 | 
							</div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							<div class="LP-Form__Composition">
 | 
				
			||||||
 | 
								<div class="LP-Form__Field">
 | 
				
			||||||
 | 
									{% include 'partials/form/inputField.html' with field=form.password1 %}
 | 
				
			||||||
 | 
								</div>
 | 
				
			||||||
 | 
							</div>
 | 
				
			||||||
 | 
							<div class="LP-Form__Composition">
 | 
				
			||||||
 | 
								<div class="LP-Form__Field">
 | 
				
			||||||
 | 
									{% include 'partials/form/inputField.html' with field=form.password2 %}
 | 
				
			||||||
 | 
								</div>
 | 
				
			||||||
 | 
							</div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							<div class="LP-Form__Composition">
 | 
				
			||||||
 | 
								<input type="submit" class="LP-Button" value="Registrieren"/>
 | 
				
			||||||
 | 
							</div>
 | 
				
			||||||
 | 
						</fieldset>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
</form>
 | 
					</form>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% endblock maincontent %}
 | 
					{% endblock maincontent %}
 | 
				
			||||||
		Reference in New Issue
	
	Block a user