Пример #1
0
class ContentSchemaAdd(PageletAddSubForm):

    schema = None
    prefix = 'content.schema'
    label = _('Custom fields')

    @property
    def fields(self):
        return Fields(*list(IOrder(self.schema).values()))

    def getContent(self):
        return {}

    def update(self):
        schema = IContentSchema(self.context, None)

        if schema is not None:
            self.schema = schema
            super(ContentSchemaAdd, self).update()

    def isAvailable(self):
        return self.schema is not None and len(self.schema)

    def applyChanges(self, data):
        self.schema = IContentSchema(self.parentForm._addedObject)
        changes = self.schema.setSchemaData(data)
        if changes:
            return {IContentSchema: changes}
        else:
            return {}