This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
tabellio.searchform/tabellio/searchform/simple.py

66 lines
2.4 KiB
Python

from zope import interface, schema
from z3c.form import form, field, button
from plone.z3cform.layout import wrap_form
from Products.CMFCore.utils import getToolByName
from z3c.form.ptcompat import ViewPageTemplateFile
from z3c.relationfield.schema import RelationChoice, RelationList
from plone.formwidget.contenttree import ObjPathSourceBinder
from tabellio.searchform.interfaces import MessageFactory as _
from Products.Five import BrowserView
from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
class SimpleSearchView(BrowserView):
batch_macros = ViewPageTemplateFile('batch_macros.pt')
def deputy_form_url(self):
return '#'
def docdos_form_url(self):
return '#'
def event_form_url(self):
return '#'
def deputy_results(self):
catalog = getToolByName(self.context, 'portal_catalog')
if not self.request.form.get('SearchableText'):
return []
return catalog(
portal_type=['themis.datatypes.deputy'],
SearchableText=self.request.form.get('SearchableText'),
sort_on="sortable_title", sort_order='ascending')
def page_results(self):
catalog = getToolByName(self.context, 'portal_catalog')
if not self.request.form.get('SearchableText'):
return []
return catalog(
portal_type=['Document', 'File', 'Folder', 'Link'],
SearchableText=self.request.form.get('SearchableText'),
sort_on='created', sort_order='descending')
def doc_results(self):
catalog = getToolByName(self.context, 'portal_catalog')
if not self.request.form.get('SearchableText'):
return []
return catalog(
portal_type=['tabellio.documents.dossier',
'tabellio.documents.document',
'tabellio.documents.question'],
SearchableText=self.request.form.get('SearchableText'),
sort_on='dateDoc', sort_order='descending')
def event_results(self):
catalog = getToolByName(self.context, 'portal_catalog')
if not self.request.form.get('SearchableText'):
return []
return catalog(
portal_type=['tabellio.agenda.parlevent', 'tabellio.agenda.event',
'tabellio.agenda.comevent'],
SearchableText=self.request.form.get('SearchableText'))