Просмотр исходного кода

changed 'product' to 'object' in detail template

Juan Carlos 4 лет назад
Родитель
Сommit
bf22fc785b

+ 86 - 86
marktplatz/templates/marktplatz/product_detail.html

@@ -32,20 +32,20 @@
 
 
 	}
 	}
 
 
-	.product-text strong {
+	.object-text strong {
 
 
 		font-weight: bolder;
 		font-weight: bolder;
 		font: "NeuzeitGro-Bla", sans-serif;
 		font: "NeuzeitGro-Bla", sans-serif;
 
 
 	}
 	}
 
 
-	.product-text {
+	.object-text {
 
 
 		line-height: 1.2;
 		line-height: 1.2;
 		color: #000;
 		color: #000;
 	}
 	}
 
 
-	.product-text h1,
+	.object-text h1,
 	h2,
 	h2,
 	h3,
 	h3,
 	h4,
 	h4,
@@ -54,7 +54,7 @@
 		color: #469CA8;
 		color: #469CA8;
 	}
 	}
 
 
-	.product-color {
+	.object-color {
 
 
 		color: #469CA8;
 		color: #469CA8;
 
 
@@ -79,18 +79,18 @@
 <!-- <hr style="color: black; background-color: black; margin-top: 0px; width: 130%; display: flex; margin-left: -20px; margin-right:20px "> -->
 <!-- <hr style="color: black; background-color: black; margin-top: 0px; width: 130%; display: flex; margin-left: -20px; margin-right:20px "> -->
 
 
 <div class="container " style="">
 <div class="container " style="">
-		<div class="row gemain-color product-text">
+		<div class="row gemain-color object-text">
 				<div class="col-sm-6">
 				<div class="col-sm-6">
 
 
 
 
-					<h1 class="titlepro" style="">{{ product.name }}</h1>
+					<h1 class="titlepro" style="">{{ object.name }}</h1>
 
 
-					<p class="lead kur">{% if product.claim %}{{ product.claim }}{% endif %}</p>
+					<p class="lead kur">{% if object.claim %}{{ object.claim }}{% endif %}</p>
 
 
-					<div class="row product-color">
+					<div class="row object-color">
 						<div class="col-sm-4">{% include "marktplatz/modal-share.html" %}</div>
 						<div class="col-sm-4">{% include "marktplatz/modal-share.html" %}</div>
 							<div class="col-sm-4"> {% include "marktplatz/modal-sa.html" %}</div>
 							<div class="col-sm-4"> {% include "marktplatz/modal-sa.html" %}</div>
-			        <div class="col-sm-4">{% if product.email  %} {{ product.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}{% endif %}</div>
+			        <div class="col-sm-4">{% if object.email  %} {{ object.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}{% endif %}</div>
 			    </div>
 			    </div>
 
 
 					<div class="">
 					<div class="">
@@ -109,19 +109,19 @@
 					<div class="">
 					<div class="">
 						<p><strong>Wohnungsangebot</strong>:<br>
 						<p><strong>Wohnungsangebot</strong>:<br>
 
 
-							{% if product.frei == 'JAJA' %}
+							{% if object.frei == 'JAJA' %}
 								Wohnung frei.
 								Wohnung frei.
-								{% if product.kfrei %}
-									{{ product.kfrei }}
-									{% if product.email  %}<p>{{ product.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}</p>{% endif %}
+								{% if object.kfrei %}
+									{{ object.kfrei }}
+									{% if object.email  %}<p>{{ object.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}</p>{% endif %}
 								{% endif %}
 								{% endif %}
 							{% endif %}
 							{% endif %}
 
 
-							{% if product.frei == 'WART' %}
+							{% if object.frei == 'WART' %}
 								Wir haben derzeit keine Wohnung frei, aber wir melden uns, wenn etwas frei wird. Aktiviere die Benachrichtigung!
 								Wir haben derzeit keine Wohnung frei, aber wir melden uns, wenn etwas frei wird. Aktiviere die Benachrichtigung!
 							{% endif %}
 							{% endif %}
 
 
-							{% if product.frei == 'NEIN' %}
+							{% if object.frei == 'NEIN' %}
 								Wir haben derzeit keine Wohnung  und führen auch keine Warteliste, auf die du dich setzen lassen kannst.
 								Wir haben derzeit keine Wohnung  und führen auch keine Warteliste, auf die du dich setzen lassen kannst.
 							{% endif %}
 							{% endif %}
 
 
@@ -131,18 +131,18 @@
 
 
 
 
 					<!-- <div class="">
 					<!-- <div class="">
-						{{  product.mitmachen  }}
+						{{  object.mitmachen  }}
 					</div> -->
 					</div> -->
 
 
-					<p>{% if product.wohnprojekt.inseratstext  %}<strong>{% field_name product.wohnprojekt 'inseratstext' %}</strong>:<br>{{ product.wohnprojekt.inseratstext }} {% if product.email  %}<p>{{ product.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}</p>{% endif %}{% endif %}</p>
+					<p>{% if object.inseratstext  %}<strong>{% field_name object 'inseratstext' %}</strong>:<br>{{ object.inseratstext }} {% if object.email  %}<p>{{ object.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}</p>{% endif %}{% endif %}</p>
 
 
 					<div class="">
 					<div class="">
 						&nbsp;
 						&nbsp;
 					</div>
 					</div>
 
 
 
 
-					<p class="">{% if product.beschreibung %}<strong>{% field_name product 'beschreibung' %}</strong>:<br>{{ product.beschreibung | safe | linebreaks   }}{% endif %}</p>
-					<p class="">{% if product.learning %}<strong>{% field_name product 'learning' %}</strong>:<br>{{ product.learning | safe | linebreaks  }}{% endif %}</p>
+					<p class="">{% if object.beschreibung %}<strong>{% field_name object 'beschreibung' %}</strong>:<br>{{ object.beschreibung | safe | linebreaks   }}{% endif %}</p>
+					<p class="">{% if object.learning %}<strong>{% field_name object 'learning' %}</strong>:<br>{{ object.learning | safe | linebreaks  }}{% endif %}</p>
 
 
 
 
 					<div class="">
 					<div class="">
@@ -155,7 +155,7 @@
 
 
 
 
 
 
-					{% for video in product.video_set.all %}
+					{% for video in object.video_set.all %}
 
 
 						<video autoplay style="width: 100%;height: auto;vertical-align: middle; padding-bottom: 10px" controls>
 						<video autoplay style="width: 100%;height: auto;vertical-align: middle; padding-bottom: 10px" controls>
 							<source src="{{video.image.url}}" type="video/mp4">
 							<source src="{{video.image.url}}" type="video/mp4">
@@ -163,8 +163,8 @@
 
 
 					{% endfor %}
 					{% endfor %}
 
 
-					{% if product.media_set %}
-						{% for media in product.media_set.all %}
+					{% if object.media_set %}
+						{% for media in object.media_set.all %}
 							{% if not forloop.first %}
 							{% if not forloop.first %}
 								{% if forloop.counter < 6  %}
 								{% if forloop.counter < 6  %}
 									<div class="image-detail" style="flex: {% get_ratio media %}; ">
 									<div class="image-detail" style="flex: {% get_ratio media %}; ">
@@ -187,7 +187,7 @@
 
 
 
 
 					<div class="image-detail" style="">
 					<div class="image-detail" style="">
-						<img href="{{product.media_set.first.image_big.url}}"  src="{{product.media_set.first.image_norm.url }}" class="gallery img-fluid img-responsive"  alt="" style="width: 100%;height: auto;vertical-align: middle;">
+						<img href="{{object.media_set.first.image_big.url}}"  src="{{object.media_set.first.image_norm.url }}" class="gallery img-fluid img-responsive"  alt="" style="width: 100%;height: auto;vertical-align: middle;">
 					</div>
 					</div>
 
 
 
 
@@ -195,26 +195,26 @@
 					<h5 class=" mediumkur">Kontakt</h5>
 					<h5 class=" mediumkur">Kontakt</h5>
 					<br />
 					<br />
 
 
-					<p>{{ product.adresse }}{% if product.adresse_zusatz  %},	{{ product.adresse_zusatz }}{% endif %}{% if product.plz  %}, {{ product.plz }}{% endif %}{% if product.ort %}, {{ product.get_ort_display }}{% endif %}</p>
+					<p>{{ object.adresse }}{% if object.adresse_zusatz  %},	{{ object.adresse_zusatz }}{% endif %}{% if object.plz  %}, {{ object.plz }}{% endif %}{% if object.ort %}, {{ object.get_ort_display }}{% endif %}</p>
 
 
 					<div class="row">
 					<div class="row">
 							<div class="col-sm-4">
 							<div class="col-sm-4">
-								{% if product.email  %}<p>{{ product.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}</p>{% endif %}
+								{% if object.email  %}<p>{{ object.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}</p>{% endif %}
 
 
 							</div>
 							</div>
 							<div class="col-sm-8">
 							<div class="col-sm-8">
-									{% if product.email  %}<p><a href="mailto:{{ product.email | obfuscate }}" >{{ product.email | obfuscate }}</a></p>{% endif %}
+									{% if object.email  %}<p><a href="mailto:{{ object.email | obfuscate }}" >{{ object.email | obfuscate }}</a></p>{% endif %}
 
 
 							</div>
 							</div>
 					</div>
 					</div>
 
 
 					<div class="row">
 					<div class="row">
 							<div class="col-sm-4">
 							<div class="col-sm-4">
-								{% if product.website  %}<p><a href="{{  product.website }}" target="_blank" rel="noopener">Webseite</a></p>{% endif %}
+								{% if object.website  %}<p><a href="{{  object.website }}" target="_blank" rel="noopener">Webseite</a></p>{% endif %}
 
 
 							</div>
 							</div>
 							<div class="col-sm-8">
 							<div class="col-sm-8">
-								{% if product.website  %}<p><a href="{{  product.website }}" target="_blank" rel="noopener">{{  product.website }}</a></p>{% endif %}
+								{% if object.website  %}<p><a href="{{  object.website }}" target="_blank" rel="noopener">{{  object.website }}</a></p>{% endif %}
 
 
 							</div>
 							</div>
 					</div>
 					</div>
@@ -229,55 +229,55 @@
 
 
 					{% block detail %}
 					{% block detail %}
 
 
-					<p>{{ product.kind_of_product }}, gegründet {{ product.gruendungsjahr }}{% if product.betriebgenommen  %}, in Betrieb genommen: {{ product.betriebgenommen }}{% endif %}.</p>
-					<p><strong>Rechtsform</strong>: {{ product.rechtsform }}</p>
-					<!-- XXX --> <p>{{ product.wohnprojekt.artmodell }}</p>
-					<p>{% if product.orga  %}<strong>{% field_name product 'orga' %}</strong>: {{ product.orga }}{% endif %}</p>
-					<!-- XXX --> <p>{% if product.wohnprojekt.eigentum  %}<strong>{% field_name product.wohnprojekt 'eigentum' %}</strong>: {{ product.wohnprojekt.get_eigentum_display }}{% endif %}</p>
-					<!-- XXX -->  <p>{% if product.wohnprojekt.gprojekte  %}<strong>Gemeinschaftliche Projekte</strong>: {{ product.wohnprojekt.gprojekte }}{% endif %}</p>
+					<p>{{ object.kind_of_product }}, gegründet {{ object.gruendungsjahr }}{% if object.betriebgenommen  %}, in Betrieb genommen: {{ object.betriebgenommen }}{% endif %}.</p>
+					<p><strong>Rechtsform</strong>: {{ object.rechtsform }}</p>
+					<!-- XXX --> <p>{{ object.artmodell }}</p>
+					<p>{% if object.orga  %}<strong>{% field_name object 'orga' %}</strong>: {{ object.orga }}{% endif %}</p>
+					<!-- XXX --> <p>{% if object.eigentum  %}<strong>{% field_name object 'eigentum' %}</strong>: {{ object.get_eigentum_display }}{% endif %}</p>
+					<!-- XXX -->  <p>{% if object.gprojekte  %}<strong>Gemeinschaftliche Projekte</strong>: {{ object.gprojekte }}{% endif %}</p>
 
 
 
 
 
 
-					<p>{% if product.wohnprojekt.zielgruppen  %}<strong>Besondere Zielgruppen</strong>: {{ product.wohnprojekt.zielgruppen }}{% endif %}</p>
-					<p>{% if product.wohnprojekt.freiraumangebote  %}<strong>Freiraumangebote</strong>: {{ product.wohnprojekt.freiraumangebote }}{% endif %}</p>
-					<p>{% if product.wohnprojekt.oekologie  %}<strong>{% field_name product.wohnprojekt 'oekologie' %}</strong>: {{ product.wohnprojekt.oekologie }}{% endif %}</p>
-					<p>{% if product.wohnprojekt.schwerpunkt  %}<strong>{% field_name product.wohnprojekt 'schwerpunkt' %}</strong>: {{ product.wohnprojekt.schwerpunkt }}{% endif %}</p>
+					<p>{% if object.zielgruppen  %}<strong>Besondere Zielgruppen</strong>: {{ object.zielgruppen }}{% endif %}</p>
+					<p>{% if object.freiraumangebote  %}<strong>Freiraumangebote</strong>: {{ object.freiraumangebote }}{% endif %}</p>
+					<p>{% if object.oekologie  %}<strong>{% field_name object 'oekologie' %}</strong>: {{ object.oekologie }}{% endif %}</p>
+					<p>{% if object.schwerpunkt  %}<strong>{% field_name object 'schwerpunkt' %}</strong>: {{ object.schwerpunkt }}{% endif %}</p>
 
 
 
 
 					<br />
 					<br />
 					<h5 class=" mediumkur">Kenndaten</h5>
 					<h5 class=" mediumkur">Kenndaten</h5>
 					<br />
 					<br />
 
 
-					<p>{{ product.wohnprojekt.get_altneu_display }}, {{ product.wohnprojekt.bauweise }}</p>
-					<p><strong>Bautr&auml;ger</strong>: {{ product.wohnprojekt.bautraeger }}</p>
-					<p>{% if product.wohnprojekt.architektur  %}<strong>{% field_name product.wohnprojekt 'architektur' %}:</strong>  {{  product.wohnprojekt.architektur  }}{% endif %}</p>
-					<p>{% if product.wohnprojekt.wohnbaufoerderung  %}<strong>{% field_name product.wohnprojekt 'wohnbaufoerderung' %}:</strong>  {{ product.wohnprojekt.wohnbaufoerderung }}{% endif %}</p>
+					<p>{% if object.altneu       %}{{ object.get_altneu_display }}{% endif %}{% if object.bauweise %}, {{ object.bauweise }}{% endif %}</p>
+					<p>{% if object.bautraeger   %}<strong>{% field_name object 'bautraeger' %}:</strong>: {{ object.bautraeger }}{% endif %}</p>
+					<p>{% if object.architektur  %}<strong>{% field_name object 'architektur' %}:</strong>  {{  object.architektur  }}{% endif %}</p>
+					<p>{% if object.wohnbaufoerderung  %}<strong>{% field_name object 'wohnbaufoerderung' %}:</strong>  {{ object.wohnbaufoerderung }}{% endif %}</p>
 
 
-					<p>im Haus Wohnen ca {{ product.wohnprojekt.aerwachsene }} Erwachsene und {{  product.wohnprojekt.akinder }} Kinder.
-						Anzahl der Mitglieder: {{ product.wohnprojekt.amitglieder }}
+					<p>im Haus Wohnen ca {{ object.aerwachsene }} Erwachsene und {{  object.akinder }} Kinder.
+						Anzahl der Mitglieder: {{ object.amitglieder }}
 					</p>
 					</p>
-					<p>{% if product.wohnprojekt.awohnungen  %}<strong>{% field_name product.wohnprojekt 'awohnungen' %}:</strong>  {{  product.wohnprojekt.awohnungen  }} Wohnungen{% endif %}</p>
-					<p>{% if product.wohnprojekt.gaestwohnungen  %}<strong>{% field_name product.wohnprojekt 'gaestwohnungen' %}:</strong>  {{ product.wohnprojekt.gaestwohnungen }}{% endif %}</p>
-					<p>{% if product.wohnprojekt.wohnflaeche  %}<strong>{% field_name product.wohnprojekt 'wohnflaeche' %}:</strong>  {{ product.wohnprojekt.wohnflaeche }} m<sup>2</sup>{% endif %}</p>
-					<p>{% if product.wohnprojekt.sonderwohnformen  %}<strong>{% field_name product.wohnprojekt 'sonderwohnformen' %}</strong>: {{ product.wohnprojekt.sonderwohnformen }}{% endif %}</p>
-			    <p>{% if product.wohnprojekt.gewerbeflaechen  %}<strong>{% field_name product.wohnprojekt 'gewerbeflaechen' %}:</strong>  {{ product.wohnprojekt.gewerbeflaechen }} m<sup>2</sup>{% endif %}</p>
-			    <p>{% if product.wohnprojekt.gewerbe %}<strong>{% field_name product.wohnprojekt 'gewerbe' %}:</strong>  {{ product.wohnprojekt.gewerbe }}{% endif %}</p>
-			    <p>{% if product.wohnprojekt.gemeinschaftsflaeche  %}<strong>{% field_name product.wohnprojekt 'gemeinschaftsflaeche' %}:</strong>  {{ product.wohnprojekt.gemeinschaftsflaeche }} m<sup>2</sup>{% endif %}</p>
+					<p>{% if object.awohnungen  %}<strong>{% field_name object 'awohnungen' %}:</strong>  {{  object.awohnungen  }} Wohnungen{% endif %}</p>
+					<p>{% if object.gaestwohnungen  %}<strong>{% field_name object 'gaestwohnungen' %}:</strong>  {{ object.gaestwohnungen }}{% endif %}</p>
+					<p>{% if object.wohnflaeche  %}<strong>{% field_name object 'wohnflaeche' %}:</strong>  {{ object.wohnflaeche }} m<sup>2</sup>{% endif %}</p>
+					<p>{% if object.sonderwohnformen  %}<strong>{% field_name object 'sonderwohnformen' %}</strong>: {{ object.sonderwohnformen }}{% endif %}</p>
+			    <p>{% if object.gewerbeflaechen  %}<strong>{% field_name object 'gewerbeflaechen' %}:</strong>  {{ object.gewerbeflaechen }} m<sup>2</sup>{% endif %}</p>
+			    <p>{% if object.gewerbe %}<strong>{% field_name object 'gewerbe' %}:</strong>  {{ object.gewerbe }}{% endif %}</p>
+			    <p>{% if object.gemeinschaftsflaeche  %}<strong>{% field_name object 'gemeinschaftsflaeche' %}:</strong>  {{ object.gemeinschaftsflaeche }} m<sup>2</sup>{% endif %}</p>
 					<p><strong>Gemeinschaftsräume</strong>:
 					<p><strong>Gemeinschaftsräume</strong>:
-						{{ product.wohnprojekt.gemeinschaftr }}{% if product.wohnprojekt.kgemeinschaftr  %}, {{ product.wohnprojekt.kgemeinschaftr }}{% endif %}
+						{{ object.gemeinschaftr }}{% if object.kgemeinschaftr  %}, {{ object.kgemeinschaftr }}{% endif %}
 					</p>
 					</p>
-			    <p>{% if product.wohnprojekt.sonstige_flaechen  %}<strong>{% field_name product.wohnprojekt 'sonstige_flaechen' %}:</strong>  {{ product.wohnprojekt.sonstige_flaechen }} m<sup>2</sup>{% endif %}</p>
-			    <p>{% if product.wohnprojekt.flaeche  %}<strong>{% field_name product.wohnprojekt 'flaeche' %}:</strong>  {{ product.wohnprojekt.flaeche }} m<sup>2</sup>{% endif %}</p>
-					<p>{% if product.wohnprojekt.kflaechen  %}<strong>{% field_name product.wohnprojekt 'kflaechen' %}:</strong>  {{ product.wohnprojekt.kflaechen }} m<sup>2</sup>{% endif %}</p>
-					<p>{% if product.wohnprojekt.parbeiten  %}Im Haus arbeiten ca {{ product.wohnprojekt.parbeiten }} Personen.{% endif %}
-						{% if product.wohnprojekt.karbeiten  %}{{ product.wohnprojekt.karbeiten }}{% endif %}</p>
-					<p>{% if product.wohnprojekt.raumangebot  %}<strong>{% field_name product.wohnprojekt 'raumangebot' %}:</strong>  {{ product.wohnprojekt.raumangebot }}{% if product.wohnprojekt.kraumangebot  %},
-						{{ product.wohnprojekt.kraumangebot }}
+			    <p>{% if object.sonstige_flaechen  %}<strong>{% field_name object 'sonstige_flaechen' %}:</strong>  {{ object.sonstige_flaechen }} m<sup>2</sup>{% endif %}</p>
+			    <p>{% if object.flaeche  %}<strong>{% field_name object 'flaeche' %}:</strong>  {{ object.flaeche }} m<sup>2</sup>{% endif %}</p>
+					<p>{% if object.kflaechen  %}<strong>{% field_name object 'kflaechen' %}:</strong>  {{ object.kflaechen }} m<sup>2</sup>{% endif %}</p>
+					<p>{% if object.parbeiten  %}Im Haus arbeiten ca {{ object.parbeiten }} Personen.{% endif %}
+						{% if object.karbeiten  %}{{ object.karbeiten }}{% endif %}</p>
+					<p>{% if object.raumangebot  %}<strong>{% field_name object 'raumangebot' %}:</strong>  {{ object.raumangebot }}{% if object.kraumangebot  %},
+						{{ object.kraumangebot }}
 						{% endif %}
 						{% endif %}
 
 
 					{% endif %}</p>
 					{% endif %}</p>
 
 
-			    <!-- <p>{% if product.wohnprojekt.kraumangebot  %}<strong>{% field_name product.wohnprojekt 'kraumangebot' %}:</strong>  {{ product.wohnprojekt.kraumangebot }}{% endif %}</p> -->
+			    <!-- <p>{% if object.kraumangebot  %}<strong>{% field_name object 'kraumangebot' %}:</strong>  {{ object.kraumangebot }}{% endif %}</p> -->
 
 
 
 
 					{% endblock %}
 					{% endblock %}
@@ -286,19 +286,19 @@
 					<br />
 					<br />
 					<h5 class="mediumkur">Mediacredits</h5>
 					<h5 class="mediumkur">Mediacredits</h5>
 					<br />
 					<br />
-					{% for media in product.media_set.all %}
+					{% for media in object.media_set.all %}
 						{% if media.copyright %}
 						{% if media.copyright %}
 							<p class="fieldname"> {{ media.copyright }}</p>
 							<p class="fieldname"> {{ media.copyright }}</p>
 						{% endif %}
 						{% endif %}
 					{% endfor %}
 					{% endfor %}
-					{% for media in product.video_set.all %}
+					{% for media in object.video_set.all %}
 						{% if media.copyright %}
 						{% if media.copyright %}
 							<p class="fieldname"> {{ media.copyright }}</p>
 							<p class="fieldname"> {{ media.copyright }}</p>
 						{% endif %}
 						{% endif %}
 					{% endfor %}
 					{% endfor %}
 
 
-					{% if product.media_set  %}
-						{% for media in product.media_set.all %}
+					{% if object.media_set  %}
+						{% for media in object.media_set.all %}
 							{% if forloop.counter > 5  %}
 							{% if forloop.counter > 5  %}
 								<div style="flex: {% get_ratio media %}; margin:40px 60px 40px 0px;">
 								<div style="flex: {% get_ratio media %}; margin:40px 60px 40px 0px;">
 									<img href="{{media.image_big.url}}"  src="{{media.image_norm.url }}" class="gallery img-fluid img-responsive"  alt="" style="width: 100%;height: auto;vertical-align: middle;">
 									<img href="{{media.image_big.url}}"  src="{{media.image_norm.url }}" class="gallery img-fluid img-responsive"  alt="" style="width: 100%;height: auto;vertical-align: middle;">
@@ -310,32 +310,32 @@
 
 
 
 
 
 
-			    <!-- <p>{% if product.wohnprojekt.altneu  %}{% field_name product.wohnprojekt 'altneu' %}: {{ product.wohnprojekt.altneu }}{% endif %}</p> -->
+			    <!-- <p>{% if object.altneu  %}{% field_name object 'altneu' %}: {{ object.altneu }}{% endif %}</p> -->
 
 
-			    <!-- <p>{% if product.wohnprojekt.artmodell  %}{% field_name product.wohnprojekt 'artmodell' %}: {{ product.wohnprojekt.artmodell }}{% endif %}</p> -->
-			    <!-- <p>{% if product.wohnprojekt.bautraeger  %}{% field_name product.wohnprojekt 'bautraeger' %}: {{ product.wohnprojekt.bautraeger }}{% endif %}</p> -->
-			    <!-- <p>{% if product.wohnprojekt.aerwachsene  %}{% field_name product.wohnprojekt 'aerwachsene' %}: {{ product.wohnprojekt.aerwachsene }}{% endif %}</p>
-			    <p>{% if product.wohnprojekt.akinder  %}{% field_name product.wohnprojekt 'akinder' %}: {{ product.wohnprojekt.akinder }}{% endif %}</p>
-			    <p>{% if product.wohnprojekt.amitglieder  %}Anzahl an Mitglieder: {{ product.wohnprojekt.amitglieder }}{% endif %}</p> -->
+			    <!-- <p>{% if object.artmodell  %}{% field_name object 'artmodell' %}: {{ object.artmodell }}{% endif %}</p> -->
+			    <!-- <p>{% if object.bautraeger  %}{% field_name object 'bautraeger' %}: {{ object.bautraeger }}{% endif %}</p> -->
+			    <!-- <p>{% if object.aerwachsene  %}{% field_name object 'aerwachsene' %}: {{ object.aerwachsene }}{% endif %}</p>
+			    <p>{% if object.akinder  %}{% field_name object 'akinder' %}: {{ object.akinder }}{% endif %}</p>
+			    <p>{% if object.amitglieder  %}Anzahl an Mitglieder: {{ object.amitglieder }}{% endif %}</p> -->
 
 
-			    <!-- <p>{% if product.wohnprojekt.awohnungen  %}{% field_name product.wohnprojekt 'awohnungen' %}: {{ product.wohnprojekt.awohnungen }}{% endif %}</p> -->
-			    <!-- <p>{% if product.wohnprojekt.wohnflaeche  %}{% field_name product.wohnprojekt 'wohnflaeche' %}: {{ product.wohnprojekt.wohnflaeche }}{% endif %}</p>
-			    <p>{% if product.wohnprojekt.gewerbeflaechen  %}{% field_name product.wohnprojekt 'gewerbeflaechen' %}: {{ product.wohnprojekt.gewerbeflaechen }}{% endif %}</p>
-			    <p>{% if product.wohnprojekt.gemeinschaftsflaeche  %}{% field_name product.wohnprojekt 'gemeinschaftsflaeche' %}: {{ product.wohnprojekt.gemeinschaftsflaeche }}{% endif %}</p>
-			    <p>{% if product.wohnprojekt.sonstige_flaechen  %}{% field_name product.wohnprojekt 'sonstige_flaechen' %}: {{ product.wohnprojekt.sonstige_flaechen }}{% endif %}</p>
-			    <p>{% if product.wohnprojekt.flaeche  %}Fläche: {{ product.wohnprojekt.flaeche }}{% endif %}</p> -->
+			    <!-- <p>{% if object.awohnungen  %}{% field_name object 'awohnungen' %}: {{ object.awohnungen }}{% endif %}</p> -->
+			    <!-- <p>{% if object.wohnflaeche  %}{% field_name object 'wohnflaeche' %}: {{ object.wohnflaeche }}{% endif %}</p>
+			    <p>{% if object.gewerbeflaechen  %}{% field_name object 'gewerbeflaechen' %}: {{ object.gewerbeflaechen }}{% endif %}</p>
+			    <p>{% if object.gemeinschaftsflaeche  %}{% field_name object 'gemeinschaftsflaeche' %}: {{ object.gemeinschaftsflaeche }}{% endif %}</p>
+			    <p>{% if object.sonstige_flaechen  %}{% field_name object 'sonstige_flaechen' %}: {{ object.sonstige_flaechen }}{% endif %}</p>
+			    <p>{% if object.flaeche  %}Fläche: {{ object.flaeche }}{% endif %}</p> -->
 
 
-			    <!-- <p>{% if product.wohnprojekt.gemeinschaftr  %}{% field_name product.wohnprojekt 'gemeinschaftr' %}: {{ product.wohnprojekt.gemeinschaftr }}{% endif %}</p> -->
-			    <!-- <p>{% if product.wohnprojekt.kgemeinschaftr  %}{% field_name product.wohnprojekt 'kgemeinschaftr' %}: {{ product.wohnprojekt.kgemeinschaftr }}{% endif %}</p> -->
-			    <!-- <p>{% if product.wohnprojekt.sonderwohnformen  %}{% field_name product.wohnprojekt 'sonderwohnformen' %}: {{ product.wohnprojekt.sonderwohnformen }}{% endif %}</p> -->
+			    <!-- <p>{% if object.gemeinschaftr  %}{% field_name object 'gemeinschaftr' %}: {{ object.gemeinschaftr }}{% endif %}</p> -->
+			    <!-- <p>{% if object.kgemeinschaftr  %}{% field_name object 'kgemeinschaftr' %}: {{ object.kgemeinschaftr }}{% endif %}</p> -->
+			    <!-- <p>{% if object.sonderwohnformen  %}{% field_name object 'sonderwohnformen' %}: {{ object.sonderwohnformen }}{% endif %}</p> -->
 
 
-			    <!-- <p>{% if product.wohnprojekt.parbeiten  %}{% field_name product.wohnprojekt 'parbeiten' %}: {{ product.wohnprojekt.parbeiten }}{% endif %}</p> -->
+			    <!-- <p>{% if object.parbeiten  %}{% field_name object 'parbeiten' %}: {{ object.parbeiten }}{% endif %}</p> -->
 
 
-			    <!-- <p>{% if product.wohnprojekt.bauweise  %}{% field_name product.wohnprojekt 'bauweise' %}: {{ product.wohnprojekt.bauweise }}{% endif %}</p> -->
-			    <!-- <p>{% if product.wohnprojekt.zielgruppen  %}{% field_name product.wohnprojekt 'zielgruppen' %}: {{ product.wohnprojekt.zielgruppen }}{% endif %}</p> -->
-			    <!-- <p>{% if product.wohnprojekt.gprojekte  %}{% field_name product.wohnprojekt 'gprojekte' %}: {{ product.wohnprojekt.gprojekte }}{% endif %}</p> -->
-			    <!-- <p>{% if product.wohnprojekt.oekologie  %}{% field_name product.wohnprojekt 'oekologie' %}: {{ product.wohnprojekt.oekologie }}{% endif %}</p> -->
-			    <!-- <p>{% if product.wohnprojekt.freiraumangebote  %}{% field_name product.wohnprojekt 'freiraumangebote' %}: {{ product.wohnprojekt.freiraumangebote }}{% endif %}</p> -->
+			    <!-- <p>{% if object.bauweise  %}{% field_name object 'bauweise' %}: {{ object.bauweise }}{% endif %}</p> -->
+			    <!-- <p>{% if object.zielgruppen  %}{% field_name object 'zielgruppen' %}: {{ object.zielgruppen }}{% endif %}</p> -->
+			    <!-- <p>{% if object.gprojekte  %}{% field_name object 'gprojekte' %}: {{ object.gprojekte }}{% endif %}</p> -->
+			    <!-- <p>{% if object.oekologie  %}{% field_name object 'oekologie' %}: {{ object.oekologie }}{% endif %}</p> -->
+			    <!-- <p>{% if object.freiraumangebote  %}{% field_name object 'freiraumangebote' %}: {{ object.freiraumangebote }}{% endif %}</p> -->
 
 
 
 
 
 
@@ -360,7 +360,7 @@
 		</div>
 		</div>
 		<div class="col-sm-4">
 		<div class="col-sm-4">
 
 
-			 				 {% for field, value in product.wohnprojekt %}
+			 				 {% for field, value in object %}
 			          {% if value and not field == "ID" %}
 			          {% if value and not field == "ID" %}
 			           <!-- <p class="fieldname"><strong class="mediumkur"> {{ field }} :</strong> {{ value }}</p> -->
 			           <!-- <p class="fieldname"><strong class="mediumkur"> {{ field }} :</strong> {{ value }}</p> -->
 			          {% endif %}
 			          {% endif %}

+ 0 - 349
marktplatz/templates/marktplatz/wohnprojekt_detail.html

@@ -1,349 +0,0 @@
-{% extends "base_generic.html" %}
-{% load fullurl %}
-{% load tags %}
-{% load static %}
-{% load email_obfuscator %}
-
-
-{% block script %}
-
-<link href="{% static 'featherlight.min.css' %}" type="text/css" rel="stylesheet" />
-<script src="{% static 'featherlight.min.js' %}"></script>
-<link href="{% static 'featherlight.gallery.min.css' %}" type="text/css" rel="stylesheet" />
-<script src="{% static 'featherlight.gallery.min.js' %}"></script>
-
-<script>
-	$(document).ready(function() {
-
-		$('.gallery').featherlightGallery({
-			previousIcon: '«',
-			nextIcon: '»',
-			galleryFadeIn: 250,
-			openSpeed: 250,
-		});
-
-	});
-</script>
-
-<style>
-	.image-detail {
-
-		margin: 40px 60px 40px 0px;
-
-	}
-
-	.product-text strong {
-
-		font-weight: bolder;
-		font: "NeuzeitGro-Bla", sans-serif;
-
-	}
-
-	.product-text {
-
-		line-height: 1.2;
-		color: #000;
-	}
-
-	.product-text h1,
-	h2,
-	h3,
-	h4,
-	h5 {
-
-		color: #469CA8;
-	}
-
-	.product-color {
-
-		color: #469CA8;
-
-	}
-
-
-	.titlepro {
-
-		margin-top: 40px;
-		font-family: NeuzeitGro-Bla;
-	}
-
-	@media (min-width: 500px) {}
-	
-</style>
-
-
-{% endblock %}
-
-{% block content %}
-
-
-<!-- <hr style="color: black; background-color: black; margin-top: 0px; width: 130%; display: flex; margin-left: -20px; margin-right:20px "> -->
-
-<div class="container " style="">
-		<div class="row gemain-color product-text">
-				<div class="col-sm-6">
-
-
-					<h1 class="titlepro" style="">{{ object.name }}</h1>
-
-					<p class="lead kur">{% if object.claim %}{{ object.claim }}{% endif %}</p>
-
-					<div class="row product-color">
-						<div class="col-sm-4">{% include "marktplatz/modal-share.html" %}</div>
-							<div class="col-sm-4"> {% include "marktplatz/modal-sa.html" %}</div>
-			        <div class="col-sm-4">{% if object.email  %} {{ object.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}{% endif %}</div>
-			    </div>
-
-					<div class="">
-						&nbsp;
-					</div>
-					<div class="">
-						&nbsp;
-					</div>
-					<div class="">
-						&nbsp;
-					</div>
-					<div class="">
-						&nbsp;
-					</div>
-
-					<div class="">
-						<p><strong>Wohnungsangebot</strong>:<br>
-
-							{% if object.frei == 'JAJA' %}
-								Wohnung frei.
-								{% if object.kfrei %}
-									{{ object.kfrei }}
-									{% if object.email  %}<p>{{ object.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}</p>{% endif %}
-								{% endif %}
-							{% endif %}
-
-							{% if object.frei == 'WART' %}
-								Wir haben derzeit keine Wohnung frei, aber wir melden uns, wenn etwas frei wird. Aktiviere die Benachrichtigung!
-							{% endif %}
-
-							{% if object.frei == 'NEIN' %}
-								Wir haben derzeit keine Wohnung  und führen auch keine Warteliste, auf die du dich setzen lassen kannst.
-							{% endif %}
-
-
-						</p>
-					</div>
-
-
-					<!-- <div class="">
-						{{  object.mitmachen  }}
-					</div> -->
-
-					<p>{% if object.inseratstext  %}<strong>{% field_name object.wohnprojekt 'inseratstext' %}</strong>:<br>{{ object.inseratstext }} {% if object.email  %}<p>{{ object.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}</p>{% endif %}{% endif %}</p>
-
-					<div class="">
-						&nbsp;
-					</div>
-
-
-					<p class="">{% if object.beschreibung %}<strong>{% field_name object.wohnprojekt 'beschreibung' %}</strong>:<br>{{ object.beschreibung | safe | linebreaks   }}{% endif %}</p>
-					<p class="">{% if object.learning %}<strong>{% field_name object.wohnprojekt 'learning' %}</strong>:<br>{{ object.learning | safe | linebreaks  }}{% endif %}</p>
-
-
-					<div class="">
-						&nbsp;
-					</div>
-					<div class="">
-						&nbsp;
-					</div>
-
-
-
-
-					{% for video in object.video_set.all %}
-
-						<video autoplay style="width: 100%;height: auto;vertical-align: middle; padding-bottom: 10px" controls>
-							<source src="{{video.image.url}}" type="video/mp4">
-						</video>
-
-					{% endfor %}
-
-					{% if object.media_set %}
-						{% for media in object.media_set.all %}
-							{% if not forloop.first %}
-								{% if forloop.counter < 6  %}
-									<div class="image-detail" style="flex: {% get_ratio media %}; ">
-										<img href="{{media.image_big.url}}" src="{{media.image_norm.url }}" class="gallery img-fluid img-responsive"  alt="" style="width: 100%;height: auto;vertical-align: middle;">
-									</div>
-								{% endif %}
-							{% endif %}
-						{% endfor %}
-					{% endif %}
-
-
-				</div>
-
-
-
- 			<!-- *************************************************************** -->
-
-
-				<div class="col-sm-6">
-
-
-					<div class="image-detail" style="">
-						<img href="{{object.media_set.first.image_big.url}}"  src="{{object.media_set.first.image_norm.url }}" class="gallery img-fluid img-responsive"  alt="" style="width: 100%;height: auto;vertical-align: middle;">
-					</div>
-
-
-					<br />
-					<h5 class=" mediumkur">Kontakt</h5>
-					<br />
-
-					<p>{{ object.adresse }}{% if object.adresse_zusatz  %},	{{ object.adresse_zusatz }}{% endif %}{% if object.plz  %}, {{ object.plz }}{% endif %}{% if object.ort %}, {{ object.get_ort_display }}{% endif %}</p>
-
-					<div class="row">
-							<div class="col-sm-4">
-								{% if object.email  %}<p>{{ object.email | obfuscate_mailto:'<i class="fas fa-envelope"></i> Email'  }}</p>{% endif %}
-
-							</div>
-							<div class="col-sm-8">
-									{% if object.email  %}<p><a href="mailto:{{ object.email | obfuscate }}" >{{ object.email | obfuscate }}</a></p>{% endif %}
-
-							</div>
-					</div>
-
-					<div class="row">
-							<div class="col-sm-4">
-								{% if object.website  %}<p><a href="{{  object.website }}" target="_blank" rel="noopener">Webseite</a></p>{% endif %}
-
-							</div>
-							<div class="col-sm-8">
-								{% if object.website  %}<p><a href="{{  object.website }}" target="_blank" rel="noopener">{{  object.website }}</a></p>{% endif %}
-
-							</div>
-					</div>
-
-
-
-
-
-					<br />
-					<h5 class=" mediumkur">Steckbrief</h5>
-					<br />
-
-					<p>{{ object.kind_of_product }}, gegründet {{ object.gruendungsjahr }}{% if object.betriebgenommen  %}, in Betrieb genommen: {{ object.betriebgenommen }}{% endif %}.</p>
-					<p><strong>Rechtsform</strong>: {{ object.rechtsform }}</p>
-					<!-- XXX --> <p>{{ object.artmodell }}</p>
-					<p>{% if object.orga  %}<strong>{% field_name object.wohnprojekt 'orga' %}</strong>: {{ object.orga }}{% endif %}</p>
-					<!-- XXX --> <p>{% if object.eigentum  %}<strong>{% field_name object.wohnprojekt 'eigentum' %}</strong>: {{ object.get_eigentum_display }}{% endif %}</p>
-					<!-- XXX -->  <p>{% if object.gprojekte  %}<strong>Gemeinschaftliche Projekte</strong>: {{ object.gprojekte }}{% endif %}</p>
-
-
-
-					<p>{% if object.zielgruppen  %}<strong>Besondere Zielgruppen</strong>: {{ object.zielgruppen }}{% endif %}</p>
-					<p>{% if object.freiraumangebote  %}<strong>Freiraumangebote</strong>: {{ object.freiraumangebote }}{% endif %}</p>
-					<p>{% if object.oekologie  %}<strong>{% field_name object.wohnprojekt 'oekologie' %}</strong>: {{ object.oekologie }}{% endif %}</p>
-					<p>{% if object.schwerpunkt  %}<strong>{% field_name object.wohnprojekt 'schwerpunkt' %}</strong>: {{ object.schwerpunkt }}{% endif %}</p>
-
-
-					<br />
-					<h5 class=" mediumkur">Kenndaten</h5>
-					<br />
-
-					<p>{{ object.get_altneu_display }}, {{ object.bauweise }}</p>
-					<p><strong>Bautr&auml;ger</strong>: {{ object.bautraeger }}</p>
-					<p>{% if object.architektur  %}<strong>{% field_name object.wohnprojekt 'architektur' %}:</strong>  {{  object.architektur  }}{% endif %}</p>
-					<p>{% if object.wohnbaufoerderung  %}<strong>{% field_name object.wohnprojekt 'wohnbaufoerderung' %}:</strong>  {{ object.wohnbaufoerderung }}{% endif %}</p>
-
-					<p>im Haus Wohnen ca {{ object.aerwachsene }} Erwachsene und {{  object.akinder }} Kinder.
-						Anzahl der Mitglieder: {{ object.amitglieder }}
-					</p>
-					<p>{% if object.awohnungen  %}<strong>{% field_name object.wohnprojekt 'awohnungen' %}:</strong>  {{  object.awohnungen  }} Wohnungen{% endif %}</p>
-					<p>{% if object.gaestwohnungen  %}<strong>{% field_name object.wohnprojekt 'gaestwohnungen' %}:</strong>  {{ object.gaestwohnungen }}{% endif %}</p>
-					<p>{% if object.wohnflaeche  %}<strong>{% field_name object.wohnprojekt 'wohnflaeche' %}:</strong>  {{ object.wohnflaeche }} m<sup>2</sup>{% endif %}</p>
-					<p>{% if object.sonderwohnformen  %}<strong>{% field_name object.wohnprojekt 'sonderwohnformen' %}</strong>: {{ object.sonderwohnformen }}{% endif %}</p>
-			    <p>{% if object.gewerbeflaechen  %}<strong>{% field_name object.wohnprojekt 'gewerbeflaechen' %}:</strong>  {{ object.gewerbeflaechen }} m<sup>2</sup>{% endif %}</p>
-			    <p>{% if object.gewerbe %}<strong>{% field_name object.wohnprojekt 'gewerbe' %}:</strong>  {{ object.gewerbe }}{% endif %}</p>
-			    <p>{% if object.gemeinschaftsflaeche  %}<strong>{% field_name object.wohnprojekt 'gemeinschaftsflaeche' %}:</strong>  {{ object.gemeinschaftsflaeche }} m<sup>2</sup>{% endif %}</p>
-					<p><strong>Gemeinschaftsräume</strong>:
-						{{ object.gemeinschaftr }}{% if object.kgemeinschaftr  %}, {{ object.kgemeinschaftr }}{% endif %}
-					</p>
-			    <p>{% if object.sonstige_flaechen  %}<strong>{% field_name object.wohnprojekt 'sonstige_flaechen' %}:</strong>  {{ object.sonstige_flaechen }} m<sup>2</sup>{% endif %}</p>
-			    <p>{% if object.flaeche  %}<strong>{% field_name object.wohnprojekt 'flaeche' %}:</strong>  {{ object.flaeche }} m<sup>2</sup>{% endif %}</p>
-					<p>{% if object.kflaechen  %}<strong>{% field_name object.wohnprojekt 'kflaechen' %}:</strong>  {{ object.kflaechen }} m<sup>2</sup>{% endif %}</p>
-					<p>{% if object.parbeiten  %}Im Haus arbeiten ca {{ object.parbeiten }} Personen.{% endif %}
-						{% if object.karbeiten  %}{{ object.karbeiten }}{% endif %}</p>
-					<p>{% if object.raumangebot  %}<strong>{% field_name object.wohnprojekt 'raumangebot' %}:</strong>  {{ object.raumangebot }}{% if object.kraumangebot  %},
-						{{ object.kraumangebot }}
-						{% endif %}
-
-					{% endif %}</p>
-
-			    <!-- <p>{% if object.kraumangebot  %}<strong>{% field_name object.wohnprojekt 'kraumangebot' %}:</strong>  {{ object.kraumangebot }}{% endif %}</p> -->
-
-
-
-
-
-					<br />
-					<h5 class="mediumkur">Mediacredits</h5>
-					<br />
-					{% for media in object.media_set.all %}
-						{% if media.copyright %}
-							<p class="fieldname"> {{ media.copyright }}</p>
-						{% endif %}
-					{% endfor %}
-					{% for media in object.video_set.all %}
-						{% if media.copyright %}
-							<p class="fieldname"> {{ media.copyright }}</p>
-						{% endif %}
-					{% endfor %}
-
-					{% if object.media_set  %}
-						{% for media in object.media_set.all %}
-							{% if forloop.counter > 5  %}
-								<div style="flex: {% get_ratio media %}; margin:40px 60px 40px 0px;">
-									<img href="{{media.image_big.url}}"  src="{{media.image_norm.url }}" class="gallery img-fluid img-responsive"  alt="" style="width: 100%;height: auto;vertical-align: middle;">
-								</div>
-							{% endif %}
-						{% endfor %}
-					{% endif %}
-
-
-
-
-
-
-				</div>
-		</div>
-
-</div>
-
-
-<div class="container">
-
-	<div class="row" style="margin-top: 10px">
-
-		<div class="col-sm-6">
-
-
-
-
-
-
-		</div>
-		<div class="col-sm-4">
-
-			 				 {% for field, value in object.wohnprojekt %}
-			          {% if value and not field == "ID" %}
-			           <!-- <p class="fieldname"><strong class="mediumkur"> {{ field }} :</strong> {{ value }}</p> -->
-			          {% endif %}
-			          {% endfor %}
-
-		</div>
-
-	</div>
-
-</div>
-
-
-
-
-{% endblock %}

+ 4 - 2
marktplatz/urls.py

@@ -46,8 +46,10 @@ urlpatterns = [
     path('projekt/<int:pk>/delete', views.ProductDelete.as_view(), name='product-delete'),
     path('projekt/<int:pk>/delete', views.ProductDelete.as_view(), name='product-delete'),
 
 
     # DETAIL
     # DETAIL
-    path('projekt/<int:pk>/', views.ProduktDetailView.as_view(), name='product-detail'),
-    path('projekt/<int:pk>/embed', views.ProduktDetailView.as_view( embed=True, ), name='product-detail-embed'),
+    path('projekt/<slug:type>/<int:pk>',            views.ProduktGenericDetailView.as_view(), name='product-detail-type'),
+    path('projekt/<int:pk>/',                       views.ProduktDetailView.as_view(), name='product-detail'),
+
+    path('projekt/<int:pk>/embed',                  views.ProduktDetailView.as_view( embed=True, ), name='product-detail-embed'),
 
 
     # CARDS
     # CARDS
     path('projekt-card/<int:pk>', views.ProduktCardDetailView.as_view(), name='projekt-card'),
     path('projekt-card/<int:pk>', views.ProduktCardDetailView.as_view(), name='projekt-card'),

+ 273 - 232
marktplatz/views.py

@@ -283,6 +283,16 @@ class ProductPublish(LoginRequiredMixin, DetailView):
 
 
 
 
 
 
+
+
+
+
+
+
+
+
+
+
 class ProductsView(generic.ListView):
 class ProductsView(generic.ListView):
     model = Product
     model = Product
     template_name = 'marktplatz/product_overview.html'
     template_name = 'marktplatz/product_overview.html'
@@ -368,7 +378,6 @@ class EnergyProjekteView(ProductsView):
 
 
 
 
 
 
-
 class FilterProductsView(ProductsView):
 class FilterProductsView(ProductsView):
 
 
 
 
@@ -391,7 +400,6 @@ class FilterProductsView(ProductsView):
         if qfilter != "":
         if qfilter != "":
             self.object_list = self.get_queryset(qfilter= qfilter  )
             self.object_list = self.get_queryset(qfilter= qfilter  )
 
 
-
         allow_empty = self.get_allow_empty()
         allow_empty = self.get_allow_empty()
 
 
         # if not allow_empty:
         # if not allow_empty:
@@ -452,35 +460,263 @@ class SearchProductsView(ProductsView):
         return self.render_to_response(context)
         return self.render_to_response(context)
 
 
 
 
+
+
+class ProductsListView(generic.ListView):
+    model = Product
+    template_name='marktplatz/product_list.html'
+    embed = False
+
+    def get_queryset(self):
+        # original qs
+        qs = super().get_queryset()
+
+        self.user = self.request.user
+        user = self.user
+
+        if user.is_superuser:
+            return qs
+
+        qs = qs.filter(public = True)
+
+        return qs
+
+
+    def get_context_data(self, **kwargs):
+
+        if self.embed :
+            kwargs['embed']  = True
+        return super().get_context_data(**kwargs)
+
+
+
+#
+# DETAIL
+#
+
 class ProduktDetailView(generic.DetailView):
 class ProduktDetailView(generic.DetailView):
     model = Product
     model = Product
     template_name = 'marktplatz/product_detail.html'
     template_name = 'marktplatz/product_detail.html'
     embed = False
     embed = False
 
 
     def get_context_data(self, **kwargs):
     def get_context_data(self, **kwargs):
-            # context = super().get_context_data(**kwargs)
 
 
             if self.embed :
             if self.embed :
-                kwargs['embed']       = True
-            # context['credits'] = Credit.objects.select_related().get(product = self.kwargs['pk'])
-            # context['wohnprojekt'] = self.object.wohnprojekt
+                kwargs['embed'] = True
             return super().get_context_data(**kwargs)
             return super().get_context_data(**kwargs)
 
 
-
     def post(self, request, *args, **kwargs):
     def post(self, request, *args, **kwargs):
         # vote = int(request.POST['vote'])
         # vote = int(request.POST['vote'])
         comment = str(request.POST['comment'])
         comment = str(request.POST['comment'])
 
 
         return HttpResponseRedirect(  reverse('products')  )
         return HttpResponseRedirect(  reverse('products')  )
 
 
+class ProduktGenericDetailView(ProduktDetailView):
+
+    def  dispatch(self, request, *args, **kwargs):
+
+        if self.kwargs['type'] == 'BASE':
+            super().dispatch(request, *args, **kwargs)
+        elif self.kwargs['type'] == 'WOHN':
+            self.model = Wohnprojekt
+            return super().dispatch(request, *args, **kwargs)
+        elif self.kwargs['type'] == 'MOBI':
+            self.model = MobilitaetsProjekt
+            return super().dispatch(request, *args, **kwargs)
+        elif self.kwargs['type'] == 'ERNA':
+            self.model = ErnaehrungsProjekt
+            return super().dispatch(request, *args, **kwargs)
+        elif self.kwargs['type'] == 'ENER':
+            self.model = EnergyProjekt
+            return super().dispatch(request, *args, **kwargs)
+
+        raise Http404('Keine Objekte gefunden')
+
+class WohnprojektDetailView(ProduktDetailView):
+    model = Wohnprojekt
+    template_name = 'marktplatz/product_detail.html'
+
+class MobilitaetsProjektDetailView(ProduktDetailView):
+    model = MobilitaetsProjekt
+    template_name = 'marktplatz/product_detail.html'
+
+class ErnaehrungsProjektDetailView(ProduktDetailView):
+    model = ErnaehrungsProjekt
+    template_name = 'marktplatz/product_detail.html'
+
+class EnergyProjektProjektDetailView(ProduktDetailView):
+    model = EnergyProjekt
+    template_name = 'marktplatz/product_detail.html'
+
+
+
 class ProduktCardDetailView(ProduktDetailView):
 class ProduktCardDetailView(ProduktDetailView):
 
 
     template_name = 'marktplatz/product_detail_card.html'
     template_name = 'marktplatz/product_detail_card.html'
 
 
-class WohnprojektDetailView(generic.DetailView):
+
+
+
+class ProductCreateView(LoginRequiredMixin, CreateView):
+    template_name = 'marktplatz/product_create.html'
+    model = Product
+    form_class = ProductForm
+    gotoPics = False
+
+    def get_context_data(self, **kwargs):
+        context = super().get_context_data(**kwargs)
+        context['info_txt'] = Template(config.INFO_TXT).render(Context(context))
+        return context
+
+    def post(self, request, *args, **kwargs):
+        if 'add-image' in request.POST:
+            self.gotoPics = True
+        return super().post(self, request, *args, **kwargs)
+
+    def form_valid(self, form):
+        product = form.save(commit=False)
+        product.contact = Contact.objects.get(user = self.request.user)
+        product.save()
+
+        if (self.gotoPics):
+            return HttpResponseRedirect(reverse('add-image', kwargs={'pk': product.pk}))
+        else:
+            return HttpResponseRedirect(  reverse('meine-projekte')  )
+
+class WohnProjektCreateView(ProductCreateView):
     model = Wohnprojekt
     model = Wohnprojekt
-    template_name = 'marktplatz/wohnprojekt_detail.html'
-    embed = False
+    form_class = WohnprojektForm
+
+class MobilitaetsProjektCreateView(ProductCreateView):
+    model = MobilitaetsProjekt
+    form_class = MobilitaetsForm
+
+class ErnaehrungsProjektCreateView(ProductCreateView):
+    model = ErnaehrungsProjekt
+    form_class = ErnaehrungsForm
+
+class EnergyProjektCreateView(ProductCreateView):
+    model = EnergyProjekt
+    form_class = EnergyForm
+
+
+
+
+class ProductUpdateView(LoginRequiredMixin, UpdateView):
+    template_name = 'marktplatz/product_create.html'
+    model = Product
+    form_class = ProductForm
+    gotoPics = False
+    # success_url =
+
+
+
+    def get_context_data(self, **kwargs):
+        context = super().get_context_data(**kwargs)
+        context['info_txt'] = Template(config.INFO_TXT).render(Context(context))
+        return context
+
+
+    def get_object(self, queryset=None):
+        obj = super().get_object()
+        if (  obj.user_can_manage(self.request.user)  ):
+            return obj
+        raise PermissionDenied
+
+    def post(self, request, *args, **kwargs):
+        if 'add-image' in request.POST:
+            self.gotoPics = True
+        return super().post(self, request, *args, **kwargs)
+
+    def get(self, request, *args, **kwargs):
+        return super().get(self, request, *args, **kwargs)
+
+    def form_valid(self, form):
+
+        product = form.save(commit=False)
+        product.contact = Contact.objects.get(user = self.request.user)
+        product.save()
+
+        if (self.gotoPics):
+            return HttpResponseRedirect(reverse('add-image', kwargs={'pk': product.pk}))
+        else:
+            return HttpResponseRedirect(  reverse('meine-projekte')  )
+
+
+
+class ProductGenericUpdateView(ProductUpdateView):
+
+    model = Product
+    form_class = ProductForm
+
+    def  dispatch(self, request, *args, **kwargs):
+
+        if self.kwargs['type'] == 'BASE':
+            super().dispatch(request, *args, **kwargs)
+        elif self.kwargs['type'] == 'WOHN':
+            self.model = Wohnprojekt
+            self.form_class = WohnprojektForm
+            return super().dispatch(request, *args, **kwargs)
+        elif self.kwargs['type'] == 'MOBI':
+            self.model = MobilitaetsProjekt
+            self.form_class = MobilitaetsForm
+            return super().dispatch(request, *args, **kwargs)
+        elif self.kwargs['type'] == 'ERNA':
+            self.model = ErnaehrungsProjekt
+            self.form_class = ErnaehrungsForm
+            return super().dispatch(request, *args, **kwargs)
+        elif self.kwargs['type'] == 'ENER':
+            self.model = EnergyProjekt
+            self.form_class = EnergyForm
+            return super().dispatch(request, *args, **kwargs)
+
+        raise Http404('Keine Objekte gefunden' )
+
+
+class WohnProjektUpdateView(ProductUpdateView):
+    model = Wohnprojekt
+    form_class = WohnprojektForm
+
+class MobilitaetsProjektUpdateView(ProductUpdateView):
+    model = MobilitaetsProjekt
+    form_class = MobilitaetsForm
+
+class ErnaehrungsProjektUpdateView(ProductUpdateView):
+    model = ErnaehrungsProjekt
+    form_class = ErnaehrungsForm
+
+class EnergyProjektUpdateView(ProductUpdateView):
+    model = EnergyProjekt
+    form_class = EnergyForm
+
+
+
+class UsersProducts(LoginRequiredMixin, generic.ListView):
+    model = Product
+    template_name='marktplatz/myProducts.html'
+
+    def get_queryset(self):
+        contact = Contact.objects.get(user=self.request.user)
+
+        wohnprojekte = Wohnprojekt.objects.filter(contact=contact)
+        mobilitaetsprojekte = MobilitaetsProjekt.objects.filter(contact=contact)
+        ernaehrungsprojekte = ErnaehrungsProjekt.objects.filter(contact=contact)
+        energyprojekte = EnergyProjekt.objects.filter(contact=contact)
+
+        projekte = list(itertools.chain(wohnprojekte, mobilitaetsprojekte, ernaehrungsprojekte, energyprojekte))
+
+        return projekte
+
+    def get_context_data(self, **kwargs):
+        context = super().get_context_data(**kwargs)
+        contact = Contact.objects.get(user=self.request.user)
+
+        context['user'] = self.request.user
+        return context
+
+
+
+
 
 
 
 
 
 
@@ -524,72 +760,6 @@ class AdminView(LoginRequiredMixin, generic.ListView):
 
 
 
 
 
 
-class ProductsListView(generic.ListView):
-    model = Product
-    template_name='marktplatz/product_list.html'
-    embed = False
-
-    def get_queryset(self):
-        # original qs
-        qs = super().get_queryset()
-
-        self.user = self.request.user
-        user = self.user
-
-        if user.is_superuser:
-            return qs
-
-        qs = qs.filter(public = True)
-
-        return qs
-
-
-    def get_context_data(self, **kwargs):
-
-        if self.embed :
-            kwargs['embed']  = True
-        return super().get_context_data(**kwargs)
-
-
-
-class lightboximg(LoginRequiredMixin, TemplateView):
-
-    template_name = "marktplatz/importold.html"
-
-    def post(self, request):
-        context = {'faild': ''}
-        faild = ''
-        from1 = int(request.POST['from'])
-        to = int(request.POST['to'])
-
-
-        products = Product.objects.all()
-        i = 0
-
-        for product in products:
-            i+=1
-            if (i < from1):
-                continue
-            if (i > to):
-                break
-
-            medias = product.media_set.all()
-            for oldmedia in medias:
-                if not oldmedia.image_norm:
-                    oldpic = oldmedia.image
-                    oldmedia.image_norm.save(oldmedia.filename() + '_norm', oldpic)
-                    oldmedia.save
-
-
-        return render(request, self.template_name, context)
-
-
-
-    def get(self, request):
-            context = {'faild': ''}
-            faild = ''
-            context['faild'] = faild
-            return render(request, self.template_name, context)
 
 
 class registerView(FormView):
 class registerView(FormView):
 
 
@@ -699,153 +869,45 @@ class registerView(FormView):
         return render(request, self.template_name, context)
         return render(request, self.template_name, context)
 
 
 
 
-# class NewProductView(LoginRequiredMixin, FormView):
-#     use_ajax = True
-#     template_name = 'marktplatz/add.html'
-#
-#     model = Product
-
-
-class ProductCreateView(LoginRequiredMixin, CreateView):
-    template_name = 'marktplatz/product_create.html'
-    model = Product
-    form_class = ProductForm
-    gotoPics = False
-
-    def get_context_data(self, **kwargs):
-        context = super().get_context_data(**kwargs)
-        context['info_txt'] = Template(config.INFO_TXT).render(Context(context))
-        return context
-
-    def post(self, request, *args, **kwargs):
-        if 'add-image' in request.POST:
-            self.gotoPics = True
-        return super().post(self, request, *args, **kwargs)
-
-    def form_valid(self, form):
-        product = form.save(commit=False)
-        product.contact = Contact.objects.get(user = self.request.user)
-        product.save()
-
-        if (self.gotoPics):
-            return HttpResponseRedirect(reverse('add-image', kwargs={'pk': product.pk}))
-        else:
-            return HttpResponseRedirect(  reverse('meine-projekte')  )
-
-class WohnProjektCreateView(ProductCreateView):
-    model = Wohnprojekt
-    form_class = WohnprojektForm
-
-class MobilitaetsProjektCreateView(ProductCreateView):
-    model = MobilitaetsProjekt
-    form_class = MobilitaetsForm
-
-class ErnaehrungsProjektCreateView(ProductCreateView):
-    model = ErnaehrungsProjekt
-    form_class = ErnaehrungsForm
-
-class EnergyProjektCreateView(ProductCreateView):
-    model = EnergyProjekt
-    form_class = EnergyForm
-
-
-
-
-# class ProductUpdateView(LoginRequiredMixin, View):
-#
-#     def  dispatch(request, *args, **kwargs):
-#
-#     pass
-
-
-
-class ProductUpdateView(LoginRequiredMixin, UpdateView):
-    template_name = 'marktplatz/product_create.html'
-    model = Product
-    form_class = ProductForm
-    gotoPics = False
-    # success_url =
-
-
-
-    def get_context_data(self, **kwargs):
-        context = super().get_context_data(**kwargs)
-        context['info_txt'] = Template(config.INFO_TXT).render(Context(context))
-        return context
-
-
-    def get_object(self, queryset=None):
-        obj = super().get_object()
-        if (  obj.user_can_manage(self.request.user)  ):
-            return obj
-        raise PermissionDenied
-
-    def post(self, request, *args, **kwargs):
-        if 'add-image' in request.POST:
-            self.gotoPics = True
-        return super().post(self, request, *args, **kwargs)
-
-    def get(self, request, *args, **kwargs):
-        return super().get(self, request, *args, **kwargs)
-
-    def form_valid(self, form):
-
-        product = form.save(commit=False)
-        product.contact = Contact.objects.get(user = self.request.user)
-        product.save()
-
-        if (self.gotoPics):
-            return HttpResponseRedirect(reverse('add-image', kwargs={'pk': product.pk}))
-        else:
-            return HttpResponseRedirect(  reverse('meine-projekte')  )
-
 
 
+class lightboximg(LoginRequiredMixin, TemplateView):
 
 
-class ProductGenericUpdateView(ProductUpdateView):
+    template_name = "marktplatz/importold.html"
 
 
-    model = Product
-    form_class = ProductForm
+    def post(self, request):
+        context = {'faild': ''}
+        faild = ''
+        from1 = int(request.POST['from'])
+        to = int(request.POST['to'])
 
 
 
 
-    def  dispatch(self, request, *args, **kwargs):
+        products = Product.objects.all()
+        i = 0
 
 
-        if self.kwargs['type'] == 'BASE':
-            super().dispatch(request, *args, **kwargs)
-        elif self.kwargs['type'] == 'WOHN':
-            self.model = Wohnprojekt
-            self.form_class = WohnprojektForm
-            return super().dispatch(request, *args, **kwargs)
-        elif self.kwargs['type'] == 'MOBI':
-            self.model = MobilitaetsProjekt
-            self.form_class = MobilitaetsForm
-            return super().dispatch(request, *args, **kwargs)
-        elif self.kwargs['type'] == 'ERNA':
-            self.model = ErnaehrungsProjekt
-            self.form_class = ErnaehrungsForm
-            return super().dispatch(request, *args, **kwargs)
-        elif self.kwargs['type'] == 'ENER':
-            self.model = EnergyProjekt
-            self.form_class = EnergyForm
-            return super().dispatch(request, *args, **kwargs)
+        for product in products:
+            i+=1
+            if (i < from1):
+                continue
+            if (i > to):
+                break
 
 
-        raise Http404('Keine Objekte gefunden' )
+            medias = product.media_set.all()
+            for oldmedia in medias:
+                if not oldmedia.image_norm:
+                    oldpic = oldmedia.image
+                    oldmedia.image_norm.save(oldmedia.filename() + '_norm', oldpic)
+                    oldmedia.save
 
 
 
 
-class WohnProjektUpdateView(ProductUpdateView):
-    model = Wohnprojekt
-    form_class = WohnprojektForm
+        return render(request, self.template_name, context)
 
 
-class MobilitaetsProjektUpdateView(ProductUpdateView):
-    model = MobilitaetsProjekt
-    form_class = MobilitaetsForm
 
 
-class ErnaehrungsProjektUpdateView(ProductUpdateView):
-    model = ErnaehrungsProjekt
-    form_class = ErnaehrungsForm
 
 
-class EnergyProjektUpdateView(ProductUpdateView):
-    model = EnergyProjekt
-    form_class = EnergyForm
+    def get(self, request):
+            context = {'faild': ''}
+            faild = ''
+            context['faild'] = faild
+            return render(request, self.template_name, context)
 
 
 
 
 class addImageView(LoginRequiredMixin, FormView):
 class addImageView(LoginRequiredMixin, FormView):
@@ -960,28 +1022,7 @@ handle_upload = FileFormUploader()
 
 
 
 
 
 
-class UsersProducts(LoginRequiredMixin, generic.ListView):
-    model = Product
-    template_name='marktplatz/myProducts.html'
-
-    def get_queryset(self):
-        contact = Contact.objects.get(user=self.request.user)
-
-        wohnprojekte = Wohnprojekt.objects.filter(contact=contact)
-        mobilitaetsprojekte = MobilitaetsProjekt.objects.filter(contact=contact)
-        ernaehrungsprojekte = ErnaehrungsProjekt.objects.filter(contact=contact)
-        energyprojekte = EnergyProjekt.objects.filter(contact=contact)
-
-        projekte = list(itertools.chain(wohnprojekte, mobilitaetsprojekte, ernaehrungsprojekte, energyprojekte))
-
-        return projekte
 
 
-    def get_context_data(self, **kwargs):
-        context = super().get_context_data(**kwargs)
-        contact = Contact.objects.get(user=self.request.user)
-
-        context['user'] = self.request.user
-        return context
 
 
 class MediaView(LoginRequiredMixin, TemplateView):
 class MediaView(LoginRequiredMixin, TemplateView):
     template_name = 'marktplatz/media_overview.html'
     template_name = 'marktplatz/media_overview.html'