X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Fsimplelist.py;h=28c73f4ee420273fe1b009fecb6cd3a9b2ad44e0;hb=b490e035bac3b74b66130548f5a4bf4a30ad8375;hp=d08266b4befa87cd18e18ccb67624ec6650cc6b7;hpb=ebd8f2a12cf7d63c735d4f7dc3f51620913fabfa;p=unfold.git diff --git a/plugins/simplelist.py b/plugins/simplelist.py index d08266b4..28c73f4e 100644 --- a/plugins/simplelist.py +++ b/plugins/simplelist.py @@ -1,14 +1,29 @@ -from django.template.loader import render_to_string - from engine.plugin import Plugin class SimpleList (Plugin) : - def template (self): return "simplelist.html" + # it would make sense to *not* define any constructor here and let Plugin kick in + # however it feels nicer this way as we document the settings used in our own template + # plus it's less confusing for any subclass if they can be sure which constructor to call + def __init__ (self, list=[], with_datatables=False, **settings): + Plugin.__init__ (self, **settings) + self.list=list + self.with_datatables = with_datatables - def media_js (): return [ 'js/simplelist.js' ] + # SimpleList is useless per se anyways + def template_file (self): return "simplelist.html" - def media_css (): return { 'all': ('css/simplelist.css'), } + def requirements (self): + reqs = { 'js_files' : [ "js/simplelist.js" ], + 'css_files': [ "css/simplelist.css" ], + } + if self.with_datatables: + reqs['js_files'].append ("datatables/js/dataTables.js") + reqs['js_files'].append ("js/with-datatables.js") + return reqs +# for tests +# 'js_chunks' : "/* a javascript chunk */", +# 'css_chunks': "/* a css style */ ", + + def json_settings_list (self): return ['plugin_uuid', 'query','query_uuid','key','value'] - # SimpleList is useless per se anyways - def title (self) : return "Title for Simple List"