src/pyams_content/shared/common/zmi/search.py
changeset 1408 916c81459d6b
parent 1407 85e615286c7a
equal deleted inserted replaced
1407:85e615286c7a 1408:916c81459d6b
   213 class SharedToolAdvancedSearchForm(SearchForm):
   213 class SharedToolAdvancedSearchForm(SearchForm):
   214     """Shared tool advanced search form"""
   214     """Shared tool advanced search form"""
   215 
   215 
   216     legend = _("Advanced search")
   216     legend = _("Advanced search")
   217 
   217 
       
   218     fields_interface = ISharedToolAdvancedSearchFields
       
   219     sort_results = True
       
   220 
       
   221     prefix = 'search_form.'
   218     ajax_handler = 'advanced-search-results.html'
   222     ajax_handler = 'advanced-search-results.html'
   219 
   223 
   220     def __init__(self, context, request):
   224     def __init__(self, context, request):
   221         super(SharedToolAdvancedSearchForm, self).__init__(context, request)
   225         super(SharedToolAdvancedSearchForm, self).__init__(context, request)
   222         request.registry.notify(PageletCreatedEvent(self))
   226         request.registry.notify(PageletCreatedEvent(self))
   223         apply_skin(self.request, 'PyAMS admin skin')
   227         apply_skin(self.request, 'PyAMS admin skin')
   224 
       
   225     fields_interface = ISharedToolAdvancedSearchFields
       
   226 
   228 
   227     @property
   229     @property
   228     def fields(self):
   230     def fields(self):
   229         workflow = IWorkflow(self.context)
   231         workflow = IWorkflow(self.context)
   230         fields = field.Fields(self.fields_interface)
   232         fields = field.Fields(self.fields_interface)
   369 
   371 
   370     @property
   372     @property
   371     def data_attributes(self):
   373     def data_attributes(self):
   372         attributes = super(SharedToolAdvancedSearchResultsView, self).data_attributes
   374         attributes = super(SharedToolAdvancedSearchResultsView, self).data_attributes
   373         attributes['table'] = {
   375         attributes['table'] = {
   374             'data-ams-datatable-sorting':
       
   375                 "{0},{1}".format(len(self.columns) - 1, self.dt_sort_order),
       
   376             'data-ams-datatable-display-length':
   376             'data-ams-datatable-display-length':
   377                 IAdminProfile(self.request.principal).table_page_length
   377                 IAdminProfile(self.request.principal).table_page_length
   378         }
   378         }
       
   379         if self.search_form.sort_results:
       
   380             attributes['table']['data-ams-datatable-sorting'] = \
       
   381                 "{0},{1}".format(len(self.columns) - 1, self.dt_sort_order)
       
   382         else:
       
   383             attributes['table']['data-ams-datatable-sorting'] = '[]'
   379         return attributes
   384         return attributes
   380 
   385 
   381 
   386 
   382 @adapter_config(context=(IBaseSharedTool, IPyAMSLayer, SharedToolAdvancedSearchResultsView),
   387 @adapter_config(context=(IBaseSharedTool, IPyAMSLayer, SharedToolAdvancedSearchResultsView),
   383                 provides=IValues)
   388                 provides=IValues)