X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Fhazelnut%2Fhazelnut.py;h=9dfebf11e48ff07c7800d90f7fa0c28b65533352;hb=e256853ef256809864927b91deb42e713baea769;hp=d8a6ca0f89789e033df16a93fdc6603d73da66db;hpb=36b950cdd3944a7e8d924927225b8b3a6f4a2f56;p=myslice.git diff --git a/plugins/hazelnut/hazelnut.py b/plugins/hazelnut/hazelnut.py index d8a6ca0f..9dfebf11 100644 --- a/plugins/hazelnut/hazelnut.py +++ b/plugins/hazelnut/hazelnut.py @@ -2,10 +2,18 @@ from unfold.plugin import Plugin class Hazelnut (Plugin): - def __init__ (self, query, checkboxes=False, **settings): + # set checkboxes if a final column with checkboxes is desired + # pass columns as the initial set of columns + # if None then this is taken from the query's fields + def __init__ (self, query, checkboxes=False, columns=None, datatables_options={}, **settings): Plugin.__init__ (self, **settings) self.query=query self.checkboxes=checkboxes + if columns is not None: + self.columns=columns + else: + self.columns=self.query.fields + self.datatables_options=datatables_options def template_file (self): return "hazelnut.html" @@ -13,24 +21,22 @@ class Hazelnut (Plugin): def template_env (self, request): env={} env.update(self.__dict__) - # xxx need to retrieve metadata -# $subject_keys = Plugins::get_default_fields($query->subject, $is_unique); -# $fields = Plugins::metadata_get_fields($query->subject); -# for now I am hard-coding the ones from haze.py - env['subject_fields']=[ 'network', 'type', 'hostname', 'hrn' ] + env['columns']=self.columns return env def requirements (self): reqs = { 'js_files' : [ "js/hazelnut.js", "js/manifold.js", "js/manifold-query.js", - "js/dataTables.js", "js/with-datatables.js", + "js/dataTables.js", "js/dataTables.bootstrap.js", "js/with-datatables.js", "js/spin.presets.js", "js/spin.min.js", "js/jquery.spin.js", "js/unfold-helper.js", ] , - 'css_files': [ "css/hazelnut.css" , "css/demo_table.css", "css/demo_table_jui.css", ], + 'css_files': [ "css/hazelnut.css" , + "css/dataTables.bootstrap.css", + ], } return reqs # the list of things passed to the js plugin - def json_settings_list (self): return ['plugin_uuid','query_uuid','checkboxes'] + def json_settings_list (self): return ['plugin_uuid', 'domid', 'query_uuid','checkboxes','datatables_options']