Bladeren bron

show multifield choices

Juan Carlos 5 jaren geleden
bovenliggende
commit
7e5db45b5c
4 gewijzigde bestanden met toevoegingen van 93 en 32 verwijderingen
  1. 2 2
      marktplatz/forms.py
  2. 20 23
      marktplatz/models.py
  3. 53 1
      marktplatz/templates/marktplatz/product_overview.html
  4. 18 6
      marktplatz/views.py

+ 2 - 2
marktplatz/forms.py

@@ -226,7 +226,7 @@ class WohnprojektForm(ProductForm):
                   css_class='form-row  row'),
 
              'awohnungen',
-
+             'gaestwohnungen',
              Fieldset ( 'Flächen',
                 Div(
                   Div('wohnflaeche',  css_class='col-sm-3 col-3'),
@@ -250,7 +250,7 @@ class WohnprojektForm(ProductForm):
                   Div('karbeiten', css_class='col-sm-6 col-6'),
                   css_class='form-row  row'),
 
-               'bauweise', 'zielgruppen', 'gprojekte', 'oekologie', 'freiraumangebote', 'gaestwohnungen',
+               'bauweise', 'zielgruppen', 'gprojekte', 'oekologie', 'freiraumangebote',
 
            )
        )

+ 20 - 23
marktplatz/models.py

@@ -141,14 +141,14 @@ class Product(models.Model):
     def kind_of_product(self):
             return "Allgemeines Produkt"
 
-    name            = CharField( 'Name', max_length = 128, help_text="Name des Projekts", null = True, blank=True )
-    claim           = CharField( 'Claim / Untertitel', max_length = 256, help_text="Claim / Untertitel", null = True, blank=True )
-    beschreibung    = TextField( 'Projektbeschreibung', max_length = 2048, help_text="Beschreibung des Projektes", null = True, blank=True )
-    learning        = CharField( 'Learning', max_length = 256, help_text="Learning", null = True, blank=True )
-    gruendungsjahr  = IntegerField('Gründungsjahr', help_text="Gründungsjahr des Projekts", validators=[MinValueValidator(0), MaxValueValidator(9999)], null = True, blank=True )
-    betriebgenommen = IntegerField('in Betrieb genommen im Jahr', help_text="Wann wurde das Projekt in Betrieb genommen?", validators=[MinValueValidator(0), MaxValueValidator(9999)], null = True, blank=True )
-    status          = CharField( 'Status',    max_length = 3,    choices=STATUS, default='ENT', help_text="Was ist der Status des Projektes" , null = True, blank=True )
-    adresse         = CharField( 'Adresse',   max_length = 256,  help_text="Adresse des Projektes", null = True, blank=True )
+    name            = CharField   ( 'Name', max_length = 128, help_text="Name des Projekts", null = True, blank=True )
+    claim           = CharField   ( 'Claim / Untertitel', max_length = 256, help_text="Claim / Untertitel", null = True, blank=True )
+    beschreibung    = TextField   ( 'Projektbeschreibung', max_length = 2048, help_text="Beschreibung des Projektes", null = True, blank=True )
+    learning        = CharField   ( 'Learning', max_length = 256, help_text="Learning", null = True, blank=True )
+    gruendungsjahr  = IntegerField( 'Gründungsjahr', help_text="Gründungsjahr des Projekts", validators=[MinValueValidator(0), MaxValueValidator(9999)], null = True, blank=True )
+    betriebgenommen = IntegerField( 'in Betrieb genommen im Jahr', help_text="Wann wurde das Projekt in Betrieb genommen?", validators=[MinValueValidator(0), MaxValueValidator(9999)], null = True, blank=True )
+    status          = CharField   ( 'Status',    max_length = 3,    choices=STATUS, default='ENT', help_text="Was ist der Status des Projektes" , null = True, blank=True )
+    adresse         = CharField   ( 'Adresse',   max_length = 256,  help_text="Adresse des Projektes", null = True, blank=True )
     plz             = CharField   ( 'Adresse',   max_length = 256,  help_text="PLZ des Projektes", null = True, blank=True )
     adresse_zusatz  = CharField   ( 'Adresse Zusatz',   max_length = 256,  help_text="Adresse Zusatz", null = True, blank=True )
     ort             = CharField   ( 'Ort',        max_length = 4, choices=ORT, default='WELT', help_text="Ort des Projektes", null = True, blank=True )
@@ -276,18 +276,18 @@ class Wohnprojekt(Product):
     ]
 
     RAUMANGEBOT = [
-        ('Co-Working', 'Co-Working'),
-        ('Geschäftslokal(e)', 'Geschäftslokal(e)'),
-        ('ros', 'Büros'),
-        ('Veranstaltungsraum', 'Veranstaltungsraum'),
-        ('Gemeinschaftsküche', 'Gemeinschaftsküche'),
-        ('Kinderspielraum', 'Kinderspielraum'),
-        ('Sauna / Wellness', 'Sauna / Wellness'),
-        ('Fitnessraum', 'Fitnessraum'),
-        ('Werkstatt', 'Werkstatt'),
-        ('Waschküche', 'Waschküche'),
-        ('Musikraum', 'Musikraum'),
-        ('stewohnung', 'Gästewohnung'),
+        ('co_working', 'Co-Working'),
+        ('geschaeftslokale', 'Geschäftslokal(e)'),
+        ('bueros', 'Büros'),
+        ('veranstaltungsraum', 'Veranstaltungsraum'),
+        ('gemeinschaftskueche', 'Gemeinschaftsküche'),
+        ('kinderspielraum', 'Kinderspielraum'),
+        ('sauna_wellness', 'Sauna / Wellness'),
+        ('fitnessraum', 'Fitnessraum'),
+        ('werkstatt', 'Werkstatt'),
+        ('waschkueche', 'Waschküche'),
+        ('musikraum', 'Musikraum'),
+        ('gaestewohnung', 'Gästewohnung'),
     ]
 
     BAUWEISE = [
@@ -359,9 +359,6 @@ class Wohnprojekt(Product):
 
 
 
-
-
-
 class Link(models.Model):
     product = ForeignKey(Product, on_delete=models.CASCADE)
     link_description = CharField(null=True, blank=True, max_length = 2048)

+ 53 - 1
marktplatz/templates/marktplatz/product_overview.html

@@ -339,10 +339,16 @@ $(document).ready(function(){
       <button class="border-thin mybtn btn-toggle {{key}}" data-toggler='{{key}}' style="margin-bottom: 2px; ">#{{value}}</button>
       {% endfor %}
 
+      {% for key, value in raum_agebote_dict.items %}
+      <button class="border-thin mybtn btn-toggle {{key}}" data-toggler='{{key}}' style="margin-bottom: 2px; ">#{{value}}</button>
+      {% endfor %}
+
       {% for elem in altneu_list %}
       <button class="border-thin mybtn btn-toggle {{elem.0}}" data-toggler='{{elem.0}}' style="margin-bottom: 2px; ">#{{elem.1}}</button>
       {% endfor %}
 
+      {{  raum_agebote_dict }}
+      <button class="border-thin mybtn btn-toggle begleitet_true" data-toggler='begleitet_true' style="margin-bottom: 2px; " style="">#Begleitet von RealityLab</button>
       <button class="border-thin mybtn " style="margin-bottom: 2px; ">{% include "marktplatz/modal-sa.html" %}</button>
 
 
@@ -404,7 +410,7 @@ $(document).ready(function(){
   {% for product in wohnprojekt_list %}
 
   <!-- rounded-0 border-0 -->
-  <div class="card  {{product.ort}} {{product.status}} {{product.frei}} {{product.altneu}}   {% if product.frei == 'JAJA' %} mab-card-container-highlight {% endif %}   ">
+  <div class="card  {{product.ort}} {{product.status}} {{product.frei}} {{product.altneu}} {% if product.mitmachen %}begleitet_true{% endif %}{% if product.frei == 'JAJA' %} mab-card-container-highlight {% endif %}   ">
   <div id="product_{{product.pk}}_card" class="flipcard">
     <div class="mab-card-face mab-card-face--front toogle-overflow">
       <!--  -->
@@ -438,6 +444,52 @@ $(document).ready(function(){
             <button id='product_{{product.pk}}_{{product.status}}' data-toggler='{{product.status}}' class="border-thin mybtn btn-toggle {{product.status}}" style="">#{{product.get_status_display}}</button>
             <button id='product_{{product.pk}}_{{product.ort}}' data-toggler='{{product.ort}}' class="border-thin mybtn btn-toggle {{product.ort}}" style="">#{{product.get_ort_display}}</button>
             <button id='product_{{product.pk}}_{{product.altneu}}' data-toggler='{{product.altneu}}' class="border-thin mybtn btn-toggle {{product.altneu}}" style="">#{{product.get_altneu_display}}</button>
+
+            {{  product.raumangebot }}
+            {{  product.raumangebot.get_list }}
+            <p>.............</p>
+            <!--
+            {{  product.get_raumangebot_display }} -->
+            <!-- {{  product.raumangebot.choices }} -->
+
+            <p>0:
+            {{  product.raumangebot.0 }}
+            {{  product.raumangebot.get_display }}
+            {{  product.raumangebot.0.display }}
+            {{  product.raumangebot.0.get_display }}
+            </p>
+            {{  product.get_raumangebot_display }}
+            <p>----</p>
+
+            {% for a  in product.get_raumangebot_display %}
+              {{ a }}
+            {% endfor %}
+
+
+
+            {% for value,text in product.raumangebot.fields %}
+              <strong class="{{ value }}">{{ value }} -- {{ text }}</strong>
+             {% endfor %}
+
+            <<p>***</p>
+
+            {% for key in product.raumangebot %}
+              {{key }} -- {{ key.get_display }}.
+            {% endfor %}
+
+            <p>aaaaaa</p>
+
+            {% for key in product.raumangebot %}
+            <button class="border-thin mybtn btn-toggle {{key}}" data-toggler='{{key}}' style="margin-bottom: 2px; ">#{{key}}</button>
+            {% endfor %}
+
+            {% for key, value in product.raumangebot.field.choices %}
+            <button class="border-thin mybtn btn-toggle {{key}}" data-toggler='{{key}}' style="margin-bottom: 2px; ">#{{value}}</button>
+            {% endfor %}
+
+            {% if product.mitmachen %}
+            <button id='product_{{product.pk}}_{{product.mitmachen}}' data-toggler='begleitet_true' class="border-thin mybtn btn-toggle begleitet_true" style="">#Begleitet von RealityLab</button>
+            {% endif %}
             <!-- <button  class="show-all border-thin mybtn " style="margin-bottom: 2px; ">#Alle anzeigen</button> -->
             <!-- <span id="ShareButton" class="cursor-pointer" > Teilen</span>  -->
           </p>

+ 18 - 6
marktplatz/views.py

@@ -258,9 +258,6 @@ class ProductsView(generic.ListView):
         self.user = self.request.user
         user = self.user
 
-        # if user.groups.filter(name='jury').exists():
-        #     return qs.filter(sumbitted = config.CURRENT_EVENT)
-
         qs = qs.order_by('frei')
 
         if user.groups.filter(name='submission').exists():
@@ -280,11 +277,16 @@ class ProductsView(generic.ListView):
             context['user'] = user
             used_countries = []
             orts = {}
-
-
+            raum_agebote = {}
 
             years = {''}
             for product in context['wohnprojekt_list']:
+                print ( type (product.raumangebot) )
+                # print ( product.raumangebot.max_length )
+                #
+                # print ( product.raumangebot.to_python() )
+
+
                 if not years.__contains__(product.year):
                     years.add(product.year)
                 for country in product.country:
@@ -293,6 +295,14 @@ class ProductsView(generic.ListView):
                 # if not used_orts.__contains__(  product.get_ort_display()  ):
                 if not product.ort in orts:
                     orts[product.ort] = product.get_ort_display()
+                # print (product.raumangebot.get_list() )
+                for raum in product.raumangebot:
+                    print(raum)
+                    # print(raum.get_display() )
+
+                    if not (raum in raum_agebote):
+                        raum_agebote[raum] = raum
+
 
 
             years.remove('')
@@ -301,6 +311,7 @@ class ProductsView(generic.ListView):
             context['frei_list'] = Product.FREI
             context['status_list'] = Product.STATUS
             context['ort_dict'] = orts
+            context['raum_agebote_dict'] = raum_agebote
 
             context['altneu_list'] = Wohnprojekt.ALTNEU
 
@@ -314,7 +325,8 @@ class ProductsView(generic.ListView):
 
             return context
 
-
+    # def get(self, request, *args, **kwargs):
+    #     print ("")
 
     template_name = 'marktplatz/product_overview.html'