Пример #1
0
 def for_code_sort(self, kat, sel=None):
     elems = [c["sort"] for c in kat["codes"]]
     elems.sort()
     if sel and sel > max(elems):
         elems.append(sel)
     elems = [{"sort": s} for s in elems]
     return make_option_list(elems, "sort", "sort", selected=sel)
Пример #2
0
 def for_teilmengen(self, sel=None):
     "Definierte Teilmengen, ermöglichen Abfragen über definierte Gruppen "
     "in der Fach- und Bundesstatistik."
     abfrage_list = AbfrageList(where='')
     return (self.option_tmpl % ('', '', 'Alle')) + make_option_list(abfrage_list,
                                                            'id', 'name',
                                                            selected=sel)
Пример #3
0
 def for_code_sort(self, kat, sel=None):
     elems = [c['sort'] for c in kat['codes']]
     elems.sort()
     if sel and sel > max(elems):
         elems.append(sel)
     elems = [{'sort': s} for s in elems]
     return make_option_list(elems, 'sort', 'sort', selected=sel)
Пример #4
0
    def for_fs_kategorie(self, sel=None):
        from ebkus.html.fskonfig import fs_customize

        kat_ids = ", ".join([str(f["kat_id"]) for f in fs_customize.fd.values() if f["kat_id"]])
        fs_kategorien = KategorieList(where="id in (%s)" % kat_ids)
        fs_kategorien.sort("name")
        return make_option_list(fs_kategorien, "id", "name", selected=sel)
 def options(self):
     codes = get_codes(self.kat)
     selected = self.get_fs_data().get(self.feld)
     if selected != None:
         #selected = selected.getIds()
         selected = [int(i) for i in selected.split()]
     return make_option_list(codes, 'id', 'name',
                             selected=selected)
Пример #6
0
 def for_fs_kategorie(self, sel=None):
     from ebkus.html.fskonfig import fs_customize
     kat_ids = ', '.join([str(f['kat_id']) for f in fs_customize.fd.values()
                              if f['kat_id']])
     fs_kategorien = KategorieList(where="id in (%s)" % kat_ids)
     fs_kategorien.sort('name')
     return make_option_list(fs_kategorien,
                             'id', 'name',
                             selected=sel)
Пример #7
0
 def for_kat(self, kat, sel=None, all=False):
     if sel in ("", " "):
         empty_option = True
     else:
         empty_option = False
     # das ist ein hack. Eigentlich müsste ein multi-kat Feld eine List von Integern liefern.
     # Ist aber ein String von Zahlen, zB "233 44 444"
     if isinstance(sel, basestring):
         sel = [int(x) for x in sel.split()]
     if all:
         codes = get_all_codes(kat)
     else:
         codes = get_codes(kat)
     return make_option_list(codes, "id", "name", selected=sel, empty_option=empty_option)
 def options(self):
     codes = get_codes(self.kat)
     selected = self.get_fs_data().get(self.feld)
     if selected == None:
         empty_option = True
         select_first = True
         selected = ''
     else:
         empty_option = False
         select_first = False
     return make_option_list(codes, 'id', 'name',
                             empty_option=empty_option,
                             select_first=select_first,
                             selected=selected)
Пример #9
0
 def for_land_kr_einrnr(self, kat):
     """Das dok-Feld der Merkmale von kr, land, einrnr, kann mit
     Stelle <stellencode> beginnen. Dann wird das Merkmal in
     Option-List an erste Stelle gesetzt. Relevant für die
     Bundesstatistik, damit verschiedene Stellen unterschiedliche
     Merkmale haben können und diese nicht fehleranfällig auswählen
     müssen.
     """
     assert kat in ('kr', 'land', 'einrnr')
     codes = get_codes(kat)
     stz_code = self.stelle['code'].lower()
     found = None
     for c in codes:
         dok = c['dok']
         if dok:
             dok = dok.strip().lower()
             if ('stelle ' + stz_code + ';') in dok:
                 found = c
                 break
     if found:
         codes.remove(found)
         codes.insert(0, found)
         
     return  make_option_list(codes, 'id', 'name')
Пример #10
0
 def _process(self, 
              title,
              file,
              konfig_name,
              ):
     kv = [kv for kv in config.iter() if kv.name == konfig_name]
     if kv:
         kv = kv[0]
     else:
         raise EE("Unbekannte Konfigurationsvariable: %s" % konfig_name)
     edit = h.FieldsetInputTable(
         legend=title,
         daten=[[h.String(string='Name:',
                          class_='labeltext',
                          align='right',
                          ),
                 h.String(string=kv.name,
                          class_='largetextbold',
                          ),
                 ],
                [h.String(string='Beschreibung:',
                          class_='labeltext',
                          align='right',
                          ),
                 h.String(string=kv.beschreibung + "<br /><br />" + kv.doku
                          ),
                 ],
                [kv.is_boolean() and 
                 h.SelectItem(label='Wert',
                              name='konfig_value',
                              options=make_option_list(
                         elements=[{'name':'true', 'value':'true'},
                                   {'name':'false', 'value':'false'},],
                         value_field='value',
                         name_field='name',
                         selected=kv.value and 'true' or 'false',
                         ),
                              ) or
                 h.TextareaItem(label='Wert',
                            name='konfig_value',
                            value=kv.value,
                            class_='textareaverylarge',
                            )
                 ],
                ],
         )
     res = h.FormPage(
         title=title,
         name='konfedit',action="konfigausw",method="post",
         breadcrumbs = (('Hauptmenü', 'menu'),
                        ('Allgemeine Konfiguration', 'konfausw'),
                        ),
         hidden=(("konfig_name", konfig_name),
                 ("file", file),
                 ),
         rows=(edit,
               h.SpeichernZuruecksetzenAbbrechen(),
               #self.get_mitarbeiter(),
               ),
         )
     return res.display()
Пример #11
0
 def for_mitarbeiter(self, sel=None, empty_option=False):
     if sel and isinstance(sel, basestring):
         sel = [int(x) for x in sel.split()]
     return make_option_list(self.getMitarbeiterliste(),
                             'id', 'na',
                             selected=sel, empty_option=empty_option)
Пример #12
0
 def for_teilmengen(self, sel=None):
     "Definierte Teilmengen, ermöglichen Abfragen über definierte Gruppen "
     "in der Fach- und Bundesstatistik."
     abfrage_list = AbfrageList(where="")
     return (self.option_tmpl % ("", "", "Alle")) + make_option_list(abfrage_list, "id", "name", selected=sel)