diff --git a/frappe/boot.py b/frappe/boot.py index 23c52dbc0f..6623abcc4d 100644 --- a/frappe/boot.py +++ b/frappe/boot.py @@ -51,7 +51,7 @@ def get_bootinfo(): load_translations(bootinfo) add_timezone_info(bootinfo) load_conf_settings(bootinfo) - load_print_css(bootinfo) + load_print(bootinfo, doclist) # ipinfo if frappe.session['data'].get('ipinfo'): @@ -150,6 +150,11 @@ def add_timezone_info(bootinfo): frappe.utils.momentjs.update(user, bootinfo.timezone_info) frappe.utils.momentjs.update(system, bootinfo.timezone_info) -def load_print_css(bootinfo): - bootinfo.print_css = frappe.get_attr("frappe.templates.pages.print.get_print_style")(frappe.db.get_single_value("Print Settings", - "print_style") or "Modern") +def load_print(bootinfo, doclist): + print_settings = frappe.db.get_singles_dict("Print Settings") + print_settings.doctype = ":Print Settings" + doclist.append(print_settings) + load_print_css(bootinfo, print_settings) + +def load_print_css(bootinfo, print_settings): + bootinfo.print_css = frappe.get_attr("frappe.templates.pages.print.get_print_style")(print_settings.print_style or "Modern") diff --git a/frappe/core/doctype/print_settings/print_settings.json b/frappe/core/doctype/print_settings/print_settings.json index edfb5f6276..4299d79e17 100644 --- a/frappe/core/doctype/print_settings/print_settings.json +++ b/frappe/core/doctype/print_settings/print_settings.json @@ -53,6 +53,15 @@ "label": "Font Size", "permlevel": 0 }, + { + "default": "1", + "description": "Print with Letterhead, unless unchecked in a particular Document", + "fieldname": "with_letterhead", + "fieldtype": "Check", + "label": "With Letterhead", + "permlevel": 0, + "reqd": 0 + }, { "fieldname": "section_break_8", "fieldtype": "Section Break", @@ -67,7 +76,7 @@ ], "icon": "icon-cog", "issingle": 1, - "modified": "2014-07-31 06:25:45.297096", + "modified": "2014-07-31 07:43:54.550258", "modified_by": "Administrator", "module": "Core", "name": "Print Settings", diff --git a/frappe/patches.txt b/frappe/patches.txt index a23f61b899..dd4be43bdf 100644 --- a/frappe/patches.txt +++ b/frappe/patches.txt @@ -49,3 +49,4 @@ frappe.patches.v4_1.enable_print_as_pdf #2014-06-17 execute:frappe.db.sql("""update `tabDocPerm` set email=1 where parent='User' and permlevel=0 and `role`='All' and `read`=1 and apply_user_permissions=1""") #2014-07-15 execute:frappe.db.sql("""update `tabPrint Format` set print_format_type='Client' where ifnull(print_format_type, '')=''""") #2014-07-28 frappe.patches.v4_1.file_manager_fix +frappe.patches.v4_2.print_with_letterhead diff --git a/frappe/patches/v4_2/print_with_letterhead.py b/frappe/patches/v4_2/print_with_letterhead.py new file mode 100644 index 0000000000..ad2a144d95 --- /dev/null +++ b/frappe/patches/v4_2/print_with_letterhead.py @@ -0,0 +1,11 @@ +# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors +# MIT License. See license.txt + +from __future__ import unicode_literals +import frappe + +def execute(): + frappe.reload_doc("core", "doctype", "print_settings") + print_settings = frappe.get_doc("Print Settings") + print_settings.with_letterhead = 1 + print_settings.save() diff --git a/frappe/public/js/frappe/form/print.js b/frappe/public/js/frappe/form/print.js index 5488415847..e949d42fb5 100644 --- a/frappe/public/js/frappe/form/print.js +++ b/frappe/public/js/frappe/form/print.js @@ -14,7 +14,7 @@ frappe.ui.form.PrintPreview = Class.extend({