コード例 #1
0
    def format_persons(self):
        fields = [('User Name', Text, attrgetter('__name__')),
                  ('Prefix', Text, attrgetter('prefix')),
                  ('First Name', Text, attrgetter('first_name')),
                  ('Middle Name', Text, attrgetter('middle_name')),
                  ('Last Name', Text, attrgetter('last_name')),
                  ('Suffix', Text, attrgetter('suffix')),
                  ('Preferred Name', Text, attrgetter('preferred_name')),
                  ('Birth Date', Date, attrgetter('birth_date')),
                  ('Gender', Text, attrgetter('gender')),
                  ('Password', Text, lambda p: None)]

        def demographics_getter(attribute):
            def getter(person):
                demographics = IDemographics(person)
                return demographics[attribute]

            return getter

        app = ISchoolToolApplication(None)
        demographics_fields = IDemographicsFields(app)
        for field in demographics_fields.values():
            title = field.title
            format = Text
            if isinstance(field, DateFieldDescription):
                format = Date
            getter = demographics_getter(field.name)
            fields.append((title, format, getter))

        items = self.context['persons'].values()
        return self.format_table(fields, items, importer='export_persons')
コード例 #2
0
ファイル: export.py プロジェクト: achouhans/schooltool-2.8.5
    def format_persons(self):
        fields = [('User Name', Text, attrgetter('__name__')),
                  ('Prefix', Text, attrgetter('prefix')),
                  ('First Name', Text, attrgetter('first_name')),
                  ('Middle Name', Text, attrgetter('middle_name')),
                  ('Last Name', Text, attrgetter('last_name')),
                  ('Suffix', Text, attrgetter('suffix')),
                  ('Preferred Name', Text, attrgetter('preferred_name')),
                  ('Birth Date', Date, attrgetter('birth_date')),
                  ('Gender', Text, attrgetter('gender')),
                  ('Password', Text, lambda p: None)]

        def demographics_getter(attribute):
            def getter(person):
                demographics = IDemographics(person)
                return demographics[attribute]
            return getter

        app = ISchoolToolApplication(None)
        demographics_fields = IDemographicsFields(app)
        for field in demographics_fields.values():
            title = field.title
            format = Text
            if isinstance(field, DateFieldDescription):
                format = Date
            getter = demographics_getter(field.name)
            fields.append((title, format, getter))

        items = self.context['persons'].values()
        return self.format_table(fields, items, importer='export_persons')
コード例 #3
0
ファイル: group.py プロジェクト: achouhans/schooltool-2.8.5
 def columns(self):
     result = []
     limit_keys = ['students']
     dfs = IDemographicsFields(ISchoolToolApplication(None))
     for df in dfs.filter_keys(limit_keys):
         name = df.name
         if name not in LEAVE_SCHOOL_FIELDS:
             result.append(zc.table.column.GetterColumn(
                 name=name,
                 title=df.title,
                 getter=self.get_person_demographics(name)
                 ))
     return result
コード例 #4
0
 def columns(self):
     result = []
     limit_keys = ['students']
     dfs = IDemographicsFields(ISchoolToolApplication(None))
     for df in dfs.filter_keys(limit_keys):
         name = df.name
         if name not in LEAVE_SCHOOL_FIELDS:
             result.append(
                 zc.table.column.GetterColumn(
                     name=name,
                     title=df.title,
                     getter=self.get_person_demographics(name)))
     return result
コード例 #5
0
 def isValidKey(self, key):
     app = ISchoolToolApplication(None)
     demographics_fields = IDemographicsFields(app)
     return key in demographics_fields