add other search types

This commit is contained in:
Frédéric Péters 2011-10-03 14:21:24 +02:00
parent 67de80ff7c
commit b03ffceae5
6 changed files with 236 additions and 24 deletions

View File

@ -14,7 +14,23 @@
<h1 class="documentFirstHeading" tal:content="context/title" />
<div tal:replace="structure provider:plone.belowcontenttitle" />
<div tal:replace="structure view/search_form"/>
<dl class="enableFormTabbing" id="search-tabs">
<dt id="fieldsetlegend-documents">Documents parlementaires</dt>
<dd id="fieldset-documents">
<div tal:replace="structure view/document_search_form"/>
</dd>
<dt id="fieldset-legend-dossiers">Dossiers parlementaires</dt>
<dd id="fieldset-dossiers">
<div tal:replace="structure view/dossier_search_form"/>
</dd>
<dt id="fielset-legend-questions">Questions &amp; interpellations</dt>
<dd id="fieldset-questions">
<div tal:replace="structure view/question_search_form"/>
</dd>
<dt id="fieldset-legend-decrets">Décrets</dt>
<dd id="fieldset-decrets">
</dd>
</dl>
<div tal:replace="structure provider:plone.belowcontentbody" />

View File

@ -16,7 +16,7 @@ from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
class IFolderWithDocuments(interface.Interface):
pass
class ISearch(interface.Interface):
class IDocumentSearch(interface.Interface):
nodoc = schema.TextLine(title=_(u'Document Number'), required=False)
nosuite = schema.TextLine(title=_(u'Suite Number'), required=False)
doctype = schema.Set(title=_(u'Type'), required=False,
@ -34,8 +34,8 @@ class ISearch(interface.Interface):
end = schema.Date(title=_(u'End'), required=False)
class SearchForm(form.Form):
fields = field.Fields(ISearch)
class DocumentSearchForm(form.Form):
fields = field.Fields(IDocumentSearch)
ignoreContext = True
template = ViewPageTemplateFile('form_templates/view_effectivesearch.pt')
@ -48,11 +48,82 @@ class SearchForm(form.Form):
return self.request.response.redirect('./')
return
SearchFormView = wrap_form(SearchForm)
class IDossierSearch(interface.Interface):
nodos = schema.TextLine(title=_(u'Dossier Number'), required=False)
dostype = schema.Set(title=_(u'Type'), required=False,
value_type=schema.Choice(values=[_(u'Lorem'), _(u'Ipsum')]))
#subjects =
ttitle = schema.TextLine(title=_(u'Title'), required=False)
authors = RelationList(title=_(u'Authors'), default=[], required=False,
value_type=RelationChoice(title=_(u'Author'),
source=ObjPathSourceBinder(
portal_type=['themis.datatypes.deputy'])))
# polgroups
# session
start = schema.Date(title=_(u'Start'), required=False)
end = schema.Date(title=_(u'End'), required=False)
class DossierSearchForm(form.Form):
fields = field.Fields(IDossierSearch)
ignoreContext = True
template = ViewPageTemplateFile('form_templates/view_dossier_search.pt')
@button.buttonAndHandler(u'Search')
def handleApply(self, action):
data, errors = self.extractData()
if not errors and False:
plone_utils = getToolByName(self.context.context, 'plone_utils')
plone_utils.addPortalMessage(_('Your search has been completed!'))
return self.request.response.redirect('./')
return
class IQuestionSearch(interface.Interface):
nodos = schema.TextLine(title=_(u'Question Number'), required=False)
dostype = schema.Set(title=_(u'Type'), required=False,
value_type=schema.Choice(values=[_(u'Lorem'), _(u'Ipsum')]))
#subjects =
ttitle = schema.TextLine(title=_(u'Title'), required=False)
authors = RelationList(title=_(u'Authors'), default=[], required=False,
value_type=RelationChoice(title=_(u'Author'),
source=ObjPathSourceBinder(
portal_type=['themis.datatypes.deputy'])))
# polgroups
# session
start = schema.Date(title=_(u'Start'), required=False)
end = schema.Date(title=_(u'End'), required=False)
class QuestionSearchForm(form.Form):
fields = field.Fields(IQuestionSearch)
ignoreContext = True
template = ViewPageTemplateFile('form_templates/view_question_search.pt')
@button.buttonAndHandler(u'Search')
def handleApply(self, action):
data, errors = self.extractData()
if not errors and False:
plone_utils = getToolByName(self.context.context, 'plone_utils')
plone_utils.addPortalMessage(_('Your search has been completed!'))
return self.request.response.redirect('./')
return
class SearchView(BrowserView):
def search_form(self):
f = SearchForm(self.context, self.request)
def document_search_form(self):
f = DocumentSearchForm(self.context, self.request)
f.update()
return f.render()
def dossier_search_form(self):
f = DossierSearchForm(self.context, self.request)
f.update()
return f.render()
def question_search_form(self):
f = QuestionSearchForm(self.context, self.request)
f.update()
return f.render()

View File

@ -14,7 +14,22 @@
<h1 class="documentFirstHeading" tal:content="context/title" />
<div tal:replace="structure provider:plone.belowcontenttitle" />
<div tal:replace="structure view/search_form"/>
<dl class="enableFormTabbing" id="search-tabs">
<dt>Documents parlementaires</dt>
<dd>
<div tal:replace="structure view/doc_search_form"/>
</dd>
<dt>Dossiers parlementaires</dt>
<dd>
</dd>
<dt>Questions &amp; interpellations</dt>
<dd>
</dd>
<dt>Décrets</dt>
<dd>
</dd>
</dl>
<div tal:replace="structure provider:plone.belowcontentbody" />

View File

@ -0,0 +1,63 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:tal="http://xml.zope.org/namespaces/tal">
<body>
<form method="post" action=".">
<metal:use use-macro="context/@@ploneform-macros/fields" />
<metal:use use-macro="context/@@ploneform-macros/actions" />
</form>
<div id="resultsbox">
<span>De faux résultats pour le moment</span>
</div>
<div id="results">
<ul>
<li class="odd"><div>
<h4><a href="#">Proposition de décret - 123 (2010-2011) n° 1</a></h4>
<p>Proposition de décret visant à élargir la définition des primo-arrivants
dans l'enseignement de la Communauté française.</p>
<p><strong>Auteurs :</strong> Persoons Caroline, Bertiaux Françoise…</p>
<p><strong>Statut :</strong> Version définitive</p>
</div></li>
<li class="even"><div>
<h4><a href="#">Proposition de décret - 124 (2010-2011) n° 1</a></h4>
<p>Proposition de décret visant à élargir la définition des primo-arrivants
dans l'enseignement de la Communauté française.</p>
<p><strong>Auteurs :</strong> Persoons Caroline, Bertiaux Françoise…</p>
<p><strong>Statut :</strong> Version définitive</p>
</div></li>
<li class="odd"><div>
<h4><a href="#">Proposition de décret - 125 (2010-2011) n° 1</a></h4>
<p>Proposition de décret visant à élargir la définition des primo-arrivants
dans l'enseignement de la Communauté française.</p>
<p><strong>Auteurs :</strong> Persoons Caroline, Bertiaux Françoise…</p>
<p><strong>Statut :</strong> Version définitive</p>
</div></li>
<li class="even"><div>
<h4><a href="#">Proposition de décret - 126 (2010-2011) n° 1</a></h4>
<p>Proposition de décret visant à élargir la définition des primo-arrivants
dans l'enseignement de la Communauté française.</p>
<p><strong>Auteurs :</strong> Persoons Caroline, Bertiaux Françoise…</p>
<p><strong>Statut :</strong> Version définitive</p>
</div></li>
</ul>
</div>
<div id="results-nav">
<a id="results-nav-prev" href="#">Précédent</a>
<a id="results-nav-next" href="#">Suivant</a>
<p id="results-nav-page">
<span class="label">Page n° :</span>
<strong>1</strong>
<span>2</span>
<span>3</span>
<span>3</span>
</p>
</div>
</html>

View File

@ -2,9 +2,6 @@
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:tal="http://xml.zope.org/namespaces/tal">
<body>
<dl class="enableFormTabbing" id="search-tabs">
<dt>Documents parlementaires</dt>
<dd>
<form method="post" action=".">
<metal:use use-macro="context/@@ploneform-macros/fields" />
<metal:use use-macro="context/@@ploneform-macros/actions" />
@ -62,17 +59,4 @@
</p>
</div>
</dd>
<dt>Dossiers parlementaires</dt>
<dd>
</dd>
<dt>Questions &amp; interpellations</dt>
<dd>
</dd>
<dt>Décrets</dt>
<dd>
</dd>
</dl>
</html>

View File

@ -0,0 +1,63 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:tal="http://xml.zope.org/namespaces/tal">
<body>
<form method="post" action=".">
<metal:use use-macro="context/@@ploneform-macros/fields" />
<metal:use use-macro="context/@@ploneform-macros/actions" />
</form>
<div id="resultsbox">
<span>De faux résultats pour le moment</span>
</div>
<div id="results">
<ul>
<li class="odd"><div>
<h4><a href="#">Proposition de décret - 123 (2010-2011) n° 1</a></h4>
<p>Proposition de décret visant à élargir la définition des primo-arrivants
dans l'enseignement de la Communauté française.</p>
<p><strong>Auteurs :</strong> Persoons Caroline, Bertiaux Françoise…</p>
<p><strong>Statut :</strong> Version définitive</p>
</div></li>
<li class="even"><div>
<h4><a href="#">Proposition de décret - 124 (2010-2011) n° 1</a></h4>
<p>Proposition de décret visant à élargir la définition des primo-arrivants
dans l'enseignement de la Communauté française.</p>
<p><strong>Auteurs :</strong> Persoons Caroline, Bertiaux Françoise…</p>
<p><strong>Statut :</strong> Version définitive</p>
</div></li>
<li class="odd"><div>
<h4><a href="#">Proposition de décret - 125 (2010-2011) n° 1</a></h4>
<p>Proposition de décret visant à élargir la définition des primo-arrivants
dans l'enseignement de la Communauté française.</p>
<p><strong>Auteurs :</strong> Persoons Caroline, Bertiaux Françoise…</p>
<p><strong>Statut :</strong> Version définitive</p>
</div></li>
<li class="even"><div>
<h4><a href="#">Proposition de décret - 126 (2010-2011) n° 1</a></h4>
<p>Proposition de décret visant à élargir la définition des primo-arrivants
dans l'enseignement de la Communauté française.</p>
<p><strong>Auteurs :</strong> Persoons Caroline, Bertiaux Françoise…</p>
<p><strong>Statut :</strong> Version définitive</p>
</div></li>
</ul>
</div>
<div id="results-nav">
<a id="results-nav-prev" href="#">Précédent</a>
<a id="results-nav-next" href="#">Suivant</a>
<p id="results-nav-page">
<span class="label">Page n° :</span>
<strong>1</strong>
<span>2</span>
<span>3</span>
<span>3</span>
</p>
</div>
</html>