[IMP] report_webkit: some improvements including a demo report and a better default header
bzr revid: nicolas.vanhoren@openerp.com-20130225163717-wf3aley43qgzobg5
This commit is contained in:
commit
63346192fc
|
@ -89,6 +89,9 @@ TODO:
|
|||
'header_view.xml',
|
||||
'ir_report_view.xml',
|
||||
],
|
||||
'demo': [
|
||||
"report/webkit_report_demo.xml",
|
||||
],
|
||||
'installable': True,
|
||||
'auto_install': False,
|
||||
'images': ['images/companies_webkit.jpeg','images/header_html.jpeg','images/header_img.jpeg'],
|
||||
|
|
|
@ -55,7 +55,7 @@
|
|||
<body style="border:0; margin: 0;" onload="subst()">
|
||||
<table class="header" style="border-bottom: 0px solid black; width: 100%">
|
||||
<tr>
|
||||
<td>${helper.embed_logo_by_name('camptocamp_logo')|n}</td>
|
||||
<td>${helper.embed_company_logo()|n}</td>
|
||||
<td style="text-align:right"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
|
|
@ -45,7 +45,7 @@ def register_report(name, model, tmpl_path, parser=rml_parse):
|
|||
return
|
||||
if hasattr(service, 'parser'):
|
||||
parser = service.parser
|
||||
del openerp.report.interface.report_int[name]
|
||||
del openerp.report.interface.report_int._reports[name]
|
||||
WebKitParser(name, model, tmpl_path, parser=parser)
|
||||
|
||||
|
||||
|
|
|
@ -7,11 +7,13 @@
|
|||
<field name="arch" type="xml">
|
||||
<xpath expr="//page[@string='Security']" position="before" >
|
||||
<page string="Webkit" attrs="{'invisible':[('report_type','!=','webkit')]}">
|
||||
<field name="webkit_header"/>
|
||||
<field name="webkit_debug"/>
|
||||
<field name="precise_mode"/>
|
||||
<separator string="Webkit Template (used if Report File is not found)" colspan="4"/>
|
||||
<field name="report_webkit_data" colspan="4" nolabel="1"/>
|
||||
<group>
|
||||
<field name="webkit_header"/>
|
||||
<field name="webkit_debug"/>
|
||||
<field name="precise_mode"/>
|
||||
<separator string="Webkit Template (used if Report File is not found)" colspan="4"/>
|
||||
<field name="report_webkit_data" colspan="4" nolabel="1"/>
|
||||
</group>
|
||||
</page>
|
||||
</xpath>
|
||||
</field>
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<style type="text_css">${css}</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>List of reports:</h1>
|
||||
<ul>
|
||||
% for report in objects:
|
||||
<li>${report.name}</li>
|
||||
% endfor
|
||||
</ul>
|
||||
|
||||
<p>If this report does not contain headers, it is because you have a badly compiled wkhtmltopdf. Consider installing
|
||||
the static version distributed on the official web site: <a href="https://code.google.com/p/wkhtmltopdf/">https://code.google.com/p/wkhtmltopdf/</a>.</p>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<report string="Report on reports"
|
||||
id="webkit_demo_report"
|
||||
model="ir.actions.report.xml"
|
||||
name="webkit.ir.actions.report.xml"
|
||||
file="report_webkit/report/webkit_report_demo.mako"
|
||||
report_type="webkit"/>
|
||||
|
||||
</data>
|
||||
</openerp>
|
|
@ -39,6 +39,7 @@ class WebKitHelper(object):
|
|||
self.uid = uid
|
||||
self.pool = pooler.get_pool(self.cursor.dbname)
|
||||
self.report_id = report_id
|
||||
self.context = context
|
||||
|
||||
def embed_image(self, type, img, width=0, height=0) :
|
||||
"Transform a DB image into an embedded HTML image"
|
||||
|
@ -79,6 +80,13 @@ class WebKitHelper(object):
|
|||
"""Return HTML embedded logo by name"""
|
||||
img, type = self.get_logo_by_name(name)
|
||||
return self.embed_image(type, img, width, height)
|
||||
|
||||
def embed_company_logo(self, width=0, height=0):
|
||||
cr, uid, context = self.cursor, self.uid, self.context
|
||||
my_user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
|
||||
logo = my_user.company_id.logo_web
|
||||
return self.embed_image("png", logo, width, height)
|
||||
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
Loading…
Reference in New Issue