diff --git a/babel_extractors.csv b/babel_extractors.csv
index ff8faafaff..7f2103c4d4 100644
--- a/babel_extractors.csv
+++ b/babel_extractors.csv
@@ -7,5 +7,6 @@ hooks.py,frappe.gettext.extractors.navbar.extract
**.py,frappe.gettext.extractors.python.extract
**.js,frappe.gettext.extractors.javascript.extract
**.html,frappe.gettext.extractors.html_template.extract
+**.vue,frappe.gettext.extractors.html_template.extract
**/custom/*.json,frappe.gettext.extractors.customization.extract
**/fixtures/custom_field.json,frappe.gettext.extractors.custom_field.extract
\ No newline at end of file
diff --git a/frappe/core/doctype/docfield/docfield.json b/frappe/core/doctype/docfield/docfield.json
index 4943f7a94c..f2d0eee7a1 100644
--- a/frappe/core/doctype/docfield/docfield.json
+++ b/frappe/core/doctype/docfield/docfield.json
@@ -32,6 +32,7 @@
"fetch_if_empty",
"visibility_section",
"hidden",
+ "show_on_timeline",
"bold",
"allow_in_quick_entry",
"translatable",
@@ -578,13 +579,20 @@
"fieldname": "not_nullable",
"fieldtype": "Check",
"label": "Not Nullable"
+ },
+ {
+ "default": "0",
+ "depends_on": "eval: doc.hidden",
+ "fieldname": "show_on_timeline",
+ "fieldtype": "Check",
+ "label": "Show on Timeline"
}
],
"idx": 1,
"index_web_pages_for_search": 1,
"istable": 1,
"links": [],
- "modified": "2024-04-12 16:27:34.546314",
+ "modified": "2024-07-30 13:15:32.037892",
"modified_by": "Administrator",
"module": "Core",
"name": "DocField",
@@ -594,4 +602,4 @@
"sort_field": "creation",
"sort_order": "ASC",
"states": []
-}
+}
\ No newline at end of file
diff --git a/frappe/core/doctype/docfield/docfield.py b/frappe/core/doctype/docfield/docfield.py
index ed663c3bba..4dc397d5b5 100644
--- a/frappe/core/doctype/docfield/docfield.py
+++ b/frappe/core/doctype/docfield/docfield.py
@@ -112,6 +112,7 @@ class DocField(Document):
search_index: DF.Check
set_only_once: DF.Check
show_dashboard: DF.Check
+ show_on_timeline: DF.Check
sort_options: DF.Check
translatable: DF.Check
unique: DF.Check
diff --git a/frappe/core/doctype/user/user.json b/frappe/core/doctype/user/user.json
index 1cdf6c2397..4e326bbc25 100644
--- a/frappe/core/doctype/user/user.json
+++ b/frappe/core/doctype/user/user.json
@@ -237,7 +237,8 @@
"options": "Has Role",
"permlevel": 1,
"print_hide": 1,
- "read_only": 1
+ "read_only": 1,
+ "show_on_timeline": 1
},
{
"collapsible": 1,
@@ -428,7 +429,8 @@
"hidden": 1,
"label": "Block Modules",
"options": "Block Module",
- "permlevel": 1
+ "permlevel": 1,
+ "show_on_timeline": 1
},
{
"fieldname": "home_settings",
@@ -796,7 +798,7 @@
"link_fieldname": "user"
}
],
- "modified": "2024-04-12 23:25:04.628007",
+ "modified": "2024-07-15 18:40:18.842915",
"modified_by": "Administrator",
"module": "Core",
"name": "User",
diff --git a/frappe/core/doctype/user/user.py b/frappe/core/doctype/user/user.py
index bc339432ec..225175e417 100644
--- a/frappe/core/doctype/user/user.py
+++ b/frappe/core/doctype/user/user.py
@@ -362,7 +362,11 @@ class User(Document):
user=self.name, pwd=new_password, logout_all_sessions=self.logout_all_sessions
)
- if not self.flags.no_welcome_mail and cint(self.send_welcome_email):
+ if (
+ not self.flags.no_welcome_mail
+ and cint(self.send_welcome_email)
+ and not self.flags.email_sent
+ ):
self.send_welcome_mail_to_user()
self.flags.email_sent = 1
if frappe.session.user != "Guest":
diff --git a/frappe/desk/doctype/notification_log/notification_log.json b/frappe/desk/doctype/notification_log/notification_log.json
index 49b16266b4..c3b3c09d92 100644
--- a/frappe/desk/doctype/notification_log/notification_log.json
+++ b/frappe/desk/doctype/notification_log/notification_log.json
@@ -40,7 +40,7 @@
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Type",
- "options": "Mention\nEnergy Point\nAssignment\nShare\nAlert"
+ "options": "\nMention\nEnergy Point\nAssignment\nShare\nAlert"
},
{
"fieldname": "email_content",
@@ -103,7 +103,7 @@
"hide_toolbar": 1,
"in_create": 1,
"links": [],
- "modified": "2024-03-23 16:03:31.715461",
+ "modified": "2024-08-03 09:38:10.497711",
"modified_by": "Administrator",
"module": "Desk",
"name": "Notification Log",
diff --git a/frappe/desk/doctype/notification_log/notification_log.py b/frappe/desk/doctype/notification_log/notification_log.py
index 8793559611..499e4e27cd 100644
--- a/frappe/desk/doctype/notification_log/notification_log.py
+++ b/frappe/desk/doctype/notification_log/notification_log.py
@@ -28,7 +28,7 @@ class NotificationLog(Document):
link: DF.Data | None
read: DF.Check
subject: DF.Text | None
- type: DF.Literal["Mention", "Energy Point", "Assignment", "Share", "Alert"]
+ type: DF.Literal["", "Mention", "Energy Point", "Assignment", "Share", "Alert"]
# end: auto-generated types
def after_insert(self):
diff --git a/frappe/desk/doctype/notification_settings/notification_settings.py b/frappe/desk/doctype/notification_settings/notification_settings.py
index 41a6991d6f..691c03588d 100644
--- a/frappe/desk/doctype/notification_settings/notification_settings.py
+++ b/frappe/desk/doctype/notification_settings/notification_settings.py
@@ -59,9 +59,10 @@ def is_email_notifications_enabled_for_type(user, notification_type):
return False
fieldname = "enable_email_" + frappe.scrub(notification_type)
- enabled = frappe.db.get_value("Notification Settings", user, fieldname)
+ enabled = frappe.db.get_value("Notification Settings", user, fieldname, ignore=True)
if enabled is None:
return True
+
return enabled
diff --git a/frappe/email/doctype/email_queue/email_queue.py b/frappe/email/doctype/email_queue/email_queue.py
index dbf4ba68ad..8f02a6e5f2 100644
--- a/frappe/email/doctype/email_queue/email_queue.py
+++ b/frappe/email/doctype/email_queue/email_queue.py
@@ -171,11 +171,18 @@ class EmailQueue(Document):
method(self, self.sender, recipient.recipient, message)
elif not frappe.flags.in_test or frappe.flags.testing_email:
if ctx.email_account_doc.service == "Frappe Mail":
- ctx.frappe_mail_client.send_raw(
- sender=self.sender,
- recipients=recipient.recipient,
- message=message.decode("utf-8"),
- )
+ if self.reference_doctype == "Newsletter":
+ ctx.frappe_mail_client.send_newsletter(
+ sender=self.sender,
+ recipients=recipient.recipient,
+ message=message.decode("utf-8"),
+ )
+ else:
+ ctx.frappe_mail_client.send_raw(
+ sender=self.sender,
+ recipients=recipient.recipient,
+ message=message.decode("utf-8"),
+ )
else:
ctx.smtp_server.session.sendmail(
from_addr=self.sender,
@@ -780,7 +787,8 @@ class QueueBuilder:
with suppress(Exception):
q.send(smtp_server_instance=smtp_server_instance, frappe_mail_client=frappe_mail_client)
- smtp_server_instance.quit()
+ if smtp_server_instance:
+ smtp_server_instance.quit()
def as_dict(self, include_recipients=True):
email_account = self.get_outgoing_email_account()
diff --git a/frappe/email/frappemail.py b/frappe/email/frappemail.py
index e9d792aae6..a4bcf9b5c2 100644
--- a/frappe/email/frappemail.py
+++ b/frappe/email/frappemail.py
@@ -1,5 +1,5 @@
from datetime import datetime
-from typing import TYPE_CHECKING
+from typing import Any
from urllib.parse import urljoin
import pytz
@@ -9,9 +9,6 @@ from frappe import _
from frappe.frappeclient import FrappeClient, FrappeOAuth2Client
from frappe.utils import convert_utc_to_system_timezone, get_datetime, get_datetime_str, get_system_timezone
-if TYPE_CHECKING:
- from requests import Response
-
class FrappeMail:
"""Class to interact with the Frappe Mail API."""
@@ -29,6 +26,9 @@ class FrappeMail:
self.api_key = api_key
self.api_secret = api_secret
self.access_token = access_token
+ self.client = self.get_client(
+ self.site, self.mailbox, self.api_key, self.api_secret, self.access_token
+ )
@staticmethod
def get_client(
@@ -65,64 +65,51 @@ class FrappeMail:
headers: dict[str, str] | None = None,
timeout: int | tuple[int, int] = (60, 120),
raise_exception: bool = True,
- ) -> "Response":
- """Makes a HTTP request to the Frappe Mail API."""
+ ) -> Any | None:
+ """Makes a request to the Frappe Mail API."""
- url = urljoin(self.site, endpoint)
- client = self.get_client(self.site, self.mailbox, self.api_key, self.api_secret, self.access_token)
+ url = urljoin(self.client.url, endpoint)
headers = headers or {}
- headers.update(client.headers)
+ headers.update(self.client.headers)
- response = client.session.request(
+ response = self.client.session.request(
method=method, url=url, params=params, data=data, json=json, headers=headers, timeout=timeout
)
- if not response.ok and raise_exception:
- error_msg = response.text
- if response.status_code == 401:
- if self.access_token:
- error_msg = _("Authentication Error: Reauthorize OAuth for Email Account {0}.").format(
- frappe.bold(self.mailbox)
- )
- else:
- error_msg = _("Authentication Error: Invalid API Key or Secret")
-
- frappe.throw(title=_("Frappe Mail"), msg=error_msg)
-
- return response
+ return self.client.post_process(response)
def validate(self, for_outbound: bool = False, for_inbound: bool = False) -> None:
"""Validates the mailbox for inbound and outbound emails."""
- endpoint = "auth/validate"
+ endpoint = "/api/method/mail.api.auth.validate"
data = {"mailbox": self.mailbox, "for_outbound": for_outbound, "for_inbound": for_inbound}
- response = self.request("POST", endpoint=endpoint, data=data, raise_exception=False)
+ self.request("POST", endpoint=endpoint, data=data)
- if not response.ok:
- if error_msg := response.json().get("exception"):
- if error_msg == "frappe.exceptions.AuthenticationError":
- error_msg += ": Invalid API Key or Secret"
-
- frappe.throw(title="Frappe Mail", msg=error_msg)
-
- def send_raw(self, sender: str, recipients: str, message: str) -> None:
+ def send_raw(self, sender: str, recipients: str | list, message: str) -> None:
"""Sends an email using the Frappe Mail API."""
- endpoint = "outbound/send-raw"
- json_data = {"from": sender, "to": recipients, "raw_message": message}
- self.request("POST", endpoint=endpoint, json=json_data)
+ endpoint = "/api/method/mail.api.outbound.send_raw"
+ data = {"from_": sender, "to": recipients, "raw_message": message}
+ self.request("POST", endpoint=endpoint, data=data)
+
+ def send_newsletter(self, sender: str, recipients: str | list, message: str) -> None:
+ """Sends an newsletter using the Frappe Mail API."""
+
+ endpoint = "/api/method/mail.api.outbound.send_newsletter"
+ data = {"from_": sender, "to": recipients, "raw_message": message}
+ self.request("POST", endpoint=endpoint, json=data)
def pull_raw(self, limit: int = 50, last_synced_at: str | None = None) -> dict[str, list[str] | str]:
"""Pulls emails from the mailbox using the Frappe Mail API."""
- endpoint = "inbound/pull-raw"
+ endpoint = "/api/method/mail.api.inbound.pull_raw"
if last_synced_at:
last_synced_at = convert_to_utc(last_synced_at)
data = {"mailbox": self.mailbox, "limit": limit, "last_synced_at": last_synced_at}
headers = {"X-Site": frappe.utils.get_url()}
- response = self.request("GET", endpoint=endpoint, data=data, headers=headers).json()["message"]
+ response = self.request("GET", endpoint=endpoint, data=data, headers=headers)
last_synced_at = convert_utc_to_system_timezone(get_datetime(response["last_synced_at"]))
return {"latest_messages": response["mails"], "last_synced_at": last_synced_at}
diff --git a/frappe/gettext/extractors/workspace.py b/frappe/gettext/extractors/workspace.py
index 76ca108df4..4c58c373be 100644
--- a/frappe/gettext/extractors/workspace.py
+++ b/frappe/gettext/extractors/workspace.py
@@ -29,8 +29,8 @@ def extract(fileobj, *args, **kwargs):
yield from (
(
None,
- "pgettext",
- (link.get("link_to") if link.get("link_type") == "DocType" else None, link.get("label")),
+ "_",
+ link.get("label"),
[f"Label of a {link.get('type')} in the {workspace_name} Workspace"],
)
for link in data.get("links", [])
@@ -38,8 +38,8 @@ def extract(fileobj, *args, **kwargs):
yield from (
(
None,
- "pgettext",
- (link.get("link_to") if link.get("link_type") == "DocType" else None, link.get("description")),
+ "_",
+ link.get("description"),
[f"Description of a {link.get('type')} in the {workspace_name} Workspace"],
)
for link in data.get("links", [])
@@ -47,8 +47,8 @@ def extract(fileobj, *args, **kwargs):
yield from (
(
None,
- "pgettext",
- (shortcut.get("link_to") if shortcut.get("type") == "DocType" else None, shortcut.get("label")),
+ "_",
+ shortcut.get("label"),
[f"Label of a shortcut in the {workspace_name} Workspace"],
)
for shortcut in data.get("shortcuts", [])
@@ -56,8 +56,8 @@ def extract(fileobj, *args, **kwargs):
yield from (
(
None,
- "pgettext",
- (shortcut.get("link_to") if shortcut.get("type") == "DocType" else None, shortcut.get("format")),
+ "_",
+ shortcut.get("format"),
[f"Count format of shortcut in the {workspace_name} Workspace"],
)
for shortcut in data.get("shortcuts", [])
diff --git a/frappe/gettext/translate.py b/frappe/gettext/translate.py
index bf5b60f0b8..3e43e55f7a 100644
--- a/frappe/gettext/translate.py
+++ b/frappe/gettext/translate.py
@@ -218,7 +218,7 @@ def update_po(target_app: str | None = None, locale: str | None = None):
pot_catalog = get_catalog(app)
for locale in locales:
po_catalog = get_catalog(app, locale)
- po_catalog.update(pot_catalog)
+ po_catalog.update(pot_catalog, no_fuzzy_matching=True)
po_path = write_catalog(app, po_catalog, locale)
print(f"PO file modified at {po_path}")
diff --git a/frappe/locale/main.pot b/frappe/locale/main.pot
index 1ba70391ab..4836eaadcd 100644
--- a/frappe/locale/main.pot
+++ b/frappe/locale/main.pot
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Frappe Framework VERSION\n"
"Report-Msgid-Bugs-To: developers@frappe.io\n"
-"POT-Creation-Date: 2024-07-21 09:33+0000\n"
-"PO-Revision-Date: 2024-07-21 09:33+0000\n"
+"POT-Creation-Date: 2024-08-04 09:33+0000\n"
+"PO-Revision-Date: 2024-08-04 09:33+0000\n"
"Last-Translator: developers@frappe.io\n"
"Language-Team: developers@frappe.io\n"
"MIME-Version: 1.0\n"
@@ -167,6 +167,10 @@ msgstr ""
msgid "1 month ago"
msgstr ""
+#: public/js/print_format_builder/PrintFormat.vue:3
+msgid "1 of 2"
+msgstr ""
+
#: public/js/frappe/data_import/data_exporter.js:227
msgid "1 record will be exported"
msgstr ""
@@ -745,13 +749,9 @@ msgid "About Us"
msgstr ""
#. Name of a DocType
-#: website/doctype/about_us_settings/about_us_settings.json
-msgid "About Us Settings"
-msgstr ""
-
#. Label of a Link in the Website Workspace
+#: website/doctype/about_us_settings/about_us_settings.json
#: website/workspace/website/website.json
-msgctxt "About Us Settings"
msgid "About Us Settings"
msgstr ""
@@ -784,13 +784,8 @@ msgid "Access Key Secret"
msgstr ""
#. Name of a DocType
-#: core/doctype/access_log/access_log.json
-msgid "Access Log"
-msgstr ""
-
#. Label of a Link in the Users Workspace
-#: core/workspace/users/users.json
-msgctxt "Access Log"
+#: core/doctype/access_log/access_log.json core/workspace/users/users.json
msgid "Access Log"
msgstr ""
@@ -963,14 +958,10 @@ msgid "Activity"
msgstr ""
#. Name of a DocType
-#: core/doctype/activity_log/activity_log.json
-msgid "Activity Log"
-msgstr ""
-
#. Label of a Link in the Build Workspace
#. Label of a Link in the Users Workspace
-#: core/workspace/build/build.json core/workspace/users/users.json
-msgctxt "Activity Log"
+#: core/doctype/activity_log/activity_log.json core/workspace/build/build.json
+#: core/workspace/users/users.json
msgid "Activity Log"
msgstr ""
@@ -979,7 +970,7 @@ msgstr ""
#: public/js/frappe/form/grid_row.js:471
#: public/js/frappe/form/sidebar/assign_to.js:100
#: public/js/frappe/form/templates/set_sharing.html:68
-#: public/js/frappe/list/bulk_operations.js:407
+#: public/js/frappe/list/bulk_operations.js:437
#: public/js/frappe/views/dashboard/dashboard_view.js:440
#: public/js/frappe/views/reports/query_report.js:266
#: public/js/frappe/views/reports/query_report.js:294
@@ -1041,6 +1032,7 @@ msgstr ""
#: public/js/frappe/views/reports/query_report.js:1684
#: public/js/frappe/views/reports/report_view.js:324
#: public/js/frappe/views/reports/report_view.js:349
+#: public/js/print_format_builder/Field.vue:112
msgid "Add Column"
msgstr ""
@@ -1102,7 +1094,7 @@ msgstr ""
msgid "Add Review"
msgstr ""
-#: core/doctype/user/user.py:772
+#: core/doctype/user/user.py:776
msgid "Add Roles"
msgstr ""
@@ -1131,7 +1123,7 @@ msgstr ""
msgid "Add Subscribers"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:395
+#: public/js/frappe/list/bulk_operations.js:425
msgid "Add Tags"
msgstr ""
@@ -1181,6 +1173,7 @@ msgid "Add a comment"
msgstr ""
#: printing/page/print_format_builder/print_format_builder_layout.html:28
+#: public/js/form_builder/components/Tabs.vue:192
msgid "Add a new section"
msgstr ""
@@ -1204,10 +1197,42 @@ msgstr ""
msgid "Add a {0} Chart"
msgstr ""
+#: public/js/form_builder/components/Section.vue:271
+#: public/js/print_format_builder/PrintFormatSection.vue:115
+msgid "Add column"
+msgstr ""
+
+#: public/js/form_builder/components/AddFieldButton.vue:9
+#: public/js/form_builder/components/AddFieldButton.vue:48
+msgid "Add field"
+msgstr ""
+
+#: public/js/form_builder/components/Sidebar.vue:49
+#: public/js/form_builder/components/Tabs.vue:153
+msgid "Add new tab"
+msgstr ""
+
+#: public/js/print_format_builder/PrintFormatSection.vue:125
+msgid "Add page break"
+msgstr ""
+
#: custom/doctype/client_script/client_script.js:16
msgid "Add script for Child Table"
msgstr ""
+#: public/js/print_format_builder/PrintFormatSection.vue:111
+msgid "Add section above"
+msgstr ""
+
+#: public/js/form_builder/components/Section.vue:265
+msgid "Add section below"
+msgstr ""
+
+#: public/js/form_builder/components/Sidebar.vue:52
+#: public/js/form_builder/components/Tabs.vue:157
+msgid "Add tab"
+msgstr ""
+
#: public/js/frappe/utils/dashboard_utils.js:263
#: public/js/frappe/views/reports/query_report.js:252
msgid "Add to Dashboard"
@@ -1356,11 +1381,11 @@ msgstr ""
msgid "Administrator"
msgstr ""
-#: core/doctype/user/user.py:1176
+#: core/doctype/user/user.py:1180
msgid "Administrator Logged In"
msgstr ""
-#: core/doctype/user/user.py:1170
+#: core/doctype/user/user.py:1174
msgid "Administrator accessed {0} on {1} via IP Address {2}."
msgstr ""
@@ -1445,7 +1470,7 @@ msgstr ""
msgid "Aggregate Function Based On"
msgstr ""
-#: desk/doctype/dashboard_chart/dashboard_chart.py:399
+#: desk/doctype/dashboard_chart/dashboard_chart.py:409
msgid "Aggregate Function field is required to create a dashboard chart"
msgstr ""
@@ -1838,7 +1863,7 @@ msgstr ""
msgid "Allowing DocType, DocType. Be careful!"
msgstr ""
-#: core/doctype/user/user.py:979
+#: core/doctype/user/user.py:983
msgid "Already Registered"
msgstr ""
@@ -2074,7 +2099,7 @@ msgstr ""
msgid "Append To"
msgstr ""
-#: email/doctype/email_account/email_account.py:195
+#: email/doctype/email_account/email_account.py:196
msgid "Append To can be one of {0}"
msgstr ""
@@ -2115,6 +2140,10 @@ msgstr ""
msgid "Applied On"
msgstr ""
+#: public/js/form_builder/components/Field.vue:103
+msgid "Apply"
+msgstr ""
+
#: public/js/frappe/list/list_view.js:1942
msgctxt "Button in list view actions menu"
msgid "Apply Assignment Rule"
@@ -2217,7 +2246,7 @@ msgstr ""
msgid "Are you sure you want to delete all rows?"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:899
+#: public/js/frappe/views/workspace/workspace.js:926
msgid "Are you sure you want to delete page {0}?"
msgstr ""
@@ -2225,6 +2254,21 @@ msgstr ""
msgid "Are you sure you want to delete the attachment?"
msgstr ""
+#: public/js/form_builder/components/Section.vue:197
+msgctxt "Confirmation dialog message"
+msgid "Are you sure you want to delete the column? All the fields in the column will be moved to the previous column."
+msgstr ""
+
+#: public/js/form_builder/components/Section.vue:126
+msgctxt "Confirmation dialog message"
+msgid "Are you sure you want to delete the section? All the columns along with fields in the section will be moved to the previous section."
+msgstr ""
+
+#: public/js/form_builder/components/Tabs.vue:65
+msgctxt "Confirmation dialog message"
+msgid "Are you sure you want to delete the tab? All the sections along with fields in the tab will be moved to the previous tab."
+msgstr ""
+
#: public/js/frappe/web_form/web_form.js:185
msgid "Are you sure you want to discard the changes?"
msgstr ""
@@ -2391,16 +2435,11 @@ msgid "Assignment Days"
msgstr ""
#. Name of a DocType
-#. Label of the assignment_rule (Link) field in DocType 'ToDo'
-#: automation/doctype/assignment_rule/assignment_rule.json
-#: desk/doctype/todo/todo.json
-msgid "Assignment Rule"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
#. Label of a shortcut in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Assignment Rule"
+#. Label of the assignment_rule (Link) field in DocType 'ToDo'
+#: automation/doctype/assignment_rule/assignment_rule.json
+#: automation/workspace/tools/tools.json desk/doctype/todo/todo.json
msgid "Assignment Rule"
msgstr ""
@@ -2462,6 +2501,7 @@ msgstr ""
#: core/doctype/docfield/docfield.json
#: custom/doctype/custom_field/custom_field.json
#: custom/doctype/customize_form_field/customize_form_field.json
+#: public/js/form_builder/components/controls/AttachControl.vue:15
#: public/js/frappe/form/controls/attach.js:5
#: website/doctype/web_form_field/web_form_field.json
msgid "Attach"
@@ -2494,6 +2534,10 @@ msgstr ""
msgid "Attach Print"
msgstr ""
+#: public/js/frappe/file_uploader/WebLink.vue:10
+msgid "Attach a web link"
+msgstr ""
+
#: website/doctype/website_slideshow/website_slideshow.js:8
msgid "Attach files / urls and add in table."
msgstr ""
@@ -2597,6 +2641,11 @@ msgstr ""
msgid "Auth URL Data"
msgstr ""
+#. Label of the backend_app_flow (Check) field in DocType 'Email Account'
+#: email/doctype/email_account/email_account.json
+msgid "Authenticate as Service Principal"
+msgstr ""
+
#. Label of the authentication_column (Section Break) field in DocType 'Email
#. Account'
#. Label of the authentication_credential_section (Section Break) field in
@@ -2612,15 +2661,7 @@ msgstr ""
msgid "Authentication Apps you can use are: "
msgstr ""
-#: email/frappemail.py:89
-msgid "Authentication Error: Invalid API Key or Secret"
-msgstr ""
-
-#: email/frappemail.py:85
-msgid "Authentication Error: Reauthorize OAuth for Email Account {0}."
-msgstr ""
-
-#: email/doctype/email_account/email_account.py:328
+#: email/doctype/email_account/email_account.py:329
msgid "Authentication failed while receiving emails from Email Account: {0}."
msgstr ""
@@ -2709,14 +2750,10 @@ msgstr ""
msgid "Auto"
msgstr ""
-#. Name of a DocType
-#: email/doctype/auto_email_report/auto_email_report.json
-msgid "Auto Email Report"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
+#. Name of a DocType
#: automation/workspace/tools/tools.json
-msgctxt "Auto Email Report"
+#: email/doctype/auto_email_report/auto_email_report.json
msgid "Auto Email Report"
msgstr ""
@@ -2728,14 +2765,9 @@ msgid "Auto Name"
msgstr ""
#. Name of a DocType
-#: automation/doctype/auto_repeat/auto_repeat.json
-#: public/js/frappe/utils/common.js:442
-msgid "Auto Repeat"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Auto Repeat"
+#: automation/doctype/auto_repeat/auto_repeat.json
+#: automation/workspace/tools/tools.json public/js/frappe/utils/common.js:442
msgid "Auto Repeat"
msgstr ""
@@ -2834,11 +2866,11 @@ msgstr ""
msgid "Automatic"
msgstr ""
-#: email/doctype/email_account/email_account.py:766
+#: email/doctype/email_account/email_account.py:767
msgid "Automatic Linking can be activated only for one Email Account."
msgstr ""
-#: email/doctype/email_account/email_account.py:760
+#: email/doctype/email_account/email_account.py:761
msgid "Automatic Linking can be activated only if Incoming is enabled."
msgstr ""
@@ -2978,6 +3010,7 @@ msgstr ""
msgid "BCC"
msgstr ""
+#: public/js/frappe/file_uploader/ImageCropper.vue:31
#: public/js/frappe/widgets/onboarding_widget.js:181
msgid "Back"
msgstr ""
@@ -3008,19 +3041,15 @@ msgstr ""
msgid "Background Image"
msgstr ""
+#. Label of a Link in the Build Workspace
#. Label of the background_jobs_section (Section Break) field in DocType
#. 'System Health Report'
+#: core/workspace/build/build.json
#: desk/doctype/system_health_report/system_health_report.json
#: public/js/frappe/ui/toolbar/toolbar.js:178
msgid "Background Jobs"
msgstr ""
-#. Label of a Link in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "RQ Job"
-msgid "Background Jobs"
-msgstr ""
-
#. Label of the background_jobs_check (Data) field in DocType 'System Health
#. Report'
#: desk/doctype/system_health_report/system_health_report.json
@@ -3032,6 +3061,10 @@ msgstr ""
msgid "Background Jobs Queue"
msgstr ""
+#: public/js/frappe/list/bulk_operations.js:87
+msgid "Background Print (required for >25 documents)"
+msgstr ""
+
#. Label of the background_workers (Section Break) field in DocType 'System
#. Settings'
#. Label of the background_workers (Table) field in DocType 'System Health
@@ -3325,14 +3358,10 @@ msgstr ""
#. Name of a DocType
#. Label of the blog_category (Link) field in DocType 'Blog Post'
+#. Label of a Link in the Website Workspace
#: website/doctype/blog_category/blog_category.json
#: website/doctype/blog_post/blog_post.json
-msgid "Blog Category"
-msgstr ""
-
-#. Label of a Link in the Website Workspace
#: website/workspace/website/website.json
-msgctxt "Blog Category"
msgid "Blog Category"
msgstr ""
@@ -3347,14 +3376,10 @@ msgid "Blog Introduction"
msgstr ""
#. Name of a DocType
-#: website/doctype/blog_post/blog_post.json
-msgid "Blog Post"
-msgstr ""
-
#. Label of a Link in the Website Workspace
#. Label of a shortcut in the Website Workspace
+#: website/doctype/blog_post/blog_post.json
#: website/workspace/website/website.json
-msgctxt "Blog Post"
msgid "Blog Post"
msgstr ""
@@ -3371,17 +3396,12 @@ msgstr ""
#. Name of a role
#. Label of the blogger (Link) field in DocType 'Blog Post'
#. Name of a DocType
+#. Label of a Link in the Website Workspace
+#. Label of a shortcut in the Website Workspace
#: website/doctype/blog_category/blog_category.json
#: website/doctype/blog_post/blog_post.json
#: website/doctype/blog_settings/blog_settings.json
-#: website/doctype/blogger/blogger.json
-msgid "Blogger"
-msgstr ""
-
-#. Label of a Link in the Website Workspace
-#. Label of a shortcut in the Website Workspace
-#: website/workspace/website/website.json
-msgctxt "Blogger"
+#: website/doctype/blogger/blogger.json website/workspace/website/website.json
msgid "Blogger"
msgstr ""
@@ -3421,6 +3441,7 @@ msgstr ""
#. Option for the 'Position' (Select) field in DocType 'Form Tour Step'
#: desk/doctype/form_tour_step/form_tour_step.json
+#: public/js/print_format_builder/PrintFormatControls.vue:154
msgid "Bottom"
msgstr ""
@@ -3428,11 +3449,13 @@ msgstr ""
#. Option for the 'Page Number' (Select) field in DocType 'Print Format'
#: desk/doctype/form_tour_step/form_tour_step.json
#: printing/doctype/print_format/print_format.json
+#: public/js/print_format_builder/PrintFormatControls.vue:248
msgid "Bottom Center"
msgstr ""
#. Option for the 'Page Number' (Select) field in DocType 'Print Format'
#: printing/doctype/print_format/print_format.json
+#: public/js/print_format_builder/PrintFormatControls.vue:247
msgid "Bottom Left"
msgstr ""
@@ -3440,6 +3463,7 @@ msgstr ""
#. Option for the 'Page Number' (Select) field in DocType 'Print Format'
#: desk/doctype/form_tour_step/form_tour_step.json
#: printing/doctype/print_format/print_format.json
+#: public/js/print_format_builder/PrintFormatControls.vue:249
msgid "Bottom Right"
msgstr ""
@@ -3551,7 +3575,7 @@ msgstr ""
msgid "Bulk Delete"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:291
+#: public/js/frappe/list/bulk_operations.js:321
msgid "Bulk Edit"
msgstr ""
@@ -3567,18 +3591,14 @@ msgstr ""
msgid "Bulk Operation Successful"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:122
+#: public/js/frappe/list/bulk_operations.js:131
msgid "Bulk PDF Export"
msgstr ""
-#. Name of a DocType
-#: desk/doctype/bulk_update/bulk_update.json
-msgid "Bulk Update"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
+#. Name of a DocType
#: automation/workspace/tools/tools.json
-msgctxt "Bulk Update"
+#: desk/doctype/bulk_update/bulk_update.json
msgid "Bulk Update"
msgstr ""
@@ -3750,19 +3770,14 @@ msgstr ""
msgid "Calculate"
msgstr ""
+#. Label of a Link in the Tools Workspace
#. Option for the 'Select List View' (Select) field in DocType 'Form Tour'
#. Option for the 'DocType View' (Select) field in DocType 'Workspace Shortcut'
-#: desk/doctype/form_tour/form_tour.json
+#: automation/workspace/tools/tools.json desk/doctype/form_tour/form_tour.json
#: desk/doctype/workspace_shortcut/workspace_shortcut.json
msgid "Calendar"
msgstr ""
-#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Event"
-msgid "Calendar"
-msgstr ""
-
#. Label of the calendar_name (Data) field in DocType 'Google Calendar'
#: integrations/doctype/google_calendar/google_calendar.json
msgid "Calendar Name"
@@ -3805,6 +3820,7 @@ msgstr ""
msgid "Callback Title"
msgstr ""
+#: public/js/frappe/file_uploader/FileUploader.vue:150
#: public/js/frappe/ui/capture.js:334
msgid "Camera"
msgstr ""
@@ -3812,7 +3828,7 @@ msgstr ""
#. Label of the campaign (Link) field in DocType 'Newsletter'
#. Label of the campaign (Data) field in DocType 'Web Page View'
#: email/doctype/newsletter/newsletter.json
-#: public/js/frappe/utils/utils.js:1723
+#: public/js/frappe/utils/utils.js:1724
#: website/doctype/web_page_view/web_page_view.json
#: website/report/website_analytics/website_analytics.js:39
msgid "Campaign"
@@ -3963,7 +3979,7 @@ msgstr ""
msgid "Cannot cancel before submitting. See Transition {0}"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:264
+#: public/js/frappe/list/bulk_operations.js:294
msgid "Cannot cancel {0}."
msgstr ""
@@ -3991,7 +4007,7 @@ msgstr ""
msgid "Cannot create a {0} against a child document: {1}"
msgstr ""
-#: desk/doctype/workspace/workspace.py:250
+#: desk/doctype/workspace/workspace.py:254
msgid "Cannot create private workspace of other users"
msgstr ""
@@ -4003,11 +4019,11 @@ msgstr ""
msgid "Cannot delete or cancel because {0} {1} is linked with {2} {3} {4}"
msgstr ""
-#: desk/doctype/workspace/workspace.py:415
+#: desk/doctype/workspace/workspace.py:419
msgid "Cannot delete private workspace of other users"
msgstr ""
-#: desk/doctype/workspace/workspace.py:408
+#: desk/doctype/workspace/workspace.py:412
msgid "Cannot delete public workspace without Workspace Manager role"
msgstr ""
@@ -4023,6 +4039,13 @@ msgstr ""
msgid "Cannot delete standard field {0}. You can hide it instead."
msgstr ""
+#: public/js/form_builder/components/Field.vue:38
+#: public/js/form_builder/components/Section.vue:117
+#: public/js/form_builder/components/Section.vue:190
+#: public/js/form_builder/components/Tabs.vue:56
+msgid "Cannot delete standard field. You can hide it if you want"
+msgstr ""
+
#: custom/doctype/customize_form/customize_form.js:347
msgid "Cannot delete standard link. You can hide it if you want"
msgstr ""
@@ -4031,7 +4054,7 @@ msgstr ""
msgid "Cannot delete system generated field {0}. You can hide it instead."
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:185
+#: public/js/frappe/list/bulk_operations.js:215
msgid "Cannot delete {0}"
msgstr ""
@@ -4043,11 +4066,11 @@ msgstr ""
msgid "Cannot edit Standard Dashboards"
msgstr ""
-#: email/doctype/notification/notification.py:122
+#: email/doctype/notification/notification.py:183
msgid "Cannot edit Standard Notification. To edit, please disable this and duplicate it"
msgstr ""
-#: desk/doctype/dashboard_chart/dashboard_chart.py:377
+#: desk/doctype/dashboard_chart/dashboard_chart.py:387
msgid "Cannot edit Standard charts"
msgstr ""
@@ -4112,7 +4135,7 @@ msgstr ""
msgid "Cannot set 'Report' permission if 'Only If Creator' permission is set"
msgstr ""
-#: email/doctype/notification/notification.py:139
+#: email/doctype/notification/notification.py:200
msgid "Cannot set Notification with event {0} on Document Type {1}"
msgstr ""
@@ -4120,16 +4143,16 @@ msgstr ""
msgid "Cannot share {0} with submit permission as the doctype {1} is not submittable"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:261
+#: public/js/frappe/list/bulk_operations.js:291
msgid "Cannot submit {0}."
msgstr ""
-#: desk/doctype/workspace/workspace.py:349
+#: desk/doctype/workspace/workspace.py:353
msgid "Cannot update private workspace of other users"
msgstr ""
#: desk/doctype/bulk_update/bulk_update.js:26
-#: public/js/frappe/list/bulk_operations.js:336
+#: public/js/frappe/list/bulk_operations.js:366
msgid "Cannot update {0}"
msgstr ""
@@ -4141,7 +4164,7 @@ msgstr ""
msgid "Cannot use {0} in order/group by"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:267
+#: public/js/frappe/list/bulk_operations.js:297
msgid "Cannot {0} {1}."
msgstr ""
@@ -4228,11 +4251,20 @@ msgctxt "Coins"
msgid "Change"
msgstr ""
+#: public/js/print_format_builder/LetterHeadEditor.vue:38
+msgid "Change Image"
+msgstr ""
+
#. Label of the label (Data) field in DocType 'Customize Form'
#: custom/doctype/customize_form/customize_form.json
msgid "Change Label (via Custom Translation)"
msgstr ""
+#: public/js/print_format_builder/LetterHeadEditor.vue:45
+#: public/js/print_format_builder/LetterHeadEditor.vue:141
+msgid "Change Letter Head"
+msgstr ""
+
#. Label of the change_password (Section Break) field in DocType 'User'
#: core/doctype/user/user.json
msgid "Change Password"
@@ -4421,14 +4453,16 @@ msgstr ""
msgid "Choose Existing Card or create New Card"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:1399
+#: public/js/frappe/views/workspace/workspace.js:1426
msgid "Choose a block or continue typing"
msgstr ""
+#: public/js/form_builder/components/controls/DataControl.vue:18
#: public/js/frappe/form/controls/color.js:5
msgid "Choose a color"
msgstr ""
+#: public/js/form_builder/components/controls/DataControl.vue:21
#: public/js/frappe/form/controls/icon.js:5
msgid "Choose an icon"
msgstr ""
@@ -4516,6 +4550,10 @@ msgstr ""
msgid "Click on Authorize Google Drive Access to authorize Google Drive Access."
msgstr ""
+#: public/js/frappe/file_uploader/FileUploader.vue:499
+msgid "Click on a file to select it."
+msgstr ""
+
#: templates/emails/login_with_email_link.html:19
msgid "Click on the button to log in to {0}"
msgstr ""
@@ -4536,6 +4574,10 @@ msgstr ""
msgid "Click on the link below to verify your request"
msgstr ""
+#: public/js/frappe/file_uploader/FileUploader.vue:200
+msgid "Click on the lock icon to toggle public/private"
+msgstr ""
+
#: integrations/doctype/google_calendar/google_calendar.py:102
#: integrations/doctype/google_contacts/google_contacts.py:41
#: integrations/doctype/google_drive/google_drive.py:53
@@ -4609,9 +4651,12 @@ msgstr ""
msgid "Client Information"
msgstr ""
+#. Label of a Link in the Build Workspace
+#. Label of a shortcut in the Build Workspace
#. Name of a DocType
#. Label of the client_script (Code) field in DocType 'DocType Layout'
#. Label of the client_script (Code) field in DocType 'Web Form'
+#: core/workspace/build/build.json
#: custom/doctype/client_script/client_script.json
#: custom/doctype/doctype_layout/doctype_layout.json
#: website/doctype/web_form/web_form.json
@@ -4619,13 +4664,6 @@ msgstr ""
msgid "Client Script"
msgstr ""
-#. Label of a Link in the Build Workspace
-#. Label of a shortcut in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Client Script"
-msgid "Client Script"
-msgstr ""
-
#. Label of the client_secret (Password) field in DocType 'Connected App'
#. Label of the client_secret (Password) field in DocType 'Google Settings'
#. Label of the client_secret (Password) field in DocType 'Social Login Key'
@@ -4651,6 +4689,10 @@ msgstr ""
msgid "Close Condition"
msgstr ""
+#: public/js/form_builder/components/FieldProperties.vue:79
+msgid "Close properties"
+msgstr ""
+
#. Option for the 'Status' (Select) field in DocType 'Activity Log'
#. Option for the 'Status' (Select) field in DocType 'Communication'
#. Option for the 'Status' (Select) field in DocType 'Event'
@@ -4771,6 +4813,8 @@ msgstr ""
#. Label of the column (Data) field in DocType 'Recorder Suggested Index'
#: core/doctype/recorder_suggested_index/recorder_suggested_index.json
#: printing/page/print_format_builder/print_format_builder_column_selector.html:7
+#: public/js/form_builder/components/Section.vue:270
+#: public/js/print_format_builder/ConfigureColumns.vue:8
msgid "Column"
msgstr ""
@@ -4946,7 +4990,6 @@ msgstr ""
#. Label of a Link in the Build Workspace
#: core/workspace/build/build.json
-msgctxt "Communication"
msgid "Communication Logs"
msgstr ""
@@ -4999,7 +5042,7 @@ msgstr ""
msgid "Complete By"
msgstr ""
-#: core/doctype/user/user.py:432 templates/emails/new_user.html:10
+#: core/doctype/user/user.py:436 templates/emails/new_user.html:10
msgid "Complete Registration"
msgstr ""
@@ -5100,6 +5143,10 @@ msgstr ""
msgid "Configure Recorder"
msgstr ""
+#: public/js/print_format_builder/Field.vue:103
+msgid "Configure columns for {0}"
+msgstr ""
+
#. Description of the 'Amended Documents' (Section Break) field in DocType
#. 'Document Naming Settings'
#: core/doctype/document_naming_settings/document_naming_settings.json
@@ -5260,13 +5307,9 @@ msgid "Contact Us"
msgstr ""
#. Name of a DocType
-#: website/doctype/contact_us_settings/contact_us_settings.json
-msgid "Contact Us Settings"
-msgstr ""
-
#. Label of a Link in the Website Workspace
+#: website/doctype/contact_us_settings/contact_us_settings.json
#: website/workspace/website/website.json
-msgctxt "Contact Us Settings"
msgid "Contact Us Settings"
msgstr ""
@@ -5297,7 +5340,7 @@ msgstr ""
#: core/doctype/comment/comment.json desk/doctype/note/note.json
#: desk/doctype/workspace/workspace.json
#: email/doctype/newsletter/newsletter.json
-#: public/js/frappe/utils/utils.js:1738
+#: public/js/frappe/utils/utils.js:1739
#: website/doctype/blog_post/blog_post.json
#: website/doctype/help_article/help_article.json
#: website/doctype/web_page/web_page.json
@@ -5510,7 +5553,7 @@ msgstr ""
#: public/js/frappe/views/file/file_view.js:112
#: public/js/frappe/views/interaction.js:18
#: public/js/frappe/views/reports/query_report.js:1188
-#: public/js/frappe/views/workspace/workspace.js:1231
+#: public/js/frappe/views/workspace/workspace.js:1258
#: workflow/page/workflow_builder/workflow_builder.js:46
msgid "Create"
msgstr ""
@@ -5534,6 +5577,10 @@ msgstr ""
msgid "Create Chart"
msgstr ""
+#: public/js/form_builder/components/controls/TableControl.vue:62
+msgid "Create Child Doctype"
+msgstr ""
+
#. Label of the create_contact (Check) field in DocType 'Email Account'
#: email/doctype/email_account/email_account.json
msgid "Create Contacts from Incoming Emails"
@@ -5544,7 +5591,7 @@ msgstr ""
msgid "Create Custom Fields"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:939
+#: public/js/frappe/views/workspace/workspace.js:966
msgid "Create Duplicate"
msgstr ""
@@ -5553,6 +5600,11 @@ msgstr ""
msgid "Create Entry"
msgstr ""
+#: public/js/print_format_builder/LetterHeadEditor.vue:59
+#: public/js/print_format_builder/LetterHeadEditor.vue:195
+msgid "Create Letter Head"
+msgstr ""
+
#. Label of the create_log (Check) field in DocType 'Scheduled Job Type'
#: core/doctype/scheduled_job_type/scheduled_job_type.json
msgid "Create Log"
@@ -5581,10 +5633,6 @@ msgstr ""
msgid "Create User Email"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:479
-msgid "Create Workspace"
-msgstr ""
-
#: printing/page/print_format_builder/print_format_builder_start.html:16
msgid "Create a New Format"
msgstr ""
@@ -5703,6 +5751,10 @@ msgstr ""
msgid "Cron format is required for job types with Cron frequency."
msgstr ""
+#: public/js/frappe/file_uploader/ImageCropper.vue:34
+msgid "Crop"
+msgstr ""
+
#: public/js/frappe/form/grid_row_form.js:42
msgid "Ctrl + Down"
msgstr ""
@@ -5864,14 +5916,10 @@ msgstr ""
msgid "Custom Documents"
msgstr ""
-#. Name of a DocType
-#: custom/doctype/custom_field/custom_field.json
-msgid "Custom Field"
-msgstr ""
-
#. Label of a Link in the Build Workspace
+#. Name of a DocType
#: core/workspace/build/build.json
-msgctxt "Custom Field"
+#: custom/doctype/custom_field/custom_field.json
msgid "Custom Field"
msgstr ""
@@ -5915,6 +5963,7 @@ msgstr ""
#: printing/page/print_format_builder/print_format_builder.js:190
#: printing/page/print_format_builder/print_format_builder.js:720
+#: public/js/print_format_builder/PrintFormatControls.vue:192
msgid "Custom HTML"
msgstr ""
@@ -5981,7 +6030,6 @@ msgstr ""
#. Label of a Link in the Build Workspace
#: core/workspace/build/build.json
-msgctxt "Translation"
msgid "Custom Translation"
msgstr ""
@@ -6013,7 +6061,7 @@ msgstr ""
msgid "Customization onboarding is all done!"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:525
+#: public/js/frappe/views/workspace/workspace.js:552
msgid "Customizations Discarded"
msgstr ""
@@ -6045,18 +6093,13 @@ msgstr ""
msgid "Customize Dashboard"
msgstr ""
-#. Name of a DocType
-#: automation/doctype/auto_repeat/auto_repeat.js:33
-#: core/doctype/doctype/doctype.js:65
-#: custom/doctype/customize_form/customize_form.json
-#: public/js/frappe/views/kanban/kanban_view.js:343
-msgid "Customize Form"
-msgstr ""
-
#. Label of a Link in the Build Workspace
#. Label of a shortcut in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Customize Form"
+#. Name of a DocType
+#: automation/doctype/auto_repeat/auto_repeat.js:33
+#: core/doctype/doctype/doctype.js:65 core/workspace/build/build.json
+#: custom/doctype/customize_form/customize_form.json
+#: public/js/frappe/views/kanban/kanban_view.js:343
msgid "Customize Form"
msgstr ""
@@ -6179,35 +6222,27 @@ msgid "Dark Theme"
msgstr ""
#. Label of the dashboard (Check) field in DocType 'Role'
+#. Label of a Link in the Build Workspace
#. Name of a DocType
#. Option for the 'Select List View' (Select) field in DocType 'Form Tour'
#. Option for the 'Type' (Select) field in DocType 'Workspace Shortcut'
#. Option for the 'DocType View' (Select) field in DocType 'Workspace Shortcut'
#: core/doctype/role/role.json core/page/dashboard_view/dashboard_view.js:10
-#: desk/doctype/dashboard/dashboard.json desk/doctype/form_tour/form_tour.json
+#: core/workspace/build/build.json desk/doctype/dashboard/dashboard.json
+#: desk/doctype/form_tour/form_tour.json
#: desk/doctype/workspace_shortcut/workspace_shortcut.json
#: public/js/frappe/ui/toolbar/search_utils.js:562
msgid "Dashboard"
msgstr ""
#. Label of a Link in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Dashboard"
-msgid "Dashboard"
-msgstr ""
-
#. Name of a DocType
+#: core/workspace/build/build.json
#: desk/doctype/dashboard_chart/dashboard_chart.json
#: desk/doctype/dashboard_chart_source/dashboard_chart_source.js:8
msgid "Dashboard Chart"
msgstr ""
-#. Label of a Link in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Dashboard Chart"
-msgid "Dashboard Chart"
-msgstr ""
-
#. Name of a DocType
#: desk/doctype/dashboard_chart_field/dashboard_chart_field.json
msgid "Dashboard Chart Field"
@@ -6517,7 +6552,7 @@ msgstr ""
#. Label of the default_incoming (Check) field in DocType 'Email Account'
#: email/doctype/email_account/email_account.json
-#: email/doctype/email_account/email_account.py:217
+#: email/doctype/email_account/email_account.py:218
msgid "Default Incoming"
msgstr ""
@@ -6537,7 +6572,7 @@ msgstr ""
#. Label of the default_outgoing (Check) field in DocType 'Email Account'
#: email/doctype/email_account/email_account.json
-#: email/doctype/email_account/email_account.py:225
+#: email/doctype/email_account/email_account.py:226
msgid "Default Outgoing"
msgstr ""
@@ -6652,7 +6687,7 @@ msgstr ""
msgid "Defaults"
msgstr ""
-#: email/doctype/email_account/email_account.py:236
+#: email/doctype/email_account/email_account.py:237
msgid "Defaults Updated"
msgstr ""
@@ -6682,7 +6717,7 @@ msgstr ""
#: public/js/frappe/form/grid.js:63 public/js/frappe/form/toolbar.js:434
#: public/js/frappe/views/reports/report_view.js:1654
#: public/js/frappe/views/treeview.js:308
-#: public/js/frappe/views/workspace/workspace.js:837
+#: public/js/frappe/views/workspace/workspace.js:864
#: templates/discussions/reply_card.html:35
#: templates/discussions/reply_section.html:29
msgid "Delete"
@@ -6701,6 +6736,11 @@ msgstr ""
msgid "Delete All"
msgstr ""
+#: public/js/form_builder/components/Section.vue:196
+msgctxt "Title of confirmation dialog"
+msgid "Delete Column"
+msgstr ""
+
#: website/doctype/personal_data_deletion_request/personal_data_deletion_request.js:10
msgid "Delete Data"
msgstr ""
@@ -6709,7 +6749,17 @@ msgstr ""
msgid "Delete Kanban Board"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:838
+#: public/js/form_builder/components/Section.vue:125
+msgctxt "Title of confirmation dialog"
+msgid "Delete Section"
+msgstr ""
+
+#: public/js/form_builder/components/Tabs.vue:64
+msgctxt "Title of confirmation dialog"
+msgid "Delete Tab"
+msgstr ""
+
+#: public/js/frappe/views/workspace/workspace.js:865
msgid "Delete Workspace"
msgstr ""
@@ -6717,10 +6767,40 @@ msgstr ""
msgid "Delete and Generate New"
msgstr ""
+#: public/js/form_builder/components/Section.vue:203
+msgctxt "Button text"
+msgid "Delete column"
+msgstr ""
+
#: public/js/frappe/form/footer/form_timeline.js:721
msgid "Delete comment?"
msgstr ""
+#: public/js/form_builder/components/Section.vue:205
+msgctxt "Button text"
+msgid "Delete entire column with fields"
+msgstr ""
+
+#: public/js/form_builder/components/Section.vue:134
+msgctxt "Button text"
+msgid "Delete entire section with fields"
+msgstr ""
+
+#: public/js/form_builder/components/Tabs.vue:73
+msgctxt "Button text"
+msgid "Delete entire tab with fields"
+msgstr ""
+
+#: public/js/form_builder/components/Section.vue:132
+msgctxt "Button text"
+msgid "Delete section"
+msgstr ""
+
+#: public/js/form_builder/components/Tabs.vue:71
+msgctxt "Button text"
+msgid "Delete tab"
+msgstr ""
+
#: email/doctype/email_unsubscribe/email_unsubscribe.py:29
msgid "Delete this record to allow sending to this email address"
msgstr ""
@@ -6760,7 +6840,6 @@ msgstr ""
#. Label of a Link in the Tools Workspace
#: automation/workspace/tools/tools.json
-msgctxt "Deleted Document"
msgid "Deleted Documents"
msgstr ""
@@ -6777,7 +6856,7 @@ msgstr ""
msgid "Deleting {0}"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:172
+#: public/js/frappe/list/bulk_operations.js:202
msgid "Deleting {0} records..."
msgstr ""
@@ -6968,6 +7047,7 @@ msgstr ""
#: custom/doctype/customize_form/customize_form.json
#: desk/doctype/event/event.json
#: desk/page/user_profile/user_profile_sidebar.html:45
+#: public/js/form_builder/components/Tabs.vue:92
#: public/js/form_builder/store.js:259 public/js/form_builder/utils.js:38
#: public/js/frappe/form/layout.js:137 public/js/frappe/views/treeview.js:271
msgid "Details"
@@ -7117,14 +7197,14 @@ msgstr ""
msgid "Disabled"
msgstr ""
-#: email/doctype/email_account/email_account.js:261
+#: email/doctype/email_account/email_account.js:265
msgid "Disabled Auto Reply"
msgstr ""
#: public/js/frappe/form/toolbar.js:316
#: public/js/frappe/views/communication.js:30
#: public/js/frappe/views/dashboard/dashboard_view.js:70
-#: public/js/frappe/views/workspace/workspace.js:516
+#: public/js/frappe/views/workspace/workspace.js:543
#: public/js/frappe/web_form/web_form.js:187
msgid "Discard"
msgstr ""
@@ -7189,6 +7269,10 @@ msgstr ""
msgid "Display Depends On (JS)"
msgstr ""
+#: public/js/print_format_builder/PrintFormatControls.vue:210
+msgid "Divider"
+msgstr ""
+
#. Label of the do_not_create_new_user (Check) field in DocType 'LDAP Settings'
#: integrations/doctype/ldap_settings/ldap_settings.json
msgid "Do Not Create New User "
@@ -7263,6 +7347,8 @@ msgstr ""
#. Group in Module Def's connections
#. Label of the ref_doctype (Link) field in DocType 'Permission Inspector'
#. Label of the ref_doctype (Link) field in DocType 'Version'
+#. Label of a Link in the Build Workspace
+#. Label of a shortcut in the Build Workspace
#. Label of the dt (Link) field in DocType 'Client Script'
#. Label of the dt (Link) field in DocType 'Custom Field'
#. Option for the 'Applied On' (Select) field in DocType 'Property Setter'
@@ -7279,6 +7365,7 @@ msgstr ""
#: core/doctype/permission_inspector/permission_inspector.json
#: core/doctype/version/version.json
#: core/report/permitted_documents_for_user/permitted_documents_for_user.js:15
+#: core/workspace/build/build.json
#: custom/doctype/client_script/client_script.json
#: custom/doctype/custom_field/custom_field.json
#: custom/doctype/property_setter/property_setter.json
@@ -7292,13 +7379,6 @@ msgstr ""
msgid "DocType"
msgstr ""
-#. Label of a Link in the Build Workspace
-#. Label of a shortcut in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "DocType"
-msgid "DocType"
-msgstr ""
-
#: core/doctype/doctype/doctype.py:1546
msgid "DocType {0} provided for the field {1} must have atleast one Link field"
msgstr ""
@@ -7418,7 +7498,7 @@ msgstr ""
msgid "Doctype required"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:1317
+#: public/js/frappe/views/workspace/workspace.js:1344
msgid "Doctype with same route already exist. Please choose different title."
msgstr ""
@@ -7432,6 +7512,7 @@ msgstr ""
#: core/doctype/audit_trail/audit_trail.json core/doctype/doctype/doctype.json
#: core/doctype/permission_inspector/permission_inspector.json
#: desk/doctype/notification_subscribed_document/notification_subscribed_document.json
+#: public/js/frappe/views/render_preview.js:42
msgid "Document"
msgstr ""
@@ -7710,7 +7791,7 @@ msgstr ""
msgid "Document renaming from {0} to {1} has been queued"
msgstr ""
-#: desk/doctype/dashboard_chart/dashboard_chart.py:386
+#: desk/doctype/dashboard_chart/dashboard_chart.py:396
msgid "Document type is required to create a dashboard chart"
msgstr ""
@@ -7815,6 +7896,8 @@ msgstr ""
#: public/js/frappe/form/form_tour.js:16 public/js/frappe/ui/messages.js:231
#: public/js/onboarding_tours/onboarding_tours.js:17
+#: public/js/print_format_builder/HTMLEditor.vue:5
+#: public/js/print_format_builder/LetterHeadEditor.vue:52
msgid "Done"
msgstr ""
@@ -7823,6 +7906,10 @@ msgstr ""
msgid "Donut"
msgstr ""
+#: public/js/form_builder/components/EditableInput.vue:43
+msgid "Double click to edit label"
+msgstr ""
+
#: core/doctype/file/file.js:5
#: email/doctype/auto_email_report/auto_email_report.js:8
#: public/js/frappe/form/grid.js:63
@@ -7851,7 +7938,7 @@ msgstr ""
msgid "Download Link"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:125
+#: public/js/frappe/list/bulk_operations.js:134
msgid "Download PDF"
msgstr ""
@@ -7886,15 +7973,35 @@ msgstr ""
#: public/js/frappe/views/workspace/blocks/header.js:46
#: public/js/frappe/views/workspace/blocks/paragraph.js:136
#: public/js/frappe/views/workspace/blocks/spacer.js:44
-#: public/js/frappe/views/workspace/workspace.js:579
+#: public/js/frappe/views/workspace/workspace.js:606
#: public/js/frappe/widgets/base_widget.js:33
msgid "Drag"
msgstr ""
+#: public/js/form_builder/components/Tabs.vue:189
+msgid "Drag & Drop a section here from another tab"
+msgstr ""
+
+#: public/js/frappe/file_uploader/FileUploader.vue:14
+msgid "Drag and drop files here or upload from"
+msgstr ""
+
+#: public/js/print_format_builder/ConfigureColumns.vue:76
+msgid "Drag columns to set order. Column width is set in percentage. The total width should not be more than 100. Columns marked in red will be removed."
+msgstr ""
+
#: printing/page/print_format_builder/print_format_builder_layout.html:3
msgid "Drag elements from the sidebar to add. Drag them back to trash."
msgstr ""
+#: public/js/workflow_builder/WorkflowBuilder.vue:296
+msgid "Drag to add state"
+msgstr ""
+
+#: public/js/frappe/file_uploader/FileUploader.vue:172
+msgid "Drop files here"
+msgstr ""
+
#. Label of the dropbox_access_token (Password) field in DocType 'Dropbox
#. Settings'
#: integrations/doctype/dropbox_settings/dropbox_settings.json
@@ -7908,13 +8015,9 @@ msgid "Dropbox Refresh Token"
msgstr ""
#. Name of a DocType
-#: integrations/doctype/dropbox_settings/dropbox_settings.json
-msgid "Dropbox Settings"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/dropbox_settings/dropbox_settings.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "Dropbox Settings"
msgid "Dropbox Settings"
msgstr ""
@@ -7940,8 +8043,8 @@ msgstr ""
#: public/js/frappe/form/grid_row_form.js:42
#: public/js/frappe/form/toolbar.js:388
-#: public/js/frappe/views/workspace/workspace.js:822
-#: public/js/frappe/views/workspace/workspace.js:989
+#: public/js/frappe/views/workspace/workspace.js:849
+#: public/js/frappe/views/workspace/workspace.js:1016
msgid "Duplicate"
msgstr ""
@@ -7957,8 +8060,8 @@ msgstr ""
msgid "Duplicate Name"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:561
-#: public/js/frappe/views/workspace/workspace.js:823
+#: public/js/frappe/views/workspace/workspace.js:588
+#: public/js/frappe/views/workspace/workspace.js:850
msgid "Duplicate Workspace"
msgstr ""
@@ -7966,7 +8069,11 @@ msgstr ""
msgid "Duplicate current row"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:1004
+#: public/js/form_builder/components/Field.vue:245
+msgid "Duplicate field"
+msgstr ""
+
+#: public/js/frappe/views/workspace/workspace.js:1031
msgid "Duplicate of {0} named as {1} is created successfully"
msgstr ""
@@ -8059,8 +8166,8 @@ msgstr ""
#: public/js/frappe/form/toolbar.js:681
#: public/js/frappe/views/reports/query_report.js:815
#: public/js/frappe/views/reports/query_report.js:1634
-#: public/js/frappe/views/workspace/workspace.js:460
-#: public/js/frappe/views/workspace/workspace.js:816
+#: public/js/frappe/views/workspace/workspace.js:95
+#: public/js/frappe/views/workspace/workspace.js:843
#: public/js/frappe/widgets/base_widget.js:64
#: public/js/frappe/widgets/chart_widget.js:299
#: public/js/frappe/widgets/number_card_widget.js:331
@@ -8115,6 +8222,10 @@ msgstr ""
msgid "Edit Filters"
msgstr ""
+#: public/js/print_format_builder/PrintFormat.vue:29
+msgid "Edit Footer"
+msgstr ""
+
#: printing/doctype/print_format/print_format.js:28
msgid "Edit Format"
msgstr ""
@@ -8124,14 +8235,27 @@ msgid "Edit Full Form"
msgstr ""
#: printing/page/print_format_builder/print_format_builder_field.html:26
+#: public/js/print_format_builder/Field.vue:83
msgid "Edit HTML"
msgstr ""
+#: public/js/print_format_builder/PrintFormat.vue:9
+msgid "Edit Header"
+msgstr ""
+
#: printing/page/print_format_builder/print_format_builder.js:602
#: printing/page/print_format_builder/print_format_builder_layout.html:8
msgid "Edit Heading"
msgstr ""
+#: public/js/print_format_builder/LetterHeadEditor.vue:52
+msgid "Edit Letter Head"
+msgstr ""
+
+#: public/js/print_format_builder/PrintFormat.vue:35
+msgid "Edit Letter Head Footer"
+msgstr ""
+
#: public/js/frappe/widgets/widget_dialog.js:42
msgid "Edit Links"
msgstr ""
@@ -8181,7 +8305,7 @@ msgstr ""
msgid "Edit Values"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:817
+#: public/js/frappe/views/workspace/workspace.js:844
msgid "Edit Workspace"
msgstr ""
@@ -8189,6 +8313,10 @@ msgstr ""
msgid "Edit mode"
msgstr ""
+#: public/js/form_builder/components/Field.vue:254
+msgid "Edit the {0} Doctype"
+msgstr ""
+
#: printing/page/print_format_builder/print_format_builder.js:713
msgid "Edit to add content"
msgstr ""
@@ -8274,12 +8402,14 @@ msgstr ""
msgid "Email"
msgstr ""
+#. Label of a Link in the Tools Workspace
#. Label of the email_account (Link) field in DocType 'Communication'
#. Label of the email_account (Link) field in DocType 'User Email'
#. Name of a DocType
#. Label of the email_account (Data) field in DocType 'Email Flag Queue'
#. Label of the email_account (Link) field in DocType 'Email Queue'
#. Label of the email_account (Link) field in DocType 'Unhandled Email'
+#: automation/workspace/tools/tools.json
#: core/doctype/communication/communication.js:199
#: core/doctype/communication/communication.json
#: core/doctype/user_email/user_email.json
@@ -8290,13 +8420,7 @@ msgstr ""
msgid "Email Account"
msgstr ""
-#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Email Account"
-msgid "Email Account"
-msgstr ""
-
-#: email/doctype/email_account/email_account.py:332
+#: email/doctype/email_account/email_account.py:333
msgid "Email Account Disabled."
msgstr ""
@@ -8305,7 +8429,7 @@ msgstr ""
msgid "Email Account Name"
msgstr ""
-#: core/doctype/user/user.py:705
+#: core/doctype/user/user.py:709
msgid "Email Account added multiple times"
msgstr ""
@@ -8334,14 +8458,10 @@ msgstr ""
msgid "Email Addresses"
msgstr ""
-#. Name of a DocType
-#: email/doctype/email_domain/email_domain.json
-msgid "Email Domain"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
+#. Name of a DocType
#: automation/workspace/tools/tools.json
-msgctxt "Email Domain"
+#: email/doctype/email_domain/email_domain.json
msgid "Email Domain"
msgstr ""
@@ -8356,21 +8476,17 @@ msgstr ""
msgid "Email Footer Address"
msgstr ""
+#. Label of a Link in the Tools Workspace
#. Name of a DocType
#. Label of the email_group (Link) field in DocType 'Email Group Member'
#. Label of the email_group (Link) field in DocType 'Newsletter Email Group'
+#: automation/workspace/tools/tools.json
#: email/doctype/email_group/email_group.json
#: email/doctype/email_group_member/email_group_member.json
#: email/doctype/newsletter_email_group/newsletter_email_group.json
msgid "Email Group"
msgstr ""
-#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Email Group"
-msgid "Email Group"
-msgstr ""
-
#. Name of a DocType
#: email/doctype/email_group_member/email_group_member.json
msgid "Email Group Member"
@@ -8475,20 +8591,16 @@ msgstr ""
msgid "Email Sync Option"
msgstr ""
+#. Label of a Link in the Tools Workspace
#. Label of the email_template (Link) field in DocType 'Communication'
#. Name of a DocType
+#: automation/workspace/tools/tools.json
#: core/doctype/communication/communication.json
#: email/doctype/email_template/email_template.json
#: public/js/frappe/views/communication.js:95
msgid "Email Template"
msgstr ""
-#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Email Template"
-msgid "Email Template"
-msgstr ""
-
#. Label of the enable_email_threads_on_assigned_document (Check) field in
#. DocType 'Notification Settings'
#: desk/doctype/notification_settings/notification_settings.json
@@ -8540,6 +8652,10 @@ msgstr ""
msgid "Embed code copied"
msgstr ""
+#: public/js/form_builder/components/Section.vue:285
+msgid "Empty column"
+msgstr ""
+
#. Label of the enable (Check) field in DocType 'Google Calendar'
#. Label of the enable (Check) field in DocType 'Google Contacts'
#. Label of the enable (Check) field in DocType 'Google Drive'
@@ -8601,7 +8717,7 @@ msgstr ""
#. Label of the enable_incoming (Check) field in DocType 'Email Account'
#: email/doctype/email_account/email_account.json
-#: email/doctype/email_account/email_account.py:218
+#: email/doctype/email_account/email_account.py:219
msgid "Enable Incoming"
msgstr ""
@@ -8614,7 +8730,7 @@ msgstr ""
#. Label of the enable_outgoing (Check) field in DocType 'Email Account'
#: core/doctype/user_email/user_email.json
#: email/doctype/email_account/email_account.json
-#: email/doctype/email_account/email_account.py:226
+#: email/doctype/email_account/email_account.py:227
msgid "Enable Outgoing"
msgstr ""
@@ -8755,7 +8871,7 @@ msgstr ""
msgid "Enabled Scheduler"
msgstr ""
-#: email/doctype/email_account/email_account.py:987
+#: email/doctype/email_account/email_account.py:995
msgid "Enabled email inbox for user {0}"
msgstr ""
@@ -8768,7 +8884,7 @@ msgstr ""
msgid "Enables Calendar and Gantt views."
msgstr ""
-#: email/doctype/email_account/email_account.js:256
+#: email/doctype/email_account/email_account.js:260
msgid "Enabling auto reply on an incoming email account will send automated replies to all the synchronized emails. Do you wish to continue?"
msgstr ""
@@ -9003,7 +9119,6 @@ msgstr ""
#. Label of a Link in the Build Workspace
#: core/workspace/build/build.json
-msgctxt "Error Log"
msgid "Error Logs"
msgstr ""
@@ -9040,9 +9155,9 @@ msgstr ""
msgid "Error in Header/Footer Script"
msgstr ""
-#: email/doctype/notification/notification.py:443
-#: email/doctype/notification/notification.py:559
-#: email/doctype/notification/notification.py:565
+#: email/doctype/notification/notification.py:504
+#: email/doctype/notification/notification.py:620
+#: email/doctype/notification/notification.py:626
msgid "Error in Notification"
msgstr ""
@@ -9050,11 +9165,11 @@ msgstr ""
msgid "Error in print format on line {0}: {1}"
msgstr ""
-#: email/doctype/email_account/email_account.py:664
+#: email/doctype/email_account/email_account.py:665
msgid "Error while connecting to email account {0}"
msgstr ""
-#: email/doctype/notification/notification.py:556
+#: email/doctype/notification/notification.py:617
msgid "Error while evaluating Notification {0}. Please fix your template."
msgstr ""
@@ -9309,13 +9424,9 @@ msgstr ""
msgid "Export Customizations"
msgstr ""
-#: public/js/frappe/data_import/data_exporter.js:14
-msgid "Export Data"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
#: automation/workspace/tools/tools.json
-msgctxt "Data Export"
+#: public/js/frappe/data_import/data_exporter.js:14
msgid "Export Data"
msgstr ""
@@ -9491,6 +9602,7 @@ msgstr ""
msgid "Failed to enable scheduler: {0}"
msgstr ""
+#: email/doctype/notification/notification.py:103
#: integrations/doctype/webhook/webhook.py:139
msgid "Failed to evaluate conditions: {}"
msgstr ""
@@ -9523,7 +9635,15 @@ msgstr ""
msgid "Failed to optimize image: {0}"
msgstr ""
-#: email/doctype/email_queue/email_queue.py:294
+#: email/doctype/notification/notification.py:120
+msgid "Failed to render message: {}"
+msgstr ""
+
+#: email/doctype/notification/notification.py:138
+msgid "Failed to render subject: {}"
+msgstr ""
+
+#: email/doctype/email_queue/email_queue.py:301
msgid "Failed to send email with subject:"
msgstr ""
@@ -9587,6 +9707,8 @@ msgstr ""
#: core/doctype/docfield/docfield.json
#: custom/doctype/custom_field/custom_field.json
#: custom/doctype/customize_form_field/customize_form_field.json
+#: public/js/form_builder/components/controls/FetchFromControl.vue:29
+#: public/js/form_builder/components/controls/FetchFromControl.vue:34
msgid "Fetch From"
msgstr ""
@@ -9625,7 +9747,7 @@ msgstr ""
#: desk/doctype/number_card/number_card.json
#: desk/doctype/onboarding_step/onboarding_step.json
#: desk/page/leaderboard/leaderboard.js:131
-#: public/js/frappe/list/bulk_operations.js:297
+#: public/js/frappe/list/bulk_operations.js:327
#: public/js/frappe/list/list_view_permission_restrictions.html:3
#: public/js/frappe/views/reports/query_report.js:236
#: public/js/frappe/views/reports/query_report.js:1723
@@ -9662,6 +9784,15 @@ msgstr ""
msgid "Field Name"
msgstr ""
+#: public/js/print_format_builder/PrintFormatSection.vue:141
+msgid "Field Orientation (Left-Right)"
+msgstr ""
+
+#: public/js/print_format_builder/PrintFormatSection.vue:148
+msgid "Field Orientation (Top-Down)"
+msgstr ""
+
+#: public/js/print_format_builder/PrintFormatControls.vue:233
#: public/js/print_format_builder/utils.js:69
msgid "Field Template"
msgstr ""
@@ -9707,7 +9838,7 @@ msgstr ""
msgid "Field {0} not found."
msgstr ""
-#: email/doctype/notification/notification.py:348
+#: email/doctype/notification/notification.py:409
msgid "Field {0} on document {1} is neither a Mobile number field nor a Customer or User link"
msgstr ""
@@ -9785,6 +9916,7 @@ msgstr ""
#: desk/doctype/list_view_settings/list_view_settings.json
#: public/js/frappe/list/list_settings.js:132
#: public/js/frappe/views/kanban/kanban_settings.js:111
+#: public/js/print_format_builder/PrintFormatControls.vue:83
#: website/doctype/personal_data_deletion_step/personal_data_deletion_step.json
#: website/doctype/web_template/web_template.json
msgid "Fields"
@@ -9831,16 +9963,16 @@ msgstr ""
msgid "Fieldtype cannot be changed from {0} to {1} in row {2}"
msgstr ""
+#. Label of a shortcut in the Tools Workspace
#. Name of a DocType
#. Option for the 'Select List View' (Select) field in DocType 'Form Tour'
-#: core/doctype/file/file.json desk/doctype/form_tour/form_tour.json
+#: automation/workspace/tools/tools.json core/doctype/file/file.json
+#: desk/doctype/form_tour/form_tour.json
msgid "File"
msgstr ""
-#. Label of a shortcut in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "File"
-msgid "File"
+#: public/js/frappe/file_uploader/FileUploader.vue:459
+msgid "File \"{0}\" was skipped because of invalid file type"
msgstr ""
#: core/doctype/file/utils.py:128
@@ -9923,14 +10055,10 @@ msgstr ""
msgid "File {0} does not exist"
msgstr ""
-#. Label of the files_tab (Tab Break) field in DocType 'System Settings'
-#: core/doctype/system_settings/system_settings.json
-msgid "Files"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
+#. Label of the files_tab (Tab Break) field in DocType 'System Settings'
#: automation/workspace/tools/tools.json
-msgctxt "File"
+#: core/doctype/system_settings/system_settings.json
msgid "Files"
msgstr ""
@@ -9940,7 +10068,7 @@ msgstr ""
#: desk/doctype/number_card/number_card.js:205
#: desk/doctype/number_card/number_card.js:336
#: email/doctype/auto_email_report/auto_email_report.js:90
-#: public/js/frappe/list/base_list.js:890
+#: public/js/frappe/list/base_list.js:887
#: public/js/frappe/ui/filters/filter_list.js:134
#: website/doctype/web_form/web_form.js:197
msgid "Filter"
@@ -10120,6 +10248,10 @@ msgstr ""
msgid "First set the name and save the record."
msgstr ""
+#: public/js/workflow_builder/WorkflowBuilder.vue:304
+msgid "Fit"
+msgstr ""
+
#. Label of the flag (Data) field in DocType 'Language'
#: core/doctype/language/language.json
msgid "Flag"
@@ -10237,6 +10369,7 @@ msgstr ""
#. Label of the font_size (Data) field in DocType 'Website Theme'
#: printing/doctype/print_format/print_format.json
#: printing/doctype/print_settings/print_settings.json
+#: public/js/print_format_builder/PrintFormatControls.vue:45
#: website/doctype/website_theme/website_theme.json
msgid "Font Size"
msgstr ""
@@ -10570,11 +10703,11 @@ msgid "Frappe Light"
msgstr ""
#. Option for the 'Service' (Select) field in DocType 'Email Account'
-#: email/doctype/email_account/email_account.json email/frappemail.py:91
+#: email/doctype/email_account/email_account.json
msgid "Frappe Mail"
msgstr ""
-#: email/doctype/email_account/email_account.py:538
+#: email/doctype/email_account/email_account.py:539
msgid "Frappe Mail OAuth Error"
msgstr ""
@@ -10593,6 +10726,11 @@ msgstr ""
msgid "Frappe page builder using components"
msgstr ""
+#: public/js/frappe/file_uploader/ImageCropper.vue:112
+msgctxt "Image Cropper"
+msgid "Free"
+msgstr ""
+
#. Label of the frequency (Select) field in DocType 'Auto Repeat'
#. Label of the frequency (Select) field in DocType 'Scheduled Job Type'
#. Label of the document_follow_frequency (Select) field in DocType 'User'
@@ -10769,12 +10907,12 @@ msgstr ""
msgid "Generate New Report"
msgstr ""
-#: public/js/frappe/ui/toolbar/awesome_bar.js:368
+#: public/js/frappe/ui/toolbar/awesome_bar.js:391
msgid "Generate Random Password"
msgstr ""
#: public/js/frappe/ui/toolbar/toolbar.js:172
-#: public/js/frappe/utils/utils.js:1772
+#: public/js/frappe/utils/utils.js:1773
msgid "Generate Tracking URL"
msgstr ""
@@ -10787,7 +10925,7 @@ msgstr ""
msgid "Geolocation"
msgstr ""
-#: email/doctype/notification/notification.js:193
+#: email/doctype/notification/notification.js:205
msgid "Get Alerts for Today"
msgstr ""
@@ -10970,14 +11108,10 @@ msgstr ""
#. Label of the google_calendar (Link) field in DocType 'Event'
#. Name of a DocType
#. Label of the sb_00 (Section Break) field in DocType 'Google Calendar'
+#. Label of a Link in the Integrations Workspace
#: desk/doctype/event/event.json
#: integrations/doctype/google_calendar/google_calendar.json
-msgid "Google Calendar"
-msgstr ""
-
-#. Label of a Link in the Integrations Workspace
#: integrations/workspace/integrations/integrations.json
-msgctxt "Google Calendar"
msgid "Google Calendar"
msgstr ""
@@ -11029,14 +11163,10 @@ msgstr ""
#. Label of the google_contacts (Link) field in DocType 'Contact'
#. Name of a DocType
#. Label of the sb_00 (Section Break) field in DocType 'Google Contacts'
+#. Label of a Link in the Integrations Workspace
#: contacts/doctype/contact/contact.json
#: integrations/doctype/google_contacts/google_contacts.json
-msgid "Google Contacts"
-msgstr ""
-
-#. Label of a Link in the Integrations Workspace
#: integrations/workspace/integrations/integrations.json
-msgctxt "Google Contacts"
msgid "Google Contacts"
msgstr ""
@@ -11056,13 +11186,10 @@ msgstr ""
#. Name of a DocType
#. Label of the google_drive_section (Section Break) field in DocType 'Google
#. Drive'
-#: integrations/doctype/google_drive/google_drive.json
-msgid "Google Drive"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/google_drive/google_drive.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "Google Drive"
+#: public/js/frappe/file_uploader/FileUploader.vue:164
msgid "Google Drive"
msgstr ""
@@ -11097,6 +11224,7 @@ msgstr ""
#. Label of the font (Data) field in DocType 'Print Format'
#. Label of the google_font (Data) field in DocType 'Website Theme'
#: printing/doctype/print_format/print_format.json
+#: public/js/print_format_builder/PrintFormatControls.vue:28
#: website/doctype/website_theme/website_theme.json
msgid "Google Font"
msgstr ""
@@ -11112,13 +11240,9 @@ msgid "Google Services"
msgstr ""
#. Name of a DocType
-#: integrations/doctype/google_settings/google_settings.json
-msgid "Google Settings"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/google_settings/google_settings.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "Google Settings"
msgid "Google Settings"
msgstr ""
@@ -11159,6 +11283,10 @@ msgstr ""
msgid "Green"
msgstr ""
+#: public/js/form_builder/components/controls/TableControl.vue:53
+msgid "Grid Empty State"
+msgstr ""
+
#: public/js/frappe/ui/keyboard.js:126
msgid "Grid Shortcuts"
msgstr ""
@@ -11188,7 +11316,7 @@ msgstr ""
msgid "Group By Type"
msgstr ""
-#: desk/doctype/dashboard_chart/dashboard_chart.py:397
+#: desk/doctype/dashboard_chart/dashboard_chart.py:407
msgid "Group By field is required to create a dashboard chart"
msgstr ""
@@ -11250,6 +11378,7 @@ msgstr ""
#: printing/doctype/letter_head/letter_head.json
#: printing/doctype/print_format/print_format.json
#: printing/doctype/print_format/print_format.py:91
+#: public/js/print_format_builder/Field.vue:86
#: website/doctype/blog_post/blog_post.json
#: website/doctype/web_form_field/web_form_field.json
#: website/doctype/web_page/web_page.js:92
@@ -11413,13 +11542,9 @@ msgid "Help"
msgstr ""
#. Name of a DocType
-#: website/doctype/help_article/help_article.json
-msgid "Help Article"
-msgstr ""
-
#. Label of a Link in the Website Workspace
+#: website/doctype/help_article/help_article.json
#: website/workspace/website/website.json
-msgctxt "Help Article"
msgid "Help Article"
msgstr ""
@@ -11429,13 +11554,9 @@ msgid "Help Articles"
msgstr ""
#. Name of a DocType
-#: website/doctype/help_category/help_category.json
-msgid "Help Category"
-msgstr ""
-
#. Label of a Link in the Website Workspace
+#: website/doctype/help_category/help_category.json
#: website/workspace/website/website.json
-msgctxt "Help Category"
msgid "Help Category"
msgstr ""
@@ -11474,7 +11595,7 @@ msgstr ""
msgid "Helvetica Neue"
msgstr ""
-#: public/js/frappe/utils/utils.js:1769
+#: public/js/frappe/utils/utils.js:1770
msgid "Here's your tracking URL"
msgstr ""
@@ -11512,9 +11633,10 @@ msgstr ""
#. Option for the 'Page Number' (Select) field in DocType 'Print Format'
#: printing/doctype/print_format/print_format.json
-#: public/js/frappe/views/workspace/workspace.js:828
+#: public/js/frappe/views/workspace/workspace.js:855
#: public/js/frappe/widgets/base_widget.js:46
#: public/js/frappe/widgets/base_widget.js:178
+#: public/js/print_format_builder/PrintFormatControls.vue:243
#: templates/includes/login/login.js:82
msgid "Hide"
msgstr ""
@@ -11620,7 +11742,7 @@ msgstr ""
msgid "Hide Weekends"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:829
+#: public/js/frappe/views/workspace/workspace.js:856
msgid "Hide Workspace"
msgstr ""
@@ -11665,6 +11787,7 @@ msgid "Hint: Include symbols, numbers and capital letters in the password"
msgstr ""
#. Label of the home_tab (Tab Break) field in DocType 'Website Settings'
+#: public/js/frappe/file_uploader/FileBrowser.vue:38
#: public/js/frappe/views/file/file_view.js:67
#: public/js/frappe/views/file/file_view.js:88
#: public/js/frappe/views/pageview.js:153 templates/doc.html:19
@@ -11747,6 +11870,10 @@ msgctxt "Label of name column in report"
msgid "ID"
msgstr ""
+#: public/js/print_format_builder/PrintFormatControls.vue:199
+msgid "ID (name)"
+msgstr ""
+
#. Description of the 'Field Name' (Data) field in DocType 'Property Setter'
#: custom/doctype/property_setter/property_setter.json
msgid "ID (name) of the entity whose property is to be set"
@@ -11797,9 +11924,9 @@ msgstr ""
#: desk/doctype/workspace_link/workspace_link.json
#: desk/doctype/workspace_shortcut/workspace_shortcut.json
#: integrations/doctype/social_login_key/social_login_key.json
-#: public/js/frappe/views/workspace/workspace.js:646
-#: public/js/frappe/views/workspace/workspace.js:974
-#: public/js/frappe/views/workspace/workspace.js:1219
+#: public/js/frappe/views/workspace/workspace.js:673
+#: public/js/frappe/views/workspace/workspace.js:1001
+#: public/js/frappe/views/workspace/workspace.js:1246
#: workflow/doctype/workflow_state/workflow_state.json
msgid "Icon"
msgstr ""
@@ -12156,7 +12283,7 @@ msgstr ""
msgid "Impersonate as {0}"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:233
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:246
msgid "Impersonated by {0}"
msgstr ""
@@ -12189,7 +12316,6 @@ msgstr ""
#. Label of a Link in the Tools Workspace
#. Label of a shortcut in the Tools Workspace
#: automation/workspace/tools/tools.json
-msgctxt "Data Import"
msgid "Import Data"
msgstr ""
@@ -12536,9 +12662,9 @@ msgstr ""
msgid "Indicator Color"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:653
-#: public/js/frappe/views/workspace/workspace.js:981
-#: public/js/frappe/views/workspace/workspace.js:1225
+#: public/js/frappe/views/workspace/workspace.js:680
+#: public/js/frappe/views/workspace/workspace.js:1008
+#: public/js/frappe/views/workspace/workspace.js:1252
msgid "Indicator color"
msgstr ""
@@ -12870,11 +12996,11 @@ msgstr ""
msgid "Invalid Override"
msgstr ""
-#: integrations/doctype/connected_app/connected_app.py:167
+#: integrations/doctype/connected_app/connected_app.py:191
msgid "Invalid Parameters."
msgstr ""
-#: core/doctype/user/user.py:1191 www/update-password.html:121
+#: core/doctype/user/user.py:1195 www/update-password.html:121
#: www/update-password.html:142 www/update-password.html:144
#: www/update-password.html:245
msgid "Invalid Password"
@@ -12900,8 +13026,10 @@ msgstr ""
msgid "Invalid Transition"
msgstr ""
-#: core/doctype/file/file.py:218 public/js/frappe/widgets/widget_dialog.js:604
-#: utils/csvutils.py:223 utils/csvutils.py:244
+#: core/doctype/file/file.py:218
+#: public/js/frappe/file_uploader/FileUploader.vue:511
+#: public/js/frappe/widgets/widget_dialog.js:604 utils/csvutils.py:223
+#: utils/csvutils.py:244
msgid "Invalid URL"
msgstr ""
@@ -12950,7 +13078,7 @@ msgid "Invalid filter: {0}"
msgstr ""
#: desk/doctype/dashboard/dashboard.py:67
-#: desk/doctype/dashboard_chart/dashboard_chart.py:413
+#: desk/doctype/dashboard_chart/dashboard_chart.py:423
msgid "Invalid json added in the custom options: {0}"
msgstr ""
@@ -12974,7 +13102,7 @@ msgstr ""
msgid "Invalid request arguments"
msgstr ""
-#: integrations/doctype/connected_app/connected_app.py:173
+#: integrations/doctype/connected_app/connected_app.py:197
msgid "Invalid state."
msgstr ""
@@ -13572,13 +13700,9 @@ msgid "LDAP Server Url"
msgstr ""
#. Name of a DocType
-#: integrations/doctype/ldap_settings/ldap_settings.json
-msgid "LDAP Settings"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/ldap_settings/ldap_settings.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "LDAP Settings"
msgid "LDAP Settings"
msgstr ""
@@ -13651,12 +13775,14 @@ msgstr ""
#: desk/doctype/workspace_quick_list/workspace_quick_list.json
#: desk/doctype/workspace_shortcut/workspace_shortcut.json
#: printing/page/print_format_builder/print_format_builder.js:474
+#: public/js/form_builder/components/Field.vue:208
#: public/js/frappe/widgets/widget_dialog.js:187
#: public/js/frappe/widgets/widget_dialog.js:255
#: public/js/frappe/widgets/widget_dialog.js:304
#: public/js/frappe/widgets/widget_dialog.js:421
#: public/js/frappe/widgets/widget_dialog.js:645
#: public/js/frappe/widgets/widget_dialog.js:678
+#: public/js/print_format_builder/Field.vue:18
#: templates/form_grid/fields.html:37
#: website/doctype/top_bar_item/top_bar_item.json
#: website/doctype/web_template_field/web_template_field.json
@@ -13885,7 +14011,7 @@ msgid "Leave blank to repeat always"
msgstr ""
#: core/doctype/communication/mixins.py:207
-#: email/doctype/email_account/email_account.py:714
+#: email/doctype/email_account/email_account.py:715
msgid "Leave this conversation"
msgstr ""
@@ -13904,6 +14030,7 @@ msgid "Left"
msgstr ""
#: printing/page/print_format_builder/print_format_builder.js:483
+#: public/js/print_format_builder/PrintFormatControls.vue:155
msgctxt "alignment"
msgid "Left"
msgstr ""
@@ -13988,7 +14115,8 @@ msgstr ""
#: printing/doctype/letter_head/letter_head.json
#: printing/page/print/print.js:127 public/js/frappe/form/print_utils.js:18
#: public/js/frappe/form/templates/print_layout.html:16
-#: public/js/frappe/list/bulk_operations.js:51
+#: public/js/frappe/list/bulk_operations.js:52
+#: public/js/print_format_builder/LetterHeadEditor.vue:144
msgid "Letter Head"
msgstr ""
@@ -14005,6 +14133,7 @@ msgstr ""
#. Label of the letter_head_name (Data) field in DocType 'Letter Head'
#: printing/doctype/letter_head/letter_head.json
+#: public/js/print_format_builder/LetterHeadEditor.vue:198
msgid "Letter Head Name"
msgstr ""
@@ -14043,6 +14172,10 @@ msgstr ""
msgid "Level Name"
msgstr ""
+#: public/js/frappe/file_uploader/FileUploader.vue:94
+msgid "Library"
+msgstr ""
+
#. Label of the license (Markdown Editor) field in DocType 'Package'
#: core/doctype/package/package.json www/attribution.html:36
msgid "License"
@@ -14145,6 +14278,7 @@ msgstr ""
#: desk/doctype/desktop_icon/desktop_icon.json
#: desk/doctype/notification_log/notification_log.json
#: desk/doctype/workspace_link/workspace_link.json
+#: public/js/frappe/file_uploader/FileUploader.vue:128
#: website/doctype/web_form_field/web_form_field.json
#: website/doctype/web_template_field/web_template_field.json
msgid "Link"
@@ -14386,10 +14520,14 @@ msgctxt "Form timeline"
msgid "Load More Communications"
msgstr ""
+#: public/js/frappe/file_uploader/TreeNode.vue:45
+msgid "Load more"
+msgstr ""
+
#: core/page/permission_manager/permission_manager.js:165
#: public/js/frappe/form/controls/multicheck.js:13
#: public/js/frappe/form/linked_with.js:13
-#: public/js/frappe/list/base_list.js:498
+#: public/js/frappe/list/base_list.js:495
#: public/js/frappe/list/list_view.js:332 public/js/frappe/ui/listing.html:16
#: public/js/frappe/views/reports/query_report.js:1017
msgid "Loading"
@@ -14411,6 +14549,7 @@ msgstr ""
msgid "Loading versions..."
msgstr ""
+#: public/js/frappe/file_uploader/TreeNode.vue:45
#: public/js/frappe/form/sidebar/share.js:51
#: public/js/frappe/list/list_sidebar.js:218
#: public/js/frappe/list/list_sidebar_group_by.js:125
@@ -14501,7 +14640,7 @@ msgstr ""
msgid "Login Failed please try again"
msgstr ""
-#: email/doctype/email_account/email_account.py:140
+#: email/doctype/email_account/email_account.py:141
msgid "Login Id is required"
msgstr ""
@@ -14989,7 +15128,7 @@ msgstr ""
#. Option for the 'Priority' (Select) field in DocType 'ToDo'
#. Label of the medium (Data) field in DocType 'Web Page View'
#: desk/doctype/todo/todo.json public/js/frappe/form/sidebar/assign_to.js:220
-#: public/js/frappe/utils/utils.js:1731
+#: public/js/frappe/utils/utils.js:1732
#: website/doctype/web_page_view/web_page_view.json
#: website/report/website_analytics/website_analytics.js:40
msgid "Medium"
@@ -15002,6 +15141,7 @@ msgid "Meeting"
msgstr ""
#. Label of the meets_condition (Data) field in DocType 'Webhook'
+#: email/doctype/notification/notification.py:79
#: integrations/doctype/webhook/webhook.json
msgid "Meets Condition?"
msgstr ""
@@ -15065,6 +15205,7 @@ msgstr ""
#: email/doctype/email_queue/email_queue.json
#: email/doctype/newsletter/newsletter.json
#: email/doctype/notification/notification.json
+#: email/doctype/notification/notification.py:81
#: public/js/frappe/ui/messages.js:175
#: public/js/frappe/views/communication.js:114
#: workflow/doctype/workflow_document_state/workflow_document_state.json
@@ -15113,7 +15254,7 @@ msgstr ""
msgid "Message clipped"
msgstr ""
-#: email/doctype/email_account/email_account.py:333
+#: email/doctype/email_account/email_account.py:334
msgid "Message from server: {0}"
msgstr ""
@@ -15212,13 +15353,9 @@ msgid "Middle Name"
msgstr ""
#. Name of a DocType
-#: automation/doctype/milestone/milestone.json
-msgid "Milestone"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
+#: automation/doctype/milestone/milestone.json
#: automation/workspace/tools/tools.json
-msgctxt "Milestone"
msgid "Milestone"
msgstr ""
@@ -15363,13 +15500,8 @@ msgid "Module (for export)"
msgstr ""
#. Name of a DocType
-#: core/doctype/module_def/module_def.json
-msgid "Module Def"
-msgstr ""
-
#. Label of a Link in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Module Def"
+#: core/doctype/module_def/module_def.json core/workspace/build/build.json
msgid "Module Def"
msgstr ""
@@ -15385,26 +15517,18 @@ msgstr ""
msgid "Module Name"
msgstr ""
-#. Name of a DocType
-#: desk/doctype/module_onboarding/module_onboarding.json
-msgid "Module Onboarding"
-msgstr ""
-
#. Label of a Link in the Build Workspace
+#. Name of a DocType
#: core/workspace/build/build.json
-msgctxt "Module Onboarding"
+#: desk/doctype/module_onboarding/module_onboarding.json
msgid "Module Onboarding"
msgstr ""
#. Name of a DocType
#. Label of the module_profile (Link) field in DocType 'User'
-#: core/doctype/module_profile/module_profile.json core/doctype/user/user.json
-msgid "Module Profile"
-msgstr ""
-
#. Label of a Link in the Users Workspace
+#: core/doctype/module_profile/module_profile.json core/doctype/user/user.json
#: core/workspace/users/users.json
-msgctxt "Module Profile"
msgid "Module Profile"
msgstr ""
@@ -15556,6 +15680,10 @@ msgstr ""
msgid "Move To Trash"
msgstr ""
+#: public/js/form_builder/components/Section.vue:295
+msgid "Move current and all subsequent sections to a new tab"
+msgstr ""
+
#: public/js/frappe/form/form.js:176
msgid "Move cursor to above row"
msgstr ""
@@ -15572,6 +15700,14 @@ msgstr ""
msgid "Move cursor to previous column"
msgstr ""
+#: public/js/form_builder/components/Section.vue:294
+msgid "Move sections to new tab"
+msgstr ""
+
+#: public/js/form_builder/components/Field.vue:237
+msgid "Move the current field and the following fields to a new column"
+msgstr ""
+
#: public/js/frappe/form/grid_row.js:165
msgid "Move to Row Number"
msgstr ""
@@ -15635,6 +15771,10 @@ msgstr ""
msgid "My Account"
msgstr ""
+#: public/js/frappe/file_uploader/FileUploader.vue:57
+msgid "My Device"
+msgstr ""
+
#. Label of a standard navbar item
#. Type: Route
#: hooks.py
@@ -15764,13 +15904,9 @@ msgid "Navbar Item"
msgstr ""
#. Name of a DocType
-#: core/doctype/navbar_settings/navbar_settings.json
-msgid "Navbar Settings"
-msgstr ""
-
#. Label of a Link in the Build Workspace
+#: core/doctype/navbar_settings/navbar_settings.json
#: core/workspace/build/build.json
-msgctxt "Navbar Settings"
msgid "Navbar Settings"
msgstr ""
@@ -15811,11 +15947,11 @@ msgstr ""
msgid "Navigation Settings"
msgstr ""
-#: desk/doctype/workspace/workspace.py:301
+#: desk/doctype/workspace/workspace.py:305
msgid "Need Workspace Manager role to edit private workspace of other users"
msgstr ""
-#: desk/doctype/workspace/workspace.py:345
+#: desk/doctype/workspace/workspace.py:349
msgid "Need Workspace Manager role to hide/unhide public workspaces"
msgstr ""
@@ -15842,6 +15978,7 @@ msgstr ""
#: email/doctype/notification/notification.json
#: public/js/frappe/form/success_action.js:77
#: public/js/frappe/views/treeview.js:450
+#: public/js/frappe/views/workspace/workspace.js:95
#: social/doctype/energy_point_rule/energy_point_rule.json
#: website/doctype/web_form/templates/web_list.html:15 www/list.html:19
msgid "New"
@@ -15975,7 +16112,7 @@ msgstr ""
msgid "New Workflow Name"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:1186
+#: public/js/frappe/views/workspace/workspace.js:1213
msgid "New Workspace"
msgstr ""
@@ -16033,23 +16170,18 @@ msgstr ""
msgid "New {} releases for the following apps are available"
msgstr ""
-#: core/doctype/user/user.py:768
+#: core/doctype/user/user.py:772
msgid "Newly created user {0} has no roles enabled."
msgstr ""
#. Label of a Card Break in the Tools Workspace
+#. Label of a Link in the Tools Workspace
#. Name of a DocType
#: automation/workspace/tools/tools.json
#: email/doctype/newsletter/newsletter.json
msgid "Newsletter"
msgstr ""
-#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Newsletter"
-msgid "Newsletter"
-msgstr ""
-
#. Name of a DocType
#: email/doctype/newsletter_attachment/newsletter_attachment.json
msgid "Newsletter Attachment"
@@ -16164,6 +16296,7 @@ msgstr ""
#. Settings'
#. Option for the 'Standard' (Select) field in DocType 'Print Format'
#: core/doctype/page/page.json core/doctype/report/report.json
+#: email/doctype/notification/notification.py:100
#: integrations/doctype/ldap_settings/ldap_settings.json
#: integrations/doctype/webhook/webhook.py:140
#: printing/doctype/print_format/print_format.json
@@ -16200,6 +16333,7 @@ msgstr ""
#: core/doctype/data_export/exporter.py:162
#: email/doctype/auto_email_report/auto_email_report.py:288
+#: public/js/form_builder/components/controls/TableControl.vue:64
#: public/js/frappe/data_import/import_preview.js:142
#: public/js/frappe/form/grid.js:63
#: public/js/frappe/form/multi_select_dialog.js:225
@@ -16254,13 +16388,20 @@ msgstr ""
msgid "No LDAP User found for email: {0}"
msgstr ""
+#: public/js/form_builder/components/EditableInput.vue:11
+#: public/js/form_builder/components/EditableInput.vue:14
+#: public/js/form_builder/components/Field.vue:209
+#: public/js/form_builder/components/controls/FetchFromControl.vue:55
+#: public/js/print_format_builder/Field.vue:24
+#: public/js/workflow_builder/components/ActionNode.vue:53
+#: public/js/workflow_builder/components/StateNode.vue:47
#: public/js/workflow_builder/store.js:51
msgid "No Label"
msgstr ""
#: printing/page/print/print.js:700 printing/page/print/print.js:782
-#: public/js/frappe/list/bulk_operations.js:90
-#: public/js/frappe/list/bulk_operations.js:140 utils/weasyprint.py:52
+#: public/js/frappe/list/bulk_operations.js:98
+#: public/js/frappe/list/bulk_operations.js:170 utils/weasyprint.py:52
msgid "No Letterhead"
msgstr ""
@@ -16312,7 +16453,7 @@ msgstr ""
msgid "No Results found"
msgstr ""
-#: core/doctype/user/user.py:769
+#: core/doctype/user/user.py:773
msgid "No Roles Specified"
msgstr ""
@@ -16340,7 +16481,7 @@ msgstr ""
msgid "No address added yet."
msgstr ""
-#: email/doctype/notification/notification.js:203
+#: email/doctype/notification/notification.js:215
msgid "No alerts for today"
msgstr ""
@@ -16360,7 +16501,7 @@ msgstr ""
msgid "No changes made because old and new name are the same."
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:1491
+#: public/js/frappe/views/workspace/workspace.js:1518
msgid "No changes made on the page"
msgstr ""
@@ -16500,6 +16641,10 @@ msgstr ""
msgid "No records will be exported"
msgstr ""
+#: email/doctype/notification/notification.py:133
+msgid "No subject"
+msgstr ""
+
#: www/printview.py:442
msgid "No template found at path: {0}"
msgstr ""
@@ -16562,7 +16707,7 @@ msgstr ""
msgid "Normalized Query"
msgstr ""
-#: core/doctype/user/user.py:974 templates/includes/login/login.js:257
+#: core/doctype/user/user.py:978 templates/includes/login/login.js:257
#: utils/oauth.py:265
msgid "Not Allowed"
msgstr ""
@@ -16681,7 +16826,7 @@ msgstr ""
msgid "Not allowed for {0}: {1}"
msgstr ""
-#: email/doctype/notification/notification.py:440
+#: email/doctype/notification/notification.py:501
msgid "Not allowed to attach {0} document, please enable Allow Print For {0} in Print Settings"
msgstr ""
@@ -16726,15 +16871,10 @@ msgstr ""
msgid "Not permitted to view {0}"
msgstr ""
+#. Label of a Link in the Tools Workspace
#. Name of a DocType
#: automation/doctype/auto_repeat/auto_repeat.py:396
-#: desk/doctype/note/note.json
-msgid "Note"
-msgstr ""
-
-#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Note"
+#: automation/workspace/tools/tools.json desk/doctype/note/note.json
msgid "Note"
msgstr ""
@@ -16813,12 +16953,14 @@ msgid "Nothing to update"
msgstr ""
#. Label of the notification (Section Break) field in DocType 'Auto Repeat'
+#. Label of a Link in the Tools Workspace
#. Option for the 'Communication Type' (Select) field in DocType
#. 'Communication'
#. Name of a DocType
#. Label of the notification_section (Section Break) field in DocType 'S3
#. Backup Settings'
#: automation/doctype/auto_repeat/auto_repeat.json
+#: automation/workspace/tools/tools.json
#: core/doctype/communication/communication.json
#: core/doctype/communication/mixins.py:142
#: email/doctype/notification/notification.json
@@ -16826,12 +16968,6 @@ msgstr ""
msgid "Notification"
msgstr ""
-#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Notification"
-msgid "Notification"
-msgstr ""
-
#. Name of a DocType
#: desk/doctype/notification_log/notification_log.json
msgid "Notification Log"
@@ -16842,18 +16978,14 @@ msgstr ""
msgid "Notification Recipient"
msgstr ""
+#. Label of a Link in the Tools Workspace
#. Name of a DocType
+#: automation/workspace/tools/tools.json
#: desk/doctype/notification_settings/notification_settings.json
#: public/js/frappe/ui/notifications/notifications.js:37
msgid "Notification Settings"
msgstr ""
-#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Notification Settings"
-msgid "Notification Settings"
-msgstr ""
-
#. Name of a DocType
#: desk/doctype/notification_subscribed_document/notification_subscribed_document.json
msgid "Notification Subscribed Document"
@@ -16863,15 +16995,15 @@ msgstr ""
msgid "Notification sent to"
msgstr ""
-#: email/doctype/notification/notification.py:345
+#: email/doctype/notification/notification.py:406
msgid "Notification: customer {0} has no Mobile number set"
msgstr ""
-#: email/doctype/notification/notification.py:331
+#: email/doctype/notification/notification.py:392
msgid "Notification: document {0} has no {1} number set (field: {2})"
msgstr ""
-#: email/doctype/notification/notification.py:340
+#: email/doctype/notification/notification.py:401
msgid "Notification: user {0} has no Mobile number set"
msgstr ""
@@ -17039,13 +17171,9 @@ msgid "OAuth Bearer Token"
msgstr ""
#. Name of a DocType
-#: integrations/doctype/oauth_client/oauth_client.json
-msgid "OAuth Client"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/oauth_client/oauth_client.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "OAuth Client"
msgid "OAuth Client"
msgstr ""
@@ -17064,13 +17192,9 @@ msgid "OAuth Error"
msgstr ""
#. Name of a DocType
-#: integrations/doctype/oauth_provider_settings/oauth_provider_settings.json
-msgid "OAuth Provider Settings"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/oauth_provider_settings/oauth_provider_settings.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "OAuth Provider Settings"
msgid "OAuth Provider Settings"
msgstr ""
@@ -17079,7 +17203,7 @@ msgstr ""
msgid "OAuth Scope"
msgstr ""
-#: email/doctype/email_account/email_account.js:211
+#: email/doctype/email_account/email_account.js:215
msgid "OAuth has been enabled but not authorised. Please use \"Authorise API Access\" button to do the same."
msgstr ""
@@ -17092,6 +17216,10 @@ msgstr ""
msgid "OPTIONS"
msgstr ""
+#: public/js/form_builder/components/Tabs.vue:190
+msgid "OR"
+msgstr ""
+
#. Option for the 'Two Factor Authentication method' (Select) field in DocType
#. 'System Settings'
#: core/doctype/system_settings/system_settings.json
@@ -17271,7 +17399,7 @@ msgstr ""
msgid "One of"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:1326
+#: public/js/frappe/views/workspace/workspace.js:1353
msgid "One of the child page with name {0} already exist in {1} Section. Please update the name of the child page first before moving"
msgstr ""
@@ -17313,7 +17441,7 @@ msgstr ""
msgid "Only Workspace Manager can edit public workspaces"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:550
+#: public/js/frappe/views/workspace/workspace.js:577
msgid "Only Workspace Manager can sort or edit this page"
msgstr ""
@@ -17443,6 +17571,10 @@ msgstr ""
msgid "Open a module or tool"
msgstr ""
+#: public/js/print_format_builder/Preview.vue:17
+msgid "Open in a new tab"
+msgstr ""
+
#: public/js/frappe/list/list_view.js:1251
msgctxt "Description of a list view shortcut"
msgid "Open list item"
@@ -17495,6 +17627,7 @@ msgstr ""
#: core/doctype/file/file.js:24
#: core/report/database_storage_usage_by_tables/database_storage_usage_by_tables.js:8
+#: public/js/frappe/file_uploader/FilePreview.vue:27
msgid "Optimize"
msgstr ""
@@ -17749,25 +17882,17 @@ msgstr ""
#. Label of the package (Link) field in DocType 'Module Def'
#. Name of a DocType
#. Label of the package (Link) field in DocType 'Package Release'
-#: core/doctype/module_def/module_def.json core/doctype/package/package.json
-#: core/doctype/package_release/package_release.json www/attribution.html:34
-msgid "Package"
-msgstr ""
-
#. Label of a Link in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Package"
+#: core/doctype/module_def/module_def.json core/doctype/package/package.json
+#: core/doctype/package_release/package_release.json
+#: core/workspace/build/build.json www/attribution.html:34
msgid "Package"
msgstr ""
#. Name of a DocType
-#: core/doctype/package_import/package_import.json
-msgid "Package Import"
-msgstr ""
-
#. Label of a Link in the Build Workspace
+#: core/doctype/package_import/package_import.json
#: core/workspace/build/build.json
-msgctxt "Package Import"
msgid "Package Import"
msgstr ""
@@ -17809,6 +17934,7 @@ msgid "Page"
msgstr ""
#. Option for the 'Fieldtype' (Select) field in DocType 'Web Form Field'
+#: public/js/print_format_builder/PrintFormatSection.vue:63
#: website/doctype/web_form_field/web_form_field.json
msgid "Page Break"
msgstr ""
@@ -17829,10 +17955,14 @@ msgstr ""
msgid "Page HTML"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:72
+#: public/js/frappe/list/bulk_operations.js:73
msgid "Page Height (in mm)"
msgstr ""
+#: public/js/print_format_builder/PrintFormatControls.vue:5
+msgid "Page Margins"
+msgstr ""
+
#. Label of the page_name (Data) field in DocType 'Page'
#: core/doctype/page/page.json
msgid "Page Name"
@@ -17840,6 +17970,7 @@ msgstr ""
#. Label of the page_number (Select) field in DocType 'Print Format'
#: printing/doctype/print_format/print_format.json
+#: public/js/print_format_builder/PrintFormatControls.vue:63
msgid "Page Number"
msgstr ""
@@ -17848,7 +17979,7 @@ msgstr ""
msgid "Page Route"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:1513
+#: public/js/frappe/views/workspace/workspace.js:1540
msgid "Page Saved Successfully"
msgstr ""
@@ -17862,7 +17993,7 @@ msgstr ""
msgid "Page Shortcuts"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:65
+#: public/js/frappe/list/bulk_operations.js:66
msgid "Page Size"
msgstr ""
@@ -17871,7 +18002,7 @@ msgstr ""
msgid "Page Title"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:79
+#: public/js/frappe/list/bulk_operations.js:80
msgid "Page Width (in mm)"
msgstr ""
@@ -17880,7 +18011,7 @@ msgid "Page has expired!"
msgstr ""
#: printing/doctype/print_settings/print_settings.py:70
-#: public/js/frappe/list/bulk_operations.js:98
+#: public/js/frappe/list/bulk_operations.js:106
msgid "Page height and width cannot be zero"
msgstr ""
@@ -17893,7 +18024,7 @@ msgstr ""
msgid "Page to show on the website\n"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:1313
+#: public/js/frappe/views/workspace/workspace.js:1340
msgid "Page with title {0} already exist."
msgstr ""
@@ -17910,9 +18041,9 @@ msgid "Parameter"
msgstr ""
#: public/js/frappe/model/model.js:142
-#: public/js/frappe/views/workspace/workspace.js:620
-#: public/js/frappe/views/workspace/workspace.js:948
-#: public/js/frappe/views/workspace/workspace.js:1195
+#: public/js/frappe/views/workspace/workspace.js:647
+#: public/js/frappe/views/workspace/workspace.js:975
+#: public/js/frappe/views/workspace/workspace.js:1222
msgid "Parent"
msgstr ""
@@ -17970,7 +18101,7 @@ msgstr ""
msgid "Parent Table"
msgstr ""
-#: desk/doctype/dashboard_chart/dashboard_chart.py:393
+#: desk/doctype/dashboard_chart/dashboard_chart.py:403
msgid "Parent document type is required to create a dashboard chart"
msgstr ""
@@ -18036,11 +18167,11 @@ msgstr ""
msgid "Password"
msgstr ""
-#: core/doctype/user/user.py:1037
+#: core/doctype/user/user.py:1041
msgid "Password Email Sent"
msgstr ""
-#: core/doctype/user/user.py:412
+#: core/doctype/user/user.py:416
msgid "Password Reset"
msgstr ""
@@ -18062,7 +18193,7 @@ msgstr ""
msgid "Password for Base DN"
msgstr ""
-#: email/doctype/email_account/email_account.py:182
+#: email/doctype/email_account/email_account.py:183
msgid "Password is required or select Awaiting Password"
msgstr ""
@@ -18074,7 +18205,7 @@ msgstr ""
msgid "Password not found for {0} {1} {2}"
msgstr ""
-#: core/doctype/user/user.py:1036
+#: core/doctype/user/user.py:1040
msgid "Password reset instructions have been sent to {}'s email"
msgstr ""
@@ -18086,7 +18217,7 @@ msgstr ""
msgid "Password size exceeded the maximum allowed size"
msgstr ""
-#: core/doctype/user/user.py:832
+#: core/doctype/user/user.py:836
msgid "Password size exceeded the maximum allowed size."
msgstr ""
@@ -18419,7 +18550,7 @@ msgstr ""
msgid "Plant"
msgstr ""
-#: email/doctype/email_account/email_account.py:535
+#: email/doctype/email_account/email_account.py:536
msgid "Please Authorize OAuth for Email Account {0}"
msgstr ""
@@ -18451,7 +18582,7 @@ msgstr ""
msgid "Please add a valid comment."
msgstr ""
-#: core/doctype/user/user.py:1019
+#: core/doctype/user/user.py:1023
msgid "Please ask your administrator to verify your sign-up"
msgstr ""
@@ -18483,7 +18614,7 @@ msgstr ""
msgid "Please check the value of \"Fetch From\" set for field {0}"
msgstr ""
-#: core/doctype/user/user.py:1017
+#: core/doctype/user/user.py:1021
msgid "Please check your email for verification"
msgstr ""
@@ -18546,7 +18677,8 @@ msgstr ""
#: desk/doctype/notification_log/notification_log.js:45
#: email/doctype/auto_email_report/auto_email_report.js:17
#: printing/page/print/print.js:635 printing/page/print/print.js:665
-#: public/js/frappe/utils/utils.js:1426
+#: public/js/frappe/list/bulk_operations.js:161
+#: public/js/frappe/utils/utils.js:1427
msgid "Please enable pop-ups"
msgstr ""
@@ -18687,6 +18819,10 @@ msgstr ""
msgid "Please select a country code for field {1}."
msgstr ""
+#: public/js/frappe/file_uploader/FileUploader.vue:487
+msgid "Please select a file first."
+msgstr ""
+
#: utils/file_manager.py:50
msgid "Please select a file or url"
msgstr ""
@@ -18765,11 +18901,11 @@ msgstr ""
msgid "Please setup a message first"
msgstr ""
-#: email/doctype/email_account/email_account.py:423
+#: email/doctype/email_account/email_account.py:424
msgid "Please setup default Email Account from Settings > Email Account"
msgstr ""
-#: core/doctype/user/user.py:377
+#: core/doctype/user/user.py:381
msgid "Please setup default outgoing Email Account from Settings > Email Account"
msgstr ""
@@ -18781,11 +18917,11 @@ msgstr ""
msgid "Please specify a valid parent DocType for {0}"
msgstr ""
-#: email/doctype/notification/notification.py:88
+#: email/doctype/notification/notification.py:149
msgid "Please specify which date field must be checked"
msgstr ""
-#: email/doctype/notification/notification.py:91
+#: email/doctype/notification/notification.py:152
msgid "Please specify which value field must be checked"
msgstr ""
@@ -18872,13 +19008,9 @@ msgid "Portal Menu Item"
msgstr ""
#. Name of a DocType
-#: website/doctype/portal_settings/portal_settings.json
-msgid "Portal Settings"
-msgstr ""
-
#. Label of a Link in the Website Workspace
+#: website/doctype/portal_settings/portal_settings.json
#: website/workspace/website/website.json
-msgctxt "Portal Settings"
msgid "Portal Settings"
msgstr ""
@@ -19011,6 +19143,7 @@ msgstr ""
#: desk/doctype/custom_html_block/custom_html_block.json
#: email/doctype/newsletter/newsletter.js:14
#: email/doctype/newsletter/newsletter.js:42
+#: email/doctype/notification/notification.js:184
#: integrations/doctype/webhook/webhook.json
#: printing/doctype/print_style/print_style.json
#: public/js/frappe/form/controls/markdown_editor.js:17
@@ -19046,6 +19179,14 @@ msgstr ""
msgid "Preview of generated names"
msgstr ""
+#: public/js/frappe/views/render_preview.js:19
+msgid "Preview on"
+msgstr ""
+
+#: public/js/print_format_builder/Preview.vue:103
+msgid "Preview type"
+msgstr ""
+
#: email/doctype/email_group/email_group.js:90
msgid "Preview:"
msgstr ""
@@ -19120,7 +19261,7 @@ msgstr ""
#: printing/page/print/print.js:65 public/js/frappe/form/success_action.js:81
#: public/js/frappe/form/templates/print_layout.html:46
#: public/js/frappe/form/toolbar.js:332 public/js/frappe/form/toolbar.js:344
-#: public/js/frappe/list/bulk_operations.js:87
+#: public/js/frappe/list/bulk_operations.js:95
#: public/js/frappe/views/reports/query_report.js:1640
#: public/js/frappe/views/reports/report_view.js:1460
#: public/js/frappe/views/treeview.js:469 www/printview.html:18
@@ -19132,29 +19273,24 @@ msgctxt "Button in list view actions menu"
msgid "Print"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:47
+#: public/js/frappe/list/bulk_operations.js:48
msgid "Print Documents"
msgstr ""
#. Label of the print_format (Link) field in DocType 'Auto Repeat'
+#. Label of a Link in the Build Workspace
#. Label of the print_format (Link) field in DocType 'Notification'
#. Name of a DocType
#. Label of the print_format (Link) field in DocType 'Web Form'
#: automation/doctype/auto_repeat/auto_repeat.json
-#: email/doctype/notification/notification.json
+#: core/workspace/build/build.json email/doctype/notification/notification.json
#: printing/doctype/print_format/print_format.json
#: printing/page/print/print.js:94 printing/page/print/print.js:819
-#: public/js/frappe/list/bulk_operations.js:58
+#: public/js/frappe/list/bulk_operations.js:59
#: website/doctype/web_form/web_form.json
msgid "Print Format"
msgstr ""
-#. Label of a Link in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Print Format"
-msgid "Print Format"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
#. Label of a shortcut in the Build Workspace
#. Label of the print_format_builder (Check) field in DocType 'Print Format'
@@ -19205,15 +19341,11 @@ msgstr ""
msgid "Print Formats allow you can define looks for documents when printed or converted to PDF. You can also create a custom Print Format using drag-and-drop tools."
msgstr ""
+#. Label of a Link in the Tools Workspace
#. Name of a DocType
#. Label of the print_heading (Data) field in DocType 'Print Heading'
-#: printing/doctype/print_heading/print_heading.json
-msgid "Print Heading"
-msgstr ""
-
-#. Label of a Link in the Tools Workspace
#: automation/workspace/tools/tools.json
-msgctxt "Print Heading"
+#: printing/doctype/print_heading/print_heading.json
msgid "Print Heading"
msgstr ""
@@ -19250,8 +19382,10 @@ msgstr ""
msgid "Print Server"
msgstr ""
+#. Label of a Link in the Tools Workspace
#. Label of the column_break_25 (Section Break) field in DocType 'Notification'
#. Name of a DocType
+#: automation/workspace/tools/tools.json
#: email/doctype/notification/notification.json
#: printing/doctype/print_settings/print_settings.json
#: printing/doctype/print_style/print_style.js:6
@@ -19260,12 +19394,6 @@ msgstr ""
msgid "Print Settings"
msgstr ""
-#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "Print Settings"
-msgid "Print Settings"
-msgstr ""
-
#. Label of the print_style_section (Section Break) field in DocType 'Print
#. Settings'
#. Label of the print_style (Link) field in DocType 'Print Settings'
@@ -19360,6 +19488,7 @@ msgstr ""
#: desk/doctype/custom_html_block/custom_html_block.json
#: desk/doctype/event/event.json desk/doctype/kanban_board/kanban_board.json
#: desk/doctype/note/note_list.js:8
+#: public/js/frappe/file_uploader/FilePreview.vue:34
msgid "Private"
msgstr ""
@@ -19387,7 +19516,7 @@ msgstr ""
msgid "Processing"
msgstr ""
-#: email/doctype/email_queue/email_queue.py:447
+#: email/doctype/email_queue/email_queue.py:454
msgid "Processing..."
msgstr ""
@@ -19462,9 +19591,9 @@ msgstr ""
#: desk/doctype/event/event.json desk/doctype/note/note.json
#: desk/doctype/note/note_list.js:6 desk/doctype/workspace/workspace.json
#: public/js/frappe/views/interaction.js:78
-#: public/js/frappe/views/workspace/workspace.js:627
-#: public/js/frappe/views/workspace/workspace.js:955
-#: public/js/frappe/views/workspace/workspace.js:1201
+#: public/js/frappe/views/workspace/workspace.js:654
+#: public/js/frappe/views/workspace/workspace.js:982
+#: public/js/frappe/views/workspace/workspace.js:1228
msgid "Public"
msgstr ""
@@ -19573,13 +19702,9 @@ msgid "Purple"
msgstr ""
#. Name of a DocType
-#: integrations/doctype/push_notification_settings/push_notification_settings.json
-msgid "Push Notification Settings"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/push_notification_settings/push_notification_settings.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "Push Notification Settings"
msgid "Push Notification Settings"
msgstr ""
@@ -19870,7 +19995,7 @@ msgstr ""
msgid "Re-Run in Console"
msgstr ""
-#: email/doctype/email_account/email_account.py:720
+#: email/doctype/email_account/email_account.py:721
msgid "Re:"
msgstr ""
@@ -20191,6 +20316,7 @@ msgstr ""
#. Label of the reference_doctype (Link) field in DocType 'Discussion Topic'
#: core/doctype/communication/communication.js:143
#: core/report/transaction_log_report/transaction_log_report.py:88
+#: public/js/frappe/views/render_preview.js:34
#: website/doctype/discussion_topic/discussion_topic.json
msgid "Reference Doctype"
msgstr ""
@@ -20345,6 +20471,7 @@ msgstr ""
#: public/js/frappe/views/treeview.js:475
#: public/js/frappe/widgets/chart_widget.js:291
#: public/js/frappe/widgets/number_card_widget.js:324
+#: public/js/print_format_builder/Preview.vue:24
msgid "Refresh"
msgstr ""
@@ -20380,7 +20507,7 @@ msgstr ""
msgid "Refreshing..."
msgstr ""
-#: core/doctype/user/user.py:981
+#: core/doctype/user/user.py:985
msgid "Registered but disabled"
msgstr ""
@@ -20505,10 +20632,37 @@ msgstr ""
msgid "Remove all customizations?"
msgstr ""
+#: public/js/form_builder/components/Section.vue:286
+msgid "Remove all fields in the column"
+msgstr ""
+
+#: public/js/form_builder/components/Section.vue:278
#: public/js/frappe/utils/datatable.js:9
+#: public/js/print_format_builder/PrintFormatSection.vue:120
msgid "Remove column"
msgstr ""
+#: public/js/form_builder/components/Field.vue:260
+msgid "Remove field"
+msgstr ""
+
+#: public/js/form_builder/components/Section.vue:279
+msgid "Remove last column"
+msgstr ""
+
+#: public/js/print_format_builder/PrintFormatSection.vue:130
+msgid "Remove page break"
+msgstr ""
+
+#: public/js/form_builder/components/Section.vue:266
+#: public/js/print_format_builder/PrintFormatSection.vue:135
+msgid "Remove section"
+msgstr ""
+
+#: public/js/form_builder/components/Tabs.vue:140
+msgid "Remove tab"
+msgstr ""
+
#: core/doctype/file/file.py:156
msgid "Removed {0}"
msgstr ""
@@ -20533,6 +20687,10 @@ msgstr ""
msgid "Renamed files and replaced code in controllers, please check!"
msgstr ""
+#: public/js/print_format_builder/PrintFormatSection.vue:17
+msgid "Render labels to the left and values to the right in this section"
+msgstr ""
+
#: core/doctype/communication/communication.js:43 desk/doctype/todo/todo.js:36
msgid "Reopen"
msgstr ""
@@ -20614,6 +20772,8 @@ msgstr ""
#. Page and Report'
#. Label of the report (Link) field in DocType 'Role Permission for Page and
#. Report'
+#. Label of a Link in the Build Workspace
+#. Label of a shortcut in the Build Workspace
#. Option for the 'Chart Type' (Select) field in DocType 'Dashboard Chart'
#. Option for the 'Select List View' (Select) field in DocType 'Form Tour'
#. Option for the 'Type' (Select) field in DocType 'Number Card'
@@ -20626,6 +20786,7 @@ msgstr ""
#: core/doctype/custom_role/custom_role.json core/doctype/docperm/docperm.json
#: core/doctype/report/report.json
#: core/doctype/role_permission_for_page_and_report/role_permission_for_page_and_report.json
+#: core/workspace/build/build.json
#: desk/doctype/dashboard_chart/dashboard_chart.json
#: desk/doctype/form_tour/form_tour.json
#: desk/doctype/number_card/number_card.json
@@ -20637,13 +20798,6 @@ msgstr ""
msgid "Report"
msgstr ""
-#. Label of a Link in the Build Workspace
-#. Label of a shortcut in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Report"
-msgid "Report"
-msgstr ""
-
#. Option for the 'Report Type' (Select) field in DocType 'Report'
#. Option for the 'DocType View' (Select) field in DocType 'Workspace Shortcut'
#: core/doctype/report/report.json
@@ -20716,6 +20870,11 @@ msgstr ""
msgid "Report Name, Report Field and Fucntion are required to create a number card"
msgstr ""
+#. Label of the report_ref_doctype (Link) field in DocType 'Workspace Link'
+#: desk/doctype/workspace_link/workspace_link.json
+msgid "Report Ref DocType"
+msgstr ""
+
#. Label of the report_reference_doctype (Data) field in DocType 'Onboarding
#. Step'
#: desk/doctype/onboarding_step/onboarding_step.json
@@ -20973,6 +21132,10 @@ msgstr ""
msgid "Reset Permissions for {0}?"
msgstr ""
+#: public/js/form_builder/components/Field.vue:114
+msgid "Reset To Default"
+msgstr ""
+
#: public/js/frappe/utils/datatable.js:8
msgid "Reset sorting"
msgstr ""
@@ -21070,8 +21233,8 @@ msgctxt "Title of message showing restrictions in list view"
msgid "Restrictions"
msgstr ""
-#: public/js/frappe/ui/toolbar/awesome_bar.js:356
-#: public/js/frappe/ui/toolbar/awesome_bar.js:371
+#: public/js/frappe/ui/toolbar/awesome_bar.js:379
+#: public/js/frappe/ui/toolbar/awesome_bar.js:394
msgid "Result"
msgstr ""
@@ -21179,6 +21342,7 @@ msgid "Right"
msgstr ""
#: printing/page/print_format_builder/print_format_builder.js:484
+#: public/js/print_format_builder/PrintFormatControls.vue:156
msgctxt "alignment"
msgid "Right"
msgstr ""
@@ -21204,6 +21368,8 @@ msgstr ""
#. Label of the role (Link) field in DocType 'Has Role'
#. Name of a DocType
#. Label of the role (Link) field in DocType 'User Type'
+#. Label of a Link in the Users Workspace
+#. Label of a shortcut in the Users Workspace
#. Label of the role (Link) field in DocType 'Onboarding Permission'
#. Label of the role (Link) field in DocType 'ToDo'
#. Label of the role (Link) field in DocType 'OAuth Client Role'
@@ -21217,6 +21383,7 @@ msgstr ""
#: core/doctype/user_type/user_type.py:109
#: core/page/permission_manager/permission_manager.js:212
#: core/page/permission_manager/permission_manager.js:450
+#: core/workspace/users/users.json
#: desk/doctype/onboarding_permission/onboarding_permission.json
#: desk/doctype/todo/todo.json
#: integrations/doctype/oauth_client_role/oauth_client_role.json
@@ -21226,13 +21393,6 @@ msgstr ""
msgid "Role"
msgstr ""
-#. Label of a Link in the Users Workspace
-#. Label of a shortcut in the Users Workspace
-#: core/workspace/users/users.json
-msgctxt "Role"
-msgid "Role"
-msgstr ""
-
#: core/doctype/role/role.js:8
msgid "Role 'All' will be given to all system + website users."
msgstr ""
@@ -21248,13 +21408,9 @@ msgid "Role Name"
msgstr ""
#. Name of a DocType
-#: core/doctype/role_permission_for_page_and_report/role_permission_for_page_and_report.json
-msgid "Role Permission for Page and Report"
-msgstr ""
-
#. Label of a Link in the Users Workspace
+#: core/doctype/role_permission_for_page_and_report/role_permission_for_page_and_report.json
#: core/workspace/users/users.json
-msgctxt "Role Permission for Page and Report"
msgid "Role Permission for Page and Report"
msgstr ""
@@ -21279,14 +21435,10 @@ msgstr ""
#. Name of a DocType
#. Label of the role_profile_name (Link) field in DocType 'User'
#. Label of the role_profile (Link) field in DocType 'User Role Profile'
+#. Label of a Link in the Users Workspace
#: core/doctype/role_profile/role_profile.json core/doctype/user/user.json
#: core/doctype/user_role_profile/user_role_profile.json
-msgid "Role Profile"
-msgstr ""
-
-#. Label of a Link in the Users Workspace
#: core/workspace/users/users.json
-msgctxt "Role Profile"
msgid "Role Profile"
msgstr ""
@@ -21540,13 +21692,9 @@ msgid "Run scheduled jobs only if checked"
msgstr ""
#. Name of a DocType
-#: integrations/doctype/s3_backup_settings/s3_backup_settings.json
-msgid "S3 Backup Settings"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/s3_backup_settings/s3_backup_settings.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "S3 Backup Settings"
msgid "S3 Backup Settings"
msgstr ""
@@ -21586,13 +21734,9 @@ msgid "SMS Parameter"
msgstr ""
#. Name of a DocType
-#: core/doctype/sms_settings/sms_settings.json
-msgid "SMS Settings"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: core/doctype/sms_settings/sms_settings.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "SMS Settings"
msgid "SMS Settings"
msgstr ""
@@ -21604,7 +21748,7 @@ msgstr ""
msgid "SMS was not sent. Please contact Administrator."
msgstr ""
-#: email/doctype/email_account/email_account.py:205
+#: email/doctype/email_account/email_account.py:206
msgid "SMTP Server is required"
msgstr ""
@@ -21714,7 +21858,7 @@ msgstr ""
#: public/js/frappe/views/kanban/kanban_view.js:343
#: public/js/frappe/views/reports/query_report.js:1802
#: public/js/frappe/views/reports/report_view.js:1640
-#: public/js/frappe/views/workspace/workspace.js:501
+#: public/js/frappe/views/workspace/workspace.js:528
#: public/js/frappe/widgets/base_widget.js:142
#: public/js/frappe/widgets/quick_list_widget.js:119
#: public/js/print_format_builder/print_format_builder.bundle.js:15
@@ -21769,7 +21913,7 @@ msgstr ""
#: public/js/frappe/list/list_settings.js:40
#: public/js/frappe/views/kanban/kanban_settings.js:47
-#: public/js/frappe/views/workspace/workspace.js:513
+#: public/js/frappe/views/workspace/workspace.js:540
msgid "Saving"
msgstr ""
@@ -21840,22 +21984,17 @@ msgid "Scheduled Job Log"
msgstr ""
#. Name of a DocType
+#. Label of a Link in the Build Workspace
#. Label of the scheduled_job_type (Link) field in DocType 'System Health
#. Report Failing Jobs'
#: core/doctype/scheduled_job_type/scheduled_job_type.json
+#: core/workspace/build/build.json
#: desk/doctype/system_health_report_failing_jobs/system_health_report_failing_jobs.json
msgid "Scheduled Job Type"
msgstr ""
#. Label of a Link in the Build Workspace
#: core/workspace/build/build.json
-msgctxt "Scheduled Job Type"
-msgid "Scheduled Job Type"
-msgstr ""
-
-#. Label of a Link in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Scheduled Job Log"
msgid "Scheduled Jobs Logs"
msgstr ""
@@ -22019,14 +22158,30 @@ msgstr ""
msgid "Search Priorities"
msgstr ""
+#: public/js/frappe/file_uploader/FileBrowser.vue:132
+msgid "Search Results"
+msgstr ""
+
#: www/search.py:14
msgid "Search Results for"
msgstr ""
+#: public/js/frappe/file_uploader/FileBrowser.vue:13
+msgid "Search by filename or extension"
+msgstr ""
+
#: core/doctype/doctype/doctype.py:1436
msgid "Search field {0} is not valid"
msgstr ""
+#: public/js/print_format_builder/PrintFormatControls.vue:87
+msgid "Search fields"
+msgstr ""
+
+#: public/js/form_builder/components/AddFieldButton.vue:19
+msgid "Search fieldtypes..."
+msgstr ""
+
#: public/js/frappe/ui/toolbar/search.js:50
#: public/js/frappe/ui/toolbar/search.js:69
msgid "Search for anything"
@@ -22045,6 +22200,10 @@ msgstr ""
msgid "Search or type a command ({0})"
msgstr ""
+#: public/js/form_builder/components/SearchBox.vue:8
+msgid "Search properties..."
+msgstr ""
+
#: templates/includes/search_box.html:8
msgid "Search results for"
msgstr ""
@@ -22060,6 +22219,7 @@ msgid "Searching ..."
msgstr ""
#. Option for the 'Type' (Select) field in DocType 'Web Template'
+#: public/js/form_builder/components/Section.vue:263
#: website/doctype/web_template/web_template.json
msgid "Section"
msgstr ""
@@ -22086,6 +22246,16 @@ msgstr ""
msgid "Section ID"
msgstr ""
+#: public/js/form_builder/components/Section.vue:28
+#: public/js/print_format_builder/PrintFormatSection.vue:8
+msgid "Section Title"
+msgstr ""
+
+#: public/js/form_builder/components/Section.vue:217
+#: public/js/form_builder/components/Section.vue:240
+msgid "Section must have at least one column"
+msgstr ""
+
#. Label of the sb3 (Section Break) field in DocType 'User'
#: core/doctype/user/user.json
msgid "Security Settings"
@@ -22204,6 +22374,7 @@ msgid "Select Date Range"
msgstr ""
#. Label of the doc_type (Link) field in DocType 'Web Form'
+#: public/js/form_builder/components/controls/FetchFromControl.vue:28
#: public/js/frappe/doctype/index.js:171 website/doctype/web_form/web_form.json
msgid "Select DocType"
msgstr ""
@@ -22231,6 +22402,7 @@ msgstr ""
msgid "Select Document Types to set which User Permissions are used to limit access."
msgstr ""
+#: public/js/form_builder/components/controls/FetchFromControl.vue:33
#: public/js/frappe/doctype/index.js:200 public/js/frappe/form/toolbar.js:771
msgid "Select Field"
msgstr ""
@@ -22353,6 +22525,10 @@ msgstr ""
msgid "Select a document to preview request data"
msgstr ""
+#: public/js/form_builder/components/Sidebar.vue:56
+msgid "Select a field to edit its properties."
+msgstr ""
+
#: public/js/frappe/views/treeview.js:337
msgid "Select a group node first."
msgstr ""
@@ -22379,7 +22555,7 @@ msgstr ""
msgid "Select an image of approx width 150px with a transparent background for best results."
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:35
+#: public/js/frappe/list/bulk_operations.js:36
msgid "Select atleast 1 record for printing"
msgstr ""
@@ -22402,11 +22578,11 @@ msgstr ""
msgid "Select or drag across time slots to create a new event."
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:209
+#: public/js/frappe/list/bulk_operations.js:239
msgid "Select records for assignment"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:230
+#: public/js/frappe/list/bulk_operations.js:260
msgid "Select records for removing assignment"
msgstr ""
@@ -22423,6 +22599,7 @@ msgstr ""
#: public/js/frappe/form/multi_select_dialog.js:81
#: public/js/frappe/form/multi_select_dialog.js:281
#: public/js/frappe/list/list_view_select.js:153
+#: public/js/print_format_builder/Preview.vue:90
msgid "Select {0}"
msgstr ""
@@ -22767,15 +22944,11 @@ msgstr ""
#. Label of the server_script (Link) field in DocType 'Scheduled Job Type'
#. Name of a DocType
-#: core/doctype/scheduled_job_type/scheduled_job_type.json
-#: core/doctype/server_script/server_script.json
-msgid "Server Script"
-msgstr ""
-
#. Label of a Link in the Build Workspace
#. Label of a shortcut in the Build Workspace
+#: core/doctype/scheduled_job_type/scheduled_job_type.json
+#: core/doctype/server_script/server_script.json
#: core/workspace/build/build.json
-msgctxt "Server Script"
msgid "Server Script"
msgstr ""
@@ -22870,6 +23043,7 @@ msgstr ""
#: desk/doctype/dashboard_chart/dashboard_chart.js:381
#: desk/doctype/number_card/number_card.js:280
+#: public/js/form_builder/components/Field.vue:80
#: website/doctype/web_form/web_form.js:269
msgid "Set Filters"
msgstr ""
@@ -23044,7 +23218,7 @@ msgstr ""
#: integrations/workspace/integrations/integrations.json
#: public/js/frappe/form/templates/print_layout.html:25
#: public/js/frappe/ui/toolbar/toolbar.js:289
-#: public/js/frappe/views/workspace/workspace.js:529
+#: public/js/frappe/views/workspace/workspace.js:556
#: website/doctype/web_form/web_form.json
#: website/doctype/web_page/web_page.json
msgid "Settings"
@@ -23450,6 +23624,11 @@ msgstr ""
msgid "Show more details"
msgstr ""
+#. Label of the show_on_timeline (Check) field in DocType 'DocField'
+#: core/doctype/docfield/docfield.json
+msgid "Show on Timeline"
+msgstr ""
+
#. Description of the 'Stats Time Interval' (Select) field in DocType 'Number
#. Card'
#: desk/doctype/number_card/number_card.json
@@ -23500,7 +23679,7 @@ msgstr ""
msgid "Sign Up and Confirmation"
msgstr ""
-#: core/doctype/user/user.py:974
+#: core/doctype/user/user.py:978
msgid "Sign Up is disabled"
msgstr ""
@@ -23644,13 +23823,9 @@ msgid "Slack Webhook Error"
msgstr ""
#. Name of a DocType
-#: integrations/doctype/slack_webhook_url/slack_webhook_url.json
-msgid "Slack Webhook URL"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/slack_webhook_url/slack_webhook_url.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "Slack Webhook URL"
msgid "Slack Webhook URL"
msgstr ""
@@ -23716,13 +23891,9 @@ msgid "Social Link Type"
msgstr ""
#. Name of a DocType
-#: integrations/doctype/social_login_key/social_login_key.json
-msgid "Social Login Key"
-msgstr ""
-
#. Label of a Link in the Integrations Workspace
+#: integrations/doctype/social_login_key/social_login_key.json
#: integrations/workspace/integrations/integrations.json
-msgctxt "Social Login Key"
msgid "Social Login Key"
msgstr ""
@@ -23815,7 +23986,7 @@ msgstr ""
#. Label of the source (Data) field in DocType 'Web Page View'
#. Label of the source (Small Text) field in DocType 'Website Route Redirect'
-#: public/js/frappe/ui/toolbar/about.js:8 public/js/frappe/utils/utils.js:1715
+#: public/js/frappe/ui/toolbar/about.js:8 public/js/frappe/utils/utils.js:1716
#: website/doctype/web_page_view/web_page_view.json
#: website/doctype/website_route_redirect/website_route_redirect.json
#: website/report/website_analytics/website_analytics.js:38
@@ -23834,6 +24005,7 @@ msgid "Source Text"
msgstr ""
#: public/js/frappe/views/workspace/blocks/spacer.js:23
+#: public/js/print_format_builder/PrintFormatControls.vue:204
msgid "Spacer"
msgstr ""
@@ -23865,6 +24037,11 @@ msgstr ""
msgid "Sr"
msgstr ""
+#: public/js/print_format_builder/Field.vue:143
+#: public/js/print_format_builder/Field.vue:164
+msgid "Sr No."
+msgstr ""
+
#. Label of the stack_html (HTML) field in DocType 'Recorder Query'
#: core/doctype/recorder/recorder.js:82
#: core/doctype/recorder_query/recorder_query.json
@@ -24034,6 +24211,10 @@ msgstr ""
msgid "State"
msgstr ""
+#: public/js/workflow_builder/components/Properties.vue:24
+msgid "State Properties"
+msgstr ""
+
#. Label of the state (Data) field in DocType 'Address'
#: contacts/doctype/address/address.json
msgid "State/Province"
@@ -24260,6 +24441,7 @@ msgstr ""
#: email/doctype/email_template/email_template.json
#: email/doctype/newsletter/newsletter.json
#: email/doctype/notification/notification.json
+#: email/doctype/notification/notification.py:80
#: public/js/frappe/views/communication.js:107
#: public/js/frappe/views/inbox/inbox_view.js:63
msgid "Subject"
@@ -24511,7 +24693,7 @@ msgstr ""
msgid "Suggested Indexes"
msgstr ""
-#: core/doctype/user/user.py:689
+#: core/doctype/user/user.py:693
msgid "Suggested Username: {0}"
msgstr ""
@@ -24836,13 +25018,9 @@ msgid "System Page"
msgstr ""
#. Name of a DocType
-#: core/doctype/system_settings/system_settings.json
-msgid "System Settings"
-msgstr ""
-
#. Label of a shortcut in the Build Workspace
+#: core/doctype/system_settings/system_settings.json
#: core/workspace/build/build.json
-msgctxt "System Settings"
msgid "System Settings"
msgstr ""
@@ -24866,6 +25044,10 @@ msgstr ""
msgid "Tab Break"
msgstr ""
+#: public/js/form_builder/components/Tabs.vue:135
+msgid "Tab Label"
+msgstr ""
+
#. Option for the 'Type' (Select) field in DocType 'DocField'
#. Label of the table (Data) field in DocType 'Recorder Suggested Index'
#. Option for the 'Field Type' (Select) field in DocType 'Custom Field'
@@ -24942,7 +25124,7 @@ msgid "Tag Link"
msgstr ""
#: model/meta.py:52 public/js/frappe/form/templates/form_sidebar.html:100
-#: public/js/frappe/list/bulk_operations.js:400
+#: public/js/frappe/list/bulk_operations.js:430
#: public/js/frappe/list/list_sidebar.html:50
#: public/js/frappe/list/list_sidebar.js:228 public/js/frappe/model/meta.js:204
#: public/js/frappe/model/model.js:133
@@ -25034,7 +25216,7 @@ msgstr ""
msgid "Templates"
msgstr ""
-#: core/doctype/user/user.py:985
+#: core/doctype/user/user.py:989
msgid "Temporarily Disabled"
msgstr ""
@@ -25140,7 +25322,7 @@ msgid ""
""
msgstr ""
-#: email/doctype/notification/notification.py:131
+#: email/doctype/notification/notification.py:192
msgid "The Condition '{0}' is invalid"
msgstr ""
@@ -25294,11 +25476,11 @@ msgid ""
""
msgstr ""
-#: core/doctype/user/user.py:945
+#: core/doctype/user/user.py:949
msgid "The reset password link has been expired"
msgstr ""
-#: core/doctype/user/user.py:947
+#: core/doctype/user/user.py:951
msgid "The reset password link has either been used before or is invalid"
msgstr ""
@@ -25730,7 +25912,7 @@ msgstr ""
msgid "This will terminate the job immediately and might be dangerous, are you sure? "
msgstr ""
-#: core/doctype/user/user.py:1205
+#: core/doctype/user/user.py:1209
msgid "Throttled"
msgstr ""
@@ -25830,7 +26012,7 @@ msgstr ""
msgid "Time in seconds to retain QR code image on server. Min:240"
msgstr ""
-#: desk/doctype/dashboard_chart/dashboard_chart.py:402
+#: desk/doctype/dashboard_chart/dashboard_chart.py:412
msgid "Time series based on is required to create a dashboard chart"
msgstr ""
@@ -25944,9 +26126,9 @@ msgstr ""
#: desk/doctype/system_health_report_errors/system_health_report_errors.json
#: desk/doctype/workspace/workspace.json
#: email/doctype/email_group/email_group.json
-#: public/js/frappe/views/workspace/workspace.js:613
-#: public/js/frappe/views/workspace/workspace.js:942
-#: public/js/frappe/views/workspace/workspace.js:1189
+#: public/js/frappe/views/workspace/workspace.js:640
+#: public/js/frappe/views/workspace/workspace.js:969
+#: public/js/frappe/views/workspace/workspace.js:1216
#: website/doctype/blog_category/blog_category.json
#: website/doctype/blog_post/blog_post.json
#: website/doctype/blog_settings/blog_settings.json
@@ -26000,13 +26182,8 @@ msgstr ""
msgid "To Date Field"
msgstr ""
-#: desk/doctype/todo/todo_list.js:6
-msgid "To Do"
-msgstr ""
-
#. Label of a Link in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "ToDo"
+#: automation/workspace/tools/tools.json desk/doctype/todo/todo_list.js:6
msgid "To Do"
msgstr ""
@@ -26117,15 +26294,11 @@ msgstr ""
msgid "To version"
msgstr ""
+#. Label of a shortcut in the Tools Workspace
#. Name of a DocType
#. Name of a report
-#: desk/doctype/todo/todo.json desk/report/todo/todo.json
-msgid "ToDo"
-msgstr ""
-
-#. Label of a shortcut in the Tools Workspace
-#: automation/workspace/tools/tools.json
-msgctxt "ToDo"
+#: automation/workspace/tools/tools.json desk/doctype/todo/todo.json
+#: desk/report/todo/todo.json
msgid "ToDo"
msgstr ""
@@ -26200,7 +26373,7 @@ msgstr ""
msgid "Too many changes to database in single action."
msgstr ""
-#: core/doctype/user/user.py:986
+#: core/doctype/user/user.py:990
msgid "Too many users signed up recently, so the registration is disabled. Please try back in an hour"
msgstr ""
@@ -26212,6 +26385,7 @@ msgstr ""
#. Option for the 'Position' (Select) field in DocType 'Form Tour Step'
#: desk/doctype/form_tour_step/form_tour_step.json
+#: public/js/print_format_builder/PrintFormatControls.vue:153
msgid "Top"
msgstr ""
@@ -26229,6 +26403,7 @@ msgstr ""
#. Option for the 'Page Number' (Select) field in DocType 'Print Format'
#: desk/doctype/form_tour_step/form_tour_step.json
#: printing/doctype/print_format/print_format.json
+#: public/js/print_format_builder/PrintFormatControls.vue:245
msgid "Top Center"
msgstr ""
@@ -26239,6 +26414,7 @@ msgstr ""
#. Option for the 'Page Number' (Select) field in DocType 'Print Format'
#: printing/doctype/print_format/print_format.json
+#: public/js/print_format_builder/PrintFormatControls.vue:244
msgid "Top Left"
msgstr ""
@@ -26254,6 +26430,7 @@ msgstr ""
#. Option for the 'Page Number' (Select) field in DocType 'Print Format'
#: desk/doctype/form_tour_step/form_tour_step.json
#: printing/doctype/print_format/print_format.json
+#: public/js/print_format_builder/PrintFormatControls.vue:246
msgid "Top Right"
msgstr ""
@@ -26326,6 +26503,10 @@ msgstr ""
msgid "Total number of emails to sync in initial sync process "
msgstr ""
+#: public/js/print_format_builder/ConfigureColumns.vue:12
+msgid "Total:"
+msgstr ""
+
#: public/js/frappe/views/reports/report_view.js:1178
msgid "Totals"
msgstr ""
@@ -26392,7 +26573,7 @@ msgstr ""
msgid "Track milestones for any document"
msgstr ""
-#: public/js/frappe/utils/utils.js:1766
+#: public/js/frappe/utils/utils.js:1767
msgid "Tracking URL generated and copied to clipboard"
msgstr ""
@@ -26412,6 +26593,10 @@ msgstr ""
msgid "Transaction Log Report"
msgstr ""
+#: public/js/workflow_builder/components/Properties.vue:19
+msgid "Transition Properties"
+msgstr ""
+
#. Label of the transition_rules (Section Break) field in DocType 'Workflow'
#: workflow/doctype/workflow/workflow.json
msgid "Transition Rules"
@@ -26757,7 +26942,7 @@ msgstr ""
msgid "Unhandled Emails"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:570
+#: public/js/frappe/views/workspace/workspace.js:597
msgid "Unhide Workspace"
msgstr ""
@@ -26879,7 +27064,7 @@ msgstr ""
#: printing/page/print_format_builder/print_format_builder.js:670
#: printing/page/print_format_builder/print_format_builder.js:757
#: public/js/frappe/form/grid_row.js:404
-#: public/js/frappe/views/workspace/workspace.js:661
+#: public/js/frappe/views/workspace/workspace.js:688
msgid "Update"
msgstr ""
@@ -26889,7 +27074,7 @@ msgstr ""
msgid "Update Amendment Naming"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:610
+#: public/js/frappe/views/workspace/workspace.js:637
msgid "Update Details"
msgstr ""
@@ -26945,7 +27130,7 @@ msgstr ""
msgid "Update from Frappe Cloud"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:345
+#: public/js/frappe/list/bulk_operations.js:375
msgid "Update {0} records"
msgstr ""
@@ -26966,7 +27151,7 @@ msgstr ""
msgid "Updated To A New Version 🎉"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:342
+#: public/js/frappe/list/bulk_operations.js:372
msgid "Updated successfully"
msgstr ""
@@ -26984,7 +27169,7 @@ msgctxt "Freeze message while updating a document"
msgid "Updating"
msgstr ""
-#: email/doctype/email_queue/email_queue.py:446
+#: email/doctype/email_queue/email_queue.py:453
msgid "Updating Email Queue Statuses. The emails will be picked up in the next scheduled run."
msgstr ""
@@ -27019,6 +27204,18 @@ msgstr ""
msgid "Upload"
msgstr ""
+#: public/js/print_format_builder/LetterHeadEditor.vue:93
+msgid "Upload Image"
+msgstr ""
+
+#: public/js/frappe/file_uploader/FileUploader.vue:193
+msgid "Upload file"
+msgstr ""
+
+#: public/js/frappe/file_uploader/FileUploader.vue:196
+msgid "Upload {0} files"
+msgstr ""
+
#. Label of the uploaded_to_dropbox (Check) field in DocType 'File'
#: core/doctype/file/file.json
msgid "Uploaded To Dropbox"
@@ -27145,6 +27342,8 @@ msgstr ""
#. Name of a DocType
#. Label of the user (Link) field in DocType 'User Group Member'
#. Label of the user (Link) field in DocType 'User Permission'
+#. Label of a Link in the Users Workspace
+#. Label of a shortcut in the Users Workspace
#. Label of the user (Link) field in DocType 'Dashboard Settings'
#. Label of the user (Link) field in DocType 'Note Seen By'
#. Label of the user (Link) field in DocType 'Notification Settings'
@@ -27171,6 +27370,7 @@ msgstr ""
#: core/doctype/user_group_member/user_group_member.json
#: core/doctype/user_permission/user_permission.json
#: core/report/permitted_documents_for_user/permitted_documents_for_user.js:8
+#: core/workspace/users/users.json
#: desk/doctype/dashboard_settings/dashboard_settings.json
#: desk/doctype/note_seen_by/note_seen_by.json
#: desk/doctype/notification_settings/notification_settings.json
@@ -27192,13 +27392,6 @@ msgstr ""
msgid "User"
msgstr ""
-#. Label of a Link in the Users Workspace
-#. Label of a shortcut in the Users Workspace
-#: core/workspace/users/users.json
-msgctxt "User"
-msgid "User"
-msgstr ""
-
#. Label of the user (Link) field in DocType 'Access Log'
#: core/doctype/access_log/access_log.json
msgid "User "
@@ -27336,7 +27529,9 @@ msgstr ""
msgid "User Permission"
msgstr ""
+#. Label of a Link in the Users Workspace
#: core/page/permission_manager/permission_manager_help.html:30
+#: core/workspace/users/users.json
#: public/js/frappe/views/reports/query_report.js:1789
#: public/js/frappe/views/reports/report_view.js:1666
msgid "User Permissions"
@@ -27347,12 +27542,6 @@ msgctxt "Button in list view menu"
msgid "User Permissions"
msgstr ""
-#. Label of a Link in the Users Workspace
-#: core/workspace/users/users.json
-msgctxt "User Permission"
-msgid "User Permissions"
-msgstr ""
-
#: core/page/permission_manager/permission_manager_help.html:32
msgid "User Permissions are used to limit users to specific records."
msgstr ""
@@ -27397,14 +27586,9 @@ msgstr ""
#. Label of the user_type (Link) field in DocType 'User'
#. Name of a DocType
-#: core/doctype/user/user.json core/doctype/user_type/user_type.json
-#: core/doctype/user_type/user_type.py:82
-msgid "User Type"
-msgstr ""
-
#. Label of a shortcut in the Users Workspace
-#: core/workspace/users/users.json
-msgctxt "User Type"
+#: core/doctype/user/user.json core/doctype/user_type/user_type.json
+#: core/doctype/user_type/user_type.py:82 core/workspace/users/users.json
msgid "User Type"
msgstr ""
@@ -27465,7 +27649,7 @@ msgstr ""
msgid "User with email: {0} does not exist in the system. Please ask 'System Administrator' to create the user for you."
msgstr ""
-#: core/doctype/user/user.py:491
+#: core/doctype/user/user.py:495
msgid "User {0} cannot be deleted"
msgstr ""
@@ -27473,7 +27657,7 @@ msgstr ""
msgid "User {0} cannot be disabled"
msgstr ""
-#: core/doctype/user/user.py:571
+#: core/doctype/user/user.py:575
msgid "User {0} cannot be renamed"
msgstr ""
@@ -27485,7 +27669,7 @@ msgstr ""
msgid "User {0} does not have doctype access via role permission for document {1}"
msgstr ""
-#: desk/doctype/workspace/workspace.py:253
+#: desk/doctype/workspace/workspace.py:257
msgid "User {0} does not have the permission to create a Workspace."
msgstr ""
@@ -27494,7 +27678,7 @@ msgstr ""
msgid "User {0} has requested for data deletion"
msgstr ""
-#: core/doctype/user/user.py:1334
+#: core/doctype/user/user.py:1338
msgid "User {0} impersonated as {1}"
msgstr ""
@@ -27522,7 +27706,7 @@ msgstr ""
msgid "Username"
msgstr ""
-#: core/doctype/user/user.py:656
+#: core/doctype/user/user.py:660
msgid "Username {0} already exists"
msgstr ""
@@ -27630,8 +27814,8 @@ msgstr ""
#: email/doctype/auto_email_report/auto_email_report.js:92
#: integrations/doctype/query_parameters/query_parameters.json
#: integrations/doctype/webhook_header/webhook_header.json
-#: public/js/frappe/list/bulk_operations.js:306
-#: public/js/frappe/list/bulk_operations.js:368
+#: public/js/frappe/list/bulk_operations.js:336
+#: public/js/frappe/list/bulk_operations.js:398
#: public/js/frappe/list/list_view_permission_restrictions.html:4
#: website/doctype/web_form/web_form.js:197
#: website/doctype/website_meta_tag/website_meta_tag.json
@@ -27730,7 +27914,7 @@ msgid "Verdana"
msgstr ""
#: twofactor.py:352
-msgid "Verfication Code"
+msgid "Verification Code"
msgstr ""
#: templates/emails/delete_data_confirmation.html:10
@@ -27981,14 +28165,10 @@ msgid "Weak"
msgstr ""
#. Name of a DocType
-#: website/doctype/web_form/web_form.json
-msgid "Web Form"
-msgstr ""
-
#. Label of a Link in the Website Workspace
#. Label of a shortcut in the Website Workspace
+#: website/doctype/web_form/web_form.json
#: website/workspace/website/website.json
-msgctxt "Web Form"
msgid "Web Form"
msgstr ""
@@ -28008,14 +28188,10 @@ msgid "Web Form List Column"
msgstr ""
#. Name of a DocType
-#: website/doctype/web_page/web_page.json
-msgid "Web Page"
-msgstr ""
-
#. Label of a Link in the Website Workspace
#. Label of a shortcut in the Website Workspace
+#: website/doctype/web_page/web_page.json
#: website/workspace/website/website.json
-msgctxt "Web Page"
msgid "Web Page"
msgstr ""
@@ -28024,7 +28200,7 @@ msgstr ""
msgid "Web Page Block"
msgstr ""
-#: public/js/frappe/utils/utils.js:1707
+#: public/js/frappe/utils/utils.js:1708
msgid "Web Page URL"
msgstr ""
@@ -28066,14 +28242,10 @@ msgstr ""
#. Name of a DocType
#. Label of the webhook (Link) field in DocType 'Webhook Request Log'
+#. Label of a Link in the Integrations Workspace
#: integrations/doctype/webhook/webhook.json
#: integrations/doctype/webhook_request_log/webhook_request_log.json
-msgid "Webhook"
-msgstr ""
-
-#. Label of a Link in the Integrations Workspace
#: integrations/workspace/integrations/integrations.json
-msgctxt "Webhook"
msgid "Webhook"
msgstr ""
@@ -28164,13 +28336,9 @@ msgid "Website Meta Tag"
msgstr ""
#. Name of a DocType
-#: website/doctype/website_route_meta/website_route_meta.json
-msgid "Website Route Meta"
-msgstr ""
-
#. Label of a Link in the Website Workspace
+#: website/doctype/website_route_meta/website_route_meta.json
#: website/workspace/website/website.json
-msgctxt "Website Route Meta"
msgid "Website Route Meta"
msgstr ""
@@ -28180,13 +28348,9 @@ msgid "Website Route Redirect"
msgstr ""
#. Name of a DocType
-#: website/doctype/website_script/website_script.json
-msgid "Website Script"
-msgstr ""
-
#. Label of a Link in the Website Workspace
+#: website/doctype/website_script/website_script.json
#: website/workspace/website/website.json
-msgctxt "Website Script"
msgid "Website Script"
msgstr ""
@@ -28200,29 +28364,21 @@ msgid "Website Search Field must be a valid fieldname"
msgstr ""
#. Name of a DocType
-#: website/doctype/website_settings/website_settings.json
-msgid "Website Settings"
-msgstr ""
-
#. Label of a Link in the Website Workspace
#. Label of a shortcut in the Website Workspace
+#: website/doctype/website_settings/website_settings.json
#: website/workspace/website/website.json
-msgctxt "Website Settings"
msgid "Website Settings"
msgstr ""
#. Label of the website_sidebar (Link) field in DocType 'Web Form'
#. Label of the website_sidebar (Link) field in DocType 'Web Page'
#. Name of a DocType
+#. Label of a Link in the Website Workspace
#: website/doctype/web_form/web_form.json
#: website/doctype/web_page/web_page.json
#: website/doctype/website_sidebar/website_sidebar.json
-msgid "Website Sidebar"
-msgstr ""
-
-#. Label of a Link in the Website Workspace
#: website/workspace/website/website.json
-msgctxt "Website Sidebar"
msgid "Website Sidebar"
msgstr ""
@@ -28232,13 +28388,9 @@ msgid "Website Sidebar Item"
msgstr ""
#. Name of a DocType
-#: website/doctype/website_slideshow/website_slideshow.json
-msgid "Website Slideshow"
-msgstr ""
-
#. Label of a Link in the Website Workspace
+#: website/doctype/website_slideshow/website_slideshow.json
#: website/workspace/website/website.json
-msgctxt "Website Slideshow"
msgid "Website Slideshow"
msgstr ""
@@ -28249,14 +28401,10 @@ msgstr ""
#. Label of the website_theme (Link) field in DocType 'Website Settings'
#. Name of a DocType
+#. Label of a Link in the Website Workspace
#: website/doctype/website_settings/website_settings.json
#: website/doctype/website_theme/website_theme.json
-msgid "Website Theme"
-msgstr ""
-
-#. Label of a Link in the Website Workspace
#: website/workspace/website/website.json
-msgctxt "Website Theme"
msgid "Website Theme"
msgstr ""
@@ -28365,11 +28513,11 @@ msgstr ""
msgid "Welcome Workspace"
msgstr ""
-#: core/doctype/user/user.py:369
+#: core/doctype/user/user.py:373
msgid "Welcome email sent"
msgstr ""
-#: core/doctype/user/user.py:430
+#: core/doctype/user/user.py:434
msgid "Welcome to {0}"
msgstr ""
@@ -28417,6 +28565,7 @@ msgstr ""
#: custom/doctype/customize_form_field/customize_form_field.json
#: desk/doctype/dashboard_chart_link/dashboard_chart_link.json
#: printing/page/print_format_builder/print_format_builder_column_selector.html:8
+#: public/js/print_format_builder/ConfigureColumns.vue:11
msgid "Width"
msgstr ""
@@ -28476,20 +28625,16 @@ msgstr ""
#. Option for the 'Comment Type' (Select) field in DocType 'Comment'
#. Option for the 'Comment Type' (Select) field in DocType 'Communication'
#. Group in DocType's connections
+#. Label of a Link in the Build Workspace
#. Name of a DocType
#: core/doctype/comment/comment.json
#: core/doctype/communication/communication.json
-#: core/doctype/doctype/doctype.json public/js/workflow_builder/store.js:129
+#: core/doctype/doctype/doctype.json core/workspace/build/build.json
+#: public/js/workflow_builder/store.js:129
#: workflow/doctype/workflow/workflow.json
msgid "Workflow"
msgstr ""
-#. Label of a Link in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Workflow"
-msgid "Workflow"
-msgstr ""
-
#. Name of a DocType
#: workflow/doctype/workflow_action/workflow_action.json
#: workflow/doctype/workflow_action/workflow_action.py:438
@@ -28543,6 +28688,10 @@ msgstr ""
msgid "Workflow Data"
msgstr ""
+#: public/js/workflow_builder/components/Properties.vue:42
+msgid "Workflow Details"
+msgstr ""
+
#. Name of a DocType
#: workflow/doctype/workflow_document_state/workflow_document_state.json
msgid "Workflow Document State"
@@ -28597,19 +28746,15 @@ msgid "Workflows allow you to define custom rules for the approval process of a
msgstr ""
#. Label of the workspace_section (Section Break) field in DocType 'User'
+#. Label of a Link in the Build Workspace
#. Name of a DocType
-#: core/doctype/user/user.json desk/doctype/workspace/workspace.json
+#: core/doctype/user/user.json core/workspace/build/build.json
+#: desk/doctype/workspace/workspace.json
#: public/js/frappe/ui/toolbar/search_utils.js:557
#: public/js/frappe/views/workspace/workspace.js:10
msgid "Workspace"
msgstr ""
-#. Label of a Link in the Build Workspace
-#: core/workspace/build/build.json
-msgctxt "Workspace"
-msgid "Workspace"
-msgstr ""
-
#: public/js/frappe/router.js:179
msgid "Workspace {0} does not exist"
msgstr ""
@@ -28650,19 +28795,19 @@ msgstr ""
msgid "Workspace Shortcut"
msgstr ""
-#: desk/doctype/workspace/workspace.py:285
+#: desk/doctype/workspace/workspace.py:289
msgid "Workspace not found"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:1279
+#: public/js/frappe/views/workspace/workspace.js:1306
msgid "Workspace {0} Created Successfully"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:908
+#: public/js/frappe/views/workspace/workspace.js:935
msgid "Workspace {0} Deleted Successfully"
msgstr ""
-#: public/js/frappe/views/workspace/workspace.js:686
+#: public/js/frappe/views/workspace/workspace.js:713
msgid "Workspace {0} Edited Successfully"
msgstr ""
@@ -28765,6 +28910,8 @@ msgstr ""
#. Settings'
#. Option for the 'Standard' (Select) field in DocType 'Print Format'
#: core/doctype/page/page.json core/doctype/report/report.json
+#: email/doctype/notification/notification.py:94
+#: email/doctype/notification/notification.py:100
#: integrations/doctype/ldap_settings/ldap_settings.json
#: integrations/doctype/webhook/webhook.py:130
#: integrations/doctype/webhook/webhook.py:140
@@ -28868,7 +29015,7 @@ msgstr ""
msgid "You are only allowed to update order, do not remove or add apps."
msgstr ""
-#: email/doctype/email_account/email_account.js:245
+#: email/doctype/email_account/email_account.js:249
msgid "You are selecting Sync Option as ALL, It will resync all read as well as unread message from server. This may also cause the duplication of Communication (emails)."
msgstr ""
@@ -28925,7 +29072,7 @@ msgstr ""
msgid "You can only insert images in Markdown fields"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:41
+#: public/js/frappe/list/bulk_operations.js:42
msgid "You can only print upto {0} documents at a time"
msgstr ""
@@ -28975,7 +29122,7 @@ msgctxt "Form timeline"
msgid "You cancelled this document {1}"
msgstr ""
-#: desk/doctype/dashboard_chart/dashboard_chart.py:406
+#: desk/doctype/dashboard_chart/dashboard_chart.py:416
msgid "You cannot create a dashboard chart from single DocTypes"
msgstr ""
@@ -28987,19 +29134,19 @@ msgstr ""
msgid "You cannot unset 'Read Only' for field {0}"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:121
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:125
msgid "You changed the value of {0}"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:110
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:114
msgid "You changed the value of {0} {1}"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:183
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:191
msgid "You changed the values for {0}"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:172
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:180
msgid "You changed the values for {0} {1}"
msgstr ""
@@ -29082,7 +29229,7 @@ msgstr ""
msgid "You have hit the row size limit on database table: {0}"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:382
+#: public/js/frappe/list/bulk_operations.js:412
msgid "You have not entered a value. The field will be set to empty."
msgstr ""
@@ -29179,7 +29326,7 @@ msgstr ""
msgid "You need to select indexes you want to add first."
msgstr ""
-#: email/doctype/email_account/email_account.py:153
+#: email/doctype/email_account/email_account.py:154
msgid "You need to set one IMAP folder for {0}"
msgstr ""
@@ -29200,7 +29347,7 @@ msgstr ""
msgid "You seem good to go!"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:30
+#: public/js/frappe/list/bulk_operations.js:31
msgid "You selected Draft or Cancelled documents"
msgstr ""
@@ -29238,7 +29385,7 @@ msgstr ""
msgid "Your Name"
msgstr ""
-#: public/js/frappe/list/bulk_operations.js:123
+#: public/js/frappe/list/bulk_operations.js:132
msgid "Your PDF is ready for download"
msgstr ""
@@ -29346,7 +29493,7 @@ msgstr ""
msgid "`job_id` paramater is required for deduplication."
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:219
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:232
msgid "added rows for {0}"
msgstr ""
@@ -29826,7 +29973,7 @@ msgstr ""
msgid "red"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:221
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:234
msgid "removed rows for {0}"
msgstr ""
@@ -29985,7 +30132,7 @@ msgstr ""
msgid "via Google Meet"
msgstr ""
-#: email/doctype/notification/notification.py:220
+#: email/doctype/notification/notification.py:281
msgid "via Notification"
msgstr ""
@@ -30066,8 +30213,8 @@ msgstr ""
msgid "{0} ({1}) - {2}%"
msgstr ""
-#: public/js/frappe/ui/toolbar/awesome_bar.js:348
-#: public/js/frappe/ui/toolbar/awesome_bar.js:351
+#: public/js/frappe/ui/toolbar/awesome_bar.js:371
+#: public/js/frappe/ui/toolbar/awesome_bar.js:374
msgid "{0} = {1}"
msgstr ""
@@ -30248,19 +30395,19 @@ msgstr ""
msgid "{0} cannot be hidden and mandatory without any default value"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:124
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:128
msgid "{0} changed the value of {1}"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:115
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:119
msgid "{0} changed the value of {1} {2}"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:186
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:194
msgid "{0} changed the values for {1}"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:177
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:185
msgid "{0} changed the values for {1} {2}"
msgstr ""
@@ -30333,11 +30480,11 @@ msgstr ""
msgid "{0} format could not be determined from the values in this column. Defaulting to {1}."
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:97
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:101
msgid "{0} from {1} to {2}"
msgstr ""
-#: public/js/frappe/form/footer/version_timeline_content_builder.js:157
+#: public/js/frappe/form/footer/version_timeline_content_builder.js:165
msgid "{0} from {1} to {2} in row #{3}"
msgstr ""
@@ -30439,7 +30586,7 @@ msgstr ""
msgid "{0} is like {1}"
msgstr ""
-#: email/doctype/email_account/email_account.py:186
+#: email/doctype/email_account/email_account.py:187
msgid "{0} is mandatory"
msgstr ""
@@ -30519,7 +30666,7 @@ msgstr ""
msgid "{0} is one of {1}"
msgstr ""
-#: email/doctype/email_account/email_account.py:293 model/naming.py:217
+#: email/doctype/email_account/email_account.py:294 model/naming.py:217
#: printing/doctype/print_format/print_format.py:91 utils/csvutils.py:153
msgid "{0} is required"
msgstr ""
@@ -30536,7 +30683,7 @@ msgstr ""
msgid "{0} items selected"
msgstr ""
-#: core/doctype/user/user.py:1343
+#: core/doctype/user/user.py:1347
msgid "{0} just impersonated as you. They gave this reason: {1}"
msgstr ""
@@ -30890,7 +31037,7 @@ msgstr ""
#: contacts/doctype/address/address.js:35
#: contacts/doctype/contact/contact.js:88
-#: public/js/frappe/views/workspace/workspace.js:170
+#: public/js/frappe/views/workspace/workspace.js:209
msgid "{0}: {1}"
msgstr ""
@@ -30928,7 +31075,6 @@ msgstr ""
#. Count format of shortcut in the Website Workspace
#: website/workspace/website/website.json
-msgctxt "Blogger"
msgid "{} Active"
msgstr ""
@@ -30946,13 +31092,6 @@ msgstr ""
#. Count format of shortcut in the Website Workspace
#: website/workspace/website/website.json
-msgctxt "Blog Post"
-msgid "{} Published"
-msgstr ""
-
-#. Count format of shortcut in the Website Workspace
-#: website/workspace/website/website.json
-msgctxt "Web Page"
msgid "{} Published"
msgstr ""
@@ -30964,8 +31103,8 @@ msgstr ""
msgid "{} field cannot be empty."
msgstr ""
-#: email/doctype/email_account/email_account.py:216
-#: email/doctype/email_account/email_account.py:224
+#: email/doctype/email_account/email_account.py:217
+#: email/doctype/email_account/email_account.py:225
msgid "{} has been disabled. It can only be enabled if {} is checked."
msgstr ""
@@ -30985,3 +31124,8 @@ msgstr ""
msgid "{} not found in PATH! This is required to take a backup."
msgstr ""
+#: public/js/frappe/file_uploader/FileBrowser.vue:5
+#: public/js/frappe/file_uploader/WebLink.vue:4
+msgid "← Back to upload files"
+msgstr ""
+
diff --git a/frappe/public/js/frappe/form/controls/link.js b/frappe/public/js/frappe/form/controls/link.js
index 62e5e4de67..e391706161 100644
--- a/frappe/public/js/frappe/form/controls/link.js
+++ b/frappe/public/js/frappe/form/controls/link.js
@@ -638,13 +638,18 @@ frappe.ui.form.ControlLink = class ControlLink extends frappe.ui.form.ControlDat
if (value) {
field_value = response[source_field];
}
- frappe.model.set_value(
- this.df.parent,
- this.docname,
- target_field,
- field_value,
- this.df.fieldtype
- );
+
+ if (this.layout?.set_value) {
+ this.layout.set_value(target_field, field_value);
+ } else if (this.frm) {
+ frappe.model.set_value(
+ this.df.parent,
+ this.docname,
+ target_field,
+ field_value,
+ this.df.fieldtype
+ );
+ }
}
};
@@ -669,8 +674,73 @@ frappe.ui.form.ControlLink = class ControlLink extends frappe.ui.form.ControlDat
}
}
+ fetch_map_for_quick_entry() {
+ let me = this;
+ let fetch_map = {};
+ function add_fetch(link_field, source_field, target_field, target_doctype) {
+ if (!target_doctype) target_doctype = "*";
+
+ if (!me.layout.fetch_dict) {
+ me.layout.fetch_dict = {};
+ }
+
+ // Target field kept as key because source field could be non-unique
+ me.layout.fetch_dict.setDefault(target_doctype, {}).setDefault(link_field, {})[
+ target_field
+ ] = source_field;
+ }
+
+ function setup_add_fetch(df) {
+ let is_read_only_field =
+ [
+ "Data",
+ "Read Only",
+ "Text",
+ "Small Text",
+ "Currency",
+ "Check",
+ "Text Editor",
+ "Attach Image",
+ "Code",
+ "Link",
+ "Float",
+ "Int",
+ "Date",
+ "Select",
+ "Duration",
+ "Time",
+ ].includes(df.fieldtype) ||
+ df.read_only == 1 ||
+ df.is_virtual == 1;
+
+ if (is_read_only_field && df.fetch_from && df.fetch_from.indexOf(".") != -1) {
+ var parts = df.fetch_from.split(".");
+ add_fetch(parts[0], parts[1], df.fieldname, df.parent);
+ }
+ }
+
+ $.each(this.layout.fields, (i, field) => setup_add_fetch(field));
+
+ for (const key of ["*", this.df.parent]) {
+ if (!this.layout.fetch_dict) {
+ this.layout.fetch_dict = {};
+ }
+ if (this.layout.fetch_dict[key] && this.layout.fetch_dict[key][this.df.fieldname]) {
+ Object.assign(fetch_map, this.layout.fetch_dict[key][this.df.fieldname]);
+ }
+ }
+
+ return fetch_map;
+ }
+
get fetch_map() {
const fetch_map = {};
+
+ // Create fetch_map from quick entry fields
+ if (!this.frm && this.layout && this.layout.fields) {
+ return this.fetch_map_for_quick_entry();
+ }
+
if (!this.frm) return fetch_map;
for (const key of ["*", this.df.parent]) {
diff --git a/frappe/public/js/frappe/form/footer/version_timeline_content_builder.js b/frappe/public/js/frappe/form/footer/version_timeline_content_builder.js
index 03936d9a1f..43d55fe5da 100644
--- a/frappe/public/js/frappe/form/footer/version_timeline_content_builder.js
+++ b/frappe/public/js/frappe/form/footer/version_timeline_content_builder.js
@@ -83,13 +83,17 @@ function get_version_timeline_content(version_doc, frm) {
}
} else {
const df = frappe.meta.get_docfield(frm.doctype, p[0], frm.docname);
- if (df && !df.hidden) {
+ if (df && (!df.hidden || df.show_on_timeline)) {
const field_display_status = frappe.perm.get_field_display_status(
df,
null,
frm.perm
);
- if (field_display_status === "Read" || field_display_status === "Write") {
+ if (
+ field_display_status === "Read" ||
+ field_display_status === "Write" ||
+ (df.hidden && df.show_on_timeline)
+ ) {
parts.push(
__("{0} from {1} to {2}", [
__(df.label, null, df.parent),
@@ -142,14 +146,18 @@ function get_version_timeline_content(version_doc, frm) {
frm.docname
);
- if (df && !df.hidden) {
+ if (df && (!df.hidden || df.show_on_timeline)) {
var field_display_status = frappe.perm.get_field_display_status(
df,
null,
frm.perm
);
- if (field_display_status === "Read" || field_display_status === "Write") {
+ if (
+ field_display_status === "Read" ||
+ field_display_status === "Write" ||
+ (df.hidden && df.show_on_timeline)
+ ) {
parts.push(
__("{0} from {1} to {2} in row #{3}", [
frappe.meta.get_label(frm.fields_dict[row[0]].grid.doctype, p[0]),
@@ -197,14 +205,19 @@ function get_version_timeline_content(version_doc, frm) {
if (data[key] && data[key].length) {
let parts = (data[key] || []).map(function (p) {
var df = frappe.meta.get_docfield(frm.doctype, p[0], frm.docname);
- if (df && !df.hidden) {
+
+ if (df && (!df.hidden || df.show_on_timeline)) {
var field_display_status = frappe.perm.get_field_display_status(
df,
null,
frm.perm
);
- if (field_display_status === "Read" || field_display_status === "Write") {
+ if (
+ field_display_status === "Read" ||
+ field_display_status === "Write" ||
+ (df.hidden && df.show_on_timeline)
+ ) {
return __(frappe.meta.get_label(frm.doctype, p[0]));
}
}
diff --git a/frappe/public/js/frappe/form/form.js b/frappe/public/js/frappe/form/form.js
index bd74ee5bd1..458851e698 100644
--- a/frappe/public/js/frappe/form/form.js
+++ b/frappe/public/js/frappe/form/form.js
@@ -515,7 +515,7 @@ frappe.ui.form.Form = class FrappeForm {
// feedback
frappe.msgprint({
- message: __("{} Complete", [action.label]),
+ message: __("{} Complete", [__(action.label)]),
alert: true,
});
});
diff --git a/frappe/public/js/frappe/form/grid_row.js b/frappe/public/js/frappe/form/grid_row.js
index 5c0a5cbe22..a12aab162b 100644
--- a/frappe/public/js/frappe/form/grid_row.js
+++ b/frappe/public/js/frappe/form/grid_row.js
@@ -840,10 +840,12 @@ export default class GridRow {
delete this.grid.filter[df.fieldname];
}
- this.grid.grid_sortable.option(
- "disabled",
- Object.keys(this.grid.filter).length !== 0
- );
+ if (this.grid.grid_sortable) {
+ this.grid.grid_sortable.option(
+ "disabled",
+ Object.keys(this.grid.filter).length !== 0
+ );
+ }
this.grid.prevent_build = true;
this.grid.grid_pagination.go_to_page(1);
diff --git a/frappe/public/js/frappe/form/script_helpers.js b/frappe/public/js/frappe/form/script_helpers.js
index 4f29a0a487..f47ce99ce6 100644
--- a/frappe/public/js/frappe/form/script_helpers.js
+++ b/frappe/public/js/frappe/form/script_helpers.js
@@ -33,7 +33,7 @@ window.refresh_field = function (n, docname, table_field) {
};
window.set_field_options = function (n, txt) {
- cur_frm.set_df_property(n, "options", txt);
+ cur_frm?.set_df_property(n, "options", txt);
};
window.toggle_field = function (n, hidden) {
diff --git a/frappe/public/js/frappe/utils/utils.js b/frappe/public/js/frappe/utils/utils.js
index 7b6987aa05..c3df8e1987 100644
--- a/frappe/public/js/frappe/utils/utils.js
+++ b/frappe/public/js/frappe/utils/utils.js
@@ -918,18 +918,18 @@ Object.assign(frappe.utils, {
let route = route_str.split("/");
if (route[2] === "Report" || route[0] === "query-report") {
- return __("{0} Report", [route[3] || route[1]]);
+ return __("{0} Report", [__(route[3]) || __(route[1])]);
}
if (route[0] === "List") {
- return __("{0} List", [route[1]]);
+ return __("{0} List", [__(route[1])]);
}
if (route[0] === "modules") {
- return __("{0} Modules", [route[1]]);
+ return __("{0} Modules", [__(route[1])]);
}
if (route[0] === "dashboard") {
- return __("{0} Dashboard", [route[1]]);
+ return __("{0} Dashboard", [__(route[1])]);
}
- return __(frappe.utils.to_title_case(route[0], true));
+ return __(frappe.utils.to_title_case(__(route[0]), true));
},
report_column_total: function (values, column, type) {
if (column.column.disable_total) {
@@ -1213,9 +1213,7 @@ Object.assign(frappe.utils, {
},
flag(country_code) {
- return `
`;
+ return `
`;
},
make_chart(wrapper, custom_options = {}) {
diff --git a/frappe/public/js/frappe/views/reports/query_report.js b/frappe/public/js/frappe/views/reports/query_report.js
index 0284639e6a..1332a186aa 100644
--- a/frappe/public/js/frappe/views/reports/query_report.js
+++ b/frappe/public/js/frappe/views/reports/query_report.js
@@ -462,7 +462,7 @@ frappe.views.QueryReport = class QueryReport extends frappe.views.BaseList {
setup_progress_bar() {
let seconds_elapsed = 0;
- const execution_time = this.report_settings.execution_time || 0;
+ const execution_time = this.report_settings?.execution_time || 0;
if (execution_time < 5) return;
diff --git a/frappe/public/js/frappe/views/workspace/blocks/header.js b/frappe/public/js/frappe/views/workspace/blocks/header.js
index b5b42796d4..072b054bad 100644
--- a/frappe/public/js/frappe/views/workspace/blocks/header.js
+++ b/frappe/public/js/frappe/views/workspace/blocks/header.js
@@ -104,8 +104,16 @@ export default class Header extends Block {
this._data = this.normalizeData(data);
if (data.text !== undefined) {
- let text = this._data.text || "";
+ let text = __(this._data.text) || "";
const contains_html_tag = /<[a-z][\s\S]*>/i.test(text);
+
+ // apply translation to header text
+ let div = document.createElement("div");
+ div.innerHTML = text;
+ let only_text = div.innerText;
+ only_text = frappe.utils.escape_html(only_text);
+ text = text.replace(only_text, __(only_text));
+
this._element.innerHTML = contains_html_tag
? text
: `${text}`;
diff --git a/frappe/public/js/frappe/views/workspace/workspace.js b/frappe/public/js/frappe/views/workspace/workspace.js
index ec1f179cbc..7953e69e0d 100644
--- a/frappe/public/js/frappe/views/workspace/workspace.js
+++ b/frappe/public/js/frappe/views/workspace/workspace.js
@@ -99,15 +99,13 @@ frappe.views.Workspace = class Workspace {
- New
+ ${__("New")}
`).appendTo(this.body);
diff --git a/frappe/public/scss/desk/print_preview.scss b/frappe/public/scss/desk/print_preview.scss
index 5d7f88585b..d345a8819a 100644
--- a/frappe/public/scss/desk/print_preview.scss
+++ b/frappe/public/scss/desk/print_preview.scss
@@ -45,8 +45,16 @@
.layout-side-section.print-preview-sidebar {
padding-right: var(--padding-md);
+ .checkbox label {
+ align-items: unset;
+ }
+
+ .input-area {
+ margin-top: 0.2rem;
+ }
+
.label-area {
- white-space: nowrap;
+ white-space: unset;
}
}
diff --git a/frappe/utils/xlsxutils.py b/frappe/utils/xlsxutils.py
index 9442a4c367..53b44bd5ca 100644
--- a/frappe/utils/xlsxutils.py
+++ b/frappe/utils/xlsxutils.py
@@ -8,6 +8,7 @@ import xlrd
from openpyxl import load_workbook
from openpyxl.styles import Font
from openpyxl.utils import get_column_letter
+from openpyxl.workbook.child import INVALID_TITLE_REGEX
import frappe
from frappe.utils.html_utils import unescape_html
@@ -21,7 +22,8 @@ def make_xlsx(data, sheet_name, wb=None, column_widths=None):
if wb is None:
wb = openpyxl.Workbook(write_only=True)
- ws = wb.create_sheet(sheet_name, 0)
+ sheet_name_sanitized = INVALID_TITLE_REGEX.sub(" ", sheet_name)
+ ws = wb.create_sheet(sheet_name_sanitized, 0)
for i, column_width in enumerate(column_widths):
if column_width: