X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Fsimplelist.py;h=5821bfbe1a9aa6149b6f9806cb92d4a574696a75;hb=bbdf40b4dd1bebc81461f1c9294aca95323bf889;hp=7a699396e3a5ba575e771157aaa7ba00163be4fd;hpb=3304e91dc8512f723a80b0b4c26b3b910218363c;p=unfold.git diff --git a/plugins/simplelist.py b/plugins/simplelist.py index 7a699396..5821bfbe 100644 --- a/plugins/simplelist.py +++ b/plugins/simplelist.py @@ -1,18 +1,32 @@ -from django.template.loader import render_to_string - from engine.plugin import Plugin class SimpleList (Plugin) : - # SimpleList is useless per se anyways - def title (self) : return "Title for Simple List" + # 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 +# don't expose this as it's big and + self.add_to_settings ('list') + self.with_datatables = with_datatables + self.add_to_settings ('with_datatables') - def template (self): return "simplelist.html" + # SimpleList is useless per se anyways + def template_file (self): return "simplelist.html" def requirements (self): - return { 'js_files' : [ "js/simplelist.js" ], + 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 exclude_from_json (self): + return ['list']