Acho que ta rolando erro de sintaxe ai, olha essa linha:

# Returning None means no error
return None

esse return está fora da função por isso está acontecendo o erro.
--
Alexandre Marinho
Analista de Tecnologia da Informação - NTI - UFAL
http://alexandre.cuboestudioweb.com
Maceió/AL


Em 16 de junho de 2010 12:09, Julio Zinga Suzuki Lopes <juliozi...@gmail.com
> escreveu:

>
>
> Saudações comunidade!
>
> Estou com a seguinte dúvida: Quero implementar um produto que só aceite
> UPLOAD de arquivos pdf's
>
> Estou querendo criar um validador com uma função para restringir.
>
> mas não pega nenhum tipo de arquivo. e ao tentar compilar, ou melhor, rodar
> o instence fg
> aparece o seguinte erro final
> *
>     ZopeXMLConfigurationError: File
> "/usr/local/Plone/zinstance/src/pox.video/pox/video/content/configure.zcml",
> line 20.2-22.5
>     SyntaxError: 'return' outside function (validators.py, line 24)*
>
>
> Alguém já precisou de restringir uma pasta com um tipo específico de
> arquivo?
>
> Códigos:
>
> validators.py
>
> from  zope.interface import implements
> from  zope.component import adapts
> from  Products.Archetypes.interfaces import IObjectPostValidation
> from  pox.video import videoMessageFactory as _
> from  pox.video.interfaces import IVideo
>
> # class name could be any one
> class ValidatePDFFile(object):
>     """
>     Checks if file field has a real FLV file
>     """
>     implements(IObjectPostValidation)
>     adapts(IVideo)
>
>
>     def validate_file(self, value):
>         """valida a extensão de um arquivo PDF"""
>         field = self.getField('file')
>         if field.getContentType(self) not in self.inlineMimetypePDF:
>            return 'Tipo de arquivo não permitido. Apenas arquivos PDF são
> permitidos'
>
>
> # Returning None means no error
> return None
>
>
>
> configure.zcml
>
>   <subscriber
> provides="Products.Archetypes.interfaces.IObjectPostValidation"
>     factory=".validators.ValidatePDFFile"
>    />
> </configure>
>
>
> E uma classe que chama-se video, mas deveria ser filePDF, (ignorar este
> detalhe :)
>
> class Video(file.ATFile):
>     """
>     pox Video
>     """
>     implements(IATFile,IVideo)
>
>     meta_type = "Video"
>     schema = VideoSchema
>
>     title = atapi.ATFieldProperty('title')
>     description = atapi.ATFieldProperty('description')
>
>     inlineMimetypePDF= ('application/pdf')
>
>     # -*- Your ATSchema to Python Property Bridges Here ... -*-
>
> atapi.registerType(Video, PROJECTNAME)
>
>
>
> --
> --
> Júlio Zinga Suzuki Lopes
> Analista de TI
> Tel: 83 8862-1530 / 9975-1646
>
>
> 

Responder a