Exemplo n.º 1
0
class IEnlacegs(form.Schema):
    """A conference program. Programs can contain Sessions.
    """
    cuerpo = RichText(
        title=u"Enlace a la fuente primaria",
        required=True,
    )

    tipoMedio = schema.Choice(
        title=_(u"Tipo de recurso"),
        vocabulary=tiposVocab,
        required=True,
    )
    form.widget('tipoEnlace', onchange=u"ocultaCamposEnlaceGS($(this).val())")
    tipoEnlace = schema.Choice(
        title=_(u"Tipo de enlace"),
        description=
        u"Especifique si el recurso que quiere publicar está en el Repositorio de Arcas, o si es independiente.",
        vocabulary=tipoEnlaceVocab,
        required=True,
    )
    ficha = schema.TextLine(
        title=_(u"Enlace al documento"),
        description=
        u"Enlace a la página del documento Greenstone (debe incluir el http://)",
        required=False,
        constraint=isValidURL,
    )
    urlRemoto = schema.TextLine(
        title=u"Enlace a la fuente primaria",
        description=
        u"Enlace a la fuente primaria, es una imagen, a la imagen, si es una archvivo de audio al audio que en Greenstone, debe incluir el http://",
        required=False,
        constraint=isValidURL,
    )
Exemplo n.º 2
0
class IBiografia(form.Schema):
    """Biografía de un personaje
    """

    cuerpo = RichText(
        title=_(u"Texto principal"),
        required=True,
    )
    produccion = RichText(
        title=_(u"Obras o datos relevante"),
        description=_(
            u"Listar las obras/acciones/hitos más relevantes del artista"),
        required=True,
    )
Exemplo n.º 3
0
class IColecGroupName(form.Schema):
    """Add tags to content
    """
    form.fieldset(
        'responsables',
        u"Responsables",
        fields=['groupName'],
    )
    groupName = schema.TextLine(
        title=_(u"Nombre del grupo"),
        description=
        _(u"La coleccion tiene asociado un grupo de usuarios, este campo define el nombre de dicho grupo"
          ),
        required=False,
        default=u"sinNombre")
Exemplo n.º 4
0
class IColeccionesFolder(form.Schema):
    """Carpeta que guarda colecciones"""

    cuerpo = RichText(
        title=_(u"Texto principal"),
        required=False,
    )
Exemplo n.º 5
0
class AddForm(dexterity.AddForm):
    #portal_type = 'arcas.enlacegs'

    label = u"Enlace"

    def update(self):
        super(AddForm, self).update()
        """f fTipo.value[0]=="1":
            print "Uno"
            #self.widgets["ficha"].value=""
            #self.widgets["urlRemoto"].value=""
            fFicha.mode=interfaces.DISPLAY_MODE
            fUrl.mode=interfaces.DISPLAY_MODE
        else:
            print "Dos"       
            fFicha.mode=interfaces.HIDDEN_MODE
            fUrl.mode=interfaces.HIDDEN_MODE
        """
        pass

    def updateActions(self):
        super(AddForm, self).updateActions()
        pass

    @button.buttonAndHandler(_('Omitir'), name='omitir')
    def handle_add(self, action):
        IStatusMessage(self.request).addStatusMessage(
            _(u"Se cancelaron los cambios"), "info")
        redirect_url = self.context.aq_parent.absolute_url()
        return self.request.response.redirect(redirect_url)

    @button.buttonAndHandler(_('Save'), name='save')
    def handleAdd(self, action):
        data, errors = self.extractData()
        if errors:
            self.status = self.formErrorsMessage
            return
        obj = self.createAndAdd(data)
        if obj is not None:
            # mark only as finished if we get the new object
            self._finishedAdd = True
            IStatusMessage(self.request).addStatusMessage(
                self.success_message, "info")
        redirect_url = self.context.aq_parent.absolute_url()
        return self.request.response.redirect(redirect_url)
Exemplo n.º 6
0
    def handle_add(self, action):
        data, errors = self.extractData()
        if errors:
            self.status = self.formErrorsMessage
            return
        changes = self.applyChanges(data)

        IStatusMessage(self.request).addStatusMessage(_(u"Cambios guardados"),
                                                      "info")
        redirect_url = self.context.aq_parent.absolute_url()
        return self.request.response.redirect(redirect_url)
Exemplo n.º 7
0
class EditForm(dexterity.EditForm):
    form.extends(dexterity.EditForm)
    label = u"Enlace"

    def update(self):
        """---"""
        super(EditForm, self).update()
        flag = 0
        # Remove button using dictionary style delete

        self.widgets['tipoEnlace'].update()

        if 'cancel' in self.form.buttons.keys():
            del self.form.buttons['cancel']
            flag = flag + 1
        if 'save' in self.form.buttons.keys():
            del self.form.buttons['save']
            flag = flag + 1

        if flag > 0:
            super(EditForm, self).update()

    @button.buttonAndHandler(_('Omitir'), name='omitir')
    def handle_add(self, action):
        IStatusMessage(self.request).addStatusMessage(
            _(u"Se cancelaron los cambios"), "info")
        redirect_url = self.context.aq_parent.absolute_url()
        return self.request.response.redirect(redirect_url)

    @button.buttonAndHandler(_('Aplicar'), name='aplicar')
    def handle_add(self, action):
        data, errors = self.extractData()
        if errors:
            self.status = self.formErrorsMessage
            return
        changes = self.applyChanges(data)

        IStatusMessage(self.request).addStatusMessage(_(u"Cambios guardados"),
                                                      "info")
        redirect_url = self.context.aq_parent.absolute_url()
        return self.request.response.redirect(redirect_url)
Exemplo n.º 8
0
class IExhibicion(form.Schema):
    """A conference program. Programs can contain Sessions.
    """
    form.fieldset(
        'responsables',
        u"Responsables",
        fields=['curador', 'integrantes'],
    )
    cuerpo = RichText(
        title=_(u"Texto principal"),
        required=False,
    )
    bgCabezalHome = NamedBlobImage(
        title=_(u"Imagen Home"),
        description=
        u"Imagen de fondo que se utiliza en la home. Para componerla utilice los ejemplos del banco de imagenes",
        required=False,
    )
    bgCabezalVista = NamedBlobImage(
        title=_(u"Imagen de la vista"),
        description=
        u"Imagen de fondo que se utiliza en la pagina de la exhibición propiamente dicha. Si desea componer una nueva, utilice los ejemplos del banco de imagenes",
        required=False,
    )
    bgCabezalLista = NamedBlobImage(
        title=_(u"Imagen para el listado exhibiciones"),
        description=
        u"Imagen de fondo que se utiliza en el listado de exhibiciones. Si desea componer una nueva, utilice los ejemplos del banco de imagenes",
        required=False,
    )
    baner = NamedBlobImage(
        title=_(u"Imagen para baner"),
        description=
        u"Imagen completa del baner que se muestra en la vista de coleccion. Si desea componer uno nuevo, puede utilizar los ejemplos del banco de imágenes",
        required=False,
    )

    curador = schema.List(title=_(u"Curadores"),
                          value_type=schema.Choice(source=grupoPot),
                          required=False)

    integrantes = schema.List(
        title=_(u"Integrantes"),
        description=u"Listado de personas que colaboran con esta exhibición",
        value_type=schema.Choice(source=grupoPot),
        required=False)
    directives.widget(coleccionR=AutocompleteFieldWidget)
    coleccionR = RelationChoice(
        title=u"Colección Relacionada",
        description=u"Colección a la que pertenece esta exhibicón",
        source=ObjPathSourceBinder(portal_type="arcas.coleccion"),
        required=False,
    )
Exemplo n.º 9
0
class IRootFolder(model.Schema):
    """Una carpeta principal para documentos publicos
    """
    cuerpo = RichText(
        title=_(u"Texto principal"),
        required=True,
    )
    directives.widget(exhiDestacada=AutocompleteFieldWidget)
    exhiDestacada = RelationChoice(
        title=u"Selecciones una Exhibicion",
        description=u"Seleccione la exhibicion a destacar",
        source=ObjPathSourceBinder(object_provides=IExhibicion.__identifier__),
        required=False,
    )
Exemplo n.º 10
0
# -*- coding: utf-8 -*-
__author__ = 'Paul'
from arcas.content import ArcasMessageFactory as _

from five import grok
from zope import schema
from plone.app.textfield import RichText
from plone.directives import form
from plone.namedfile.field import NamedBlobImage


from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm

COLOR_COLECCION = SimpleVocabulary(
    [SimpleTerm(value=u'7494bf', title=_(u'Celeste')),
     SimpleTerm(value=u'586d57', title=_(u'Verde')),
     SimpleTerm(value=u'c4777b', title=_(u'Rosa')),
     SimpleTerm(value=u'dca167', title=_(u'Naranja')),
     SimpleTerm(value=u'e4d68d', title=_(u'Amarillo')),
     SimpleTerm(value=u'97895e', title=_(u'Marron')),
     SimpleTerm(value=u'd5cfa4', title=_(u'Marron claro')),
     ]
    )


class ICategoria(form.Schema):
    """A conference program. Programs can contain Sessions."""
    color = schema.Choice(
        title=u"Color",
        description=u"El color que identifica esta categoría.",
        vocabulary=COLOR_COLECCION,
Exemplo n.º 11
0
class IColDerSeccion(form.Schema):
    """Campos para gestionar una sección"""
    form.fieldset(
        'columnaDer',
        label=u"Col. derecha Sec1",
        fields=['tipoSecc1', 'titulo1', 'textoSeccion1', 'ria1', 'picture1'])
    form.fieldset(
        'colDerecha',
        label=u"Col. derecha Sec2",
        fields=['tipoSecc2', 'titulo2', 'textoSeccion2', 'ria2', 'picture2'])

    tipoSecc1 = schema.Choice(
        title=_(u"Tipo de seccion"),
        description=_(u"Elija un tipo para esta sección"),
        vocabulary=tiposDeSeccion,
        required=False,
    )
    titulo1 = schema.TextLine(
        title=_(u"Título de la sección 1"),
        description=
        _(u"Título que encabeza la sección de la columna derecha. Puede estar vacío y no se mostrará nada"
          ),
        required=False,
    )
    textoSeccion1 = RichText(
        title=_(u"Texto de las sección 1"),
        required=False,
    )
    ria1 = NamedBlobFile(
        title=_(u"Suba un video"),
        required=False,
    )
    picture1 = NamedBlobImage(
        title=_(u"Suba la imagen"),
        required=False,
    )
    tipoSecc2 = schema.Choice(
        title=_(u"Tipo de seccion"),
        description=_(u"Elija un tipo para esta sección"),
        vocabulary=tiposDeSeccion,
        required=False,
    )
    titulo2 = schema.TextLine(
        title=_(u"Título de la sección 2"),
        description=
        _(u"Título que encabeza la sección de la columna derecha. Puede estar vacío y no se mostrará nada"
          ),
        required=False,
    )
    textoSeccion2 = RichText(
        title=_(u"Texto de las sección 2"),
        required=False,
    )
    ria2 = NamedBlobFile(
        title=_(u"Suba un video"),
        required=False,
    )
    picture2 = NamedBlobImage(
        title=_(u"Suba la imagen"),
        required=False,
    )
Exemplo n.º 12
0
def isValidURL(value):
    if value.find("http://") == 0 or value.find("https://") == 0:
        return True
    else:
        raise Invalid(_(u"Por favor ingrese un una url que incluya HTTP"))
Exemplo n.º 13
0
 def handle_add(self, action):
     IStatusMessage(self.request).addStatusMessage(
         _(u"Se cancelaron los cambios"), "info")
     redirect_url = self.context.aq_parent.absolute_url()
     return self.request.response.redirect(redirect_url)
Exemplo n.º 14
0
#------------------------
#Dirección de correo que figura como enviador de mails automáticos
#se usan en nuevoItemGs.py y editItem.py
#---------------------------
MAIL_ADMIN = u"*****@*****.**"
#Dirección de correo a quien se envía copia de la edición y creación de
#Registros Greenstone
MAIL_COORDINADOR = u"*****@*****.**"
#MAIL_COORDINADOR= u"*****@*****.**"

#--------------------------
#DATOS para el formulario de edicion y carga | nuevoItemGs.py y editItem.py
#---------------------------
from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm
TIPOS_COLECCION = SimpleVocabulary([
    SimpleTerm(value=u'0', title=_(u'Autor')),
    SimpleTerm(value=u'1', title=_(u'Corpus Linguisticos'))
])

ISO_IDIOMAS = SimpleVocabulary([
    SimpleTerm(value=u'ay', title=(u'aimara')),
    SimpleTerm(value=u'de', title=(u'alemán')),
    SimpleTerm(value=u'es', title=(u'español (o castellano)')),
    SimpleTerm(value=u'fr', title=(u'francés')),
    SimpleTerm(value=u'el', title=(u'griego (moderno)')),
    SimpleTerm(value=u'gn', title=(u'guaraní')),
    SimpleTerm(value=u'en', title=(u'inglés')),
    SimpleTerm(value=u'it', title=(u'italiano')),
    SimpleTerm(value=u'la', title=(u'latín')),
    SimpleTerm(value=u'pt', title=(u'portugués')),
    SimpleTerm(value=u'qu', title=(u'quechua'))
Exemplo n.º 15
0
class IColeccion(form.Schema):
    """Esquema básico de la colección. 
       En behaviors se implementan la customización de las columnas"""

    form.fieldset(
        'responsables',
        u"Responsables",
        fields=['coordinador', 'integrantes'],
    )
    form.fieldset(
        'imagenes',
        u"Ilustraciones",
        fields=[
            'imagenCabecera', 'textoAltCabecera', 'imagenHome', 'imagenLista'
        ],
    )

    tipoColeccion = schema.Choice(
        title=u"Categoría",
        description=
        u"Elija una categoría a la que responde esta Colección. Si la categoría no existe debe pedirle al administrador que genere una nueva.",
        source="arcas.Categorias",
    )
    cuerpo = RichText(
        title=_(u"Texto principal"),
        required=False,
    )

    directives.read_permission(coordinador='arcas.defineCurador')
    directives.write_permission(coordinador='arcas.defineCurador')
    coordinador = schema.List(
        title=_("Coordinador"),
        value_type=schema.Choice(source="arcas.CoorMembersVocab", ),
        required=False,
    )
    integrantes = schema.List(
        title=_("Integrantes"),
        value_type=schema.Choice(source="arcas.InvestMembersVocab", ),
        required=False,
    )
    imagenCabecera = NamedBlobImage(
        title=_(u"Imagen cabezal"),
        description=
        _(u"Esta imagen se usa como cabezal en la visualización de la coleccion"
          ),
        required=False,
    )
    textoAltCabecera = schema.TextLine(
        title=u"ALT Imagen cebecera",
        description=
        _(u"Si la imagen de cabecera posee información de copyright, debe escribirse en este campo. Se desplegará la información al pasar el puntero sobre la imagen."
          ),
        required=False,
    )
    imagenHome = NamedBlobImage(
        title=_(u"Imagen para la Portada"),
        description=_(u"Esta imagen se usa en la página principal"),
        required=False,
    )

    imagenLista = NamedBlobImage(
        title=_(u"Imagen listado"),
        description=_("Esta imagen se usa en el listado de colecciones"),
        required=False,
    )

    GS_ID = schema.TextLine(
        title=u"ID de la colección",
        description=
        _(u"Nombre de la colección en GS3. Se requiere para hacer las busquedas"
          ),
        required=True,
    )
    altNavegarFuente = schema.Text(
        title=_(u"Navegar Fuente"),
        description=
        _(u"Escriba aquì una descripción para el botón Navegar Fuente, que permita al usuario comprender mejor como está organizada la colección."
          ),
        required=False,
    )
Exemplo n.º 16
0
def isValidURL(value):
    if value.find("http://")==0:
        return True
    else:
        raise Invalid(_(u"Por favor ingrese un una url que incluya HTTP"))
Exemplo n.º 17
0
# -*- coding: utf-8 -*-
__author__ = 'Paul'
from arcas.content import ArcasMessageFactory as _
#La constantea es la base para un documento de greenstone
#luego viene la colección elegida puig y la cadena fija "/document"
#URL_GREENSTON_DOC="http://g3:8383/greenstone3/library/collection/"
URL_GREENSTON_DOC="http://arcas.fahce.unlp.edu.ar:8383/greenstone3/library/collection/"



from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm
TIPOS_COLECCION = SimpleVocabulary(
    [SimpleTerm(value=u'0', title=_(u'Autor')),
     SimpleTerm(value=u'1', title=_(u'Corpus Linguisticos'))
     ]
    )

Exemplo n.º 18
0
from z3c.relationfield.schema import RelationChoice
from plone.formwidget.contenttree import ObjPathSourceBinder
from plone.app.textfield import RichText
from z3c.form import button
from plone.autoform.interfaces import IFormFieldProvider
from plone.namedfile.field import NamedBlobImage,NamedBlobFile

from zope.interface import provider
ID_SET=""


from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm
from z3c.form import action

tiposDeSeccion = SimpleVocabulary(
    [SimpleTerm(value=u'biografia', title=_(u'Biografía')),
     SimpleTerm(value=u'galeria', title=_(u'Galeria imágenes')),
     SimpleTerm(value=u'imagen', title=_(u'Una imagen')),
     SimpleTerm(value=u'texto', title=_(u'Texto')),
     SimpleTerm(value=u'video', title=_(u'Video')) ]
    )
    
class IColecGroupName(form.Schema):
    """Add tags to content
    """
    form.fieldset(
        'responsables',
        u"Responsables",
        fields=['groupName'],
    )
    groupName= schema.TextLine(
Exemplo n.º 19
0
from Acquisition import aq_inner, aq_base
from z3c.relationfield.schema import RelationChoice
from plone.formwidget.contenttree import ObjPathSourceBinder
from plone.app.textfield import RichText
from z3c.form import button
from plone.autoform.interfaces import IFormFieldProvider
from plone.namedfile.field import NamedBlobImage, NamedBlobFile

from zope.interface import provider
ID_SET = ""

from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm
from z3c.form import action

tiposDeSeccion = SimpleVocabulary([
    SimpleTerm(value=u'biografia', title=_(u'Biografía')),
    SimpleTerm(value=u'galeria', title=_(u'Galeria imágenes')),
    SimpleTerm(value=u'imagen', title=_(u'Una imagen')),
    SimpleTerm(value=u'texto', title=_(u'Texto')),
    SimpleTerm(value=u'video', title=_(u'Video'))
])


class IColecGroupName(form.Schema):
    """Add tags to content
    """
    form.fieldset(
        'responsables',
        u"Responsables",
        fields=['groupName'],
    )