浏览代码

[fix] frappe.attach_print() - encode html if pdf printing is disabled and set file extn accordingly

version-14
Anand Doshi 10 年前
父节点
当前提交
5ce09c4e0c
共有 1 个文件被更改,包括 18 次插入6 次删除
  1. +18
    -6
      frappe/__init__.py

+ 18
- 6
frappe/__init__.py 查看文件

@@ -641,6 +641,8 @@ def format_value(value, df, doc=None, currency=None):


def get_print_format(doctype, name, print_format=None, style=None, as_pdf=False): def get_print_format(doctype, name, print_format=None, style=None, as_pdf=False):
from frappe.website.render import build_page from frappe.website.render import build_page
from frappe.utils.pdf import get_pdf

local.form_dict.doctype = doctype local.form_dict.doctype = doctype
local.form_dict.name = name local.form_dict.name = name
local.form_dict.format = print_format local.form_dict.format = print_format
@@ -649,15 +651,25 @@ def get_print_format(doctype, name, print_format=None, style=None, as_pdf=False)
html = build_page("print") html = build_page("print")


if as_pdf: if as_pdf:
print_settings = db.get_singles_dict("Print Settings")
if int(print_settings.send_print_as_pdf or 0):
from utils.pdf import get_pdf
return get_pdf(html, {"page-size": print_settings.pdf_page_size})
else:
return html
return get_pdf(html)
else: else:
return html return html


def attach_print(doctype, name, file_name):
from frappe.utils import scrub_urls

print_settings = db.get_singles_dict("Print Settings")
if int(print_settings.send_print_as_pdf or 0):
return {
"fname": file_name + ".pdf",
"fcontent": get_print_format(doctype, name, as_pdf=True)
}
else:
return {
"fname": file_name + ".html",
"fcontent": scrub_urls(get_print_format(doctype, name)).encode("utf-8")
}

logging_setup_complete = False logging_setup_complete = False
def get_logger(module=None): def get_logger(module=None):
from frappe.setup_logging import setup_logging from frappe.setup_logging import setup_logging


正在加载...
取消
保存