2008/12/7 Manuel Gualda Caballero wrote:
>
> > Ahora tendré que investigar cómo conseguir:
> >
> > 1.- Que la URL y el correo electrónico aparezcan hipervinculados (y,
> > si soy
> > capaz, que el formulario de alta compruebe que los caracteres
> > introducidos
> > son del tipo URL y correo electrónico).
> >
> >
> De este primer punto ya sólo me falta lograr que el correo electrónico
> aparezca hipervinculado y con protección antispam. He intentado
> conseguirlo copiando y pegando código de los archivos .py y .pt de los
> events, pero lo máximo que he logrado conseguir es el siguiente error:
>
> NameError: name 'contact_email' is not defined
>
> Y por mucho que busco en los foros de Plone y en Google, no encuentro
> nada que me ayude a solucionar el problema. Así que si alguien tiene
> idea de cómo se hace esto...
Para que aparezca hipervinculado, asumiendo que el campo se llama "email":
<a href="#" tal:attributes="href string:mailto:${context/getEmail}">
Si quieres protección antispam, la manera más limpia y sencilla que se
me ocurre es crear un método en la clase del tipo de contenido:
class TuTipoDecontenido(ClaseMadre):
....
def getObfuscatedEmail(self):
"""Get a modified version of email so spambots can't read it.
"""
email = self.getEmail()
obfuscated_email = email.replace('@', ' at ')
return obfuscated_email
Y luego en la plantilla:
<a href="#" tal:attributes="href
string:mailto:${context/getObfuscatedEmail}"
tal:content="context/getObfuscatedEmail">email</a>
No lo he probado, pero espero que funcione.
> > 2.- Que la imagen se muestre redimensionada a determinado tamaño, que al
> > pulsar en ésta se vea la imagen a tamaño completo y que no se puedan
> > subir
> > imágenes que excedan de determinado límite de peso.
> >
> >
> > Esto tiene la misma solución que el punto anterior.
>
> Por ahora sólo he conseguido que redimensione la imagen si tiene más de
> 300 pixels de ancho o alto.
>
> Si sigo las instrucciones de
> http://pererikstrandberg.se/blog/index.cgi?page=ModifyingTheMinimalPloneContentType
> la imagen se carga y muestra sin problemas.
>
> Pero al intentar personalizar la vista siguiendo las instrucciones de
> http://pererikstrandberg.se/blog/index.cgi?page=PloneArchetypesViewTemplateModifications
> y
> http://plone.org/documentation/how-to/how-to-customise-view-or-edit-on-archetypes-content-items
> deja de verse la imagen.
>
> En directorio.py tengo el siguiente código:
>
> ImageField('Imagen',
> max_size = (300,300),
> ),
>
> Pero no sé qué tengo que poner en directorio_view.py para que muestre la
> correspondiente imagen (resulta curioso: he logrado encontrar
> explicaciones de cómo hacer cosas complejas con las imágenes, pero no he
> sabido localizar la que explica lo más básico: sencillamente mostrar la
> imagen con una medida determinada y ya está).
Si mal no recuerdo, los campos tipo imagen tienen un método denominado
"tag" para conseguir uno de los tamaños almacenados:
<img tal:replace="python: context.image.tag(size='thumb') />
> > 3.- Que el buscador del sitio busque en algunos campos más de las fichas
> > (aparte de en el campo "Título").
> >
> >
> > Indexa los campos por los que quieres buscar en en catálogo.
>
> Les he añadido "searchable = True," y el buscador ya los tiene en
> cuenta. ¿Es esto a lo que te referías o lo de indexarlos en el catálogo
> es otra cosa?
Si no me equivoco, eso lo que hace es hacer que estos campos sean
parte del campo "virtual" SearchableText indexado. Esto significa que
podrás realizar búsquedas generales que incluyan estos campos, pero no
buscar por este campo explícitamente. Es decir, puedes buscar en todos
los campos que agrupa "SearchableText" a la vez, pero no sólo en uno
concretamente. No sé si te supondrá un problema.
Suerte. :-)
-- israel
_______________________________________________
Plone-ConoSur mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/plone-conosur