def collection(self): context = None portal_state = getMultiAdapter((self.context, self.request), name=u'plone_portal_state') portal = portal_state.portal() if (IPloneSiteRoot.providedBy(self.context) or IATTopic.providedBy(self.context)): self.kind = 'all' collection = 'todas-las-noticias' context = portal if INITF.providedBy(self.context): self.kind = 'section' normalizer = getUtility(IIDNormalizer) collection = normalizer.normalize(self.context.section) context = portal.get('noticias', None) if not context: return None result = context.get(collection, None) if result is not None: sm = getSecurityManager() if not sm.checkPermission('View', result): result = None return result
def get_urls(self): urls = [] urls.append({'rel': 'self', 'template': self.context.absolute_url() + '/' + self.__name__, 'type': 'application/opensearchdescription+xml', 'indexOffset' : None}) urls.append({'rel': 'results', 'template': self.context.absolute_url() + '/opensearch_rss.xml?SearchableText={searchTerms}&b_start:int={startIndex?}&b_size:int={count?}', 'type': 'application/rss+xml', 'indexOffset' : '0'}) urls.append({'rel': 'results', 'template': self.context.absolute_url() + '/opensearch_atom.xml?SearchableText={searchTerms}&b_start:int={startIndex?}&b_size:int={count?}', 'type': 'application/atom+xml', 'indexOffset' : '0'}) if self.settings.suggestion_limit > 0 and IPloneSiteRoot.providedBy(self.context): urls.append({'rel': 'suggestions', 'template': self.context.absolute_url() + '/opensearch_suggestions?command={searchTerms}', 'type': 'application/x-suggestions+json', 'indexOffset' : None}) if IPloneSiteRoot.providedBy(self.context): urls.append({'rel': 'results', 'template': self.context.absolute_url() + '/search?SearchableText={searchTerms}', 'type': 'text/html', 'indexOffset' : '0'}) elif IATTopic.providedBy(self.context): urls.append({'rel': 'results', 'template': self.context.absolute_url() + '/opensearch_html.html?SearchableText={searchTerms}', 'type': '"text/html', 'indexOffset' : '0'}) return urls
def available(self): # only show on collection/topic if not self.context.restrictedTraverse('@@iscalendarlayout')(): return False if ICollection.providedBy(self.context): return True if IATTopic.providedBy(self.context): return True return False
def get_results(context, request): search_results = [] if IPloneSiteRoot.providedBy(context): search_results = query_catalog(context, request, use_types_blacklist=True) elif IATTopic.providedBy(context): q1 = context.buildQuery() q2, show_query = build_query(context,request) query = combine_queries(q1,q2) search_results = get_query_results(context, query, show_query=True, use_types_blacklist=True) return search_results
def folderContents(self): contentFilter = self.request.get('contentFilter', {}) contentFilter = dict(contentFilter) limit_display = self.limit_display() contentFilter['object_provides'] = IRTVideo.__identifier__ if IATTopic.providedBy(self.context): return self.context.queryCatalog(batch=True, **contentFilter) return self.context.getFolderContents(contentFilter, batch=True, b_size=limit_display)
def items(self): sdata = [] if IATTopic.providedBy(self.context): sdata = [a for a in self.context.queryCatalog() if a.portal_type in ['libertic_event']] if ICollection.providedBy(self.context): sdata = [a for a in self.context.results(batch=False, brains=True) if a.portal_type in ['libertic_event']] if IDatabase.providedBy(self.context): catalog = getToolByName(self.context, 'portal_catalog') query = { 'portal_type': 'libertic_event', 'review_state': 'published', 'path': { 'query' : '/'.join(self.context.getPhysicalPath()), }, } sdata = catalog.searchResults(**query) return sdata
def _is_collection(context): return IATTopic.providedBy(context) or \ ICollection.providedBy(context)
def __call__(self): if IPloneSiteRoot.providedBy(self.context) or IATTopic.providedBy(self.context): self.request.RESPONSE.setHeader('Content-Type','text/xml; charset=utf-8') return ViewPageTemplateFile('descriptionview.pt')(self) else: return ''
def render(self): if IPloneSiteRoot.providedBy(self.context) or IATTopic.providedBy(self.context): return self.template() else: return ''
def render(self): if IPloneSiteRoot.providedBy(self.context) or IATTopic.providedBy( self.context): return self.template() else: return ''