Example #1
0
 def _create_comments_adapter(self, comment_model):
     adapter = schema.Adapter()
     adapter.exclude(member.name
                     for member in comment_model.members().itervalues()
                     if not member.visible or not member.editable
                     or not issubclass(member.schema, comment_model))
     adapter.exclude(["publishable", "captcha"])
     return adapter
 def fields_adapter(self):
     adapter = schema.Adapter()
     adapter.exclude([
         member.name
         for member in self.stack_node.content_type.members().itervalues()
         if (self.stack_node.item and self.stack_node.item.is_inserted
             and isinstance(member, (schema.RelationMember))
             and member.bidirectional and member.related_end.integral)
     ])
     return adapter
Example #3
0
 def adapter(self):
     """The schema adapter used to produce data suitable for listing.
     @type: L{SchemaAdapter<cocktail.schema.adapter.SchemaAdapter>}
     """
     user = get_current_user()
     adapter = schema.Adapter()
     adapter.exclude([
         member.name for member in self.type.members().itervalues()
         if not member.visible
         or not user.has_permission(ReadMemberPermission, member=member)
     ])
     return adapter
Example #4
0
 def form_adapter(self):
     """The data adapter used to pass data between the edited item and the
     edit form.
     @type: L{Adapter<cocktail.schema.Adapter>}
     """
     adapter = schema.Adapter()
     adapter.collection_copy_mode = self._adapt_collection
     adapter.exclude([
         member.name for member in self.content_type.members().itervalues()
         if self.should_exclude_member(member)
     ])
     return adapter
Example #5
0
    def get_public_adapter(cls):
        from woost.extensions.ecommerce import ECommerceExtension

        user = get_current_user()
        adapter = schema.Adapter()
        adapter.exclude(["customer", "status", "purchases"])
        adapter.exclude([
            member.name for member in cls.members().itervalues()
            if not member.visible or not member.editable
            or not issubclass(member.schema, ECommerceOrder)
            or not user.has_permission(ModifyMemberPermission, member=member)
        ])
        if len(ECommerceExtension.instance.payment_types) == 1:
            adapter.exclude(["payment_type"])
        return adapter
Example #6
0
 def adapter(self):
     """The adapter used to obtain the form's customized `schema` from the
     form's `model`.
     """
     return schema.Adapter()
 def content_adapter(self):
     return schema.Adapter()