stammdaten-formular/membership_data_model.py

27 lines
No EOL
1.4 KiB
Python

import npyscreen
class membership_data_model():
def __init__(self, membership_data_dict):
self.membership_data_dict = membership_data_dict
self.forms = {}
def add_edit_fields(self, parent_form):
mem = self.membership_data_dict
self.forms['status'] = parent_form.add(npyscreen.TitleSelectOne, name="Status: ", values=['V', 'E', 'F'], value=0, max_height=2, scroll_exit=True)
self.forms['von'] = parent_form.add(npyscreen.TitleText, name="Von: ", value=mem['von'])
self.forms['bis'] = parent_form.add(npyscreen.TitleText, name="Bis: ", value=mem['bis'])
self.forms['mitgliedsbeitrag'] = parent_form.add(npyscreen.TitleText, name="Mitgliedsbeitrag: ",
value=mem['mitgliedsbeitrag'])
self.forms['spendenbeitrag'] = parent_form.add(npyscreen.TitleText, name="Spendenbeitrag: ",
value=mem['spendenbeitrag'])
self.forms['schliessberechtigung'] = parent_form.add(npyscreen.TitleText, name="Schliessberechtigung: ",
value=mem['schliessberechtigung'])
self.forms['scan-antrag'] = parent_form.add(npyscreen.TitleText, name="URI Scan Antrag: ",
value=mem['scan-antrag'])
def get_form_values_dict(self):
membership_data_model = dict(zip(self.forms.keys(), map(lambda f: f.value, self.forms.values())))
return membership_data_model
def has_changed(self):
return self.membership_data_dict != self.get_form_values_dict()