From 69317debf7cb4d7e610f372eb3139bc7533ddba2 Mon Sep 17 00:00:00 2001 From: mahsem <137205921+mahsem@users.noreply.github.com> Date: Fri, 6 Dec 2024 14:59:16 +0100 Subject: [PATCH 1/2] fix: add docstatus for translation --- erpnext/templates/includes/issue_row.html | 56 ++++----- .../includes/projects/project_row.html | 110 +++++++++--------- erpnext/templates/pages/timelog_info.html | 2 +- 3 files changed, 84 insertions(+), 84 deletions(-) diff --git a/erpnext/templates/includes/issue_row.html b/erpnext/templates/includes/issue_row.html index 47c626b22d..b55712ab18 100644 --- a/erpnext/templates/includes/issue_row.html +++ b/erpnext/templates/includes/issue_row.html @@ -1,26 +1,30 @@ - -
- {% set indicator = 'red' if doc.status == 'Open' else 'darkgrey' %} - {% set indicator = 'green' if doc.status == 'Closed' else indicator %} - - {{ doc.name }} -
-
- {{ doc.subject }}
-
- {% set indicator = 'red' if doc.status == 'Open' else 'darkgrey' %} - {% set indicator = 'green' if doc.status == 'Closed' else indicator %} - {% set indicator = 'orange' if doc.status == 'Open' and doc.priority == 'Medium' else indicator %} - {% set indicator = 'yellow' if doc.status == 'Open' and doc.priority == 'Low' else indicator %} - - {% if doc.status == "Open" %} - {{ doc.priority }} - {% else %} - {{ doc.status }} - {%- endif -%} - -
-
- {{ frappe.format_date(doc.modified) }} -
-
+
+ +
+
+ {% set indicator = 'red' if doc.status == 'Open' else 'gray' %} + {% set indicator = 'green' if doc.status == 'Closed' else indicator %} + + {{ doc.name }} +
+
+ {{ doc.subject }}
+
+ {% set indicator = 'red' if doc.status == 'Open' else 'gray' %} + {% set indicator = 'green' if doc.status == 'Closed' else indicator %} + {% set indicator = 'orange' if doc.status == 'Open' and doc.priority == 'Medium' else indicator %} + {% set indicator = 'yellow' if doc.status == 'Open' and doc.priority == 'Low' else indicator %} + + {% if doc.status == "Open" %} + {{ doc.priority }} + {% else %} + {{ _(doc.status) }} + {%- endif -%} + +
+
+ {{ frappe.format_date(doc.modified) }} +
+
+
+
diff --git a/erpnext/templates/includes/projects/project_row.html b/erpnext/templates/includes/projects/project_row.html index b9fc420ded..ccb306afcd 100644 --- a/erpnext/templates/includes/projects/project_row.html +++ b/erpnext/templates/includes/projects/project_row.html @@ -1,58 +1,54 @@ -{% if doc.status!="Cancelled" %} -
-
- -
- {% if doc.percent_complete %} - {% set pill_class = "green" if doc.percent_complete | round == 100 else - "orange" %} -
- - {{ frappe.utils.cint(doc.percent_complete) }} - % - -
- {% else %} - - {{ _(doc.status) }} - {% endif %} -
-
- {% if doc["_assign"] %} - {% set assigned_users = json.loads(doc["_assign"])%} - {% for user in assigned_users %} - {% set user_details = frappe - .db - .get_value("User", user, [ - "full_name", "user_image" - ], as_dict = True) %} - {% if user_details.user_image %} - - - - {% else %} - -
- {{ frappe.utils.get_abbr(user_details.full_name) }} -
-
- {% endif %} - {% endfor %} - {% endif %} -
-
- {% if doc.expected_start_date and doc.expected_end_date %} - {{ frappe.utils.format_date(doc.expected_start_date) }} - {{ frappe.utils.format_date(doc.expected_end_date) }} - {% elif doc.expected_end_date %} - {{ _("Ends") }} {{ frappe.utils.format_date(doc.expected_end_date) }} - {% elif doc.expected_start_date %} - {{ _("Starts") }} {{ frappe.utils.format_date(doc.expected_end_date) }} - {% endif %} -
-
- {{ _("Link") }} -
+{% if doc.status == "Open" %} +
+
+ +
+ {{ doc.project_name }} +
+
+ {% if doc.percent_complete %} + {% set pill_class = "green" if doc.percent_complete | round == 100 else + "orange" %} +
+ + {{ frappe.utils.cint(doc.percent_complete) }} + % + +
+ {% else %} + + {{ _(doc.status) }} + {% endif %} +
+ {% if doc["_assign"] %} + {% set assigned_users = json.loads(doc["_assign"])%} +
+ {% for user in assigned_users %} + {% set user_details = frappe + .db + .get_value("User", user, [ + "full_name", "user_image" + ], as_dict = True) %} + {% if user_details.user_image %} + + + + {% else %} + +
+ {{ frappe.utils.get_abbr(user_details.full_name) }} +
+
+ {% endif %} + {% endfor %} +
+ {% endif %} +
+ {{ frappe.utils.pretty_date(doc.modified) }} +
+
+
{% endif %} diff --git a/erpnext/templates/pages/timelog_info.html b/erpnext/templates/pages/timelog_info.html index f6054e76bb..b088d50f9e 100644 --- a/erpnext/templates/pages/timelog_info.html +++ b/erpnext/templates/pages/timelog_info.html @@ -38,7 +38,7 @@ - + -- GitLab From 832629028d05078d74c38965045fc3c8107c5405 Mon Sep 17 00:00:00 2001 From: Charles-Henri Decultot Date: Tue, 24 Dec 2024 17:08:10 +0100 Subject: [PATCH 2/2] fix: several issues in portal* --- erpnext/projects/doctype/project/project.py | 1 - erpnext/templates/includes/issue_row.html | 2 +- .../includes/projects/project_row.html | 110 +++++++++--------- erpnext/templates/pages/help.html | 7 +- erpnext/templates/pages/help.py | 5 +- erpnext/templates/pages/projects.py | 1 + erpnext/templates/pages/search_help.py | 8 +- 7 files changed, 71 insertions(+), 63 deletions(-) diff --git a/erpnext/projects/doctype/project/project.py b/erpnext/projects/doctype/project/project.py index 2611190d38..336c1ae535 100644 --- a/erpnext/projects/doctype/project/project.py +++ b/erpnext/projects/doctype/project/project.py @@ -398,7 +398,6 @@ def get_project_list(doctype, txt, filters, limit_start, limit_page_length=20, o from frappe.www.list import get_list customers, suppliers = get_customers_suppliers("Project", frappe.session.user) - ignore_permissions = False if is_website_user() and frappe.session.user != "Guest": if not filters: diff --git a/erpnext/templates/includes/issue_row.html b/erpnext/templates/includes/issue_row.html index b55712ab18..dbbd6a0197 100644 --- a/erpnext/templates/includes/issue_row.html +++ b/erpnext/templates/includes/issue_row.html @@ -16,7 +16,7 @@ {% set indicator = 'yellow' if doc.status == 'Open' and doc.priority == 'Low' else indicator %} {% if doc.status == "Open" %} - {{ doc.priority }} + {{ _(doc.priority) or _(doc.status) }} {% else %} {{ _(doc.status) }} {%- endif -%} diff --git a/erpnext/templates/includes/projects/project_row.html b/erpnext/templates/includes/projects/project_row.html index ccb306afcd..b9fc420ded 100644 --- a/erpnext/templates/includes/projects/project_row.html +++ b/erpnext/templates/includes/projects/project_row.html @@ -1,54 +1,58 @@ -{% if doc.status == "Open" %} -
-
- -
- {{ doc.project_name }} -
-
- {% if doc.percent_complete %} - {% set pill_class = "green" if doc.percent_complete | round == 100 else - "orange" %} -
- - {{ frappe.utils.cint(doc.percent_complete) }} - % - -
- {% else %} - - {{ _(doc.status) }} - {% endif %} -
- {% if doc["_assign"] %} - {% set assigned_users = json.loads(doc["_assign"])%} -
- {% for user in assigned_users %} - {% set user_details = frappe - .db - .get_value("User", user, [ - "full_name", "user_image" - ], as_dict = True) %} - {% if user_details.user_image %} - - - - {% else %} - -
- {{ frappe.utils.get_abbr(user_details.full_name) }} -
-
- {% endif %} - {% endfor %} -
- {% endif %} -
- {{ frappe.utils.pretty_date(doc.modified) }} -
-
-
+{% if doc.status!="Cancelled" %} +
+
+ +
+ {% if doc.percent_complete %} + {% set pill_class = "green" if doc.percent_complete | round == 100 else + "orange" %} +
+ + {{ frappe.utils.cint(doc.percent_complete) }} + % + +
+ {% else %} + + {{ _(doc.status) }} + {% endif %} +
+
+ {% if doc["_assign"] %} + {% set assigned_users = json.loads(doc["_assign"])%} + {% for user in assigned_users %} + {% set user_details = frappe + .db + .get_value("User", user, [ + "full_name", "user_image" + ], as_dict = True) %} + {% if user_details.user_image %} + + + + {% else %} + +
+ {{ frappe.utils.get_abbr(user_details.full_name) }} +
+
+ {% endif %} + {% endfor %} + {% endif %} +
+
+ {% if doc.expected_start_date and doc.expected_end_date %} + {{ frappe.utils.format_date(doc.expected_start_date) }} - {{ frappe.utils.format_date(doc.expected_end_date) }} + {% elif doc.expected_end_date %} + {{ _("Ends") }} {{ frappe.utils.format_date(doc.expected_end_date) }} + {% elif doc.expected_start_date %} + {{ _("Starts") }} {{ frappe.utils.format_date(doc.expected_end_date) }} + {% endif %} +
+
+ {{ _("Link") }} +
{% endif %} diff --git a/erpnext/templates/pages/help.html b/erpnext/templates/pages/help.html index 1cfe358efd..cc1b02b9f6 100644 --- a/erpnext/templates/pages/help.html +++ b/erpnext/templates/pages/help.html @@ -2,8 +2,10 @@ {% block title %} {{ _("Help") }} {% endblock %} -{% block header %}

{{ _("Help") }}

+{% block header %}

{{ _("Help") }}

{% endblock %} +{% block content %} +
0 -%}
-

{{ _("Your tickets") }}

+

{{ _("Your issues") }}

{% for doc in issues %} {% include "templates/includes/issue_row.html" %} {% endfor %} @@ -60,5 +62,6 @@ {{ _("Open a new ticket") }} {%- endif %} +
{% endblock %} diff --git a/erpnext/templates/pages/help.py b/erpnext/templates/pages/help.py index 19993ee9b1..b021502fb5 100644 --- a/erpnext/templates/pages/help.py +++ b/erpnext/templates/pages/help.py @@ -10,7 +10,7 @@ def get_context(context): s = settings # Get Started sections - sections = json.loads(s.get_started_sections) + sections = json.loads(s.get_started_sections or "[]") context.get_started_sections = sections # Forum posts @@ -27,6 +27,9 @@ def get_context(context): def get_forum_posts(s): + if not s.forum_url: + return [], {} + response = requests.get(s.forum_url + "/" + s.get_latest_query) response.raise_for_status() response_json = response.json() diff --git a/erpnext/templates/pages/projects.py b/erpnext/templates/pages/projects.py index 6a1ee4edde..e9296e7cb8 100644 --- a/erpnext/templates/pages/projects.py +++ b/erpnext/templates/pages/projects.py @@ -15,6 +15,7 @@ def get_context(context): ["user", "view_attachments"], as_dict=True, ) + if frappe.session.user != "Administrator" and (not project_user or frappe.session.user == "Guest"): raise frappe.PermissionError diff --git a/erpnext/templates/pages/search_help.py b/erpnext/templates/pages/search_help.py index 801273d7f0..350a37287e 100644 --- a/erpnext/templates/pages/search_help.py +++ b/erpnext/templates/pages/search_help.py @@ -4,13 +4,13 @@ from frappe import _ from frappe.core.utils import html2text from frappe.utils import sanitize_html from frappe.utils.global_search import search -from jinja2 import utils +from markupsafe import escape def get_context(context): context.no_cache = 1 if frappe.form_dict.q: - query = str(utils.escape(sanitize_html(frappe.form_dict.q))) + query = str(escape(sanitize_html(frappe.form_dict.q))) context.title = _("Help Results for") context.query = query @@ -47,9 +47,7 @@ def get_help_results_sections(text): def get_response(api, text): - response = requests.get( - api.base_url + "/" + api.query_route, data={api.search_term_param_name: text} - ) + response = requests.get(api.base_url + "/" + api.query_route, data={api.search_term_param_name: text}) response.raise_for_status() return response.json() -- GitLab