label = "Tick if this block is a teaser",
                                             label_msgid = "simplelayout_label_teaserblock",
                                             i18n_domain = "simplelayout",
                                             )),
),
)

##code-section after-local-schema #fill in your manual code here
##/code-section after-local-schema

paragraph_schema = ATContentTypeSchema.copy() + \
    schema.copy() + textSchema.copy() + imageSchema.copy()

paragraph_schema['excludeFromNav'].default = True
paragraph_schema['title'].required = False
finalize_simplelayout_schema(paragraph_schema)
paragraph_schema['description'].widget.visible = {'edit': 0, 'view': 0}
paragraph_schema['title'].searchable = 0
paragraph_schema.moveField('teaserblock',before="relatedItems")
paragraph_schema['text'].widget.filter_buttons = ('image', )

##code-section after-schema #fill in your manual code here
##/code-section after-schema

class Paragraph(ATDocumentBase):
    """
    """
    security = ClassSecurityInfo()
    implements(IParagraph, ISimpleLayoutBlock)
    schema = paragraph_schema
                 force_close_on_insert = True,
                 i18n_domain="plone",
                 label="Related Items",
                 label_msgid="label_related_items",
                 description="",
                 description_msgid="",
                 visible = {'edit' : 'visible', 'view' : 'invisible' }
                 )
           ),

))

page_schema = ATFolder.schema.copy() + ConstrainTypesMixinSchema.copy() \
    + schema.copy()

finalize_simplelayout_schema(page_schema, folderish=True)


class Page(ATFolder):
    """
    """
    implements(IPage, ISimpleLayoutCapable)
    security = ClassSecurityInfo()

    schema = page_schema

    def getPageTypes(self):
        catalog = getToolByName(self, "portal_catalog")
        return catalog.uniqueValuesFor("page_types")

atapi.registerType(Page, PROJECTNAME)