fix: if autoname is same as title then show only one field in rename modal
This commit is contained in:
parent
de265e9415
commit
7fac10a1c1
1 changed files with 22 additions and 7 deletions
|
|
@ -211,23 +211,33 @@ frappe.ui.form.Toolbar = class Toolbar {
|
|||
});
|
||||
}
|
||||
|
||||
let is_title_field_same_as_autoname = false;
|
||||
|
||||
// check if docname is updatable
|
||||
if (me.can_rename()) {
|
||||
let label = __("New Name");
|
||||
if (me.frm.meta.autoname && me.frm.meta.autoname.startsWith("field:")) {
|
||||
let fieldname = me.frm.meta.autoname.split(":")[1];
|
||||
label = __("New {0}", [__(me.frm.get_docfield(fieldname).label)]);
|
||||
is_title_field_same_as_autoname = fieldname === title_field;
|
||||
}
|
||||
|
||||
if (!is_title_field_same_as_autoname) {
|
||||
fields.push(
|
||||
...[
|
||||
{
|
||||
label: label,
|
||||
fieldname: "name",
|
||||
fieldtype: "Data",
|
||||
reqd: 1,
|
||||
default: docname,
|
||||
},
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
fields.push(
|
||||
...[
|
||||
{
|
||||
label: label,
|
||||
fieldname: "name",
|
||||
fieldtype: "Data",
|
||||
reqd: 1,
|
||||
default: docname,
|
||||
},
|
||||
{
|
||||
label: __("Merge with existing"),
|
||||
fieldname: "merge",
|
||||
|
|
@ -248,6 +258,11 @@ frappe.ui.form.Toolbar = class Toolbar {
|
|||
d.set_primary_action(__("Rename"), (values) => {
|
||||
d.disable_primary_action();
|
||||
d.hide();
|
||||
|
||||
if (is_title_field_same_as_autoname) {
|
||||
values.name = values.title;
|
||||
}
|
||||
|
||||
this.rename_document_title(values.name, values.title, values.merge)
|
||||
.then(() => {
|
||||
d.hide();
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue