"""Definition of the multimedia content type
"""
from zope.interface import implements, directlyProvides
from Products.Archetypes import atapi
from Products.ATContentTypes.content import folder
from Products.ATContentTypes.content import schemata
from plone.multimedia import multimediaMessageFactory as _
from plone.multimedia.interfaces import Imultimedia
from plone.multimedia.config import PROJECTNAME
multimediaSchema = folder.ATFolderSchema.copy() + atapi.Schema((
# -*- Your Archetypes field definitions here ... -*-
atapi.FileField(
name='multimediaAudio',
widget=atapi.FileWidget(
label=u'The audio file to upload',
label_msgid='PloneMultimedia_label_audioFile',
il8n_domain='PloneMultimedia',
),
required=False,
searchable=False
)
))
# Set storage on fields copied from ATContentTypeSchema, making sure
# they work well with the python bridge properties.
multimediaSchema['title'].storage = atapi.AnnotationStorage()
multimediaSchema['description'].storage = atapi.AnnotationStorage()
schemata.finalizeATCTSchema(multimediaSchema,folderish=True, moveDiscussion=False)
class multimedia(folder.ATFolder):
"""multimedia content type"""
implements(Imultimedia)
meta_type = "multimedia"
schema = multimediaSchema
title = atapi.ATFieldProperty('title')
description = atapi.ATFieldProperty('description')
# -*- Your ATSchema to Python Property Bridges Here ... -*-
atapi.registerType(multimedia, PROJECTNAME)