Exemple #1
0
    def _modify_package_schema(self, schema):

        ##
        # Getting custom package schema
        ##

        for field in dcatapit_schema.get_custom_package_schema():
            if 'ignore' in field and field['ignore'] == True:
                continue

            if 'couples' in field:
                for couple in field['couples']:
                    self.update_schema_field(schema, couple)
            else:
                self.update_schema_field(schema, field)

        schema.update({'notes': [toolkit.get_validator('not_empty')]})

        ##
        # Getting custom resource schema
        ##

        for field in dcatapit_schema.get_custom_resource_schema():
            if 'ignore' in field and field['ignore'] == True:
                continue

            validators = []
            for validator in field['validator']:
                validators.append(toolkit.get_validator(validator))

            schema['resources'].update({field['name']: validators})

        log.debug("Schema updated for DCAT_AP-TI:  %r", schema)

        return schema
Exemple #2
0
    def update_schema_field(self, schema, field):
        validators = []
        for validator in field['validator']:
            validators.append(toolkit.get_validator(validator))

        converters = [toolkit.get_converter('convert_to_extras')]

        schema.update({field['name']: validators + converters})
Exemple #3
0
    def update_config_schema(self, schema):
        for field in dcatapit_schema.get_custom_config_schema(False):

            validators = []
            for validator in field['validator']:
                validators.append(toolkit.get_validator(validator))

            schema.update({field['name']: validators})

        return schema
Exemple #4
0
    def _modify_group_schema(self, schema):
        for field in dcatapit_schema.get_custom_organization_schema():

            validators = []
            for validator in field['validator']:
                validators.append(toolkit.get_validator(validator))

            schema.update({
                field['name']:
                validators + [toolkit.get_converter('convert_to_extras')]
            })

        return schema
Exemple #5
0
    def show_package_schema(self):
        schema = super(DCATAPITPackagePlugin, self).show_package_schema()
        
        ##
        # Getting custom package schema
        ##

        for field in dcatapit_schema.get_custom_package_schema():
            if 'ignore' in field and field['ignore'] == True:
                continue

            if 'couples' in field:
                for couple in field['couples']:
                    self.update_show_schema_field(schema, couple)
            else:
                self.update_show_schema_field(schema, field)

        schema.update({
            'notes': [
                toolkit.get_validator('not_empty')
            ]
        })

        ##
        # Getting custom resource schema
        ##

        for field in dcatapit_schema.get_custom_resource_schema():
            if 'ignore' in field and field['ignore'] == True:
                continue

            validators = []
            for validator in field['validator']:
                validators.append(toolkit.get_validator(validator))

            schema['resources'].update({
                field['name']: validators
            })


        # conditionally include schema fields from MultilangResourcesPlugin
        if MLR:
            schema = MLR.update_schema(schema)
        
        log.debug("Schema updated for DCAT_AP-TI:  %r", schema)

        return schema
Exemple #6
0
    def db_to_form_schema(self):
        '''This is an interface to manipulate data from the database
        into a format suitable for the form (optional)'''
        schema = self.default_show_group_schema()

        for field in dcatapit_schema.get_custom_organization_schema():

            validators = []
            for validator in field['validator']:
                validators.append(toolkit.get_validator(validator))

            schema.update({
                field['name']:
                [toolkit.get_converter('convert_from_extras')] + validators
            })

        return schema
    def _modify_package_schema(self, schema):
        # Package schema
        for field in dcatapit_schema.get_custom_package_schema():
            if field.get('ignore'):
                continue

            if 'couples' in field:
                for couple in field['couples']:
                    self._update_schema_field(schema, couple)
            else:
                self._update_schema_field(schema, field)

        schema['notes'] = [toolkit.get_validator('not_empty')]

        # ignore theme extra fields
        junk = schema.get('__junk', [])
        junk.append(toolkit.get_validator('dcatapit_remove_theme'))
        schema['__junk'] = junk

        # Resource schema
        for field in dcatapit_schema.get_custom_resource_schema():
            if field.get('ignore'):
                continue

            validators = []
            for validator in field['validator']:
                validators.append(toolkit.get_validator(validator))

            schema['resources'].update({
                field['name']: validators
            })

        # conditionally include schema fields from MultilangResourcesPlugin
        if MLR:
            schema = MLR.update_schema(schema)

        return schema
    def _update_schema_field(self, schema, field):
        validators = [toolkit.get_validator(v) for v in field['validator']]
        validators.append(toolkit.get_converter('convert_to_extras'))

        schema[field['name']] = validators