Ready for an 'advanced search' functionality.
This commit is contained in:
parent
2ff08258bc
commit
f8baeee4f7
8 changed files with 178 additions and 50 deletions
|
@ -639,7 +639,7 @@
|
|||
startNumber request/startNumber|python:'0';
|
||||
startNumber python: int(startNumber);
|
||||
searchName request/search;
|
||||
searchLabel python: '%s_search_%s' % (contentType, searchName);
|
||||
searchLabel python: test(searchName=='_advanced', 'search_results', '%s_search_%s' % (contentType, searchName));
|
||||
searchDescr python: '%s_descr' % searchLabel;
|
||||
severalTypes python: contentType and (contentType.find(',') != -1);
|
||||
queryResult python: tool.executeQuery(contentType, flavourNumber, searchName, startNumber, remember=True);
|
||||
|
@ -909,6 +909,11 @@
|
|||
tal:attributes="onClick python: 'href: window.location=\'%s/skyn/import?type_name=%s\'' % (appFolder.absolute_url(), rootClass);
|
||||
src string: $portal_url/skyn/import.png;
|
||||
title python: tool.translate('query_import')"/>
|
||||
<tal:comment replace="nothing">Search objects of this type (todo: update flavourNumber)</tal:comment>
|
||||
<img style="cursor:pointer"
|
||||
tal:attributes="onClick python: 'href: window.location=\'%s/skyn/search?type_name=%s&flavourNumber=1\'' % (appFolder.absolute_url(), rootClass);
|
||||
src string: $portal_url/skyn/search.gif;
|
||||
title python: tool.translate('search_objects')"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
|
BIN
gen/plone25/skin/search.gif
Executable file
BIN
gen/plone25/skin/search.gif
Executable file
Binary file not shown.
After Width: | Height: | Size: 433 B |
44
gen/plone25/skin/search.pt
Normal file
44
gen/plone25/skin/search.pt
Normal file
|
@ -0,0 +1,44 @@
|
|||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
|
||||
lang="en" xmlns:tal="http://xml.zope.org/namespaces/tal"
|
||||
xmlns:metal="http://xml.zope.org/namespaces/metal"
|
||||
xmlns:i18n="http://xml.zope.org/namespaces/i18n"
|
||||
metal:use-macro="here/main_template/macros/master">
|
||||
|
||||
<tal:comment replace="nothing">Disable standard Plone green tabs</tal:comment>
|
||||
<div metal:fill-slot="top_slot">
|
||||
<metal:block metal:use-macro="here/global_defines/macros/defines" />
|
||||
<div tal:define="dummy python:request.set('disable_border', 1)" />
|
||||
</div>
|
||||
|
||||
<tal:comment replace="nothing">Fill main slot of Plone main_template</tal:comment>
|
||||
<body>
|
||||
<metal:fill fill-slot="main"
|
||||
tal:define="appFolder context/getParentNode;
|
||||
contentType request/type_name;
|
||||
tool python: portal.get('portal_%s' % appFolder.id.lower());
|
||||
searchableFields python: tool.getSearchableFields(contentType)">
|
||||
|
||||
<tal:comment replace="nothing">Search title</tal:comment>
|
||||
<h1 tal:content="python: tool.translate('search_title')"></h1><br/>
|
||||
|
||||
<tal:comment replace="nothing">Form for searching objects of request/type_name.</tal:comment>
|
||||
<form name="search" tal:attributes="action python: appFolder.absolute_url()+'/skyn/do'" method="post">
|
||||
<input type="hidden" name="action" value="SearchObjects"/>
|
||||
<input type="hidden" name="type_name" tal:attributes="value contentType"/>
|
||||
<input type="hidden" name="flavourNumber:int" tal:attributes="value request/flavourNumber"/>
|
||||
|
||||
<tal:searchFields repeat="searchField searchableFields">
|
||||
<tal:showSearchField define="fieldName python:searchField[0];
|
||||
appyType python:searchField[1]">
|
||||
<metal:searchField use-macro="python: appFolder.skyn.widgets.macros.get('search%s' % searchField[1]['type'])"/>
|
||||
</tal:showSearchField>
|
||||
</tal:searchFields>
|
||||
|
||||
<tal:comment replace="nothing">Submit button</tal:comment>
|
||||
<p align="right"><br/>
|
||||
<input type="submit" tal:attributes="value python:tool.translate('search_button')"/>
|
||||
</p>
|
||||
</form>
|
||||
</metal:fill>
|
||||
</body>
|
||||
</html>
|
39
gen/plone25/skin/widgets.pt
Normal file
39
gen/plone25/skin/widgets.pt
Normal file
|
@ -0,0 +1,39 @@
|
|||
<metal:searchInteger define-macro="searchInteger">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchInteger>
|
||||
|
||||
<metal:searchFloat define-macro="searchFloat">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchFloat>
|
||||
|
||||
<metal:searchString define-macro="searchString">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchString>
|
||||
|
||||
<metal:searchBoolean define-macro="searchBoolean">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchBoolean>
|
||||
|
||||
<metal:searchDate define-macro="searchDate">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchDate>
|
||||
|
||||
<metal:searchFile define-macro="searchFile">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchFile>
|
||||
|
||||
<metal:searchRef define-macro="searchRef">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchRef>
|
||||
|
||||
<metal:searchComputed define-macro="searchComputed">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchComputed>
|
||||
|
||||
<metal:searchAction define-macro="searchAction">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchAction>
|
||||
|
||||
<metal:searchInfo define-macro="searchInfo">
|
||||
<p tal:content="fieldName">Hello</p>
|
||||
</metal:searchInfo>
|
Loading…
Add table
Add a link
Reference in a new issue