def dameListaColecciones(self): """Devuelve una Lista con dicccionario de cada coleccion""" result = self.catalogo(object_provides=IColeccion.__identifier__) listados = [] for colec in result: miOb = self.contexto.unrestrictedTraverse(colec.getPath()) colUtils = ColeccionUtils(miOb) descrip = colec.Description if len(descrip) > 280: descrip = descrip[:descrip[:280].rfind("</p>")] + "." listados.append({ "titulo": colec.Title, "descri": descrip, "url": colec.getURL(), "scales": miOb, "coors": colUtils.getCoordinadores(), "idColec": miOb.GS_ID, "categoria": colec.getObject().tipoColeccion, "urlFuente": colUtils.getUrlAFuente(), "altFuente": miOb.altNavegarFuente, }) return listados
def datos_contexto(self): catalogo=getToolByName(self.contexto,"portal_catalog") colecFolder=catalogo.searchResults(portal_type="arcas.coleccionesFolder") if len(colecFolder)<1: return self.emptyData() miColeccion="" colectFolder=self.context.unrestrictedTraverse(colecFolder[0].getPath()) desta_path = '/'.join(colectFolder.getPhysicalPath()) cataloDest=catalogo.searchResults(path={'query':desta_path , 'depth': 1}) for coleccion in cataloDest: colecObj=self.context.unrestrictedTraverse(coleccion.getPath()) if colecObj.GS_ID==self.idColeccion: miColeccion=colecObj break if miColeccion=="": return self.emptyData() utilidad= ColeccionUtils(miColeccion) result=[] for exhi in utilidad.dameExhibicionesR(): data={'url':exhi.absolute_url()+'/images/baner','titulo':exhi.title,'remoteURL':exhi.absolute_url()} result.append(data) return result
def dameListaExhib(self): miColeBrain=self.dameColeccionById(self.idCol) if len(miColeBrain)>0: miColeBrain=miColeBrain[0] else: return [] if miColeBrain: listados=[] miColObj=self.context.unrestrictedTraverse(miColeBrain.getPath()) ppa=ColeccionUtils(miColObj) resulta=ppa.back_references(miColObj,'coleccionR') for exhi in resulta: listados.append({ "titulo" :exhi.Title(), "descri" :exhi.Description(), "url" :exhi.absolute_url(), "coors" :ppa.getCoordinadores(), "idColec" :miColObj.id, "urlFuente" :ppa.getUrlAFuente(), "curador": ppa.dameCurador() }) return listados else: return result
def dameListaExhi(self): """Devuelve una Lista con dicccionario de cada exhibicion""" contexto = self.context.aq_inner catalogo = getToolByName(contexto, "portal_catalog") result = catalogo(portal_type="arcas.exhibicion") listados = [] for exhi in result: miOb = contexto.unrestrictedTraverse(exhi.getPath()) if miOb.coleccionR != None: miCol = miOb.coleccionR.to_object ppa = ColeccionUtils(miCol) listados.append({ "id": exhi.id, "titulo": exhi.Title, "subTitulo": miCol.Title(), "descri": exhi.Description, "url": exhi.getURL(), "scales": miOb, "coors": ppa.getCoordinadores(), "idColec": miCol.id, "urlFuente": ppa.getUrlAFuente(), "curador": ppa.dameCurador(exhi.id) }) return listados
def dameListaExhi(self): """Devuelve una Lista con dicccionario de cada exhibicion""" contexto = self.context.aq_inner catalogo=getToolByName(contexto,"portal_catalog") result =catalogo(object_provides=IExhibicion.__identifier__) listados=[] for exhi in result: miOb = contexto.unrestrictedTraverse(exhi.getPath()) if miOb.coleccionR!=None: miCol= miOb.coleccionR[0].to_object ppa=ColeccionUtils(miCol) listados.append({ "id":exhi.id, "titulo" :exhi.Title, "subTitulo" :miCol.Title(), "descri" :exhi.Description, "url" :exhi.getURL(), "scales" :miOb, "coors" :ppa.getCoordinadores(), "idColec" :miCol.id, "urlFuente" :ppa.getUrlAFuente(), "curador" :ppa.dameCurador(exhi.id) }) return listados
def dameListaColecciones(self): """Devuelve una Lista con dicccionario de cada coleccion""" contexto = self.context.aq_inner catalogo=getToolByName(contexto,"portal_catalog") result=catalogo(object_provides=IColeccion.__identifier__) listados=[] for colec in result: miOb=contexto.unrestrictedTraverse(colec.getPath()) colUtils=ColeccionUtils(miOb) descrip=colec.Description if len(descrip)>280: descrip=descrip[:descrip[:280].rfind("</p>")]+"." listados.append({ "titulo":colec.Title, "descri":descrip, "url":colec.getURL(), "scales":miOb, "coors":colUtils.getCoordinadores(), "idColec":miOb.GS_ID, "urlFuente":colUtils.getUrlAFuente(), "altFuente":miOb.altNavegarFuente,} ) return listados
def dameBanners(self): """Devuleve los banners a las exhibiciones relacionadas a la coleccion""" utilidad= ColeccionUtils(self.context) result=[] dameE=utilidad.dameExhibicionesR() if dameE: for exhi in dameE: obj={'url':exhi.absolute_url(),'titulo':exhi.title} result.append(obj) return result
def dameBanners(self): """Devuleve los banners a las exhibiciones relacionadas a la coleccion""" utilidad = ColeccionUtils(self.context) result = [] dameE = utilidad.dameExhibicionesR() if dameE: for exhi in dameE: sinBaner = dameE[0].baner == None obj = { 'url': exhi.absolute_url(), 'titulo': exhi.title, "vacio": sinBaner } result.append(obj) return result
def datos_contexto(self): self.update() catalogo = getToolByName(self.contexto, "portal_catalog") colecFolder = catalogo.searchResults( portal_type="arcas.coleccionesFolder") if len(colecFolder) < 1: return self.emptyData() miColeccion = "" colectFolder = self.context.unrestrictedTraverse( colecFolder[0].getPath()) desta_path = '/'.join(colectFolder.getPhysicalPath()) cataloDest = catalogo.searchResults(path={ 'query': desta_path, 'depth': 1 }) for coleccion in cataloDest: colecObj = self.context.unrestrictedTraverse(coleccion.getPath()) if colecObj.GS_ID == self.idColeccion: miColeccion = colecObj break if miColeccion == "": return self.emptyData() utilidad = ColeccionUtils(miColeccion) result = [] for exhi in utilidad.dameExhibicionesR(): data = { 'url': exhi.absolute_url() + '/images/baner', 'titulo': exhi.title, 'remoteURL': exhi.absolute_url() } result.append(data) return result
def getDestacado(self): ##recreaFolder= self.getContainer(folder.encode('utf8')) ##cuando busca documento hace referencia al campo "documento" que es el destacado del directorio try: if self.data.canal: destacado=self.context.unrestrictedTraverse(self.data.canal) colecTRelated=destacado.coleccionR.to_object colecUtils=ColeccionUtils(colecTRelated) resp={ 'titulo' : destacado.title, 'descri' : destacado.description, 'exhiurl': destacado.absolute_url(), 'curador': colecUtils.dameCurador(),#esta dameCurador funcion ya devuelve una lista, 'integrantes': colecUtils.getCoordinadores()+colecUtils.dameIntegrantes() } return resp except : print "no hay exhibiciones asiganadas al portlet" pass return []
def dameCurador(self): """devuelve un listado con los curadores de la coleccion""" rs=ColeccionUtils(self.context) rt=rs.dameCurador() return rt
def dameCurador(self): """devuelve un listado con los curadores de la coleccion""" rs = ColeccionUtils(self.context) rt = rs.dameCurador() return rt