add second object folders index (#4683)
This commit is contained in:
parent
a2120db10e
commit
b3ac32efc6
|
@ -27,6 +27,19 @@
|
||||||
<value key="group" i18n:translate="">Location</value>
|
<value key="group" i18n:translate="">Location</value>
|
||||||
</records>
|
</records>
|
||||||
|
|
||||||
|
<records interface="plone.app.querystring.interfaces.IQueryField"
|
||||||
|
prefix="plone.app.querystring.field.object_direct_folders">
|
||||||
|
<value key="title" i18n:translate="">Direct Folder</value>
|
||||||
|
<value key="description" i18n:translate="">Find items that are in that are directly in folder</value>
|
||||||
|
<value key="enabled">True</value>
|
||||||
|
<value key="sortable">False</value>
|
||||||
|
<value key="operations">
|
||||||
|
<element>plone.app.querystring.operation.string.is</element>
|
||||||
|
</value>
|
||||||
|
<value key="group" i18n:translate="">Location</value>
|
||||||
|
</records>
|
||||||
|
|
||||||
|
|
||||||
<records interface="plone.app.querystring.interfaces.IQueryField"
|
<records interface="plone.app.querystring.interfaces.IQueryField"
|
||||||
prefix="plone.app.querystring.field.thesaurus_keywords">
|
prefix="plone.app.querystring.field.thesaurus_keywords">
|
||||||
<value key="title" i18n:translate="">Keywords</value>
|
<value key="title" i18n:translate="">Keywords</value>
|
||||||
|
|
|
@ -155,7 +155,10 @@ class ResultsTable(BaseTable):
|
||||||
self.folder_id = None
|
self.folder_id = None
|
||||||
try:
|
try:
|
||||||
if self.request.form.get('query', {})[0].get('i') == 'object_folders':
|
if self.request.form.get('query', {})[0].get('i') == 'object_folders':
|
||||||
self.folder_id = int(self.request.form.get('query', {})[0].get('v')[0])
|
if type(self.request.form.get('query', {})[0].get('v')) is list:
|
||||||
|
self.folder_id = int(self.request.form.get('query', {})[0].get('v')[0])
|
||||||
|
else:
|
||||||
|
self.folder_id = int(self.request.form.get('query', {})[0].get('v'))
|
||||||
except (IndexError, ValueError, KeyError):
|
except (IndexError, ValueError, KeyError):
|
||||||
pass
|
pass
|
||||||
if self.folder_id:
|
if self.folder_id:
|
||||||
|
@ -416,6 +419,18 @@ class QueryBuilder(plone.app.querystring.querybuilder.QueryBuilder):
|
||||||
query[i] = param
|
query[i] = param
|
||||||
except ValueError:
|
except ValueError:
|
||||||
pass
|
pass
|
||||||
|
if param.get('o', '') == 'plone.app.querystring.operation.int.is':
|
||||||
|
value = param.get('v')
|
||||||
|
try:
|
||||||
|
param = dict(param.copy())
|
||||||
|
if type(value) is list:
|
||||||
|
param['v'] = int(value[0])
|
||||||
|
else:
|
||||||
|
param['v'] = int(value)
|
||||||
|
query[i] = param
|
||||||
|
except ValueError:
|
||||||
|
pass
|
||||||
|
|
||||||
return plone.app.querystring.querybuilder.QueryBuilder.__call__(self,
|
return plone.app.querystring.querybuilder.QueryBuilder.__call__(self,
|
||||||
query, *args, **kwargs)
|
query, *args, **kwargs)
|
||||||
|
|
||||||
|
|
Reference in New Issue