mirror of
https://gitlab.com/flectra-community/reporting-engine.git
synced 2024-11-25 07:32:04 +00:00
23 lines
833 B
Python
23 lines
833 B
Python
|
import werkzeug
|
||
|
|
||
|
from flectra import http
|
||
|
from flectra.http import request
|
||
|
|
||
|
|
||
|
class Home(http.Controller):
|
||
|
@http.route("/report/qr", type="http", auth="public")
|
||
|
def report_qr(self, value, box_size=3, border=3, factory="png", **kwargs):
|
||
|
try:
|
||
|
barcode = request.env["ir.actions.report"].qr_generate(
|
||
|
value, box_size=box_size, border=border, factory=factory, **kwargs
|
||
|
)
|
||
|
except (ValueError, AttributeError):
|
||
|
raise werkzeug.exceptions.HTTPException(
|
||
|
description="Cannot convert into barcode."
|
||
|
)
|
||
|
if factory != "png":
|
||
|
return request.make_response(
|
||
|
barcode, headers=[("Content-Type", "image/svg+xml")]
|
||
|
)
|
||
|
return request.make_response(barcode, headers=[("Content-Type", "image/png")])
|