diff --git a/cypress/integration/web_form.js b/cypress/integration/web_form.js index 36f65a80bc..cbcd9e5bcf 100644 --- a/cypress/integration/web_form.js +++ b/cypress/integration/web_form.js @@ -27,7 +27,9 @@ context("Web Form", () => { cy.wait("@save_form"); + cy.get('.frappe-control[data-fieldname="route"]').scrollIntoView(); cy.get_field("route").should("have.value", "note"); + cy.get(".title-area .indicator-pill") .should("contain.text", "Published") .should("have.class", "green"); diff --git a/frappe/auth.py b/frappe/auth.py index 1658930317..4267c60f73 100644 --- a/frappe/auth.py +++ b/frappe/auth.py @@ -683,7 +683,10 @@ def validate_oauth(authorization_header): uri, http_method, body, headers, required_scopes ) if valid: - frappe.set_user(frappe.db.get_value("OAuth Bearer Token", token, "user")) + user = frappe.db.get_value("OAuth Bearer Token", token, "user") + if not frappe.db.get_value("User", user, "enabled"): + frappe.throw(_("User {0} is disabled").format(user), frappe.AuthenticationError) + frappe.set_user(user) frappe.local.form_dict = form_dict except AttributeError: pass diff --git a/frappe/commands/testing.py b/frappe/commands/testing.py index d1381671b2..a5ffaf0089 100644 --- a/frappe/commands/testing.py +++ b/frappe/commands/testing.py @@ -373,6 +373,7 @@ def run_tests( @click.option("--use-orchestrator", is_flag=True, help="Use orchestrator to run parallel tests") @click.option("--dry-run", is_flag=True, default=False, help="Dont actually run tests") @click.option("--lightmode", is_flag=True, default=False, help="Skips all before test setup") +@click.option("--failfast", is_flag=True, default=False, help="Exit on first failure occurred") @pass_context def run_parallel_tests( context: CliCtxObj, @@ -383,6 +384,7 @@ def run_parallel_tests( use_orchestrator=False, dry_run=False, lightmode=False, + failfast=False, ): from traceback_with_variables import activate_by_import @@ -404,6 +406,7 @@ def run_parallel_tests( total_builds=total_builds, dry_run=dry_run, lightmode=lightmode, + failfast=failfast, ) mode = "Orchestrator" if use_orchestrator else "Parallel" banner = f""" diff --git a/frappe/core/doctype/communication/communication.js b/frappe/core/doctype/communication/communication.js index 86ef59f994..d6103636e8 100644 --- a/frappe/core/doctype/communication/communication.js +++ b/frappe/core/doctype/communication/communication.js @@ -211,8 +211,7 @@ frappe.ui.form.on("Communication", { ], primary_action_label: __("Move"), primary_action(values) { - d.hide(); - frappe.call({ + return frappe.call({ method: "frappe.email.inbox.move_email", args: { communication: frm.doc.name, @@ -220,6 +219,7 @@ frappe.ui.form.on("Communication", { }, freeze: true, callback: function () { + d.hide(); window.history.back(); }, }); diff --git a/frappe/core/doctype/doctype/doctype_list.js b/frappe/core/doctype/doctype/doctype_list.js index 46b5e5b99d..3bb353c266 100644 --- a/frappe/core/doctype/doctype/doctype_list.js +++ b/frappe/core/doctype/doctype/doctype_list.js @@ -103,7 +103,7 @@ frappe.listview_settings["DocType"] = { primary_action_label: __("Create & Continue"), primary_action(values) { if (!values.istable) values.editable_grid = 0; - frappe.db + return frappe.db .insert({ doctype: "DocType", ...values, diff --git a/frappe/core/doctype/file/file.py b/frappe/core/doctype/file/file.py index 3b0514d594..4e9e06a808 100755 --- a/frappe/core/doctype/file/file.py +++ b/frappe/core/doctype/file/file.py @@ -890,6 +890,14 @@ def has_permission(doc, ptype=None, user=None, debug=False): if user != "Guest" and doc.owner == user: return True + if ( + user != "Guest" + and ptype in ["read", "write", "share", "submit"] + and frappe.share.get_shared( + "File", filters=[["share_name", "=", doc.name]], rights=[ptype], user=user + ) + ): + return True if doc.attached_to_doctype and doc.attached_to_name: attached_to_doctype = doc.attached_to_doctype diff --git a/frappe/core/doctype/file/utils.py b/frappe/core/doctype/file/utils.py index 67abd82879..9d2a797ae8 100644 --- a/frappe/core/doctype/file/utils.py +++ b/frappe/core/doctype/file/utils.py @@ -427,6 +427,29 @@ def relink_mismatched_files(doc: "Document") -> None: for df in attach_fields: if doc.get(df.fieldname): relink_files(doc, df.fieldname, doc.__temporary_name) + + # Relink files in child table Attach fields + table_fields = doc.meta.get("fields", {"fieldtype": "Table"}) + for table_df in table_fields: + child_rows = doc.get(table_df.fieldname) or [] + if not child_rows: + continue + + child_meta = frappe.get_meta(table_df.options) + child_attach_fields = child_meta.get("fields", {"fieldtype": ["in", ["Attach", "Attach Image"]]}) + + if not child_attach_fields: + continue + + for child_row in child_rows: + for child_df in child_attach_fields: + file_url = child_row.get(child_df.fieldname) + if file_url: + frappe.db.set_value( + "File", + {"file_url": file_url, "attached_to_name": doc.__temporary_name}, + {"attached_to_name": doc.name}, + ) # delete temporary name after relinking is done doc.delete_key("__temporary_name") diff --git a/frappe/core/doctype/navbar_settings/navbar_settings.json b/frappe/core/doctype/navbar_settings/navbar_settings.json index 1be87bae66..58c743f650 100644 --- a/frappe/core/doctype/navbar_settings/navbar_settings.json +++ b/frappe/core/doctype/navbar_settings/navbar_settings.json @@ -11,7 +11,9 @@ "settings_dropdown", "help_dropdown", "announcements_section", - "announcement_widget" + "announcement_widget", + "announcement_widget_color", + "dismissible_announcement_widget" ], "fields": [ { @@ -47,16 +49,27 @@ "label": "Announcements" }, { - "description": "These announcements will appear inside a dismissible alert below the Navbar.", + "description": "These announcements will appear inside an alert below the Navbar.", "fieldname": "announcement_widget", "fieldtype": "Text Editor", "label": "Announcement Widget", "max_height": "10em" + }, + { + "fieldname": "announcement_widget_color", + "fieldtype": "Color", + "label": "Widget Color" + }, + { + "default": "1", + "fieldname": "dismissible_announcement_widget", + "fieldtype": "Check", + "label": "Is Dismissible" } ], "issingle": 1, "links": [], - "modified": "2024-05-01 14:09:54.587137", + "modified": "2026-02-05 15:19:55.524034", "modified_by": "Administrator", "module": "Core", "name": "Navbar Settings", @@ -74,8 +87,9 @@ } ], "quick_entry": 1, + "row_format": "Dynamic", "sort_field": "creation", "sort_order": "DESC", "states": [], "track_changes": 1 -} \ No newline at end of file +} diff --git a/frappe/core/doctype/navbar_settings/navbar_settings.py b/frappe/core/doctype/navbar_settings/navbar_settings.py index dc3263a27b..d41a3b73ad 100644 --- a/frappe/core/doctype/navbar_settings/navbar_settings.py +++ b/frappe/core/doctype/navbar_settings/navbar_settings.py @@ -17,7 +17,9 @@ class NavbarSettings(Document): from frappe.types import DF announcement_widget: DF.TextEditor | None + announcement_widget_color: DF.Color | None app_logo: DF.AttachImage | None + dismissible_announcement_widget: DF.Check help_dropdown: DF.Table[NavbarItem] settings_dropdown: DF.Table[NavbarItem] # end: auto-generated types diff --git a/frappe/core/doctype/recorder/recorder.js b/frappe/core/doctype/recorder/recorder.js index 735511f5b1..aee75635d0 100644 --- a/frappe/core/doctype/recorder/recorder.js +++ b/frappe/core/doctype/recorder/recorder.js @@ -24,7 +24,7 @@ frappe.ui.form.on("Recorder", { }); let index_grid = frm.fields_dict.suggested_indexes.grid; - index_grid.wrapper.find(".grid-footer").toggle(true); + index_grid.wrapper.find(".grid-footer").toggleClass("hidden", false); index_grid.toggle_checkboxes(true); index_grid.df.cannot_delete_rows = true; index_grid.add_custom_button(__("Add Indexes"), function () { diff --git a/frappe/core/doctype/user/user.js b/frappe/core/doctype/user/user.js index 4be1cfadec..3e9ff32d5e 100644 --- a/frappe/core/doctype/user/user.js +++ b/frappe/core/doctype/user/user.js @@ -201,18 +201,19 @@ frappe.ui.form.on("User", { }, ], primary_action: (values) => { - d.hide(); if (values.new_password !== values.confirm_password) { frappe.throw(__("Passwords do not match!")); } - frappe.call( - "frappe.integrations.doctype.ldap_settings.ldap_settings.reset_password", - { - user: frm.doc.email, - password: values.new_password, - logout: values.logout_sessions, - } - ); + return frappe + .call( + "frappe.integrations.doctype.ldap_settings.ldap_settings.reset_password", + { + user: frm.doc.email, + password: values.new_password, + logout: values.logout_sessions, + } + ) + .then(() => d.hide()); }, }); d.show(); diff --git a/frappe/core/report/database_storage_usage_by_tables/database_storage_usage_by_tables.js b/frappe/core/report/database_storage_usage_by_tables/database_storage_usage_by_tables.js index 5a1ae6f87a..093016705e 100644 --- a/frappe/core/report/database_storage_usage_by_tables/database_storage_usage_by_tables.js +++ b/frappe/core/report/database_storage_usage_by_tables/database_storage_usage_by_tables.js @@ -25,7 +25,7 @@ frappe.query_reports["Database Storage Usage By Tables"] = { size: "small", primary_action_label: "Optimize", primary_action(values) { - frappe.call({ + return frappe.call({ method: "frappe.core.report.database_storage_usage_by_tables.database_storage_usage_by_tables.optimize_doctype", args: { doctype_name: values.doctype_name, @@ -38,9 +38,9 @@ frappe.query_reports["Database Storage Usage By Tables"] = { ) ); } + d.hide(); }, }); - d.hide(); }, }); d.show(); diff --git a/frappe/core/report/database_storage_usage_by_tables/database_storage_usage_by_tables.py b/frappe/core/report/database_storage_usage_by_tables/database_storage_usage_by_tables.py index df0a0c9470..df8dff27ce 100644 --- a/frappe/core/report/database_storage_usage_by_tables/database_storage_usage_by_tables.py +++ b/frappe/core/report/database_storage_usage_by_tables/database_storage_usage_by_tables.py @@ -22,6 +22,7 @@ def execute(filters=None): round((data_length / 1024 / 1024), 2) as data_size, round((index_length / 1024 / 1024), 2) as index_size FROM information_schema.TABLES + WHERE table_schema = DATABASE() ORDER BY (data_length + index_length) DESC; """, "postgres": """ diff --git a/frappe/desk/doctype/dashboard_chart/dashboard_chart.js b/frappe/desk/doctype/dashboard_chart/dashboard_chart.js index e11d496d69..1c3f0e8f1f 100644 --- a/frappe/desk/doctype/dashboard_chart/dashboard_chart.js +++ b/frappe/desk/doctype/dashboard_chart/dashboard_chart.js @@ -488,7 +488,13 @@ frappe.ui.form.on("Dashboard Chart", { }); dialog.show(); - dialog.set_values(frm.dynamic_filters); + if (frm.dynamic_filters) { + let filter_values = {}; + frm.dynamic_filters.forEach((f) => { + filter_values[f[0] + ":" + f[1]] = f[3]; + }); + dialog.set_values(filter_values); + } }); }, diff --git a/frappe/desk/doctype/number_card/number_card.js b/frappe/desk/doctype/number_card/number_card.js index c5621fe6a4..3ec198db4a 100644 --- a/frappe/desk/doctype/number_card/number_card.js +++ b/frappe/desk/doctype/number_card/number_card.js @@ -124,11 +124,6 @@ frappe.ui.form.on("Number Card", { frappe.model.with_doctype(doctype, () => { frappe.get_meta(doctype).fields.map((df) => { if (frappe.model.numeric_fieldtypes.includes(df.fieldtype)) { - if (df.fieldtype == "Currency") { - if (!df.options || df.options !== "Company:company:default_currency") { - return; - } - } aggregate_based_on_fields.push({ label: df.label, value: df.fieldname }); } }); @@ -202,7 +197,6 @@ frappe.ui.form.on("Number Card", { render_filters_table: function (frm) { frm.set_df_property("filters_section", "hidden", 0); let is_document_type = frm.doc.type == "Document Type"; - let is_dynamic_filter = (f) => ["Date", "DateRange"].includes(f.fieldtype) && f.default; let wrapper = $(frm.get_field("filters_json").wrapper).empty(); let table = $(``).appendTo(wrapper); if (frm.has_perm("write")) { - $(`

${__("Click table to edit")}

`).appendTo(wrapper); + $(`

${__("Click table to edit")}

`).appendTo( + wrapper + ); } let filters = JSON.parse(frm.doc.filters_json || "[]"); let filters_set = false; - // Set dynamic filters for reports - if (frm.doc.type == "Report") { - let set_filters = false; - frm.filters.forEach((f) => { - if (is_dynamic_filter(f)) { - filters[f.fieldname] = f.default; - set_filters = true; - } - }); - set_filters && frm.set_value("filters_json", JSON.stringify(filters)); - } - let fields = []; if (is_document_type) { fields = [ @@ -290,7 +274,7 @@ frappe.ui.form.on("Number Card", { } let dialog = new frappe.ui.Dialog({ title: __("Set Filters"), - fields: fields.filter((f) => !is_dynamic_filter(f)), + fields, primary_action: function () { let values = this.get_values(); if (values) { @@ -304,7 +288,7 @@ frappe.ui.form.on("Number Card", { frm.trigger("render_filters_table"); } }, - primary_action_label: __("Set"), + primary_action_label: __("Update"), }); if (is_document_type) { @@ -340,8 +324,6 @@ frappe.ui.form.on("Number Card", { frm.set_df_property("dynamic_filters_section", "hidden", 0); - let is_document_type = frm.doc.type == "Document Type"; - let wrapper = $(frm.get_field("dynamic_filters_json").wrapper).empty(); frm.dynamic_filter_table = $(`
- - - + +
${__("Filter")}${__("Condition")}${__("Value")}${__("Filter")}${__("Expression")}
`).appendTo(wrapper); - frm.dynamic_filters = - frm.doc.dynamic_filters_json && frm.doc.dynamic_filters_json.length > 2 - ? JSON.parse(frm.doc.dynamic_filters_json) - : null; + if (frm.has_perm("write")) { + $(`

${__("Click table to edit")}

`).appendTo( + wrapper + ); + } frm.trigger("set_dynamic_filters_in_table"); - let filters = JSON.parse(frm.doc.filters_json || "[]"); - - let fields = frappe.dashboard_utils.get_fields_for_dynamic_filter_dialog( - is_document_type, - filters, - frm.dynamic_filters - ); - frm.dynamic_filter_table.on("click", () => { if (!frm.has_perm("write")) { return; @@ -380,65 +354,215 @@ frappe.ui.form.on("Number Card", { if (!frappe.boot.developer_mode && frm.doc.is_standard) { frappe.throw(__("Cannot edit filters for standard number cards")); } - let dialog = new frappe.ui.Dialog({ - title: __("Set Dynamic Filters"), - fields: fields, - primary_action: () => { - let values = dialog.get_values(); - dialog.hide(); - let dynamic_filters = []; - for (let key of Object.keys(values)) { - if (is_document_type) { - let [doctype, fieldname] = key.split(":"); - dynamic_filters.push([doctype, fieldname, "=", values[key]]); - } - } - if (is_document_type) { - frm.set_value("dynamic_filters_json", JSON.stringify(dynamic_filters)); - } else { - frm.set_value("dynamic_filters_json", JSON.stringify(values)); - } - frm.trigger("set_dynamic_filters_in_table"); - }, - primary_action_label: __("Set"), - }); - - dialog.show(); - dialog.set_values(frm.dynamic_filters); + frm.trigger("show_dynamic_filter_dialog"); }); }, - set_dynamic_filters_in_table: function (frm) { - frm.dynamic_filters = - frm.doc.dynamic_filters_json && frm.doc.dynamic_filters_json.length > 2 - ? JSON.parse(frm.doc.dynamic_filters_json) - : null; + show_dynamic_filter_dialog: function (frm) { + if (frm.doc.type === "Document Type") { + if (!frm.doc.document_type) { + frappe.msgprint(__("Please select a Document Type first")); + return; + } + frappe.model.with_doctype(frm.doc.document_type, () => { + frm.trigger("show_doctype_dynamic_filter_dialog"); + }); + return; + } - if (!frm.dynamic_filters) { - const filter_row = $(` + if (!frm.doc.report_name) { + frappe.msgprint(__("Please select a Report first")); + return; + } + if (!frm.filters?.length) { + frappe.msgprint(__("No filters available for this report")); + return; + } + frm.trigger("show_report_dynamic_filter_dialog"); + }, + + show_doctype_dynamic_filter_dialog: function (frm) { + const meta = frappe.get_meta(frm.doc.document_type); + const field_options = meta.fields + .filter((df) => df.fieldname && !frappe.model.no_value_type.includes(df.fieldtype)) + .map((df) => ({ label: df.label || df.fieldname, value: df.fieldname })); + + frappe.model.std_fields.forEach((df) => { + field_options.push({ label: df.label, value: df.fieldname }); + }); + + frm.events.show_dynamic_filter_dialog_common(frm, field_options, frm.doc.document_type); + }, + + show_report_dynamic_filter_dialog: function (frm) { + const field_options = frm.filters + .filter((f) => f.fieldname) + .map((f) => ({ label: f.label || f.fieldname, value: f.fieldname })); + + frm.events.show_dynamic_filter_dialog_common(frm, field_options, frm.doc.report_name); + }, + + show_dynamic_filter_dialog_common: function (frm, field_options, doctype_or_report) { + let dynamic_filters = + frm.doc.dynamic_filters_json?.length > 2 + ? JSON.parse(frm.doc.dynamic_filters_json) + : []; + + const dialog = new frappe.ui.Dialog({ + title: __("Set Dynamic Filters"), + fields: [ + { + fieldtype: "HTML", + fieldname: "help_text", + options: frm.events.get_dynamic_filter_help_text(), + }, + { fieldtype: "HTML", fieldname: "filter_area" }, + ], + size: "large", + primary_action: () => { + const filters = []; + dialog.$wrapper.find(".dynamic-filter-row").each(function () { + const $row = $(this); + const fieldname = $row.data("selected_fieldname"); + const expression = $row.find(".filter-expression").val(); + if (fieldname && expression) { + filters.push([doctype_or_report, fieldname, "=", expression]); + } + }); + dialog.hide(); + frm.set_value("dynamic_filters_json", JSON.stringify(filters)); + frm.trigger("set_dynamic_filters_in_table"); + }, + primary_action_label: __("Update"), + }); + + const add_filter_row = frm.events.build_dynamic_filter_interface( + dialog.fields_dict.filter_area.$wrapper, + field_options, + doctype_or_report + ); + + if (dynamic_filters?.length) { + dynamic_filters.forEach((filter) => { + add_filter_row(filter[1], filter[3]); + }); + } else { + add_filter_row(); + } + + dialog.show(); + }, + + get_dynamic_filter_help_text: function () { + return `

+ ${__("Enter expressions that will be evaluated when the card is displayed. For example:")}
+ frappe.defaults.get_user_default("Company")
+ frappe.datetime.get_today()
+

`; + }, + + build_dynamic_filter_interface: function ($filter_area, field_options, doctype_or_report) { + const filter_html = ` +
+ + + + + + + + + +
${__("Field")}${__("Expression")}
+
+ + +
+
+ `; + + $filter_area.html(filter_html); + + const filter_fields = field_options.map((opt) => ({ + fieldname: opt.value, + label: opt.label, + parent: doctype_or_report, + })); + + const add_filter_row = (fieldname = "", expression = "") => { + const row_html = ` + + + + + + + + + + + + + + `; + + const $row = $(row_html); + + const field_select = new frappe.ui.FieldSelect({ + parent: $row.find(".fieldname-select-area"), + doctype: doctype_or_report, + filter_fields: filter_fields, + input_class: "input-xs", + select: (_, selected_fieldname) => { + $row.data("selected_fieldname", selected_fieldname); + }, + }); + + if (fieldname) { + field_select.set_value(doctype_or_report, fieldname); + $row.data("selected_fieldname", fieldname); + } + + $row.find(".filter-expression").val(expression); + $row.data("field_select", field_select); + $filter_area.find(".filter-rows").append($row); + }; + + $filter_area.on("click", ".add-filter", () => add_filter_row()); + $filter_area.on("click", ".remove-filter", function () { + $(this).closest("tr").remove(); + }); + $filter_area.on("click", ".clear-filters", () => { + $filter_area.find(".filter-rows").empty(); + add_filter_row(); + }); + + return add_filter_row; + }, + + set_dynamic_filters_in_table: function (frm) { + let dynamic_filters = + frm.doc.dynamic_filters_json?.length > 2 + ? JSON.parse(frm.doc.dynamic_filters_json) + : []; + + if (!dynamic_filters?.length) { + const filter_row = $(` ${__("Click to Set Dynamic Filters")}`); frm.dynamic_filter_table.find("tbody").html(filter_row); } else { let filter_rows = ""; - if ($.isArray(frm.dynamic_filters)) { - frm.dynamic_filters.forEach((filter) => { - filter_rows += ` - ${filter[1]} - ${filter[2] || ""} - ${filter[3]} - `; - }); - } else { - let condition = "="; - for (let [key, val] of Object.entries(frm.dynamic_filters)) { - filter_rows += ` - ${key} - ${condition} - ${val || ""} - `; - } - } + dynamic_filters.forEach((filter) => { + filter_rows += ` + ${filter[1]} + ${filter[3] || ""} + `; + }); frm.dynamic_filter_table.find("tbody").html(filter_rows); } diff --git a/frappe/desk/doctype/number_card/number_card.json b/frappe/desk/doctype/number_card/number_card.json index 089786fbdc..4382211485 100644 --- a/frappe/desk/doctype/number_card/number_card.json +++ b/frappe/desk/doctype/number_card/number_card.json @@ -1,6 +1,7 @@ { "actions": [], "allow_rename": 1, + "autoname": "field:label", "creation": "2020-04-15 18:06:39.444683", "doctype": "DocType", "editable_grid": 1, @@ -72,7 +73,8 @@ "fieldtype": "Data", "in_list_view": 1, "label": "Label", - "reqd": 1 + "reqd": 1, + "unique": 1 }, { "fieldname": "color", @@ -229,10 +231,11 @@ } ], "links": [], - "modified": "2025-09-17 21:00:11.351605", + "modified": "2026-02-25 16:33:09.032056", "modified_by": "Administrator", "module": "Desk", "name": "Number Card", + "naming_rule": "By fieldname", "owner": "Administrator", "permissions": [ { diff --git a/frappe/desk/form/linked_with.py b/frappe/desk/form/linked_with.py index 4c54d1be4a..ccb681804f 100644 --- a/frappe/desk/form/linked_with.py +++ b/frappe/desk/form/linked_with.py @@ -437,37 +437,19 @@ def get_linked_docs(doctype: str, name: str, linkinfo: dict | None = None) -> di is_target_doctype_table = frappe.get_meta(doctype).istable for linked_doctype, link_context in linkinfo.items(): - # Don't try to fetch linked documents if the user can't read the doctype - if not frappe.has_permission(linked_doctype): - continue - linked_doctype_meta = frappe.get_meta(linked_doctype) if linked_doctype_meta.issingle: continue + has_permission = frappe.has_permission(linked_doctype) filters = [] + or_filters = [] ret = None parent_info = None - fields = [ - d.fieldname - for d in linked_doctype_meta.get( - "fields", - { - "in_list_view": 1, - "fieldtype": ["not in", ("Image", "HTML", "Button", *frappe.model.table_fields)], - }, - ) - ] + ["name", "modified", "docstatus"] - - if add_fields := link_context.get("add_fields"): - fields += add_fields - - fields = [sf.strip() for sf in fields if sf] - if filters_ctx := link_context.get("filters"): - ret = frappe.get_list(doctype=linked_doctype, fields=fields, filters=filters_ctx, order_by=None) + filters = filters_ctx elif link_context.get("get_parent"): # check for child table @@ -478,13 +460,10 @@ def get_linked_docs(doctype: str, name: str, linkinfo: dict | None = None) -> di doctype, name, ["parenttype", "parent"], as_dict=True, order_by=None ) - if parent_info and parent_info.parenttype == linked_doctype: - ret = frappe.get_list( - doctype=linked_doctype, - fields=fields, - filters=[[linked_doctype, "name", "=", parent_info.parent]], - order_by=None, - ) + if not (parent_info and parent_info.parenttype == linked_doctype): + continue + + filters = [[linked_doctype, "name", "=", parent_info.parent]] elif child_doctype := link_context.get("child_doctype"): or_filters = [ @@ -495,15 +474,6 @@ def get_linked_docs(doctype: str, name: str, linkinfo: dict | None = None) -> di if doctype_fieldname := link_context.get("doctype_fieldname"): filters.append([child_doctype, doctype_fieldname, "=", doctype]) - ret = frappe.get_list( - doctype=linked_doctype, - fields=fields, - filters=filters, - or_filters=or_filters, - distinct=True, - order_by=None, - ) - elif link_fieldnames := link_context.get("fieldname"): if isinstance(link_fieldnames, str): link_fieldnames = [link_fieldnames] @@ -518,12 +488,51 @@ def get_linked_docs(doctype: str, name: str, linkinfo: dict | None = None) -> di or frappe.db.exists(linked_doctype, {"parenttype": doctype, "parent": name}) ): continue + + total_count = len( + frappe.get_all( + linked_doctype, + filters=filters, + or_filters=or_filters, + fields=["name"], + order_by=None, + ) + ) + + if not total_count: + continue + + if has_permission: + fields = [ + d.fieldname + for d in linked_doctype_meta.get( + "fields", + { + "in_list_view": 1, + "fieldtype": ["not in", ("Image", "HTML", "Button", *frappe.model.table_fields)], + }, + ) + ] + ["name", "modified", "docstatus"] + + if add_fields := link_context.get("add_fields"): + fields += add_fields + + fields = [sf.strip() for sf in fields if sf] + ret = frappe.get_list( - doctype=linked_doctype, fields=fields, filters=filters, or_filters=or_filters, order_by=None + doctype=linked_doctype, + fields=fields, + filters=filters, + or_filters=or_filters, + distinct=True, + order_by=None, ) - if ret: - results[linked_doctype] = ret + permitted_count = len(ret or []) + results[linked_doctype] = { + "docs": ret or [], + "hidden_count": total_count - permitted_count, + } return results diff --git a/frappe/desk/page/desktop/desktop.css b/frappe/desk/page/desktop/desktop.css index ef5e4e6062..4c294eb722 100644 --- a/frappe/desk/page/desktop/desktop.css +++ b/frappe/desk/page/desktop/desktop.css @@ -87,12 +87,17 @@ } } .modal -.modal-body .icons-container,.folder-icon .icons-container { +.modal-body .icons-container, .folder-icon .icons-container { padding:0px; margin: 0px; height: 100%; + overflow: auto; +} + +.folder-icon .icons-container { overflow: hidden; } + .icons{ gap: 16px; display: grid; diff --git a/frappe/desk/page/desktop/desktop.js b/frappe/desk/page/desktop/desktop.js index 514af59374..ba76bfb88f 100644 --- a/frappe/desk/page/desktop/desktop.js +++ b/frappe/desk/page/desktop/desktop.js @@ -548,7 +548,6 @@ class DesktopPage { frappe.router.on("change", function () { if (frappe.get_route()[0] == "desktop" || frappe.get_route()[0] == "") { me.setup_navbar(); - me.setup_edit_button(); } else { $(".navbar").show(); frappe.desktop_utils.close_desktop_modal(); diff --git a/frappe/locale/bs.po b/frappe/locale/bs.po index c0467055e8..f05ddd2f43 100644 --- a/frappe/locale/bs.po +++ b/frappe/locale/bs.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: frappe\n" "Report-Msgid-Bugs-To: developers@frappe.io\n" "POT-Creation-Date: 2026-02-22 09:42+0000\n" -"PO-Revision-Date: 2026-02-23 22:07\n" +"PO-Revision-Date: 2026-02-25 23:15\n" "Last-Translator: developers@frappe.io\n" "Language-Team: Bosnian\n" "MIME-Version: 1.0\n" @@ -2870,7 +2870,7 @@ msgstr "Dodjela je Završena" #. Label of the assignment_days (Table) field in DocType 'Assignment Rule' #: frappe/automation/doctype/assignment_rule/assignment_rule.json msgid "Assignment Days" -msgstr "Dani Dodjeljivanja" +msgstr "Dani Dodjele" #. Name of a DocType #. Label of the assignment_rule (Link) field in DocType 'ToDo' @@ -2888,7 +2888,7 @@ msgstr "Dan Dodjele Pravila" #. Name of a DocType #: frappe/automation/doctype/assignment_rule_user/assignment_rule_user.json msgid "Assignment Rule User" -msgstr "Korisnik Dodjele Pravila" +msgstr "Korisnik Pravila Dodjele" #: frappe/automation/doctype/assignment_rule/assignment_rule.py:55 msgid "Assignment Rule is not allowed on document type {0}" diff --git a/frappe/locale/fa.po b/frappe/locale/fa.po index cd633e0b2d..8862e8e299 100644 --- a/frappe/locale/fa.po +++ b/frappe/locale/fa.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: frappe\n" "Report-Msgid-Bugs-To: developers@frappe.io\n" "POT-Creation-Date: 2026-02-22 09:42+0000\n" -"PO-Revision-Date: 2026-02-23 22:07\n" +"PO-Revision-Date: 2026-02-25 23:14\n" "Last-Translator: developers@frappe.io\n" "Language-Team: Persian\n" "MIME-Version: 1.0\n" @@ -6314,7 +6314,7 @@ msgstr "سفارشی‌سازی" #: frappe/custom/doctype/customize_form/customize_form.js:89 msgid "Customize Child Table" -msgstr "سفارشی کردن جدول فرزند" +msgstr "سفارشی‌سازی جدول فرزند" #: frappe/public/js/frappe/views/dashboard/dashboard_view.js:38 msgid "Customize Dashboard" @@ -6339,7 +6339,7 @@ msgstr "سفارشی‌سازی فرم - {0}" #. Name of a DocType #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Customize Form Field" -msgstr "سفارشی کردن فیلد فرم" +msgstr "سفارشی‌سازی فیلد فرم" #: frappe/public/js/frappe/list/list_view.js:1994 msgctxt "Customize qucik filters of List View" @@ -18808,7 +18808,7 @@ msgstr "" #: frappe/core/doctype/doctype/doctype.py:1699 msgid "Options for Rating field can range from 3 to 10" -msgstr "گزینه‌های فیلد رتبه بندی می‌تواند از 3 تا 10 باشد" +msgstr "گزینه‌های فیلد رتبه‌بندی می‌تواند از 3 تا 10 باشد" #: frappe/custom/doctype/custom_field/custom_field.js:96 msgid "Options for select. Each option on a new line." diff --git a/frappe/locale/hr.po b/frappe/locale/hr.po index 9f534aaf36..8851d800e9 100644 --- a/frappe/locale/hr.po +++ b/frappe/locale/hr.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: frappe\n" "Report-Msgid-Bugs-To: developers@frappe.io\n" "POT-Creation-Date: 2026-02-22 09:42+0000\n" -"PO-Revision-Date: 2026-02-23 22:07\n" +"PO-Revision-Date: 2026-02-25 23:14\n" "Last-Translator: developers@frappe.io\n" "Language-Team: Croatian\n" "MIME-Version: 1.0\n" @@ -2870,7 +2870,7 @@ msgstr "Dodjela je Završena" #. Label of the assignment_days (Table) field in DocType 'Assignment Rule' #: frappe/automation/doctype/assignment_rule/assignment_rule.json msgid "Assignment Days" -msgstr "Dani Dodjeljivanja" +msgstr "Dani Dodjele" #. Name of a DocType #. Label of the assignment_rule (Link) field in DocType 'ToDo' diff --git a/frappe/locale/main.pot b/frappe/locale/main.pot index 3541f4601c..3fc87f2834 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: 2026-02-22 09:42+0000\n" -"PO-Revision-Date: 2026-02-22 09:42+0000\n" +"POT-Creation-Date: 2026-03-01 09:41+0000\n" +"PO-Revision-Date: 2026-03-01 09:41+0000\n" "Last-Translator: developers@frappe.io\n" "Language-Team: developers@frappe.io\n" "MIME-Version: 1.0\n" @@ -42,7 +42,7 @@ msgstr "" msgid "\"Team Members\" or \"Management\"" msgstr "" -#: frappe/public/js/frappe/form/form.js:1130 +#: frappe/public/js/frappe/form/form.js:1131 msgid "\"amended_from\" field must be present to do an amendment." msgstr "" @@ -76,7 +76,7 @@ msgstr "" msgid "'In Global Search' is not allowed for field {0} of type {1}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1386 +#: frappe/core/doctype/doctype/doctype.py:1392 msgid "'In Global Search' not allowed for type {0} in row {1}" msgstr "" @@ -100,7 +100,7 @@ msgstr "" msgid "'{0}' is not a valid URL" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1380 +#: frappe/core/doctype/doctype/doctype.py:1386 msgid "'{0}' not allowed for type {1} in row {2}" msgstr "" @@ -108,7 +108,7 @@ msgstr "" msgid "(Mandatory)" msgstr "" -#: frappe/model/rename_doc.py:706 +#: frappe/model/rename_doc.py:720 msgid "** Failed: {0} to {1}: {2}" msgstr "" @@ -162,7 +162,7 @@ msgstr "" msgid "1 Google Calendar Event synced." msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:979 +#: frappe/public/js/frappe/views/reports/query_report.js:988 msgid "1 Report" msgstr "" @@ -276,7 +276,7 @@ msgstr "" #. Description of the 'Generate Keys' (Button) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "" -"\n" +"\n" " Click here to learn about token-based authentication\n" "" msgstr "" @@ -628,7 +628,7 @@ msgstr "" msgid ">=" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1055 +#: frappe/core/doctype/doctype/doctype.py:1061 msgid "A DocType's name should start with a letter and can only consist of letters, numbers, spaces, underscores and hyphens" msgstr "" @@ -769,7 +769,7 @@ msgstr "" #. Label of the api_key (Data) field in DocType 'Google Settings' #. Label of the sb_01 (Section Break) field in DocType 'Google Settings' #. Label of the api_key (Data) field in DocType 'Push Notification Settings' -#: frappe/core/doctype/user/user.js:473 frappe/core/doctype/user/user.json +#: frappe/core/doctype/user/user.js:474 frappe/core/doctype/user/user.json #: frappe/email/doctype/email_account/email_account.json #: frappe/integrations/doctype/geolocation_settings/geolocation_settings.json #: frappe/integrations/doctype/google_settings/google_settings.json @@ -788,7 +788,7 @@ msgstr "" msgid "API Key cannot be regenerated" msgstr "" -#: frappe/core/doctype/user/user.js:470 +#: frappe/core/doctype/user/user.js:471 msgid "API Keys" msgstr "" @@ -814,7 +814,7 @@ msgstr "" #. Label of the api_secret (Password) field in DocType 'Email Account' #. Label of the api_secret (Password) field in DocType 'Push Notification #. Settings' -#: frappe/core/doctype/user/user.js:480 frappe/core/doctype/user/user.json +#: frappe/core/doctype/user/user.js:481 frappe/core/doctype/user/user.json #: frappe/email/doctype/email_account/email_account.json #: frappe/integrations/doctype/push_notification_settings/push_notification_settings.json msgid "API Secret" @@ -901,7 +901,7 @@ msgstr "" msgid "Access Token URL" msgstr "" -#: frappe/auth.py:500 +#: frappe/auth.py:504 msgid "Access not allowed from this IP Address" msgstr "" @@ -932,7 +932,7 @@ msgstr "" msgid "Accounts User" msgstr "" -#: frappe/public/js/frappe/form/dashboard.js:510 +#: frappe/public/js/frappe/form/dashboard.js:521 msgid "Accurate count can not be fetched, click here to view all documents" msgstr "" @@ -965,7 +965,7 @@ msgstr "" msgid "Action Complete" msgstr "" -#: frappe/model/document.py:2070 +#: frappe/model/document.py:2071 msgid "Action Failed" msgstr "" @@ -1020,7 +1020,7 @@ msgstr "" #: frappe/public/js/frappe/views/reports/query_report.js:192 #: frappe/public/js/frappe/views/reports/query_report.js:205 #: frappe/public/js/frappe/views/reports/query_report.js:215 -#: frappe/public/js/frappe/views/reports/query_report.js:866 +#: frappe/public/js/frappe/views/reports/query_report.js:897 msgid "Actions" msgstr "" @@ -1084,7 +1084,8 @@ msgstr "" #: frappe/public/js/frappe/form/sidebar/assign_to.js:112 #: frappe/public/js/frappe/form/templates/set_sharing.html:82 #: frappe/public/js/frappe/list/bulk_operations.js:451 -#: frappe/public/js/frappe/list/list_view.js:306 +#: frappe/public/js/frappe/list/list_view.js:307 +#: frappe/public/js/frappe/list/list_view.js:322 #: frappe/public/js/frappe/views/dashboard/dashboard_view.js:441 #: frappe/public/js/frappe/views/reports/query_report.js:267 #: frappe/public/js/frappe/views/reports/query_report.js:295 @@ -1104,7 +1105,7 @@ msgstr "" msgid "Add A New Rule" msgstr "" -#: frappe/public/js/frappe/views/communication.js:653 +#: frappe/public/js/frappe/views/communication.js:672 #: frappe/public/js/frappe/views/interaction.js:159 msgid "Add Attachment" msgstr "" @@ -1124,7 +1125,7 @@ msgstr "" msgid "Add Border at Top" msgstr "" -#: frappe/public/js/frappe/views/communication.js:195 +#: frappe/public/js/frappe/views/communication.js:198 msgid "Add CSS" msgstr "" @@ -1141,10 +1142,10 @@ msgid "Add Child" msgstr "" #: frappe/public/js/frappe/views/kanban/kanban_board.html:4 -#: frappe/public/js/frappe/views/reports/query_report.js:1968 -#: frappe/public/js/frappe/views/reports/query_report.js:1971 -#: frappe/public/js/frappe/views/reports/report_view.js:357 -#: frappe/public/js/frappe/views/reports/report_view.js:382 +#: frappe/public/js/frappe/views/reports/query_report.js:1977 +#: frappe/public/js/frappe/views/reports/query_report.js:1980 +#: frappe/public/js/frappe/views/reports/report_view.js:347 +#: frappe/public/js/frappe/views/reports/report_view.js:372 #: frappe/public/js/print_format_builder/Field.vue:112 msgid "Add Column" msgstr "" @@ -1204,13 +1205,13 @@ msgstr "" msgid "Add Reply-To header" msgstr "" -#: frappe/core/doctype/user/user.py:860 +#: frappe/core/doctype/user/user.py:854 msgid "Add Roles" msgstr "" #. Label of the add_signature (Check) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json -#: frappe/public/js/frappe/views/communication.js:151 +#: frappe/public/js/frappe/views/communication.js:154 msgid "Add Signature" msgstr "" @@ -1233,12 +1234,12 @@ msgstr "" msgid "Add Tags" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2246 +#: frappe/public/js/frappe/list/list_view.js:2261 msgctxt "Button in list view actions menu" msgid "Add Tags" msgstr "" -#: frappe/public/js/frappe/views/communication.js:483 +#: frappe/public/js/frappe/views/communication.js:486 msgid "Add Template" msgstr "" @@ -1386,7 +1387,7 @@ msgstr "" msgid "Add {0}" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:295 +#: frappe/public/js/frappe/list/list_view.js:294 msgctxt "Primary action in list view" msgid "Add {0}" msgstr "" @@ -1530,11 +1531,11 @@ msgstr "" msgid "Administrator" msgstr "" -#: frappe/core/doctype/user/user.py:1272 +#: frappe/core/doctype/user/user.py:1266 msgid "Administrator Logged In" msgstr "" -#: frappe/core/doctype/user/user.py:1266 +#: frappe/core/doctype/user/user.py:1260 msgid "Administrator accessed {0} on {1} via IP Address {2}." msgstr "" @@ -1657,7 +1658,7 @@ msgstr "" msgid "Align Right" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:479 +#: frappe/printing/page/print_format_builder/print_format_builder.js:481 msgid "Align Value" msgstr "" @@ -1714,7 +1715,7 @@ msgstr "" msgid "All Records" msgstr "" -#: frappe/public/js/frappe/form/form.js:2279 +#: frappe/public/js/frappe/form/form.js:2297 msgid "All Submissions" msgstr "" @@ -1879,6 +1880,11 @@ msgstr "" msgid "Allow approval for creator of the document" msgstr "" +#. Label of the bulk_actions (Check) field in DocType 'User' +#: frappe/core/doctype/user/user.json +msgid "Allow bulk actions" +msgstr "" + #. Label of the allow_comments (Check) field in DocType 'Web Form' #: frappe/website/doctype/web_form/web_form.json msgid "Allow comments" @@ -1935,6 +1941,11 @@ msgstr "" msgid "Allow multiple responses" msgstr "" +#. Label of the notifications (Check) field in DocType 'User' +#: frappe/core/doctype/user/user.json +msgid "Allow notifications" +msgstr "" + #. Label of the allow_on_submit (Check) field in DocType 'DocField' #. Label of the allow_on_submit (Check) field in DocType 'Custom Field' #. Label of the allow_on_submit (Check) field in DocType 'Customize Form Field' @@ -2031,7 +2042,7 @@ msgstr "" msgid "Allowed embedding domains" msgstr "" -#: frappe/public/js/frappe/form/form.js:1305 +#: frappe/public/js/frappe/form/form.js:1317 msgid "Allowing DocType, DocType. Be careful!" msgstr "" @@ -2119,7 +2130,7 @@ msgstr "" msgid "Allows users to enable the mask property for any field of the respective doctype." msgstr "" -#: frappe/core/doctype/user/user.py:1080 +#: frappe/core/doctype/user/user.py:1074 msgid "Already Registered" msgstr "" @@ -2127,11 +2138,11 @@ msgstr "" msgid "Already in the following Users ToDo list:{0}" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:941 +#: frappe/public/js/frappe/views/reports/report_view.js:956 msgid "Also adding the dependent currency field {0}" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:954 +#: frappe/public/js/frappe/views/reports/report_view.js:969 msgid "Also adding the status dependency field {0}" msgstr "" @@ -2278,7 +2289,7 @@ msgstr "" msgid "Anonymous responses" msgstr "" -#: frappe/public/js/frappe/request.js:183 +#: frappe/public/js/frappe/request.js:190 msgid "Another transaction is blocking this one. Please try again in a few seconds." msgstr "" @@ -2419,7 +2430,7 @@ msgstr "" msgid "Apply" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2231 +#: frappe/public/js/frappe/list/list_view.js:2246 msgctxt "Button in list view actions menu" msgid "Apply Assignment Rule" msgstr "" @@ -2506,7 +2517,7 @@ msgstr "" msgid "Are you sure you want to cancel the invitation?" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2210 +#: frappe/public/js/frappe/list/list_view.js:2225 msgid "Are you sure you want to clear the assignments?" msgstr "" @@ -2542,7 +2553,7 @@ msgstr "" msgid "Are you sure you want to discard the changes?" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:993 +#: frappe/public/js/frappe/views/reports/query_report.js:1002 msgid "Are you sure you want to generate a new report?" msgstr "" @@ -2574,7 +2585,7 @@ msgstr "" msgid "Are you sure you want to reset all customizations?" msgstr "" -#: frappe/workflow/doctype/workflow/workflow.js:125 +#: frappe/workflow/doctype/workflow/workflow.js:153 msgid "Are you sure you want to save this document?" msgstr "" @@ -2615,7 +2626,7 @@ msgstr "" msgid "Ask" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:90 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:91 msgid "Assign" msgstr "" @@ -2624,16 +2635,16 @@ msgstr "" msgid "Assign Condition" msgstr "" -#: frappe/public/js/frappe/form/sidebar/assign_to.js:194 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:189 msgid "Assign To" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2192 +#: frappe/public/js/frappe/list/list_view.js:2207 msgctxt "Button in list view actions menu" msgid "Assign To" msgstr "" -#: frappe/public/js/frappe/form/sidebar/assign_to.js:204 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:199 msgid "Assign To User Group" msgstr "" @@ -2643,7 +2654,7 @@ msgstr "" msgid "Assign To Users" msgstr "" -#: frappe/public/js/frappe/form/sidebar/assign_to.js:375 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:370 msgid "Assign a user" msgstr "" @@ -2651,7 +2662,7 @@ msgstr "" msgid "Assign one by one, in sequence" msgstr "" -#: frappe/public/js/frappe/form/sidebar/assign_to.js:185 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:180 msgid "Assign to me" msgstr "" @@ -2695,7 +2706,7 @@ msgstr "" msgid "Assignee" msgstr "" -#: frappe/public/js/frappe/form/sidebar/assign_to.js:384 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:379 msgid "Assigning..." msgstr "" @@ -2758,7 +2769,7 @@ msgstr "" #. Label of the enable_email_assignment (Check) field in DocType 'Notification #. Settings' #: frappe/desk/doctype/notification_settings/notification_settings.json -#: frappe/public/js/frappe/form/sidebar/assign_to.js:370 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:365 msgid "Assignments" msgstr "" @@ -2793,7 +2804,7 @@ msgstr "" msgid "Attach" msgstr "" -#: frappe/public/js/frappe/views/communication.js:173 +#: frappe/public/js/frappe/views/communication.js:176 msgid "Attach Document Print" msgstr "" @@ -2891,7 +2902,7 @@ msgstr "" #. Label of the attachments (Code) field in DocType 'Email Queue' #: frappe/email/doctype/email_queue/email_queue.json -#: frappe/public/js/frappe/form/templates/form_sidebar.html:105 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:106 #: frappe/website/doctype/web_form/templates/web_form.html:122 msgid "Attachments" msgstr "" @@ -3319,7 +3330,7 @@ msgstr "" msgid "BCC" msgstr "" -#: frappe/public/js/frappe/views/communication.js:81 +#: frappe/public/js/frappe/views/communication.js:84 msgctxt "Email Recipients" msgid "BCC" msgstr "" @@ -3369,7 +3380,7 @@ msgstr "" #. 'System Health Report' #: frappe/core/workspace/build/build.json #: frappe/desk/doctype/system_health_report/system_health_report.json -#: frappe/public/js/frappe/ui/sidebar/sidebar.js:353 +#: frappe/public/js/frappe/ui/sidebar/sidebar.js:510 msgid "Background Jobs" msgstr "" @@ -3578,7 +3589,7 @@ msgstr "" msgid "Beta" msgstr "" -#: frappe/core/doctype/user/user.py:1289 frappe/utils/password_strength.py:73 +#: frappe/core/doctype/user/user.py:1283 frappe/utils/password_strength.py:73 msgid "Better add a few more letters or another word" msgstr "" @@ -3649,7 +3660,7 @@ msgstr "" msgid "Bot" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:126 +#: frappe/printing/page/print_format_builder/print_format_builder.js:128 msgid "Both DocType and Name required" msgstr "" @@ -3772,11 +3783,6 @@ msgstr "" msgid "Built on {0}" msgstr "" -#. Label of the bulk_actions (Check) field in DocType 'User' -#: frappe/core/doctype/user/user.json -msgid "Bulk Actions" -msgstr "" - #: frappe/core/doctype/user_permission/user_permission_list.js:142 msgid "Bulk Delete" msgstr "" @@ -3785,15 +3791,15 @@ msgstr "" msgid "Bulk Edit" msgstr "" -#: frappe/public/js/frappe/form/grid.js:1304 +#: frappe/public/js/frappe/form/grid.js:1306 msgid "Bulk Edit {0}" msgstr "" -#: frappe/desk/reportview.py:641 +#: frappe/desk/reportview.py:644 msgid "Bulk Operation Failed" msgstr "" -#: frappe/desk/reportview.py:647 +#: frappe/desk/reportview.py:650 msgid "Bulk Operation Successful" msgstr "" @@ -3812,11 +3818,11 @@ msgstr "" msgid "Bulk approval only support up to 500 documents." msgstr "" -#: frappe/desk/doctype/bulk_update/bulk_update.py:64 +#: frappe/desk/doctype/bulk_update/bulk_update.py:67 msgid "Bulk operation is enqueued in background." msgstr "" -#: frappe/desk/doctype/bulk_update/bulk_update.py:76 +#: frappe/desk/doctype/bulk_update/bulk_update.py:79 msgid "Bulk operations only support up to 500 documents." msgstr "" @@ -3917,7 +3923,7 @@ msgstr "" msgid "CC" msgstr "" -#: frappe/public/js/frappe/views/communication.js:74 +#: frappe/public/js/frappe/views/communication.js:77 msgctxt "Email Recipients" msgid "CC" msgstr "" @@ -4024,7 +4030,7 @@ msgid "Camera" msgstr "" #. Label of the campaign (Data) field in DocType 'Web Page View' -#: frappe/public/js/frappe/utils/utils.js:2024 +#: frappe/public/js/frappe/utils/utils.js:2054 #: frappe/website/doctype/web_page_view/web_page_view.json #: frappe/website/report/website_analytics/website_analytics.js:39 msgid "Campaign" @@ -4040,7 +4046,7 @@ msgstr "" msgid "Can not rename as column {0} is already present on DocType." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1184 +#: frappe/core/doctype/doctype/doctype.py:1190 msgid "Can only change to/from Autoincrement naming rule when there is no data in the doctype" msgstr "" @@ -4068,11 +4074,11 @@ msgstr "" #: frappe/core/doctype/user_document_type/user_document_type.json #: frappe/core/doctype/user_invitation/user_invitation.js:17 #: frappe/email/doctype/notification/notification.json -#: frappe/public/js/frappe/form/reminders.js:54 +#: frappe/public/js/frappe/form/reminders.js:53 msgid "Cancel" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2301 +#: frappe/public/js/frappe/list/list_view.js:2316 msgctxt "Button in list view actions menu" msgid "Cancel" msgstr "" @@ -4082,11 +4088,11 @@ msgctxt "Secondary button in warning dialog" msgid "Cancel" msgstr "" -#: frappe/public/js/frappe/form/form.js:1019 +#: frappe/public/js/frappe/form/form.js:1020 msgid "Cancel All" msgstr "" -#: frappe/public/js/frappe/form/form.js:1006 +#: frappe/public/js/frappe/form/form.js:1007 msgid "Cancel All Documents" msgstr "" @@ -4098,7 +4104,7 @@ msgstr "" msgid "Cancel Prepared Report" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2306 +#: frappe/public/js/frappe/list/list_view.js:2321 msgctxt "Title of confirmation dialog" msgid "Cancel {0} documents?" msgstr "" @@ -4131,7 +4137,7 @@ msgstr "" msgid "Cancelling documents" msgstr "" -#: frappe/desk/doctype/bulk_update/bulk_update.py:100 +#: frappe/desk/doctype/bulk_update/bulk_update.py:103 msgid "Cancelling {0}" msgstr "" @@ -4159,7 +4165,7 @@ msgstr "" msgid "Cannot cancel before submitting while transitioning from {0} State to {1} State" msgstr "" -#: frappe/workflow/doctype/workflow/workflow.py:110 +#: frappe/workflow/doctype/workflow/workflow.py:125 msgid "Cannot cancel before submitting. See Transition {0}" msgstr "" @@ -4167,11 +4173,11 @@ msgstr "" msgid "Cannot cancel {0}." msgstr "" -#: frappe/model/document.py:1061 +#: frappe/model/document.py:1062 msgid "Cannot change docstatus from 0 (Draft) to 2 (Cancelled)" msgstr "" -#: frappe/model/document.py:1075 +#: frappe/model/document.py:1076 msgid "Cannot change docstatus from 1 (Submitted) to 0 (Draft)" msgstr "" @@ -4179,11 +4185,11 @@ msgstr "" msgid "Cannot change state of Cancelled Document ({0} State)" msgstr "" -#: frappe/workflow/doctype/workflow/workflow.py:99 +#: frappe/workflow/doctype/workflow/workflow.py:114 msgid "Cannot change state of Cancelled Document. Transition row {0}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1174 +#: frappe/core/doctype/doctype/doctype.py:1180 msgid "Cannot change to/from autoincrement autoname in Customize Form" msgstr "" @@ -4191,7 +4197,7 @@ msgstr "" msgid "Cannot create a {0} against a child document: {1}" msgstr "" -#: frappe/desk/doctype/workspace/workspace.py:298 +#: frappe/desk/doctype/workspace/workspace.py:310 msgid "Cannot create private workspace of other users" msgstr "" @@ -4258,7 +4264,7 @@ msgstr "" msgid "Cannot edit a standard report. Please duplicate and create a new report" msgstr "" -#: frappe/model/document.py:1081 +#: frappe/model/document.py:1082 msgid "Cannot edit cancelled document" msgstr "" @@ -4266,8 +4272,8 @@ msgstr "" msgid "Cannot edit filters for standard charts" msgstr "" -#: frappe/desk/doctype/number_card/number_card.js:289 -#: frappe/desk/doctype/number_card/number_card.js:381 +#: frappe/desk/doctype/number_card/number_card.js:284 +#: frappe/desk/doctype/number_card/number_card.js:376 msgid "Cannot edit filters for standard number cards" msgstr "" @@ -4287,15 +4293,15 @@ msgstr "" msgid "Cannot get file contents of a Folder" msgstr "" -#: frappe/printing/page/print/print.js:923 +#: frappe/printing/page/print/print.js:924 msgid "Cannot have multiple printers mapped to a single print format." msgstr "" -#: frappe/public/js/frappe/form/grid.js:1248 +#: frappe/public/js/frappe/form/grid.js:1250 msgid "Cannot import table with more than 5000 rows." msgstr "" -#: frappe/model/document.py:1279 +#: frappe/model/document.py:1280 msgid "Cannot link cancelled document: {0}" msgstr "" @@ -4311,7 +4317,7 @@ msgstr "" msgid "Cannot move row" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:966 +#: frappe/public/js/frappe/views/reports/report_view.js:981 msgid "Cannot remove ID field" msgstr "" @@ -4336,11 +4342,11 @@ msgstr "" msgid "Cannot update {0}" msgstr "" -#: frappe/model/db_query.py:1245 +#: frappe/model/db_query.py:1249 msgid "Cannot use sub-query here." msgstr "" -#: frappe/model/db_query.py:1277 +#: frappe/model/db_query.py:1281 msgid "Cannot use {0} in order/group by" msgstr "" @@ -4408,7 +4414,7 @@ msgstr "" msgid "Center" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:11 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:10 #: frappe/tests/test_translate.py:111 msgid "Change" msgstr "" @@ -4517,7 +4523,7 @@ msgstr "" #. Label of the chart_type (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json -#: frappe/public/js/frappe/views/reports/report_view.js:544 +#: frappe/public/js/frappe/views/reports/report_view.js:559 msgid "Chart Type" msgstr "" @@ -4568,7 +4574,7 @@ msgstr "" msgid "Check this if the Update Value is a formula or expression (e.g. doc.amount * 2). Leave unchecked for plain text values." msgstr "" -#: frappe/website/doctype/website_settings/website_settings.js:147 +#: frappe/website/doctype/website_settings/website_settings.js:176 msgid "Check this if you don't want users to sign up for an account on your site. Users won't get desk access unless you explicitly provide it." msgstr "" @@ -4587,7 +4593,7 @@ msgstr "" msgid "Checking one moment" msgstr "" -#: frappe/website/doctype/website_settings/website_settings.js:140 +#: frappe/website/doctype/website_settings/website_settings.js:169 msgid "Checking this will enable tracking page views for blogs, web pages, etc." msgstr "" @@ -4619,7 +4625,7 @@ msgstr "" msgid "Child Item" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1678 +#: frappe/core/doctype/doctype/doctype.py:1684 msgid "Child Table {0} for field {1} must be virtual" msgstr "" @@ -4637,7 +4643,7 @@ msgstr "" msgid "Choose Existing Card or create New Card" msgstr "" -#: frappe/public/js/frappe/views/workspace/workspace.js:621 +#: frappe/public/js/frappe/views/workspace/workspace.js:622 msgid "Choose a block or continue typing" msgstr "" @@ -4673,11 +4679,11 @@ msgstr "" msgid "Clear" msgstr "" -#: frappe/public/js/frappe/views/communication.js:488 +#: frappe/public/js/frappe/views/communication.js:491 msgid "Clear & Add Template" msgstr "" -#: frappe/public/js/frappe/views/communication.js:112 +#: frappe/public/js/frappe/views/communication.js:115 msgid "Clear & Add template" msgstr "" @@ -4685,7 +4691,7 @@ msgstr "" msgid "Clear All" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2207 +#: frappe/public/js/frappe/list/list_view.js:2222 msgctxt "Button in list view actions menu" msgid "Clear Assignment" msgstr "" @@ -4711,7 +4717,7 @@ msgstr "" msgid "Clear User Permissions" msgstr "" -#: frappe/public/js/frappe/views/communication.js:489 +#: frappe/public/js/frappe/views/communication.js:492 msgid "Clear the email message and add the template" msgstr "" @@ -4731,7 +4737,7 @@ msgstr "" msgid "Click here" msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:550 +#: frappe/public/js/frappe/file_uploader/FileUploader.vue:535 msgid "Click on a file to select it." msgstr "" @@ -4755,6 +4761,10 @@ msgstr "" msgid "Click on the link below to verify your request" msgstr "" +#: frappe/public/js/frappe/views/workspace/workspace.js:691 +msgid "Click on {0} to edit" +msgstr "" + #: frappe/integrations/doctype/google_calendar/google_calendar.py:118 #: frappe/integrations/doctype/google_contacts/google_contacts.py:41 #: frappe/website/doctype/website_settings/website_settings.py:161 @@ -4762,28 +4772,28 @@ msgid "Click on {0} to generate Refresh Token." msgstr "" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:315 -#: frappe/desk/doctype/number_card/number_card.js:222 +#: frappe/desk/doctype/number_card/number_card.js:217 #: frappe/email/doctype/auto_email_report/auto_email_report.js:99 #: frappe/website/doctype/web_form/web_form.js:252 msgid "Click table to edit" msgstr "" -#: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:502 -#: frappe/desk/doctype/number_card/number_card.js:419 +#: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:508 +#: frappe/desk/doctype/number_card/number_card.js:420 msgid "Click to Set Dynamic Filters" msgstr "" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:372 -#: frappe/desk/doctype/number_card/number_card.js:278 +#: frappe/desk/doctype/number_card/number_card.js:273 #: frappe/website/doctype/web_form/web_form.js:278 msgid "Click to Set Filters" msgstr "" -#: frappe/desk/page/desktop/desktop.js:1261 +#: frappe/desk/page/desktop/desktop.js:1254 msgid "Click to edit" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:754 +#: frappe/public/js/frappe/list/list_view.js:769 msgid "Click to sort by {0}" msgstr "" @@ -4953,7 +4963,7 @@ msgid "Code challenge method" msgstr "" #: frappe/public/js/frappe/form/form_tour.js:276 -#: frappe/public/js/frappe/ui/sidebar/sidebar.html:45 +#: frappe/public/js/frappe/ui/sidebar/sidebar.html:52 #: frappe/public/js/frappe/widgets/base_widget.js:159 msgid "Collapse" msgstr "" @@ -4963,7 +4973,7 @@ msgctxt "Shrink code field." msgid "Collapse" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:2256 +#: frappe/public/js/frappe/views/reports/query_report.js:2265 #: frappe/public/js/frappe/views/treeview.js:124 msgid "Collapse All" msgstr "" @@ -5020,7 +5030,7 @@ msgstr "" #: frappe/desk/doctype/number_card/number_card.json #: frappe/desk/doctype/todo/todo.json #: frappe/desk/doctype/workspace_shortcut/workspace_shortcut.json -#: frappe/public/js/frappe/views/reports/query_report.js:1276 +#: frappe/public/js/frappe/views/reports/query_report.js:1285 #: frappe/public/js/frappe/widgets/widget_dialog.js:546 #: frappe/public/js/frappe/widgets/widget_dialog.js:694 #: frappe/website/doctype/color/color.json @@ -5125,7 +5135,7 @@ msgstr "" #: frappe/core/doctype/comment/comment.json #: frappe/core/doctype/version/version_view.html:52 #: frappe/public/js/frappe/form/controls/comment.js:9 -#: frappe/public/js/frappe/form/sidebar/assign_to.js:248 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:243 #: frappe/templates/includes/comments/comments.html:34 msgid "Comment" msgstr "" @@ -5268,11 +5278,11 @@ msgstr "" msgid "Complete" msgstr "" -#: frappe/public/js/frappe/form/sidebar/assign_to.js:214 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:209 msgid "Complete By" msgstr "" -#: frappe/core/doctype/user/user.py:520 +#: frappe/core/doctype/user/user.py:514 #: frappe/templates/emails/new_user.html:10 msgid "Complete Registration" msgstr "" @@ -5334,8 +5344,8 @@ msgstr "" #: frappe/desk/doctype/bulk_update/bulk_update.json #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:305 #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:439 -#: frappe/desk/doctype/number_card/number_card.js:208 -#: frappe/desk/doctype/number_card/number_card.js:347 +#: frappe/desk/doctype/number_card/number_card.js:203 +#: frappe/desk/doctype/number_card/number_card.js:342 #: frappe/email/doctype/notification/notification.json #: frappe/email/doctype/notification_recipient/notification_recipient.json #: frappe/integrations/doctype/webhook/webhook.json @@ -5379,7 +5389,7 @@ msgstr "" msgid "Configuration" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:526 +#: frappe/public/js/frappe/views/reports/report_view.js:541 msgid "Configure Chart" msgstr "" @@ -5411,7 +5421,7 @@ msgstr "" msgid "Configure various aspects of how document naming works like naming series, current counter." msgstr "" -#: frappe/core/doctype/user/user.js:410 frappe/public/js/frappe/dom.js:342 +#: frappe/core/doctype/user/user.js:411 frappe/public/js/frappe/dom.js:342 #: frappe/www/update-password.html:66 msgid "Confirm" msgstr "" @@ -5596,7 +5606,7 @@ msgstr "" #. Label of the content (Data) field in DocType 'Web Page View' #: frappe/core/doctype/comment/comment.json frappe/desk/doctype/note/note.json #: frappe/desk/doctype/workspace/workspace.json -#: frappe/public/js/frappe/utils/utils.js:2040 +#: frappe/public/js/frappe/utils/utils.js:2070 #: frappe/website/doctype/help_article/help_article.json #: frappe/website/doctype/web_page/web_page.json #: frappe/website/doctype/web_page_view/web_page_view.json @@ -5614,7 +5624,7 @@ msgstr "" msgid "Content Type" msgstr "" -#: frappe/desk/doctype/workspace/workspace.py:88 +#: frappe/desk/doctype/workspace/workspace.py:100 msgid "Content data shoud be a list" msgstr "" @@ -5665,11 +5675,11 @@ msgstr "" msgid "Controls whether new users can sign up using this Social Login Key. If unset, Website Settings is respected." msgstr "" -#: frappe/public/js/frappe/utils/utils.js:1096 +#: frappe/public/js/frappe/utils/utils.js:1119 msgid "Copied to clipboard." msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2525 +#: frappe/public/js/frappe/list/list_view.js:2540 msgid "Copied {0} {1} to clipboard" msgstr "" @@ -5681,16 +5691,16 @@ msgstr "" msgid "Copy embed code" msgstr "" -#: frappe/public/js/frappe/request.js:615 +#: frappe/public/js/frappe/request.js:622 msgid "Copy error to clipboard" msgstr "" #: frappe/public/js/frappe/form/toolbar.js:543 -#: frappe/public/js/frappe/list/list_view.js:2409 +#: frappe/public/js/frappe/list/list_view.js:2424 msgid "Copy to Clipboard" msgstr "" -#: frappe/core/doctype/user/user.js:501 +#: frappe/core/doctype/user/user.js:502 msgid "Copy token to clipboard" msgstr "" @@ -5715,7 +5725,7 @@ msgstr "" msgid "Could not connect to outgoing email server" msgstr "" -#: frappe/model/document.py:1275 +#: frappe/model/document.py:1276 msgid "Could not find {0}" msgstr "" @@ -5748,7 +5758,7 @@ msgstr "" #: frappe/desk/doctype/system_health_report_workers/system_health_report_workers.json #: frappe/public/js/frappe/ui/group_by/group_by.js:19 #: frappe/public/js/frappe/ui/group_by/group_by.js:328 -#: frappe/workflow/doctype/workflow/workflow.js:162 +#: frappe/workflow/doctype/workflow/workflow.js:190 msgid "Count" msgstr "" @@ -5764,7 +5774,7 @@ msgstr "" msgid "Count Filter" msgstr "" -#: frappe/public/js/frappe/form/dashboard.js:509 +#: frappe/public/js/frappe/form/dashboard.js:520 msgid "Count of linked documents" msgstr "" @@ -5822,7 +5832,7 @@ msgstr "" #: frappe/public/js/frappe/list/list_filter.js:121 #: frappe/public/js/frappe/views/file/file_view.js:112 #: frappe/public/js/frappe/views/interaction.js:18 -#: frappe/public/js/frappe/views/reports/query_report.js:1308 +#: frappe/public/js/frappe/views/reports/query_report.js:1317 #: frappe/public/js/frappe/views/workspace/workspace.js:487 #: frappe/workflow/page/workflow_builder/workflow_builder.js:46 msgid "Create" @@ -5842,7 +5852,7 @@ msgid "Create Card" msgstr "" #: frappe/public/js/frappe/views/reports/query_report.js:286 -#: frappe/public/js/frappe/views/reports/query_report.js:1235 +#: frappe/public/js/frappe/views/reports/query_report.js:1244 msgid "Create Chart" msgstr "" @@ -5876,7 +5886,7 @@ msgstr "" msgid "Create New" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:527 +#: frappe/public/js/frappe/list/list_view.js:542 msgctxt "Create a new document from list view" msgid "Create New" msgstr "" @@ -5893,7 +5903,7 @@ msgstr "" msgid "Create Saved Filter" msgstr "" -#: frappe/core/doctype/user/user.js:274 +#: frappe/core/doctype/user/user.js:275 msgid "Create User Email" msgstr "" @@ -5916,7 +5926,7 @@ msgstr "" #: frappe/public/js/frappe/form/controls/link.js:480 #: frappe/public/js/frappe/form/controls/link.js:482 #: frappe/public/js/frappe/form/link_selector.js:147 -#: frappe/public/js/frappe/list/list_view.js:519 +#: frappe/public/js/frappe/list/list_view.js:534 #: frappe/public/js/frappe/web_form/web_form_list.js:226 msgid "Create a new {0}" msgstr "" @@ -5933,7 +5943,7 @@ msgstr "" msgid "Create or Edit Workflow" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:522 +#: frappe/public/js/frappe/list/list_view.js:537 msgid "Create your first {0}" msgstr "" @@ -5959,11 +5969,11 @@ msgstr "" msgid "Created By" msgstr "" -#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:174 +#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:172 msgid "Created By You" msgstr "" -#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:175 +#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:173 msgid "Created By {0}" msgstr "" @@ -5975,7 +5985,7 @@ msgstr "" #: frappe/email/doctype/notification/notification.js:31 frappe/model/meta.py:53 #: frappe/public/js/frappe/model/meta.js:209 #: frappe/public/js/frappe/model/model.js:125 -#: frappe/public/js/frappe/views/dashboard/dashboard_view.js:479 +#: frappe/public/js/frappe/views/dashboard/dashboard_view.js:480 msgid "Created On" msgstr "" @@ -6158,7 +6168,7 @@ msgstr "" msgid "Custom Document Types Limit Exceeded" msgstr "" -#: frappe/desk/desktop.py:512 +#: frappe/desk/desktop.py:481 msgid "Custom Documents" msgstr "" @@ -6204,8 +6214,8 @@ msgstr "" msgid "Custom Group Search if filled needs to contain the user placeholder {0}, eg uid={0},ou=users,dc=example,dc=com" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:190 -#: frappe/printing/page/print_format_builder/print_format_builder.js:762 +#: frappe/printing/page/print_format_builder/print_format_builder.js:192 +#: frappe/printing/page/print_format_builder/print_format_builder.js:764 #: frappe/public/js/print_format_builder/PrintFormatControls.vue:162 msgid "Custom HTML" msgstr "" @@ -6251,7 +6261,7 @@ msgstr "" msgid "Custom Report" msgstr "" -#: frappe/desk/desktop.py:513 +#: frappe/desk/desktop.py:482 msgid "Custom Reports" msgstr "" @@ -6326,7 +6336,7 @@ msgstr "" msgid "Customize" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1968 +#: frappe/public/js/frappe/list/list_view.js:1983 msgctxt "Button in list view menu" msgid "Customize" msgstr "" @@ -6360,7 +6370,7 @@ msgstr "" msgid "Customize Form Field" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1994 +#: frappe/public/js/frappe/list/list_view.js:2009 msgctxt "Customize qucik filters of List View" msgid "Customize Quick Filters" msgstr "" @@ -6478,7 +6488,6 @@ msgstr "" msgid "Dark Theme" msgstr "" -#. Label of the dashboard (Check) field in DocType 'User' #. Label of a Link in the Build Workspace #. Name of a DocType #. Option for the 'Select List View' (Select) field in DocType 'Form Tour' @@ -6487,7 +6496,6 @@ msgstr "" #. Option for the 'Link Type' (Select) field in DocType 'Workspace Sidebar #. Item' #. Label of a Workspace Sidebar Item -#: frappe/core/doctype/user/user.json #: frappe/core/page/dashboard_view/dashboard_view.js:10 #: frappe/core/workspace/build/build.json #: frappe/desk/doctype/dashboard/dashboard.json @@ -6495,7 +6503,7 @@ msgstr "" #: frappe/desk/doctype/workspace_shortcut/workspace_shortcut.json #: frappe/desk/doctype/workspace_sidebar_item/workspace_sidebar_item.json #: frappe/public/js/frappe/ui/toolbar/search_utils.js:576 -#: frappe/public/js/frappe/utils/utils.js:970 +#: frappe/public/js/frappe/utils/utils.js:993 #: frappe/workspace_sidebar/build.json msgid "Dashboard" msgstr "" @@ -6754,7 +6762,7 @@ msgstr "" msgid "Days Before or After" msgstr "" -#: frappe/public/js/frappe/request.js:246 +#: frappe/public/js/frappe/request.js:253 msgid "Deadlock Occurred" msgstr "" @@ -6951,11 +6959,11 @@ msgstr "" msgid "Default display currency" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1408 +#: frappe/core/doctype/doctype/doctype.py:1414 msgid "Default for 'Check' type of field {0} must be either '0' or '1'" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1421 +#: frappe/core/doctype/doctype/doctype.py:1427 msgid "Default value for {0} must be in the list of options." msgstr "" @@ -7017,7 +7025,7 @@ msgstr "" #: frappe/public/js/frappe/form/grid.js:66 #: frappe/public/js/frappe/form/grid_row_form.js:44 #: frappe/public/js/frappe/form/toolbar.js:500 -#: frappe/public/js/frappe/views/reports/report_view.js:1799 +#: frappe/public/js/frappe/views/reports/report_view.js:1814 #: frappe/public/js/frappe/views/treeview.js:337 #: frappe/public/js/frappe/web_form/web_form_list.js:283 #: frappe/templates/discussions/reply_card.html:35 @@ -7025,7 +7033,7 @@ msgstr "" msgid "Delete" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2269 +#: frappe/public/js/frappe/list/list_view.js:2284 msgctxt "Button in list view actions menu" msgid "Delete" msgstr "" @@ -7076,7 +7084,7 @@ msgstr "" msgid "Delete all {0} rows" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:960 +#: frappe/public/js/frappe/views/reports/query_report.js:969 msgid "Delete and Generate New" msgstr "" @@ -7122,12 +7130,12 @@ msgstr "" msgid "Delete this record to allow sending to this email address" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2274 +#: frappe/public/js/frappe/list/list_view.js:2289 msgctxt "Title of confirmation dialog" msgid "Delete {0} item permanently?" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2280 +#: frappe/public/js/frappe/list/list_view.js:2295 msgctxt "Title of confirmation dialog" msgid "Delete {0} items permanently?" msgstr "" @@ -7168,7 +7176,7 @@ msgstr "" msgid "Deleted!" msgstr "" -#: frappe/desk/reportview.py:622 +#: frappe/desk/reportview.py:625 msgid "Deleting {0}" msgstr "" @@ -7500,7 +7508,7 @@ msgstr "" msgid "Disable Sidebar Stats" msgstr "" -#: frappe/website/doctype/website_settings/website_settings.js:146 +#: frappe/website/doctype/website_settings/website_settings.js:175 msgid "Disable Signup for your site" msgstr "" @@ -7577,12 +7585,12 @@ msgctxt "Button in web form" msgid "Discard" msgstr "" -#: frappe/public/js/frappe/views/communication.js:30 +#: frappe/public/js/frappe/views/communication.js:32 msgctxt "Discard Email" msgid "Discard" msgstr "" -#: frappe/public/js/frappe/form/form.js:888 +#: frappe/public/js/frappe/form/form.js:889 msgid "Discard {0}" msgstr "" @@ -7660,7 +7668,7 @@ msgstr "" msgid "Do not create new user if user with email does not exist in the system" msgstr "" -#: frappe/public/js/frappe/form/grid.js:1309 +#: frappe/public/js/frappe/form/grid.js:1311 msgid "Do not edit headers which are preset in the template" msgstr "" @@ -7672,7 +7680,7 @@ msgstr "" msgid "Do you still want to proceed?" msgstr "" -#: frappe/public/js/frappe/form/form.js:998 +#: frappe/public/js/frappe/form/form.js:999 msgid "Do you want to cancel all linked documents?" msgstr "" @@ -7691,6 +7699,11 @@ msgstr "" msgid "Doc Status" msgstr "" +#: frappe/public/js/workflow_builder/store.js:165 +#: frappe/workflow/doctype/workflow/workflow.js:141 +msgid "Doc Status Reset" +msgstr "" + #. Name of a DocType #. Option for the 'Applied On' (Select) field in DocType 'Property Setter' #: frappe/core/doctype/docfield/docfield.json @@ -7708,7 +7721,7 @@ msgstr "" msgid "DocShare" msgstr "" -#: frappe/workflow/doctype/workflow/workflow.js:264 +#: frappe/workflow/doctype/workflow/workflow.js:292 msgid "" "DocStatus of the following states have changed:
{0}
\n" "\t\t\t\tDo you want to update the docstatus of existing documents in those states?
\n" @@ -7764,7 +7777,7 @@ msgstr "" msgid "DocType" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1609 +#: frappe/core/doctype/doctype/doctype.py:1615 msgid "DocType {0} provided for the field {1} must have atleast one Link field" msgstr "" @@ -7857,7 +7870,7 @@ msgstr "" msgid "DocType {} not found" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1049 +#: frappe/core/doctype/doctype/doctype.py:1055 msgid "DocType's name should not start or end with whitespace" msgstr "" @@ -7871,7 +7884,7 @@ msgstr "" msgid "Doctype" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1043 +#: frappe/core/doctype/doctype/doctype.py:1049 msgid "Doctype name is limited to {0} characters ({1})" msgstr "" @@ -7933,19 +7946,19 @@ msgstr "" msgid "Document Links" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1232 +#: frappe/core/doctype/doctype/doctype.py:1238 msgid "Document Links Row #{0}: Could not find field {1} in {2} DocType" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1252 +#: frappe/core/doctype/doctype/doctype.py:1258 msgid "Document Links Row #{0}: Invalid doctype or fieldname." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1215 +#: frappe/core/doctype/doctype/doctype.py:1221 msgid "Document Links Row #{0}: Parent DocType is mandatory for internal links" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1221 +#: frappe/core/doctype/doctype/doctype.py:1227 msgid "Document Links Row #{0}: Table Fieldname is mandatory for internal links" msgstr "" @@ -8140,7 +8153,7 @@ msgid "Document Types and Permissions" msgstr "" #: frappe/core/doctype/submission_queue/submission_queue.py:163 -#: frappe/model/document.py:2141 +#: frappe/model/document.py:2142 msgid "Document Unlocked" msgstr "" @@ -8152,15 +8165,15 @@ msgstr "" msgid "Document follow is not enabled for this user." msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1331 +#: frappe/public/js/frappe/list/list_view.js:1346 msgid "Document has been cancelled" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1330 +#: frappe/public/js/frappe/list/list_view.js:1345 msgid "Document has been submitted" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1329 +#: frappe/public/js/frappe/list/list_view.js:1344 msgid "Document is in draft state" msgstr "" @@ -8188,7 +8201,7 @@ msgstr "" msgid "Document {0} Already Restored" msgstr "" -#: frappe/workflow/doctype/workflow_action/workflow_action.py:212 +#: frappe/workflow/doctype/workflow_action/workflow_action.py:215 msgid "Document {0} has been set to state {1} by {2}" msgstr "" @@ -8198,9 +8211,7 @@ msgid "Documentation Link" msgstr "" #. Label of the documentation_url (Data) field in DocType 'DocField' -#. Label of the documentation_url (Data) field in DocType 'Module Onboarding' #: frappe/core/doctype/docfield/docfield.json -#: frappe/desk/doctype/module_onboarding/module_onboarding.json msgid "Documentation URL" msgstr "" @@ -8298,7 +8309,7 @@ msgstr "" msgid "Double click to edit label" msgstr "" -#: frappe/core/doctype/file/file.js:17 frappe/core/doctype/user/user.js:488 +#: frappe/core/doctype/file/file.js:17 frappe/core/doctype/user/user.js:489 #: frappe/email/doctype/auto_email_report/auto_email_report.js:8 #: frappe/public/js/frappe/form/grid.js:66 msgid "Download" @@ -8329,7 +8340,7 @@ msgstr "" msgid "Download PDF" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:856 +#: frappe/public/js/frappe/views/reports/query_report.js:887 msgid "Download Report" msgstr "" @@ -8538,8 +8549,8 @@ msgstr "" #: frappe/public/js/frappe/form/templates/contact_list.html:13 #: frappe/public/js/frappe/form/toolbar.js:214 #: frappe/public/js/frappe/form/toolbar.js:785 -#: frappe/public/js/frappe/views/reports/query_report.js:904 -#: frappe/public/js/frappe/views/reports/query_report.js:1914 +#: frappe/public/js/frappe/views/reports/query_report.js:913 +#: frappe/public/js/frappe/views/reports/query_report.js:1923 #: frappe/public/js/frappe/widgets/base_widget.js:64 #: frappe/public/js/frappe/widgets/chart_widget.js:299 #: frappe/public/js/frappe/widgets/number_card_widget.js:359 @@ -8550,7 +8561,7 @@ msgstr "" msgid "Edit" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2355 +#: frappe/public/js/frappe/list/list_view.js:2370 msgctxt "Button in list view actions menu" msgid "Edit" msgstr "" @@ -8565,7 +8576,7 @@ msgctxt "Edit grid row" msgid "Edit" msgstr "" -#: frappe/public/js/frappe/ui/address_autocomplete/autocomplete_dialog.js:66 +#: frappe/public/js/frappe/ui/address_autocomplete/autocomplete_dialog.js:64 msgid "Edit Address in Form" msgstr "" @@ -8581,7 +8592,7 @@ msgstr "" msgid "Edit Custom Block" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:761 +#: frappe/printing/page/print_format_builder/print_format_builder.js:763 msgid "Edit Custom HTML" msgstr "" @@ -8589,7 +8600,7 @@ msgstr "" msgid "Edit DocType" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1987 +#: frappe/public/js/frappe/list/list_view.js:2002 msgctxt "Button in list view menu" msgid "Edit DocType" msgstr "" @@ -8611,7 +8622,7 @@ msgstr "" msgid "Edit Format" msgstr "" -#: frappe/public/js/frappe/form/quick_entry.js:349 +#: frappe/public/js/frappe/form/quick_entry.js:356 msgid "Edit Full Form" msgstr "" @@ -8624,7 +8635,7 @@ msgstr "" msgid "Edit Header" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:609 +#: frappe/printing/page/print_format_builder/print_format_builder.js:611 #: frappe/printing/page/print_format_builder/print_format_builder_layout.html:8 msgid "Edit Heading" msgstr "" @@ -8657,7 +8668,7 @@ msgstr "" msgid "Edit Profile" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:173 +#: frappe/printing/page/print_format_builder/print_format_builder.js:175 msgid "Edit Properties" msgstr "" @@ -8692,7 +8703,7 @@ msgstr "" msgid "Edit the {0} Doctype" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:755 +#: frappe/printing/page/print_format_builder/print_format_builder.js:757 msgid "Edit to add content" msgstr "" @@ -8705,7 +8716,7 @@ msgstr "" msgid "Edit your workflow visually using the Workflow Builder." msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:717 +#: frappe/public/js/frappe/views/reports/report_view.js:732 #: frappe/public/js/frappe/widgets/widget_dialog.js:52 msgid "Edit {0}" msgstr "" @@ -8818,7 +8829,7 @@ msgstr "" msgid "Email Account Name" msgstr "" -#: frappe/core/doctype/user/user.py:790 +#: frappe/core/doctype/user/user.py:784 msgid "Email Account added multiple times" msgstr "" @@ -8989,7 +9000,7 @@ msgstr "" #. Label of a Workspace Sidebar Item #: frappe/core/doctype/communication/communication.json #: frappe/email/doctype/email_template/email_template.json -#: frappe/public/js/frappe/views/communication.js:98 +#: frappe/public/js/frappe/views/communication.js:101 #: frappe/workspace_sidebar/email.json msgid "Email Template" msgstr "" @@ -9018,11 +9029,11 @@ msgstr "" msgid "Email has been moved to trash" msgstr "" -#: frappe/core/doctype/user/user.js:276 +#: frappe/core/doctype/user/user.js:277 msgid "Email is mandatory to create User Email" msgstr "" -#: frappe/public/js/frappe/views/communication.js:883 +#: frappe/public/js/frappe/views/communication.js:902 msgid "Email not sent to {0} (unsubscribed / disabled)" msgstr "" @@ -9034,6 +9045,10 @@ msgstr "" msgid "Email queue is currently suspended. Resume to automatically send other emails." msgstr "" +#: frappe/email/doctype/email_queue/email_queue.py:197 +msgid "Email size {0:.2f} MB exceeds the maximum allowed size of {1:.2f} MB" +msgstr "" + #. Label of the section_break_udjs (Section Break) field in DocType 'System #. Health Report' #: frappe/desk/doctype/system_health_report/system_health_report.json @@ -9212,7 +9227,12 @@ msgstr "" msgid "Enable Social Login" msgstr "" -#: frappe/website/doctype/website_settings/website_settings.js:139 +#. Label of the enabled (Check) field in DocType 'Notification Settings' +#: frappe/desk/doctype/notification_settings/notification_settings.json +msgid "Enable System Notification" +msgstr "" + +#: frappe/website/doctype/website_settings/website_settings.js:168 msgid "Enable Tracking Page Views" msgstr "" @@ -9273,11 +9293,6 @@ msgstr "" msgid "Enabled Scheduler" msgstr "" -#. Label of the enabled (Check) field in DocType 'Notification Settings' -#: frappe/desk/doctype/notification_settings/notification_settings.json -msgid "Enabled System Notification" -msgstr "" - #: frappe/email/doctype/email_account/email_account.py:1101 msgid "Enabled email inbox for user {0}" msgstr "" @@ -9396,7 +9411,7 @@ msgstr "" msgid "Enter Code displayed in OTP App." msgstr "" -#: frappe/public/js/frappe/views/communication.js:835 +#: frappe/public/js/frappe/views/communication.js:854 msgid "Enter Email Recipient(s) in the To, CC, or BCC fields" msgstr "" @@ -9542,8 +9557,8 @@ msgid "Error in Header/Footer Script" msgstr "" #: frappe/email/doctype/notification/notification.py:676 -#: frappe/email/doctype/notification/notification.py:815 -#: frappe/email/doctype/notification/notification.py:821 +#: frappe/email/doctype/notification/notification.py:830 +#: frappe/email/doctype/notification/notification.py:836 msgid "Error in Notification" msgstr "" @@ -9559,7 +9574,7 @@ msgstr "" msgid "Error parsing nested filters: {0}. {1}" msgstr "" -#: frappe/desk/search.py:255 +#: frappe/desk/search.py:256 msgid "Error validating \"Ignore User Permissions\"" msgstr "" @@ -9567,7 +9582,7 @@ msgstr "" msgid "Error while connecting to email account {0}" msgstr "" -#: frappe/email/doctype/notification/notification.py:812 +#: frappe/email/doctype/notification/notification.py:827 msgid "Error while evaluating Notification {0}. Please fix your template." msgstr "" @@ -9744,7 +9759,7 @@ msgstr "" msgid "Executing..." msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:2280 +#: frappe/public/js/frappe/views/reports/query_report.js:2289 msgid "Execution Time: {0} sec" msgstr "" @@ -9770,7 +9785,7 @@ msgctxt "Enlarge code field." msgid "Expand" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:2256 +#: frappe/public/js/frappe/views/reports/query_report.js:2265 #: frappe/public/js/frappe/views/treeview.js:134 msgid "Expand All" msgstr "" @@ -9779,7 +9794,7 @@ msgstr "" msgid "Expected 'and' or 'or' operator, found: {0}" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:66 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:40 msgid "Experimental" msgstr "" @@ -9834,13 +9849,13 @@ msgstr "" #: frappe/core/page/permission_manager/permission_manager_help.html:66 #: frappe/public/js/frappe/data_import/data_exporter.js:92 #: frappe/public/js/frappe/data_import/data_exporter.js:244 -#: frappe/public/js/frappe/views/reports/query_report.js:1956 -#: frappe/public/js/frappe/views/reports/report_view.js:1679 +#: frappe/public/js/frappe/views/reports/query_report.js:1965 +#: frappe/public/js/frappe/views/reports/report_view.js:1694 #: frappe/public/js/frappe/widgets/chart_widget.js:315 msgid "Export" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2397 +#: frappe/public/js/frappe/list/list_view.js:2412 msgctxt "Button in list view actions menu" msgid "Export" msgstr "" @@ -9884,11 +9899,11 @@ msgstr "" msgid "Export Type" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1690 +#: frappe/public/js/frappe/views/reports/report_view.js:1705 msgid "Export all matching rows?" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1700 +#: frappe/public/js/frappe/views/reports/report_view.js:1715 msgid "Export all {0} rows?" msgstr "" @@ -10051,7 +10066,7 @@ msgstr "" msgid "Failed to connect to server" msgstr "" -#: frappe/auth.py:707 +#: frappe/auth.py:711 msgid "Failed to decode token, please provide a valid base64-encoded token." msgstr "" @@ -10059,7 +10074,7 @@ msgstr "" msgid "Failed to decrypt key {0}" msgstr "" -#: frappe/desk/reportview.py:639 +#: frappe/desk/reportview.py:642 msgid "Failed to delete {0} documents: {1}" msgstr "" @@ -10120,7 +10135,7 @@ msgstr "" msgid "Failed to retrieve the list of IMAP folders from the server. Please ensure the mailbox is accessible and the account has permission to list folders." msgstr "" -#: frappe/email/doctype/email_queue/email_queue.py:311 +#: frappe/email/doctype/email_queue/email_queue.py:345 msgid "Failed to send email with subject:" msgstr "" @@ -10162,7 +10177,7 @@ msgstr "" msgid "Fax" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:73 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:65 msgid "Feedback" msgstr "" @@ -10223,7 +10238,7 @@ msgstr "" #: frappe/public/js/frappe/list/bulk_operations.js:327 #: frappe/public/js/frappe/list/list_view_permission_restrictions.html:3 #: frappe/public/js/frappe/views/reports/query_report.js:237 -#: frappe/public/js/frappe/views/reports/query_report.js:2015 +#: frappe/public/js/frappe/views/reports/query_report.js:2024 #: frappe/website/doctype/web_form_field/web_form_field.json #: frappe/website/doctype/web_form_list_column/web_form_list_column.json msgid "Field" @@ -10233,7 +10248,7 @@ msgstr "" msgid "Field \"route\" is mandatory for Web Views" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1558 +#: frappe/core/doctype/doctype/doctype.py:1564 msgid "Field \"title\" is mandatory if \"Website Search Field\" is set." msgstr "" @@ -10241,7 +10256,7 @@ msgstr "" msgid "Field \"value\" is mandatory. Please specify value to be updated" msgstr "" -#: frappe/desk/search.py:262 +#: frappe/desk/search.py:263 msgid "Field {0} not found in {1}" msgstr "" @@ -10250,7 +10265,7 @@ msgstr "" msgid "Field Description" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1098 +#: frappe/core/doctype/doctype/doctype.py:1104 msgid "Field Missing" msgstr "" @@ -10306,11 +10321,11 @@ msgstr "" msgid "Field {0} is referring to non-existing doctype {1}." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1686 +#: frappe/core/doctype/doctype/doctype.py:1692 msgid "Field {0} must be a virtual field to support virtual doctype." msgstr "" -#: frappe/public/js/frappe/form/form.js:1807 +#: frappe/public/js/frappe/form/form.js:1814 msgid "Field {0} not found." msgstr "" @@ -10341,7 +10356,7 @@ msgstr "" msgid "Fieldname '{0}' conflicting with a {1} of the name {2} in {3}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1097 +#: frappe/core/doctype/doctype/doctype.py:1103 msgid "Fieldname called {0} must exist to enable autonaming" msgstr "" @@ -10365,7 +10380,7 @@ msgstr "" msgid "Fieldname {0} cannot have special characters like {1}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:2009 +#: frappe/core/doctype/doctype/doctype.py:2015 msgid "Fieldname {0} conflicting with meta object" msgstr "" @@ -10513,12 +10528,12 @@ msgstr "" msgid "File not attached" msgstr "" -#: frappe/core/doctype/file/file.py:771 frappe/public/js/frappe/request.js:194 +#: frappe/core/doctype/file/file.py:771 frappe/public/js/frappe/request.js:201 #: frappe/utils/file_manager.py:221 msgid "File size exceeded the maximum allowed size of {0} MB" msgstr "" -#: frappe/public/js/frappe/request.js:192 +#: frappe/public/js/frappe/request.js:199 msgid "File too big" msgstr "" @@ -10526,7 +10541,7 @@ msgstr "" msgid "File type of {0} is not allowed" msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:657 +#: frappe/public/js/frappe/file_uploader/FileUploader.vue:642 msgid "File upload failed." msgstr "" @@ -10542,8 +10557,8 @@ msgstr "" #: frappe/core/doctype/prepared_report/prepared_report.js:8 #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:305 #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:439 -#: frappe/desk/doctype/number_card/number_card.js:208 -#: frappe/desk/doctype/number_card/number_card.js:347 +#: frappe/desk/doctype/number_card/number_card.js:203 +#: frappe/desk/doctype/number_card/number_card.js:342 #: frappe/email/doctype/auto_email_report/auto_email_report.js:93 #: frappe/public/js/frappe/list/base_list.js:1364 #: frappe/public/js/frappe/ui/filters/filter_list.js:134 @@ -10681,7 +10696,7 @@ msgstr "" msgid "Filters {0}" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1468 +#: frappe/public/js/frappe/views/reports/report_view.js:1483 msgid "Filters:" msgstr "" @@ -10780,11 +10795,11 @@ msgstr "" msgid "Fold" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1482 +#: frappe/core/doctype/doctype/doctype.py:1488 msgid "Fold can not be at the end of the form" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1480 +#: frappe/core/doctype/doctype/doctype.py:1486 msgid "Fold must come before a Section Break" msgstr "" @@ -10813,12 +10828,12 @@ msgstr "" msgid "Folio" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:150 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:151 #: frappe/public/js/frappe/form/toolbar.js:945 msgid "Follow" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:145 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:146 msgid "Followed by" msgstr "" @@ -10830,11 +10845,15 @@ msgstr "" msgid "Following document {0}" msgstr "" +#: frappe/public/js/frappe/form/linked_with.js:54 +msgid "Following documents are linked with {0}" +msgstr "" + #: frappe/website/doctype/web_form/web_form.py:110 msgid "Following fields are missing:" msgstr "" -#: frappe/public/js/frappe/ui/field_group.js:144 +#: frappe/public/js/frappe/ui/field_group.js:169 msgid "Following fields have invalid values:" msgstr "" @@ -10842,7 +10861,7 @@ msgstr "" msgid "Following fields have missing values" msgstr "" -#: frappe/public/js/frappe/ui/field_group.js:131 +#: frappe/public/js/frappe/ui/field_group.js:156 msgid "Following fields have missing values:" msgstr "" @@ -11004,8 +11023,13 @@ msgstr "" msgid "For a dynamic subject, use Jinja tags like this: {{ doc.name }} Delivered" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:2277 -#: frappe/public/js/frappe/views/reports/report_view.js:104 +#: frappe/public/js/frappe/views/reports/report_view.js:435 +msgid "" +"For comparison, use >5, <10 or =324.\n" +"For ranges, use 5:10 (for values between 5 & 10)." +msgstr "" + +#: frappe/public/js/frappe/views/reports/query_report.js:2286 msgid "For comparison, use >5, <10 or =324. For ranges, use 5:10 (for values between 5 & 10)." msgstr "" @@ -11013,7 +11037,7 @@ msgstr "" msgid "For example:" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:786 +#: frappe/printing/page/print_format_builder/print_format_builder.js:788 msgid "For example: If you want to include the document ID, use {0}" msgstr "" @@ -11041,7 +11065,7 @@ msgstr "" msgid "For updating, you can update only selective columns." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1803 +#: frappe/core/doctype/doctype/doctype.py:1809 msgid "For {0} at level {1} in {2} in row {3}" msgstr "" @@ -11276,7 +11300,7 @@ msgstr "" msgid "From" msgstr "" -#: frappe/public/js/frappe/views/communication.js:222 +#: frappe/public/js/frappe/views/communication.js:225 msgctxt "Email Sender" msgid "From" msgstr "" @@ -11297,7 +11321,7 @@ msgstr "" msgid "From Date Field" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1976 +#: frappe/public/js/frappe/views/reports/query_report.js:1985 msgid "From Document Type" msgstr "" @@ -11429,7 +11453,7 @@ msgstr "" msgid "Generate Keys" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:898 +#: frappe/public/js/frappe/views/reports/query_report.js:907 msgid "Generate New Report" msgstr "" @@ -11443,8 +11467,8 @@ msgstr "" msgid "Generate Separate Documents For Each Assignee" msgstr "" -#: frappe/public/js/frappe/ui/sidebar/sidebar.js:348 -#: frappe/public/js/frappe/utils/utils.js:2085 +#: frappe/public/js/frappe/ui/sidebar/sidebar.js:505 +#: frappe/public/js/frappe/utils/utils.js:2115 msgid "Generate Tracking URL" msgstr "" @@ -11517,6 +11541,11 @@ msgstr "" msgid "Get your globally recognized avatar from Gravatar.com" msgstr "" +#: frappe/public/js/frappe/ui/sidebar/sidebar.html:47 +#: frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue:238 +msgid "Getting Started" +msgstr "" + #. Label of the git_branch (Data) field in DocType 'Installed Application' #: frappe/core/doctype/installed_application/installed_application.json msgid "Git Branch" @@ -11929,7 +11958,7 @@ msgstr "" msgid "HTML Editor" msgstr "" -#: frappe/public/js/frappe/views/communication.js:142 +#: frappe/public/js/frappe/views/communication.js:145 msgid "HTML Message" msgstr "" @@ -12072,7 +12101,7 @@ msgstr "" #: frappe/core/doctype/docfield/docfield.json #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json -#: frappe/printing/page/print_format_builder/print_format_builder.js:609 +#: frappe/printing/page/print_format_builder/print_format_builder.js:611 #: frappe/website/doctype/contact_us_settings/contact_us_settings.json #: frappe/website/doctype/website_slideshow_item/website_slideshow_item.json msgid "Heading" @@ -12102,7 +12131,7 @@ msgstr "" #. Label of the help (HTML) field in DocType 'Property Setter' #: frappe/core/doctype/server_script/server_script.json #: frappe/custom/doctype/property_setter/property_setter.json -#: frappe/public/js/frappe/form/templates/form_sidebar.html:81 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:73 #: frappe/public/js/frappe/form/workflow.js:23 #: frappe/public/js/frappe/utils/help.js:27 msgid "Help" @@ -12157,7 +12186,7 @@ msgstr "" msgid "Helvetica Neue" msgstr "" -#: frappe/public/js/frappe/utils/utils.js:2082 +#: frappe/public/js/frappe/utils/utils.js:2112 msgid "Here's your tracking URL" msgstr "" @@ -12193,7 +12222,7 @@ msgstr "" msgid "Hidden Fields" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1763 +#: frappe/public/js/frappe/views/reports/query_report.js:1772 msgid "Hidden columns include:
{0}" msgstr "" @@ -12263,7 +12292,7 @@ msgstr "" msgid "Hide Error" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:488 +#: frappe/printing/page/print_format_builder/print_format_builder.js:490 msgid "Hide Label" msgstr "" @@ -12338,7 +12367,7 @@ msgstr "" #. Option for the 'Priority' (Select) field in DocType 'ToDo' #: frappe/desk/doctype/todo/todo.json -#: frappe/public/js/frappe/form/sidebar/assign_to.js:236 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:231 msgid "High" msgstr "" @@ -12454,16 +12483,16 @@ msgstr "" #: frappe/public/js/frappe/data_import/data_exporter.js:368 #: frappe/public/js/frappe/data_import/data_exporter.js:383 #: frappe/public/js/frappe/list/list_settings.js:340 -#: frappe/public/js/frappe/list/list_view.js:399 -#: frappe/public/js/frappe/list/list_view.js:463 -#: frappe/public/js/frappe/list/list_view.js:2447 +#: frappe/public/js/frappe/list/list_view.js:414 +#: frappe/public/js/frappe/list/list_view.js:478 +#: frappe/public/js/frappe/list/list_view.js:2462 #: frappe/public/js/frappe/model/meta.js:208 #: frappe/public/js/frappe/model/model.js:122 msgid "ID" msgstr "" #: frappe/desk/reportview.py:530 -#: frappe/public/js/frappe/views/reports/report_view.js:1023 +#: frappe/public/js/frappe/views/reports/report_view.js:1038 msgctxt "Label of name column in report" msgid "ID" msgstr "" @@ -12552,7 +12581,7 @@ msgstr "" msgid "Icon Type" msgstr "" -#: frappe/desk/page/desktop/desktop.js:1074 +#: frappe/desk/page/desktop/desktop.js:1072 msgid "Icon is not correctly configured please check the workspace sidebar to it" msgstr "" @@ -12587,7 +12616,7 @@ msgstr "" msgid "If Checked workflow status will not override status in list view" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1815 +#: frappe/core/doctype/doctype/doctype.py:1821 #: frappe/core/report/user_doctype_permissions/user_doctype_permissions.py:45 #: frappe/public/js/frappe/roles_editor.js:71 msgid "If Owner" @@ -12837,8 +12866,8 @@ msgstr "" msgid "Illegal Document Status for {0}" msgstr "" -#: frappe/model/db_query.py:541 frappe/model/db_query.py:544 -#: frappe/model/db_query.py:1231 +#: frappe/model/db_query.py:545 frappe/model/db_query.py:548 +#: frappe/model/db_query.py:1235 msgid "Illegal SQL Query" msgstr "" @@ -12881,7 +12910,7 @@ msgstr "" #. Label of the image_height (Float) field in DocType 'Letter Head' #. Label of the footer_image_height (Float) field in DocType 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json -msgid "Image Height" +msgid "Image Height (px)" msgstr "" #. Label of the image_link (Attach) field in DocType 'About Us Team Member' @@ -12896,14 +12925,14 @@ msgstr "" #. Label of the image_width (Float) field in DocType 'Letter Head' #. Label of the footer_image_width (Float) field in DocType 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json -msgid "Image Width" +msgid "Image Width (px)" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1538 +#: frappe/core/doctype/doctype/doctype.py:1544 msgid "Image field must be a valid fieldname" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1540 +#: frappe/core/doctype/doctype/doctype.py:1546 msgid "Image field must be of type Attach Image" msgstr "" @@ -12911,7 +12940,7 @@ msgstr "" msgid "Image link '{0}' is not valid" msgstr "" -#: frappe/core/doctype/file/file.js:114 +#: frappe/core/doctype/file/file.js:123 msgid "Image optimized" msgstr "" @@ -12925,11 +12954,11 @@ msgstr "" #. Option for the 'Operation' (Select) field in DocType 'Activity Log' #: frappe/core/doctype/activity_log/activity_log.json -#: frappe/core/doctype/user/user.js:382 +#: frappe/core/doctype/user/user.js:383 msgid "Impersonate" msgstr "" -#: frappe/core/doctype/user/user.js:409 +#: frappe/core/doctype/user/user.js:410 msgid "Impersonate as {0}" msgstr "" @@ -12960,7 +12989,7 @@ msgstr "" msgid "Import" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1932 +#: frappe/public/js/frappe/list/list_view.js:1947 msgctxt "Button in list view menu" msgid "Import" msgstr "" @@ -13183,15 +13212,15 @@ msgid "Include Web View Link in Email" msgstr "" #: frappe/public/js/frappe/form/print_utils.js:60 -#: frappe/public/js/frappe/views/reports/query_report.js:1737 +#: frappe/public/js/frappe/views/reports/query_report.js:1746 msgid "Include filters" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1759 +#: frappe/public/js/frappe/views/reports/query_report.js:1768 msgid "Include hidden columns" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1729 +#: frappe/public/js/frappe/views/reports/query_report.js:1738 msgid "Include indentation" msgstr "" @@ -13238,7 +13267,7 @@ msgstr "" msgid "Incomplete Virtual Doctype Implementation" msgstr "" -#: frappe/auth.py:264 +#: frappe/auth.py:268 msgid "Incomplete login details" msgstr "" @@ -13262,11 +13291,11 @@ msgstr "" msgid "Incorrect configuration" msgstr "" -#: frappe/model/document.py:1733 +#: frappe/model/document.py:1734 msgid "Incorrect value in row {0}:" msgstr "" -#: frappe/model/document.py:1735 +#: frappe/model/document.py:1736 msgid "Incorrect value:" msgstr "" @@ -13283,7 +13312,7 @@ msgstr "" #: frappe/custom/doctype/custom_field/custom_field.json frappe/model/meta.py:55 #: frappe/public/js/frappe/model/meta.js:211 #: frappe/public/js/frappe/model/model.js:124 -#: frappe/public/js/frappe/views/reports/report_view.js:1044 +#: frappe/public/js/frappe/views/reports/report_view.js:1059 msgid "Index" msgstr "" @@ -13365,7 +13394,7 @@ msgstr "" #. Label of the insert_after (Select) field in DocType 'Custom Field' #: frappe/custom/doctype/custom_field/custom_field.json -#: frappe/public/js/frappe/views/reports/query_report.js:2021 +#: frappe/public/js/frappe/views/reports/query_report.js:2030 msgid "Insert After" msgstr "" @@ -13381,7 +13410,7 @@ msgstr "" msgid "Insert Below" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:392 +#: frappe/public/js/frappe/views/reports/report_view.js:382 msgid "Insert Column Before {0}" msgstr "" @@ -13509,7 +13538,7 @@ msgstr "" msgid "Intermediate" msgstr "" -#: frappe/public/js/frappe/request.js:229 +#: frappe/public/js/frappe/request.js:236 msgid "Internal Server Error" msgstr "" @@ -13564,7 +13593,7 @@ msgstr "" #: frappe/public/js/form_builder/utils.js:221 #: frappe/public/js/frappe/form/grid_row.js:843 #: frappe/public/js/frappe/form/layout.js:809 -#: frappe/public/js/frappe/views/reports/report_view.js:755 +#: frappe/public/js/frappe/views/reports/report_view.js:770 msgid "Invalid \"depends_on\" expression" msgstr "" @@ -13616,8 +13645,8 @@ msgstr "" msgid "Invalid Doctype" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1295 -#: frappe/core/doctype/doctype/doctype.py:1304 +#: frappe/core/doctype/doctype/doctype.py:1301 +#: frappe/core/doctype/doctype/doctype.py:1310 msgid "Invalid Fieldname" msgstr "" @@ -13669,8 +13698,8 @@ msgstr "" msgid "Invalid Operation" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1673 -#: frappe/core/doctype/doctype/doctype.py:1681 +#: frappe/core/doctype/doctype/doctype.py:1679 +#: frappe/core/doctype/doctype/doctype.py:1687 msgid "Invalid Option" msgstr "" @@ -13708,11 +13737,11 @@ msgstr "" msgid "Invalid Search Field {0}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1235 +#: frappe/core/doctype/doctype/doctype.py:1241 msgid "Invalid Table Fieldname" msgstr "" -#: frappe/public/js/workflow_builder/store.js:192 +#: frappe/public/js/workflow_builder/store.js:229 msgid "Invalid Transition" msgstr "" @@ -13726,7 +13755,7 @@ msgstr "" msgid "Invalid User Name or Support Password. Please rectify and try again." msgstr "" -#: frappe/public/js/frappe/ui/field_group.js:142 +#: frappe/public/js/frappe/ui/field_group.js:167 msgid "Invalid Values" msgstr "" @@ -13758,7 +13787,7 @@ msgstr "" msgid "Invalid characters in fieldname: {0}. Only letters, numbers, and underscores are allowed." msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:401 +#: frappe/public/js/frappe/views/reports/report_view.js:391 msgid "Invalid column" msgstr "" @@ -13770,7 +13799,7 @@ msgstr "" msgid "Invalid direction in Order By: {0}. Must be 'ASC' or 'DESC'." msgstr "" -#: frappe/model/document.py:1064 frappe/model/document.py:1078 +#: frappe/model/document.py:1065 frappe/model/document.py:1079 msgid "Invalid docstatus" msgstr "" @@ -13802,7 +13831,7 @@ msgstr "" msgid "Invalid field type: {0}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1106 +#: frappe/core/doctype/doctype/doctype.py:1112 msgid "Invalid fieldname '{0}' in autoname" msgstr "" @@ -13909,7 +13938,7 @@ msgstr "" msgid "Invalid wkhtmltopdf version" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1596 +#: frappe/core/doctype/doctype/doctype.py:1602 msgid "Invalid {0} condition" msgstr "" @@ -14112,7 +14141,7 @@ msgstr "" msgid "Is Published Field" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1547 +#: frappe/core/doctype/doctype/doctype.py:1553 msgid "Is Published Field must be a valid fieldname" msgstr "" @@ -14601,7 +14630,7 @@ msgid "LDAP Username Field" msgstr "" #: frappe/integrations/doctype/ldap_settings/ldap_settings.py:310 -#: frappe/integrations/doctype/ldap_settings/ldap_settings.py:429 +#: frappe/integrations/doctype/ldap_settings/ldap_settings.py:431 msgid "LDAP is not enabled." msgstr "" @@ -14657,7 +14686,7 @@ msgstr "" #: frappe/desk/doctype/workspace_quick_list/workspace_quick_list.json #: frappe/desk/doctype/workspace_shortcut/workspace_shortcut.json #: frappe/desk/doctype/workspace_sidebar_item/workspace_sidebar_item.json -#: frappe/printing/page/print_format_builder/print_format_builder.js:474 +#: frappe/printing/page/print_format_builder/print_format_builder.js:476 #: frappe/public/js/form_builder/components/Field.vue:213 #: frappe/public/js/frappe/widgets/widget_dialog.js:183 #: frappe/public/js/frappe/widgets/widget_dialog.js:251 @@ -14752,11 +14781,11 @@ msgstr "" msgid "Last Active" msgstr "" -#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:163 +#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:161 msgid "Last Edited by You" msgstr "" -#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:164 +#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:162 msgid "Last Edited by {0}" msgstr "" @@ -14790,7 +14819,7 @@ msgid "Last Modified Date" msgstr "" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:242 -#: frappe/public/js/frappe/views/dashboard/dashboard_view.js:480 +#: frappe/public/js/frappe/views/dashboard/dashboard_view.js:481 msgid "Last Modified On" msgstr "" @@ -14880,7 +14909,7 @@ msgstr "" msgid "Last Year" msgstr "" -#: frappe/public/js/frappe/widgets/chart_widget.js:753 +#: frappe/public/js/frappe/widgets/chart_widget.js:760 msgid "Last synced {0}" msgstr "" @@ -14931,7 +14960,7 @@ msgstr "" msgid "Left" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:483 +#: frappe/printing/page/print_format_builder/print_format_builder.js:485 #: frappe/public/js/print_format_builder/PrintFormatControls.vue:155 msgctxt "alignment" msgid "Left" @@ -14973,7 +15002,7 @@ msgstr "" msgid "Length of {0} should be between 1 and 1000" msgstr "" -#: frappe/public/js/frappe/widgets/chart_widget.js:729 +#: frappe/public/js/frappe/widgets/chart_widget.js:736 msgid "Less" msgstr "" @@ -15124,6 +15153,10 @@ msgstr "" msgid "Liked By" msgstr "" +#: frappe/public/js/frappe/ui/like.js:117 +msgid "Liked by {0} people" +msgstr "" + #. Label of the likes (Int) field in DocType 'Help Article' #: frappe/website/doctype/help_article/help_article.json msgid "Likes" @@ -15207,7 +15240,7 @@ msgid "Link Document Type" msgstr "" #: frappe/website/doctype/personal_data_deletion_request/personal_data_deletion_request.py:407 -#: frappe/workflow/doctype/workflow_action/workflow_action.py:211 +#: frappe/workflow/doctype/workflow_action/workflow_action.py:214 msgid "Link Expired" msgstr "" @@ -15308,10 +15341,6 @@ msgstr "" msgid "Linked" msgstr "" -#: frappe/public/js/frappe/form/linked_with.js:23 -msgid "Linked With" -msgstr "" - #: frappe/public/js/frappe/ui/toolbar/about.js:11 msgid "LinkedIn" msgstr "" @@ -15333,6 +15362,8 @@ msgstr "" #: frappe/desk/doctype/event/event.json #: frappe/desk/doctype/sidebar_item_group/sidebar_item_group.json #: frappe/desk/doctype/workspace/workspace.json +#: frappe/public/js/frappe/form/linked_with.js:23 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:81 msgid "Links" msgstr "" @@ -15344,7 +15375,7 @@ msgstr "" #: frappe/desk/doctype/form_tour/form_tour.json #: frappe/desk/doctype/workspace_shortcut/workspace_shortcut.json #: frappe/public/js/frappe/ui/toolbar/search_utils.js:86 -#: frappe/public/js/frappe/utils/utils.js:961 +#: frappe/public/js/frappe/utils/utils.js:984 msgid "List" msgstr "" @@ -15374,7 +15405,7 @@ msgstr "" msgid "List Settings" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2085 +#: frappe/public/js/frappe/list/list_view.js:2100 msgctxt "Button in list view menu" msgid "List Settings" msgstr "" @@ -15443,9 +15474,9 @@ msgstr "" #: frappe/public/js/frappe/form/controls/multicheck.js:13 #: frappe/public/js/frappe/form/linked_with.js:13 #: frappe/public/js/frappe/list/base_list.js:509 -#: frappe/public/js/frappe/list/list_view.js:376 +#: frappe/public/js/frappe/list/list_view.js:391 #: frappe/public/js/frappe/ui/listing.html:16 -#: frappe/public/js/frappe/views/reports/query_report.js:1132 +#: frappe/public/js/frappe/views/reports/query_report.js:1141 msgid "Loading" msgstr "" @@ -15603,7 +15634,7 @@ msgstr "" msgid "Login link sent to your email" msgstr "" -#: frappe/auth.py:348 frappe/auth.py:351 +#: frappe/auth.py:352 frappe/auth.py:355 msgid "Login not allowed at this time" msgstr "" @@ -15737,7 +15768,7 @@ msgstr "" #. Option for the 'Priority' (Select) field in DocType 'ToDo' #: frappe/desk/doctype/todo/todo.json -#: frappe/public/js/frappe/form/sidebar/assign_to.js:228 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:223 msgid "Low" msgstr "" @@ -15833,7 +15864,7 @@ msgstr "" msgid "Manage 3rd party apps" msgstr "" -#: frappe/public/js/billing.bundle.js:71 +#: frappe/public/js/billing.bundle.js:81 msgid "Manage Billing" msgstr "" @@ -15865,7 +15896,7 @@ msgstr "" msgid "Mandatory Depends On (JS)" msgstr "" -#: frappe/website/doctype/web_form/web_form.py:538 +#: frappe/website/doctype/web_form/web_form.py:535 msgid "Mandatory Information missing:" msgstr "" @@ -16066,7 +16097,7 @@ msgstr "" msgid "Max signups allowed per hour" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1374 +#: frappe/core/doctype/doctype/doctype.py:1380 msgid "Max width for type Currency is 100px in row {0}" msgstr "" @@ -16083,7 +16114,7 @@ msgstr "" msgid "Maximum attachment limit of {0} has been reached." msgstr "" -#: frappe/model/rename_doc.py:692 +#: frappe/model/rename_doc.py:706 msgid "Maximum {0} rows allowed" msgstr "" @@ -16106,8 +16137,8 @@ msgstr "" #. Option for the 'Priority' (Select) field in DocType 'ToDo' #. Label of the medium (Data) field in DocType 'Web Page View' #: frappe/desk/doctype/todo/todo.json -#: frappe/public/js/frappe/form/sidebar/assign_to.js:232 -#: frappe/public/js/frappe/utils/utils.js:2032 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:227 +#: frappe/public/js/frappe/utils/utils.js:2062 #: frappe/website/doctype/web_page_view/web_page_view.json #: frappe/website/report/website_analytics/website_analytics.js:40 msgid "Medium" @@ -16190,13 +16221,13 @@ msgstr "" #: frappe/email/doctype/notification/notification.js:215 #: frappe/email/doctype/notification/notification.json #: frappe/public/js/frappe/ui/messages.js:182 -#: frappe/public/js/frappe/views/communication.js:135 +#: frappe/public/js/frappe/views/communication.js:138 #: frappe/workflow/doctype/workflow_document_state/workflow_document_state.json #: frappe/www/message.html:3 msgid "Message" msgstr "" -#: frappe/public/js/frappe/ui/messages.js:274 frappe/utils/messages.py:81 +#: frappe/public/js/frappe/ui/messages.js:274 frappe/utils/messages.py:90 msgctxt "Default title of the message dialog" msgid "Message" msgstr "" @@ -16227,7 +16258,7 @@ msgstr "" msgid "Message Type" msgstr "" -#: frappe/public/js/frappe/views/communication.js:1019 +#: frappe/public/js/frappe/views/communication.js:1038 msgid "Message clipped" msgstr "" @@ -16415,7 +16446,7 @@ msgstr "" msgid "Missing DocType" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1558 +#: frappe/core/doctype/doctype/doctype.py:1564 msgid "Missing Field" msgstr "" @@ -16435,9 +16466,9 @@ msgstr "" msgid "Missing Value" msgstr "" -#: frappe/public/js/frappe/ui/field_group.js:129 +#: frappe/public/js/frappe/ui/field_group.js:154 #: frappe/public/js/frappe/widgets/widget_dialog.js:374 -#: frappe/public/js/workflow_builder/store.js:97 +#: frappe/public/js/workflow_builder/store.js:101 #: frappe/workflow/doctype/workflow/workflow.js:71 msgid "Missing Values Required" msgstr "" @@ -16500,7 +16531,7 @@ msgstr "" #: frappe/email/doctype/notification/notification.json #: frappe/printing/doctype/print_format/print_format.json #: frappe/printing/doctype/print_format_field_template/print_format_field_template.json -#: frappe/public/js/frappe/utils/utils.js:964 +#: frappe/public/js/frappe/utils/utils.js:987 #: frappe/website/doctype/web_form/web_form.json #: frappe/website/doctype/web_template/web_template.json #: frappe/website/doctype/website_theme/website_theme.json @@ -16541,8 +16572,10 @@ msgstr "" #. Label of a Link in the Build Workspace #. Name of a DocType +#. Label of the module_onboarding (Link) field in DocType 'Workspace Sidebar' #: frappe/core/workspace/build/build.json #: frappe/desk/doctype/module_onboarding/module_onboarding.json +#: frappe/desk/doctype/workspace_sidebar/workspace_sidebar.json msgid "Module Onboarding" msgstr "" @@ -16558,7 +16591,7 @@ msgstr "" msgid "Module Profile Name" msgstr "" -#: frappe/desk/doctype/module_onboarding/module_onboarding.py:73 +#: frappe/desk/doctype/module_onboarding/module_onboarding.py:70 msgid "Module onboarding progress reset" msgstr "" @@ -16644,7 +16677,7 @@ msgstr "" #: frappe/public/js/frappe/form/multi_select_dialog.js:72 #: frappe/public/js/frappe/ui/toolbar/search.js:285 #: frappe/public/js/frappe/ui/toolbar/search.js:300 -#: frappe/public/js/frappe/widgets/chart_widget.js:729 +#: frappe/public/js/frappe/widgets/chart_widget.js:736 #: frappe/templates/includes/list/list.html:27 #: frappe/templates/includes/search_template.html:13 msgid "More" @@ -16670,6 +16703,10 @@ msgstr "" msgid "More Information" msgstr "" +#: frappe/public/js/frappe/views/communication.js:65 +msgid "More Options" +msgstr "" + #: frappe/website/doctype/help_article/templates/help_article.html:19 msgid "More articles on {0}" msgstr "" @@ -16785,7 +16822,7 @@ msgstr "" msgid "Must have report permission to access this report." msgstr "" -#: frappe/core/doctype/report/report.py:156 +#: frappe/core/doctype/report/report.py:165 msgid "Must specify a Query to run" msgstr "" @@ -16799,7 +16836,7 @@ msgid "Mx" msgstr "" #: frappe/templates/includes/web_sidebar.html:41 -#: frappe/website/doctype/web_form/web_form.py:527 +#: frappe/website/doctype/web_form/web_form.py:524 #: frappe/website/doctype/website_settings/website_settings.py:181 #: frappe/www/me.html:8 frappe/www/update_password.py:10 msgid "My Account" @@ -16872,7 +16909,7 @@ msgstr "" msgid "Name of the Document Type (DocType) you want this field to be linked to. e.g. Customer" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:117 +#: frappe/printing/page/print_format_builder/print_format_builder.js:119 msgid "Name of the new Print Format" msgstr "" @@ -16953,12 +16990,12 @@ msgstr "" msgid "Navbar Template Values" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1406 +#: frappe/public/js/frappe/list/list_view.js:1421 msgctxt "Description of a list view shortcut" msgid "Navigate list down" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1413 +#: frappe/public/js/frappe/list/list_view.js:1428 msgctxt "Description of a list view shortcut" msgid "Navigate list up" msgstr "" @@ -16967,26 +17004,21 @@ msgstr "" msgid "Navigate to main content" msgstr "" -#. Label of the form_navigation_buttons (Check) field in DocType 'User' -#: frappe/core/doctype/user/user.json -msgid "Navigation Buttons" -msgstr "" - #. Label of the navigation_settings_section (Section Break) field in DocType #. 'User' #: frappe/core/doctype/user/user.json msgid "Navigation Settings" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:498 +#: frappe/public/js/frappe/list/list_view.js:513 msgid "Need Help?" msgstr "" -#: frappe/desk/doctype/workspace/workspace.py:352 +#: frappe/desk/doctype/workspace/workspace.py:364 msgid "Need Workspace Manager role to edit private workspace of other users" msgstr "" -#: frappe/model/document.py:836 +#: frappe/model/document.py:837 msgid "Negative Value" msgstr "" @@ -17060,7 +17092,7 @@ msgid "New Document Shared {0}" msgstr "" #: frappe/public/js/frappe/form/footer/form_timeline.js:27 -#: frappe/public/js/frappe/views/communication.js:23 +#: frappe/public/js/frappe/views/communication.js:25 msgid "New Email" msgstr "" @@ -17126,7 +17158,7 @@ msgstr "" msgid "New Quick List" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1425 +#: frappe/public/js/frappe/views/reports/report_view.js:1440 msgid "New Report name" msgstr "" @@ -17234,7 +17266,7 @@ msgstr "" msgid "New {} releases for the following apps are available" msgstr "" -#: frappe/core/doctype/user/user.py:856 +#: frappe/core/doctype/user/user.py:850 msgid "Newly created user {0} has no roles enabled." msgstr "" @@ -17460,12 +17492,12 @@ msgstr "" #: frappe/public/js/print_format_builder/Field.vue:24 #: frappe/public/js/workflow_builder/components/ActionNode.vue:53 #: frappe/public/js/workflow_builder/components/StateNode.vue:47 -#: frappe/public/js/workflow_builder/store.js:51 +#: frappe/public/js/workflow_builder/store.js:52 msgid "No Label" msgstr "" -#: frappe/printing/page/print/print.js:782 -#: frappe/printing/page/print/print.js:863 +#: frappe/printing/page/print/print.js:783 +#: frappe/printing/page/print/print.js:864 #: frappe/public/js/frappe/list/bulk_operations.js:98 #: frappe/public/js/frappe/list/bulk_operations.js:170 #: frappe/utils/weasyprint.py:52 @@ -17480,7 +17512,7 @@ msgstr "" msgid "No New notifications" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1795 +#: frappe/core/doctype/doctype/doctype.py:1801 msgid "No Permissions Specified" msgstr "" @@ -17500,11 +17532,11 @@ msgstr "" msgid "No Preview" msgstr "" -#: frappe/printing/page/print/print.js:786 +#: frappe/printing/page/print/print.js:787 msgid "No Preview Available" msgstr "" -#: frappe/printing/page/print/print.js:941 +#: frappe/printing/page/print/print.js:942 msgid "No Printer is Available." msgstr "" @@ -17520,7 +17552,7 @@ msgstr "" msgid "No Results found" msgstr "" -#: frappe/core/doctype/user/user.py:857 +#: frappe/core/doctype/user/user.py:851 msgid "No Roles Specified" msgstr "" @@ -17532,7 +17564,7 @@ msgstr "" msgid "No Suggestions" msgstr "" -#: frappe/desk/reportview.py:714 +#: frappe/desk/reportview.py:717 msgid "No Tags" msgstr "" @@ -17556,7 +17588,7 @@ msgstr "" msgid "No changes in document" msgstr "" -#: frappe/public/js/frappe/views/workspace/workspace.js:712 +#: frappe/public/js/frappe/views/workspace/workspace.js:732 msgid "No changes made" msgstr "" @@ -17592,7 +17624,7 @@ msgstr "" msgid "No data to export" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1543 +#: frappe/public/js/frappe/views/reports/query_report.js:1552 msgid "No data to perform this action" msgstr "" @@ -17637,7 +17669,7 @@ msgstr "" msgid "No further records" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:337 +#: frappe/public/js/frappe/views/reports/report_view.js:327 msgid "No matching entries in the current results" msgstr "" @@ -17657,7 +17689,7 @@ msgstr "" msgid "No new Google Contacts synced." msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:415 +#: frappe/printing/page/print_format_builder/print_format_builder.js:417 msgid "No of Columns" msgstr "" @@ -17680,12 +17712,12 @@ msgstr "" msgid "No permission for {0}" msgstr "" -#: frappe/public/js/frappe/form/form.js:1182 +#: frappe/public/js/frappe/form/form.js:1183 msgctxt "{0} = verb, {1} = object" msgid "No permission to '{0}' {1}" msgstr "" -#: frappe/model/db_query.py:1048 +#: frappe/model/db_query.py:1052 msgid "No permission to read {0}" msgstr "" @@ -17713,7 +17745,7 @@ msgstr "" msgid "No rows" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2414 +#: frappe/public/js/frappe/list/list_view.js:2429 msgid "No rows selected" msgstr "" @@ -17721,7 +17753,7 @@ msgstr "" msgid "No subject" msgstr "" -#: frappe/www/printview.py:464 +#: frappe/www/printview.py:466 msgid "No template found at path: {0}" msgstr "" @@ -17730,7 +17762,7 @@ msgid "No user has the role {0}" msgstr "" #: frappe/public/js/frappe/form/controls/multiselect_list.js:276 -#: frappe/public/js/frappe/utils/utils.js:999 +#: frappe/public/js/frappe/utils/utils.js:1022 msgid "No values to show" msgstr "" @@ -17742,7 +17774,7 @@ msgstr "" msgid "No {0} found" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:512 +#: frappe/public/js/frappe/list/list_view.js:527 msgid "No {0} found with matching filters. Clear filters to see all {0}." msgstr "" @@ -17794,7 +17826,7 @@ msgstr "" msgid "Normalized Query" msgstr "" -#: frappe/core/doctype/user/user.py:1075 +#: frappe/core/doctype/user/user.py:1069 #: frappe/templates/includes/login/login.js:253 frappe/utils/oauth.py:300 msgid "Not Allowed" msgstr "" @@ -17832,7 +17864,7 @@ msgstr "" msgid "Not Like" msgstr "" -#: frappe/public/js/frappe/form/linked_with.js:45 +#: frappe/public/js/frappe/form/linked_with.js:49 msgid "Not Linked to any record" msgstr "" @@ -17843,7 +17875,7 @@ msgstr "" #: frappe/__init__.py:554 frappe/app.py:383 frappe/desk/calendar.py:29 #: frappe/public/js/frappe/web_form/webform_script.js:15 -#: frappe/website/doctype/web_form/web_form.py:780 +#: frappe/website/doctype/web_form/web_form.py:785 #: frappe/website/page_renderers/not_permitted_page.py:22 #: frappe/www/login.py:193 frappe/www/qrcode.py:22 frappe/www/qrcode.py:25 #: frappe/www/qrcode.py:37 @@ -17863,7 +17895,7 @@ msgstr "" #: frappe/public/js/frappe/form/toolbar.js:853 #: frappe/public/js/frappe/model/indicator.js:28 #: frappe/public/js/frappe/views/kanban/kanban_view.js:183 -#: frappe/public/js/frappe/views/reports/report_view.js:205 +#: frappe/public/js/frappe/views/reports/report_view.js:195 #: frappe/public/js/print_format_builder/print_format_builder.bundle.js:39 #: frappe/website/doctype/web_form/templates/web_form.html:94 msgid "Not Saved" @@ -17922,11 +17954,11 @@ msgstr "" msgid "Not allowed to create custom Virtual DocType." msgstr "" -#: frappe/www/printview.py:165 +#: frappe/www/printview.py:166 msgid "Not allowed to print cancelled documents" msgstr "" -#: frappe/www/printview.py:162 +#: frappe/www/printview.py:163 msgid "Not allowed to print draft documents" msgstr "" @@ -17947,11 +17979,11 @@ msgid "Not in Developer Mode! Set in site_config.json or make 'Custom' DocType." msgstr "" #: frappe/core/doctype/system_settings/system_settings.py:234 -#: frappe/public/js/frappe/request.js:153 -#: frappe/public/js/frappe/request.js:164 -#: frappe/public/js/frappe/request.js:169 +#: frappe/public/js/frappe/request.js:160 +#: frappe/public/js/frappe/request.js:171 +#: frappe/public/js/frappe/request.js:176 #: frappe/public/js/frappe/views/kanban/kanban_board.bundle.js:67 -#: frappe/utils/messages.py:161 frappe/website/doctype/web_form/web_form.py:793 +#: frappe/utils/messages.py:173 frappe/website/doctype/web_form/web_form.py:798 #: frappe/website/js/website.js:97 msgid "Not permitted" msgstr "" @@ -17960,7 +17992,7 @@ msgstr "" msgid "Not permitted to view {0}" msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:642 +#: frappe/public/js/frappe/file_uploader/FileUploader.vue:627 msgid "Not permitted. {0}." msgstr "" @@ -17979,7 +18011,7 @@ msgstr "" msgid "Note:" msgstr "" -#: frappe/public/js/frappe/utils/utils.js:787 +#: frappe/public/js/frappe/utils/utils.js:810 msgid "Note: Changing the Page Name will break previous URL to this page." msgstr "" @@ -17993,13 +18025,7 @@ msgstr "" msgid "Note: For best results, images must be of the same size and width must be greater than height." msgstr "" -#. Description of the 'Allow only one session per user' (Check) field in -#. DocType 'System Settings' -#: frappe/core/doctype/system_settings/system_settings.json -msgid "Note: Multiple sessions will be allowed in case of mobile device" -msgstr "" - -#: frappe/core/doctype/user/user.js:397 +#: frappe/core/doctype/user/user.js:398 msgid "Note: This will be shared with user." msgstr "" @@ -18042,7 +18068,7 @@ msgstr "" #: frappe/core/doctype/communication/mixins.py:142 #: frappe/desk/doctype/event_notifications/event_notifications.json #: frappe/email/doctype/notification/notification.json -#: frappe/public/js/frappe/ui/sidebar/sidebar.js:314 +#: frappe/public/js/frappe/ui/sidebar/sidebar.js:471 #: frappe/workspace_sidebar/system.json msgid "Notification" msgstr "" @@ -18086,11 +18112,10 @@ msgstr "" msgid "Notification: user {0} has no Mobile number set" msgstr "" -#. Label of the notifications (Check) field in DocType 'User' #. Label of the notifications_tab (Tab Break) field in DocType 'Event' #. Label of the notifications (Table) field in DocType 'Event' #. Label of a Workspace Sidebar Item -#: frappe/core/doctype/user/user.json frappe/desk/doctype/event/event.json +#: frappe/desk/doctype/event/event.json #: frappe/public/js/frappe/ui/notifications/notifications.js:64 #: frappe/public/js/frappe/ui/notifications/notifications.js:223 #: frappe/workspace_sidebar/system.json @@ -18455,7 +18480,7 @@ msgstr "" msgid "On or Before" msgstr "" -#: frappe/public/js/frappe/views/communication.js:1029 +#: frappe/public/js/frappe/views/communication.js:1048 msgid "On {0}, {1} wrote:" msgstr "" @@ -18544,7 +18569,7 @@ msgstr "" msgid "Only Custom Modules can be renamed." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1652 +#: frappe/core/doctype/doctype/doctype.py:1658 msgid "Only Options allowed for Data field are:" msgstr "" @@ -18571,7 +18596,7 @@ msgstr "" msgid "Only allowed to export customizations in developer mode" msgstr "" -#: frappe/model/document.py:1417 +#: frappe/model/document.py:1418 msgid "Only draft documents can be discarded" msgstr "" @@ -18606,7 +18631,7 @@ msgstr "" msgid "Only the Administrator can delete a standard DocType." msgstr "" -#: frappe/desk/form/assign_to.py:199 +#: frappe/desk/form/assign_to.py:204 msgid "Only the assignee can complete this to-do." msgstr "" @@ -18637,8 +18662,8 @@ msgctxt "Access" msgid "Open" msgstr "" -#: frappe/desk/page/desktop/desktop.js:535 -#: frappe/desk/page/desktop/desktop.js:544 +#: frappe/desk/page/desktop/desktop.js:534 +#: frappe/desk/page/desktop/desktop.js:543 #: frappe/public/js/frappe/ui/keyboard.js:207 #: frappe/public/js/frappe/ui/keyboard.js:217 msgid "Open Awesomebar" @@ -18704,7 +18729,7 @@ msgstr "" msgid "Open in new tab" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1459 +#: frappe/public/js/frappe/list/list_view.js:1474 msgctxt "Description of a list view shortcut" msgid "Open list item" msgstr "" @@ -18718,7 +18743,7 @@ msgid "Open your authentication app on your mobile phone." msgstr "" #: frappe/desk/doctype/todo/todo_list.js:17 -#: frappe/public/js/frappe/form/templates/form_links.html:18 +#: frappe/public/js/frappe/form/templates/form_links.html:19 #: frappe/public/js/frappe/ui/toolbar/search_utils.js:288 #: frappe/public/js/frappe/ui/toolbar/search_utils.js:289 #: frappe/public/js/frappe/ui/toolbar/search_utils.js:300 @@ -18770,7 +18795,7 @@ msgstr "" msgid "Optimize" msgstr "" -#: frappe/core/doctype/file/file.js:112 +#: frappe/core/doctype/file/file.js:121 msgid "Optimizing image..." msgstr "" @@ -18786,7 +18811,7 @@ msgstr "" msgid "Option 3" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1670 +#: frappe/core/doctype/doctype/doctype.py:1676 msgid "Option {0} for field {1} is not a child table" msgstr "" @@ -18820,7 +18845,7 @@ msgstr "" msgid "Options" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1398 +#: frappe/core/doctype/doctype/doctype.py:1404 msgid "Options 'Dynamic Link' type of field must point to another Link Field with options as 'DocType'" msgstr "" @@ -18829,7 +18854,7 @@ msgstr "" msgid "Options Help" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1699 +#: frappe/core/doctype/doctype/doctype.py:1705 msgid "Options for Rating field can range from 3 to 10" msgstr "" @@ -18837,7 +18862,7 @@ msgstr "" msgid "Options for select. Each option on a new line." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1415 +#: frappe/core/doctype/doctype/doctype.py:1421 msgid "Options for {0} must be set before setting the default value." msgstr "" @@ -18963,11 +18988,11 @@ msgstr "" #: frappe/email/doctype/auto_email_report/auto_email_report.json #: frappe/printing/page/print/print.js:91 #: frappe/public/js/frappe/form/templates/print_layout.html:44 -#: frappe/public/js/frappe/views/reports/query_report.js:1938 +#: frappe/public/js/frappe/views/reports/query_report.js:1947 msgid "PDF" msgstr "" -#: frappe/utils/print_format.py:150 frappe/utils/print_format.py:194 +#: frappe/utils/print_format.py:156 frappe/utils/print_format.py:200 msgid "PDF Generation in Progress" msgstr "" @@ -18998,7 +19023,7 @@ msgstr "" msgid "PDF Settings" msgstr "" -#: frappe/utils/print_format.py:350 +#: frappe/utils/print_format.py:356 msgid "PDF generation failed" msgstr "" @@ -19253,7 +19278,7 @@ msgstr "" msgid "Parent Label" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1218 +#: frappe/core/doctype/doctype/doctype.py:1224 msgid "Parent Missing" msgstr "" @@ -19327,8 +19352,8 @@ msgstr "" #. Option for the 'Fieldtype' (Select) field in DocType 'Web Form Field' #: frappe/core/doctype/docfield/docfield.json #: frappe/core/doctype/system_settings/system_settings.json -#: frappe/core/doctype/user/user.js:173 frappe/core/doctype/user/user.js:220 -#: frappe/core/doctype/user/user.js:240 +#: frappe/core/doctype/user/user.js:173 frappe/core/doctype/user/user.js:221 +#: frappe/core/doctype/user/user.js:241 #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json #: frappe/desk/page/setup_wizard/setup_wizard.js:487 @@ -19338,11 +19363,11 @@ msgstr "" msgid "Password" msgstr "" -#: frappe/core/doctype/user/user.py:1140 +#: frappe/core/doctype/user/user.py:1134 msgid "Password Email Sent" msgstr "" -#: frappe/core/doctype/user/user.py:500 +#: frappe/core/doctype/user/user.py:494 msgid "Password Reset" msgstr "" @@ -19380,11 +19405,11 @@ msgstr "" msgid "Password not found for {0} {1} {2}" msgstr "" -#: frappe/core/doctype/user/user.py:1306 +#: frappe/core/doctype/user/user.py:1300 msgid "Password requirements not met" msgstr "" -#: frappe/core/doctype/user/user.py:1139 +#: frappe/core/doctype/user/user.py:1133 msgid "Password reset instructions have been sent to {}'s email" msgstr "" @@ -19392,11 +19417,11 @@ msgstr "" msgid "Password set" msgstr "" -#: frappe/auth.py:267 +#: frappe/auth.py:271 msgid "Password size exceeded the maximum allowed size" msgstr "" -#: frappe/core/doctype/user/user.py:923 +#: frappe/core/doctype/user/user.py:917 msgid "Password size exceeded the maximum allowed size." msgstr "" @@ -19404,7 +19429,7 @@ msgstr "" msgid "Passwords do not match" msgstr "" -#: frappe/core/doctype/user/user.js:206 +#: frappe/core/doctype/user/user.js:205 msgid "Passwords do not match!" msgstr "" @@ -19545,15 +19570,15 @@ msgstr "" msgid "Permanent" msgstr "" -#: frappe/public/js/frappe/form/form.js:1068 +#: frappe/public/js/frappe/form/form.js:1069 msgid "Permanently Cancel {0}?" msgstr "" -#: frappe/public/js/frappe/form/form.js:1114 +#: frappe/public/js/frappe/form/form.js:1115 msgid "Permanently Discard {0}?" msgstr "" -#: frappe/public/js/frappe/form/form.js:901 +#: frappe/public/js/frappe/form/form.js:902 msgid "Permanently Submit {0}?" msgstr "" @@ -19644,8 +19669,8 @@ msgstr "" msgid "Permissions" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1936 -#: frappe/core/doctype/doctype/doctype.py:1946 +#: frappe/core/doctype/doctype/doctype.py:1942 +#: frappe/core/doctype/doctype/doctype.py:1952 msgid "Permissions Error" msgstr "" @@ -19736,8 +19761,8 @@ msgid "Phone Number {0} set in field {1} is not valid." msgstr "" #: frappe/public/js/frappe/form/print_utils.js:69 -#: frappe/public/js/frappe/views/reports/report_view.js:1616 -#: frappe/public/js/frappe/views/reports/report_view.js:1619 +#: frappe/public/js/frappe/views/reports/report_view.js:1631 +#: frappe/public/js/frappe/views/reports/report_view.js:1634 msgid "Pick Columns" msgstr "" @@ -19811,11 +19836,11 @@ msgstr "" msgid "Please add a valid comment." msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1544 +#: frappe/public/js/frappe/views/reports/query_report.js:1553 msgid "Please adjust filters to include some data" msgstr "" -#: frappe/core/doctype/user/user.py:1122 +#: frappe/core/doctype/user/user.py:1116 msgid "Please ask your administrator to verify your sign-up" msgstr "" @@ -19843,7 +19868,7 @@ msgstr "" msgid "Please check the value of \"Fetch From\" set for field {0}" msgstr "" -#: frappe/core/doctype/user/user.py:1120 +#: frappe/core/doctype/user/user.py:1114 msgid "Please check your email for verification" msgstr "" @@ -19910,9 +19935,9 @@ msgstr "" #: frappe/desk/doctype/notification_log/notification_log.js:45 #: frappe/email/doctype/auto_email_report/auto_email_report.js:17 #: frappe/printing/page/print/print.js:705 -#: frappe/printing/page/print/print.js:747 +#: frappe/printing/page/print/print.js:748 #: frappe/public/js/frappe/list/bulk_operations.js:161 -#: frappe/public/js/frappe/utils/utils.js:1712 +#: frappe/public/js/frappe/utils/utils.js:1736 msgid "Please enable pop-ups" msgstr "" @@ -19957,7 +19982,7 @@ msgstr "" msgid "Please enter Redirect URL" msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:562 +#: frappe/public/js/frappe/file_uploader/FileUploader.vue:547 msgid "Please enter a valid URL" msgstr "" @@ -20003,7 +20028,7 @@ msgstr "" msgid "Please make sure the Reference Communication Docs are not circularly linked." msgstr "" -#: frappe/model/document.py:1036 +#: frappe/model/document.py:1037 msgid "Please refresh to get the latest document." msgstr "" @@ -20027,7 +20052,7 @@ msgstr "" msgid "Please save the form before previewing the message" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1768 +#: frappe/public/js/frappe/views/reports/report_view.js:1783 msgid "Please save the report first" msgstr "" @@ -20047,7 +20072,7 @@ msgstr "" msgid "Please select Minimum Password Score" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1228 +#: frappe/public/js/frappe/views/reports/query_report.js:1237 msgid "Please select X and Y fields" msgstr "" @@ -20059,7 +20084,7 @@ msgstr "" msgid "Please select a country code for field {1}." msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:540 +#: frappe/public/js/frappe/file_uploader/FileUploader.vue:525 msgid "Please select a file first." msgstr "" @@ -20067,7 +20092,7 @@ msgstr "" msgid "Please select a file or url" msgstr "" -#: frappe/model/rename_doc.py:687 +#: frappe/model/rename_doc.py:701 msgid "Please select a valid csv file with data" msgstr "" @@ -20079,7 +20104,7 @@ msgstr "" msgid "Please select applicable Doctypes" msgstr "" -#: frappe/model/db_query.py:1272 +#: frappe/model/db_query.py:1276 msgid "Please select atleast 1 column from {0} to sort/group" msgstr "" @@ -20097,7 +20122,7 @@ msgstr "" msgid "Please select the LDAP Directory being used" msgstr "" -#: frappe/website/doctype/website_settings/website_settings.js:100 +#: frappe/website/doctype/website_settings/website_settings.js:104 msgid "Please select {0}" msgstr "" @@ -20109,7 +20134,7 @@ msgstr "" msgid "Please set a printer mapping for this print format in the Printer Settings" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1451 +#: frappe/public/js/frappe/views/reports/query_report.js:1460 msgid "Please set filters" msgstr "" @@ -20137,7 +20162,7 @@ msgstr "" msgid "Please setup a message first" msgstr "" -#: frappe/core/doctype/user/user.py:465 +#: frappe/core/doctype/user/user.py:459 msgid "Please setup default outgoing Email Account from Settings > Email Account" msgstr "" @@ -20177,7 +20202,7 @@ msgstr "" msgid "Please specify which value field must be checked" msgstr "" -#: frappe/public/js/frappe/request.js:181 +#: frappe/public/js/frappe/request.js:188 #: frappe/public/js/frappe/views/translation_manager.js:102 msgid "Please try again" msgstr "" @@ -20300,11 +20325,11 @@ msgstr "" msgid "Precision" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1708 +#: frappe/core/doctype/doctype/doctype.py:1714 msgid "Precision ({0}) for {1} cannot be greater than its length ({2})." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1432 +#: frappe/core/doctype/doctype/doctype.py:1438 msgid "Precision should be between 1 and 6" msgstr "" @@ -20360,7 +20385,7 @@ msgstr "" msgid "Preparing Report" msgstr "" -#: frappe/public/js/frappe/views/communication.js:484 +#: frappe/public/js/frappe/views/communication.js:487 msgid "Prepend the template to the email message" msgstr "" @@ -20439,7 +20464,7 @@ msgstr "" msgid "Previous Document" msgstr "" -#: frappe/public/js/frappe/form/form.js:2271 +#: frappe/public/js/frappe/form/form.js:2289 msgid "Previous Submission" msgstr "" @@ -20494,17 +20519,17 @@ msgstr "" #: frappe/core/doctype/user_document_type/user_document_type.json #: frappe/core/page/permission_manager/permission_manager_help.html:51 #: frappe/printing/page/print/print.js:85 -#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:106 +#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:107 #: frappe/public/js/frappe/form/success_action.js:81 #: frappe/public/js/frappe/form/templates/print_layout.html:46 #: frappe/public/js/frappe/list/bulk_operations.js:95 -#: frappe/public/js/frappe/views/reports/query_report.js:1920 -#: frappe/public/js/frappe/views/reports/report_view.js:1578 +#: frappe/public/js/frappe/views/reports/query_report.js:1929 +#: frappe/public/js/frappe/views/reports/report_view.js:1593 #: frappe/public/js/frappe/views/treeview.js:500 frappe/www/printview.html:18 msgid "Print" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2261 +#: frappe/public/js/frappe/list/list_view.js:2276 msgctxt "Button in list view actions menu" msgid "Print" msgstr "" @@ -20524,7 +20549,7 @@ msgstr "" #: frappe/email/doctype/notification/notification.json #: frappe/printing/doctype/print_format/print_format.json #: frappe/printing/page/print/print.js:116 -#: frappe/printing/page/print/print.js:900 +#: frappe/printing/page/print/print.js:901 #: frappe/public/js/frappe/form/print_utils.js:32 #: frappe/public/js/frappe/list/bulk_operations.js:59 #: frappe/website/doctype/web_form/web_form.json @@ -20535,8 +20560,8 @@ msgstr "" #. Label of the print_format_builder (Check) field in DocType 'Print Format' #. Label of a Workspace Sidebar Item #: frappe/printing/doctype/print_format/print_format.json -#: frappe/printing/page/print_format_builder/print_format_builder.js:44 -#: frappe/printing/page/print_format_builder/print_format_builder.js:67 +#: frappe/printing/page/print_format_builder/print_format_builder.js:45 +#: frappe/printing/page/print_format_builder/print_format_builder.js:68 #: frappe/printing/page/print_format_builder_beta/print_format_builder_beta.js:4 #: frappe/workspace_sidebar/printing.json msgid "Print Format Builder" @@ -20572,11 +20597,11 @@ msgstr "" msgid "Print Format Type" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1663 +#: frappe/public/js/frappe/views/reports/query_report.js:1672 msgid "Print Format not found" msgstr "" -#: frappe/www/printview.py:443 +#: frappe/www/printview.py:445 msgid "Print Format {0} is disabled" msgstr "" @@ -20607,7 +20632,7 @@ msgstr "" msgid "Print Hide If No Value" msgstr "" -#: frappe/public/js/frappe/views/communication.js:186 +#: frappe/public/js/frappe/views/communication.js:189 msgid "Print Language" msgstr "" @@ -20675,11 +20700,11 @@ msgstr "" msgid "Print with letterhead" msgstr "" -#: frappe/printing/page/print/print.js:909 +#: frappe/printing/page/print/print.js:910 msgid "Printer" msgstr "" -#: frappe/printing/page/print/print.js:886 +#: frappe/printing/page/print/print.js:887 msgid "Printer Mapping" msgstr "" @@ -20689,7 +20714,7 @@ msgstr "" msgid "Printer Name" msgstr "" -#: frappe/printing/page/print/print.js:878 +#: frappe/printing/page/print/print.js:879 msgid "Printer Settings" msgstr "" @@ -20703,7 +20728,7 @@ msgstr "" msgid "Printing" msgstr "" -#: frappe/utils/print_format.py:352 +#: frappe/utils/print_format.py:358 msgid "Printing failed" msgstr "" @@ -20716,7 +20741,7 @@ msgstr "" #: frappe/core/doctype/document_naming_rule/document_naming_rule.json #: frappe/desk/doctype/todo/todo.json frappe/desk/report/todo/todo.py:37 #: frappe/email/doctype/email_queue/email_queue.json -#: frappe/public/js/frappe/form/sidebar/assign_to.js:222 +#: frappe/public/js/frappe/form/sidebar/assign_to.js:217 #: frappe/website/doctype/web_page/web_page.json msgid "Priority" msgstr "" @@ -20752,7 +20777,7 @@ msgstr "" msgid "Proceed" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:956 +#: frappe/public/js/frappe/views/reports/query_report.js:965 msgid "Proceed Anyway" msgstr "" @@ -21141,7 +21166,7 @@ msgstr "" msgid "Queues" msgstr "" -#: frappe/desk/doctype/bulk_update/bulk_update.py:94 +#: frappe/desk/doctype/bulk_update/bulk_update.py:97 msgid "Queuing {0} for Submission" msgstr "" @@ -21271,7 +21296,7 @@ msgstr "" #: frappe/core/doctype/communication/communication.js:268 #: frappe/public/js/frappe/form/footer/form_timeline.js:601 -#: frappe/public/js/frappe/views/communication.js:419 +#: frappe/public/js/frappe/views/communication.js:422 msgid "Re: {0}" msgstr "" @@ -21368,7 +21393,7 @@ msgstr "" msgid "Reason" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:910 +#: frappe/public/js/frappe/views/reports/query_report.js:919 msgid "Rebuild" msgstr "" @@ -21463,7 +21488,7 @@ msgstr "" msgid "Records for following doctypes will be filtered" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1640 +#: frappe/core/doctype/doctype/doctype.py:1646 msgid "Recursive Fetch From" msgstr "" @@ -21752,10 +21777,10 @@ msgstr "" #: frappe/printing/page/print/print.js:93 frappe/public/js/frappe/desk.js:168 #: frappe/public/js/frappe/desk.js:552 -#: frappe/public/js/frappe/form/form.js:1250 +#: frappe/public/js/frappe/form/form.js:1251 #: frappe/public/js/frappe/form/templates/print_layout.html:6 #: frappe/public/js/frappe/list/base_list.js:67 -#: frappe/public/js/frappe/views/reports/query_report.js:1909 +#: frappe/public/js/frappe/views/reports/query_report.js:1918 #: frappe/public/js/frappe/views/treeview.js:506 #: frappe/public/js/frappe/widgets/chart_widget.js:291 #: frappe/public/js/frappe/widgets/number_card_widget.js:352 @@ -21787,18 +21812,18 @@ msgstr "" msgid "Refresh Token" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:549 +#: frappe/public/js/frappe/list/list_view.js:564 msgctxt "Document count in list view" msgid "Refreshing" msgstr "" #: frappe/core/doctype/system_settings/system_settings.js:57 -#: frappe/core/doctype/user/user.js:372 +#: frappe/core/doctype/user/user.js:373 #: frappe/desk/page/setup_wizard/setup_wizard.js:211 msgid "Refreshing..." msgstr "" -#: frappe/core/doctype/user/user.py:1082 +#: frappe/core/doctype/user/user.py:1076 msgid "Registered but disabled" msgstr "" @@ -21891,11 +21916,11 @@ msgstr "" msgid "Reminder cannot be created in past." msgstr "" -#: frappe/public/js/frappe/form/reminders.js:96 +#: frappe/public/js/frappe/form/reminders.js:95 msgid "Reminder set at {0}" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:14 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:13 #: frappe/public/js/frappe/ui/filters/edit_filter.html:4 #: frappe/public/js/frappe/ui/group_by/group_by.html:4 msgid "Remove" @@ -21905,11 +21930,11 @@ msgstr "" msgid "Remove Failed Jobs" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:493 +#: frappe/printing/page/print_format_builder/print_format_builder.js:495 msgid "Remove Field" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:427 +#: frappe/printing/page/print_format_builder/print_format_builder.js:429 msgid "Remove Section" msgstr "" @@ -22031,7 +22056,7 @@ msgstr "" msgid "Repeats like \"abcabcabc\" are only slightly harder to guess than \"abc\"" msgstr "" -#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:196 +#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:194 msgid "Repeats {0}" msgstr "" @@ -22124,9 +22149,9 @@ msgstr "" #: frappe/email/doctype/auto_email_report/auto_email_report.json #: frappe/printing/doctype/print_format/print_format.json #: frappe/printing/doctype/print_format/print_format.py:104 -#: frappe/public/js/frappe/request.js:610 +#: frappe/public/js/frappe/request.js:617 #: frappe/public/js/frappe/ui/toolbar/search_utils.js:95 -#: frappe/public/js/frappe/utils/utils.js:958 +#: frappe/public/js/frappe/utils/utils.js:981 #: frappe/workspace_sidebar/build.json msgid "Report" msgstr "" @@ -22149,7 +22174,7 @@ msgstr "" msgid "Report Description" msgstr "" -#: frappe/core/doctype/report/report.py:156 +#: frappe/core/doctype/report/report.py:165 msgid "Report Document Error" msgstr "" @@ -22196,7 +22221,7 @@ msgstr "" #: frappe/core/report/prepared_report_analytics/prepared_report_analytics.py:39 #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json #: frappe/desk/doctype/number_card/number_card.json -#: frappe/public/js/frappe/views/reports/query_report.js:2105 +#: frappe/public/js/frappe/views/reports/query_report.js:2114 msgid "Report Name" msgstr "" @@ -22230,21 +22255,21 @@ msgstr "" msgid "Report View" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:64 +#: frappe/public/js/frappe/form/form.js:1290 msgid "Report bug" msgstr "" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:208 -#: frappe/desk/doctype/number_card/number_card.js:194 +#: frappe/desk/doctype/number_card/number_card.js:189 msgid "Report has no data, please modify the filters or change the Report Name" msgstr "" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:196 -#: frappe/desk/doctype/number_card/number_card.js:189 +#: frappe/desk/doctype/number_card/number_card.js:184 msgid "Report has no numeric fields, please change the Report Name" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1037 +#: frappe/public/js/frappe/views/reports/query_report.js:1046 msgid "Report initiated, click to view status" msgstr "" @@ -22260,11 +22285,11 @@ msgstr "" msgid "Report updated successfully" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1398 +#: frappe/public/js/frappe/views/reports/report_view.js:1413 msgid "Report was not saved (there were errors)" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:2143 +#: frappe/public/js/frappe/views/reports/query_report.js:2152 msgid "Report with more than 10 columns looks better in Landscape mode." msgstr "" @@ -22300,7 +22325,7 @@ msgstr "" msgid "Reports & Masters" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:953 +#: frappe/public/js/frappe/views/reports/query_report.js:962 msgid "Reports already in Queue" msgstr "" @@ -22359,13 +22384,13 @@ msgstr "" msgid "Request Structure" msgstr "" -#: frappe/public/js/frappe/request.js:225 +#: frappe/public/js/frappe/request.js:232 msgid "Request Timed Out" msgstr "" #. Label of the timeout (Int) field in DocType 'Webhook' #: frappe/integrations/doctype/webhook/webhook.json -#: frappe/public/js/frappe/request.js:238 +#: frappe/public/js/frappe/request.js:245 msgid "Request Timeout" msgstr "" @@ -22409,10 +22434,15 @@ msgstr "" #: frappe/desk/doctype/form_tour/form_tour.js:101 #: frappe/desk/doctype/global_search_settings/global_search_settings.js:19 #: frappe/desk/doctype/module_onboarding/module_onboarding.js:17 +#: frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue:346 #: frappe/website/doctype/portal_settings/portal_settings.js:19 msgid "Reset" msgstr "" +#: frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue:267 +msgid "Reset All" +msgstr "" + #: frappe/custom/doctype/customize_form/customize_form.js:136 msgid "Reset All Customizations" msgstr "" @@ -22442,7 +22472,7 @@ msgstr "" msgid "Reset Layout" msgstr "" -#: frappe/core/doctype/user/user.js:231 +#: frappe/core/doctype/user/user.js:232 msgid "Reset OTP Secret" msgstr "" @@ -22665,7 +22695,7 @@ msgstr "" msgid "Right" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:484 +#: frappe/printing/page/print_format_builder/print_format_builder.js:486 #: frappe/public/js/print_format_builder/PrintFormatControls.vue:156 msgctxt "alignment" msgid "Right" @@ -22753,7 +22783,7 @@ msgstr "" msgid "Role Permissions Manager" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1954 +#: frappe/public/js/frappe/list/list_view.js:1969 msgctxt "Button in list view menu" msgid "Role Permissions Manager" msgstr "" @@ -22785,7 +22815,7 @@ msgstr "" msgid "Role and Level" msgstr "" -#: frappe/core/doctype/user/user.py:406 +#: frappe/core/doctype/user/user.py:409 msgid "Role has been set as per the user type {0}" msgstr "" @@ -22889,7 +22919,9 @@ msgstr "" msgid "Route History" msgstr "" +#. Label of the route_options (Code) field in DocType 'Onboarding Step' #. Label of the route_options (Code) field in DocType 'Workspace Sidebar Item' +#: frappe/desk/doctype/onboarding_step/onboarding_step.json #: frappe/desk/doctype/workspace_sidebar_item/workspace_sidebar_item.json msgid "Route Options" msgstr "" @@ -22904,7 +22936,7 @@ msgstr "" msgid "Route: Example \"/desk\"" msgstr "" -#: frappe/model/base_document.py:1020 frappe/model/document.py:821 +#: frappe/model/base_document.py:1020 frappe/model/document.py:822 msgid "Row" msgstr "" @@ -22912,8 +22944,8 @@ msgstr "" msgid "Row #" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1933 -#: frappe/core/doctype/doctype/doctype.py:1943 +#: frappe/core/doctype/doctype/doctype.py:1939 +#: frappe/core/doctype/doctype/doctype.py:1949 msgid "Row # {0}: Non-administrator users cannot add the role {1} to a custom DocType." msgstr "" @@ -23155,6 +23187,10 @@ msgstr "" msgid "Sales User" msgstr "" +#: frappe/public/js/frappe/ui/sidebar/sidebar.js:112 +msgid "Sales without complexity, lock-in and per-user costs. Try it for free!" +msgstr "" + #. Option for the 'Social Login Provider' (Select) field in DocType 'Social #. Login Key' #: frappe/integrations/doctype/social_login_key/social_login_key.json @@ -23195,24 +23231,24 @@ msgid "Saturday" msgstr "" #. Option for the 'Send Alert On' (Select) field in DocType 'Notification' -#: cypress/integration/web_form.js:52 +#: cypress/integration/web_form.js:54 #: frappe/core/doctype/data_import/data_import.js:119 #: frappe/desk/page/desktop/desktop.html:65 #: frappe/email/doctype/notification/notification.json -#: frappe/printing/page/print/print.js:937 -#: frappe/printing/page/print_format_builder/print_format_builder.js:160 +#: frappe/printing/page/print/print.js:938 +#: frappe/printing/page/print_format_builder/print_format_builder.js:162 #: frappe/public/js/frappe/form/footer/form_timeline.js:678 #: frappe/public/js/frappe/form/quick_entry.js:186 #: frappe/public/js/frappe/list/list_settings.js:37 #: frappe/public/js/frappe/list/list_settings.js:250 -#: frappe/public/js/frappe/list/list_view.js:2016 +#: frappe/public/js/frappe/list/list_view.js:2031 #: frappe/public/js/frappe/ui/toolbar/toolbar.js:336 #: frappe/public/js/frappe/utils/common.js:452 #: frappe/public/js/frappe/views/kanban/kanban_settings.js:45 #: frappe/public/js/frappe/views/kanban/kanban_settings.js:189 #: frappe/public/js/frappe/views/kanban/kanban_view.js:357 -#: frappe/public/js/frappe/views/reports/query_report.js:2097 -#: frappe/public/js/frappe/views/reports/report_view.js:1785 +#: frappe/public/js/frappe/views/reports/query_report.js:2106 +#: frappe/public/js/frappe/views/reports/report_view.js:1800 #: frappe/public/js/frappe/views/workspace/workspace.js:353 #: frappe/public/js/frappe/widgets/base_widget.js:142 #: frappe/public/js/frappe/widgets/quick_list_widget.js:120 @@ -23221,12 +23257,12 @@ msgstr "" msgid "Save" msgstr "" -#: frappe/workflow/doctype/workflow/workflow.js:143 +#: frappe/workflow/doctype/workflow/workflow.js:171 msgid "Save Anyway" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1429 -#: frappe/public/js/frappe/views/reports/report_view.js:1792 +#: frappe/public/js/frappe/views/reports/report_view.js:1444 +#: frappe/public/js/frappe/views/reports/report_view.js:1807 msgid "Save As" msgstr "" @@ -23234,7 +23270,7 @@ msgstr "" msgid "Save Customizations" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:2100 +#: frappe/public/js/frappe/views/reports/query_report.js:2109 msgid "Save Report" msgstr "" @@ -23252,10 +23288,10 @@ msgid "Save the document." msgstr "" #: frappe/model/rename_doc.py:106 -#: frappe/printing/page/print_format_builder/print_format_builder.js:892 +#: frappe/printing/page/print_format_builder/print_format_builder.js:894 #: frappe/public/js/frappe/form/toolbar.js:315 #: frappe/public/js/frappe/views/kanban/kanban_board.bundle.js:921 -#: frappe/public/js/frappe/views/workspace/workspace.js:734 +#: frappe/public/js/frappe/views/workspace/workspace.js:754 msgid "Saved" msgstr "" @@ -23274,7 +23310,7 @@ msgctxt "Freeze message while saving a document" msgid "Saving" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2027 +#: frappe/public/js/frappe/list/list_view.js:2042 msgid "Saving Changes..." msgstr "" @@ -23292,7 +23328,7 @@ msgstr "" #: frappe/public/js/form_builder/store.js:256 #: frappe/public/js/print_format_builder/store.js:36 -#: frappe/public/js/workflow_builder/store.js:73 +#: frappe/public/js/workflow_builder/store.js:77 msgid "Saving..." msgstr "" @@ -23309,7 +23345,7 @@ msgstr "" msgid "Schedule" msgstr "" -#: frappe/public/js/frappe/views/communication.js:88 +#: frappe/public/js/frappe/views/communication.js:91 msgid "Schedule Send At" msgstr "" @@ -23488,7 +23524,7 @@ msgstr "" #: frappe/public/js/frappe/form/link_selector.js:46 #: frappe/public/js/frappe/list/list_sidebar_stat.html:4 #: frappe/public/js/frappe/ui/address_autocomplete/autocomplete_dialog.js:20 -#: frappe/public/js/frappe/ui/sidebar/sidebar.js:302 +#: frappe/public/js/frappe/ui/sidebar/sidebar.js:459 #: frappe/public/js/frappe/ui/toolbar/search.js:49 #: frappe/public/js/frappe/ui/toolbar/search.js:68 #: frappe/templates/discussions/search.html:2 @@ -23496,11 +23532,6 @@ msgstr "" msgid "Search" msgstr "" -#. Label of the search_bar (Check) field in DocType 'User' -#: frappe/core/doctype/user/user.json -msgid "Search Bar" -msgstr "" - #. Label of the search_fields (Data) field in DocType 'DocType' #. Label of the search_fields (Data) field in DocType 'Customize Form' #: frappe/core/doctype/doctype/doctype.json @@ -23526,7 +23557,7 @@ msgstr "" msgid "Search by filename or extension" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1499 +#: frappe/core/doctype/doctype/doctype.py:1505 msgid "Search field {0} is not valid" msgstr "" @@ -23596,7 +23627,7 @@ msgstr "" msgid "Section Break" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:421 +#: frappe/printing/page/print_format_builder/print_format_builder.js:423 msgid "Section Heading" msgstr "" @@ -23615,7 +23646,7 @@ msgstr "" msgid "Section must have at least one column" msgstr "" -#: frappe/core/doctype/user/user.py:1471 +#: frappe/core/doctype/user/user.py:1465 msgid "Security Alert: Your account is being impersonated" msgstr "" @@ -23628,11 +23659,7 @@ msgstr "" msgid "See all Activity" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:879 -msgid "See all past reports." -msgstr "" - -#: frappe/public/js/frappe/form/form.js:1284 +#: frappe/public/js/frappe/form/form.js:1296 #: frappe/website/doctype/contact_us_settings/contact_us_settings.js:4 msgid "See on Website" msgstr "" @@ -23696,12 +23723,12 @@ msgstr "" #: frappe/public/js/frappe/form/controls/multicheck.js:179 #: frappe/public/js/frappe/form/controls/multiselect_list.js:6 #: frappe/public/js/frappe/form/grid_row.js:483 -#: frappe/public/js/frappe/views/reports/report_view.js:1651 +#: frappe/public/js/frappe/views/reports/report_view.js:1666 msgid "Select All" msgstr "" -#: frappe/public/js/frappe/views/communication.js:202 -#: frappe/public/js/frappe/views/communication.js:653 +#: frappe/public/js/frappe/views/communication.js:205 +#: frappe/public/js/frappe/views/communication.js:672 #: frappe/public/js/frappe/views/interaction.js:93 #: frappe/public/js/frappe/views/interaction.js:155 msgid "Select Attachments" @@ -23712,7 +23739,7 @@ msgstr "" msgid "Select Child Table" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:385 +#: frappe/public/js/frappe/views/reports/report_view.js:375 msgid "Select Column" msgstr "" @@ -23793,7 +23820,7 @@ msgstr "" msgid "Select Fields To Update" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2012 +#: frappe/public/js/frappe/list/list_view.js:2027 msgid "Select Filters" msgstr "" @@ -23841,11 +23868,11 @@ msgid "Select Page" msgstr "" #: frappe/printing/page/print_format_builder_beta/print_format_builder_beta.js:68 -#: frappe/public/js/frappe/views/communication.js:178 +#: frappe/public/js/frappe/views/communication.js:181 msgid "Select Print Format" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:82 +#: frappe/printing/page/print_format_builder/print_format_builder.js:84 msgid "Select Print Format to Edit" msgstr "" @@ -23854,7 +23881,7 @@ msgstr "" msgid "Select Report" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:631 +#: frappe/printing/page/print_format_builder/print_format_builder.js:633 msgid "Select Table Columns for {0}" msgstr "" @@ -23877,11 +23904,11 @@ msgstr "" msgid "Select Workspace" msgstr "" -#: frappe/website/doctype/website_settings/website_settings.js:23 +#: frappe/website/doctype/website_settings/website_settings.js:27 msgid "Select a Brand Image first." msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:108 +#: frappe/printing/page/print_format_builder/print_format_builder.js:110 msgid "Select a DocType to make a new format" msgstr "" @@ -23893,11 +23920,11 @@ msgstr "" msgid "Select a group {0} first." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:2044 +#: frappe/core/doctype/doctype/doctype.py:2050 msgid "Select a valid Sender Field for creating documents from Email" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:2028 +#: frappe/core/doctype/doctype/doctype.py:2034 msgid "Select a valid Subject field for creating documents from Email" msgstr "" @@ -23923,13 +23950,13 @@ msgstr "" msgid "Select atleast 2 actions" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1473 +#: frappe/public/js/frappe/list/list_view.js:1488 msgctxt "Description of a list view shortcut" msgid "Select list item" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1425 -#: frappe/public/js/frappe/list/list_view.js:1441 +#: frappe/public/js/frappe/list/list_view.js:1440 +#: frappe/public/js/frappe/list/list_view.js:1456 msgctxt "Description of a list view shortcut" msgid "Select multiple list items" msgstr "" @@ -23977,7 +24004,7 @@ msgstr "" msgid "Send" msgstr "" -#: frappe/public/js/frappe/views/communication.js:26 +#: frappe/public/js/frappe/views/communication.js:28 msgctxt "Send Email" msgid "Send" msgstr "" @@ -24056,7 +24083,7 @@ msgstr "" msgid "Send Print as PDF" msgstr "" -#: frappe/public/js/frappe/views/communication.js:168 +#: frappe/public/js/frappe/views/communication.js:171 msgid "Send Read Receipt" msgstr "" @@ -24119,7 +24146,7 @@ msgstr "" msgid "Send login link" msgstr "" -#: frappe/public/js/frappe/views/communication.js:162 +#: frappe/public/js/frappe/views/communication.js:165 msgid "Send me a copy" msgstr "" @@ -24158,7 +24185,7 @@ msgstr "" msgid "Sender Email Field" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:2047 +#: frappe/core/doctype/doctype/doctype.py:2053 msgid "Sender Field should have Email in options" msgstr "" @@ -24252,7 +24279,7 @@ msgstr "" msgid "Series counter for {} updated to {} successfully" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1130 +#: frappe/core/doctype/doctype/doctype.py:1136 #: frappe/core/doctype/document_naming_settings/document_naming_settings.py:170 msgid "Series {0} already used in {1}" msgstr "" @@ -24262,7 +24289,7 @@ msgstr "" msgid "Server Action" msgstr "" -#: frappe/app.py:399 frappe/public/js/frappe/request.js:605 +#: frappe/app.py:399 frappe/public/js/frappe/request.js:612 #: frappe/www/error.html:36 frappe/www/error.py:15 msgid "Server Error" msgstr "" @@ -24290,15 +24317,15 @@ msgstr "" msgid "Server Scripts feature is not available on this site." msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:673 +#: frappe/public/js/frappe/file_uploader/FileUploader.vue:658 msgid "Server error during upload. The file might be corrupted." msgstr "" -#: frappe/public/js/frappe/request.js:248 +#: frappe/public/js/frappe/request.js:255 msgid "Server failed to process this request because of a concurrent conflicting request. Please try again." msgstr "" -#: frappe/public/js/frappe/request.js:240 +#: frappe/public/js/frappe/request.js:247 msgid "Server was too busy to process this request. Please try again." msgstr "" @@ -24357,8 +24384,8 @@ msgstr "" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:400 #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:487 -#: frappe/desk/doctype/number_card/number_card.js:307 -#: frappe/desk/doctype/number_card/number_card.js:404 +#: frappe/desk/doctype/number_card/number_card.js:302 +#: frappe/desk/doctype/number_card/number_card.js:399 #: frappe/public/js/frappe/widgets/chart_widget.js:447 msgid "Set" msgstr "" @@ -24384,12 +24411,12 @@ msgid "Set Default Options for all charts on this Dashboard (Ex: \"colors\": [\" msgstr "" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:467 -#: frappe/desk/doctype/number_card/number_card.js:384 +#: frappe/desk/doctype/number_card/number_card.js:379 msgid "Set Dynamic Filters" msgstr "" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:381 -#: frappe/desk/doctype/number_card/number_card.js:292 +#: frappe/desk/doctype/number_card/number_card.js:287 #: frappe/public/js/form_builder/components/Field.vue:80 #: frappe/website/doctype/web_form/web_form.js:285 msgid "Set Filters" @@ -24400,7 +24427,7 @@ msgstr "" msgid "Set Filters for {0}" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:2256 +#: frappe/public/js/frappe/views/reports/query_report.js:2265 msgid "Set Level" msgstr "" @@ -24431,7 +24458,7 @@ msgstr "" msgid "Set Permissions" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:471 +#: frappe/printing/page/print_format_builder/print_format_builder.js:473 msgid "Set Properties" msgstr "" @@ -24465,7 +24492,7 @@ msgid "Set Value" msgstr "" #: frappe/public/js/frappe/file_uploader/file_uploader.bundle.js:103 -#: frappe/public/js/frappe/file_uploader/file_uploader.bundle.js:162 +#: frappe/public/js/frappe/file_uploader/file_uploader.bundle.js:163 msgid "Set all private" msgstr "" @@ -24618,8 +24645,8 @@ msgstr "" msgid "Setup > User Permissions" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1962 -#: frappe/public/js/frappe/views/reports/report_view.js:1763 +#: frappe/public/js/frappe/views/reports/query_report.js:1971 +#: frappe/public/js/frappe/views/reports/report_view.js:1778 msgid "Setup Auto Email" msgstr "" @@ -24650,7 +24677,7 @@ msgstr "" #: frappe/core/doctype/user_document_type/user_document_type.json #: frappe/core/page/permission_manager/permission_manager_help.html:76 #: frappe/desk/doctype/notification_log/notification_log.json -#: frappe/public/js/frappe/form/templates/form_sidebar.html:134 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:135 #: frappe/public/js/frappe/form/templates/set_sharing.html:5 msgid "Share" msgstr "" @@ -24711,10 +24738,7 @@ msgstr "" #. Label of the show_absolute_datetime_in_timeline (Check) field in DocType #. 'System Settings' -#. Label of the show_absolute_datetime_in_timeline (Check) field in DocType -#. 'User' #: frappe/core/doctype/system_settings/system_settings.json -#: frappe/core/doctype/user/user.json msgid "Show Absolute Datetime in Timeline" msgstr "" @@ -24723,7 +24747,7 @@ msgstr "" msgid "Show Absolute Values" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:115 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:116 msgid "Show All" msgstr "" @@ -24917,7 +24941,7 @@ msgstr "" msgid "Show Title in Link Fields" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1568 +#: frappe/public/js/frappe/views/reports/report_view.js:1583 msgid "Show Totals" msgstr "" @@ -24943,6 +24967,12 @@ msgstr "" msgid "Show Weekends" msgstr "" +#. Label of the show_absolute_datetime_in_timeline (Check) field in DocType +#. 'User' +#: frappe/core/doctype/user/user.json +msgid "Show absolute datetime in timeline" +msgstr "" + #. Label of the show_account_deletion_link (Check) field in DocType 'Website #. Settings' #: frappe/website/doctype/website_settings/website_settings.json @@ -24967,6 +24997,11 @@ msgstr "" msgid "Show attachments" msgstr "" +#. Label of the dashboard (Check) field in DocType 'User' +#: frappe/core/doctype/user/user.json +msgid "Show dashboard" +msgstr "" + #. Label of the show_footer_on_login (Check) field in DocType 'Website #. Settings' #: frappe/website/doctype/website_settings/website_settings.json @@ -25010,6 +25045,11 @@ msgstr "" msgid "Show more details" msgstr "" +#. Label of the form_navigation_buttons (Check) field in DocType 'User' +#: frappe/core/doctype/user/user.json +msgid "Show navigation buttons" +msgstr "" + #. Label of the show_on_timeline (Check) field in DocType 'DocField' #: frappe/core/doctype/docfield/docfield.json msgid "Show on Timeline" @@ -25021,21 +25061,39 @@ msgstr "" msgid "Show percentage difference according to this time interval" msgstr "" +#. Label of the search_bar (Check) field in DocType 'User' +#: frappe/core/doctype/user/user.json +msgid "Show search bar" +msgstr "" + +#. Label of the list_sidebar (Check) field in DocType 'User' +#. Label of the form_sidebar (Check) field in DocType 'User' #. Label of the show_sidebar (Check) field in DocType 'Web Form' +#: frappe/core/doctype/user/user.json #: frappe/website/doctype/web_form/web_form.json msgid "Show sidebar" msgstr "" +#. Label of the timeline (Check) field in DocType 'User' +#: frappe/core/doctype/user/user.json +msgid "Show timeline" +msgstr "" + #. Description of the 'Title Prefix' (Data) field in DocType 'Website Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Show title in browser window as \"Prefix - title\"" msgstr "" +#. Label of the view_switcher (Check) field in DocType 'User' +#: frappe/core/doctype/user/user.json +msgid "Show view switcher" +msgstr "" + #: frappe/public/js/frappe/widgets/onboarding_widget.js:148 msgid "Show {0} List" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:540 +#: frappe/public/js/frappe/views/reports/report_view.js:555 msgid "Showing only Numeric fields from Report" msgstr "" @@ -25043,11 +25101,8 @@ msgstr "" msgid "Showing only first {0} rows out of {1}" msgstr "" -#. Label of the list_sidebar (Check) field in DocType 'User' -#. Label of the form_sidebar (Check) field in DocType 'User' #. Label of the sidebar (Link) field in DocType 'Desktop Icon' #. Label of the sidebar (Link) field in DocType 'Sidebar Item Group' -#: frappe/core/doctype/user/user.json #: frappe/desk/doctype/desktop_icon/desktop_icon.json #: frappe/desk/doctype/sidebar_item_group/sidebar_item_group.json msgid "Sidebar" @@ -25091,7 +25146,7 @@ msgstr "" msgid "Sign Up and Confirmation" msgstr "" -#: frappe/core/doctype/user/user.py:1075 +#: frappe/core/doctype/user/user.py:1069 msgid "Sign Up is disabled" msgstr "" @@ -25174,15 +25229,20 @@ msgstr "" msgid "Size (MB)" msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:649 +#: frappe/public/js/frappe/file_uploader/FileUploader.vue:634 msgid "Size exceeds the maximum allowed file size." msgstr "" +#: frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue:330 #: frappe/public/js/frappe/widgets/onboarding_widget.js:82 #: frappe/public/js/onboarding_tours/onboarding_tours.js:18 msgid "Skip" msgstr "" +#: frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue:270 +msgid "Skip All" +msgstr "" + #. Label of the skip_authorization (Check) field in DocType 'OAuth Client' #. Label of the skip_authorization (Select) field in DocType 'OAuth Provider #. Settings' @@ -25430,13 +25490,13 @@ msgstr "" msgid "Sort Order" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1582 +#: frappe/core/doctype/doctype/doctype.py:1588 msgid "Sort field {0} must be a valid fieldname" msgstr "" #. Label of the source (Data) field in DocType 'Web Page View' #. Label of the source (Small Text) field in DocType 'Website Route Redirect' -#: frappe/public/js/frappe/utils/utils.js:2015 +#: frappe/public/js/frappe/utils/utils.js:2045 #: frappe/website/doctype/web_page_view/web_page_view.json #: frappe/website/doctype/website_route_redirect/website_route_redirect.json #: frappe/website/report/website_analytics/website_analytics.js:38 @@ -25540,7 +25600,7 @@ msgstr "" msgid "Standard" msgstr "" -#: frappe/model/delete_doc.py:119 +#: frappe/model/delete_doc.py:116 msgid "Standard DocType can not be deleted." msgstr "" @@ -25642,7 +25702,7 @@ msgstr "" msgid "Start entering data below this line" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:165 +#: frappe/printing/page/print_format_builder/print_format_builder.js:167 msgid "Start new Format" msgstr "" @@ -25676,14 +25736,14 @@ msgstr "" #. Label of the state (Link) field in DocType 'Workflow Transition' #: frappe/contacts/report/addresses_and_contacts/addresses_and_contacts.py:40 #: frappe/integrations/doctype/token_cache/token_cache.json -#: frappe/workflow/doctype/workflow/workflow.js:162 +#: frappe/workflow/doctype/workflow/workflow.js:190 #: frappe/workflow/doctype/workflow_document_state/workflow_document_state.json #: frappe/workflow/doctype/workflow_state/workflow_state.json #: frappe/workflow/doctype/workflow_transition/workflow_transition.json msgid "State" msgstr "" -#: frappe/public/js/workflow_builder/components/Properties.vue:26 +#: frappe/public/js/workflow_builder/components/Properties.vue:35 msgid "State Properties" msgstr "" @@ -25773,8 +25833,8 @@ msgstr "" #: frappe/integrations/doctype/integration_request/integration_request.json #: frappe/integrations/doctype/oauth_bearer_token/oauth_bearer_token.json #: frappe/public/js/frappe/list/list_settings.js:362 -#: frappe/public/js/frappe/list/list_view.js:2453 -#: frappe/public/js/frappe/views/reports/report_view.js:1014 +#: frappe/public/js/frappe/list/list_view.js:2468 +#: frappe/public/js/frappe/views/reports/report_view.js:1029 #: frappe/website/doctype/personal_data_deletion_request/personal_data_deletion_request.json #: frappe/website/doctype/personal_data_deletion_step/personal_data_deletion_step.json #: frappe/workflow/doctype/workflow_action/workflow_action.json @@ -25841,7 +25901,7 @@ msgstr "" msgid "Store Attached PDF Document" msgstr "" -#: frappe/core/doctype/user/user.js:511 +#: frappe/core/doctype/user/user.js:512 msgid "Store the API secret securely. It won't be displayed again." msgstr "" @@ -25925,7 +25985,7 @@ msgstr "" #: frappe/email/doctype/email_template/email_template.json #: frappe/email/doctype/notification/notification.js:214 #: frappe/email/doctype/notification/notification.json -#: frappe/public/js/frappe/views/communication.js:128 +#: frappe/public/js/frappe/views/communication.js:131 #: frappe/public/js/frappe/views/inbox/inbox_view.js:63 msgid "Subject" msgstr "" @@ -25939,7 +25999,7 @@ msgstr "" msgid "Subject Field" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:2037 +#: frappe/core/doctype/doctype/doctype.py:2043 msgid "Subject Field type should be Data, Text, Long Text, Small Text, Text Editor" msgstr "" @@ -25960,14 +26020,14 @@ msgstr "" #: frappe/core/doctype/user_document_type/user_document_type.json #: frappe/core/doctype/user_permission/user_permission_list.js:138 #: frappe/email/doctype/notification/notification.json -#: frappe/public/js/frappe/form/quick_entry.js:248 +#: frappe/public/js/frappe/form/quick_entry.js:255 #: frappe/public/js/frappe/form/templates/set_sharing.html:4 #: frappe/public/js/frappe/ui/capture.js:308 #: frappe/website/web_form/request_to_delete_data/request_to_delete_data.json msgid "Submit" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2328 +#: frappe/public/js/frappe/list/list_view.js:2343 msgctxt "Button in list view actions menu" msgid "Submit" msgstr "" @@ -26021,11 +26081,11 @@ msgstr "" msgid "Submit this document to complete this step." msgstr "" -#: frappe/public/js/frappe/form/form.js:1270 +#: frappe/public/js/frappe/form/form.js:1271 msgid "Submit this document to confirm" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:2333 +#: frappe/public/js/frappe/list/list_view.js:2348 msgctxt "Title of confirmation dialog" msgid "Submit {0} documents?" msgstr "" @@ -26038,7 +26098,7 @@ msgstr "" msgid "Submitted" msgstr "" -#: frappe/workflow/doctype/workflow/workflow.py:104 +#: frappe/workflow/doctype/workflow/workflow.py:119 msgid "Submitted Document cannot be converted back to draft. Transition row {0}" msgstr "" @@ -26051,7 +26111,7 @@ msgctxt "Freeze message while submitting a document" msgid "Submitting" msgstr "" -#: frappe/desk/doctype/bulk_update/bulk_update.py:97 +#: frappe/desk/doctype/bulk_update/bulk_update.py:100 msgid "Submitting {0}" msgstr "" @@ -26060,11 +26120,6 @@ msgstr "" msgid "Subsidiary" msgstr "" -#. Label of the subtitle (Data) field in DocType 'Module Onboarding' -#: frappe/desk/doctype/module_onboarding/module_onboarding.json -msgid "Subtitle" -msgstr "" - #. Option for the 'Icon Style' (Select) field in DocType 'Desktop Settings' #: frappe/desk/doctype/desktop_settings/desktop_settings.json msgid "Subtle" @@ -26086,7 +26141,7 @@ msgstr "" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json #: frappe/desk/doctype/bulk_update/bulk_update.js:31 -#: frappe/public/js/frappe/form/grid.js:1286 +#: frappe/public/js/frappe/form/grid.js:1288 #: frappe/public/js/frappe/views/translation_manager.js:21 #: frappe/templates/includes/login/login.js:226 #: frappe/templates/includes/login/login.js:232 @@ -26103,11 +26158,6 @@ msgstr "" msgid "Success Action" msgstr "" -#. Label of the success_message (Data) field in DocType 'Module Onboarding' -#: frappe/desk/doctype/module_onboarding/module_onboarding.json -msgid "Success Message" -msgstr "" - #. Label of the success_uri (Data) field in DocType 'Token Cache' #: frappe/integrations/doctype/token_cache/token_cache.json msgid "Success URI" @@ -26137,7 +26187,7 @@ msgstr "" msgid "Successful Transactions" msgstr "" -#: frappe/model/rename_doc.py:701 +#: frappe/model/rename_doc.py:715 msgid "Successful: {0} to {1}" msgstr "" @@ -26158,7 +26208,7 @@ msgstr "" msgid "Successfully reset onboarding status for all users." msgstr "" -#: frappe/core/doctype/user/user.py:1490 +#: frappe/core/doctype/user/user.py:1484 msgid "Successfully signed out" msgstr "" @@ -26183,7 +26233,7 @@ msgstr "" msgid "Suggested Indexes" msgstr "" -#: frappe/core/doctype/user/user.py:774 +#: frappe/core/doctype/user/user.py:768 msgid "Suggested Username: {0}" msgstr "" @@ -26220,6 +26270,10 @@ msgstr "" msgid "Sunday" msgstr "" +#: frappe/public/js/frappe/ui/sidebar/sidebar.js:132 +msgid "Support without complexity, lock-in and per-user costs. Try it for free!" +msgstr "" + #: frappe/email/doctype/email_queue/email_queue_list.js:27 msgid "Suspend Sending" msgstr "" @@ -26237,6 +26291,14 @@ msgstr "" msgid "Switch To Desk" msgstr "" +#: frappe/public/js/frappe/ui/sidebar/sidebar.js:111 +msgid "Switch to Frappe CRM" +msgstr "" + +#: frappe/public/js/frappe/ui/sidebar/sidebar.js:131 +msgid "Switch to Helpdesk" +msgstr "" + #: frappe/public/js/frappe/ui/capture.js:282 msgid "Switching Camera" msgstr "" @@ -26609,7 +26671,7 @@ msgstr "" msgid "Table Fieldname" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1224 +#: frappe/core/doctype/doctype/doctype.py:1230 msgid "Table Fieldname Missing" msgstr "" @@ -26627,7 +26689,7 @@ msgstr "" msgid "Table MultiSelect" msgstr "" -#: frappe/desk/search.py:278 +#: frappe/desk/search.py:279 msgid "Table MultiSelect requires a table with at least one Link field, but none was found in {0}" msgstr "" @@ -26635,11 +26697,11 @@ msgstr "" msgid "Table Trimmed" msgstr "" -#: frappe/public/js/frappe/form/grid.js:1285 +#: frappe/public/js/frappe/form/grid.js:1287 msgid "Table updated" msgstr "" -#: frappe/model/document.py:1756 +#: frappe/model/document.py:1757 msgid "Table {0} cannot be empty" msgstr "" @@ -26659,7 +26721,7 @@ msgid "Tag Link" msgstr "" #: frappe/model/meta.py:59 -#: frappe/public/js/frappe/form/templates/form_sidebar.html:124 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:125 #: frappe/public/js/frappe/list/base_list.js:814 #: frappe/public/js/frappe/list/base_list.js:997 #: frappe/public/js/frappe/list/bulk_operations.js:444 @@ -26753,7 +26815,7 @@ msgstr "" msgid "Templates" msgstr "" -#: frappe/core/doctype/user/user.py:1088 +#: frappe/core/doctype/user/user.py:1082 msgid "Temporarily Disabled" msgstr "" @@ -26849,11 +26911,19 @@ msgstr "" msgid "Thanks" msgstr "" +#: frappe/workflow/doctype/workflow/workflow.js:142 +msgid "The Doc Status for all states has been reset to 0 because {0} is not submittable" +msgstr "" + +#: frappe/public/js/workflow_builder/store.js:166 +msgid "The Doc Status for all states has been reset to Draft because {0} is not submittable" +msgstr "" + #: frappe/templates/emails/auto_repeat_fail.html:3 msgid "The Auto Repeat for this document has been disabled." msgstr "" -#: frappe/public/js/frappe/form/grid.js:1308 +#: frappe/public/js/frappe/form/grid.js:1310 msgid "The CSV format is case sensitive" msgstr "" @@ -26927,7 +26997,7 @@ msgstr "" msgid "The contents of this email are strictly confidential. Please do not forward this email to anyone." msgstr "" -#: frappe/public/js/frappe/list/list_view.js:700 +#: frappe/public/js/frappe/list/list_view.js:715 msgid "The count shown is an estimated count. Click here to see the accurate count." msgstr "" @@ -26957,11 +27027,11 @@ msgstr "" msgid "The email button is enabled for the user in the document." msgstr "" -#: frappe/desk/search.py:291 +#: frappe/desk/search.py:292 msgid "The field {0} in {1} does not allow ignoring user permissions" msgstr "" -#: frappe/desk/search.py:301 +#: frappe/desk/search.py:302 msgid "The field {0} in {1} links to {2} and not {3}" msgstr "" @@ -27052,11 +27122,11 @@ msgstr "" msgid "The report you requested has been generated.

Click here to download:
{0}

This link will expire in {1} hours." msgstr "" -#: frappe/core/doctype/user/user.py:1046 +#: frappe/core/doctype/user/user.py:1040 msgid "The reset password link has been expired" msgstr "" -#: frappe/core/doctype/user/user.py:1048 +#: frappe/core/doctype/user/user.py:1042 msgid "The reset password link has either been used before or is invalid" msgstr "" @@ -27161,7 +27231,7 @@ msgstr "" msgid "Theme URL" msgstr "" -#: frappe/workflow/doctype/workflow/workflow.js:125 +#: frappe/workflow/doctype/workflow/workflow.js:153 msgid "There are documents which have workflow states that do not exist in this Workflow. It is recommended that you add these states to the Workflow and change their states before removing these states." msgstr "" @@ -27173,7 +27243,7 @@ msgstr "" msgid "There are no {0} for this {1}, why don't you start one!" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:989 +#: frappe/public/js/frappe/views/reports/query_report.js:998 msgid "There are {0} with the same filters already in the queue:" msgstr "" @@ -27182,7 +27252,7 @@ msgstr "" msgid "There can be only 9 Page Break fields in a Web Form" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1475 +#: frappe/core/doctype/doctype/doctype.py:1481 msgid "There can be only one Fold in a form" msgstr "" @@ -27206,7 +27276,7 @@ msgstr "" msgid "There is some problem with the file url: {0}" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:986 +#: frappe/public/js/frappe/views/reports/query_report.js:995 msgid "There is {0} with the same filters already in the queue:" msgstr "" @@ -27222,7 +27292,7 @@ msgstr "" msgid "There was an error saving filters" msgstr "" -#: frappe/public/js/frappe/form/sidebar/attachments.js:216 +#: frappe/public/js/frappe/form/sidebar/attachments.js:226 msgid "There were errors" msgstr "" @@ -27230,7 +27300,7 @@ msgstr "" msgid "There were errors while creating the document. Please try again." msgstr "" -#: frappe/public/js/frappe/views/communication.js:904 +#: frappe/public/js/frappe/views/communication.js:923 msgid "There were errors while sending email. Please try again." msgstr "" @@ -27312,7 +27382,7 @@ msgstr "" msgid "This cannot be undone" msgstr "" -#: frappe/desk/doctype/number_card/number_card.js:484 +#: frappe/desk/doctype/number_card/number_card.js:485 msgctxt "Number Card" msgid "This card is visible only to Administrator and System Managers by default. Set a DocType to share with users who have read access." msgstr "" @@ -27331,11 +27401,11 @@ msgstr "" msgid "This doctype has no orphan fields to trim" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1075 +#: frappe/core/doctype/doctype/doctype.py:1081 msgid "This doctype has pending migrations, run 'bench migrate' before modifying the doctype to avoid losing changes." msgstr "" -#: frappe/model/delete_doc.py:155 +#: frappe/model/delete_doc.py:152 msgid "This document can not be deleted right now as it's being modified by another user. Please try again after some time." msgstr "" @@ -27347,11 +27417,11 @@ msgstr "" msgid "This document has been modified after the email was sent." msgstr "" -#: frappe/public/js/frappe/form/form.js:1354 +#: frappe/public/js/frappe/form/form.js:1366 msgid "This document has unsaved changes which might not appear in final PDF.
Consider saving the document before printing." msgstr "" -#: frappe/public/js/frappe/form/form.js:1142 +#: frappe/public/js/frappe/form/form.js:1143 msgid "This document is already amended, you cannot ammend it again" msgstr "" @@ -27369,7 +27439,7 @@ msgid "" "\t\t\t\tPlease contact your system manager to enable this by installing pycups!" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:66 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:40 msgid "This feature is brand new and still experimental" msgstr "" @@ -27395,11 +27465,11 @@ msgstr "" msgid "This file is public. It can be accessed without authentication." msgstr "" -#: frappe/public/js/frappe/form/form.js:1248 +#: frappe/public/js/frappe/form/form.js:1249 msgid "This form has been modified after you have loaded it" msgstr "" -#: frappe/public/js/frappe/form/form.js:2314 +#: frappe/public/js/frappe/form/form.js:2332 msgid "This form is not editable due to a Workflow." msgstr "" @@ -27418,7 +27488,7 @@ msgstr "" msgid "This goes above the slideshow." msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:2337 +#: frappe/public/js/frappe/views/reports/query_report.js:2346 msgid "This is a background report. Please set the appropriate filters and then generate a new one." msgstr "" @@ -27468,7 +27538,7 @@ msgstr "" msgid "This month" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1065 +#: frappe/public/js/frappe/views/reports/query_report.js:1074 msgid "This report contains {0} rows and is too big to display in browser, you can {1} this report instead." msgstr "" @@ -27476,7 +27546,7 @@ msgstr "" msgid "This report was generated on {0}" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:877 +#: frappe/public/js/frappe/views/reports/query_report.js:786 msgid "This report was generated {0}." msgstr "" @@ -27544,7 +27614,7 @@ msgstr "" msgid "This will terminate the job immediately and might be dangerous, are you sure?" msgstr "" -#: frappe/core/doctype/user/user.py:1321 +#: frappe/core/doctype/user/user.py:1315 msgid "Throttled" msgstr "" @@ -27670,11 +27740,6 @@ msgstr "" msgid "Timeless Night" msgstr "" -#. Label of the timeline (Check) field in DocType 'User' -#: frappe/core/doctype/user/user.json -msgid "Timeline" -msgstr "" - #. Label of the timeline_doctype (Link) field in DocType 'Activity Log' #: frappe/core/doctype/activity_log/activity_log.json msgid "Timeline DocType" @@ -27697,11 +27762,11 @@ msgstr "" msgid "Timeline Name" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1570 +#: frappe/core/doctype/doctype/doctype.py:1576 msgid "Timeline field must be a Link or Dynamic Link" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1566 +#: frappe/core/doctype/doctype/doctype.py:1572 msgid "Timeline field must be a valid fieldname" msgstr "" @@ -27795,7 +27860,7 @@ msgstr "" msgid "Title Prefix" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1507 +#: frappe/core/doctype/doctype/doctype.py:1513 msgid "Title field must be a valid fieldname" msgstr "" @@ -27810,7 +27875,7 @@ msgstr "" msgid "To" msgstr "" -#: frappe/public/js/frappe/views/communication.js:53 +#: frappe/public/js/frappe/views/communication.js:55 msgctxt "Email Recipients" msgid "To" msgstr "" @@ -27885,10 +27950,6 @@ msgstr "" msgid "To generate password click {0}" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:878 -msgid "To get the updated report, click on {0}." -msgstr "" - #: frappe/email/doctype/email_account/email_account.js:139 msgid "To know more click {0}" msgstr "" @@ -27938,7 +27999,7 @@ msgstr "" msgid "Today" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1612 +#: frappe/public/js/frappe/views/reports/report_view.js:1627 msgid "Toggle Chart" msgstr "" @@ -27984,7 +28045,7 @@ msgstr "" msgid "Tomorrow" msgstr "" -#: frappe/desk/doctype/bulk_update/bulk_update.py:76 +#: frappe/desk/doctype/bulk_update/bulk_update.py:79 #: frappe/model/workflow.py:331 msgid "Too Many Documents" msgstr "" @@ -28005,7 +28066,7 @@ msgstr "" msgid "Too many requests. Please try again later." msgstr "" -#: frappe/core/doctype/user/user.py:1089 +#: frappe/core/doctype/user/user.py:1083 msgid "Too many users signed up recently, so the registration is disabled. Please try back in an hour" msgstr "" @@ -28068,8 +28129,8 @@ msgstr "" #: frappe/desk/query_report.py:685 #: frappe/public/js/frappe/views/reports/print_grid.html:50 -#: frappe/public/js/frappe/views/reports/query_report.js:1367 -#: frappe/public/js/frappe/views/reports/report_view.js:1593 +#: frappe/public/js/frappe/views/reports/query_report.js:1376 +#: frappe/public/js/frappe/views/reports/report_view.js:1608 msgid "Total" msgstr "" @@ -28119,11 +28180,11 @@ msgstr "" msgid "Total:" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1293 +#: frappe/public/js/frappe/views/reports/report_view.js:1308 msgid "Totals" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1268 +#: frappe/public/js/frappe/views/reports/report_view.js:1283 msgid "Totals Row" msgstr "" @@ -28185,7 +28246,7 @@ msgstr "" msgid "Track milestones for any document" msgstr "" -#: frappe/public/js/frappe/utils/utils.js:2079 +#: frappe/public/js/frappe/utils/utils.js:2109 msgid "Tracking URL generated and copied to clipboard" msgstr "" @@ -28193,7 +28254,7 @@ msgstr "" msgid "Transgender" msgstr "" -#: frappe/public/js/workflow_builder/components/Properties.vue:19 +#: frappe/public/js/workflow_builder/components/Properties.vue:28 msgid "Transition Properties" msgstr "" @@ -28221,7 +28282,7 @@ msgstr "" msgid "Translatable" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:2398 +#: frappe/public/js/frappe/views/reports/query_report.js:2407 msgid "Translate Data" msgstr "" @@ -28232,7 +28293,7 @@ msgstr "" msgid "Translate Link Fields" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1708 +#: frappe/public/js/frappe/views/reports/report_view.js:1723 msgid "Translate values" msgstr "" @@ -28254,6 +28315,10 @@ msgstr "" msgid "Translations" msgstr "" +#: frappe/core/doctype/translation/translation.js:7 +msgid "Translations can be viewed by guests, avoid storing private details in translations." +msgstr "" + #. Name of a role #: frappe/core/doctype/translation/translation.json msgid "Translator" @@ -28612,7 +28677,7 @@ msgstr "" msgid "Undo last action" msgstr "" -#: frappe/public/js/frappe/form/templates/form_sidebar.html:153 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:154 #: frappe/public/js/frappe/form/toolbar.js:945 msgid "Unfollow" msgstr "" @@ -28658,7 +28723,7 @@ msgstr "" msgid "Unknown Rounding Method: {}" msgstr "" -#: frappe/auth.py:325 +#: frappe/auth.py:329 msgid "Unknown User" msgstr "" @@ -28693,7 +28758,7 @@ msgstr "" #: frappe/printing/page/print_format_builder/print_format_builder_column_selector.html:9 #: frappe/public/js/frappe/data_import/data_exporter.js:160 #: frappe/public/js/frappe/form/controls/multicheck.js:179 -#: frappe/public/js/frappe/views/reports/report_view.js:1651 +#: frappe/public/js/frappe/views/reports/report_view.js:1666 msgid "Unselect All" msgstr "" @@ -28760,10 +28825,10 @@ msgstr "" #: frappe/core/doctype/role_permission_for_page_and_report/role_permission_for_page_and_report.js:23 #: frappe/custom/doctype/customize_form/customize_form.js:448 #: frappe/desk/doctype/bulk_update/bulk_update.js:15 -#: frappe/printing/page/print_format_builder/print_format_builder.js:447 -#: frappe/printing/page/print_format_builder/print_format_builder.js:507 -#: frappe/printing/page/print_format_builder/print_format_builder.js:678 -#: frappe/printing/page/print_format_builder/print_format_builder.js:799 +#: frappe/printing/page/print_format_builder/print_format_builder.js:449 +#: frappe/printing/page/print_format_builder/print_format_builder.js:509 +#: frappe/printing/page/print_format_builder/print_format_builder.js:680 +#: frappe/printing/page/print_format_builder/print_format_builder.js:801 #: frappe/public/js/frappe/form/grid_row.js:413 msgid "Update" msgstr "" @@ -28888,7 +28953,7 @@ msgstr "" msgid "Updating related fields..." msgstr "" -#: frappe/desk/doctype/bulk_update/bulk_update.py:125 +#: frappe/desk/doctype/bulk_update/bulk_update.py:128 msgid "Updating {0}" msgstr "" @@ -28896,15 +28961,14 @@ msgstr "" msgid "Updating {0} of {1}, {2}" msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:526 #: frappe/public/js/frappe/file_uploader/file_uploader.bundle.js:152 #: frappe/public/js/frappe/file_uploader/file_uploader.bundle.js:153 #: frappe/public/js/frappe/form/grid.js:66 -#: frappe/public/js/frappe/form/templates/form_sidebar.html:13 +#: frappe/public/js/frappe/form/templates/form_sidebar.html:12 msgid "Upload" msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:663 +#: frappe/public/js/frappe/file_uploader/FileUploader.vue:648 msgid "Upload Failed" msgstr "" @@ -28930,6 +28994,10 @@ msgstr "" msgid "Uploaded To Google Drive" msgstr "" +#: frappe/public/js/frappe/file_uploader/file_uploader.bundle.js:154 +msgid "Uploading" +msgstr "" + #. Description of the 'Value to Validate' (Data) field in DocType 'Onboarding #. Step' #: frappe/desk/doctype/onboarding_step/onboarding_step.json @@ -28950,7 +29018,7 @@ msgstr "" #. Label of the use_html (Check) field in DocType 'Email Template' #: frappe/email/doctype/email_template/email_template.json -#: frappe/public/js/frappe/views/communication.js:116 +#: frappe/public/js/frappe/views/communication.js:119 msgid "Use HTML" msgstr "" @@ -29018,7 +29086,7 @@ msgstr "" msgid "Use if the default settings don't seem to detect your data correctly" msgstr "" -#: frappe/model/db_query.py:511 +#: frappe/model/db_query.py:515 msgid "Use of sub-query or function is restricted" msgstr "" @@ -29226,7 +29294,7 @@ msgstr "" msgid "User Invitation" msgstr "" -#: frappe/public/js/frappe/ui/sidebar/sidebar.html:52 +#: frappe/public/js/frappe/ui/sidebar/sidebar.html:59 msgid "User Menu" msgstr "" @@ -29246,12 +29314,12 @@ msgstr "" #. Label of a Link in the Users Workspace #: frappe/core/page/permission_manager/permission_manager_help.html:97 #: frappe/core/workspace/users/users.json -#: frappe/public/js/frappe/views/reports/query_report.js:2084 -#: frappe/public/js/frappe/views/reports/report_view.js:1811 +#: frappe/public/js/frappe/views/reports/query_report.js:2093 +#: frappe/public/js/frappe/views/reports/report_view.js:1826 msgid "User Permissions" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1943 +#: frappe/public/js/frappe/list/list_view.js:1958 msgctxt "Button in list view menu" msgid "User Permissions" msgstr "" @@ -29329,7 +29397,7 @@ msgstr "" msgid "User can login using Email id or User Name" msgstr "" -#: frappe/auth.py:183 frappe/utils/user.py:301 +#: frappe/auth.py:183 frappe/utils/user.py:304 msgid "User does not exist" msgstr "" @@ -29367,7 +29435,7 @@ msgstr "" msgid "User with email: {0} does not exist in the system. Please ask 'System Administrator' to create the user for you." msgstr "" -#: frappe/core/doctype/user/user.py:579 +#: frappe/core/doctype/user/user.py:573 msgid "User {0} cannot be deleted" msgstr "" @@ -29375,7 +29443,7 @@ msgstr "" msgid "User {0} cannot be disabled" msgstr "" -#: frappe/core/doctype/user/user.py:652 +#: frappe/core/doctype/user/user.py:646 msgid "User {0} cannot be renamed" msgstr "" @@ -29387,7 +29455,7 @@ msgstr "" msgid "User {0} does not have doctype access via role permission for document {1}" msgstr "" -#: frappe/desk/doctype/workspace/workspace.py:301 +#: frappe/desk/doctype/workspace/workspace.py:313 msgid "User {0} does not have the permission to create a Workspace." msgstr "" @@ -29396,11 +29464,11 @@ msgstr "" msgid "User {0} has requested for data deletion" msgstr "" -#: frappe/core/doctype/user/user.py:1465 +#: frappe/core/doctype/user/user.py:1459 msgid "User {0} has started an impersonation session as you.

Reason provided: {1}" msgstr "" -#: frappe/core/doctype/user/user.py:1448 +#: frappe/core/doctype/user/user.py:1442 msgid "User {0} impersonated as {1}" msgstr "" @@ -29429,7 +29497,7 @@ msgstr "" msgid "Username" msgstr "" -#: frappe/core/doctype/user/user.py:741 +#: frappe/core/doctype/user/user.py:735 msgid "Username {0} already exists" msgstr "" @@ -29536,8 +29604,8 @@ msgstr "" #: frappe/core/doctype/sms_parameter/sms_parameter.json #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:305 #: frappe/desk/doctype/dashboard_chart/dashboard_chart.js:439 -#: frappe/desk/doctype/number_card/number_card.js:208 -#: frappe/desk/doctype/number_card/number_card.js:347 +#: frappe/desk/doctype/number_card/number_card.js:203 +#: frappe/desk/doctype/number_card/number_card.js:342 #: frappe/email/doctype/auto_email_report/auto_email_report.js:95 #: frappe/integrations/doctype/query_parameters/query_parameters.json #: frappe/integrations/doctype/webhook_header/webhook_header.json @@ -29573,15 +29641,15 @@ msgstr "" msgid "Value Too Long" msgstr "" -#: frappe/model/base_document.py:1246 frappe/model/document.py:877 +#: frappe/model/base_document.py:1246 frappe/model/document.py:878 msgid "Value cannot be changed for {0}" msgstr "" -#: frappe/model/document.py:823 +#: frappe/model/document.py:824 msgid "Value cannot be negative for" msgstr "" -#: frappe/model/document.py:827 +#: frappe/model/document.py:828 msgid "Value cannot be negative for {0}: {1}" msgstr "" @@ -29716,6 +29784,11 @@ msgstr "" msgid "View Audit Trail" msgstr "" +#. Option for the 'Action' (Select) field in DocType 'Onboarding Step' +#: frappe/desk/doctype/onboarding_step/onboarding_step.json +msgid "View Docs" +msgstr "" + #: frappe/core/doctype/user/user.js:152 msgid "View Doctype Permissions" msgstr "" @@ -29767,11 +29840,6 @@ msgstr "" msgid "View Sidebar" msgstr "" -#. Label of the view_switcher (Check) field in DocType 'User' -#: frappe/core/doctype/user/user.json -msgid "View Switcher" -msgstr "" - #: frappe/website/doctype/website_settings/website_settings.js:16 msgid "View Website" msgstr "" @@ -29828,7 +29896,7 @@ msgstr "" msgid "Virtual DocType {} requires overriding an instance method called {} found {}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1689 +#: frappe/core/doctype/doctype/doctype.py:1695 msgid "Virtual tables must be virtual fields" msgstr "" @@ -29885,7 +29953,7 @@ msgstr "" msgid "Warning: DATA LOSS IMMINENT! Proceeding will permanently delete following database columns from doctype {0}:" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1146 +#: frappe/core/doctype/doctype/doctype.py:1152 msgid "Warning: Naming is not set" msgstr "" @@ -29910,11 +29978,6 @@ msgstr "" msgid "Watch Tutorial" msgstr "" -#. Option for the 'Action' (Select) field in DocType 'Onboarding Step' -#: frappe/desk/doctype/onboarding_step/onboarding_step.json -msgid "Watch Video" -msgstr "" - #: frappe/desk/doctype/workspace/workspace.js:34 msgid "We do not allow editing of this document. Simply click the Edit button on the workspace page to make your workspace editable and customize it as you wish" msgstr "" @@ -29973,7 +30036,7 @@ msgstr "" msgid "Web Page Block" msgstr "" -#: frappe/public/js/frappe/utils/utils.js:2007 +#: frappe/public/js/frappe/utils/utils.js:2037 msgid "Web Page URL" msgstr "" @@ -30133,7 +30196,7 @@ msgstr "" msgid "Website Search Field" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1554 +#: frappe/core/doctype/doctype/doctype.py:1560 msgid "Website Search Field must be a valid fieldname" msgstr "" @@ -30292,11 +30355,19 @@ msgstr "" msgid "Welcome Workspace" msgstr "" -#: frappe/core/doctype/user/user.py:457 +#: frappe/core/doctype/user/user.py:451 msgid "Welcome email sent" msgstr "" -#: frappe/core/doctype/user/user.py:518 +#: frappe/public/js/frappe/ui/user_onboarding/user_onboarding.bundle.js:17 +msgid "Welcome to Frappe!" +msgstr "" + +#: frappe/public/js/frappe/views/workspace/workspace.js:680 +msgid "Welcome to the {0} workspace" +msgstr "" + +#: frappe/core/doctype/user/user.py:512 msgid "Welcome to {0}" msgstr "" @@ -30363,7 +30434,7 @@ msgstr "" msgid "Will be your login ID" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:424 +#: frappe/printing/page/print_format_builder/print_format_builder.js:426 msgid "Will only be shown if section headings are enabled" msgstr "" @@ -30394,7 +30465,7 @@ msgstr "" #. Label of a Workspace Sidebar Item #: frappe/core/doctype/comment/comment.json #: frappe/core/doctype/doctype/doctype.json -#: frappe/public/js/workflow_builder/store.js:129 +#: frappe/public/js/workflow_builder/store.js:133 #: frappe/workflow/doctype/workflow/workflow.json #: frappe/workspace_sidebar/build.json msgid "Workflow" @@ -30402,7 +30473,7 @@ msgstr "" #. Name of a DocType #: frappe/workflow/doctype/workflow_action/workflow_action.json -#: frappe/workflow/doctype/workflow_action/workflow_action.py:455 +#: frappe/workflow/doctype/workflow_action/workflow_action.py:499 msgid "Workflow Action" msgstr "" @@ -30429,7 +30500,7 @@ msgstr "" msgid "Workflow Action is not created for optional states" msgstr "" -#: frappe/public/js/workflow_builder/store.js:129 +#: frappe/public/js/workflow_builder/store.js:133 #: frappe/workflow/doctype/workflow/workflow.js:25 #: frappe/workflow/page/workflow_builder/workflow_builder.js:4 msgid "Workflow Builder" @@ -30453,7 +30524,7 @@ msgstr "" msgid "Workflow Data" msgstr "" -#: frappe/public/js/workflow_builder/components/Properties.vue:44 +#: frappe/public/js/workflow_builder/components/Properties.vue:53 msgid "Workflow Details" msgstr "" @@ -30478,6 +30549,10 @@ msgstr "" msgid "Workflow State" msgstr "" +#: frappe/workflow/doctype/workflow/workflow.py:100 +msgid "Workflow State '{0}' has Document Status {1}, but DocType '{2}' is not submittable. Only Document Status 0 (Draft) is allowed for non-submittable DocTypes." +msgstr "" + #. Label of the workflow_state_field (Data) field in DocType 'Workflow' #: frappe/workflow/doctype/workflow/workflow.json msgid "Workflow State Field" @@ -30491,7 +30566,7 @@ msgstr "" msgid "Workflow State transition not allowed from {0} to {1}" msgstr "" -#: frappe/workflow/doctype/workflow/workflow.js:140 +#: frappe/workflow/doctype/workflow/workflow.js:168 msgid "Workflow States Don't Exist" msgstr "" @@ -30524,7 +30599,7 @@ msgstr "" msgid "Workflow state represents the current state of a document." msgstr "" -#: frappe/public/js/workflow_builder/store.js:83 +#: frappe/public/js/workflow_builder/store.js:87 msgid "Workflow updated successfully" msgstr "" @@ -30539,7 +30614,7 @@ msgstr "" #: frappe/desk/doctype/workspace/workspace.json #: frappe/desk/doctype/workspace_sidebar_item/workspace_sidebar_item.json #: frappe/public/js/frappe/ui/toolbar/search_utils.js:92 -#: frappe/public/js/frappe/utils/utils.js:967 +#: frappe/public/js/frappe/utils/utils.js:990 #: frappe/public/js/frappe/views/workspace/workspace.js:10 #: frappe/workspace_sidebar/build.json msgid "Workspace" @@ -30602,7 +30677,7 @@ msgstr "" msgid "Workspace added to desktop" msgstr "" -#: frappe/public/js/frappe/views/workspace/workspace.js:558 +#: frappe/public/js/frappe/views/workspace/workspace.js:559 msgid "Workspace {0} created" msgstr "" @@ -30640,7 +30715,7 @@ msgstr "" msgid "Wrong Fetch From value" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:529 +#: frappe/public/js/frappe/views/reports/report_view.js:544 msgid "X Axis Field" msgstr "" @@ -30654,7 +30729,7 @@ msgstr "" msgid "XLSX" msgstr "" -#: frappe/public/js/frappe/file_uploader/FileUploader.vue:676 +#: frappe/public/js/frappe/file_uploader/FileUploader.vue:661 msgid "XMLHttpRequest Error" msgstr "" @@ -30663,13 +30738,13 @@ msgstr "" msgid "Y Axis" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:536 +#: frappe/public/js/frappe/views/reports/report_view.js:551 msgid "Y Axis Fields" msgstr "" #. Label of the y_field (Select) field in DocType 'Dashboard Chart Field' #: frappe/desk/doctype/dashboard_chart_field/dashboard_chart_field.json -#: frappe/public/js/frappe/views/reports/query_report.js:1268 +#: frappe/public/js/frappe/views/reports/query_report.js:1277 msgid "Y Field" msgstr "" @@ -30800,14 +30875,22 @@ msgstr "" msgid "You are not allowed to delete Standard Report" msgstr "" +#: frappe/email/doctype/notification/notification.py:728 +msgid "You are not allowed to delete a standard Notification. You can disable it instead." +msgstr "" + #: frappe/website/doctype/website_theme/website_theme.py:73 msgid "You are not allowed to delete a standard Website Theme" msgstr "" -#: frappe/core/doctype/report/report.py:398 +#: frappe/core/doctype/report/report.py:407 msgid "You are not allowed to edit the report." msgstr "" +#: frappe/desk/doctype/workspace/workspace.py:87 +msgid "You are not allowed to edit this workspace" +msgstr "" + #: frappe/core/doctype/data_import/exporter.py:121 #: frappe/core/doctype/data_import/exporter.py:125 #: frappe/desk/reportview.py:448 frappe/desk/reportview.py:451 @@ -30815,11 +30898,22 @@ msgstr "" msgid "You are not allowed to export {} doctype" msgstr "" +#: frappe/automation/doctype/assignment_rule/assignment_rule.py:204 +#: frappe/desk/doctype/tag/tag.py:49 frappe/desk/form/assign_to.py:146 +#: frappe/desk/form/assign_to.py:187 frappe/utils/print_format.py:58 +msgid "You are not allowed to perform bulk actions" +msgstr "" + +#: frappe/desk/doctype/bulk_update/bulk_update.py:59 +#: frappe/desk/reportview.py:601 frappe/utils/print_format.py:40 +msgid "You are not allowed to perform bulk actions." +msgstr "" + #: frappe/public/js/frappe/views/treeview.js:458 msgid "You are not allowed to print this report" msgstr "" -#: frappe/public/js/frappe/views/communication.js:845 +#: frappe/public/js/frappe/views/communication.js:864 msgid "You are not allowed to send emails related to this document" msgstr "" @@ -30827,7 +30921,7 @@ msgstr "" msgid "You are not allowed to update the status of this event." msgstr "" -#: frappe/website/doctype/web_form/web_form.py:634 +#: frappe/website/doctype/web_form/web_form.py:639 msgid "You are not allowed to update this Web Form Document" msgstr "" @@ -30864,7 +30958,7 @@ msgctxt "Form timeline" msgid "You attached {0}" msgstr "" -#: frappe/printing/page/print_format_builder/print_format_builder.js:783 +#: frappe/printing/page/print_format_builder/print_format_builder.js:785 msgid "You can add dynamic properties from the document by using Jinja templating." msgstr "" @@ -30896,7 +30990,7 @@ msgstr "" msgid "You can continue with the onboarding after exploring this page" msgstr "" -#: frappe/model/delete_doc.py:179 +#: frappe/model/delete_doc.py:176 msgid "You can disable this {0} instead of deleting it." msgstr "" @@ -31010,7 +31104,7 @@ msgctxt "Form timeline" msgid "You created this document {0}" msgstr "" -#: frappe/public/js/frappe/request.js:171 +#: frappe/public/js/frappe/request.js:178 msgid "You do not have enough permissions to access this resource. Please contact your manager to get access." msgstr "" @@ -31034,7 +31128,7 @@ msgstr "" msgid "You do not have permission to access {0}: {1}." msgstr "" -#: frappe/public/js/frappe/form/form.js:1000 +#: frappe/public/js/frappe/form/form.js:1001 msgid "You do not have permissions to cancel all linked documents." msgstr "" @@ -31042,7 +31136,7 @@ msgstr "" msgid "You don't have access to Report: {0}" msgstr "" -#: frappe/website/doctype/web_form/web_form.py:841 +#: frappe/website/doctype/web_form/web_form.py:864 msgid "You don't have permission to access the {0} DocType." msgstr "" @@ -31090,7 +31184,7 @@ msgstr "" msgid "You haven't added any Dashboard Charts or Number Cards yet." msgstr "" -#: frappe/public/js/frappe/list/list_view.js:516 +#: frappe/public/js/frappe/list/list_view.js:531 msgid "You haven't created a {0} yet" msgstr "" @@ -31106,11 +31200,11 @@ msgstr "" msgid "You must add atleast one link." msgstr "" -#: frappe/website/doctype/web_form/web_form.py:837 +#: frappe/website/doctype/web_form/web_form.py:860 msgid "You must be logged in to use this form." msgstr "" -#: frappe/website/doctype/web_form/web_form.py:678 +#: frappe/website/doctype/web_form/web_form.py:683 msgid "You must login to submit this form" msgstr "" @@ -31118,8 +31212,8 @@ msgstr "" msgid "You need the '{0}' permission on {1} {2} to perform this action." msgstr "" -#: frappe/desk/doctype/workspace/workspace.py:132 -#: frappe/desk/doctype/workspace_sidebar/workspace_sidebar.py:74 +#: frappe/desk/doctype/workspace/workspace.py:144 +#: frappe/desk/doctype/workspace_sidebar/workspace_sidebar.py:75 msgid "You need to be Workspace Manager to delete a public workspace." msgstr "" @@ -31159,7 +31253,7 @@ msgstr "" msgid "You need to have \"Share\" permission" msgstr "" -#: frappe/utils/print_format.py:329 +#: frappe/utils/print_format.py:335 msgid "You need to install pycups to use this feature!" msgstr "" @@ -31275,19 +31369,19 @@ msgstr "" msgid "Your account has been deleted" msgstr "" -#: frappe/auth.py:523 +#: frappe/auth.py:527 msgid "Your account has been locked and will resume after {0} seconds" msgstr "" -#: frappe/desk/form/assign_to.py:280 +#: frappe/desk/form/assign_to.py:285 msgid "Your assignment on {0} {1} has been removed by {2}" msgstr "" -#: frappe/core/doctype/file/file.js:80 +#: frappe/core/doctype/file/file.js:89 msgid "Your browser does not support the audio element." msgstr "" -#: frappe/core/doctype/file/file.js:62 +#: frappe/core/doctype/file/file.js:71 msgid "Your browser does not support the video element." msgstr "" @@ -31382,7 +31476,7 @@ msgstr "" msgid "amend" msgstr "" -#: frappe/public/js/frappe/utils/utils.js:407 frappe/utils/data.py:1567 +#: frappe/public/js/frappe/utils/utils.js:430 frappe/utils/data.py:1567 msgid "and" msgstr "" @@ -31433,6 +31527,11 @@ msgstr "" msgid "commented" msgstr "" +#: frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue:258 +#: frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue:262 +msgid "completed" +msgstr "" + #. Option for the 'Permission Type' (Select) field in DocType 'Permission #. Inspector' #: frappe/core/doctype/permission_inspector/permission_inspector.json @@ -31445,7 +31544,7 @@ msgid "cyan" msgstr "" #: frappe/public/js/frappe/form/controls/duration.js:219 -#: frappe/public/js/frappe/utils/utils.js:1203 +#: frappe/public/js/frappe/utils/utils.js:1226 msgctxt "Days (Field: Duration)" msgid "d" msgstr "" @@ -31622,7 +31721,7 @@ msgid "gzip not found in PATH! This is required to take a backup." msgstr "" #: frappe/public/js/frappe/form/controls/duration.js:220 -#: frappe/public/js/frappe/utils/utils.js:1207 +#: frappe/public/js/frappe/utils/utils.js:1230 msgctxt "Hours (Field: Duration)" msgid "h" msgstr "" @@ -31664,7 +31763,7 @@ msgstr "" msgid "just now" msgstr "" -#: frappe/desk/desktop.py:255 frappe/desk/query_report.py:309 +#: frappe/desk/desktop.py:254 frappe/desk/query_report.py:309 msgid "label" msgstr "" @@ -31695,7 +31794,7 @@ msgid "long" msgstr "" #: frappe/public/js/frappe/form/controls/duration.js:221 -#: frappe/public/js/frappe/utils/utils.js:1211 +#: frappe/public/js/frappe/utils/utils.js:1234 msgctxt "Minutes (Field: Duration)" msgid "m" msgstr "" @@ -31788,7 +31887,7 @@ msgstr "" msgid "on_update_after_submit" msgstr "" -#: frappe/public/js/frappe/utils/utils.js:404 frappe/www/login.html:90 +#: frappe/public/js/frappe/utils/utils.js:427 frappe/www/login.html:90 #: frappe/www/login.py:112 msgid "or" msgstr "" @@ -31861,7 +31960,7 @@ msgid "restored {0} as {1}" msgstr "" #: frappe/public/js/frappe/form/controls/duration.js:222 -#: frappe/public/js/frappe/utils/utils.js:1215 +#: frappe/public/js/frappe/utils/utils.js:1238 msgctxt "Seconds (Field: Duration)" msgid "s" msgstr "" @@ -31921,6 +32020,10 @@ msgstr "" msgid "starting the setup..." msgstr "" +#: frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue:252 +msgid "steps completed" +msgstr "" + #. Description of the 'Group Object Class' (Data) field in DocType 'LDAP #. Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json @@ -32000,7 +32103,7 @@ msgstr "" msgid "version_table" msgstr "" -#: frappe/automation/doctype/assignment_rule/assignment_rule.py:382 +#: frappe/automation/doctype/assignment_rule/assignment_rule.py:385 msgid "via Assignment Rule" msgstr "" @@ -32119,7 +32222,7 @@ msgstr "" msgid "{0} Calendar" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:609 +#: frappe/public/js/frappe/views/reports/report_view.js:624 msgid "{0} Chart" msgstr "" @@ -32176,7 +32279,7 @@ msgstr "" msgid "{0} Report" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:980 +#: frappe/public/js/frappe/views/reports/query_report.js:989 msgid "{0} Reports" msgstr "" @@ -32189,7 +32292,7 @@ msgid "{0} Tree" msgstr "" #: frappe/public/js/frappe/form/footer/form_timeline.js:128 -#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:152 +#: frappe/public/js/frappe/form/sidebar/form_sidebar.js:150 msgid "{0} Web page views" msgstr "" @@ -32229,7 +32332,7 @@ msgstr "" msgid "{0} are required" msgstr "" -#: frappe/desk/form/assign_to.py:287 +#: frappe/desk/form/assign_to.py:292 msgid "{0} assigned a new task {1} {2} to you" msgstr "" @@ -32284,7 +32387,7 @@ msgctxt "Form timeline" msgid "{0} changed {1} to {2}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1637 +#: frappe/core/doctype/doctype/doctype.py:1643 msgid "{0} contains an invalid Fetch From expression, Fetch From can't be self-referential." msgstr "" @@ -32391,7 +32494,7 @@ msgstr "" msgid "{0} is an ancestor of {1}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1650 +#: frappe/core/doctype/doctype/doctype.py:1656 msgid "{0} is an invalid Data field." msgstr "" @@ -32408,7 +32511,7 @@ msgid "{0} is between {1}" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:710 -#: frappe/public/js/frappe/views/reports/report_view.js:1509 +#: frappe/public/js/frappe/views/reports/report_view.js:1524 msgid "{0} is between {1} and {2}" msgstr "" @@ -32427,31 +32530,31 @@ msgstr "" msgid "{0} is enabled" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1478 +#: frappe/public/js/frappe/views/reports/report_view.js:1493 msgid "{0} is equal to {1}" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:691 -#: frappe/public/js/frappe/views/reports/report_view.js:1498 +#: frappe/public/js/frappe/views/reports/report_view.js:1513 msgid "{0} is greater than or equal to {1}" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:681 -#: frappe/public/js/frappe/views/reports/report_view.js:1488 +#: frappe/public/js/frappe/views/reports/report_view.js:1503 msgid "{0} is greater than {1}" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:696 -#: frappe/public/js/frappe/views/reports/report_view.js:1503 +#: frappe/public/js/frappe/views/reports/report_view.js:1518 msgid "{0} is less than or equal to {1}" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:686 -#: frappe/public/js/frappe/views/reports/report_view.js:1493 +#: frappe/public/js/frappe/views/reports/report_view.js:1508 msgid "{0} is less than {1}" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1528 +#: frappe/public/js/frappe/views/reports/report_view.js:1543 msgid "{0} is like {1}" msgstr "" @@ -32467,7 +32570,7 @@ msgstr "" msgid "{0} is not a field of doctype {1}" msgstr "" -#: frappe/www/printview.py:380 +#: frappe/www/printview.py:382 msgid "{0} is not a raw printing format." msgstr "" @@ -32529,21 +32632,21 @@ msgid "{0} is not an ancestor of {1}" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:668 -#: frappe/public/js/frappe/views/reports/report_view.js:1483 +#: frappe/public/js/frappe/views/reports/report_view.js:1498 msgid "{0} is not equal to {1}" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:1530 +#: frappe/public/js/frappe/views/reports/report_view.js:1545 msgid "{0} is not like {1}" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:672 -#: frappe/public/js/frappe/views/reports/report_view.js:1524 +#: frappe/public/js/frappe/views/reports/report_view.js:1539 msgid "{0} is not one of {1}" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:702 -#: frappe/public/js/frappe/views/reports/report_view.js:1534 +#: frappe/public/js/frappe/views/reports/report_view.js:1549 msgid "{0} is not set" msgstr "" @@ -32560,7 +32663,7 @@ msgid "{0} is on or before {1}" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:670 -#: frappe/public/js/frappe/views/reports/report_view.js:1517 +#: frappe/public/js/frappe/views/reports/report_view.js:1532 msgid "{0} is one of {1}" msgstr "" @@ -32573,12 +32676,12 @@ msgid "{0} is required" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:699 -#: frappe/public/js/frappe/views/reports/report_view.js:1533 +#: frappe/public/js/frappe/views/reports/report_view.js:1548 msgid "{0} is set" msgstr "" #: frappe/public/js/frappe/form/controls/link.js:723 -#: frappe/public/js/frappe/views/reports/report_view.js:1512 +#: frappe/public/js/frappe/views/reports/report_view.js:1527 msgid "{0} is within {1}" msgstr "" @@ -32586,11 +32689,11 @@ msgstr "" msgid "{0} is {1}" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1862 +#: frappe/public/js/frappe/list/list_view.js:1877 msgid "{0} items selected" msgstr "" -#: frappe/core/doctype/user/user.py:1457 +#: frappe/core/doctype/user/user.py:1451 msgid "{0} just impersonated as you. They gave this reason: {1}" msgstr "" @@ -32622,23 +32725,23 @@ msgstr "" msgid "{0} months ago" msgstr "" -#: frappe/model/document.py:1990 +#: frappe/model/document.py:1991 msgid "{0} must be after {1}" msgstr "" -#: frappe/model/document.py:1742 +#: frappe/model/document.py:1743 msgid "{0} must be beginning with '{1}'" msgstr "" -#: frappe/model/document.py:1744 +#: frappe/model/document.py:1745 msgid "{0} must be equal to '{1}'" msgstr "" -#: frappe/model/document.py:1740 +#: frappe/model/document.py:1741 msgid "{0} must be none of {1}" msgstr "" -#: frappe/model/document.py:1738 frappe/utils/csvutils.py:162 +#: frappe/model/document.py:1739 frappe/utils/csvutils.py:162 msgid "{0} must be one of {1}" msgstr "" @@ -32650,7 +32753,7 @@ msgstr "" msgid "{0} must be unique" msgstr "" -#: frappe/model/document.py:1746 +#: frappe/model/document.py:1747 msgid "{0} must be {1} {2}" msgstr "" @@ -32666,16 +32769,16 @@ msgstr "" msgid "{0} not allowed to be renamed" msgstr "" -#: frappe/core/doctype/report/report.py:435 -#: frappe/public/js/frappe/list/list_view.js:1242 +#: frappe/core/doctype/report/report.py:444 +#: frappe/public/js/frappe/list/list_view.js:1257 msgid "{0} of {1}" msgstr "" -#: frappe/public/js/frappe/list/list_view.js:1244 +#: frappe/public/js/frappe/list/list_view.js:1259 msgid "{0} of {1} ({2} rows with children)" msgstr "" -#: frappe/public/js/frappe/views/reports/report_view.js:456 +#: frappe/public/js/frappe/views/reports/report_view.js:471 msgid "{0} of {1} records match (filtered on visible rows only)" msgstr "" @@ -32725,11 +32828,19 @@ msgstr "" msgid "{0} removed {1} rows from {2}" msgstr "" +#: frappe/public/js/frappe/form/linked_with.js:91 +msgid "{0} restricted document" +msgstr "" + +#: frappe/public/js/frappe/form/linked_with.js:91 +msgid "{0} restricted documents" +msgstr "" + #: frappe/public/js/frappe/roles_editor.js:67 msgid "{0} role does not have permission on any doctype" msgstr "" -#: frappe/model/document.py:1981 +#: frappe/model/document.py:1982 msgid "{0} row #{1}:" msgstr "" @@ -32855,7 +32966,7 @@ msgstr "" msgid "{0} {1} does not exist, select a new target to merge" msgstr "" -#: frappe/public/js/frappe/form/form.js:991 +#: frappe/public/js/frappe/form/form.js:992 msgid "{0} {1} is linked with the following submitted documents: {2}" msgstr "" @@ -32876,7 +32987,7 @@ msgctxt "Money in words" msgid "{0}." msgstr "" -#: frappe/utils/print_format.py:151 frappe/utils/print_format.py:195 +#: frappe/utils/print_format.py:157 frappe/utils/print_format.py:201 msgid "{0}/{1} complete | Please leave this tab open until completion." msgstr "" @@ -32888,43 +32999,43 @@ msgstr "" msgid "{0}: Failed to attach new recurring document. To enable attaching document in the auto repeat notification email, enable {1} in Print Settings" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1458 +#: frappe/core/doctype/doctype/doctype.py:1464 msgid "{0}: Field '{1}' cannot be set as Unique as it has non-unique values" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1366 +#: frappe/core/doctype/doctype/doctype.py:1372 msgid "{0}: Field {1} in row {2} cannot be hidden and mandatory without default" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1325 +#: frappe/core/doctype/doctype/doctype.py:1331 msgid "{0}: Field {1} of type {2} cannot be mandatory" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1313 +#: frappe/core/doctype/doctype/doctype.py:1319 msgid "{0}: Fieldname {1} appears multiple times in rows {2}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1445 +#: frappe/core/doctype/doctype/doctype.py:1451 msgid "{0}: Fieldtype {1} for {2} cannot be unique" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1807 +#: frappe/core/doctype/doctype/doctype.py:1813 msgid "{0}: No basic permissions set" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1821 +#: frappe/core/doctype/doctype/doctype.py:1827 msgid "{0}: Only one rule allowed with the same Role, Level and {1}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1347 +#: frappe/core/doctype/doctype/doctype.py:1353 msgid "{0}: Options must be a valid DocType for field {1} in row {2}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1336 +#: frappe/core/doctype/doctype/doctype.py:1342 msgid "{0}: Options required for Link or Table type field {1} in row {2}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1354 +#: frappe/core/doctype/doctype/doctype.py:1360 msgid "{0}: Options {1} must be the same as doctype name {2} for the field {3}" msgstr "" @@ -32932,47 +33043,47 @@ msgstr "" msgid "{0}: Other permission rules may also apply" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1836 +#: frappe/core/doctype/doctype/doctype.py:1842 msgid "{0}: Permission at level 0 must be set before higher levels are set" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1913 +#: frappe/core/doctype/doctype/doctype.py:1919 msgid "{0}: The 'Amend' permission cannot be granted for a non-submittable DocType." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1861 +#: frappe/core/doctype/doctype/doctype.py:1867 msgid "{0}: The 'Amend' permission cannot be granted without the 'Create' permission." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1848 +#: frappe/core/doctype/doctype/doctype.py:1854 msgid "{0}: The 'Cancel' permission cannot be granted without the 'Submit' permission." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1895 +#: frappe/core/doctype/doctype/doctype.py:1901 msgid "{0}: The 'Export' permission was removed because it cannot be granted for a 'single' DocType." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1921 +#: frappe/core/doctype/doctype/doctype.py:1927 msgid "{0}: The 'Import' permission cannot be granted for a non-importable DocType." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1867 +#: frappe/core/doctype/doctype/doctype.py:1873 msgid "{0}: The 'Import' permission cannot be granted without the 'Create' permission." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1887 +#: frappe/core/doctype/doctype/doctype.py:1893 msgid "{0}: The 'Import' permission was removed because it cannot be granted for a 'single' DocType." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1879 +#: frappe/core/doctype/doctype/doctype.py:1885 msgid "{0}: The 'Report' permission was removed because it cannot be granted for a 'single' DocType." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1906 +#: frappe/core/doctype/doctype/doctype.py:1912 msgid "{0}: The 'Submit' permission cannot be granted for a non-submittable DocType." msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1855 +#: frappe/core/doctype/doctype/doctype.py:1861 msgid "{0}: The 'Submit', 'Cancel', and 'Amend' permissions cannot be granted without the 'Write' permission." msgstr "" @@ -32980,11 +33091,11 @@ msgstr "" msgid "{0}: You can increase the limit for the field if required via {1}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1300 +#: frappe/core/doctype/doctype/doctype.py:1306 msgid "{0}: fieldname cannot be set to reserved field {1} in DocType" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1291 +#: frappe/core/doctype/doctype/doctype.py:1297 msgid "{0}: fieldname cannot be set to reserved keyword {1}" msgstr "" @@ -32997,11 +33108,11 @@ msgstr "" msgid "{0}: {1} is set to state {2}" msgstr "" -#: frappe/public/js/frappe/views/reports/query_report.js:1326 +#: frappe/public/js/frappe/views/reports/query_report.js:1335 msgid "{0}: {1} vs {2}" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1466 +#: frappe/core/doctype/doctype/doctype.py:1472 msgid "{0}:Fieldtype {1} for {2} cannot be indexed" msgstr "" @@ -33025,7 +33136,7 @@ msgstr "" msgid "{count} rows selected" msgstr "" -#: frappe/core/doctype/doctype/doctype.py:1520 +#: frappe/core/doctype/doctype/doctype.py:1526 msgid "{{{0}}} is not a valid fieldname pattern. It should be {{field_name}}." msgstr "" diff --git a/frappe/locale/ru.po b/frappe/locale/ru.po index 2819aee324..2e94261616 100644 --- a/frappe/locale/ru.po +++ b/frappe/locale/ru.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: frappe\n" "Report-Msgid-Bugs-To: developers@frappe.io\n" "POT-Creation-Date: 2026-02-22 09:42+0000\n" -"PO-Revision-Date: 2026-02-23 22:07\n" +"PO-Revision-Date: 2026-02-28 23:51\n" "Last-Translator: developers@frappe.io\n" "Language-Team: Russian\n" "MIME-Version: 1.0\n" @@ -1361,7 +1361,7 @@ msgstr "Добавить параметры запроса" #. Label of the add_reply_to_header (Check) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Add Reply-To header" -msgstr "" +msgstr "Добавить заголовок \"Ответить\"" #: frappe/core/doctype/user/user.py:860 msgid "Add Roles" @@ -1428,7 +1428,7 @@ msgstr "Добавить видеоконференцию" #. Label of the add_x_original_from (Check) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Add X-Original-From header" -msgstr "" +msgstr "Добавить заголовок X-Original-From" #: frappe/public/js/frappe/ui/filters/filter_list.js:299 msgid "Add a Filter" @@ -1527,7 +1527,7 @@ msgstr "Добавить в дашборд" #: frappe/desk/doctype/workspace/workspace.js:49 msgid "Add to Desktop" -msgstr "" +msgstr "Добавить на Рабочий стол" #: frappe/public/js/frappe/form/sidebar/assign_to.js:110 msgid "Add to ToDo" @@ -1650,7 +1650,7 @@ msgstr "Адрес и контакты" #. Account' #: frappe/email/doctype/email_account/email_account.json msgid "Addresses added here will be used as the Reply-To header for outgoing emails sent from this account." -msgstr "" +msgstr "Указанные здесь адреса будут использоваться в качестве заголовка Reply-To для исходящих писем, отправляемых с этого аккаунта." #. Description of a DocType #: frappe/custom/doctype/client_script/client_script.json @@ -1827,7 +1827,7 @@ msgstr "Выровнять значение" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Alignment" -msgstr "" +msgstr "Выравнивание" #. Name of a role #. Option for the 'Frequency' (Select) field in DocType 'Scheduled Job Type' @@ -2225,11 +2225,11 @@ msgstr "Позволяет отображать URL-адрес базы ключ #: frappe/core/page/permission_manager/permission_manager_help.html:52 msgid "Allows printing or PDF download of documents." -msgstr "" +msgstr "Позволяет распечатывать документы или загружать их в формате PDF." #: frappe/core/page/permission_manager/permission_manager_help.html:77 msgid "Allows sharing document access with other users." -msgstr "" +msgstr "Позволяет предоставлять доступ к документу другим пользователям." #. Description of the 'Skip Authorization' (Check) field in DocType 'OAuth #. Settings' @@ -2239,43 +2239,43 @@ msgstr "Позволяет пропустить авторизацию, если #: frappe/core/page/permission_manager/permission_manager_help.html:62 msgid "Allows the user to access reports related to the document." -msgstr "" +msgstr "Предоставляет пользователю доступ к отчетам, связанным с документом." #: frappe/core/page/permission_manager/permission_manager_help.html:42 msgid "Allows the user to create new documents." -msgstr "" +msgstr "Позволяет пользователю создавать новые документы." #: frappe/core/page/permission_manager/permission_manager_help.html:47 msgid "Allows the user to delete documents." -msgstr "" +msgstr "Позволяет пользователю удалять документы." #: frappe/core/page/permission_manager/permission_manager_help.html:37 msgid "Allows the user to edit existing records they have access to." -msgstr "" +msgstr "Позволяет пользователю редактировать существующие записи, к которым у него есть доступ." #: frappe/core/page/permission_manager/permission_manager_help.html:57 msgid "Allows the user to email from the document." -msgstr "" +msgstr "Позволяет пользователю отправлять электронные письма прямо из документа." #: frappe/core/page/permission_manager/permission_manager_help.html:67 msgid "Allows the user to export data from the Report view." -msgstr "" +msgstr "Позволяет пользователю экспортировать данные из представления отчета." #: frappe/core/page/permission_manager/permission_manager_help.html:27 msgid "Allows the user to search and see records." -msgstr "" +msgstr "Позволяет пользователю искать и просматривать записи." #: frappe/core/page/permission_manager/permission_manager_help.html:72 msgid "Allows the user to use Data Import tool to create / update records." -msgstr "" +msgstr "Позволяет пользователю использовать инструмент импорта данных для создания/обновления записей." #: frappe/core/page/permission_manager/permission_manager_help.html:32 msgid "Allows the user to view the document." -msgstr "" +msgstr "Позволяет пользователю просмотреть документ." #: frappe/core/page/permission_manager/permission_manager_help.html:82 msgid "Allows users to enable the mask property for any field of the respective doctype." -msgstr "" +msgstr "Позволяет пользователям включить свойство маски для любого поля соответствующего типа документа." #: frappe/core/doctype/user/user.py:1080 msgid "Already Registered" @@ -2588,7 +2588,7 @@ msgstr "Применить" #: frappe/custom/doctype/customize_form/customize_form.js:271 msgid "Apply Module Export Filter" -msgstr "" +msgstr "Применить фильтр экспорта модуля" #. Label of the apply_strict_user_permissions (Check) field in DocType 'System #. Settings' @@ -3067,7 +3067,7 @@ msgstr "Попытка запуска QZ Tray..." #: frappe/desk/doctype/event/event.json #: frappe/desk/doctype/event_participants/event_participants.json msgid "Attending" -msgstr "" +msgstr "Посещение" #: frappe/www/attribution.html:9 msgid "Attribution" @@ -3086,7 +3086,7 @@ msgstr "История изменений / проверок" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/users.json msgid "Audits" -msgstr "" +msgstr "Аудиты" #. Label of the auth_url_data (Code) field in DocType 'Social Login Key' #: frappe/integrations/doctype/social_login_key/social_login_key.json @@ -3418,42 +3418,42 @@ msgstr "B" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "B0" -msgstr "" +msgstr "B0" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "B1" -msgstr "" +msgstr "B1" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "B10" -msgstr "" +msgstr "B10" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "B2" -msgstr "" +msgstr "B2" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "B3" -msgstr "" +msgstr "B3" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "B4" -msgstr "" +msgstr "B4" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "B5" -msgstr "" +msgstr "B5" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "B6" -msgstr "" +msgstr "B6" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json @@ -3520,7 +3520,7 @@ msgstr "Фоновое изображение" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/system.json msgid "Background Job" -msgstr "" +msgstr "Фоновые задания" #. Label of a Link in the Build Workspace #. Label of the background_jobs_section (Section Break) field in DocType @@ -4355,7 +4355,7 @@ msgstr "Невозможно создать личное рабочее прос #: frappe/desk/doctype/desktop_icon/desktop_icon.py:55 msgid "Cannot delete Desktop Icon '{0}' as it is restricted" -msgstr "" +msgstr "Невозможно удалить значок рабочего стола '{0}', так как он заблокирован" #: frappe/core/doctype/file/file.py:176 msgid "Cannot delete Home and Attachments folders" @@ -4723,7 +4723,7 @@ msgstr "Для получения дополнительной информац #. 'Workflow Document State' #: frappe/workflow/doctype/workflow_document_state/workflow_document_state.json msgid "Check this if the Update Value is a formula or expression (e.g. doc.amount * 2). Leave unchecked for plain text values." -msgstr "" +msgstr "Установите этот флажок, если обновляемое значение представляет собой формулу или выражение (например, doc.amount * 2). Оставьте флажок снятым для значений в виде обычного текста." #: frappe/website/doctype/website_settings/website_settings.js:147 msgid "Check this if you don't want users to sign up for an account on your site. Users won't get desk access unless you explicitly provide it." @@ -4938,7 +4938,7 @@ msgstr "Нажмите, чтобы установить фильтры" #: frappe/desk/page/desktop/desktop.js:1261 msgid "Click to edit" -msgstr "" +msgstr "Нажмите, чтобы редактировать" #: frappe/public/js/frappe/list/list_view.js:754 msgid "Click to sort by {0}" @@ -6519,7 +6519,7 @@ msgstr "Настроить поле формы" #: frappe/public/js/frappe/list/list_view.js:1994 msgctxt "Customize qucik filters of List View" msgid "Customize Quick Filters" -msgstr "" +msgstr "Настройка быстрых фильтров" #. Description of a Card Break in the Build Workspace #: frappe/core/workspace/build/build.json @@ -6541,7 +6541,7 @@ msgstr "Бирюзовый" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "DELAY" -msgstr "" +msgstr "ЗАДЕРЖКА" #. Option for the 'Method' (Select) field in DocType 'Recorder' #. Option for the 'Request Method' (Select) field in DocType 'Webhook' @@ -7230,7 +7230,7 @@ msgstr "Удалить все" #: frappe/public/js/frappe/form/grid.js:385 msgid "Delete all {0} rows" -msgstr "" +msgstr "Удалить все {0} строки" #: frappe/public/js/frappe/views/reports/query_report.js:960 msgid "Delete and Generate New" @@ -7290,7 +7290,7 @@ msgstr "Удалить {0} элементов навсегда?" #: frappe/public/js/frappe/form/grid.js:258 msgid "Delete {0} rows" -msgstr "" +msgstr "Удалить {0} строки" #. Option for the 'Comment Type' (Select) field in DocType 'Comment' #. Option for the 'Status' (Select) field in DocType 'Personal Data Deletion @@ -7369,7 +7369,7 @@ msgstr "Статус доставки" #. Label of the dsn_notify_type (Select) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Delivery Status Notification Type" -msgstr "" +msgstr "Тип уведомления о статусе доставки" #. Option for the 'Sign ups' (Select) field in DocType 'Social Login Key' #: frappe/integrations/doctype/social_login_key/social_login_key.json @@ -7588,7 +7588,7 @@ msgstr "Цифры" #: frappe/utils/data.py:1563 msgctxt "Currency" msgid "Dinars" -msgstr "" +msgstr "Динары" #. Label of the ldap_directory_server (Select) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json @@ -8601,11 +8601,11 @@ msgstr "Дублировать строку" #: frappe/public/js/frappe/form/grid.js:66 msgid "Duplicate rows" -msgstr "" +msgstr "Дублировать строки" #: frappe/public/js/frappe/form/grid.js:259 msgid "Duplicate {0} rows" -msgstr "" +msgstr "Дублировать {0} строки" #. Option for the 'Type' (Select) field in DocType 'DocField' #. Label of the duration (Float) field in DocType 'Recorder' @@ -9434,7 +9434,7 @@ msgstr "Включить Планировщик" #. Label of the enabled (Check) field in DocType 'Notification Settings' #: frappe/desk/doctype/notification_settings/notification_settings.json msgid "Enabled System Notification" -msgstr "" +msgstr "Системное уведомление включено" #: frappe/email/doctype/email_account/email_account.py:1101 msgid "Enabled email inbox for user {0}" @@ -9583,7 +9583,7 @@ msgstr "Введите имя папки" #: frappe/public/js/form_builder/components/FieldProperties.vue:65 msgid "Enter list of Options, each on a new line." -msgstr "" +msgstr "Введите список параметров, каждый на новой строке." #. Description of the 'Static Parameters' (Table) field in DocType 'SMS #. Settings' @@ -9755,7 +9755,7 @@ msgstr "Ошибки" #. Document State' #: frappe/workflow/doctype/workflow_document_state/workflow_document_state.json msgid "Evaluate as Expression" -msgstr "" +msgstr "Вычислить как выражение" #. Option for the 'Type' (Select) field in DocType 'Communication' #. Name of a DocType @@ -9778,7 +9778,7 @@ msgstr "Частота событий" #. Name of a DocType #: frappe/desk/doctype/event_notifications/event_notifications.json msgid "Event Notifications" -msgstr "" +msgstr "Уведомления о событиях" #. Label of the event_participants (Table) field in DocType 'Event' #. Name of a DocType @@ -10064,7 +10064,7 @@ msgstr "Экспорт не разрешён. Для экспорта требу #: frappe/custom/doctype/customize_form/customize_form.js:272 msgid "Export only customizations assigned to the selected module.
Note: You must set the Module (for export) field on Custom Field and Property Setter records before applying this filter.

Warning: Customizations from other modules will be excluded.

" -msgstr "" +msgstr "Экспортируйте только настройки, назначенные выбранному модулю.
Примечание: Перед применением этого фильтра необходимо установить поле Модуль (для экспорта) в записях пользовательских полей и настроек свойств.

Предупреждение: Настройки из других модулей будут исключены.

" #. Description of the 'Export without main header' (Check) field in DocType #. 'Data Export' @@ -10132,7 +10132,7 @@ msgstr "Дополнительные параметры" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "FAILURE" -msgstr "" +msgstr "ОШИБКА" #. Option for the 'Social Login Provider' (Select) field in DocType 'Social #. Login Key' @@ -10276,7 +10276,7 @@ msgstr "Не удалось запросить вход в Frappe Cloud" #: frappe/email/doctype/email_account/email_account.py:232 msgid "Failed to retrieve the list of IMAP folders from the server. Please ensure the mailbox is accessible and the account has permission to list folders." -msgstr "" +msgstr "Не удалось получить список папок IMAP с сервера. Убедитесь, что почтовый ящик доступен и у учетной записи есть разрешение на просмотр содержимого папок." #: frappe/email/doctype/email_queue/email_queue.py:311 msgid "Failed to send email with subject:" @@ -10712,7 +10712,7 @@ msgstr "Фильтр" #. Label of the filter_area (HTML) field in DocType 'Workspace Sidebar Item' #: frappe/desk/doctype/workspace_sidebar_item/workspace_sidebar_item.json msgid "Filter Area" -msgstr "" +msgstr "Блок фильтров" #. Label of the filter_data (Section Break) field in DocType 'Auto Email #. Report' @@ -10770,7 +10770,7 @@ msgstr "Фильтрация по \"{0}\"" #: frappe/public/js/frappe/form/controls/link.js:734 msgid "Filtered by: {0}." -msgstr "" +msgstr "Фильтрация по: {0}." #. Label of the filters (Code) field in DocType 'Access Log' #. Label of the filters_sb (Section Break) field in DocType 'Prepared Report' @@ -11333,17 +11333,17 @@ msgstr "Переслать на адрес электронной почты" #. Label of the fraction (Data) field in DocType 'Currency' #: frappe/geo/doctype/currency/currency.json msgid "Fraction" -msgstr "" +msgstr "Фракция" #. Label of the fraction_units (Int) field in DocType 'Currency' #: frappe/geo/doctype/currency/currency.json msgid "Fraction Units" -msgstr "" +msgstr "Дробные единицы" #. Label of a Desktop Icon #: frappe/desktop_icon/framework.json msgid "Framework" -msgstr "" +msgstr "Framework" #. Option for the 'Social Login Provider' (Select) field in DocType 'Social #. Login Key' @@ -11453,7 +11453,7 @@ msgstr "С даты" #. Label of the from_date_field (Select) field in DocType 'Auto Email Report' #: frappe/email/doctype/auto_email_report/auto_email_report.json msgid "From Date Field" -msgstr "" +msgstr "Поле от даты" #: frappe/public/js/frappe/views/reports/query_report.js:1976 msgid "From Document Type" @@ -11467,7 +11467,7 @@ msgstr "Из поля" #. Label of the sender_full_name (Data) field in DocType 'Communication' #: frappe/core/doctype/communication/communication.json msgid "From Full Name" -msgstr "" +msgstr "От полного имени" #. Label of the from_user (Link) field in DocType 'Notification Log' #: frappe/desk/doctype/notification_log/notification_log.json @@ -11481,7 +11481,7 @@ msgstr "Из версии" #. Option for the 'Width' (Select) field in DocType 'Dashboard Chart Link' #: frappe/desk/doctype/dashboard_chart_link/dashboard_chart_link.json msgid "Full" -msgstr "" +msgstr "Полный" #. Label of the full_name (Data) field in DocType 'Contact' #. Label of the full_name (Data) field in DocType 'Activity Log' @@ -11504,7 +11504,7 @@ msgstr "Полная страница" #. Label of the full_width (Check) field in DocType 'Web Page' #: frappe/website/doctype/web_page/web_page.json msgid "Full Width" -msgstr "" +msgstr "Полная ширина" #. Label of the function (Select) field in DocType 'Number Card' #. Label of the report_function (Select) field in DocType 'Number Card' @@ -11537,7 +11537,7 @@ msgstr "Fw: {0}" #. Option for the 'Method' (Select) field in DocType 'Recorder' #: frappe/core/doctype/recorder/recorder.json msgid "GET" -msgstr "" +msgstr "ПОЛУЧИТЬ" #. Option for the 'Service' (Select) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json @@ -11585,7 +11585,7 @@ msgstr "Общий" #. Label of the generate_keys (Button) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Generate Keys" -msgstr "" +msgstr "Генерировать ключи" #: frappe/public/js/frappe/views/reports/query_report.js:898 msgid "Generate New Report" @@ -11618,7 +11618,7 @@ msgstr "Geoapify" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Geolocation" -msgstr "" +msgstr "Геолокация" #. Name of a DocType #: frappe/integrations/doctype/geolocation_settings/geolocation_settings.json @@ -11636,7 +11636,7 @@ msgstr "Получить резервный ключ шифрования" #. Label of the get_contacts (Button) field in DocType 'Auto Repeat' #: frappe/automation/doctype/auto_repeat/auto_repeat.json msgid "Get Contacts" -msgstr "" +msgstr "Получить контакты" #: frappe/website/doctype/web_form/web_form.js:93 msgid "Get Fields" @@ -11662,23 +11662,23 @@ msgstr "Получить PDF" #. Naming Settings' #: frappe/core/doctype/document_naming_settings/document_naming_settings.json msgid "Get a preview of generated names with a series." -msgstr "" +msgstr "Получите предварительный просмотр сгенерированных имен с помощью серии." #. Description of the 'Email Threads on Assigned Document' (Check) field in #. DocType 'Notification Settings' #: frappe/desk/doctype/notification_settings/notification_settings.json msgid "Get notified when an email is received on any of the documents assigned to you." -msgstr "" +msgstr "Получайте уведомления о получении электронного письма по любому из назначенных вам документов." #. Description of the 'User Image' (Attach Image) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Get your globally recognized avatar from Gravatar.com" -msgstr "" +msgstr "Получите свой всемирно признанный аватар от Gravatar.com" #. Label of the git_branch (Data) field in DocType 'Installed Application' #: frappe/core/doctype/installed_application/installed_application.json msgid "Git Branch" -msgstr "" +msgstr "Ветвь Git" #. Option for the 'Social Login Provider' (Select) field in DocType 'Social #. Login Key' @@ -11711,7 +11711,7 @@ msgstr "Глобальные сочетания клавиш" #. Label of the global_unsubscribe (Check) field in DocType 'Email Unsubscribe' #: frappe/email/doctype/email_unsubscribe/email_unsubscribe.json msgid "Global Unsubscribe" -msgstr "" +msgstr "Глобальная отписка" #: frappe/public/js/frappe/form/toolbar.js:880 msgid "Go" @@ -11729,7 +11729,7 @@ msgstr "Перейти к списку настроек уведомлений" #. Option for the 'Action' (Select) field in DocType 'Onboarding Step' #: frappe/desk/doctype/onboarding_step/onboarding_step.json msgid "Go to Page" -msgstr "" +msgstr "Перейти на страницу" #: frappe/public/js/workflow_builder/workflow_builder.bundle.js:41 msgid "Go to Workflow" @@ -11754,7 +11754,7 @@ msgstr "Перейти к документу" #. Description of the 'Success URL' (Data) field in DocType 'Web Form' #: frappe/website/doctype/web_form/web_form.json msgid "Go to this URL after completing the form" -msgstr "" +msgstr "Перейдите на этот URL после заполнения формы" #: frappe/core/doctype/doctype/doctype.js:54 #: frappe/custom/doctype/client_script/client_script.js:12 @@ -11788,13 +11788,13 @@ msgstr "Google" #. Label of the google_analytics_id (Data) field in DocType 'Website Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Google Analytics ID" -msgstr "" +msgstr "Идентификатор Google Analytics" #. Label of the google_analytics_anonymize_ip (Check) field in DocType 'Website #. Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Google Analytics anonymise IP" -msgstr "" +msgstr "Google Analytics анонимизирует IP-адрес" #. Label of the sb_00 (Section Break) field in DocType 'Event' #. Label of the google_calendar (Link) field in DocType 'Event' @@ -11840,14 +11840,14 @@ msgstr "Google Calendar - Не удалось обновить событие {0 #. Label of the google_calendar_event_id (Data) field in DocType 'Event' #: frappe/desk/doctype/event/event.json msgid "Google Calendar Event ID" -msgstr "" +msgstr "Идентификатор события в календаре Google" #. Label of the google_calendar_id (Data) field in DocType 'Event' #. Label of the google_calendar_id (Data) field in DocType 'Google Calendar' #: frappe/desk/doctype/event/event.json #: frappe/integrations/doctype/google_calendar/google_calendar.json msgid "Google Calendar ID" -msgstr "" +msgstr "Идентификатор календаря Google" #: frappe/integrations/doctype/google_calendar/google_calendar.py:181 msgid "Google Calendar has been configured." @@ -11877,7 +11877,7 @@ msgstr "Google Контакты - Не удалось обновить конт #. Label of the google_contacts_id (Data) field in DocType 'Contact' #: frappe/contacts/doctype/contact/contact.json msgid "Google Contacts Id" -msgstr "" +msgstr "Идентификатор контактов Google" #: frappe/public/js/frappe/file_uploader/FileUploader.vue:164 msgid "Google Drive" @@ -11893,7 +11893,7 @@ msgstr "Выбор Google Диска" #. Settings' #: frappe/integrations/doctype/google_settings/google_settings.json msgid "Google Drive Picker Enabled" -msgstr "" +msgstr "Включена функция выбора диска Google" #. Label of the font (Data) field in DocType 'Print Format' #. Label of the google_font (Data) field in DocType 'Website Theme' @@ -11901,12 +11901,12 @@ msgstr "" #: frappe/public/js/print_format_builder/PrintFormatControls.vue:28 #: frappe/website/doctype/website_theme/website_theme.json msgid "Google Font" -msgstr "" +msgstr "Шрифт Google" #. Label of the google_meet_link (Small Text) field in DocType 'Event' #: frappe/desk/doctype/event/event.json msgid "Google Meet Link" -msgstr "" +msgstr "Ссылка на Google Meet" #. Label of a Card Break in the Integrations Workspace #: frappe/integrations/workspace/integrations/integrations.json @@ -11934,7 +11934,7 @@ msgstr "URL-адрес Google Таблиц должен заканчиватьс #. Label of the grant_type (Select) field in DocType 'OAuth Client' #: frappe/integrations/doctype/oauth_client/oauth_client.json msgid "Grant Type" -msgstr "" +msgstr "Тип гранта" #: frappe/public/js/frappe/form/dashboard.js:34 #: frappe/public/js/frappe/form/templates/form_dashboard.html:10 @@ -11996,12 +11996,12 @@ msgstr "Группа по" #. Label of the group_by_based_on (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json msgid "Group By Based On" -msgstr "" +msgstr "Группировка по признаку" #. Label of the group_by_type (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json msgid "Group By Type" -msgstr "" +msgstr "Группы по типу" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.py:411 msgid "Group By field is required to create a dashboard chart" @@ -12014,7 +12014,7 @@ msgstr "Группа должна быть строкой" #. Label of the ldap_group_objectclass (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "Group Object Class" -msgstr "" +msgstr "Класс группового объекта" #. Description of a Card Break in the Build Workspace #: frappe/core/workspace/build/build.json @@ -12028,7 +12028,7 @@ msgstr "Сгруппировано по {0}" #. Option for the 'Method' (Select) field in DocType 'Recorder' #: frappe/core/doctype/recorder/recorder.json msgid "HEAD" -msgstr "" +msgstr "ГЛАВНАЯ" #. Option for the 'Provider' (Select) field in DocType 'Geolocation Settings' #: frappe/integrations/doctype/geolocation_settings/geolocation_settings.json @@ -12040,14 +12040,14 @@ msgstr "ЗДЕСЬ" #: frappe/core/doctype/language/language.json #: frappe/core/doctype/system_settings/system_settings.json msgid "HH:mm" -msgstr "" +msgstr "ЧЧ:мм" #. Option for the 'Time Format' (Select) field in DocType 'Language' #. Option for the 'Time Format' (Select) field in DocType 'System Settings' #: frappe/core/doctype/language/language.json #: frappe/core/doctype/system_settings/system_settings.json msgid "HH:mm:ss" -msgstr "" +msgstr "ЧЧ:мм:сс" #. Option for the 'Type' (Select) field in DocType 'DocField' #. Option for the 'Field Type' (Select) field in DocType 'Custom Field' @@ -12085,21 +12085,21 @@ msgstr "HTML" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "HTML Editor" -msgstr "" +msgstr "HTML-редактор" #: frappe/public/js/frappe/views/communication.js:142 msgid "HTML Message" -msgstr "" +msgstr "Сообщение HTML" #. Label of the page (HTML Editor) field in DocType 'Access Log' #: frappe/core/doctype/access_log/access_log.json msgid "HTML Page" -msgstr "" +msgstr "Страница HTML" #. Description of the 'Header' (HTML Editor) field in DocType 'Web Page' #: frappe/website/doctype/web_page/web_page.json msgid "HTML for header section. Optional" -msgstr "" +msgstr "HTML для раздела заголовка. Дополнительно" #: frappe/website/doctype/web_page/web_page.js:92 msgid "HTML with jinja support" @@ -12108,7 +12108,7 @@ msgstr "HTML с поддержкой jinja" #. Option for the 'Width' (Select) field in DocType 'Dashboard Chart Link' #: frappe/desk/doctype/dashboard_chart_link/dashboard_chart_link.json msgid "Half" -msgstr "" +msgstr "Половина" #. Option for the 'Repeat On' (Select) field in DocType 'Event' #. Option for the 'Period' (Select) field in DocType 'Auto Email Report' @@ -12131,7 +12131,7 @@ msgstr "Обработанные электронные письма" #. Label of the has_attachment (Check) field in DocType 'Communication' #: frappe/core/doctype/communication/communication.json msgid "Has Attachment" -msgstr "" +msgstr "Имеет привязанность" #. Name of a DocType #: frappe/core/doctype/has_domain/has_domain.json @@ -12141,7 +12141,7 @@ msgstr "Имеет домен" #. Label of the has_next_condition (Check) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Has Next Condition" -msgstr "" +msgstr "Имеет следующее состояние" #. Name of a DocType #: frappe/core/doctype/has_role/has_role.json @@ -12157,7 +12157,7 @@ msgstr "Имеет мастер настройки" #. Label of the has_web_view (Check) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json msgid "Has Web View" -msgstr "" +msgstr "Имеет веб-просмотр" #: frappe/templates/signup.html:19 msgid "Have an account? Login" @@ -12172,12 +12172,12 @@ msgstr "Есть аккаунт? Войти" #: frappe/website/doctype/web_page/web_page.json #: frappe/website/doctype/website_slideshow/website_slideshow.json msgid "Header" -msgstr "" +msgstr "Заголовок" #. Label of the content (HTML Editor) field in DocType 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json msgid "Header HTML" -msgstr "" +msgstr "Заголовок HTML" #: frappe/printing/doctype/letter_head/letter_head.py:76 msgid "Header HTML set from attachment {0}" @@ -12191,18 +12191,18 @@ msgstr "Значок заголовка" #. Label of the header_script (Code) field in DocType 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json msgid "Header Script" -msgstr "" +msgstr "Скрипт заголовка" #. Label of the sb2 (Section Break) field in DocType 'Web Page' #: frappe/website/doctype/web_page/web_page.json msgid "Header and Breadcrumbs" -msgstr "" +msgstr "Заголовок и хлебные крошки" #. Label of the section_break_38 (Tab Break) field in DocType 'Website #. Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Header, Robots" -msgstr "" +msgstr "Заголовок, Роботы" #: frappe/printing/doctype/letter_head/letter_head.js:30 msgid "Header/Footer scripts can be used to add dynamic behaviours." @@ -12216,7 +12216,7 @@ msgstr "Скрипты верхнего и нижнего колонтитула #: frappe/integrations/doctype/webhook/webhook.json #: frappe/integrations/doctype/webhook_request_log/webhook_request_log.json msgid "Headers" -msgstr "" +msgstr "Заголовки" #: frappe/email/email_body.py:343 msgid "Headers must be a dictionary" @@ -12239,12 +12239,12 @@ msgstr "Заголовок" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/system.json msgid "Health Report" -msgstr "" +msgstr "Отчет о здоровье" #. Option for the 'Type' (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json msgid "Heatmap" -msgstr "" +msgstr "Тепловая карта" #: frappe/templates/emails/new_user.html:2 msgid "Hello" @@ -12293,7 +12293,7 @@ msgstr "Выпадающая подсказка" #. Label of the help_html (HTML) field in DocType 'Document Naming Settings' #: frappe/core/doctype/document_naming_settings/document_naming_settings.json msgid "Help HTML" -msgstr "" +msgstr "Помощь HTML" #. Description of the 'Content' (Text Editor) field in DocType 'Note' #: frappe/desk/doctype/note/note.json @@ -12303,7 +12303,7 @@ msgstr "Помощь: Для ссылки на другую запись в си #. Label of the helpful (Int) field in DocType 'Help Article' #: frappe/website/doctype/help_article/help_article.json msgid "Helpful" -msgstr "" +msgstr "Полезное" #. Option for the 'Font' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json @@ -12349,11 +12349,11 @@ msgstr "Скрытый" #. Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Hidden Fields" -msgstr "" +msgstr "Скрытые поля" #: frappe/public/js/frappe/views/reports/query_report.js:1763 msgid "Hidden columns include:
{0}" -msgstr "" +msgstr "Скрытые столбцы включают:
{0}" #. Option for the 'Page Number' (Select) field in DocType 'Print Format' #: frappe/printing/doctype/print_format/print_format.json @@ -12368,7 +12368,7 @@ msgstr "Скрыть" #. Label of the hide_block (Check) field in DocType 'Web Page Block' #: frappe/website/doctype/web_page_block/web_page_block.json msgid "Hide Block" -msgstr "" +msgstr "Скрыть блок" #. Label of the hide_border (Check) field in DocType 'DocField' #. Label of the hide_border (Check) field in DocType 'Custom Field' @@ -12377,24 +12377,24 @@ msgstr "" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Hide Border" -msgstr "" +msgstr "Скрыть границу" #. Label of the hide_buttons (Check) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Hide Buttons" -msgstr "" +msgstr "Скрыть кнопки" #. Label of the allow_copy (Check) field in DocType 'DocType' #. Label of the allow_copy (Check) field in DocType 'Customize Form' #: frappe/core/doctype/doctype/doctype.json #: frappe/custom/doctype/customize_form/customize_form.json msgid "Hide Copy" -msgstr "" +msgstr "Скрыть копию" #. Label of the hide_custom (Check) field in DocType 'Workspace' #: frappe/desk/doctype/workspace/workspace.json msgid "Hide Custom DocTypes and Reports" -msgstr "" +msgstr "Скрытие пользовательских типов документов и отчетов" #. Label of the hide_days (Check) field in DocType 'DocField' #. Label of the hide_days (Check) field in DocType 'Custom Field' @@ -12403,7 +12403,7 @@ msgstr "" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Hide Days" -msgstr "" +msgstr "Скрыть дни" #. Label of the hide_descendants (Check) field in DocType 'User Permission' #: frappe/core/doctype/user_permission/user_permission.json @@ -12428,7 +12428,7 @@ msgstr "Скрыть метку" #. Label of the hide_login (Check) field in DocType 'Website Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Hide Login" -msgstr "" +msgstr "Скрыть вход" #: frappe/public/js/form_builder/form_builder.bundle.js:43 #: frappe/public/js/print_format_builder/print_format_builder.bundle.js:54 @@ -12438,7 +12438,7 @@ msgstr "Скрыть просмотр" #. Description of the 'Hide Buttons' (Check) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Hide Previous, Next and Close button on highlight dialog." -msgstr "" +msgstr "Скрыть кнопки \"Предыдущая\", \"Следующая\" и \"Закрыть\" в диалоге выделения." #. Label of the hide_seconds (Check) field in DocType 'DocField' #. Label of the hide_seconds (Check) field in DocType 'Custom Field' @@ -12447,17 +12447,17 @@ msgstr "" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Hide Seconds" -msgstr "" +msgstr "Скрыть секунды" #. Label of the hide_toolbar (Check) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json msgid "Hide Sidebar, Menu, and Comments" -msgstr "" +msgstr "Скрыть боковую панель, меню и комментарии" #. Label of the hide_standard_menu (Check) field in DocType 'Portal Settings' #: frappe/website/doctype/portal_settings/portal_settings.json msgid "Hide Standard Menu" -msgstr "" +msgstr "Скрыть стандартное меню" #: frappe/public/js/frappe/views/calendar/calendar.js:180 msgid "Hide Weekends" @@ -12467,7 +12467,7 @@ msgstr "Скрыть выходные" #. Permission' #: frappe/core/doctype/user_permission/user_permission.json msgid "Hide descendant records of For Value." -msgstr "" +msgstr "Скрыть записи о потомках For Value." #: frappe/public/js/frappe/form/layout.js:296 msgid "Hide details" @@ -12482,12 +12482,12 @@ msgstr "Скрыть нижнюю часть страницы" #. 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Hide footer in auto email reports" -msgstr "" +msgstr "Скрытие нижнего колонтитула в автоматических отчетах по электронной почте" #. Label of the hide_footer_signup (Check) field in DocType 'Website Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Hide footer signup" -msgstr "" +msgstr "Скрыть нижний колонтитул регистрации" #. Label of the hide_navbar (Check) field in DocType 'Web Form' #: frappe/website/doctype/web_form/web_form.json @@ -12503,12 +12503,12 @@ msgstr "Высокий" #. Description of the 'Priority' (Int) field in DocType 'Assignment Rule' #: frappe/automation/doctype/assignment_rule/assignment_rule.json msgid "Higher priority rule will be applied first" -msgstr "" +msgstr "Правило с более высоким приоритетом будет применено первым" #. Label of the highlight (Text) field in DocType 'Company History' #: frappe/website/doctype/company_history/company_history.json msgid "Highlight" -msgstr "" +msgstr "Выделите" #: frappe/www/update-password.html:301 msgid "Hint: Include symbols, numbers and capital letters in the password" @@ -12534,12 +12534,12 @@ msgstr "Главная" #: frappe/core/doctype/role/role.json #: frappe/website/doctype/website_settings/website_settings.json msgid "Home Page" -msgstr "" +msgstr "Главная страница" #. Label of the home_settings (Code) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Home Settings" -msgstr "" +msgstr "Главные настройки" #: frappe/core/doctype/file/test_file.py:321 #: frappe/core/doctype/file/test_file.py:323 @@ -12562,14 +12562,14 @@ msgstr "Главная/Тестовая папка 2" #: frappe/core/doctype/server_script/server_script.json #: frappe/core/doctype/user/user.json msgid "Hourly" -msgstr "" +msgstr "Почасовая оплата" #. Option for the 'Frequency' (Select) field in DocType 'Scheduled Job Type' #. Option for the 'Event Frequency' (Select) field in DocType 'Server Script' #: frappe/core/doctype/scheduled_job_type/scheduled_job_type.json #: frappe/core/doctype/server_script/server_script.json msgid "Hourly Long" -msgstr "" +msgstr "Почасовая длительная" #. Option for the 'Frequency' (Select) field in DocType 'Scheduled Job Type' #: frappe/core/doctype/scheduled_job_type/scheduled_job_type.json @@ -12580,7 +12580,7 @@ msgstr "Почасовое обслуживание" #. DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Hourly rate limit for generating password reset links" -msgstr "" +msgstr "Ограничение по часовой ставке для генерации ссылок для сброса пароля" #: frappe/public/js/frappe/form/controls/duration.js:29 msgctxt "Duration" @@ -12590,7 +12590,7 @@ msgstr "Часов" #. Description of the 'Number Format' (Select) field in DocType 'Currency' #: frappe/geo/doctype/currency/currency.json msgid "How should this currency be formatted? If not set, will use system defaults" -msgstr "" +msgstr "Как должна быть отформатирована эта валюта? Если не задано, будут использоваться системные настройки по умолчанию" #. Description of the 'Resource Name' (Data) field in DocType 'OAuth Settings' #: frappe/integrations/doctype/oauth_settings/oauth_settings.json @@ -12633,18 +12633,18 @@ msgstr "ID (имя)" #. Description of the 'Field Name' (Data) field in DocType 'Property Setter' #: frappe/custom/doctype/property_setter/property_setter.json msgid "ID (name) of the entity whose property is to be set" -msgstr "" +msgstr "ID (имя) сущности, свойство которой должно быть установлено" #. Description of the 'Section ID' (Data) field in DocType 'Web Page Block' #: frappe/website/doctype/web_page_block/web_page_block.json msgid "IDs must contain only alphanumeric characters, not contain spaces, and should be unique." -msgstr "" +msgstr "Идентификаторы должны содержать только буквенно-цифровые символы, не содержать пробелов и быть уникальными." #. Label of the section_break_25 (Section Break) field in DocType 'Email #. Account' #: frappe/email/doctype/email_account/email_account.json msgid "IMAP Details" -msgstr "" +msgstr "Подробности IMAP" #. Label of the imap_folder (Data) field in DocType 'Communication' #. Label of the imap_folder (Table) field in DocType 'Email Account' @@ -12658,7 +12658,7 @@ msgstr "Папка IMAP" #: frappe/email/doctype/email_account/email_account.py:235 #: frappe/email/doctype/email_account/email_account.py:263 msgid "IMAP Folder Not Found" -msgstr "" +msgstr "Папка IMAP не найдена" #. Label of the ip_address (Data) field in DocType 'Activity Log' #. Label of the ip_address (Data) field in DocType 'Comment' @@ -12667,7 +12667,7 @@ msgstr "" #: frappe/core/doctype/comment/comment.json #: frappe/core/doctype/user_session_display/user_session_display.json msgid "IP Address" -msgstr "" +msgstr "IP-адрес" #. Option for the 'Type' (Select) field in DocType 'DocField' #. Label of the icon (Data) field in DocType 'DocType' @@ -12698,7 +12698,7 @@ msgstr "Icon" #. Label of the icon_image (Attach) field in DocType 'Desktop Icon' #: frappe/desk/doctype/desktop_icon/desktop_icon.json msgid "Icon Image" -msgstr "" +msgstr "Изображение значка" #. Label of the icon_style (Select) field in DocType 'Desktop Settings' #: frappe/desk/doctype/desktop_settings/desktop_settings.json @@ -12712,18 +12712,18 @@ msgstr "Тип иконки" #: frappe/desk/page/desktop/desktop.js:1074 msgid "Icon is not correctly configured please check the workspace sidebar to it" -msgstr "" +msgstr "Значок настроен неправильно, пожалуйста, проверьте боковую панель рабочей области" #. Description of the 'Icon' (Select) field in DocType 'Workflow State' #: frappe/workflow/doctype/workflow_state/workflow_state.json msgid "Icon will appear on the button" -msgstr "" +msgstr "На кнопке появится значок" #. Label of the sb_identity_details (Section Break) field in DocType 'Social #. Login Key' #: frappe/integrations/doctype/social_login_key/social_login_key.json msgid "Identity Details" -msgstr "" +msgstr "Подробности о личности" #. Label of the idx (Int) field in DocType 'Desktop Icon' #: frappe/desk/doctype/desktop_icon/desktop_icon.json @@ -12743,7 +12743,7 @@ msgstr "Если установлен флажок Apply Strict User Permission #: frappe/workflow/doctype/workflow/workflow.json #: frappe/workflow/doctype/workflow_document_state/workflow_document_state.json msgid "If Checked workflow status will not override status in list view" -msgstr "" +msgstr "Если отмечено, статус рабочего процесса не будет переопределять статус в представлении списка" #: frappe/core/doctype/doctype/doctype.py:1815 #: frappe/core/report/user_doctype_permissions/user_doctype_permissions.py:45 @@ -12764,24 +12764,24 @@ msgstr "Если этот флажок установлен, перед выпо #. Description of the 'Is Active' (Check) field in DocType 'Workflow' #: frappe/workflow/doctype/workflow/workflow.json msgid "If checked, all other workflows become inactive." -msgstr "" +msgstr "Если флажок установлен, все остальные рабочие процессы становятся неактивными." #. Description of the 'Show Absolute Values' (Check) field in DocType 'Print #. Format' #: frappe/printing/doctype/print_format/print_format.json msgid "If checked, negative numeric values of Currency, Quantity or Count would be shown as positive" -msgstr "" +msgstr "Если установить флажок, отрицательные числовые значения Валюта, Количество или Счет будут отображаться как положительные" #. Description of the 'Skip Authorization' (Check) field in DocType 'OAuth #. Client' #: frappe/integrations/doctype/oauth_client/oauth_client.json msgid "If checked, users will not see the Confirm Access dialog." -msgstr "" +msgstr "Если флажок установлен, пользователи не будут видеть диалоговое окно подтверждения доступа." #. Description of the 'Disabled' (Check) field in DocType 'Role' #: frappe/core/doctype/role/role.json msgid "If disabled, this role will be removed from all users." -msgstr "" +msgstr "Если эта роль отключена, она будет удалена у всех пользователей." #. Description of the 'Bypass Restricted IP Address Check If Two Factor Auth #. Enabled' (Check) field in DocType 'User' @@ -12798,17 +12798,17 @@ msgstr "Если эта функция включена, все ответы в #. Enabled' (Check) field in DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "If enabled, all users can login from any IP Address using Two Factor Auth. This can also be set only for specific user(s) in User Page" -msgstr "" +msgstr "Если эта опция включена, все пользователи смогут входить в систему с любого IP-адреса, используя двухфакторную авторизацию. Это также может быть установлено только для определенного пользователя (пользователей) на странице пользователя" #. Description of the 'Track Changes' (Check) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json msgid "If enabled, changes to the document are tracked and shown in timeline" -msgstr "" +msgstr "Если включено, изменения в документе отслеживаются и отображаются на временной шкале" #. Description of the 'Track Views' (Check) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json msgid "If enabled, document views are tracked, this can happen multiple times" -msgstr "" +msgstr "Если включено, то отслеживаются просмотры документов, причем это может происходить несколько раз" #. Description of the 'Only allow System Managers to upload public files' #. (Check) field in DocType 'System Settings' @@ -12825,7 +12825,7 @@ msgstr "Если эта функция включена, документ пом #. 'Notification' #: frappe/email/doctype/notification/notification.json msgid "If enabled, the notification will show up in the notifications dropdown on the top right corner of the navigation bar." -msgstr "" +msgstr "Если уведомление включено, оно будет отображаться в выпадающем списке уведомлений в правом верхнем углу навигационной панели." #. Description of the 'Enable Password Policy' (Check) field in DocType 'System #. Settings' @@ -12843,53 +12843,53 @@ msgstr "Если эта опция включена, пользователям, #. 'Note' #: frappe/desk/doctype/note/note.json msgid "If enabled, users will be notified every time they login. If not enabled, users will only be notified once." -msgstr "" +msgstr "Если эта функция включена, пользователи будут получать уведомления при каждом входе в систему. Если не включено, пользователи будут получать уведомление только один раз." #. Description of the 'Default Workspace' (Link) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "If left empty, the default workspace will be the last visited workspace" -msgstr "" +msgstr "Если оставить пустым, то рабочей областью по умолчанию будет последняя посещенная рабочая область" #. Description of the 'Port' (Data) field in DocType 'Email Domain' #: frappe/email/doctype/email_domain/email_domain.json msgid "If non standard port (e.g. 587)" -msgstr "" +msgstr "Если порт нестандартный (например, 587)" #. Description of the 'Port' (Data) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "If non standard port (e.g. 587). If on Google Cloud, try port 2525." -msgstr "" +msgstr "Если порт нестандартный (например, 587). Если в Google Cloud, попробуйте использовать порт 2525." #. Description of the 'Port' (Data) field in DocType 'Email Account' #. Description of the 'Port' (Data) field in DocType 'Email Domain' #: frappe/email/doctype/email_account/email_account.json #: frappe/email/doctype/email_domain/email_domain.json msgid "If non-standard port (e.g. POP3: 995/110, IMAP: 993/143)" -msgstr "" +msgstr "Если порт нестандартный (например, POP3: 995/110, IMAP: 993/143)" #. Description of the 'Currency Precision' (Select) field in DocType 'System #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "If not set, the currency precision will depend on number format" -msgstr "" +msgstr "Если не задано, точность валюты будет зависеть от формата числа" #. Description of the 'Roles' (Table) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json msgid "If set, only user with these roles can access this chart. If not set, DocType or Report permissions will be used." -msgstr "" +msgstr "Если установлено, только пользователи с этими ролями могут получить доступ к этому графику. Если не задано, будут использоваться разрешения DocType или Report." #: frappe/core/page/permission_manager/permission_manager_help.html:83 msgid "If the user enables the mask property for the phone number field, the value will be displayed in a masked format (e.g., 811XXXXXXX)." -msgstr "" +msgstr "Если пользователь включит свойство маскирования для поля номера телефона, значение будет отображаться в замаскированном формате (например, 811XXXXXXX)." #: frappe/core/page/permission_manager/permission_manager_help.html:63 msgid "If the user has access to Employee and Report is enabled, they can view Employee-based reports." -msgstr "" +msgstr "Если у пользователя есть доступ к разделу «Сотрудники» и включена функция «Отчеты», он может просматривать отчеты по каждому сотруднику отдельно." #. Description of the 'User Type' (Link) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "If the user has any role checked, then the user becomes a \"System User\". \"System User\" has access to the desktop" -msgstr "" +msgstr "Если у пользователя отмечена любая роль, то он становится \"Системным пользователем\". \"Системный пользователь\" имеет доступ к рабочему столу" #: frappe/core/page/permission_manager/permission_manager_help.html:105 msgid "If these instructions where not helpful, please add in your suggestions on GitHub Issues." @@ -12909,14 +12909,14 @@ msgstr "Если это была ошибка или вам снова нуже #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "If unchecked, the value will always be re-fetched on save." -msgstr "" +msgstr "Если флажок снят, значение всегда будет повторно устанавливаться при сохранении." #. Label of the if_owner (Check) field in DocType 'Custom DocPerm' #. Label of the if_owner (Check) field in DocType 'DocPerm' #: frappe/core/doctype/custom_docperm/custom_docperm.json #: frappe/core/doctype/docperm/docperm.json msgid "If user is the owner" -msgstr "" +msgstr "Если пользователь является владельцем" #: frappe/core/doctype/data_export/exporter.py:205 msgid "If you are updating, please select \"Overwrite\" else existing rows will not be deleted." @@ -12941,7 +12941,7 @@ msgstr "Если вы недавно восстановили сайт, вам #. Description of the 'Parent Label' (Select) field in DocType 'Top Bar Item' #: frappe/website/doctype/top_bar_item/top_bar_item.json msgid "If you set this, this Item will come in a drop-down under the selected parent." -msgstr "" +msgstr "Если вы это настроите, данный элемент появится в выпадающем списке под выбранным родительским элементом." #: frappe/templates/emails/administrator_logged_in.html:3 msgid "If you think this is unauthorized, please change the Administrator password." @@ -12955,7 +12955,7 @@ msgstr "Если в вашем CSV-файле используется друг #. Description of the 'Source Text' (Code) field in DocType 'Translation' #: frappe/core/doctype/translation/translation.json msgid "If your data is in HTML, please copy paste the exact HTML code with the tags." -msgstr "" +msgstr "Если ваши данные представлены в формате HTML, скопируйте точный HTML-код с тегами." #. Label of the ignore_user_permissions (Check) field in DocType 'DocField' #. Label of the ignore_user_permissions (Check) field in DocType 'Custom Field' @@ -12975,7 +12975,7 @@ msgstr "Игнорировать разрешения пользователя" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Ignore XSS Filter" -msgstr "" +msgstr "Фильтр игнорирования XSS" #. Description of the 'Attachment Limit (MB)' (Int) field in DocType 'Email #. Account' @@ -12984,12 +12984,12 @@ msgstr "" #: frappe/email/doctype/email_account/email_account.json #: frappe/email/doctype/email_domain/email_domain.json msgid "Ignore attachments over this size" -msgstr "" +msgstr "Игнорируйте вложения, превышающие этот размер" #. Label of the ignored_apps (Table) field in DocType 'Website Theme' #: frappe/website/doctype/website_theme/website_theme.json msgid "Ignored Apps" -msgstr "" +msgstr "Игнорируемые приложения" #: frappe/model/workflow.py:223 msgid "Illegal Document Status for {0}" @@ -13027,25 +13027,25 @@ msgstr "Некорректный шаблон" #: frappe/website/doctype/web_page/web_page.json #: frappe/website/doctype/website_slideshow_item/website_slideshow_item.json msgid "Image" -msgstr "" +msgstr "Изображение" #. Label of the image_field (Data) field in DocType 'DocType' #. Label of the image_field (Data) field in DocType 'Customize Form' #: frappe/core/doctype/doctype/doctype.json #: frappe/custom/doctype/customize_form/customize_form.json msgid "Image Field" -msgstr "" +msgstr "Поле изображения" #. Label of the image_height (Float) field in DocType 'Letter Head' #. Label of the footer_image_height (Float) field in DocType 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json msgid "Image Height" -msgstr "" +msgstr "Высота изображения" #. Label of the image_link (Attach) field in DocType 'About Us Team Member' #: frappe/website/doctype/about_us_team_member/about_us_team_member.json msgid "Image Link" -msgstr "" +msgstr "Ссылка на изображение" #: frappe/public/js/frappe/list/base_list.js:209 msgid "Image View" @@ -13055,7 +13055,7 @@ msgstr "Просмотр изображения" #. Label of the footer_image_width (Float) field in DocType 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json msgid "Image Width" -msgstr "" +msgstr "Ширина изображения" #: frappe/core/doctype/doctype/doctype.py:1538 msgid "Image field must be a valid fieldname" @@ -13106,7 +13106,7 @@ msgstr "Реализуйте метод `clear_old_logs` для включени #. Option for the 'Grant Type' (Select) field in DocType 'OAuth Client' #: frappe/integrations/doctype/oauth_client/oauth_client.json msgid "Implicit" -msgstr "" +msgstr "Имплицитный" #. Label of the import (Check) field in DocType 'Custom DocPerm' #. Label of the import (Check) field in DocType 'DocPerm' @@ -13130,13 +13130,13 @@ msgstr "Импорт электронной почты из" #. Label of the import_file (Attach) field in DocType 'Data Import' #: frappe/core/doctype/data_import/data_import.json msgid "Import File" -msgstr "" +msgstr "Импортный файл" #. Label of the import_warnings_section (Section Break) field in DocType 'Data #. Import' #: frappe/core/doctype/data_import/data_import.json msgid "Import File Errors and Warnings" -msgstr "" +msgstr "Ошибки и предупреждения при импорте файлов" #. Label of the import_log_section (Section Break) field in DocType 'Data #. Import' @@ -13147,12 +13147,12 @@ msgstr "Импорт журнала" #. Label of the import_log_preview (HTML) field in DocType 'Data Import' #: frappe/core/doctype/data_import/data_import.json msgid "Import Log Preview" -msgstr "" +msgstr "Предварительный просмотр журнала импорта" #. Label of the import_preview (HTML) field in DocType 'Data Import' #: frappe/core/doctype/data_import/data_import.json msgid "Import Preview" -msgstr "" +msgstr "Предварительный просмотр импорта" #: frappe/core/doctype/data_import/data_import.js:41 msgid "Import Progress" @@ -13166,12 +13166,12 @@ msgstr "Импорт подписчиков" #. Label of the import_type (Select) field in DocType 'Data Import' #: frappe/core/doctype/data_import/data_import.json msgid "Import Type" -msgstr "" +msgstr "Тип импорта" #. Label of the import_warnings (HTML) field in DocType 'Data Import' #: frappe/core/doctype/data_import/data_import.json msgid "Import Warnings" -msgstr "" +msgstr "Предупреждения об импорте" #: frappe/public/js/frappe/views/file/file_view.js:117 msgid "Import Zip" @@ -13180,7 +13180,7 @@ msgstr "Импорт Zip" #. Label of the google_sheets_url (Data) field in DocType 'Data Import' #: frappe/core/doctype/data_import/data_import.json msgid "Import from Google Sheets" -msgstr "" +msgstr "Импорт из Google Sheets" #: frappe/core/doctype/data_import/importer.py:616 msgid "Import template should be of type .csv, .xlsx or .xls" @@ -13214,14 +13214,14 @@ msgstr "Входит в" #. 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "In Days" -msgstr "" +msgstr "В дни" #. Label of the in_filter (Check) field in DocType 'DocField' #. Label of the in_filter (Check) field in DocType 'Customize Form Field' #: frappe/core/doctype/docfield/docfield.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "In Filter" -msgstr "" +msgstr "В фильтре" #. Label of the in_global_search (Check) field in DocType 'DocField' #. Label of the in_global_search (Check) field in DocType 'Custom Field' @@ -13231,7 +13231,7 @@ msgstr "" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "In Global Search" -msgstr "" +msgstr "В глобальном поиске" #: frappe/core/doctype/doctype/doctype.js:88 msgid "In Grid View" @@ -13240,7 +13240,7 @@ msgstr "В виде сетки" #. Label of the in_standard_filter (Check) field in DocType 'DocField' #: frappe/core/doctype/docfield/docfield.json msgid "In List Filter" -msgstr "" +msgstr "Фильтр в списке" #. Label of the in_list_view (Check) field in DocType 'DocField' #. Label of the in_list_view (Check) field in DocType 'Custom Field' @@ -13263,7 +13263,7 @@ msgstr "В минутах" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "In Preview" -msgstr "" +msgstr "В предпросмотре" #: frappe/core/doctype/data_import/data_import.js:42 msgid "In Progress" @@ -13284,18 +13284,18 @@ msgstr "В ответ на" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "In Standard Filter" -msgstr "" +msgstr "В стандартном фильтре" #. Description of the 'Font Size' (Float) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "In points. Default is 9." -msgstr "" +msgstr "В пунктах. По умолчанию 9." #. Description of the 'Allow Login After Fail' (Int) field in DocType 'System #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "In seconds" -msgstr "" +msgstr "В секундах" #: frappe/core/doctype/recorder/recorder_list.js:209 msgid "Inactive" @@ -13324,12 +13324,12 @@ msgstr "Включить отключенные" #. Label of the include_name_field (Check) field in DocType 'Form Tour' #: frappe/desk/doctype/form_tour/form_tour.json msgid "Include Name Field" -msgstr "" +msgstr "Включить поле имени" #. Label of the navbar_search (Check) field in DocType 'Website Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Include Search in Top Bar" -msgstr "" +msgstr "Включите поиск в верхнюю панель" #: frappe/website/doctype/website_theme/website_theme.js:61 msgid "Include Theme from Apps" @@ -13338,7 +13338,7 @@ msgstr "Включить тему из приложений" #. Label of the attach_view_link (Check) field in DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Include Web View Link in Email" -msgstr "" +msgstr "Включить ссылку веб-просмотра в email" #: frappe/public/js/frappe/form/print_utils.js:60 #: frappe/public/js/frappe/views/reports/query_report.js:1737 @@ -13367,7 +13367,7 @@ msgstr "Входящий" #. Account' #: frappe/email/doctype/email_account/email_account.json msgid "Incoming (POP/IMAP) Settings" -msgstr "" +msgstr "Настройки входящих сообщений (POP/IMAP)" #. Label of the incoming_emails_last_7_days_column (Column Break) field in #. DocType 'System Health Report' @@ -13380,13 +13380,13 @@ msgstr "Входящие электронные письма (за послед #: frappe/email/doctype/email_account/email_account.json #: frappe/email/doctype/email_domain/email_domain.json msgid "Incoming Server" -msgstr "" +msgstr "Входящий сервер" #. Label of the mailbox_settings (Section Break) field in DocType 'Email #. Domain' #: frappe/email/doctype/email_domain/email_domain.json msgid "Incoming Settings" -msgstr "" +msgstr "Входящие настройки" #: frappe/email/doctype/email_domain/email_domain.py:32 msgid "Incoming email account not correct" @@ -13418,7 +13418,7 @@ msgstr "Неверный код верификации" #: frappe/public/js/frappe/views/gantt/gantt_view.js:88 msgid "Incorrect configuration" -msgstr "" +msgstr "Неправильная конфигурация" #: frappe/model/document.py:1733 msgid "Incorrect value in row {0}:" @@ -13448,7 +13448,7 @@ msgstr "Индекс" #. Label of the index_web_pages_for_search (Check) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json msgid "Index Web Pages for Search" -msgstr "" +msgstr "Индексирование веб-страниц для поиска" #: frappe/core/doctype/recorder/recorder.py:132 msgid "Index created successfully on column {0} of doctype {1}" @@ -13458,13 +13458,13 @@ msgstr "Индекс успешно создан для столбца {0} ти #. Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Indexing authorization code" -msgstr "" +msgstr "Код авторизации индексирования" #. Label of the indexing_refresh_token (Data) field in DocType 'Website #. Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Indexing refresh token" -msgstr "" +msgstr "Маркер обновления индексации" #. Label of the indicator (Select) field in DocType 'Kanban Board Column' #: frappe/desk/doctype/kanban_board_column/kanban_board_column.json @@ -13474,7 +13474,7 @@ msgstr "Индикатор" #. Label of the indicator_color (Select) field in DocType 'Workspace' #: frappe/desk/doctype/workspace/workspace.json msgid "Indicator Color" -msgstr "" +msgstr "Цвет индикатора" #: frappe/public/js/frappe/views/workspace/workspace.js:481 msgid "Indicator color" @@ -13492,7 +13492,7 @@ msgstr "Цвет индикатора" #: frappe/custom/doctype/customize_form_field/customize_form_field.json #: frappe/workflow/doctype/workflow_state/workflow_state.json msgid "Info" -msgstr "" +msgstr "Информация" #: frappe/core/doctype/data_export/exporter.py:145 msgid "Info:" @@ -13501,7 +13501,7 @@ msgstr "Инфо:" #. Label of the initial_sync_count (Select) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Initial Sync Count" -msgstr "" +msgstr "Начальный счетчик синхронизации" #. Option for the 'Database Engine' (Select) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json @@ -13550,12 +13550,12 @@ msgstr "Вставить изображение в Markdown" #. Option for the 'Import Type' (Select) field in DocType 'Data Import' #: frappe/core/doctype/data_import/data_import.json msgid "Insert New Records" -msgstr "" +msgstr "Вставка новых записей" #. Label of the insert_style (Check) field in DocType 'Web Page' #: frappe/website/doctype/web_page/web_page.json msgid "Insert Style" -msgstr "" +msgstr "Стиль вставки" #: frappe/public/js/frappe/ui/toolbar/about.js:11 msgid "Instagram" @@ -13586,7 +13586,7 @@ msgstr "Установленные приложения" #. Label of the instructions (HTML) field in DocType 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json msgid "Instructions" -msgstr "" +msgstr "Инструкции" #: frappe/templates/includes/login/login.js:257 msgid "Instructions Emailed" @@ -13650,12 +13650,12 @@ msgstr "Интеграции" #. 'Communication' #: frappe/core/doctype/communication/communication.json msgid "Integrations can use this field to set email delivery status" -msgstr "" +msgstr "Интеграции могут использовать это поле для установки статуса доставки электронной почты" #. Option for the 'Font' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "Inter" -msgstr "" +msgstr "Интер" #. Label of the interest (Small Text) field in DocType 'User' #: frappe/core/doctype/user/user.json @@ -13679,18 +13679,18 @@ msgstr "Внутренний учет акций документов" #. Label of the interval (Select) field in DocType 'Event Notifications' #: frappe/desk/doctype/event_notifications/event_notifications.json msgid "Interval" -msgstr "" +msgstr "Интервал" #. Label of the intro_video_url (Data) field in DocType 'Onboarding Step' #: frappe/desk/doctype/onboarding_step/onboarding_step.json msgid "Intro Video URL" -msgstr "" +msgstr "URL-адрес вступительного видео" #. Description of the 'Company Introduction' (Text Editor) field in DocType #. 'About Us Settings' #: frappe/website/doctype/about_us_settings/about_us_settings.json msgid "Introduce your company to the website visitor." -msgstr "" +msgstr "Представьте посетителю сайта свою компанию." #. Label of the introduction_section (Section Break) field in DocType 'Contact #. Us Settings' @@ -13706,12 +13706,12 @@ msgstr "Введение" #. Settings' #: frappe/website/doctype/contact_us_settings/contact_us_settings.json msgid "Introductory information for the Contact Us Page" -msgstr "" +msgstr "Вводная информация для страницы \"Контакты\"" #. Label of the introspection_uri (Data) field in DocType 'Connected App' #: frappe/integrations/doctype/connected_app/connected_app.json msgid "Introspection URI" -msgstr "" +msgstr "URI интроспекции" #. Option for the 'Validity' (Select) field in DocType 'OAuth Authorization #. Code' @@ -13934,7 +13934,7 @@ msgstr "Неверный статус документа" #: frappe/model/workflow.py:112 msgid "Invalid expression in Workflow Update Value: {0}" -msgstr "" +msgstr "Недопустимое выражение в значении обновления рабочего процесса: {0}" #: frappe/public/js/frappe/utils/dashboard_utils.js:229 msgid "Invalid expression set in filter {0}" @@ -14078,7 +14078,7 @@ msgstr "Неверный формат словаря {0}" #. Option for the 'Style' (Select) field in DocType 'Workflow State' #: frappe/workflow/doctype/workflow_state/workflow_state.json msgid "Inverse" -msgstr "" +msgstr "Инверсия" #: frappe/core/doctype/user_invitation/user_invitation.py:95 msgid "Invitation already accepted" @@ -14133,14 +14133,14 @@ msgstr "Активен" #. Label of the is_attachments_folder (Check) field in DocType 'File' #: frappe/core/doctype/file/file.json msgid "Is Attachments Folder" -msgstr "" +msgstr "Папка \"Вложения\"" #. Label of the is_calendar_and_gantt (Check) field in DocType 'DocType' #. Label of the is_calendar_and_gantt (Check) field in DocType 'Customize Form' #: frappe/core/doctype/doctype/doctype.json #: frappe/custom/doctype/customize_form/customize_form.json msgid "Is Calendar and Gantt" -msgstr "" +msgstr "Календарь и Гантт" #. Label of the istable (Check) field in DocType 'DocType' #. Label of the is_child_table (Check) field in DocType 'DocType Link' @@ -14155,12 +14155,12 @@ msgstr "Дочерняя таблица" #: frappe/desk/doctype/module_onboarding/module_onboarding.json #: frappe/desk/doctype/onboarding_step/onboarding_step.json msgid "Is Complete" -msgstr "" +msgstr "Завершено" #. Label of the is_completed (Check) field in DocType 'Email Flag Queue' #: frappe/email/doctype/email_flag_queue/email_flag_queue.json msgid "Is Completed" -msgstr "" +msgstr "Завершено" #. Label of the is_current (Check) field in DocType 'User Session Display' #: frappe/core/doctype/user_session_display/user_session_display.json @@ -14172,12 +14172,12 @@ msgstr "Является текущим" #: frappe/core/doctype/role/role.json #: frappe/core/doctype/user_document_type/user_document_type.json msgid "Is Custom" -msgstr "" +msgstr "На заказ" #. Label of the is_custom_field (Check) field in DocType 'Customize Form Field' #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Is Custom Field" -msgstr "" +msgstr "Является пользовательским полем" #. Label of the is_default (Check) field in DocType 'Address Template' #. Label of the is_default (Check) field in DocType 'User Permission' @@ -14192,12 +14192,12 @@ msgstr "По умолчанию" #. Label of the is_dynamic_url (Check) field in DocType 'Webhook' #: frappe/integrations/doctype/webhook/webhook.json msgid "Is Dynamic URL?" -msgstr "" +msgstr "Является ли динамическим URL?" #. Label of the is_folder (Check) field in DocType 'File' #: frappe/core/doctype/file/file.json msgid "Is Folder" -msgstr "" +msgstr "Папка" #: frappe/public/js/frappe/list/list_filter.js:113 msgid "Is Global" @@ -14210,28 +14210,28 @@ msgstr "Группа" #. Label of the is_hidden (Check) field in DocType 'Workspace' #: frappe/desk/doctype/workspace/workspace.json msgid "Is Hidden" -msgstr "" +msgstr "Скрыт" #. Label of the is_home_folder (Check) field in DocType 'File' #: frappe/core/doctype/file/file.json msgid "Is Home Folder" -msgstr "" +msgstr "Домашняя папка" #. Label of the reqd (Check) field in DocType 'Custom Field' #: frappe/custom/doctype/custom_field/custom_field.json msgid "Is Mandatory Field" -msgstr "" +msgstr "Обязательное поле" #. Label of the is_optional_state (Check) field in DocType 'Workflow Document #. State' #: frappe/workflow/doctype/workflow_document_state/workflow_document_state.json msgid "Is Optional State" -msgstr "" +msgstr "Опциональное состояние" #. Label of the is_primary (Check) field in DocType 'Contact Email' #: frappe/contacts/doctype/contact_email/contact_email.json msgid "Is Primary" -msgstr "" +msgstr "Основной" #: frappe/contacts/report/addresses_and_contacts/addresses_and_contacts.py:43 msgid "Is Primary Address" @@ -14241,34 +14241,34 @@ msgstr "Основной адрес" #: frappe/contacts/doctype/contact/contact.json #: frappe/contacts/report/addresses_and_contacts/addresses_and_contacts.py:49 msgid "Is Primary Contact" -msgstr "" +msgstr "Это основной контакт" #. Label of the is_primary_mobile_no (Check) field in DocType 'Contact Phone' #: frappe/contacts/doctype/contact_phone/contact_phone.json msgid "Is Primary Mobile" -msgstr "" +msgstr "Основной мобильный" #. Label of the is_primary_phone (Check) field in DocType 'Contact Phone' #: frappe/contacts/doctype/contact_phone/contact_phone.json msgid "Is Primary Phone" -msgstr "" +msgstr "Основной телефон" #. Label of the is_private (Check) field in DocType 'File' #: frappe/core/doctype/file/file.json msgid "Is Private" -msgstr "" +msgstr "Частный" #. Label of the is_public (Check) field in DocType 'Dashboard Chart' #. Label of the is_public (Check) field in DocType 'Number Card' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json #: frappe/desk/doctype/number_card/number_card.json msgid "Is Public" -msgstr "" +msgstr "Публичный" #. Label of the is_published_field (Data) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json msgid "Is Published Field" -msgstr "" +msgstr "Опубликовано поле" #: frappe/core/doctype/doctype/doctype.py:1547 msgid "Is Published Field must be a valid fieldname" @@ -14278,13 +14278,13 @@ msgstr "Поле \"Опубликовано\" должно быть допуст #: frappe/desk/doctype/workspace_link/workspace_link.json #: frappe/public/js/frappe/widgets/widget_dialog.js:341 msgid "Is Query Report" -msgstr "" +msgstr "Отчет о запросе" #. Label of the is_remote_request (Check) field in DocType 'Integration #. Request' #: frappe/integrations/doctype/integration_request/integration_request.json msgid "Is Remote Request?" -msgstr "" +msgstr "Удаленный запрос?" #. Label of the is_setup_complete (Check) field in DocType 'Installed #. Application' @@ -14303,12 +14303,12 @@ msgstr "Одиночный" #. Label of the is_skipped (Check) field in DocType 'Onboarding Step' #: frappe/desk/doctype/onboarding_step/onboarding_step.json msgid "Is Skipped" -msgstr "" +msgstr "Пропущен" #. Label of the is_spam (Check) field in DocType 'Email Rule' #: frappe/email/doctype/email_rule/email_rule.json msgid "Is Spam" -msgstr "" +msgstr "Спам" #. Label of the is_standard (Check) field in DocType 'Navbar Item' #. Label of the is_standard (Select) field in DocType 'Report' @@ -14327,7 +14327,7 @@ msgstr "" #: frappe/desk/doctype/number_card/number_card.json #: frappe/email/doctype/notification/notification.json msgid "Is Standard" -msgstr "" +msgstr "Стандартный" #. Label of the is_submittable (Check) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json @@ -14343,27 +14343,27 @@ msgstr "Можно отправить" #: frappe/custom/doctype/customize_form_field/customize_form_field.json #: frappe/custom/doctype/property_setter/property_setter.json msgid "Is System Generated" -msgstr "" +msgstr "Генерируется системой" #. Label of the istable (Check) field in DocType 'Customize Form' #: frappe/custom/doctype/customize_form/customize_form.json msgid "Is Table" -msgstr "" +msgstr "Таблица" #. Label of the is_table_field (Check) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Is Table Field" -msgstr "" +msgstr "Является полем таблицы" #. Label of the is_tree (Check) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json msgid "Is Tree" -msgstr "" +msgstr "Дерево" #. Label of the is_unique (Data) field in DocType 'Web Page View' #: frappe/website/doctype/web_page_view/web_page_view.json msgid "Is Unique" -msgstr "" +msgstr "Уникальный" #. Label of the is_virtual (Check) field in DocType 'DocType' #. Label of the is_virtual (Check) field in DocType 'Custom Field' @@ -14372,7 +14372,7 @@ msgstr "" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Is Virtual" -msgstr "" +msgstr "Виртуальный" #. Label of the is_standard (Check) field in DocType 'Web Form' #: frappe/website/doctype/web_form/web_form.json @@ -14386,12 +14386,12 @@ msgstr "Удаление этого файла: {0} рискованно. Обр #. Label of the item_label (Data) field in DocType 'Navbar Item' #: frappe/core/doctype/navbar_item/navbar_item.json msgid "Item Label" -msgstr "" +msgstr "Ярлык элемента" #. Label of the item_type (Select) field in DocType 'Navbar Item' #: frappe/core/doctype/navbar_item/navbar_item.json msgid "Item Type" -msgstr "" +msgstr "Тип элемента" #: frappe/utils/nestedset.py:233 msgid "Item cannot be added to its own descendants" @@ -14410,7 +14410,7 @@ msgstr "JS" #. Label of the js_message (HTML) field in DocType 'Custom HTML Block' #: frappe/desk/doctype/custom_html_block/custom_html_block.json msgid "JS Message" -msgstr "" +msgstr "Сообщение JS" #. Option for the 'Type' (Select) field in DocType 'DocField' #. Label of the json (Code) field in DocType 'Report' @@ -14428,7 +14428,7 @@ msgstr "JSON" #. Label of the webhook_json (Code) field in DocType 'Webhook' #: frappe/integrations/doctype/webhook/webhook.json msgid "JSON Request Body" -msgstr "" +msgstr "Тело запроса JSON" #: frappe/templates/signup.html:5 msgid "Jane Doe" @@ -14442,7 +14442,7 @@ msgstr "JavaScript" #. Description of the 'Javascript' (Code) field in DocType 'Report' #: frappe/core/doctype/report/report.json msgid "JavaScript Format: frappe.query_reports['REPORTNAME'] = {}" -msgstr "" +msgstr "Формат JavaScript: frappe.query_reports['REPORTNAME'] = {}" #. Label of the javascript (Code) field in DocType 'Report' #. Label of the javascript_section (Section Break) field in DocType 'Custom @@ -14470,7 +14470,7 @@ msgstr "Jinja" #: frappe/core/doctype/prepared_report/prepared_report.json #: frappe/core/doctype/rq_job/rq_job.json msgid "Job ID" -msgstr "" +msgstr "Идентификатор должности" #. Label of the job_id (Link) field in DocType 'Submission Queue' #: frappe/core/doctype/submission_queue/submission_queue.json @@ -14480,17 +14480,17 @@ msgstr "Id задания" #. Label of the job_info_section (Section Break) field in DocType 'RQ Job' #: frappe/core/doctype/rq_job/rq_job.json msgid "Job Info" -msgstr "" +msgstr "Информация о работе" #. Label of the job_name (Data) field in DocType 'RQ Job' #: frappe/core/doctype/rq_job/rq_job.json msgid "Job Name" -msgstr "" +msgstr "Название работы" #. Label of the job_status_section (Section Break) field in DocType 'RQ Job' #: frappe/core/doctype/rq_job/rq_job.json msgid "Job Status" -msgstr "" +msgstr "Статус работы" #: frappe/core/doctype/data_import/data_import.js:191 #: frappe/core/doctype/rq_job/rq_job.js:24 @@ -14592,7 +14592,7 @@ msgstr "Отслеживает все коммуникации" #: frappe/integrations/doctype/webhook_header/webhook_header.json #: frappe/website/doctype/website_meta_tag/website_meta_tag.json msgid "Key" -msgstr "" +msgstr "Ключ" #. Label of a standard help item #. Type: Action @@ -14643,27 +14643,27 @@ msgstr "LDAP-аутентификация" #. 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Custom Settings" -msgstr "" +msgstr "Пользовательские настройки LDAP" #. Label of the ldap_email_field (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Email Field" -msgstr "" +msgstr "Поле электронной почты LDAP" #. Label of the ldap_first_name_field (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP First Name Field" -msgstr "" +msgstr "Поле первого имени LDAP" #. Label of the ldap_group (Data) field in DocType 'LDAP Group Mapping' #: frappe/integrations/doctype/ldap_group_mapping/ldap_group_mapping.json msgid "LDAP Group" -msgstr "" +msgstr "Группа LDAP" #. Label of the ldap_group_field (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Group Field" -msgstr "" +msgstr "Поле группы LDAP" #. Name of a DocType #: frappe/integrations/doctype/ldap_group_mapping/ldap_group_mapping.json @@ -14675,28 +14675,28 @@ msgstr "Сопоставление групп LDAP" #. Label of the ldap_groups (Table) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Group Mappings" -msgstr "" +msgstr "Сопоставления групп LDAP" #. Label of the ldap_group_member_attribute (Data) field in DocType 'LDAP #. Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Group Member attribute" -msgstr "" +msgstr "Атрибут LDAP Group Member" #. Label of the ldap_last_name_field (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Last Name Field" -msgstr "" +msgstr "Поле \"фамилии\" LDAP" #. Label of the ldap_middle_name_field (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Middle Name Field" -msgstr "" +msgstr "Поле \"отчество\" в LDAP" #. Label of the ldap_mobile_field (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Mobile Field" -msgstr "" +msgstr "\"Мобильное\" поле LDAP" #: frappe/integrations/doctype/ldap_settings/ldap_settings.py:163 msgid "LDAP Not Installed" @@ -14705,12 +14705,12 @@ msgstr "LDAP не установлен" #. Label of the ldap_phone_field (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Phone Field" -msgstr "" +msgstr "Поле \"Телефон\" в LDAP" #. Label of the ldap_search_string (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Search String" -msgstr "" +msgstr "Строка поиска LDAP" #: frappe/integrations/doctype/ldap_settings/ldap_settings.py:130 msgid "LDAP Search String must be enclosed in '()' and needs to contian the user placeholder {0}, eg sAMAccountName={0}" @@ -14720,18 +14720,18 @@ msgstr "Строка поиска LDAP должна быть заключена #. 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Search and Paths" -msgstr "" +msgstr "Поиск и пути LDAP" #. Label of the ldap_security (Section Break) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Security" -msgstr "" +msgstr "Безопасность LDAP" #. Label of the ldap_server_settings_section (Section Break) field in DocType #. 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Server Settings" -msgstr "" +msgstr "Настройки сервера LDAP" #. Label of the ldap_server_url (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json @@ -14751,12 +14751,12 @@ msgstr "Настройки LDAP" #. DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP User Creation and Mapping" -msgstr "" +msgstr "Создание и сопоставление пользователей LDAP" #. Label of the ldap_username_field (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP Username Field" -msgstr "" +msgstr "Поле имени пользователя LDAP" #: frappe/integrations/doctype/ldap_settings/ldap_settings.py:310 #: frappe/integrations/doctype/ldap_settings/ldap_settings.py:429 @@ -14766,12 +14766,12 @@ msgstr "LDAP не включен." #. Label of the ldap_search_path_group (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP search path for Groups" -msgstr "" +msgstr "Путь поиска LDAP для групп" #. Label of the ldap_search_path_user (Data) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "LDAP search path for Users" -msgstr "" +msgstr "Путь поиска LDAP для пользователей" #: frappe/integrations/doctype/ldap_settings/ldap_settings.py:102 msgid "LDAP settings incorrect. validation response was: {0}" @@ -14833,13 +14833,13 @@ msgstr "Ярлык" #. Label of the label_help (HTML) field in DocType 'Custom Field' #: frappe/custom/doctype/custom_field/custom_field.json msgid "Label Help" -msgstr "" +msgstr "Справка по меткам" #. Label of the label_and_type (Section Break) field in DocType 'Customize Form #. Field' #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Label and Type" -msgstr "" +msgstr "Метка и тип" #: frappe/custom/doctype/custom_field/custom_field.py:147 msgid "Label is mandatory" @@ -14848,7 +14848,7 @@ msgstr "Ярлык обязателен" #. Label of the sb0 (Section Break) field in DocType 'Website Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Landing Page" -msgstr "" +msgstr "Целевая страница" #: frappe/public/js/frappe/form/print_utils.js:24 msgid "Landscape" @@ -14872,12 +14872,12 @@ msgstr "Язык" #. Label of the language_code (Data) field in DocType 'Language' #: frappe/core/doctype/language/language.json msgid "Language Code" -msgstr "" +msgstr "Код языка" #. Label of the language_name (Data) field in DocType 'Language' #: frappe/core/doctype/language/language.json msgid "Language Name" -msgstr "" +msgstr "Название языка" #. Label of the last_10_active_users (Code) field in DocType 'System Health #. Report' @@ -14895,7 +14895,7 @@ msgstr "Последние 30 дней" #: frappe/public/js/frappe/ui/filters/filter.js:651 msgid "Last 6 Months" -msgstr "Последние 6 месяцев" +msgstr "" #: frappe/public/js/frappe/ui/filters/filter.js:623 msgid "Last 7 Days" @@ -14908,40 +14908,40 @@ msgstr "Последние 90 Дней" #. Label of the last_active (Datetime) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Last Active" -msgstr "" +msgstr "Последний активный" #: frappe/public/js/frappe/form/sidebar/form_sidebar.js:163 msgid "Last Edited by You" -msgstr "" +msgstr "Последнее изменение внесено Вами" #: frappe/public/js/frappe/form/sidebar/form_sidebar.js:164 msgid "Last Edited by {0}" -msgstr "" +msgstr "Последнее редактирование: {0}" #. Label of the last_execution (Datetime) field in DocType 'Scheduled Job Type' #: frappe/core/doctype/scheduled_job_type/scheduled_job_type.json msgid "Last Execution" -msgstr "" +msgstr "Последнее исполнение" #. Label of the last_heartbeat (Datetime) field in DocType 'RQ Worker' #: frappe/core/doctype/rq_worker/rq_worker.json msgid "Last Heartbeat" -msgstr "" +msgstr "Последний Heartbeat" #. Label of the last_ip (Read Only) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Last IP" -msgstr "" +msgstr "Последний IP" #. Label of the last_known_versions (Text) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Last Known Versions" -msgstr "" +msgstr "Последние известные версии" #. Label of the last_login (Read Only) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Last Login" -msgstr "" +msgstr "Последний вход в систему" #: frappe/email/doctype/notification/notification.js:32 msgid "Last Modified Date" @@ -14956,7 +14956,7 @@ msgstr "Изменен" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json #: frappe/public/js/frappe/ui/filters/filter.js:643 msgid "Last Month" -msgstr "" +msgstr "Последний месяц" #. Label of the last_name (Data) field in DocType 'Contact' #. Label of the last_name (Data) field in DocType 'User' @@ -14972,13 +14972,13 @@ msgstr "Фамилия" #. Label of the last_password_reset_date (Date) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Last Password Reset Date" -msgstr "" +msgstr "Дата последнего сброса пароля" #. Option for the 'Timespan' (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json #: frappe/public/js/frappe/ui/filters/filter.js:647 msgid "Last Quarter" -msgstr "" +msgstr "Последний квартал" #. Label of the last_received_at (Datetime) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json @@ -14989,7 +14989,7 @@ msgstr "Последний раз получено в" #. DocType 'User' #: frappe/core/doctype/user/user.json msgid "Last Reset Password Key Generated On" -msgstr "" +msgstr "Ключ последнего сброса пароля, сгенерированный на" #. Label of the datetime_last_run (Datetime) field in DocType 'Notification' #: frappe/email/doctype/notification/notification.json @@ -14999,12 +14999,12 @@ msgstr "Последний запуск" #. Label of the last_sync_on (Datetime) field in DocType 'Google Contacts' #: frappe/integrations/doctype/google_contacts/google_contacts.json msgid "Last Sync On" -msgstr "" +msgstr "Последняя синхронизация включена" #. Label of the last_synced_on (Datetime) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json msgid "Last Synced On" -msgstr "" +msgstr "Последняя синхронизация" #. Label of the last_updated (Datetime) field in DocType 'User Session Display' #: frappe/core/doctype/user_session_display/user_session_display.json @@ -15024,19 +15024,19 @@ msgstr "Последнее обновление" #. Label of the last_user (Link) field in DocType 'Assignment Rule' #: frappe/automation/doctype/assignment_rule/assignment_rule.json msgid "Last User" -msgstr "" +msgstr "Последний пользователь" #. Option for the 'Timespan' (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json #: frappe/public/js/frappe/ui/filters/filter.js:639 msgid "Last Week" -msgstr "" +msgstr "Последняя неделя" #. Option for the 'Timespan' (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json #: frappe/public/js/frappe/ui/filters/filter.js:655 msgid "Last Year" -msgstr "" +msgstr "Прошлый год" #: frappe/public/js/frappe/widgets/chart_widget.js:753 msgid "Last synced {0}" @@ -15062,7 +15062,7 @@ msgstr "Узнать больше" #. Description of the 'Repeat Till' (Date) field in DocType 'Event' #: frappe/desk/doctype/event/event.json msgid "Leave blank to repeat always" -msgstr "" +msgstr "Оставьте пустым, чтобы повторять всегда" #: frappe/core/doctype/communication/mixins.py:207 #: frappe/email/doctype/email_account/email_account.py:804 @@ -15098,12 +15098,12 @@ msgstr "Слева" #. Option for the 'Position' (Select) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Left Bottom" -msgstr "" +msgstr "Левая нижняя часть" #. Option for the 'Position' (Select) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Left Center" -msgstr "" +msgstr "Левый центр" #: frappe/email/doctype/email_unsubscribe/email_unsubscribe.py:58 msgid "Left this conversation" @@ -15170,7 +15170,7 @@ msgstr "Давайте вернемся к началу обучения" #. Option for the 'PDF Page Size' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "Letter" -msgstr "" +msgstr "Письмо" #. Label of the letter_head (Link) field in DocType 'Report' #. Name of a DocType @@ -15187,19 +15187,19 @@ msgstr "Фирменный бланк" #. Label of the source (Select) field in DocType 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json msgid "Letter Head Based On" -msgstr "" +msgstr "Заголовок письма на основе" #. Label of the letter_head_image_section (Section Break) field in DocType #. 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json msgid "Letter Head Image" -msgstr "" +msgstr "Изображение головки письма" #. Label of the letter_head_name (Data) field in DocType 'Letter Head' #: frappe/printing/doctype/letter_head/letter_head.json #: frappe/public/js/print_format_builder/LetterHeadEditor.vue:198 msgid "Letter Head Name" -msgstr "" +msgstr "Имя руководителя письма" #: frappe/printing/doctype/letter_head/letter_head.js:30 msgid "Letter Head Scripts" @@ -15213,7 +15213,7 @@ msgstr "Фирменный бланк не может быть одноврем #. Head' #: frappe/printing/doctype/letter_head/letter_head.json msgid "Letter Head in HTML" -msgstr "" +msgstr "Заголовок письма в HTML" #. Label of the permlevel (Int) field in DocType 'Custom DocPerm' #. Label of the permlevel (Int) field in DocType 'DocPerm' @@ -15243,12 +15243,12 @@ msgstr "Лицензия" #. Label of the license_type (Select) field in DocType 'Package' #: frappe/core/doctype/package/package.json msgid "License Type" -msgstr "" +msgstr "Тип лицензии" #. Option for the 'Desk Theme' (Select) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Light" -msgstr "" +msgstr "Свет" #. Option for the 'Color' (Select) field in DocType 'DocType State' #. Option for the 'Indicator' (Select) field in DocType 'Kanban Board Column' @@ -15260,7 +15260,7 @@ msgstr "Светло-голубой" #. Label of the light_color (Link) field in DocType 'Website Theme' #: frappe/website/doctype/website_theme/website_theme.json msgid "Light Color" -msgstr "" +msgstr "Светлый цвет" #: frappe/public/js/frappe/ui/theme_switcher.js:60 msgid "Light Theme" @@ -15290,7 +15290,7 @@ msgstr "Лайки" #. Label of the limit (Int) field in DocType 'Bulk Update' #: frappe/desk/doctype/bulk_update/bulk_update.json msgid "Limit" -msgstr "" +msgstr "Лимит" #: frappe/database/query.py:299 msgid "Limit must be a non-negative integer" @@ -15299,7 +15299,7 @@ msgstr "Предел должен быть неотрицательным цел #. Option for the 'Type' (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json msgid "Line" -msgstr "" +msgstr "Линия" #. Option for the 'Type' (Select) field in DocType 'DocField' #. Option for the 'Fieldtype' (Select) field in DocType 'Report Column' @@ -15337,12 +15337,12 @@ msgstr "Ссылка" #. Label of the tab_break_18 (Tab Break) field in DocType 'Workspace' #: frappe/desk/doctype/workspace/workspace.json msgid "Link Cards" -msgstr "" +msgstr "Ссылочные карточки" #. Label of the link_count (Int) field in DocType 'Workspace Link' #: frappe/desk/doctype/workspace_link/workspace_link.json msgid "Link Count" -msgstr "" +msgstr "Кол-во ссылок" #. Label of the link_details_section (Section Break) field in DocType #. 'Workspace Link' @@ -15357,12 +15357,12 @@ msgstr "Подробности ссылки" #: frappe/core/doctype/communication_link/communication_link.json #: frappe/core/doctype/doctype_link/doctype_link.json msgid "Link DocType" -msgstr "" +msgstr "Ссылка DocType" #. Label of the link_doctype (Link) field in DocType 'Dynamic Link' #: frappe/core/doctype/dynamic_link/dynamic_link.json msgid "Link Document Type" -msgstr "" +msgstr "Ссылка Тип документа" #: frappe/website/doctype/personal_data_deletion_request/personal_data_deletion_request.py:407 #: frappe/workflow/doctype/workflow_action/workflow_action.py:211 @@ -15373,12 +15373,12 @@ msgstr "Срок действия ссылки истек" #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Link Field Results Limit" -msgstr "" +msgstr "Ограничение результатов по полю ссылки" #. Label of the link_fieldname (Data) field in DocType 'DocType Link' #: frappe/core/doctype/doctype_link/doctype_link.json msgid "Link Fieldname" -msgstr "" +msgstr "Название поля ссылки" #. Label of the link_filters (JSON) field in DocType 'DocField' #. Label of the link_filters (JSON) field in DocType 'Custom Field' @@ -15398,14 +15398,14 @@ msgstr "Фильтры ссылок" #: frappe/core/doctype/communication_link/communication_link.json #: frappe/core/doctype/dynamic_link/dynamic_link.json msgid "Link Name" -msgstr "" +msgstr "Название ссылки" #. Label of the link_title (Read Only) field in DocType 'Communication Link' #. Label of the link_title (Read Only) field in DocType 'Dynamic Link' #: frappe/core/doctype/communication_link/communication_link.json #: frappe/core/doctype/dynamic_link/dynamic_link.json msgid "Link Title" -msgstr "" +msgstr "Заголовок ссылки" #. Label of the link_to (Dynamic Link) field in DocType 'Desktop Icon' #. Label of the link_to (Dynamic Link) field in DocType 'Workspace' @@ -15422,7 +15422,7 @@ msgstr "" #: frappe/public/js/frappe/widgets/widget_dialog.js:281 #: frappe/public/js/frappe/widgets/widget_dialog.js:427 msgid "Link To" -msgstr "" +msgstr "Ссылка на" #: frappe/public/js/frappe/widgets/widget_dialog.js:363 msgid "Link To in Row" @@ -15439,7 +15439,7 @@ msgstr "Ссылка на строку" #: frappe/public/js/frappe/views/workspace/workspace.js:428 #: frappe/public/js/frappe/widgets/widget_dialog.js:273 msgid "Link Type" -msgstr "" +msgstr "Тип ссылки" #: frappe/public/js/frappe/widgets/widget_dialog.js:359 msgid "Link Type in Row" @@ -15452,19 +15452,19 @@ msgstr "Ссылка на страницу «О нас» — «/about»." #. Description of the 'Home Page' (Data) field in DocType 'Website Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Link that is the website home page. Standard Links (home, login, products, blog, about, contact)" -msgstr "" +msgstr "Ссылка, которая является главной страницей сайта. Стандартные ссылки (главная, вход, товары, блог, о, контакты)" #. Description of the 'URL' (Data) field in DocType 'Top Bar Item' #: frappe/website/doctype/top_bar_item/top_bar_item.json msgid "Link to the page you want to open. Leave blank if you want to make it a group parent." -msgstr "" +msgstr "Ссылка на страницу, которую вы хотите открыть. Оставьте пустой, если хотите сделать ее родительской для группы." #. Option for the 'Status' (Select) field in DocType 'Activity Log' #. Option for the 'Status' (Select) field in DocType 'Communication' #: frappe/core/doctype/activity_log/activity_log.json #: frappe/core/doctype/communication/communication.json msgid "Linked" -msgstr "" +msgstr "Связанный" #: frappe/public/js/frappe/form/linked_with.js:23 msgid "Linked With" @@ -15504,18 +15504,18 @@ msgstr "Ссылки" #: frappe/public/js/frappe/ui/toolbar/search_utils.js:86 #: frappe/public/js/frappe/utils/utils.js:961 msgid "List" -msgstr "" +msgstr "Список" #. Label of the list__search_settings_section (Section Break) field in DocType #. 'DocField' #: frappe/core/doctype/docfield/docfield.json msgid "List / Search Settings" -msgstr "" +msgstr "Настройки списка / поиска" #. Label of the list_columns (Table) field in DocType 'Web Form' #: frappe/website/doctype/web_form/web_form.json msgid "List Columns" -msgstr "" +msgstr "Колонки списка" #. Name of a DocType #: frappe/desk/doctype/list_filter/list_filter.json @@ -15555,7 +15555,7 @@ msgstr "Список типа документа" #: frappe/website/doctype/web_form/web_form.json #: frappe/website/doctype/web_page/web_page.json msgid "List as [{\"label\": _(\"Jobs\"), \"route\":\"jobs\"}]" -msgstr "" +msgstr "Список как [{\"label\": _(\"Jobs\"), \"route\": \"jobs\"}]" #. Description of the 'Send Notification to' (Small Text) field in DocType #. 'Email Account' @@ -15580,7 +15580,7 @@ msgstr "Списки" #. Option for the 'Rule' (Select) field in DocType 'Assignment Rule' #: frappe/automation/doctype/assignment_rule/assignment_rule.json msgid "Load Balancing" -msgstr "" +msgstr "Балансировка нагрузки" #: frappe/public/js/frappe/list/base_list.js:380 #: frappe/public/js/frappe/web_form/web_form_list.js:306 @@ -15639,7 +15639,7 @@ msgstr "Местоположение" #. Label of the log (Code) field in DocType 'Package Import' #: frappe/core/doctype/package_import/package_import.json msgid "Log" -msgstr "" +msgstr "Журнал" #. Label of the log_api_requests (Check) field in DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json @@ -15649,12 +15649,12 @@ msgstr "Журнал API-запросов" #. Label of the log_data_section (Section Break) field in DocType 'Access Log' #: frappe/core/doctype/access_log/access_log.json msgid "Log Data" -msgstr "" +msgstr "Данные журнала" #. Label of the ref_doctype (Link) field in DocType 'Logs To Clear' #: frappe/core/doctype/logs_to_clear/logs_to_clear.json msgid "Log DocType" -msgstr "" +msgstr "Журнал DocType" #: frappe/templates/emails/login_with_email_link.html:27 msgid "Log In To {0}" @@ -15663,7 +15663,7 @@ msgstr "Войти в {0}" #. Label of the log_index (Int) field in DocType 'Data Import Log' #: frappe/core/doctype/data_import_log/data_import_log.json msgid "Log Index" -msgstr "" +msgstr "Индекс журнала" #. Name of a DocType #: frappe/core/doctype/log_setting_user/log_setting_user.json @@ -15709,17 +15709,17 @@ msgstr "Логин" #. Label of a chart in the Users Workspace #: frappe/core/workspace/users/users.json msgid "Login Activity" -msgstr "" +msgstr "Активность входа" #. Label of the login_after (Int) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Login After" -msgstr "" +msgstr "Вход в систему после" #. Label of the login_before (Int) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Login Before" -msgstr "" +msgstr "Вход в систему до" #: frappe/public/js/frappe/desk.js:256 msgid "Login Failed please try again" @@ -15733,13 +15733,13 @@ msgstr "Требуется идентификатор входа" #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Login Methods" -msgstr "" +msgstr "Методы входа в систему" #. Label of the misc_section (Section Break) field in DocType 'Website #. Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Login Page" -msgstr "" +msgstr "Страница входа в систему" #: frappe/www/login.py:156 msgid "Login To {0}" @@ -15784,7 +15784,7 @@ msgstr "Войдите, чтобы начать новое обсуждение" #: frappe/www/portal.py:17 msgid "Login to view" -msgstr "" +msgstr "Войдите в систему, чтобы просмотреть" #: frappe/www/login.html:64 msgid "Login to {0}" @@ -15810,13 +15810,13 @@ msgstr "Войти с помощью LDAP" #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Login with email link" -msgstr "" +msgstr "Вход по ссылке электронной почты" #. Label of the login_with_email_link_expiry (Int) field in DocType 'System #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Login with email link expiry (in minutes)" -msgstr "" +msgstr "Вход в систему с истечением срока действия ссылки на электронную почту (в минутах)" #: frappe/auth.py:150 msgid "Login with username and password is not allowed." @@ -15839,7 +15839,7 @@ msgstr "URL-адрес логотипа" #. Option for the 'Operation' (Select) field in DocType 'Activity Log' #: frappe/core/doctype/activity_log/activity_log.json frappe/www/me.html:91 msgid "Logout" -msgstr "" +msgstr "Выход из системы" #: frappe/core/doctype/user/user.js:198 msgid "Logout All Sessions" @@ -15849,12 +15849,12 @@ msgstr "Выйти из всех сеансов" #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Logout All Sessions on Password Reset" -msgstr "" +msgstr "Выход из всех сеансов при сбросе пароля" #. Label of the logout_all_sessions (Check) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Logout From All Devices After Changing Password" -msgstr "" +msgstr "Выход из системы со всех устройств после смены пароля" #. Group in User's connections #. Label of a Workspace Sidebar Item @@ -15870,7 +15870,7 @@ msgstr "Журналы для очистки" #. Label of the logs_to_clear (Table) field in DocType 'Log Settings' #: frappe/core/doctype/log_settings/log_settings.json msgid "Logs to Clear" -msgstr "" +msgstr "Журналы для очистки" #. Option for the 'Type' (Select) field in DocType 'DocField' #. Option for the 'Field Type' (Select) field in DocType 'Custom Field' @@ -15879,7 +15879,7 @@ msgstr "" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Long Text" -msgstr "" +msgstr "Длинный текст" #: frappe/public/js/frappe/widgets/onboarding_widget.js:317 msgid "Looks like you didn't change the value" @@ -15907,7 +15907,7 @@ msgstr "M" #. Option for the 'License Type' (Select) field in DocType 'Package' #: frappe/core/doctype/package/package.json msgid "MIT License" -msgstr "" +msgstr "Лицензия MIT" #: frappe/desk/page/setup_wizard/install_fixtures.py:48 msgid "Madam" @@ -15916,17 +15916,17 @@ msgstr "Мадам" #. Label of the main_section (Text Editor) field in DocType 'Web Page' #: frappe/website/doctype/web_page/web_page.json msgid "Main Section" -msgstr "" +msgstr "Главная секция" #. Label of the main_section_html (HTML Editor) field in DocType 'Web Page' #: frappe/website/doctype/web_page/web_page.json msgid "Main Section (HTML)" -msgstr "" +msgstr "Основной раздел (HTML)" #. Label of the main_section_md (Markdown Editor) field in DocType 'Web Page' #: frappe/website/doctype/web_page/web_page.json msgid "Main Section (Markdown)" -msgstr "" +msgstr "Основной раздел (Markdown)" #. Name of a role #: frappe/contacts/doctype/contact/contact.json @@ -15942,7 +15942,7 @@ msgstr "Сотрудник обслуживания" #. Label of the major (Int) field in DocType 'Package Release' #: frappe/core/doctype/package_release/package_release.json msgid "Major" -msgstr "" +msgstr "Главная" #. Label of the show_name_in_global_search (Check) field in DocType 'DocType' #. Label of the show_name_in_global_search (Check) field in DocType 'Customize @@ -15950,7 +15950,7 @@ msgstr "" #: frappe/core/doctype/doctype/doctype.json #: frappe/custom/doctype/customize_form/customize_form.json msgid "Make \"name\" searchable in Global Search" -msgstr "" +msgstr "Сделать \"имя\" доступным для поиска в Глобальном поиске" #. Label of the make_attachment_public (Check) field in DocType 'DocField' #: frappe/core/doctype/docfield/docfield.json @@ -15963,13 +15963,13 @@ msgstr "Сделать вложение общедоступным (по умо #: frappe/core/doctype/doctype/doctype.json #: frappe/custom/doctype/customize_form/customize_form.json msgid "Make Attachments Public by Default" -msgstr "" +msgstr "Сделать вложения общедоступными по умолчанию" #. Description of the 'Disable Username/Password Login' (Check) field in #. DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Make sure to configure a Social Login Key before disabling to prevent lockout" -msgstr "" +msgstr "Обязательно настройте социальный ключ входа перед отключением, чтобы предотвратить блокировку" #: frappe/utils/password_strength.py:92 msgid "Make use of longer keyboard patterns" @@ -15993,7 +15993,7 @@ msgstr "Управление сторонними приложениями" #: frappe/public/js/billing.bundle.js:71 msgid "Manage Billing" -msgstr "" +msgstr "Управление оплатой" #. Label of the reqd (Check) field in DocType 'DocField' #. Label of the mandatory (Check) field in DocType 'Report Filter' @@ -16016,12 +16016,12 @@ msgstr "Обязательный" #: frappe/custom/doctype/customize_form_field/customize_form_field.json #: frappe/website/doctype/web_form_field/web_form_field.json msgid "Mandatory Depends On" -msgstr "" +msgstr "Обязательно Зависит от" #. Label of the mandatory_depends_on (Code) field in DocType 'DocField' #: frappe/core/doctype/docfield/docfield.json msgid "Mandatory Depends On (JS)" -msgstr "" +msgstr "Обязательно Зависит от (JS)" #: frappe/website/doctype/web_form/web_form.py:538 msgid "Mandatory Information missing:" @@ -16055,7 +16055,7 @@ msgstr "Обязательный:" #. Option for the 'Select List View' (Select) field in DocType 'Form Tour' #: frappe/desk/doctype/form_tour/form_tour.json msgid "Map" -msgstr "" +msgstr "Карта" #: frappe/public/js/frappe/data_import/import_preview.js:194 #: frappe/public/js/frappe/data_import/import_preview.js:306 @@ -16073,7 +16073,7 @@ msgstr "Сопоставить столбцы из {0} с полями в {1}" #. Description of the 'Dynamic Route' (Check) field in DocType 'Web Page' #: frappe/website/doctype/web_page/web_page.json msgid "Map route parameters into form variables. Example /project/<name>" -msgstr "" +msgstr "Сопоставьте параметры маршрута с переменными формы. Пример /project/<name>" #: frappe/core/doctype/data_import/importer.py:927 msgid "Mapping column {0} to field {1}" @@ -16082,22 +16082,22 @@ msgstr "Сопоставление столбца {0} с полем {1}" #. Label of the margin_bottom (Float) field in DocType 'Print Format' #: frappe/printing/doctype/print_format/print_format.json msgid "Margin Bottom" -msgstr "" +msgstr "Отступ снизу" #. Label of the margin_left (Float) field in DocType 'Print Format' #: frappe/printing/doctype/print_format/print_format.json msgid "Margin Left" -msgstr "" +msgstr "Левая граница" #. Label of the margin_right (Float) field in DocType 'Print Format' #: frappe/printing/doctype/print_format/print_format.json msgid "Margin Right" -msgstr "" +msgstr "Отступ справа" #. Label of the margin_top (Float) field in DocType 'Print Format' #: frappe/printing/doctype/print_format/print_format.json msgid "Margin Top" -msgstr "" +msgstr "Отступ сверху" #. Label of the mariadb_variables_section (Section Break) field in DocType #. 'System Health Report' @@ -16140,12 +16140,12 @@ msgstr "Разметка Текста" #: frappe/custom/doctype/customize_form_field/customize_form_field.json #: frappe/website/doctype/web_template_field/web_template_field.json msgid "Markdown Editor" -msgstr "" +msgstr "Редактор Markdown" #. Option for the 'Delivery Status' (Select) field in DocType 'Communication' #: frappe/core/doctype/communication/communication.json msgid "Marked As Spam" -msgstr "" +msgstr "Помечено как спам" #. Name of a role #: frappe/website/doctype/utm_campaign/utm_campaign.json @@ -16173,29 +16173,29 @@ msgstr "Мастер" #. Description of the 'Limit' (Int) field in DocType 'Bulk Update' #: frappe/desk/doctype/bulk_update/bulk_update.json msgid "Max 500 records at a time" -msgstr "" +msgstr "Не более 500 записей одновременно" #. Label of the max_attachments (Int) field in DocType 'DocType' #. Label of the max_attachments (Int) field in DocType 'Customize Form' #: frappe/core/doctype/doctype/doctype.json #: frappe/custom/doctype/customize_form/customize_form.json msgid "Max Attachments" -msgstr "" +msgstr "Максимальное число вложений" #. Label of the max_file_size (Int) field in DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Max File Size (MB)" -msgstr "" +msgstr "Максимальный размер файла (МБ)" #. Label of the max_height (Data) field in DocType 'DocField' #: frappe/core/doctype/docfield/docfield.json msgid "Max Height" -msgstr "" +msgstr "Максимальная высота" #. Label of the max_length (Int) field in DocType 'Web Form Field' #: frappe/website/doctype/web_form_field/web_form_field.json msgid "Max Length" -msgstr "" +msgstr "Максимальная длина" #. Label of the max_report_rows (Int) field in DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json @@ -16205,7 +16205,7 @@ msgstr "Максимальное количество строк отчета" #. Label of the max_value (Int) field in DocType 'Web Form Field' #: frappe/website/doctype/web_form_field/web_form_field.json msgid "Max Value" -msgstr "" +msgstr "Максимальное значение" #. Label of the max_attachment_size (Int) field in DocType 'Web Form' #: frappe/website/doctype/web_form/web_form.json @@ -16216,7 +16216,7 @@ msgstr "Максимальный размер крепления" #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Max auto email report per user" -msgstr "" +msgstr "Максимальный автоматический отчет по электронной почте для одного пользователя" #. Label of the max_signups_allowed_per_hour (Int) field in DocType 'System #. Settings' @@ -16231,7 +16231,7 @@ msgstr "Максимальная ширина для типа «Валюта» #. Option for the 'Function' (Select) field in DocType 'Number Card' #: frappe/desk/doctype/number_card/number_card.json msgid "Maximum" -msgstr "" +msgstr "Максимальный" #: frappe/core/doctype/file/file.py:343 msgid "Maximum Attachment Limit of {0} has been reached for {1} {2}." @@ -16250,7 +16250,7 @@ msgstr "Максимально допустимое количество стр #: frappe/desk/doctype/event/event.json #: frappe/desk/doctype/event_participants/event_participants.json msgid "Maybe" -msgstr "" +msgstr "Может быть" #: frappe/public/js/frappe/list/base_list.js:948 #: frappe/public/js/frappe/list/list_sidebar_group_by.js:168 @@ -16259,7 +16259,7 @@ msgstr "Мне" #: frappe/core/page/permission_manager/permission_manager_help.html:14 msgid "Meaning of Different Permission Types" -msgstr "" +msgstr "Значение различных типов разрешений" #. Option for the 'Priority' (Select) field in DocType 'ToDo' #. Label of the medium (Data) field in DocType 'Web Page View' @@ -16281,7 +16281,7 @@ msgstr "Встреча" #: frappe/email/doctype/notification/notification.js:210 #: frappe/integrations/doctype/webhook/webhook.js:96 msgid "Meets Condition?" -msgstr "" +msgstr "Соответствует условиям?" #. Group in Email Group's connections #: frappe/email/doctype/email_group/email_group.json @@ -16301,13 +16301,13 @@ msgstr "Использование памяти в МБ" #. Option for the 'Type' (Select) field in DocType 'Notification Log' #: frappe/desk/doctype/notification_log/notification_log.json msgid "Mention" -msgstr "" +msgstr "Упоминание" #. Label of the enable_email_mention (Check) field in DocType 'Notification #. Settings' #: frappe/desk/doctype/notification_settings/notification_settings.json msgid "Mentions" -msgstr "" +msgstr "Упоминания" #: frappe/public/js/frappe/ui/page.html:59 #: frappe/public/js/frappe/ui/page.js:174 @@ -16362,19 +16362,19 @@ msgstr "Сообщение" #. Label of the message_examples (HTML) field in DocType 'Notification' #: frappe/email/doctype/notification/notification.json msgid "Message Examples" -msgstr "" +msgstr "Примеры сообщений" #. Label of the message_id (Small Text) field in DocType 'Communication' #. Label of the message_id (Small Text) field in DocType 'Email Queue' #: frappe/core/doctype/communication/communication.json #: frappe/email/doctype/email_queue/email_queue.json msgid "Message ID" -msgstr "" +msgstr "Идентификатор сообщения" #. Label of the message_parameter (Data) field in DocType 'SMS Settings' #: frappe/core/doctype/sms_settings/sms_settings.json msgid "Message Parameter" -msgstr "" +msgstr "Параметр сообщения" #: frappe/templates/includes/contact.js:36 msgid "Message Sent" @@ -16383,7 +16383,7 @@ msgstr "Сообщение отправлено" #. Label of the message_type (Select) field in DocType 'Notification' #: frappe/email/doctype/notification/notification.json msgid "Message Type" -msgstr "" +msgstr "Тип сообщения" #: frappe/public/js/frappe/views/communication.js:1019 msgid "Message clipped" @@ -16400,7 +16400,7 @@ msgstr "Сообщение не настроено" #. Description of the 'Success message' (Text) field in DocType 'Web Form' #: frappe/website/doctype/web_form/web_form.json msgid "Message to be displayed on successful completion" -msgstr "" +msgstr "Сообщение, которое будет отображаться при успешном завершении" #. Label of the message_id (Code) field in DocType 'Unhandled Email' #: frappe/email/doctype/unhandled_email/unhandled_email.json @@ -16410,12 +16410,12 @@ msgstr "id-сообщения" #. Label of the messages (Code) field in DocType 'Data Import Log' #: frappe/core/doctype/data_import_log/data_import_log.json msgid "Messages" -msgstr "" +msgstr "Сообщения" #. Label of the meta_section (Section Break) field in DocType 'Web Form' #: frappe/website/doctype/web_form/web_form.json msgid "Meta" -msgstr "" +msgstr "Мета" #: frappe/website/doctype/web_page/web_page.js:124 msgid "Meta Description" @@ -16430,7 +16430,7 @@ msgstr "Мета-изображение" #: frappe/website/doctype/web_page/web_page.json #: frappe/website/doctype/website_route_meta/website_route_meta.json msgid "Meta Tags" -msgstr "" +msgstr "Мета-теги" #: frappe/website/doctype/web_page/web_page.js:117 msgid "Meta Title" @@ -16480,7 +16480,7 @@ msgstr "Метаданные" #: frappe/email/doctype/email_account/email_account.json #: frappe/email/doctype/notification/notification.json msgid "Method" -msgstr "" +msgstr "Метод" #: frappe/__init__.py:472 msgid "Method Not Allowed" @@ -16493,7 +16493,7 @@ msgstr "Требуется метод для создания числовой #. Option for the 'Position' (Select) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Mid Center" -msgstr "" +msgstr "Центральная середина" #. Label of the middle_name (Data) field in DocType 'Contact' #. Label of the middle_name (Data) field in DocType 'User' @@ -16524,13 +16524,13 @@ msgstr "Трекер вех" #. Option for the 'Function' (Select) field in DocType 'Number Card' #: frappe/desk/doctype/number_card/number_card.json msgid "Minimum" -msgstr "" +msgstr "Минимум" #. Label of the minimum_password_score (Select) field in DocType 'System #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Minimum Password Score" -msgstr "" +msgstr "Минимальный балл пароля" #. Label of the minor (Int) field in DocType 'Package Release' #: frappe/core/doctype/package_release/package_release.json @@ -16621,7 +16621,7 @@ msgstr "Мобильный номер" #. Label of the modal_trigger (Check) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Modal Trigger" -msgstr "" +msgstr "Модальный триггер" #. Label of the module (Data) field in DocType 'Block Module' #. Label of the module (Link) field in DocType 'DocType' @@ -16676,7 +16676,7 @@ msgstr "Модуль" #: frappe/custom/doctype/property_setter/property_setter.json #: frappe/website/doctype/web_page/web_page.json msgid "Module (for export)" -msgstr "" +msgstr "Модуль (для экспорта)" #. Name of a DocType #. Label of a Link in the Build Workspace @@ -16690,12 +16690,12 @@ msgstr "Модуль Def" #. Label of the module_html (HTML) field in DocType 'Module Profile' #: frappe/core/doctype/module_profile/module_profile.json msgid "Module HTML" -msgstr "" +msgstr "Модуль HTML" #. Label of the module_name (Data) field in DocType 'Module Def' #: frappe/core/doctype/module_def/module_def.json msgid "Module Name" -msgstr "" +msgstr "Название модуля" #. Label of a Link in the Build Workspace #. Name of a DocType @@ -16714,7 +16714,7 @@ msgstr "Профиль модуля" #. Label of the module_profile_name (Data) field in DocType 'Module Profile' #: frappe/core/doctype/module_profile/module_profile.json msgid "Module Profile Name" -msgstr "" +msgstr "Имя профиля модуля" #: frappe/desk/doctype/module_onboarding/module_onboarding.py:73 msgid "Module onboarding progress reset" @@ -16738,7 +16738,7 @@ msgstr "Модули" #. Label of the modules_html (HTML) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Modules HTML" -msgstr "" +msgstr "Модули HTML" #. Option for the 'Day' (Select) field in DocType 'Assignment Rule Day' #. Option for the 'Day' (Select) field in DocType 'Auto Repeat Day' @@ -16764,7 +16764,7 @@ msgstr "Мониторинг журналов на предмет ошибок, #. Option for the 'Font' (Select) field in DocType 'Print Settings' #: frappe/printing/doctype/print_settings/print_settings.json msgid "Monospace" -msgstr "" +msgstr "Моноспейс" #: frappe/public/js/frappe/views/calendar/calendar.js:282 msgid "Month" @@ -16795,7 +16795,7 @@ msgstr "Ежемесячно" #: frappe/core/doctype/scheduled_job_type/scheduled_job_type.json #: frappe/core/doctype/server_script/server_script.json msgid "Monthly Long" -msgstr "" +msgstr "Месяц длинный" #: frappe/public/js/frappe/form/link_selector.js:39 #: frappe/public/js/frappe/form/multi_select_dialog.js:45 @@ -16836,7 +16836,7 @@ msgstr "Больше статей на тему {0}" #. Settings' #: frappe/website/doctype/about_us_settings/about_us_settings.json msgid "More content for the bottom of the page." -msgstr "" +msgstr "Больше контента для нижней части страницы." #: frappe/public/js/frappe/ui/sort_selector.js:199 msgid "Most Used" @@ -16896,13 +16896,13 @@ msgstr "Перейти к номеру строки" #. Description of the 'Next on Click' (Check) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Move to next step when clicked inside highlighted area." -msgstr "" +msgstr "Переход к следующему шагу при нажатии внутри выделенной области." #. Description of the 'Parent Element Selector' (Data) field in DocType 'Form #. Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Mozilla doesn't support :has() so you can pass parent selector here as workaround" -msgstr "" +msgstr "Mozilla не поддерживает :has(), поэтому вы можете передать родительский селектор здесь в качестве обходного пути" #: frappe/desk/page/setup_wizard/install_fixtures.py:43 msgid "Mr" @@ -16924,13 +16924,13 @@ msgstr "Несколько корневых узлов не допускаютс #. Import' #: frappe/core/doctype/data_import/data_import.json msgid "Must be a publicly accessible Google Sheets URL" -msgstr "" +msgstr "Должен быть общедоступный URL-адрес Google Sheets" #. Description of the 'LDAP Search String' (Data) field in DocType 'LDAP #. Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "Must be enclosed in '()' and include '{0}', which is a placeholder for the user/login name. i.e. (&(objectclass=user)(uid={0}))" -msgstr "" +msgstr "Должны быть заключены в '()' и включать '{0}', который является заполнителем для имени пользователя/логина. т.е. (&(objectclass=user)(uid={0}))" #. Description of the 'Image Field' (Data) field in DocType 'DocType' #. Description of the 'Image Field' (Data) field in DocType 'Customize Form' @@ -16950,7 +16950,7 @@ msgstr "Необходимо указать запрос для выполнен #. Label of the mute_sounds (Check) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Mute Sounds" -msgstr "" +msgstr "Отключение звуков" #: frappe/desk/page/setup_wizard/install_fixtures.py:45 msgid "Mx" @@ -16983,7 +16983,7 @@ msgstr "MyISAM" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "NEVER" -msgstr "" +msgstr "НИКОГДА" #: frappe/workflow/doctype/workflow/workflow.js:19 msgid "NOTE: If you add states or transitions in the table, it will be reflected in the Workflow Builder but you will have to position them manually. Also Workflow Builder is currently in BETA." @@ -16993,7 +16993,7 @@ msgstr "ПРИМЕЧАНИЕ: Если Вы добавите состояния #. Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "NOTE: This box is due for depreciation. Please re-setup LDAP to work with the newer settings" -msgstr "" +msgstr "ПРИМЕЧАНИЕ: Данный компонент подлежит амортизации. Пожалуйста, перенастройте LDAP для работы с новыми параметрами" #. Label of the fieldname (Data) field in DocType 'DocField' #. Label of the fieldname (Data) field in DocType 'Customize Form Field' @@ -17051,21 +17051,23 @@ msgstr "Имена и фамилии сами по себе легко угад #: frappe/core/doctype/document_naming_rule/document_naming_rule.json #: frappe/custom/doctype/customize_form/customize_form.json msgid "Naming" -msgstr "" +msgstr "Названия" #. Description of the 'Auto Name' (Data) field in DocType 'Customize Form' #: frappe/custom/doctype/customize_form/customize_form.json msgid "Naming Options:\n" "
  1. field:[fieldname] - By Field
  2. naming_series: - By Naming Series (field called naming_series must be present)
  3. Prompt - Prompt user for a name
  4. [series] - Series by prefix (separated by a dot); for example PRE.#####
  5. \n" "
  6. format:EXAMPLE-{MM}morewords{fieldname1}-{fieldname2}-{#####} - Replace all braced words (fieldnames, date words (DD, MM, YY), series) with their value. Outside braces, any characters can be used.
" -msgstr "" +msgstr "Параметры именования:\n" +"
  1. field:[fieldname] - По полю
  2. naming_series: - По серии именования (поле naming_series должно присутствовать)
  3. Запрос - Запрос имени у пользователя
  4. [series] — Серия по префиксу (разделённая точкой); например, PRE.#####
  5. \n" +"
  6. Формат:ПРИМЕР-{MM}morewords{fieldname1}-{fieldname2}-{#####} — Заменить все слова в скобках (имена полей, даты (ДД, ММ, ГГ), серии) их значениями. Вне скобок можно использовать любые символы.
" #. Label of the naming_rule (Select) field in DocType 'DocType' #. Label of the naming_rule (Select) field in DocType 'Customize Form' #: frappe/core/doctype/doctype/doctype.json #: frappe/custom/doctype/customize_form/customize_form.json msgid "Naming Rule" -msgstr "" +msgstr "Правило именования" #. Label of the naming_series_tab (Tab Break) field in DocType 'Document Naming #. Settings' @@ -17083,7 +17085,7 @@ msgstr "Обязательное указание серии" #: frappe/website/doctype/web_template/web_template.json #: frappe/website/doctype/website_settings/website_settings.json msgid "Navbar" -msgstr "" +msgstr "Навбар" #. Name of a DocType #: frappe/core/doctype/navbar_item/navbar_item.json @@ -17102,13 +17104,13 @@ msgstr "Настройки панели навигации" #. 'Website Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Navbar Template" -msgstr "" +msgstr "Шаблон панели навигации" #. Label of the navbar_template_values (Code) field in DocType 'Website #. Settings' #: frappe/website/doctype/website_settings/website_settings.json msgid "Navbar Template Values" -msgstr "" +msgstr "Значения шаблона панели навигации" #: frappe/public/js/frappe/list/list_view.js:1406 msgctxt "Description of a list view shortcut" @@ -17127,13 +17129,13 @@ msgstr "Перейти к основному содержанию" #. Label of the form_navigation_buttons (Check) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Navigation Buttons" -msgstr "" +msgstr "Кнопки навигации" #. Label of the navigation_settings_section (Section Break) field in DocType #. 'User' #: frappe/core/doctype/user/user.json msgid "Navigation Settings" -msgstr "" +msgstr "Настройки навигации" #: frappe/public/js/frappe/list/list_view.js:498 msgid "Need Help?" @@ -17210,7 +17212,7 @@ msgstr "Новый пользовательский формат печати" #. Label of the new_document_form (Check) field in DocType 'Form Tour' #: frappe/desk/doctype/form_tour/form_tour.json msgid "New Document Form" -msgstr "" +msgstr "Форма нового документа" #: frappe/desk/doctype/notification_log/notification_log.py:154 msgid "New Document Shared {0}" @@ -17353,7 +17355,7 @@ msgstr "Новые пользователи должны будут регист #. Setter' #: frappe/custom/doctype/property_setter/property_setter.json msgid "New value to be set" -msgstr "" +msgstr "Новое значение для установки" #: frappe/public/js/frappe/form/quick_entry.js:180 #: frappe/public/js/frappe/form/toolbar.js:47 @@ -17438,16 +17440,16 @@ msgstr "Следующие 7 дней" #. Document State' #: frappe/workflow/doctype/workflow_document_state/workflow_document_state.json msgid "Next Action Email Template" -msgstr "" +msgstr "Шаблон письма следующего действия" #: frappe/core/doctype/success_action/success_action.js:44 msgid "Next Actions" -msgstr "" +msgstr "Дальнейшие действия" #. Label of the next_actions_html (HTML) field in DocType 'Success Action' #: frappe/core/doctype/success_action/success_action.json msgid "Next Actions HTML" -msgstr "" +msgstr "Следующие действия HTML" #: frappe/public/js/frappe/form/toolbar.js:357 msgid "Next Document" @@ -17456,12 +17458,12 @@ msgstr "Следующий документ" #. Label of the next_execution (Datetime) field in DocType 'Scheduled Job Type' #: frappe/core/doctype/scheduled_job_type/scheduled_job_type.json msgid "Next Execution" -msgstr "" +msgstr "Следующее исполнение" #. Label of the next_form_tour (Link) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Next Form Tour" -msgstr "" +msgstr "Следующий тур формы" #: frappe/public/js/frappe/ui/filters/filter.js:695 msgid "Next Month" @@ -17474,7 +17476,7 @@ msgstr "Следующий квартал" #. Label of the next_schedule_date (Date) field in DocType 'Auto Repeat' #: frappe/automation/doctype/auto_repeat/auto_repeat.json msgid "Next Schedule Date" -msgstr "" +msgstr "Дата следующего расписания" #: frappe/automation/doctype/auto_repeat/auto_repeat_schedule.html:6 msgid "Next Scheduled Date" @@ -17483,19 +17485,19 @@ msgstr "Следующая запланированная дата" #. Label of the next_state (Link) field in DocType 'Workflow Transition' #: frappe/workflow/doctype/workflow_transition/workflow_transition.json msgid "Next State" -msgstr "" +msgstr "Следующий штат" #. Label of the next_step_condition (Code) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Next Step Condition" -msgstr "" +msgstr "Следующий шаг Состояние" #. Label of the next_sync_token (Password) field in DocType 'Google Calendar' #. Label of the next_sync_token (Password) field in DocType 'Google Contacts' #: frappe/integrations/doctype/google_calendar/google_calendar.json #: frappe/integrations/doctype/google_contacts/google_contacts.json msgid "Next Sync Token" -msgstr "" +msgstr "Следующий токен синхронизации" #: frappe/public/js/frappe/ui/filters/filter.js:691 msgid "Next Week" @@ -17512,7 +17514,7 @@ msgstr "Дальнейшие действия" #. Label of the next_on_click (Check) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Next on Click" -msgstr "" +msgstr "Далее по ссылке" #. Option for the 'Standard' (Select) field in DocType 'Page' #. Option for the 'Is Standard' (Select) field in DocType 'Report' @@ -17559,7 +17561,7 @@ msgstr "Нет активных сессий" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "No Copy" -msgstr "" +msgstr "Нет копии" #: frappe/core/doctype/data_export/exporter.py:163 #: frappe/email/doctype/auto_email_report/auto_email_report.py:309 @@ -17752,7 +17754,7 @@ msgstr "Нет данных для экспорта" #: frappe/public/js/frappe/views/reports/query_report.js:1543 msgid "No data to perform this action" -msgstr "" +msgstr "Нет данных для выполнения этого действия" #: frappe/contacts/doctype/address/address.py:247 msgid "No default Address Template found. Please create a new one from Setup > Printing and Branding > Address Template." @@ -17797,7 +17799,7 @@ msgstr "Никаких дальнейших записей" #: frappe/public/js/frappe/views/reports/report_view.js:337 msgid "No matching entries in the current results" -msgstr "" +msgstr "В текущих результатах нет совпадающих записей" #: frappe/templates/includes/search_template.html:49 msgid "No matching records. Search something new" @@ -17827,7 +17829,7 @@ msgstr "Количество запрошенных СМС" #. Label of the no_of_rows (Int) field in DocType 'Auto Email Report' #: frappe/email/doctype/auto_email_report/auto_email_report.json msgid "No of Rows (Max 500)" -msgstr "" +msgstr "Количество строк (максимум 500)" #. Label of the no_of_sent_sms (Int) field in DocType 'SMS Log' #: frappe/core/doctype/sms_log/sms_log.json @@ -17926,7 +17928,7 @@ msgstr "Nomatim" #: frappe/custom/doctype/custom_field/custom_field.json #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Non Negative" -msgstr "" +msgstr "Негатив" #: frappe/desk/page/setup_wizard/install_fixtures.py:33 msgid "Non-Conforming" @@ -17945,12 +17947,12 @@ msgstr "Нет: Конец рабочего процесса" #. Label of the normalized_copies (Int) field in DocType 'Recorder Query' #: frappe/core/doctype/recorder_query/recorder_query.json msgid "Normalized Copies" -msgstr "" +msgstr "Нормализованные копии" #. Label of the normalized_query (Data) field in DocType 'Recorder Query' #: frappe/core/doctype/recorder_query/recorder_query.json msgid "Normalized Query" -msgstr "" +msgstr "Нормализованный запрос" #: frappe/core/doctype/user/user.py:1075 #: frappe/templates/includes/login/login.js:253 frappe/utils/oauth.py:300 @@ -17980,7 +17982,7 @@ msgstr "Не найдено" #. Label of the not_helpful (Int) field in DocType 'Help Article' #: frappe/website/doctype/help_article/help_article.json msgid "Not Helpful" -msgstr "" +msgstr "Не полезно" #: frappe/public/js/frappe/ui/filters/filter.js:21 msgid "Not In" @@ -18149,13 +18151,13 @@ msgstr "Примечание: в некоторых часовых поясах #. Slideshow' #: frappe/website/doctype/website_slideshow/website_slideshow.json msgid "Note: For best results, images must be of the same size and width must be greater than height." -msgstr "" +msgstr "Примечание: Для достижения наилучших результатов изображения должны быть одинакового размера, а ширина должна быть больше высоты." #. Description of the 'Allow only one session per user' (Check) field in #. DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Note: Multiple sessions will be allowed in case of mobile device" -msgstr "" +msgstr "Примечание: В случае использования мобильного устройства разрешается несколько сеансов" #: frappe/core/doctype/user/user.js:397 msgid "Note: This will be shared with user." @@ -18263,37 +18265,37 @@ msgstr "Уведомления отключены" #. Account' #: frappe/email/doctype/email_account/email_account.json msgid "Notifications and bulk mails will be sent from this outgoing server." -msgstr "" +msgstr "С этого исходящего сервера будут отправляться уведомления и массовые рассылки." #. Label of the notify_on_every_login (Check) field in DocType 'Note' #: frappe/desk/doctype/note/note.json msgid "Notify Users On Every Login" -msgstr "" +msgstr "Уведомлять пользователей при каждом входе в систему" #. Label of the notify_by_email (Check) field in DocType 'Auto Repeat' #: frappe/automation/doctype/auto_repeat/auto_repeat.json msgid "Notify by Email" -msgstr "" +msgstr "Уведомить по электронной почте" #. Label of the notify_by_email (Check) field in DocType 'DocShare' #: frappe/core/doctype/docshare/docshare.json msgid "Notify by email" -msgstr "" +msgstr "Уведомить по электронной почте" #. Label of the notify_if_unreplied (Check) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Notify if unreplied" -msgstr "" +msgstr "Уведомить, если ответ не получен" #. Label of the unreplied_for_mins (Int) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Notify if unreplied for (in mins)" -msgstr "" +msgstr "Уведомлять, если не получен ответ (в минутах)" #. Label of the notify_on_login (Check) field in DocType 'Note' #: frappe/desk/doctype/note/note.json msgid "Notify users with a popup when they log in" -msgstr "" +msgstr "Уведомление пользователей с помощью всплывающего окна при входе в систему" #: frappe/public/js/frappe/form/controls/datetime.js:28 #: frappe/public/js/frappe/form/controls/time.js:37 @@ -18303,7 +18305,7 @@ msgstr "Сейчас" #. Label of the phone (Data) field in DocType 'Contact Phone' #: frappe/contacts/doctype/contact_phone/contact_phone.json msgid "Number" -msgstr "" +msgstr "Номер" #. Name of a DocType #: frappe/desk/doctype/number_card/number_card.json @@ -18320,7 +18322,7 @@ msgstr "Ссылка на номер карты" #. Card' #: frappe/desk/doctype/workspace_number_card/workspace_number_card.json msgid "Number Card Name" -msgstr "" +msgstr "Номер Название карты" #. Label of the number_cards_tab (Tab Break) field in DocType 'Workspace' #. Label of the number_cards (Table) field in DocType 'Workspace' @@ -18336,22 +18338,22 @@ msgstr "Номер карт" #: frappe/core/doctype/system_settings/system_settings.json #: frappe/geo/doctype/currency/currency.json msgid "Number Format" -msgstr "" +msgstr "Формат номера" #. Label of the backup_limit (Int) field in DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Number of Backups" -msgstr "" +msgstr "Количество резервных копий" #. Label of the number_of_groups (Int) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json msgid "Number of Groups" -msgstr "" +msgstr "Количество групп" #. Label of the number_of_queries (Int) field in DocType 'Recorder' #: frappe/core/doctype/recorder/recorder.json msgid "Number of Queries" -msgstr "" +msgstr "Количество запросов" #: frappe/core/doctype/doctype/doctype.py:444 #: frappe/public/js/frappe/doctype/index.js:66 @@ -18365,20 +18367,20 @@ msgstr "Количество резервных копий должно быть #. Description of the 'Columns' (Int) field in DocType 'Customize Form Field' #: frappe/custom/doctype/customize_form_field/customize_form_field.json msgid "Number of columns for a field in a Grid (Total Columns in a grid should be less than 11)" -msgstr "" +msgstr "Количество столбцов для поля в сетке (общее количество столбцов в сетке не должно превышать 11)" #. Description of the 'Columns' (Int) field in DocType 'DocField' #. Description of the 'Columns' (Int) field in DocType 'Custom Field' #: frappe/core/doctype/docfield/docfield.json #: frappe/custom/doctype/custom_field/custom_field.json msgid "Number of columns for a field in a List View or a Grid (Total Columns should be less than 11)" -msgstr "" +msgstr "Количество столбцов для поля в представлении списка или сетки (общее количество столбцов не должно превышать 11)" #. Description of the 'Document Share Key Expiry (in Days)' (Int) field in #. DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Number of days after which the document Web View link shared on email will be expired" -msgstr "" +msgstr "Количество дней, по истечении которых срок действия ссылки Web View документа, переданной по электронной почте, истекает" #. Label of the cache_keys (Int) field in DocType 'System Health Report' #: frappe/desk/doctype/system_health_report/system_health_report.json @@ -18417,7 +18419,7 @@ msgstr "OAuth-клиент" #. Label of the sb_00 (Section Break) field in DocType 'Google Settings' #: frappe/integrations/doctype/google_settings/google_settings.json msgid "OAuth Client ID" -msgstr "" +msgstr "Идентификатор клиента OAuth" #. Name of a DocType #: frappe/integrations/doctype/oauth_client_role/oauth_client_role.json @@ -18431,7 +18433,7 @@ msgstr "Ошибка OAuth" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/integrations.json msgid "OAuth Provider" -msgstr "" +msgstr "OAuth провайдер" #. Name of a DocType #. Label of a Link in the Integrations Workspace @@ -18457,7 +18459,7 @@ msgstr "OAuth включён, но не авторизован. Для этог #. Option for the 'Method' (Select) field in DocType 'Recorder' #: frappe/core/doctype/recorder/recorder.json msgid "OPTIONS" -msgstr "" +msgstr "ВАРИАНТЫ" #: frappe/public/js/form_builder/components/Tabs.vue:190 msgid "OR" @@ -18467,12 +18469,12 @@ msgstr "ИЛИ" #. 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "OTP App" -msgstr "" +msgstr "Приложение OTP" #. Label of the otp_issuer_name (Data) field in DocType 'System Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "OTP Issuer Name" -msgstr "" +msgstr "Имя эмитента OTP" #. Label of the otp_sms_template (Small Text) field in DocType 'System #. Settings' @@ -18511,12 +18513,12 @@ msgstr "Происшествия" #. Option for the 'SSL/TLS Mode' (Select) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "Off" -msgstr "" +msgstr "Откл" #. Option for the 'Address Type' (Select) field in DocType 'Address' #: frappe/contacts/doctype/address/address.json msgid "Office" -msgstr "" +msgstr "Офис" #. Option for the 'Social Login Provider' (Select) field in DocType 'Social #. Login Key' @@ -18531,12 +18533,12 @@ msgstr "Официальная документация" #. Label of the offset_x (Int) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Offset X" -msgstr "" +msgstr "Смещение X" #. Label of the offset_y (Int) field in DocType 'Form Tour Step' #: frappe/desk/doctype/form_tour_step/form_tour_step.json msgid "Offset Y" -msgstr "" +msgstr "Смещение Y" #: frappe/database/query.py:304 msgid "Offset must be a non-negative integer" @@ -18554,7 +18556,7 @@ msgstr "Старые и новые названия полей одинаков #. Settings' #: frappe/core/doctype/system_settings/system_settings.json msgid "Older backups will be automatically deleted" -msgstr "" +msgstr "Старые резервные копии будут автоматически удалены" #. Label of the oldest_unscheduled_job (Link) field in DocType 'System Health #. Report' @@ -18571,7 +18573,7 @@ msgstr "На удерживании" #. Option for the 'DocType Event' (Select) field in DocType 'Server Script' #: frappe/core/doctype/server_script/server_script.json msgid "On Payment Authorization" -msgstr "" +msgstr "При авторизации платежа" #. Option for the 'DocType Event' (Select) field in DocType 'Server Script' #: frappe/core/doctype/server_script/server_script.json @@ -18601,7 +18603,7 @@ msgstr "По факту оплаты" #. Description of the 'Is Dynamic URL?' (Check) field in DocType 'Webhook' #: frappe/integrations/doctype/webhook/webhook.json msgid "On checking this option, URL will be treated like a jinja template string" -msgstr "" +msgstr "При установке этой опции URL будет рассматриваться как строка шаблона jinja" #: frappe/public/js/frappe/ui/filters/filter.js:66 #: frappe/public/js/frappe/ui/filters/filter.js:72 @@ -18621,7 +18623,7 @@ msgstr "На {0}, {1} написал:" #: frappe/desk/doctype/workspace_link/workspace_link.json #: frappe/public/js/frappe/widgets/widget_dialog.js:335 msgid "Onboard" -msgstr "" +msgstr "Onboard" #: frappe/public/js/frappe/widgets/widget_dialog.js:232 msgid "Onboarding Name" @@ -18635,7 +18637,7 @@ msgstr "Разрешение на регистрацию" #. Label of the onboarding_status (Small Text) field in DocType 'User' #: frappe/core/doctype/user/user.json msgid "Onboarding Status" -msgstr "" +msgstr "Статус регистрации" #. Name of a DocType #: frappe/desk/doctype/onboarding_step/onboarding_step.json @@ -18696,11 +18698,11 @@ msgstr "Только администратору разрешено испол #. Label of the allow_edit (Link) field in DocType 'Workflow Document State' #: frappe/workflow/doctype/workflow_document_state/workflow_document_state.json msgid "Only Allow Edit For" -msgstr "" +msgstr "Разрешить редактирование только для" #: frappe/core/doctype/module_def/module_def.py:95 msgid "Only Custom Modules can be renamed." -msgstr "" +msgstr "Переименовывать можно только пользовательские модули." #: frappe/core/doctype/doctype/doctype.py:1652 msgid "Only Options allowed for Data field are:" @@ -18709,7 +18711,7 @@ msgstr "Для поля данных разрешены только следу #. Label of the data_modified_till (Int) field in DocType 'Auto Email Report' #: frappe/email/doctype/auto_email_report/auto_email_report.json msgid "Only Send Records Updated in Last X Hours" -msgstr "" +msgstr "Отправлять только записи, обновленные за последние X часов" #: frappe/core/doctype/file/file.py:168 msgid "Only System Managers can make this file public." @@ -18737,7 +18739,7 @@ msgstr "Отклонять можно только черновики докум #: frappe/desk/doctype/workspace_link/workspace_link.json #: frappe/public/js/frappe/widgets/widget_dialog.js:328 msgid "Only for" -msgstr "" +msgstr "Только для" #: frappe/core/doctype/data_export/exporter.py:193 msgid "Only mandatory fields are necessary for new records. You can delete non-mandatory columns if you wish." @@ -18816,7 +18818,7 @@ msgstr "Открыть документ" #. 'Notification Settings' #: frappe/desk/doctype/notification_settings/notification_settings.json msgid "Open Documents" -msgstr "" +msgstr "Открытые документы" #: frappe/public/js/frappe/ui/keyboard.js:243 msgid "Open Help" @@ -18826,7 +18828,7 @@ msgstr "Открыть Справку" #. Log' #: frappe/desk/doctype/notification_log/notification_log.json msgid "Open Reference Document" -msgstr "" +msgstr "Открытый справочный документ" #: frappe/public/js/frappe/ui/keyboard.js:226 msgid "Open Settings" @@ -18839,7 +18841,7 @@ msgstr "Приложения с открытым исходным кодом д #. Label of the open_in_new_tab (Check) field in DocType 'Top Bar Item' #: frappe/website/doctype/top_bar_item/top_bar_item.json msgid "Open URL in a New Tab" -msgstr "" +msgstr "Открыть URL в новой вкладке" #. Description of the 'Quick Entry' (Check) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json @@ -18893,7 +18895,7 @@ msgstr "Открыть {0}" #. Label of the openid_configuration (Data) field in DocType 'Connected App' #: frappe/integrations/doctype/connected_app/connected_app.json msgid "OpenID Configuration" -msgstr "" +msgstr "Конфигурация OpenID" #: frappe/integrations/doctype/connected_app/connected_app.js:15 msgid "OpenID Configuration fetched successfully!" @@ -18902,12 +18904,12 @@ msgstr "Конфигурация OpenID успешно получена!" #. Option for the 'Directory Server' (Select) field in DocType 'LDAP Settings' #: frappe/integrations/doctype/ldap_settings/ldap_settings.json msgid "OpenLDAP" -msgstr "" +msgstr "OpenLDAP" #. Option for the 'Delivery Status' (Select) field in DocType 'Communication' #: frappe/core/doctype/communication/communication.json msgid "Opened" -msgstr "" +msgstr "Открыт" #. Label of the operation (Select) field in DocType 'Activity Log' #: frappe/core/doctype/activity_log/activity_log.json @@ -18951,12 +18953,12 @@ msgstr "Параметр {0} для поля {1} не является доче #. Description of the 'CC' (Code) field in DocType 'Notification Recipient' #: frappe/email/doctype/notification_recipient/notification_recipient.json msgid "Optional: Always send to these ids. Each Email Address on a new row" -msgstr "" +msgstr "Необязательно: Всегда отправлять на эти адреса. Каждый адрес электронной почты в новой строке" #. Description of the 'Condition' (Code) field in DocType 'Notification' #: frappe/email/doctype/notification/notification.json msgid "Optional: The alert will be sent if this expression is true" -msgstr "" +msgstr "Необязательно: Оповещение будет отправлено, если это выражение равно true" #. Label of the options (Small Text) field in DocType 'DocField' #. Label of the options (Data) field in DocType 'Report Column' @@ -18985,7 +18987,7 @@ msgstr "Параметры поля типа «Динамическая ссыл #. Label of the options_help (HTML) field in DocType 'Custom Field' #: frappe/custom/doctype/custom_field/custom_field.json msgid "Options Help" -msgstr "" +msgstr "Помощь в выборе" #: frappe/core/doctype/doctype/doctype.py:1699 msgid "Options for Rating field can range from 3 to 10" @@ -19027,13 +19029,13 @@ msgstr "Order By должен быть строкой" #. Label of the company_history (Table) field in DocType 'About Us Settings' #: frappe/website/doctype/about_us_settings/about_us_settings.json msgid "Org History" -msgstr "" +msgstr "История организации" #. Label of the company_history_heading (Data) field in DocType 'About Us #. Settings' #: frappe/website/doctype/about_us_settings/about_us_settings.json msgid "Org History Heading" -msgstr "" +msgstr "Заголовок «История организации»" #: frappe/public/js/frappe/form/print_utils.js:22 msgid "Orientation" @@ -19721,7 +19723,7 @@ msgstr "Удалить {0} навсегда?" #: frappe/core/page/permission_manager/permission_manager_help.html:19 msgid "Permission" -msgstr "" +msgstr "Разрешение" #: frappe/core/doctype/user_type/user_type.py:84 frappe/database/query.py:1003 msgid "Permission Error" @@ -27125,7 +27127,7 @@ msgstr "" #: frappe/core/page/permission_manager/permission_manager_help.html:58 msgid "The email button is enabled for the user in the document." -msgstr "" +msgstr "Кнопка отправки электронной почты доступна пользователю в документе." #: frappe/desk/search.py:291 msgid "The field {0} in {1} does not allow ignoring user permissions" @@ -27204,7 +27206,7 @@ msgstr "Срок действия пароля вашей учетной зап #: frappe/core/page/permission_manager/permission_manager_help.html:53 msgid "The print button is enabled for the user in the document." -msgstr "" +msgstr "Кнопка печати доступна пользователю в документе." #: frappe/website/doctype/personal_data_deletion_request/personal_data_deletion_request.py:399 msgid "The process for deletion of {0} data associated with {1} has been initiated." @@ -27261,35 +27263,35 @@ msgstr "Превышен лимит общего количества типов #: frappe/core/page/permission_manager/permission_manager_help.html:43 msgid "The user can create a new Item but cannot edit existing items." -msgstr "" +msgstr "Пользователь может создавать новые товары, но не может редактировать существующие." #: frappe/core/page/permission_manager/permission_manager_help.html:48 msgid "The user can delete Draft / Cancelled documents." -msgstr "" +msgstr "Пользователь может удалять черновики/отменённые документы." #: frappe/core/page/permission_manager/permission_manager_help.html:68 msgid "The user can export report data." -msgstr "" +msgstr "Пользователь может экспортировать данные отчета." #: frappe/core/page/permission_manager/permission_manager_help.html:73 msgid "The user can import new records or update existing data for the document." -msgstr "" +msgstr "Пользователь может импортировать новые записи или обновлять существующие данные для документа." #: frappe/core/page/permission_manager/permission_manager_help.html:28 msgid "The user can select a Customer in Sales Order but cannot open the Customer master." -msgstr "" +msgstr "Пользователь может выбрать клиента в заказе на продажу, но не может открыть основные данные клиента." #: frappe/core/page/permission_manager/permission_manager_help.html:78 msgid "The user can share document access with another user." -msgstr "" +msgstr "Пользователь может предоставить доступ к документу другому пользователю." #: frappe/core/page/permission_manager/permission_manager_help.html:38 msgid "The user can update a customer or any other fields in an existing Sales Order but cannot create a new Sales Order." -msgstr "" +msgstr "Пользователь может обновлять данные клиента или любые другие поля в существующем заказе на продажу, но не может создавать новые заказы на продажу." #: frappe/core/page/permission_manager/permission_manager_help.html:33 msgid "The user can view Sales Invoices but cannot modify any field values in them." -msgstr "" +msgstr "Пользователь может просматривать счета-фактуры, но не может изменять значения полей в них." #: frappe/model/base_document.py:861 msgid "The value of the field {0} is too long in the {1} document. To resolve this issue, please reduce the value length or change the {0} field Type to Long Text using customize form, and then try again." @@ -30993,7 +30995,7 @@ msgstr "Вам запрещено отправлять электронные п #: frappe/desk/doctype/event/event.py:252 msgid "You are not allowed to update the status of this event." -msgstr "" +msgstr "Изменять статус этого события запрещено." #: frappe/website/doctype/web_form/web_form.py:634 msgid "You are not allowed to update this Web Form Document" diff --git a/frappe/locale/sr.po b/frappe/locale/sr.po index 97e1c2ff25..59a68f9ff8 100644 --- a/frappe/locale/sr.po +++ b/frappe/locale/sr.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: frappe\n" "Report-Msgid-Bugs-To: developers@frappe.io\n" "POT-Creation-Date: 2026-02-22 09:42+0000\n" -"PO-Revision-Date: 2026-02-23 22:07\n" +"PO-Revision-Date: 2026-02-26 23:27\n" "Last-Translator: developers@frappe.io\n" "Language-Team: Serbian (Cyrillic)\n" "MIME-Version: 1.0\n" @@ -1357,7 +1357,7 @@ msgstr "Додај параметре упита" #. Label of the add_reply_to_header (Check) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Add Reply-To header" -msgstr "" +msgstr "Додај заглавље адресе за одговор" #: frappe/core/doctype/user/user.py:860 msgid "Add Roles" @@ -1523,7 +1523,7 @@ msgstr "Додај на контролну таблу" #: frappe/desk/doctype/workspace/workspace.js:49 msgid "Add to Desktop" -msgstr "" +msgstr "Додај на радну површину" #: frappe/public/js/frappe/form/sidebar/assign_to.js:110 msgid "Add to ToDo" @@ -1646,7 +1646,7 @@ msgstr "Адресе и контакти" #. Account' #: frappe/email/doctype/email_account/email_account.json msgid "Addresses added here will be used as the Reply-To header for outgoing emails sent from this account." -msgstr "" +msgstr "Адресе додате овде користиће се као адреса за одговор за излазне имејлове послате са овог налога." #. Description of a DocType #: frappe/custom/doctype/client_script/client_script.json @@ -3082,7 +3082,7 @@ msgstr "Историја измена" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/users.json msgid "Audits" -msgstr "" +msgstr "Ревизије" #. Label of the auth_url_data (Code) field in DocType 'Social Login Key' #: frappe/integrations/doctype/social_login_key/social_login_key.json @@ -3516,7 +3516,7 @@ msgstr "Слика позадине" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/system.json msgid "Background Job" -msgstr "" +msgstr "Позадински задатак" #. Label of a Link in the Build Workspace #. Label of the background_jobs_section (Section Break) field in DocType @@ -4934,7 +4934,7 @@ msgstr "Кликните да поставите филтере" #: frappe/desk/page/desktop/desktop.js:1261 msgid "Click to edit" -msgstr "" +msgstr "Кликните за уређивање" #: frappe/public/js/frappe/list/list_view.js:754 msgid "Click to sort by {0}" @@ -6537,7 +6537,7 @@ msgstr "Цијан" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "DELAY" -msgstr "" +msgstr "ОДЛАГАЊЕ" #. Option for the 'Method' (Select) field in DocType 'Recorder' #. Option for the 'Request Method' (Select) field in DocType 'Webhook' @@ -7365,7 +7365,7 @@ msgstr "Статус" #. Label of the dsn_notify_type (Select) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Delivery Status Notification Type" -msgstr "" +msgstr "Врста обавештења о статусу испоруке" #. Option for the 'Sign ups' (Select) field in DocType 'Social Login Key' #: frappe/integrations/doctype/social_login_key/social_login_key.json @@ -9430,7 +9430,7 @@ msgstr "Планер омогућен" #. Label of the enabled (Check) field in DocType 'Notification Settings' #: frappe/desk/doctype/notification_settings/notification_settings.json msgid "Enabled System Notification" -msgstr "" +msgstr "Омогућено системско обавештење" #: frappe/email/doctype/email_account/email_account.py:1101 msgid "Enabled email inbox for user {0}" @@ -10128,7 +10128,7 @@ msgstr "Додатни параметри" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "FAILURE" -msgstr "" +msgstr "НЕУСПЕХ" #. Option for the 'Social Login Provider' (Select) field in DocType 'Social #. Login Key' @@ -10272,7 +10272,7 @@ msgstr "Неуспешан покушај пријаве на Frappe Cloud" #: frappe/email/doctype/email_account/email_account.py:232 msgid "Failed to retrieve the list of IMAP folders from the server. Please ensure the mailbox is accessible and the account has permission to list folders." -msgstr "" +msgstr "Неуспешно преузимање листе IMAP директоријума са сервера. Проверите да ли је поштанско сандуче доступно и да ли налог има дозволу за приказ директоријума." #: frappe/email/doctype/email_queue/email_queue.py:311 msgid "Failed to send email with subject:" @@ -11339,7 +11339,7 @@ msgstr "Јединица фракције" #. Label of a Desktop Icon #: frappe/desktop_icon/framework.json msgid "Framework" -msgstr "" +msgstr "Framework" #. Option for the 'Social Login Provider' (Select) field in DocType 'Social #. Login Key' @@ -12235,7 +12235,7 @@ msgstr "Наслов" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/system.json msgid "Health Report" -msgstr "" +msgstr "Извештај о стању система" #. Option for the 'Type' (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json @@ -12654,7 +12654,7 @@ msgstr "IMAP датотека" #: frappe/email/doctype/email_account/email_account.py:235 #: frappe/email/doctype/email_account/email_account.py:263 msgid "IMAP Folder Not Found" -msgstr "" +msgstr "IMAP директоријум није пронађен" #. Label of the ip_address (Data) field in DocType 'Activity Log' #. Label of the ip_address (Data) field in DocType 'Comment' @@ -13414,7 +13414,7 @@ msgstr "Погрешан верификациони код" #: frappe/public/js/frappe/views/gantt/gantt_view.js:88 msgid "Incorrect configuration" -msgstr "" +msgstr "Неисправна конфигурација" #: frappe/model/document.py:1733 msgid "Incorrect value in row {0}:" @@ -16979,7 +16979,7 @@ msgstr "MyISAM" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "NEVER" -msgstr "" +msgstr "НИКАДА" #: frappe/workflow/doctype/workflow/workflow.js:19 msgid "NOTE: If you add states or transitions in the table, it will be reflected in the Workflow Builder but you will have to position them manually. Also Workflow Builder is currently in BETA." @@ -17750,7 +17750,7 @@ msgstr "Нема података за извоз" #: frappe/public/js/frappe/views/reports/query_report.js:1543 msgid "No data to perform this action" -msgstr "" +msgstr "Нема података за извршавање ове радње" #: frappe/contacts/doctype/address/address.py:247 msgid "No default Address Template found. Please create a new one from Setup > Printing and Branding > Address Template." @@ -17795,7 +17795,7 @@ msgstr "Нема додатних записа" #: frappe/public/js/frappe/views/reports/report_view.js:337 msgid "No matching entries in the current results" -msgstr "" +msgstr "Нема подударних записа у тренутним резултатима" #: frappe/templates/includes/search_template.html:49 msgid "No matching records. Search something new" @@ -18429,7 +18429,7 @@ msgstr "OAuth грешка" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/integrations.json msgid "OAuth Provider" -msgstr "" +msgstr "OAuth провајдер" #. Name of a DocType #. Label of a Link in the Integrations Workspace @@ -18698,7 +18698,7 @@ msgstr "Дозволи уређивање само за" #: frappe/core/doctype/module_def/module_def.py:95 msgid "Only Custom Modules can be renamed." -msgstr "" +msgstr "Искључиво прилагођени модули могу бити преименовани." #: frappe/core/doctype/doctype/doctype.py:1652 msgid "Only Options allowed for Data field are:" @@ -19969,7 +19969,7 @@ msgstr "Молимо Вас да додате валидан коментар." #: frappe/public/js/frappe/views/reports/query_report.js:1544 msgid "Please adjust filters to include some data" -msgstr "" +msgstr "Прилагодите филтере како бисте укључили неке податке" #: frappe/core/doctype/user/user.py:1122 msgid "Please ask your administrator to verify your sign-up" @@ -20029,7 +20029,7 @@ msgstr "Молимо Вас да кликнете на следећи линк #: frappe/public/js/frappe/views/gantt/gantt_view.js:89 msgid "Please configure the start field for this Doctype in the controller file." -msgstr "" +msgstr "Молимо Вас да конфигуришете почетно поље за овај DocType у датотеци контролера." #: frappe/www/confirm_workflow_action.html:4 msgid "Please confirm your action to {0} this document." @@ -21132,7 +21132,7 @@ msgstr "Љубичасто" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/integrations.json msgid "Push Notification" -msgstr "" +msgstr "Push обавештење" #. Name of a DocType #. Label of a Link in the Integrations Workspace @@ -22225,16 +22225,16 @@ msgstr "Одговори свима" #. Name of a DocType #: frappe/email/doctype/reply_to_address/reply_to_address.json msgid "Reply To Address" -msgstr "" +msgstr "Адреса за одговор" #: frappe/email/doctype/email_account/email_account.py:278 msgid "Reply To email is required" -msgstr "" +msgstr "Адреса за одговор је обавезна" #. Label of the reply_to_addresses (Table) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Reply-To Addresses" -msgstr "" +msgstr "Адреса за одговор" #. Label of the report (Check) field in DocType 'Custom DocPerm' #. Label of the report (Link) field in DocType 'Custom Role' @@ -23276,19 +23276,19 @@ msgstr "SSL/TLS режим" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "SUCCESS" -msgstr "" +msgstr "УСПЕХ" #. Option for the 'Delivery Status Notification Type' (Select) field in DocType #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "SUCCESS,FAILURE" -msgstr "" +msgstr "УСПЕХ, НЕУСПЕХ" #. Option for the 'Delivery Status Notification Type' (Select) field in DocType #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "SUCCESS,FAILURE,DELAY" -msgstr "" +msgstr "УСПЕХ, НЕУСПЕХ, ОДЛАГАЊЕ" #: frappe/public/js/frappe/color_picker/color_picker.js:20 msgid "SWATCHES" @@ -24115,7 +24115,7 @@ msgstr "Изабери две верзије за приказ разлика." #. DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Select which delivery events should trigger a delivery status notification (DSN) from the SMTP server." -msgstr "" +msgstr "Изаберите који догађаји испоруке треба да покрену обавештење о статусу испоруке (DNS) са SMTP сервера." #: frappe/public/js/frappe/form/link_selector.js:24 #: frappe/public/js/frappe/form/multi_select_dialog.js:80 @@ -27098,7 +27098,7 @@ msgstr "Коментар не може бити празан" #: frappe/email/doctype/email_account/email_account.py:290 msgid "The configured SMTP server does not support DSN (Delivery Status Notification)." -msgstr "" +msgstr "Конфигурисани SMTP сервер не подржава DNS (обавештење о статусу испоруке)." #: frappe/templates/emails/workflow_action.html:9 msgid "The contents of this email are strictly confidential. Please do not forward this email to anyone." @@ -27160,7 +27160,7 @@ msgstr "Следећа скрипта заглавља ће додати тре #: frappe/email/doctype/email_account/email_account.py:257 msgid "The following configured IMAP folder(s) were not found on the server:
Please verify the folder names exactly as they appear on the server (folder names are case-sensitive)." -msgstr "" +msgstr "Следећи конфигурисани IMAP директоријуми нису пронађени на серверу:
Молимо Вас да проверите називе директоријума тачно онако како су приказани на серверу (велика и мала слова су битна за називе датотека)." #: frappe/core/doctype/data_import/importer.py:1092 msgid "The following values are invalid: {0}. Values must be one of {1}" @@ -27252,7 +27252,7 @@ msgstr "Изабрани документ {0} није {1}." #: frappe/email/doctype/email_account/email_account.py:247 msgid "The server did not return any IMAP folders for this account." -msgstr "" +msgstr "Сервер није вратио ниједан IMAP директоријум за овај налог." #: frappe/utils/response.py:343 msgid "The system is being updated. Please refresh again after a few moments." @@ -29089,7 +29089,7 @@ msgstr "Отпреми" #: frappe/public/js/frappe/file_uploader/FileUploader.vue:663 msgid "Upload Failed" -msgstr "" +msgstr "Отпремање је неуспешно" #: frappe/public/js/print_format_builder/LetterHeadEditor.vue:93 msgid "Upload Image" @@ -30783,7 +30783,7 @@ msgstr "Ставка бочне траке радног простора" #: frappe/desk/doctype/workspace/workspace.js:58 msgid "Workspace added to desktop" -msgstr "" +msgstr "Радни простор је додат на радну површину" #: frappe/public/js/frappe/views/workspace/workspace.js:558 msgid "Workspace {0} created" @@ -31698,7 +31698,7 @@ msgstr "нпр. \"Подршка\", \"Продаја\", \"Петар Петро #: frappe/public/js/frappe/ui/toolbar/awesome_bar.js:230 msgid "e.g. (55 + 434) / 4" -msgstr "" +msgstr "на пример (55 + 434) / 4" #. Description of the 'Incoming Server' (Data) field in DocType 'Email Account' #. Description of the 'Incoming Server' (Data) field in DocType 'Email Domain' @@ -32860,7 +32860,7 @@ msgstr "{0} од {1} ({2} редова са зависним подацима)" #: frappe/public/js/frappe/views/reports/report_view.js:456 msgid "{0} of {1} records match (filtered on visible rows only)" -msgstr "" +msgstr "{0} од {1} записа одговара критеријуму (филтрирано само по видљивим редовима)" #: frappe/utils/data.py:1571 msgctxt "Money in words" diff --git a/frappe/locale/sr_CS.po b/frappe/locale/sr_CS.po index 615d2f479f..48c4216803 100644 --- a/frappe/locale/sr_CS.po +++ b/frappe/locale/sr_CS.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: frappe\n" "Report-Msgid-Bugs-To: developers@frappe.io\n" "POT-Creation-Date: 2026-02-22 09:42+0000\n" -"PO-Revision-Date: 2026-02-23 22:07\n" +"PO-Revision-Date: 2026-02-26 23:27\n" "Last-Translator: developers@frappe.io\n" "Language-Team: Serbian (Latin)\n" "MIME-Version: 1.0\n" @@ -1358,7 +1358,7 @@ msgstr "Dodaj parametre upita" #. Label of the add_reply_to_header (Check) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Add Reply-To header" -msgstr "" +msgstr "Dodaj zaglavlje adrese za odgovor" #: frappe/core/doctype/user/user.py:860 msgid "Add Roles" @@ -1524,7 +1524,7 @@ msgstr "Dodaj na kontrolnu tablu" #: frappe/desk/doctype/workspace/workspace.js:49 msgid "Add to Desktop" -msgstr "" +msgstr "Dodaj na radnu površinu" #: frappe/public/js/frappe/form/sidebar/assign_to.js:110 msgid "Add to ToDo" @@ -1647,7 +1647,7 @@ msgstr "Adrese i kontakti" #. Account' #: frappe/email/doctype/email_account/email_account.json msgid "Addresses added here will be used as the Reply-To header for outgoing emails sent from this account." -msgstr "" +msgstr "Adrese dodate ovde koristiće se kao adresa za odgovor za izlazne imejlove poslate sa ovog naloga." #. Description of a DocType #: frappe/custom/doctype/client_script/client_script.json @@ -3083,7 +3083,7 @@ msgstr "Istorija izmena" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/users.json msgid "Audits" -msgstr "" +msgstr "Revizije" #. Label of the auth_url_data (Code) field in DocType 'Social Login Key' #: frappe/integrations/doctype/social_login_key/social_login_key.json @@ -3517,7 +3517,7 @@ msgstr "Slika pozadine" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/system.json msgid "Background Job" -msgstr "" +msgstr "Pozadinski zadatak" #. Label of a Link in the Build Workspace #. Label of the background_jobs_section (Section Break) field in DocType @@ -4935,7 +4935,7 @@ msgstr "Kliknite da postavite filtere" #: frappe/desk/page/desktop/desktop.js:1261 msgid "Click to edit" -msgstr "" +msgstr "Kliknite za uređivanje" #: frappe/public/js/frappe/list/list_view.js:754 msgid "Click to sort by {0}" @@ -6538,7 +6538,7 @@ msgstr "Cijan" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "DELAY" -msgstr "" +msgstr "ODLAGANJE" #. Option for the 'Method' (Select) field in DocType 'Recorder' #. Option for the 'Request Method' (Select) field in DocType 'Webhook' @@ -7366,7 +7366,7 @@ msgstr "Status" #. Label of the dsn_notify_type (Select) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Delivery Status Notification Type" -msgstr "" +msgstr "Vrsta obaveštenja o statusu isporuke" #. Option for the 'Sign ups' (Select) field in DocType 'Social Login Key' #: frappe/integrations/doctype/social_login_key/social_login_key.json @@ -9431,7 +9431,7 @@ msgstr "Planer omogućen" #. Label of the enabled (Check) field in DocType 'Notification Settings' #: frappe/desk/doctype/notification_settings/notification_settings.json msgid "Enabled System Notification" -msgstr "" +msgstr "Omogućeno sistemsko obaveštenje" #: frappe/email/doctype/email_account/email_account.py:1101 msgid "Enabled email inbox for user {0}" @@ -10129,7 +10129,7 @@ msgstr "Dodatni parametri" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "FAILURE" -msgstr "" +msgstr "NEUSPEH" #. Option for the 'Social Login Provider' (Select) field in DocType 'Social #. Login Key' @@ -10273,7 +10273,7 @@ msgstr "Neuspešan pokušaj prijave na Frappe Cloud" #: frappe/email/doctype/email_account/email_account.py:232 msgid "Failed to retrieve the list of IMAP folders from the server. Please ensure the mailbox is accessible and the account has permission to list folders." -msgstr "" +msgstr "Neuspešno preuzimanje liste IMAP direktorijuma sa servera. Proverite da li je poštansko sanduče dostupno i da li nalog ima dozvolu za prikaz direktorijuma." #: frappe/email/doctype/email_queue/email_queue.py:311 msgid "Failed to send email with subject:" @@ -11340,7 +11340,7 @@ msgstr "Jedinica frakcije" #. Label of a Desktop Icon #: frappe/desktop_icon/framework.json msgid "Framework" -msgstr "" +msgstr "Framework" #. Option for the 'Social Login Provider' (Select) field in DocType 'Social #. Login Key' @@ -12236,7 +12236,7 @@ msgstr "Naslov" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/system.json msgid "Health Report" -msgstr "" +msgstr "Izveštaj o stanju sistema" #. Option for the 'Type' (Select) field in DocType 'Dashboard Chart' #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json @@ -12655,7 +12655,7 @@ msgstr "IMAP datoteka" #: frappe/email/doctype/email_account/email_account.py:235 #: frappe/email/doctype/email_account/email_account.py:263 msgid "IMAP Folder Not Found" -msgstr "" +msgstr "IMAP direktorijum nije pronađen" #. Label of the ip_address (Data) field in DocType 'Activity Log' #. Label of the ip_address (Data) field in DocType 'Comment' @@ -13415,7 +13415,7 @@ msgstr "Pogrešan verifikacioni kod" #: frappe/public/js/frappe/views/gantt/gantt_view.js:88 msgid "Incorrect configuration" -msgstr "" +msgstr "Neispravna konfiguracija" #: frappe/model/document.py:1733 msgid "Incorrect value in row {0}:" @@ -16980,7 +16980,7 @@ msgstr "MyISAM" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "NEVER" -msgstr "" +msgstr "NIKADA" #: frappe/workflow/doctype/workflow/workflow.js:19 msgid "NOTE: If you add states or transitions in the table, it will be reflected in the Workflow Builder but you will have to position them manually. Also Workflow Builder is currently in BETA." @@ -17751,7 +17751,7 @@ msgstr "Nema podataka za izvoz" #: frappe/public/js/frappe/views/reports/query_report.js:1543 msgid "No data to perform this action" -msgstr "" +msgstr "Nema podataka za izvršavanje ove radnje" #: frappe/contacts/doctype/address/address.py:247 msgid "No default Address Template found. Please create a new one from Setup > Printing and Branding > Address Template." @@ -17796,7 +17796,7 @@ msgstr "Nema dodatnih zapisa" #: frappe/public/js/frappe/views/reports/report_view.js:337 msgid "No matching entries in the current results" -msgstr "" +msgstr "Nema podudarnih zapisa u trenutnim rezultatima" #: frappe/templates/includes/search_template.html:49 msgid "No matching records. Search something new" @@ -18430,7 +18430,7 @@ msgstr "OAuth greška" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/integrations.json msgid "OAuth Provider" -msgstr "" +msgstr "OAuth provajder" #. Name of a DocType #. Label of a Link in the Integrations Workspace @@ -18699,7 +18699,7 @@ msgstr "Dozvoli uređivanje samo za" #: frappe/core/doctype/module_def/module_def.py:95 msgid "Only Custom Modules can be renamed." -msgstr "" +msgstr "Isključivo prilagođeni moduli mogu biti preimenovani." #: frappe/core/doctype/doctype/doctype.py:1652 msgid "Only Options allowed for Data field are:" @@ -19970,7 +19970,7 @@ msgstr "Molimo Vas da dodate validan komentar." #: frappe/public/js/frappe/views/reports/query_report.js:1544 msgid "Please adjust filters to include some data" -msgstr "" +msgstr "Prilagodite filtere kako biste uključili neke podatke" #: frappe/core/doctype/user/user.py:1122 msgid "Please ask your administrator to verify your sign-up" @@ -20030,7 +20030,7 @@ msgstr "Molimo Vas da kliknete na sledeći link da biste postavili novu lozinku" #: frappe/public/js/frappe/views/gantt/gantt_view.js:89 msgid "Please configure the start field for this Doctype in the controller file." -msgstr "" +msgstr "Molimo Vas da konfigurišete početno polje za ovaj DocType u datoteci kontrolera." #: frappe/www/confirm_workflow_action.html:4 msgid "Please confirm your action to {0} this document." @@ -21133,7 +21133,7 @@ msgstr "Ljubičasto" #. Label of a Workspace Sidebar Item #: frappe/workspace_sidebar/integrations.json msgid "Push Notification" -msgstr "" +msgstr "Push obaveštenje" #. Name of a DocType #. Label of a Link in the Integrations Workspace @@ -22226,16 +22226,16 @@ msgstr "Odgovori svima" #. Name of a DocType #: frappe/email/doctype/reply_to_address/reply_to_address.json msgid "Reply To Address" -msgstr "" +msgstr "Adresa za odgovor" #: frappe/email/doctype/email_account/email_account.py:278 msgid "Reply To email is required" -msgstr "" +msgstr "Adresa za odgovor je obavezna" #. Label of the reply_to_addresses (Table) field in DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Reply-To Addresses" -msgstr "" +msgstr "Adrese za odgovor" #. Label of the report (Check) field in DocType 'Custom DocPerm' #. Label of the report (Link) field in DocType 'Custom Role' @@ -23277,19 +23277,19 @@ msgstr "SSL/TLS režim" #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "SUCCESS" -msgstr "" +msgstr "USPEH" #. Option for the 'Delivery Status Notification Type' (Select) field in DocType #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "SUCCESS,FAILURE" -msgstr "" +msgstr "USPEH, NEUSPEH" #. Option for the 'Delivery Status Notification Type' (Select) field in DocType #. 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "SUCCESS,FAILURE,DELAY" -msgstr "" +msgstr "USPEH, NEUSPEH, ODLAGANJE" #: frappe/public/js/frappe/color_picker/color_picker.js:20 msgid "SWATCHES" @@ -24116,7 +24116,7 @@ msgstr "Izaberi dve verzije za prikaz razlika." #. DocType 'Email Account' #: frappe/email/doctype/email_account/email_account.json msgid "Select which delivery events should trigger a delivery status notification (DSN) from the SMTP server." -msgstr "" +msgstr "Izaberite koji događaji isporuke treba da pokrenu obaveštenje o statusu isporuke (DNS) sa SMTP servera." #: frappe/public/js/frappe/form/link_selector.js:24 #: frappe/public/js/frappe/form/multi_select_dialog.js:80 @@ -27099,7 +27099,7 @@ msgstr "Komentar ne može biti prazan" #: frappe/email/doctype/email_account/email_account.py:290 msgid "The configured SMTP server does not support DSN (Delivery Status Notification)." -msgstr "" +msgstr "Konfigurisani SMTP server ne podržava DSN (obaveštenje o statusu isporuke)." #: frappe/templates/emails/workflow_action.html:9 msgid "The contents of this email are strictly confidential. Please do not forward this email to anyone." @@ -27161,7 +27161,7 @@ msgstr "Sledeća skripta zaglavlja će dodati trenutni datum u element klase 'he #: frappe/email/doctype/email_account/email_account.py:257 msgid "The following configured IMAP folder(s) were not found on the server:
Please verify the folder names exactly as they appear on the server (folder names are case-sensitive)." -msgstr "" +msgstr "Sledeći konfigurisani IMAP direktorijumi nisu pronađeni na serveru:
Molimo Vas da proverite nazive direktorijuma tačno onako kako su prikazani na serveru (velika i mala slova su bitna za nazive datoteka)." #: frappe/core/doctype/data_import/importer.py:1092 msgid "The following values are invalid: {0}. Values must be one of {1}" @@ -27253,7 +27253,7 @@ msgstr "Izabrani dokument {0} nije {1}." #: frappe/email/doctype/email_account/email_account.py:247 msgid "The server did not return any IMAP folders for this account." -msgstr "" +msgstr "Server nije vratio nijedan IMAP direktorijum za ovaj nalog." #: frappe/utils/response.py:343 msgid "The system is being updated. Please refresh again after a few moments." @@ -29089,7 +29089,7 @@ msgstr "Otpremi" #: frappe/public/js/frappe/file_uploader/FileUploader.vue:663 msgid "Upload Failed" -msgstr "" +msgstr "Otpremanje je neuspešno" #: frappe/public/js/print_format_builder/LetterHeadEditor.vue:93 msgid "Upload Image" @@ -30783,7 +30783,7 @@ msgstr "Stavka bočne trake radnog prostora" #: frappe/desk/doctype/workspace/workspace.js:58 msgid "Workspace added to desktop" -msgstr "" +msgstr "Radni prostor je dodat na radnu površinu" #: frappe/public/js/frappe/views/workspace/workspace.js:558 msgid "Workspace {0} created" @@ -31698,7 +31698,7 @@ msgstr "npr. \"Podrška\", \"Prodaja\", \"Petar Petrović\"" #: frappe/public/js/frappe/ui/toolbar/awesome_bar.js:230 msgid "e.g. (55 + 434) / 4" -msgstr "" +msgstr "na primer (55 + 434) / 4" #. Description of the 'Incoming Server' (Data) field in DocType 'Email Account' #. Description of the 'Incoming Server' (Data) field in DocType 'Email Domain' @@ -32860,7 +32860,7 @@ msgstr "{0} od {1} ({2} redova sa zavisnim podacima)" #: frappe/public/js/frappe/views/reports/report_view.js:456 msgid "{0} of {1} records match (filtered on visible rows only)" -msgstr "" +msgstr "{0} od {1} zapisa odgovara kriterijumu (filtrirano samo po vidljivim redovima)" #: frappe/utils/data.py:1571 msgctxt "Money in words" diff --git a/frappe/locale/sv.po b/frappe/locale/sv.po index 0b77050332..0c59bead59 100644 --- a/frappe/locale/sv.po +++ b/frappe/locale/sv.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: frappe\n" "Report-Msgid-Bugs-To: developers@frappe.io\n" "POT-Creation-Date: 2026-02-22 09:42+0000\n" -"PO-Revision-Date: 2026-02-23 22:07\n" +"PO-Revision-Date: 2026-02-28 23:51\n" "Last-Translator: developers@frappe.io\n" "Language-Team: Swedish\n" "MIME-Version: 1.0\n" @@ -2868,7 +2868,7 @@ msgstr "Tilldelning Klar" #. Label of the assignment_days (Table) field in DocType 'Assignment Rule' #: frappe/automation/doctype/assignment_rule/assignment_rule.json msgid "Assignment Days" -msgstr "Automation Dagar" +msgstr "Tilldelning Dagar" #. Name of a DocType #. Label of the assignment_rule (Link) field in DocType 'ToDo' @@ -2876,7 +2876,7 @@ msgstr "Automation Dagar" #: frappe/automation/doctype/assignment_rule/assignment_rule.json #: frappe/desk/doctype/todo/todo.json frappe/workspace_sidebar/automation.json msgid "Assignment Rule" -msgstr "Automation Regel" +msgstr "Tilldelning Regel" #. Name of a DocType #: frappe/automation/doctype/assignment_rule_day/assignment_rule_day.json @@ -2890,13 +2890,13 @@ msgstr "Automation Regel Användare" #: frappe/automation/doctype/assignment_rule/assignment_rule.py:55 msgid "Assignment Rule is not allowed on document type {0}" -msgstr "Automation Regel är ej tillåten på dokument typ {0}" +msgstr "Tilldelning Regel är ej tillåten på dokument typ {0}" #. Label of the assignment_rules_section (Section Break) field in DocType #. 'Assignment Rule' #: frappe/automation/doctype/assignment_rule/assignment_rule.json msgid "Assignment Rules" -msgstr "Automation Regler" +msgstr "Tilldelning Regler" #: frappe/desk/doctype/notification_log/notification_log.py:153 msgid "Assignment Update on {0}" @@ -8565,7 +8565,7 @@ msgstr "Förfallo Datum" #. Label of the due_date_based_on (Select) field in DocType 'Assignment Rule' #: frappe/automation/doctype/assignment_rule/assignment_rule.json msgid "Due Date Based On" -msgstr "Förfallo Datum Baserad På" +msgstr "Förfallodatum baserat på" #: frappe/public/js/frappe/form/grid_row_form.js:44 #: frappe/public/js/frappe/form/toolbar.js:445 @@ -9859,7 +9859,7 @@ msgstr "Exempel: Anges detta till 24:00 loggas användare ut om de inte är akti #. Rule' #: frappe/automation/doctype/assignment_rule/assignment_rule.json msgid "Example: {{ subject }}" -msgstr "Exempel: {{subject}}" +msgstr "Exempel: {{ subject }}" #. Option for the 'File Type' (Select) field in DocType 'Data Export' #: frappe/core/doctype/data_export/data_export.json @@ -11577,7 +11577,7 @@ msgstr "Könsartad" #: frappe/www/contact.html:29 msgid "General" -msgstr "Allmän" +msgstr "Allmänt" #. Label of the generate_keys (Button) field in DocType 'User' #: frappe/core/doctype/user/user.json @@ -14260,7 +14260,7 @@ msgstr "Är Privat" #: frappe/desk/doctype/dashboard_chart/dashboard_chart.json #: frappe/desk/doctype/number_card/number_card.json msgid "Is Public" -msgstr "Är Allmän" +msgstr "Är Publik" #. Label of the is_published_field (Data) field in DocType 'DocType' #: frappe/core/doctype/doctype/doctype.json @@ -15978,7 +15978,7 @@ msgstr "Skapa {0}" #: frappe/website/doctype/web_page/web_page.js:77 msgid "Makes the page public" -msgstr "Allmän Sida" +msgstr "Publik Sida" #: frappe/desk/page/setup_wizard/install_fixtures.py:28 msgid "Male" @@ -21025,17 +21025,17 @@ msgstr "Leverantör Namn" #: frappe/public/js/frappe/views/interaction.js:78 #: frappe/public/js/frappe/views/workspace/workspace.js:458 msgid "Public" -msgstr "Allmän" +msgstr "Publik" #. Label of the public_files_size (Float) field in DocType 'System Health #. Report' #: frappe/desk/doctype/system_health_report/system_health_report.json msgid "Public Files (MB)" -msgstr "Allmänna Filer (MB)" +msgstr "Publika Filer (MB)" #: frappe/templates/emails/file_backup_notification.html:5 msgid "Public Files Backup:" -msgstr "Allmänna Filer Säkerhetskopiering:" +msgstr "Publika Filer Säkerhetskopiering:" #. Label of the publish (Check) field in DocType 'Package Release' #: frappe/core/doctype/package_release/package_release.json @@ -27569,7 +27569,7 @@ msgstr "Den här filen är offentlig och kan nås av vem som helst, även utan a #: frappe/core/doctype/file/file.js:22 msgid "This file is public. It can be accessed without authentication." -msgstr "Denna fil är allmän fil. Den kan nås utan autentisering." +msgstr "Denna fil är publik. Den kan nås utan autentisering." #: frappe/public/js/frappe/form/form.js:1248 msgid "This form has been modified after you have loaded it" @@ -29789,7 +29789,7 @@ msgstr "Värde måste vara ett av {0}" #. 'OAuth Client' #: frappe/integrations/doctype/oauth_client/oauth_client.json msgid "Value of \"None\" implies a public client. In such a case Client Secret is not given to the client and token exchange makes use of PKCE." -msgstr "Värdet \"None\" innebär allmän klient. I ett sådant fall ges inte Klient Hemlighet till klient och token utbyte använder PKCE." +msgstr "Värdet \"None\" innebär publik klient. I ett sådant fall ges inte Klient Hemlighet till klient och token utbyte använder PKCE." #. Label of the value_to_validate (Data) field in DocType 'Onboarding Step' #: frappe/desk/doctype/onboarding_step/onboarding_step.json @@ -31299,7 +31299,7 @@ msgstr "Du behöver '{0}' behörighet på {1} {2} för att utföra denna åtgär #: frappe/desk/doctype/workspace/workspace.py:132 #: frappe/desk/doctype/workspace_sidebar/workspace_sidebar.py:74 msgid "You need to be Workspace Manager to delete a public workspace." -msgstr "Du måste vara Arbetsyta Ansvarig för att ta bort allmän arbetsyta." +msgstr "Du måste vara Arbetsyta Ansvarig för att ta bort publik arbetsyta." #: frappe/desk/doctype/workspace/workspace.py:78 msgid "You need to be Workspace Manager to edit this document" diff --git a/frappe/model/meta.py b/frappe/model/meta.py index add084d38e..3dc3181dac 100644 --- a/frappe/model/meta.py +++ b/frappe/model/meta.py @@ -894,6 +894,12 @@ def get_field_currency(df, doc=None): if frappe.get_meta(doc.parenttype).has_field(df.get("options")): # only get_value if parent has currency field currency = frappe.db.get_value(doc.parenttype, doc.parent, df.get("options")) + if not currency: + # Parent may not be in DB yet (new document being saved). + # Use the in-memory parent document reference if available. + parent = getattr(doc, "parent_doc", None) + if parent: + currency = parent.get(df.get("options")) if currency: frappe.local.field_currency.setdefault((doc.doctype, ref_docname), frappe._dict()).setdefault( diff --git a/frappe/model/rename_doc.py b/frappe/model/rename_doc.py index 5e1f6e4276..95758ba51d 100644 --- a/frappe/model/rename_doc.py +++ b/frappe/model/rename_doc.py @@ -5,10 +5,10 @@ from typing import TYPE_CHECKING import frappe import frappe.permissions -from frappe import _, bold +from frappe import _, bold, scrub from frappe.model.document import Document from frappe.model.dynamic_links import get_dynamic_link_map -from frappe.model.naming import validate_name +from frappe.model.naming import is_autoincremented, validate_name from frappe.model.utils.user_settings import sync_user_settings, update_user_settings_data from frappe.query_builder import Field from frappe.utils.data import cint, cstr, sbool @@ -412,6 +412,11 @@ def rename_doctype(doctype: str, old: str, new: str) -> None: # change parenttype for fieldtype Table update_parenttype_values(old, new) + # if autoincrement is enabled, update sequence name + meta = frappe.get_meta(new) + if is_autoincremented(new, meta): + update_sequence_name(old, new) + def update_child_docs(old: str, new: str, meta: "Meta") -> None: # update "parent" @@ -656,6 +661,15 @@ def update_parenttype_values(old: str, new: str): frappe.qb.update(table).set(table.parenttype, new).where(table.parenttype == old).run() +def update_sequence_name(old: str, new: str, slug: str = "_id_seq"): + old_sequence_name = scrub(old + slug) + new_sequence_name = scrub(new + slug) + if frappe.db.db_type == "mariadb": + frappe.db.sql_ddl(f"RENAME TABLE `{old_sequence_name}` TO `{new_sequence_name}`") + else: + frappe.db.sql_ddl(f'ALTER SEQUENCE "{old_sequence_name}" RENAME TO "{new_sequence_name}"') + + def rename_dynamic_links(doctype: str, old: str, new: str): Singles = frappe.qb.DocType("Singles") for df in get_dynamic_link_map().get(doctype, []): diff --git a/frappe/parallel_test_runner.py b/frappe/parallel_test_runner.py index 7f57e54618..d879241e33 100644 --- a/frappe/parallel_test_runner.py +++ b/frappe/parallel_test_runner.py @@ -29,13 +29,16 @@ TEST_WEIGHT_OVERRIDES = { class ParallelTestRunner: - def __init__(self, app, site, build_number=1, total_builds=1, dry_run=False, lightmode=False): + def __init__( + self, app, site, build_number=1, total_builds=1, dry_run=False, lightmode=False, failfast=False + ): self.app = app self.site = site self.build_number = frappe.utils.cint(build_number) or 1 self.total_builds = frappe.utils.cint(total_builds) self.dry_run = dry_run self.lightmode = lightmode + self.failfast = failfast self.test_file_list = [] self.total_test_weight = 0 self.test_result = None @@ -81,7 +84,9 @@ class ParallelTestRunner: self.total_test_weight = sum(self.get_test_weight(test) for test in self.test_file_list) def run_tests(self): - self.test_result = TestResult(stream=sys.stderr, descriptions=True, verbosity=2) + self.test_result = TestResult( + stream=sys.stderr, descriptions=True, verbosity=2, failfast=self.failfast + ) for test_file_info in self.test_file_list: self.run_tests_for_file(test_file_info) diff --git a/frappe/printing/doctype/letter_head/letter_head.json b/frappe/printing/doctype/letter_head/letter_head.json index 4ddafc47db..aa40d0a751 100644 --- a/frappe/printing/doctype/letter_head/letter_head.json +++ b/frappe/printing/doctype/letter_head/letter_head.json @@ -127,12 +127,12 @@ { "fieldname": "image_height", "fieldtype": "Float", - "label": "Image Height" + "label": "Image Height (px)" }, { "fieldname": "image_width", "fieldtype": "Float", - "label": "Image Width" + "label": "Image Width (px)" }, { "depends_on": "eval:doc.footer_source==='Image' && doc.letter_head_name", @@ -148,12 +148,12 @@ { "fieldname": "footer_image_height", "fieldtype": "Float", - "label": "Image Height" + "label": "Image Height (px)" }, { "fieldname": "footer_image_width", "fieldtype": "Float", - "label": "Image Width" + "label": "Image Width (px)" }, { "fieldname": "footer_align", @@ -203,7 +203,7 @@ "links": [], "make_attachments_public": 1, "max_attachments": 3, - "modified": "2026-02-24 20:53:14.297567", + "modified": "2026-02-25 14:37:57.061516", "modified_by": "Administrator", "module": "Printing", "name": "Letter Head", diff --git a/frappe/printing/page/print_format_builder/print_format_builder.js b/frappe/printing/page/print_format_builder/print_format_builder.js index bae82ba040..a40101ba87 100644 --- a/frappe/printing/page/print_format_builder/print_format_builder.js +++ b/frappe/printing/page/print_format_builder/print_format_builder.js @@ -35,6 +35,7 @@ frappe.PrintFormatBuilder = class PrintFormatBuilder { this.show_start(); } else { this.page.set_title(this.print_format.name); + this.page.sidebar.toggle(true); this.setup_print_format(); } } @@ -65,6 +66,7 @@ frappe.PrintFormatBuilder = class PrintFormatBuilder { this.page.main.html(frappe.render_template("print_format_builder_start", {})); this.page.clear_actions(); this.page.set_title(__("Print Format Builder")); + this.page.sidebar.toggle(false); this.start_edit_print_format(); this.start_new_print_format(); } diff --git a/frappe/public/js/billing.bundle.js b/frappe/public/js/billing.bundle.js index c9bf512844..be249d877b 100644 --- a/frappe/public/js/billing.bundle.js +++ b/frappe/public/js/billing.bundle.js @@ -33,7 +33,14 @@ $(document).ready(function () { !frappe.is_mobile() && frappe.user.has_role("System Manager"); if (visiblity_condition && isFCUser) { - addChatBubble(); + frappe.router.on("change", function () { + if (frappe.get_route()[0] == "") { + addChatBubble(); + toggleChatBubble(true); + } else { + toggleChatBubble(false); + } + }); } if (isFCUser) { $.extend(card_args, { @@ -89,19 +96,40 @@ function openFrappeCloudDashboard() { } function addChatBubble() { - if (checkBusinessHours()) { + const all_apps = frappe.utils.get_installed_apps(); + const desk_apps = ["erpnext", "hrms"]; + + const apps_allowed = desk_apps.some((app) => all_apps.includes(app)); + if (checkBusinessHours() && apps_allowed) { let chat_banner = document.createElement("script"); + chat_banner.setAttribute("id", "chat_widget_trigger"); chat_banner.innerHTML = '(function(d,t){var BASE_URL="https://chat.frappe.cloud";var g=d.createElement(t),s=d.getElementsByTagName(t)[0];g.src=BASE_URL+"/packs/js/sdk.js";g.async=true;s.parentNode.insertBefore(g,s);g.onload=function(){window.chatwootSDK.run({websiteToken:"LdmfJzftdJGEcFjoTqk8CrSq",baseUrl:BASE_URL})}})(document,"script");'; document.body.append(chat_banner); const root = document.documentElement; - root.style.setProperty("--s-700", "var(--gray-50)"); + root.style.setProperty("--s-700", "var(--gray-500)"); } } function checkBusinessHours() { - let currentTime = new Date(); - const istTime = new Date(currentTime.toLocaleString("en-US", { timeZone: "Asia/Kolkata" })); + let current_time = new Date(); + const ist_time = new Date(current_time.toLocaleString("en-US", { timeZone: "Asia/Kolkata" })); - return istTime.getHours() >= 11 && istTime.getHours() <= 18; + const hours = ist_time.getHours(); + const day = ist_time.getDay(); + + const is_weekend = day === 0 || day === 6; + const is_business_hour = hours >= 11 && hours < 18; + + return !is_weekend && is_business_hour; +} + +function toggleChatBubble(toggle) { + if (toggle) { + $(".woot-widget-holder").show(); + $("#cw-bubble-holder").show(); + } else { + $(".woot-widget-holder").hide(); + $("#cw-bubble-holder").hide(); + } } diff --git a/frappe/public/js/frappe/file_uploader/FileUploader.vue b/frappe/public/js/frappe/file_uploader/FileUploader.vue index 10012c82ad..f21d925efe 100644 --- a/frappe/public/js/frappe/file_uploader/FileUploader.vue +++ b/frappe/public/js/frappe/file_uploader/FileUploader.vue @@ -514,22 +514,7 @@ function check_restrictions(file) { return is_correct_type && valid_file_size; } -function set_loading_state(dialog, loading) { - let $btn = dialog?.get_primary_btn(); - if (loading) { - $btn?.css("width", $btn.outerWidth()); - $btn?.html(``); - $btn?.prop("disabled", true); - dialog?.get_secondary_btn().prop("disabled", true); - } else { - $btn?.css("width", ""); - $btn?.html(__("Upload")); - $btn?.prop("disabled", false); - dialog?.get_secondary_btn().prop("disabled", false); - } -} -function upload_files(dialog) { - set_loading_state(dialog, true); +function upload_files() { if (show_file_browser.value) { promise = upload_via_file_browser(); } else if (show_web_link.value) { @@ -542,7 +527,7 @@ function upload_files(dialog) { } else { promise = frappe.run_serially(files.value.map((file, i) => () => upload_file(file, i))); } - return promise.finally(() => set_loading_state(dialog, false)); + return promise; } function upload_via_file_browser() { let selected_file = file_browser.value.selected_node; diff --git a/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js b/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js index 44e9d9add6..999cc675ea 100644 --- a/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js +++ b/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js @@ -151,6 +151,7 @@ class FileUploader { const dialog_opts = { title: title || __("Upload"), primary_action_label: __("Upload"), + primary_action_loading_label: __("Uploading"), primary_action: () => this.upload_files(), on_page_show: () => { this.uploader.wrapper_ready = true; diff --git a/frappe/public/js/frappe/form/column.js b/frappe/public/js/frappe/form/column.js index 92ec3d8917..e46cd49ef6 100644 --- a/frappe/public/js/frappe/form/column.js +++ b/frappe/public/js/frappe/form/column.js @@ -37,24 +37,35 @@ export default class Column { } resize_all_columns() { - // distribute all columns equally - let columns = this.section.wrapper.find(".form-column").length; + // distribute visible columns equally + let all_columns = this.section.wrapper.find(".form-column"); + let visible_columns = all_columns.filter(":not(.hide-control)"); + let columns = visible_columns.length || all_columns.length; let colspan = cint(12 / columns); if (columns == 5) { colspan = 20; } - this.section.wrapper - .find(".form-column") - .removeClass() - .addClass("form-column") - .addClass("col-sm-" + colspan); + all_columns.each(function () { + const $col = $(this); + const is_hidden = $col.hasClass("hide-control"); + $col.removeClass() + .addClass("form-column") + .addClass("col-sm-" + colspan); + if (is_hidden) { + $col.addClass("hide-control"); + } + }); } add_field() {} refresh() { + if (!this.df) return; + const hide = this.df.hidden || this.df.hidden_due_to_dependency; + this.wrapper.toggleClass("hide-control", !!hide); + this.resize_all_columns(); this.section.refresh(); } } diff --git a/frappe/public/js/frappe/form/controls/color.js b/frappe/public/js/frappe/form/controls/color.js index e9f88faec5..65c9f1b1d3 100644 --- a/frappe/public/js/frappe/form/controls/color.js +++ b/frappe/public/js/frappe/form/controls/color.js @@ -2,7 +2,7 @@ import Picker from "../../color_picker/color_picker"; frappe.ui.form.ControlColor = class ControlColor extends frappe.ui.form.ControlData { make_input() { - this.df.placeholder = this.df.placeholder || __("Choose a color"); + this.df.placeholder = __(this.df.placeholder) || __("Choose a color"); super.make_input(); this.make_color_input(); } diff --git a/frappe/public/js/frappe/form/controls/control.js b/frappe/public/js/frappe/form/controls/control.js index e5c69b6431..615911c0ee 100644 --- a/frappe/public/js/frappe/form/controls/control.js +++ b/frappe/public/js/frappe/form/controls/control.js @@ -3,6 +3,7 @@ import "./base_input"; import "./data"; import "./int"; import "./float"; +import "./percent"; import "./currency"; import "./date"; import "./time"; diff --git a/frappe/public/js/frappe/form/controls/data.js b/frappe/public/js/frappe/form/controls/data.js index 3cd3446d2f..69f2b5d519 100644 --- a/frappe/public/js/frappe/form/controls/data.js +++ b/frappe/public/js/frappe/form/controls/data.js @@ -241,7 +241,7 @@ frappe.ui.form.ControlData = class ControlData extends frappe.ui.form.ControlInp this.$input .attr("data-fieldtype", this.df.fieldtype) .attr("data-fieldname", this.df.fieldname) - .attr("placeholder", this.df.placeholder || ""); + .attr("placeholder", __(this.df.placeholder || "")); if (this.doctype) { this.$input.attr("data-doctype", this.doctype); } diff --git a/frappe/public/js/frappe/form/controls/float.js b/frappe/public/js/frappe/form/controls/float.js index 26f5b64ca2..8a0e527c3b 100644 --- a/frappe/public/js/frappe/form/controls/float.js +++ b/frappe/public/js/frappe/form/controls/float.js @@ -32,5 +32,3 @@ frappe.ui.form.ControlFloat = class ControlFloat extends frappe.ui.form.ControlI return this.df.precision || cint(frappe.boot.sysdefaults.float_precision, null); } }; - -frappe.ui.form.ControlPercent = frappe.ui.form.ControlFloat; diff --git a/frappe/public/js/frappe/form/controls/icon.js b/frappe/public/js/frappe/form/controls/icon.js index a964153d2b..6f86665c2b 100644 --- a/frappe/public/js/frappe/form/controls/icon.js +++ b/frappe/public/js/frappe/form/controls/icon.js @@ -2,7 +2,7 @@ import Picker from "../../icon_picker/icon_picker"; frappe.ui.form.ControlIcon = class ControlIcon extends frappe.ui.form.ControlData { make_input() { - this.df.placeholder = this.df.placeholder || __("Choose an icon"); + this.df.placeholder = __(this.df.placeholder) || __("Choose an icon"); super.make_input(); this.get_all_icons(); this.make_icon_input(); diff --git a/frappe/public/js/frappe/form/controls/percent.js b/frappe/public/js/frappe/form/controls/percent.js new file mode 100644 index 0000000000..e5f3ae2d48 --- /dev/null +++ b/frappe/public/js/frappe/form/controls/percent.js @@ -0,0 +1,13 @@ +frappe.ui.form.ControlPercent = class ControlPercent extends frappe.ui.form.ControlFloat { + format_for_input(value) { + if (value === null || value === undefined || isNaN(Number(value))) { + return ""; + } + const precision = value.toString().split(".")[1]?.length || 0; + return format_number( + value, + this.get_number_format(), + Math.min(this.get_precision(), precision) + ); + } +}; diff --git a/frappe/public/js/frappe/form/controls/select.js b/frappe/public/js/frappe/form/controls/select.js index eee88cb149..c6802b5984 100644 --- a/frappe/public/js/frappe/form/controls/select.js +++ b/frappe/public/js/frappe/form/controls/select.js @@ -28,7 +28,7 @@ frappe.ui.form.ControlSelect = class ControlSelect extends frappe.ui.form.Contro const placeholder_html = `
- ${this.df.placeholder} + ${__(this.df.placeholder)}
`; if (this.only_input) { this.$wrapper.append(placeholder_html); diff --git a/frappe/public/js/frappe/form/controls/text_editor.js b/frappe/public/js/frappe/form/controls/text_editor.js index 6bbb9c1aa0..0264f0ae3b 100644 --- a/frappe/public/js/frappe/form/controls/text_editor.js +++ b/frappe/public/js/frappe/form/controls/text_editor.js @@ -235,7 +235,7 @@ frappe.ui.form.ControlTextEditor = class ControlTextEditor extends frappe.ui.for theme: this.df.theme || "snow", readOnly: this.disabled || this.df.read_only, bounds: this.quill_container[0], - placeholder: this.df.placeholder || "", + placeholder: __(this.df.placeholder || ""), }; // In a grid row where space is constrained, hide the toolbar. diff --git a/frappe/public/js/frappe/form/form.js b/frappe/public/js/frappe/form/form.js index 2570864ee3..2859cb9f5b 100644 --- a/frappe/public/js/frappe/form/form.js +++ b/frappe/public/js/frappe/form/form.js @@ -1574,15 +1574,10 @@ frappe.ui.form.Form = class FrappeForm { var scroll_to = frappe.route_options.scroll_to; delete frappe.route_options.scroll_to; - var selector = []; - for (var key in scroll_to) { - var value = scroll_to[key]; - selector.push(repl('[data-%(key)s="%(value)s"]', { key: key, value: value })); - } - - selector = $(selector.join(" ")); - if (selector.length) { - frappe.utils.scroll_to(selector); + if (this.scroll_to_field(scroll_to)) { + const url = new URL(window.location); + url.searchParams.delete("scroll_to"); + history.replaceState(null, null, url); } } else if (window.location.hash) { if ($(window.location.hash).length) { @@ -2106,7 +2101,7 @@ frappe.ui.form.Form = class FrappeForm { } // scroll to input - frappe.utils.scroll_to($el, true, 15); + frappe.utils.scroll_to($el, true, 15, $(".main-section")); // focus if text field if (focus) { diff --git a/frappe/public/js/frappe/form/formatters.js b/frappe/public/js/frappe/form/formatters.js index dc1c7a5fe2..bb29b50fa5 100644 --- a/frappe/public/js/frappe/form/formatters.js +++ b/frappe/public/js/frappe/form/formatters.js @@ -94,12 +94,15 @@ frappe.form.formatters = { if (value === null) { return ""; } - + const valuePrecision = value.toString().split(".")[1]?.length || 0; const precision = docfield.precision || cint(frappe.boot.sysdefaults && frappe.boot.sysdefaults.float_precision) || 2; - return frappe.form.formatters._right(format_number(value, null, precision) + "%", options); + return frappe.form.formatters._right( + format_number(value, null, Math.min(precision, valuePrecision)) + "%", + options + ); }, Rating: function (value, docfield) { let rating_html = ""; diff --git a/frappe/public/js/frappe/form/grid.js b/frappe/public/js/frappe/form/grid.js index e901dc63a5..ad7b2fa8c8 100644 --- a/frappe/public/js/frappe/form/grid.js +++ b/frappe/public/js/frappe/form/grid.js @@ -671,9 +671,11 @@ export default class Grid { this.wrapper.find(".grid-footer").addClass("hidden"); } + // don't be tempted to use the `.hidden` class here + // it is used in other logic for the same buttons and will cause conflicts this.wrapper .find(".grid-add-row, .grid-add-multiple-rows, .grid-upload") - .toggleClass("hidden", !is_editable); + .toggleClass("d-none", !is_editable); } setup_fields() { diff --git a/frappe/public/js/frappe/form/grid_row.js b/frappe/public/js/frappe/form/grid_row.js index 348bd13840..616c794936 100644 --- a/frappe/public/js/frappe/form/grid_row.js +++ b/frappe/public/js/frappe/form/grid_row.js @@ -1033,7 +1033,7 @@ export default class GridRow { let is_focused = false; var $col = $( - `
` + `
` ) .attr("data-fieldname", df.fieldname) .attr("data-fieldtype", df.fieldtype) @@ -1095,7 +1095,9 @@ export default class GridRow { return out; }); - $col.field_area = $('
').appendTo($col).toggle(false); + $col.field_area = $('
') + .appendTo($col) + .toggle(false); $col.static_area = $('
').appendTo($col).html(txt); // set title attribute to see full label for columns in the heading row diff --git a/frappe/public/js/frappe/form/layout.js b/frappe/public/js/frappe/form/layout.js index 893d8abe3e..d1dc39a231 100644 --- a/frappe/public/js/frappe/form/layout.js +++ b/frappe/public/js/frappe/form/layout.js @@ -745,7 +745,7 @@ frappe.ui.form.Layout = class Layout { if (f.df.fieldtype === "Table") { for (const row of f.grid?.grid_rows || []) { - row.refresh_dependency(); + row?.refresh_dependency(); } } } diff --git a/frappe/public/js/frappe/form/linked_with.js b/frappe/public/js/frappe/form/linked_with.js index 12c5dc4f6b..2aaa3dcb95 100644 --- a/frappe/public/js/frappe/form/linked_with.js +++ b/frappe/public/js/frappe/form/linked_with.js @@ -20,7 +20,8 @@ frappe.ui.form.LinkedWith = class LinkedWith { make_dialog() { this.dialog = new frappe.ui.Dialog({ - title: __("Linked With"), + title: __("Links"), + minimizable: true, }); this.dialog.on_page_show = () => { @@ -39,22 +40,40 @@ frappe.ui.form.LinkedWith = class LinkedWith { make_html() { let html = ""; const linked_docs = this.frm.__linked_docs; - const linked_doctypes = Object.keys(linked_docs); + const linked_doctypes = Object.keys(linked_docs).filter((dt) => { + const entry = linked_docs[dt]; + return (entry.docs && entry.docs.length) || entry.hidden_count > 0; + }); if (linked_doctypes.length === 0) { html = __("Not Linked to any record"); } else { - html = linked_doctypes - .map((doctype) => { - const docs = linked_docs[doctype]; - return ` -
- ${this.make_doc_head(doctype)} - ${docs.map((doc) => this.make_doc_row(doc, doctype)).join("")} + html = ` +
+ ${__("Following documents are linked with {0}", [ + frappe.utils + .get_form_link(this.frm.doctype, this.frm.docname, true) + .bold(), + ])}
- `; - }) - .join(""); + ${linked_doctypes + .map((doctype) => { + const { docs, hidden_count } = linked_docs[doctype]; + let rows = (docs || []) + .map((doc) => this.make_doc_row(doc, doctype)) + .join(""); + if (hidden_count > 0) { + rows += this.make_hidden_count_row(hidden_count); + } + return ` +
+ ${this.make_doc_head(doctype)} + ${rows} +
+ `; + }) + .join("")} + `; } $(this.dialog.body).html(html); @@ -68,6 +87,16 @@ frappe.ui.form.LinkedWith = class LinkedWith { `; } + make_hidden_count_row(count) { + return `
+
+
+ ${count == 1 ? __("{0} restricted document", [count]) : __("{0} restricted documents", [count])} +
+
+
`; + } + make_doc_row(doc, doctype) { return `
diff --git a/frappe/public/js/frappe/form/reminders.js b/frappe/public/js/frappe/form/reminders.js index 5c8fa16060..667ca805d6 100644 --- a/frappe/public/js/frappe/form/reminders.js +++ b/frappe/public/js/frappe/form/reminders.js @@ -48,8 +48,7 @@ export class ReminderManager { ], primary_action_label: __("Create"), primary_action: () => { - this.create_reminder(); - this.dialog.hide(); + return this.create_reminder().then(() => this.dialog.hide()); }, secondary_action_label: __("Cancel"), secondary_action: () => { @@ -84,7 +83,7 @@ export class ReminderManager { } create_reminder() { - frappe + return frappe .xcall("frappe.automation.doctype.reminder.reminder.create_new_reminder", { remind_at: this.dialog.get_value("remind_at"), description: this.dialog.get_value("description"), diff --git a/frappe/public/js/frappe/form/save.js b/frappe/public/js/frappe/form/save.js index e3c2cd1e4e..4a182d47e2 100644 --- a/frappe/public/js/frappe/form/save.js +++ b/frappe/public/js/frappe/form/save.js @@ -231,7 +231,7 @@ frappe.ui.form.check_mandatory = function (frm) { } function scroll_to(fieldname) { - if (frm.scroll_to_field(fieldname)) { + if (frm.scroll_to_field(fieldname, false)) { frm.scroll_set = true; } } diff --git a/frappe/public/js/frappe/form/sidebar/assign_to.js b/frappe/public/js/frappe/form/sidebar/assign_to.js index 6b867fdf51..4b487f2c08 100644 --- a/frappe/public/js/frappe/form/sidebar/assign_to.js +++ b/frappe/public/js/frappe/form/sidebar/assign_to.js @@ -114,9 +114,7 @@ frappe.ui.form.AssignToDialog = class AssignToDialog { let args = me.dialog.get_values(); if (args && args.assign_to) { - me.dialog.set_message("Assigning..."); - - frappe.call({ + return frappe.call({ method: me.method, args: $.extend(args, { doctype: me.doctype, @@ -125,15 +123,12 @@ frappe.ui.form.AssignToDialog = class AssignToDialog { bulk_assign: me.bulk_assign || false, re_assign: me.re_assign || false, }), - btn: me.dialog.get_primary_btn(), callback: function (r) { if (!r.exc) { if (me.callback) { me.callback(r); } me.dialog && me.dialog.hide(); - } else { - me.dialog.clear_message(); } }, }); diff --git a/frappe/public/js/frappe/form/sidebar/attachments.js b/frappe/public/js/frappe/form/sidebar/attachments.js index bb36a2f65b..894856dcec 100644 --- a/frappe/public/js/frappe/form/sidebar/attachments.js +++ b/frappe/public/js/frappe/form/sidebar/attachments.js @@ -180,8 +180,18 @@ frappe.ui.form.Attachments = class Attachments { file_url = "/files/" + attachment.file_name; } } + + const is_web_url = /^(https?:)?\/\//i.test(file_url); + + file_url = encodeURI(file_url); + // hash is not escaped, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURI - return encodeURI(file_url).replace(/#/g, "%23"); + // only encode hash if it's a local file path, not a web URL + if (!is_web_url) { + file_url = file_url.replace(/#/g, "%23"); + } + + return file_url; } get_file_id_from_file_url(file_url) { var fid; diff --git a/frappe/public/js/frappe/list/bulk_operations.js b/frappe/public/js/frappe/list/bulk_operations.js index dd85c3da0d..0b794a03c3 100644 --- a/frappe/public/js/frappe/list/bulk_operations.js +++ b/frappe/public/js/frappe/list/bulk_operations.js @@ -452,9 +452,7 @@ export default class BulkOperations { primary_action: () => { let args = dialog.get_values(); if (args && args.tags) { - dialog.set_message("Adding Tags..."); - - frappe.call({ + return frappe.call({ method: "frappe.desk.doctype.tag.tag.add_tags", args: { tags: args.tags, diff --git a/frappe/public/js/frappe/list/list_filter.js b/frappe/public/js/frappe/list/list_filter.js index e46c59eca9..f3ff15587b 100644 --- a/frappe/public/js/frappe/list/list_filter.js +++ b/frappe/public/js/frappe/list/list_filter.js @@ -120,7 +120,7 @@ export default class ListFilter { fields: fields, primary_action_label: __("Create"), primary_action: (values) => { - this.bind_save_filter(dialog, values.filter_name, values?.is_global); + return this.bind_save_filter(dialog, values.filter_name, values?.is_global); }, }); dialog.show(); @@ -138,7 +138,7 @@ export default class ListFilter { dialog.fields_dict.filter_name.set_description(__("Duplicate Filter Name")); return; } - this.save_filter(value, is_global).then(() => { + return this.save_filter(value, is_global).then(() => { this.refresh_list_filter(); dialog.hide(); }); diff --git a/frappe/public/js/frappe/model/meta.js b/frappe/public/js/frappe/model/meta.js index d393f33cb7..7692dcfdfc 100644 --- a/frappe/public/js/frappe/model/meta.js +++ b/frappe/public/js/frappe/model/meta.js @@ -332,7 +332,8 @@ $.extend(frappe.meta, { } else if (df && df.fieldtype === "Currency") { precision = cint(frappe.defaults.get_default("currency_precision")); if (!precision) { - var number_format = get_number_format(); + var currency = frappe.meta.get_field_currency(df, doc); + var number_format = get_number_format(currency); var number_format_info = get_number_format_info(number_format); precision = number_format_info.precision; } diff --git a/frappe/public/js/frappe/ui/address_autocomplete/autocomplete_dialog.js b/frappe/public/js/frappe/ui/address_autocomplete/autocomplete_dialog.js index 53d8405ceb..3fb854c15d 100644 --- a/frappe/public/js/frappe/ui/address_autocomplete/autocomplete_dialog.js +++ b/frappe/public/js/frappe/ui/address_autocomplete/autocomplete_dialog.js @@ -48,9 +48,6 @@ frappe.ui.AddressAutocompleteDialog = class AddressAutocompleteDialog { ], primary_action_label: __("Create Address"), primary_action: () => { - // Insert the address into the database - dialog.hide(); - const address = this.parse_selected_value(); address["doctype"] = "Address"; address["links"] = [ @@ -59,7 +56,8 @@ frappe.ui.AddressAutocompleteDialog = class AddressAutocompleteDialog { link_name: this.link_name, }, ]; - frappe.db.insert(address).then((doc) => { + return frappe.db.insert(address).then((doc) => { + dialog.hide(); this.after_insert && this.after_insert(doc); }); }, diff --git a/frappe/public/js/frappe/ui/dialog.js b/frappe/public/js/frappe/ui/dialog.js index 036dc0c1cd..40a491a03d 100644 --- a/frappe/public/js/frappe/ui/dialog.js +++ b/frappe/public/js/frappe/ui/dialog.js @@ -207,6 +207,7 @@ frappe.ui.Dialog = class Dialog extends frappe.ui.FieldGroup { this.has_primary_action = true; var me = this; const primary_btn = this.get_primary_btn().removeClass("hide").html(label); + const spinner = ``; if (typeof click == "function") { primary_btn.off("click").on("click", function () { me.primary_action_fulfilled = true; @@ -215,7 +216,35 @@ frappe.ui.Dialog = class Dialog extends frappe.ui.FieldGroup { // if no values then return var values = me.get_values(); if (!values) return; - click && click.apply(me, [values]); + const action = click.apply(me, [values]); + if (action && typeof action.then === "function") { + const loading_label = me.primary_action_loading_label; + primary_btn + .css({ + "min-width": primary_btn.outerWidth(), + "min-height": primary_btn.outerHeight(), + }) + .prop("disabled", true) + .addClass("btn-primary-dark") + .html( + `
+ ${spinner} + ${ + loading_label + ? `${loading_label}` + : "" + } +
` + ); + + Promise.resolve(action).finally(() => { + primary_btn + .css({ "min-width": "", "min-height": "" }) + .prop("disabled", false) + .removeClass("btn-primary-dark") + .html(label); + }); + } }); } return primary_btn; diff --git a/frappe/public/js/frappe/ui/field_group.js b/frappe/public/js/frappe/ui/field_group.js index 98ce569ab5..bf6021fc3c 100644 --- a/frappe/public/js/frappe/ui/field_group.js +++ b/frappe/public/js/frappe/ui/field_group.js @@ -18,12 +18,35 @@ frappe.ui.FieldGroup = class FieldGroup extends frappe.ui.form.Layout { } } + resolve_date_default_keywords(def_value, fieldtype) { + if (!def_value || typeof def_value !== "string") return def_value; + + def_value = def_value.toLowerCase(); + + if (def_value == "today" && fieldtype == "Date") { + return frappe.datetime.get_today(); + } + + if (def_value == "now") { + if (fieldtype == "Datetime") { + return frappe.datetime.now_datetime(); + } + if (fieldtype == "Time") { + return frappe.datetime.now_time(); + } + } + + return def_value; + } + make() { let me = this; if (this.fields) { super.make(); this.refresh(); - // set default + + let defaults = {}; + $.each(this.fields_list, function (i, field) { let def_value = field.df["default"]; // loose equality check matches undefined also @@ -33,12 +56,14 @@ frappe.ui.FieldGroup = class FieldGroup extends frappe.ui.form.Layout { ) return; - if (def_value == "Today" && field.df["fieldtype"] == "Date") { - def_value = frappe.datetime.get_today(); + if (["Date", "Datetime", "Time"].includes(field.df.fieldtype)) { + def_value = me.resolve_date_default_keywords(def_value, field.df.fieldtype); } - field.set_input(def_value); - // if default and has depends_on, render its fields. + defaults[field.df.fieldname] = def_value; + }); + + this.set_values(defaults).then(() => { me.refresh_dependency(); }); diff --git a/frappe/public/js/frappe/ui/messages.js b/frappe/public/js/frappe/ui/messages.js index 4b8e013e13..3c6a85f480 100644 --- a/frappe/public/js/frappe/ui/messages.js +++ b/frappe/public/js/frappe/ui/messages.js @@ -206,7 +206,7 @@ frappe.msgprint = function (msg, title, is_minimizable, re_route) { typeof data.primary_action.server_action === "string" ) { data.primary_action.action = () => { - frappe.call({ + return frappe.call({ method: data.primary_action.server_action, args: data.primary_action.args, callback() { diff --git a/frappe/public/js/frappe/ui/page.js b/frappe/public/js/frappe/ui/page.js index 36361b8c1f..a3b441dfec 100644 --- a/frappe/public/js/frappe/ui/page.js +++ b/frappe/public/js/frappe/ui/page.js @@ -242,7 +242,7 @@ frappe.ui.Page = class Page { } setup_main_sidebar_toggle() { - $(".sidebar-toggle-btn.navbar-brand").on("click", (event) => { + this.wrapper.find(".sidebar-toggle-btn.navbar-brand").on("click", (event) => { frappe.app.sidebar.set_height(); frappe.app.sidebar.toggle_width(); frappe.app.sidebar.prevent_scroll(); diff --git a/frappe/public/js/frappe/ui/toolbar/navbar.html b/frappe/public/js/frappe/ui/toolbar/navbar.html index 9e973f514a..446e2786c2 100644 --- a/frappe/public/js/frappe/ui/toolbar/navbar.html +++ b/frappe/public/js/frappe/ui/toolbar/navbar.html @@ -1,10 +1,12 @@
- {% if !localStorage.getItem("dismissed_announcement_widget") && strip_html(navbar_settings.announcement_widget) != '' %} -
+ {% if (!navbar_settings.dismissible_announcement_widget || !localStorage.getItem("dismissed_announcement_widget")) && strip_html(navbar_settings.announcement_widget) != '' %} +
{{ navbar_settings.announcement_widget }} + {% if navbar_settings.dismissible_announcement_widget %}
{{ frappe.utils.icon("close") }} + {% endif %}
diff --git a/frappe/public/js/frappe/ui/toolbar/toolbar.js b/frappe/public/js/frappe/ui/toolbar/toolbar.js index 0b5f546f2c..383c9eb69e 100644 --- a/frappe/public/js/frappe/ui/toolbar/toolbar.js +++ b/frappe/public/js/frappe/ui/toolbar/toolbar.js @@ -9,7 +9,8 @@ frappe.ui.toolbar.Toolbar = class { if ( frappe.boot.read_only || frappe.boot.user.impersonated_by || - (!localStorage.getItem("dismissed_announcement_widget") && + ((!localStorage.getItem("dismissed_announcement_widget") || + !frappe.boot.navbar_settings.dismissible_announcement_widget) && strip_html(frappe.boot.navbar_settings.announcement_widget) != "") || frappe.is_mobile() ) { diff --git a/frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue b/frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue index 9ee883cf31..6104e4d7a3 100644 --- a/frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue +++ b/frappe/public/js/frappe/ui/user_onboarding/OnboardingPanel.vue @@ -306,7 +306,7 @@ function markReset(step) {
{{ __(step.action_label) }} diff --git a/frappe/public/js/frappe/utils/dashboard_utils.js b/frappe/public/js/frappe/utils/dashboard_utils.js index 46059db89e..2b6d4f4911 100644 --- a/frappe/public/js/frappe/utils/dashboard_utils.js +++ b/frappe/public/js/frappe/utils/dashboard_utils.js @@ -132,7 +132,7 @@ frappe.dashboard_utils = { remove_common_static_filter_values(static_filters, dynamic_filters) { if (dynamic_filters) { - if ($.isArray(static_filters)) { + if (Array.isArray(static_filters)) { static_filters = static_filters.filter((static_filter) => { for (let dynamic_filter of dynamic_filters) { if ( @@ -207,29 +207,26 @@ frappe.dashboard_utils = { ? JSON.parse(doc.dynamic_filters_json) : null; - if (!dynamic_filters || !Object.keys(dynamic_filters).length) { + if (!dynamic_filters?.length) { return filters; } - if (Array.isArray(dynamic_filters)) { - dynamic_filters.forEach((f) => { - try { - f[3] = eval(f[3]); - } catch (e) { - frappe.throw(__("Invalid expression set in filter {0} ({1})", [f[1], f[0]])); - } - }); + dynamic_filters.forEach((f) => { + try { + f[3] = eval(f[3]); + } catch (e) { + frappe.throw(__("Invalid expression set in filter {0} ({1})", [f[1], f[0]])); + } + }); + + if (!filters) { + filters = dynamic_filters; + } else if (Array.isArray(filters)) { filters = [...filters, ...dynamic_filters]; } else { - for (let key of Object.keys(dynamic_filters)) { - try { - const val = eval(dynamic_filters[key]); - dynamic_filters[key] = val; - } catch (e) { - frappe.throw(__("Invalid expression set in filter {0}", [key])); - } - } - Object.assign(filters, dynamic_filters); + dynamic_filters.forEach((f) => { + filters[f[1]] = f[3]; + }); } return filters; @@ -264,7 +261,7 @@ frappe.dashboard_utils = { primary_action: (values) => { values.name = docname; values.set_standard = frappe.boot.developer_mode; - frappe.xcall(method, { args: values }).then(() => { + return frappe.xcall(method, { args: values }).then(() => { let dashboard_route_html = `${values.dashboard}`; let message = __("{0} {1} added to Dashboard {2}", [ doctype, @@ -273,9 +270,8 @@ frappe.dashboard_utils = { ]); frappe.msgprint(message); + dialog.hide(); }); - - dialog.hide(); }, }); diff --git a/frappe/public/js/frappe/utils/utils.js b/frappe/public/js/frappe/utils/utils.js index fb888880f3..674ff8c8c6 100644 --- a/frappe/public/js/frappe/utils/utils.js +++ b/frappe/public/js/frappe/utils/utils.js @@ -328,7 +328,7 @@ Object.assign(frappe.utils, { scroll_top = typeof element == "number" ? element - cint(additional_offset) - : this.get_scroll_position(element, additional_offset); + : this.get_scroll_position(element, additional_offset, element_to_be_scrolled); } if (scroll_top < 0) { @@ -366,10 +366,33 @@ Object.assign(frappe.utils, { element_to_be_scrolled.scrollTop(scroll_top); } }, - get_scroll_position: function (element, additional_offset) { - let header_offset = - $(".navbar").height() + $(".page-head:visible").height() || $(".navbar").height(); - return $(element).offset().top - header_offset - cint(additional_offset); + get_scroll_position: function (element, additional_offset, element_to_be_scrolled) { + const get_offset_relative_to_container = () => { + let offset = 0; + + let el = element instanceof HTMLElement ? element : element[0]; + const container = element_to_be_scrolled ? element_to_be_scrolled[0] : null; + + while (el && el !== container && el.offsetParent) { + offset += el.offsetTop; + el = el.offsetParent; + } + + return offset; + }; + + const get_header_offset = () => { + const navbar_height = $(".navbar").height() || 0; + const page_head_height = $(".page-head:visible").height() || 0; + const tabs_container_height = $(".form-tabs-list:visible").height() || 0; + + return navbar_height + page_head_height + tabs_container_height; + }; + + const element_offset_top = get_offset_relative_to_container(); + const header_offset = get_header_offset(); + + return element_offset_top - header_offset - cint(additional_offset); }, filter_dict: function (dict, filters) { var ret = []; @@ -2229,4 +2252,16 @@ Object.assign(frappe.utils, { } return value; }, + get_installed_apps() { + return frappe.boot.app_data.map((app) => { + return app.app_name; + }); + }, + is_sub_array(big, small) { + let i = 0; + for (let num of big) { + if (num === small[i]) i++; + } + return i === small.length; + }, }); diff --git a/frappe/public/js/frappe/views/dashboard/dashboard_view.js b/frappe/public/js/frappe/views/dashboard/dashboard_view.js index 2adaee49fb..9011902091 100644 --- a/frappe/public/js/frappe/views/dashboard/dashboard_view.js +++ b/frappe/public/js/frappe/views/dashboard/dashboard_view.js @@ -449,7 +449,7 @@ frappe.views.DashboardView = class DashboardView extends frappe.views.ListView { : chart.chart_type; chart.document_type = this.doctype; chart.filters_json = "[]"; - frappe + return frappe .xcall( "frappe.desk.doctype.dashboard_chart.dashboard_chart.create_dashboard_chart", { args: chart } @@ -460,6 +460,7 @@ frappe.views.DashboardView = class DashboardView extends frappe.views.ListView { name: doc.chart_name, label: chart.label, }); + dialog.hide(); }); } else { this.chart_group.new_widget.on_create({ @@ -467,8 +468,8 @@ frappe.views.DashboardView = class DashboardView extends frappe.views.ListView { label: __(chart.chart), name: chart.chart, }); + dialog.hide(); } - dialog.hide(); }, }); dialog.show(); diff --git a/frappe/public/js/frappe/views/interaction.js b/frappe/public/js/frappe/views/interaction.js index ba4ebe63d9..b6d6f80cfc 100644 --- a/frappe/public/js/frappe/views/interaction.js +++ b/frappe/public/js/frappe/views/interaction.js @@ -17,7 +17,7 @@ frappe.views.InteractionComposer = class InteractionComposer { fields: me.get_fields(), primary_action_label: __("Create"), primary_action: function () { - me.create_action(); + return me.create_action(); }, }); diff --git a/frappe/public/js/frappe/views/reports/query_report.js b/frappe/public/js/frappe/views/reports/query_report.js index 8693fce7fb..6e085f92f3 100644 --- a/frappe/public/js/frappe/views/reports/query_report.js +++ b/frappe/public/js/frappe/views/reports/query_report.js @@ -762,9 +762,39 @@ frappe.views.QueryReport = class QueryReport extends frappe.views.BaseList { let data = r.message; this.hide_status(); clearInterval(this.interval); - + clearInterval(this.stale_report_interval); + this.refreshed_at = frappe.datetime.now_datetime(); this.execution_time = data.execution_time || 0.1; + const check_if_report_is_stale = () => { + let generated_at = this.prepared_report + ? this.prepared_report_document.report_end_time + : this.refreshed_at; + let pretty_diff = frappe.datetime.comment_when(generated_at); + const days_old = frappe.datetime.get_day_diff( + frappe.datetime.now_datetime(), + generated_at + ); + const minutes_old = frappe.datetime.get_minute_diff( + frappe.datetime.now_datetime(), + generated_at + ); + if (days_old > 1) { + pretty_diff = `${pretty_diff}`; + } + if (minutes_old >= 1) { + this.show_status(` +
+ + ${__("This report was generated {0}.", [pretty_diff])} + +
+ `); + } + }; + + this.stale_report_interval = setInterval(check_if_report_is_stale, 60000); + if (data.custom_filters) { this.set_filters(data.custom_filters); this.previous_filters = data.custom_filters; @@ -787,6 +817,7 @@ frappe.views.QueryReport = class QueryReport extends frappe.views.BaseList { }); } this.add_prepared_report_buttons(data.doc); + check_if_report_is_stale(); } if (data.report_summary) { @@ -865,28 +896,6 @@ frappe.views.QueryReport = class QueryReport extends frappe.views.BaseList { }, __("Actions") ); - - let pretty_diff = frappe.datetime.comment_when(doc.report_end_time); - const days_old = frappe.datetime.get_day_diff( - frappe.datetime.now_datetime(), - doc.report_end_time - ); - if (days_old > 1) { - pretty_diff = `${pretty_diff}`; - } - const part1 = __("This report was generated {0}.", [pretty_diff]); - const part2 = __("To get the updated report, click on {0}.", [__("Rebuild")]); - const part3 = __("See all past reports."); - - this.show_status(` -
- - ${part1} - ${part2} - ${part3} - -
- `); } // Three cases @@ -2109,7 +2118,7 @@ frappe.views.QueryReport = class QueryReport extends frappe.views.BaseList { }, ], primary_action: (values) => { - frappe.call({ + return frappe.call({ method: "frappe.desk.query_report.save_report", args: { reference_report: this.report_name, diff --git a/frappe/public/js/frappe/views/reports/report_view.js b/frappe/public/js/frappe/views/reports/report_view.js index 68d523b0fa..9bedbf0e11 100644 --- a/frappe/public/js/frappe/views/reports/report_view.js +++ b/frappe/public/js/frappe/views/reports/report_view.js @@ -99,16 +99,6 @@ frappe.views.ReportView = class ReportView extends frappe.views.ListView { }); } - setup_paging_area() { - super.setup_paging_area(); - const message = __( - "For comparison, use >5, <10 or =324. For ranges, use 5:10 (for values between 5 & 10)." - ); - this.$paging_area.before( - `${message}` - ); - } - setup_sort_selector() { this.sort_selector = new frappe.ui.SortSelector({ parent: this.filter_area.$filter_list_wrapper, @@ -430,6 +420,8 @@ frappe.views.ReportView = class ReportView extends frappe.views.ListView { } setup_inline_filter_observer() { + this.setup_inline_filter_help_icons(); + this.$datatable_wrapper.on( "keyup", ".dt-filter", @@ -439,6 +431,29 @@ frappe.views.ReportView = class ReportView extends frappe.views.ListView { ); } + setup_inline_filter_help_icons() { + const message = __( + "For comparison, use >5, <10 or =324.\nFor ranges, use 5:10 (for values between 5 & 10)." + ); + + this.$datatable_wrapper.find(".dt-filter").each((_, input) => { + const $input = $(input); + + if ($input.siblings(".comparison-help-icon").length) { + return; + } + + const $icon = $( + `${frappe.utils.icon( + "info", + "xs" + )}` + ); + + $input.after($icon); + }); + } + update_count_for_inline_filter() { if (!this.datatable) return; diff --git a/frappe/public/js/frappe/widgets/chart_widget.js b/frappe/public/js/frappe/widgets/chart_widget.js index f9c1d049cc..eda2048a67 100644 --- a/frappe/public/js/frappe/widgets/chart_widget.js +++ b/frappe/public/js/frappe/widgets/chart_widget.js @@ -570,8 +570,14 @@ export default class ChartWidget extends Widget { let setup_dashboard_chart = () => { const chart_args = this.get_chart_args(); + const is_circular_chart = ["Pie", "Donut", "Percentage"].includes(this.chart_doc.type); + if (!this.dashboard_chart) { this.dashboard_chart = frappe.utils.make_chart(this.chart_wrapper[0], chart_args); + } else if (is_circular_chart) { + this.chart_wrapper.empty(); + delete this.dashboard_chart; + this.dashboard_chart = frappe.utils.make_chart(this.chart_wrapper[0], chart_args); } else { this.dashboard_chart.update(this.data); } @@ -619,6 +625,7 @@ export default class ChartWidget extends Widget { colors: colors, height: this.height, maxSlices: this.chart_doc.number_of_groups || max_slices, + truncateLegends: 0, axisOptions: { xIsSeries: this.chart_doc.timeseries, shortenYAxisNumbers: 1, diff --git a/frappe/public/js/workflow_builder/components/Properties.vue b/frappe/public/js/workflow_builder/components/Properties.vue index 12b3f4371e..b6d40d8fcc 100644 --- a/frappe/public/js/workflow_builder/components/Properties.vue +++ b/frappe/public/js/workflow_builder/components/Properties.vue @@ -1,11 +1,20 @@