Changeset 1851 for PyLucidPlugins

Show
Ignore:
Timestamp:
03/24/09 15:01:45 (12 months ago)
Author:
JensDiemer
Message:

plugin kurs_anmeldung: add simple copy&paste export to OpenOffice? ;)

Location:
PyLucidPlugins/kurs_anmeldung
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • PyLucidPlugins/kurs_anmeldung/internal_page/kurs_anmeldung/administer.css

    r1850 r1851  
    1 #kurs_admin pre { 
     1textarea.kurs_admin { 
     2    height: 20em; 
     3    width: 100%; 
     4} 
     5.kurs_admin pre { 
    26    border: 0px; 
    37    font-size:1em; 
     8    width: 40em; 
     9    white-space: normal; 
    410} 
  • PyLucidPlugins/kurs_anmeldung/internal_page/kurs_anmeldung/administer.html

    r1850 r1851  
    1 <table id="kurs_admin"> 
     1<table class="kurs_admin"> 
    22  <tr> 
     3    <th>createtime</th> 
    34    <th>Name</th> 
    4     <th>Kurs Wahl</th> 
    5     <th>mail sended?</th> 
    65    <th>verified</th> 
     6    <th>Semester</th> 
     7    <th>Matrikel Nr</th> 
     8     
     9    {% for kurs in kurse %} 
     10    <th>{{ kurs }}</th> 
     11    {% endfor %} 
     12     
     13    <th>laptop</th> 
     14    <th>warteliste</th> 
     15     
     16    <th>user note</th> 
    717    <th>logging</th> 
    818  </tr> 
    9 {% for item in items %} 
     19{% for anmeldung in anmeldungen %} 
    1020<tr> 
    11     <td><a href="mailto:{{ item.email }}">{{ item.nachname }}, {{ item.vorname }}</a></td> 
     21    <td>{{ anmeldung.db_instance.createtime|date:"d.m.y H:i" }}</td> 
    1222    <td> 
    13         <ul> 
    14             {% for kurs in item.kurs_wahl.all %} 
    15             <li>{{ kurs.name }}</li> 
    16             {% endfor %} 
    17         </ul> 
    18     </td> 
    19     <td>{{ item.mail_sended }}</td> 
    20     <td>{{ item.verified }}</td> 
    21     <td><pre>{{ item.logging }}</pre></td> 
     23        <a href="mailto:{{ anmeldung.db_instance.email }}"> 
     24        {{ anmeldung.db_instance.nachname }}, {{ anmeldung.db_instance.vorname }} 
     25        </a> 
     26    </td>     
     27    <td>{{ anmeldung.db_instance.verified|yesno }}</td> 
     28     
     29    <td>{{ anmeldung.db_instance.semester }}</td> 
     30    <td>{{ anmeldung.db_instance.matrikel_nr }}</td> 
     31     
     32    {% for kurs in anmeldung.kurs_wahl_bools %} 
     33        <td>{% if kurs %}X{% else %}-{% endif %}</td> 
     34    {% endfor %} 
     35     
     36    <td>{{ anmeldung.db_instance.laptop|yesno }}</td> 
     37    <td>{{ anmeldung.db_instance.warteliste }}</td> 
     38     
     39    <td><pre>{{ anmeldung.db_instance.note }}</pre></td> 
     40    <td><pre>{{ anmeldung.db_instance.logging }}</pre></td> 
    2241</tr> 
    2342{% endfor %} 
    2443</table> 
     44 
     45<h2>for OpenOffice</h2> 
     46<textarea class="kurs_admin"> 
     47Reg.Zeit;Name;Semester;Matrikel Nr;Email;{% for kurs in kurse %}{{ kurs }};{% endfor %}Laptop?;Warteliste; 
     48{% for anmeldung in anmeldungen %}{{ anmeldung.db_instance.createtime|date:"d.m.y H:i" }};{{ anmeldung.db_instance.nachname }}, {{ anmeldung.db_instance.vorname }};{{ anmeldung.db_instance.semester }};{{ anmeldung.db_instance.matrikel_nr }};{{ anmeldung.db_instance.email }};{% for kurs in anmeldung.kurs_wahl_bools %}{% if kurs %}X{% else %}-{% endif %};{% endfor %}{{ anmeldung.db_instance.laptop|yesno }};{{ anmeldung.db_instance.warteliste }}; 
     49{% endfor %} 
     50</textarea> 
  • PyLucidPlugins/kurs_anmeldung/kurs_anmeldung.py

    r1850 r1851  
    6868 
    6969class KursAnmeldung(models.Model): 
     70    """ 
     71    TODO: Hinzufügen von "Kursbesucht" oder so... 
     72    """ 
    7073    WARTELISTE = ( 
    7174        ("-", "Habe mich vorher noch nicht für diesen Kurs eingeschrieben."), 
     
    7881            "Hatte mich schon einmal eingetragen, weiß aber nicht mehr wann." 
    7982        ), 
    80     ) 
     83    )   
    8184 
    8285    email = models.EmailField( 
     
    333336 
    334337    def administer(self): 
     338        kurse = Kurs.objects.all() 
     339        
    335340        items = KursAnmeldung.objects.all() 
     341        anmeldungen = [] 
     342        for anmeldung in items: 
     343            kurs_wahl = anmeldung.kurs_wahl.all() 
     344            flat_kurs_wahl = sorted([kurs.name for kurs in kurs_wahl]) 
     345             
     346            kurs_wahl_bools = [] 
     347            for kurs in kurse: 
     348                if kurs in kurs_wahl: 
     349                    kurs_wahl_bools.append(True) 
     350                else: 
     351                    kurs_wahl_bools.append(False) 
     352             
     353            anmeldungen.append({ 
     354                "db_instance": anmeldung, 
     355                "kurs_wahl": kurs_wahl, 
     356                "flat_kurs_wahl": flat_kurs_wahl, 
     357                "kurs_wahl_bools": kurs_wahl_bools, 
     358            })       
     359         
    336360        context = { 
    337             "items": items, 
     361            "anmeldungen": anmeldungen, 
     362            "kurse": kurse, 
    338363        } 
    339364        self._render_template("administer", context)