From f180abf66d3c0edf6b2507436743e6e04da241a4 Mon Sep 17 00:00:00 2001 From: shariquerik Date: Thu, 4 Feb 2021 19:31:19 +0530 Subject: [PATCH 1/4] fix: RTL print preview issue --- frappe/printing/page/print/print.js | 6 ++++++ frappe/www/printview.py | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/frappe/printing/page/print/print.js b/frappe/printing/page/print/print.js index 7e1db1eddb..8d09a2c4df 100644 --- a/frappe/printing/page/print/print.js +++ b/frappe/printing/page/print/print.js @@ -412,6 +412,12 @@ frappe.ui.form.PrintView = class { ` ); + if (out.has_rtl){ + this.$print_format_body.find('head').append( + `` + ); + } + this.$print_format_body.find('body').html( `` ); diff --git a/frappe/www/printview.py b/frappe/www/printview.py index f80d9d6ef0..faea0306dd 100644 --- a/frappe/www/printview.py +++ b/frappe/www/printview.py @@ -204,7 +204,8 @@ def get_html_and_style(doc, name=None, print_format=None, meta=None, return { "html": html, - "style": get_print_style(style=style, print_format=print_format) + "style": get_print_style(style=style, print_format=print_format), + "has_rtl": True if frappe.local.lang in ["ar", "he", "fa"] else False } @frappe.whitelist() From e992e638f94ddb1cfbdceaee3e8449b7f18b82da Mon Sep 17 00:00:00 2001 From: shariquerik Date: Sun, 7 Feb 2021 12:42:06 +0530 Subject: [PATCH 2/4] fix: Added has_rtl function on client side --- frappe/printing/page/print/print.js | 6 +++++- frappe/www/printview.py | 3 +-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/frappe/printing/page/print/print.js b/frappe/printing/page/print/print.js index 8d09a2c4df..45c19b5a4d 100644 --- a/frappe/printing/page/print/print.js +++ b/frappe/printing/page/print/print.js @@ -362,6 +362,10 @@ frappe.ui.form.PrintView = class { this.lang_code = this.language_sel.val(); } + has_rtl(){ + return ["ar", "he", "fa"].includes(this.lang_code); + } + get_language_options() { return frappe.get_languages(); } @@ -412,7 +416,7 @@ frappe.ui.form.PrintView = class { ` ); - if (out.has_rtl){ + if (this.has_rtl()){ this.$print_format_body.find('head').append( `` ); diff --git a/frappe/www/printview.py b/frappe/www/printview.py index faea0306dd..f80d9d6ef0 100644 --- a/frappe/www/printview.py +++ b/frappe/www/printview.py @@ -204,8 +204,7 @@ def get_html_and_style(doc, name=None, print_format=None, meta=None, return { "html": html, - "style": get_print_style(style=style, print_format=print_format), - "has_rtl": True if frappe.local.lang in ["ar", "he", "fa"] else False + "style": get_print_style(style=style, print_format=print_format) } @frappe.whitelist() From b42c3d05cc016ac7a4bfb18a1b5747779569dc3b Mon Sep 17 00:00:00 2001 From: shariquerik Date: Mon, 8 Feb 2021 12:32:07 +0530 Subject: [PATCH 3/4] fix: updated is_rtl function --- frappe/printing/page/print/print.js | 6 +----- frappe/public/js/frappe/utils/utils.js | 4 ++-- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/frappe/printing/page/print/print.js b/frappe/printing/page/print/print.js index 45c19b5a4d..9eca40586d 100644 --- a/frappe/printing/page/print/print.js +++ b/frappe/printing/page/print/print.js @@ -362,10 +362,6 @@ frappe.ui.form.PrintView = class { this.lang_code = this.language_sel.val(); } - has_rtl(){ - return ["ar", "he", "fa"].includes(this.lang_code); - } - get_language_options() { return frappe.get_languages(); } @@ -416,7 +412,7 @@ frappe.ui.form.PrintView = class { ` ); - if (this.has_rtl()){ + if (frappe.utils.is_rtl(this.lang_code)){ this.$print_format_body.find('head').append( `` ); diff --git a/frappe/public/js/frappe/utils/utils.js b/frappe/public/js/frappe/utils/utils.js index 5f6126b81f..b096d2dc43 100644 --- a/frappe/public/js/frappe/utils/utils.js +++ b/frappe/public/js/frappe/utils/utils.js @@ -922,8 +922,8 @@ Object.assign(frappe.utils, { message: __('Copied to clipboard.') }); }, - is_rtl() { - return ["ar", "he", "fa"].includes(frappe.boot.lang); + is_rtl(lang=null) { + return ["ar", "he", "fa"].includes(lang || frappe.boot.lang); }, bind_actions_with_object($el, object) { // remove previously bound event From 73f7fff00f388e0f70d99854d777d7cf8ef906d7 Mon Sep 17 00:00:00 2001 From: shariquerik Date: Tue, 9 Feb 2021 15:18:34 +0530 Subject: [PATCH 4/4] fix: fixed sider --- frappe/printing/page/print/print.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frappe/printing/page/print/print.js b/frappe/printing/page/print/print.js index 9eca40586d..0ae8786e95 100644 --- a/frappe/printing/page/print/print.js +++ b/frappe/printing/page/print/print.js @@ -412,7 +412,7 @@ frappe.ui.form.PrintView = class { ` ); - if (frappe.utils.is_rtl(this.lang_code)){ + if (frappe.utils.is_rtl(this.lang_code)) { this.$print_format_body.find('head').append( `` );