diff --git a/frappe/core/doctype/activity_log/activity_log.json b/frappe/core/doctype/activity_log/activity_log.json index 02360247af..9da9eacfb2 100644 --- a/frappe/core/doctype/activity_log/activity_log.json +++ b/frappe/core/doctype/activity_log/activity_log.json @@ -42,6 +42,7 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -71,6 +72,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -101,6 +103,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0, "width": "400" }, @@ -131,6 +134,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -161,6 +165,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -192,6 +197,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -221,6 +227,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -252,6 +259,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -283,6 +291,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -313,6 +322,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -344,6 +354,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -375,6 +386,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -383,6 +395,7 @@ "bold": 0, "collapsible": 0, "columns": 0, + "fetch_from": "reference_name.owner", "fieldname": "reference_owner", "fieldtype": "Read Only", "hidden": 0, @@ -395,7 +408,7 @@ "label": "Reference Owner", "length": 0, "no_copy": 0, - "options": "reference_name.owner", + "options": "", "permlevel": 0, "precision": "", "print_hide": 0, @@ -406,6 +419,7 @@ "reqd": 0, "search_index": 1, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -435,6 +449,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -466,6 +481,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -497,6 +513,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -528,6 +545,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -559,6 +577,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -591,6 +610,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -621,6 +641,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 } ], @@ -635,7 +656,7 @@ "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-11-21 12:39:23.659308", + "modified": "2018-05-16 22:43:31.292255", "modified_by": "Administrator", "module": "Core", "name": "Activity Log", @@ -644,7 +665,6 @@ "permissions": [ { "amend": 0, - "apply_user_permissions": 0, "cancel": 0, "create": 1, "delete": 1, @@ -664,7 +684,6 @@ }, { "amend": 0, - "apply_user_permissions": 0, "cancel": 0, "create": 0, "delete": 1, @@ -684,7 +703,6 @@ }, { "amend": 0, - "apply_user_permissions": 1, "cancel": 0, "create": 0, "delete": 1, @@ -700,7 +718,6 @@ "set_user_permissions": 0, "share": 0, "submit": 0, - "user_permission_doctypes": "[\"Email Account\"]", "write": 0 } ], diff --git a/frappe/core/doctype/communication/communication.json b/frappe/core/doctype/communication/communication.json index 4f75e1b7ce..48c08bcffc 100644 --- a/frappe/core/doctype/communication/communication.json +++ b/frappe/core/doctype/communication/communication.json @@ -870,6 +870,7 @@ "bold": 0, "collapsible": 0, "columns": 0, + "fetch_from": "reference_name.owner", "fieldname": "reference_owner", "fieldtype": "Read Only", "hidden": 0, @@ -882,7 +883,7 @@ "label": "Reference Owner", "length": 0, "no_copy": 0, - "options": "reference_name.owner", + "options": "", "permlevel": 0, "precision": "", "print_hide": 0, @@ -1538,7 +1539,7 @@ "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2018-04-03 16:18:01.251522", + "modified": "2018-05-16 22:43:30.589070", "modified_by": "Administrator", "module": "Core", "name": "Communication", @@ -1546,7 +1547,6 @@ "permissions": [ { "amend": 0, - "apply_user_permissions": 0, "cancel": 0, "create": 1, "delete": 1, @@ -1566,7 +1566,6 @@ }, { "amend": 0, - "apply_user_permissions": 0, "cancel": 0, "create": 0, "delete": 1, @@ -1586,7 +1585,6 @@ }, { "amend": 0, - "apply_user_permissions": 1, "cancel": 0, "create": 0, "delete": 1, @@ -1602,7 +1600,6 @@ "set_user_permissions": 0, "share": 0, "submit": 0, - "user_permission_doctypes": "[\"Email Account\"]", "write": 0 } ], diff --git a/frappe/core/doctype/docfield/docfield.json b/frappe/core/doctype/docfield/docfield.json index e6ee357526..bfb6662c1c 100644 --- a/frappe/core/doctype/docfield/docfield.json +++ b/frappe/core/doctype/docfield/docfield.json @@ -643,6 +643,38 @@ "translatable": 0, "unique": 0 }, + { + "allow_bulk_edit": 0, + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "columns": 0, + "fieldname": "fetch_from", + "fieldtype": "Small Text", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_standard_filter": 0, + "label": "Fetch From", + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "remember_last_selected_value": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "translatable": 0, + "unique": 0 + }, { "allow_bulk_edit": 0, "allow_on_submit": 0, @@ -1516,7 +1548,7 @@ "issingle": 0, "istable": 1, "max_attachments": 0, - "modified": "2018-05-08 12:15:42.191212", + "modified": "2018-05-22 14:46:09.417168", "modified_by": "Administrator", "module": "Core", "name": "DocField", diff --git a/frappe/core/doctype/doctype/doctype.py b/frappe/core/doctype/doctype/doctype.py index a04faba9f7..b45855d186 100644 --- a/frappe/core/doctype/doctype/doctype.py +++ b/frappe/core/doctype/doctype/doctype.py @@ -119,7 +119,7 @@ class DocType(Document): if set(old_fields_to_fetch) != set([df.fieldname for df in new_meta.get_fields_to_fetch()]): for df in new_meta.get_fields_to_fetch(): if df.fieldname not in old_fields_to_fetch: - link_fieldname, source_fieldname = df.options.split('.', 1) + link_fieldname, source_fieldname = df.fetch_from.split('.', 1) link_df = new_meta.get_field(link_fieldname) self.flags.update_fields_to_fetch_queries.append('''update diff --git a/frappe/core/doctype/user_email/user_email.json b/frappe/core/doctype/user_email/user_email.json index f2b4a6c32c..aa8ccb891d 100644 --- a/frappe/core/doctype/user_email/user_email.json +++ b/frappe/core/doctype/user_email/user_email.json @@ -12,6 +12,7 @@ "editable_grid": 1, "fields": [ { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -39,13 +40,16 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, "columns": 0, + "fetch_from": "email_account.email_id", "fieldname": "email_id", "fieldtype": "Data", "hidden": 0, @@ -58,7 +62,7 @@ "label": "Email ID", "length": 0, "no_copy": 0, - "options": "email_account.email_id", + "options": "", "permlevel": 0, "precision": "", "print_hide": 0, @@ -69,9 +73,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -97,9 +103,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -127,9 +135,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -157,6 +167,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 } ], @@ -170,7 +181,7 @@ "issingle": 0, "istable": 1, "max_attachments": 0, - "modified": "2017-03-29 16:48:51.320616", + "modified": "2018-05-16 22:43:34.045787", "modified_by": "Administrator", "module": "Core", "name": "User Email", diff --git a/frappe/custom/doctype/custom_field/custom_field.json b/frappe/custom/doctype/custom_field/custom_field.json index f222e2151e..18c363bc08 100644 --- a/frappe/custom/doctype/custom_field/custom_field.json +++ b/frappe/custom/doctype/custom_field/custom_field.json @@ -280,7 +280,7 @@ "collapsible": 0, "columns": 0, "fieldname": "options", - "fieldtype": "Text", + "fieldtype": "Small Text", "hidden": 0, "ignore_user_permissions": 0, "ignore_xss_filter": 0, @@ -311,6 +311,38 @@ "bold": 0, "collapsible": 0, "columns": 0, + "fieldname": "fetch_from", + "fieldtype": "Small Text", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_standard_filter": 0, + "label": "Fetch From", + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "remember_last_selected_value": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "translatable": 0, + "unique": 0 + }, + { + "allow_bulk_edit": 0, + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "columns": 0, "fieldname": "options_help", "fieldtype": "HTML", "hidden": 0, @@ -1231,7 +1263,7 @@ "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2018-01-19 14:51:56.174011", + "modified": "2018-05-22 14:44:19.523725", "modified_by": "Administrator", "module": "Custom", "name": "Custom Field", diff --git a/frappe/custom/doctype/customize_form/customize_form.py b/frappe/custom/doctype/customize_form/customize_form.py index b241e7d016..319aa853a9 100644 --- a/frappe/custom/doctype/customize_form/customize_form.py +++ b/frappe/custom/doctype/customize_form/customize_form.py @@ -37,6 +37,7 @@ docfield_properties = { 'label': 'Data', 'fieldtype': 'Select', 'options': 'Text', + 'fetch_from': 'Small Text', 'permlevel': 'Int', 'width': 'Data', 'print_width': 'Data', diff --git a/frappe/custom/doctype/customize_form_field/customize_form_field.json b/frappe/custom/doctype/customize_form_field/customize_form_field.json index 0de158332b..129555d46e 100644 --- a/frappe/custom/doctype/customize_form_field/customize_form_field.json +++ b/frappe/custom/doctype/customize_form_field/customize_form_field.json @@ -467,7 +467,7 @@ "columns": 0, "description": "For Links, enter the DocType as range.\nFor Select, enter list of Options, each on a new line.", "fieldname": "options", - "fieldtype": "Text", + "fieldtype": "Small Text", "hidden": 0, "ignore_user_permissions": 0, "ignore_xss_filter": 0, @@ -498,6 +498,37 @@ "bold": 0, "collapsible": 0, "columns": 0, + "fieldname": "fetch_from", + "fieldtype": "Small Text", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_standard_filter": 0, + "label": "Fetch From", + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "remember_last_selected_value": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "translatable": 0, + "unique": 0 + }, + { + "allow_bulk_edit": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "columns": 0, "fieldname": "permissions", "fieldtype": "Section Break", "hidden": 0, @@ -1273,7 +1304,7 @@ "issingle": 0, "istable": 1, "max_attachments": 0, - "modified": "2018-01-10 11:08:17.294691", + "modified": "2018-05-22 14:45:09.417168", "modified_by": "Administrator", "module": "Custom", "name": "Customize Form Field", diff --git a/frappe/desk/doctype/todo/test_todo.py b/frappe/desk/doctype/todo/test_todo.py index c8e951e651..b40e975edc 100644 --- a/frappe/desk/doctype/todo/test_todo.py +++ b/frappe/desk/doctype/todo/test_todo.py @@ -29,7 +29,7 @@ class TestToDo(unittest.TestCase): frappe.db.sql('delete from tabToDo') todo_meta = frappe.get_doc('DocType', 'ToDo') - todo_meta.get('fields', dict(fieldname='assigned_by_full_name'))[0].options = '' + todo_meta.get('fields', dict(fieldname='assigned_by_full_name'))[0].fetch_from = '' todo_meta.save() frappe.clear_cache(doctype='ToDo') @@ -39,7 +39,7 @@ class TestToDo(unittest.TestCase): self.assertFalse(todo.assigned_by_full_name) todo_meta = frappe.get_doc('DocType', 'ToDo') - todo_meta.get('fields', dict(fieldname='assigned_by_full_name'))[0].options = 'assigned_by.full_name' + todo_meta.get('fields', dict(fieldname='assigned_by_full_name'))[0].fetch_from = 'assigned_by.full_name' todo_meta.save() todo.reload() diff --git a/frappe/desk/doctype/todo/todo.json b/frappe/desk/doctype/todo/todo.json index ca70fd1006..6b1dd2f2b1 100644 --- a/frappe/desk/doctype/todo/todo.json +++ b/frappe/desk/doctype/todo/todo.json @@ -40,6 +40,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -71,6 +72,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -104,6 +106,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -132,6 +135,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -162,6 +166,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -193,6 +198,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -223,6 +229,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -253,6 +260,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -285,6 +293,7 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0, "width": "300px" }, @@ -315,6 +324,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -347,6 +357,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -379,6 +390,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -407,6 +419,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -439,6 +452,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -469,6 +483,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -477,6 +492,7 @@ "bold": 0, "collapsible": 0, "columns": 0, + "fetch_from": "assigned_by.full_name", "fieldname": "assigned_by_full_name", "fieldtype": "Read Only", "hidden": 0, @@ -489,7 +505,7 @@ "label": "Assigned By Full Name", "length": 0, "no_copy": 0, - "options": "assigned_by.full_name", + "options": "", "permlevel": 0, "precision": "", "print_hide": 0, @@ -500,6 +516,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -530,6 +547,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 } ], @@ -544,7 +562,7 @@ "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-09-30 13:57:29.398598", + "modified": "2018-05-16 22:43:01.858775", "modified_by": "Administrator", "module": "Desk", "name": "ToDo", @@ -552,7 +570,6 @@ "permissions": [ { "amend": 0, - "apply_user_permissions": 0, "cancel": 0, "create": 1, "delete": 1, @@ -572,7 +589,6 @@ }, { "amend": 0, - "apply_user_permissions": 0, "cancel": 0, "create": 1, "delete": 0, diff --git a/frappe/email/doctype/auto_email_report/auto_email_report.json b/frappe/email/doctype/auto_email_report/auto_email_report.json index 03fcbc96e8..a376497e5d 100644 --- a/frappe/email/doctype/auto_email_report/auto_email_report.json +++ b/frappe/email/doctype/auto_email_report/auto_email_report.json @@ -42,6 +42,7 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -74,6 +75,7 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -105,6 +107,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -134,6 +137,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -142,6 +146,7 @@ "bold": 0, "collapsible": 0, "columns": 0, + "fetch_from": "report.report_type", "fieldname": "report_type", "fieldtype": "Read Only", "hidden": 0, @@ -154,7 +159,7 @@ "label": "Report Type", "length": 0, "no_copy": 0, - "options": "report.report_type", + "options": "", "permlevel": 0, "precision": "", "print_hide": 0, @@ -165,6 +170,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -195,6 +201,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -226,6 +233,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -259,6 +267,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -291,6 +300,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -322,6 +332,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -352,6 +363,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -382,6 +394,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -412,6 +425,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -442,6 +456,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -472,6 +487,7 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -505,6 +521,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -534,6 +551,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -565,6 +583,7 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -596,6 +615,7 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -626,6 +646,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { @@ -656,6 +677,7 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 } ], @@ -669,7 +691,7 @@ "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-06-30 12:54:13.350902", + "modified": "2018-05-16 22:42:57.093530", "modified_by": "Administrator", "module": "Email", "name": "Auto Email Report", @@ -678,7 +700,6 @@ "permissions": [ { "amend": 0, - "apply_user_permissions": 0, "cancel": 0, "create": 1, "delete": 1, @@ -698,7 +719,6 @@ }, { "amend": 0, - "apply_user_permissions": 0, "cancel": 0, "create": 1, "delete": 1, diff --git a/frappe/email/doctype/email_account/email_account.json b/frappe/email/doctype/email_account/email_account.json index 554aaabc79..89d7adfcab 100644 --- a/frappe/email/doctype/email_account/email_account.json +++ b/frappe/email/doctype/email_account/email_account.json @@ -1,5 +1,6 @@ { "allow_copy": 0, + "allow_guest_to_view": 0, "allow_import": 0, "allow_rename": 1, "autoname": "field:email_account_name", @@ -13,6 +14,7 @@ "engine": "InnoDB", "fields": [ { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -40,9 +42,11 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -69,9 +73,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -100,9 +106,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -129,9 +137,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -158,9 +168,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -188,9 +200,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -217,9 +231,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -248,9 +264,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -279,9 +297,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -308,9 +328,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -339,9 +361,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -370,15 +394,18 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, "columns": 0, "depends_on": "eval:!doc.domain && doc.enable_incoming", "description": "e.g. pop.gmail.com / imap.gmail.com", + "fetch_from": "domain.email_server", "fieldname": "email_server", "fieldtype": "Data", "hidden": 0, @@ -391,7 +418,7 @@ "label": "Email Server", "length": 0, "no_copy": 0, - "options": "domain.email_server", + "options": "", "permlevel": 0, "precision": "", "print_hide": 0, @@ -402,9 +429,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -433,9 +462,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -466,9 +497,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -499,9 +532,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -530,9 +565,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -544,6 +581,8 @@ "hidden": 0, "ignore_user_permissions": 0, "ignore_xss_filter": 0, + "in_filter": 0, + "in_global_search": 0, "in_list_view": 0, "in_standard_filter": 0, "label": "Email Sync Option", @@ -560,9 +599,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -574,6 +615,8 @@ "hidden": 0, "ignore_user_permissions": 0, "ignore_xss_filter": 0, + "in_filter": 0, + "in_global_search": 0, "in_list_view": 0, "in_standard_filter": 0, "label": "Initial Sync Count", @@ -590,9 +633,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -619,9 +664,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -648,9 +695,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -679,9 +728,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -710,9 +761,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -739,9 +792,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -770,15 +825,18 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, "columns": 0, "depends_on": "eval:!doc.domain && doc.enable_outgoing", "description": "e.g. smtp.gmail.com", + "fetch_from": "domain.smtp_server", "fieldname": "smtp_server", "fieldtype": "Data", "hidden": 0, @@ -791,7 +849,7 @@ "label": "SMTP Server", "length": 0, "no_copy": 0, - "options": "domain.smtp_server", + "options": "", "permlevel": 0, "precision": "", "print_hide": 0, @@ -802,9 +860,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -833,15 +893,18 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, "columns": 0, "depends_on": "eval:!doc.domain && doc.enable_outgoing", "description": "If non standard port (e.g. 587). If on Google Cloud, try port 2525.", + "fetch_from": "domain.smtp_port", "fieldname": "smtp_port", "fieldtype": "Data", "hidden": 0, @@ -854,7 +917,7 @@ "label": "Port", "length": 0, "no_copy": 0, - "options": "domain.smtp_port", + "options": "", "permlevel": 0, "precision": "", "print_hide": 0, @@ -865,9 +928,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -896,9 +961,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -927,9 +994,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -957,9 +1026,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -986,9 +1057,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1016,9 +1089,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1046,9 +1121,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1075,9 +1152,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1104,9 +1183,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1135,9 +1216,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1164,9 +1247,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1193,9 +1278,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1222,9 +1309,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1251,9 +1340,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1280,9 +1371,11 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -1309,21 +1402,22 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 } ], + "has_web_view": 0, "hide_heading": 0, "hide_toolbar": 0, "icon": "fa fa-inbox", "idx": 0, "image_view": 0, "in_create": 0, - "is_submittable": 0, "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-03-10 17:00:50.782901", + "modified": "2018-05-16 22:43:24.606771", "modified_by": "Administrator", "module": "Email", "name": "Email Account", @@ -1332,7 +1426,6 @@ "permissions": [ { "amend": 0, - "apply_user_permissions": 0, "cancel": 0, "create": 1, "delete": 1, @@ -1359,4 +1452,4 @@ "sort_order": "DESC", "track_changes": 1, "track_seen": 0 -} +} \ No newline at end of file diff --git a/frappe/email/doctype/newsletter_email_group/newsletter_email_group.json b/frappe/email/doctype/newsletter_email_group/newsletter_email_group.json index d08fedaf49..7d961282b2 100644 --- a/frappe/email/doctype/newsletter_email_group/newsletter_email_group.json +++ b/frappe/email/doctype/newsletter_email_group/newsletter_email_group.json @@ -1,5 +1,6 @@ { "allow_copy": 0, + "allow_guest_to_view": 0, "allow_import": 0, "allow_rename": 0, "beta": 0, @@ -12,6 +13,7 @@ "engine": "InnoDB", "fields": [ { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, @@ -39,13 +41,16 @@ "reqd": 1, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 }, { + "allow_bulk_edit": 0, "allow_on_submit": 0, "bold": 0, "collapsible": 0, "columns": 0, + "fetch_from": "email_group.total_subscribers", "fieldname": "total_subscribers", "fieldtype": "Read Only", "hidden": 0, @@ -58,7 +63,7 @@ "label": "Total Subscribers", "length": 0, "no_copy": 0, - "options": "email_group.total_subscribers", + "options": "", "permlevel": 0, "precision": "", "print_hide": 0, @@ -69,20 +74,21 @@ "reqd": 0, "search_index": 0, "set_only_once": 0, + "translatable": 0, "unique": 0 } ], + "has_web_view": 0, "hide_heading": 0, "hide_toolbar": 0, "idx": 0, "image_view": 0, "in_create": 0, - "is_submittable": 0, "issingle": 0, "istable": 1, "max_attachments": 0, - "modified": "2017-02-26 16:23:57.351167", + "modified": "2018-05-16 22:42:55.437367", "modified_by": "Administrator", "module": "Email", "name": "Newsletter Email Group", diff --git a/frappe/model/base_document.py b/frappe/model/base_document.py index 2d2c83befe..fcc8098b2b 100644 --- a/frappe/model/base_document.py +++ b/frappe/model/base_document.py @@ -452,7 +452,7 @@ class BaseDocument(object): values = frappe._dict(name=frappe.db.get_value(doctype, docname, 'name', cache=True)) else: - values_to_fetch = ['name'] + [_df.options.split('.')[-1] + values_to_fetch = ['name'] + [_df.fetch_from.split('.')[-1] for _df in fields_to_fetch] # don't cache if fetching other values too @@ -466,7 +466,7 @@ class BaseDocument(object): setattr(self, df.fieldname, values.name) for _df in fields_to_fetch: - setattr(self, _df.fieldname, values[_df.options.split('.')[-1]]) + setattr(self, _df.fieldname, values[_df.fetch_from.split('.')[-1]]) notify_link_count(doctype, docname) diff --git a/frappe/model/mapper.py b/frappe/model/mapper.py index 871ba145f0..6bf20199a8 100644 --- a/frappe/model/mapper.py +++ b/frappe/model/mapper.py @@ -181,7 +181,7 @@ def map_fetch_fields(target_doc, df, no_copy_fields): if ((not target_doc.get(fetch_df.fieldname) or fetch_df.fieldtype == "Read Only") and fetch_df.fieldname not in no_copy_fields): - source_fieldname = fetch_df.options.split(".")[1] + source_fieldname = fetch_df.fetch_from.split(".")[1] if not linked_doc: try: diff --git a/frappe/model/meta.py b/frappe/model/meta.py index 49093edda2..4194ff4bed 100644 --- a/frappe/model/meta.py +++ b/frappe/model/meta.py @@ -197,13 +197,13 @@ class Meta(Document): for df in self.fields: if df.fieldtype in ('Data', 'Read Only', 'Text', 'Small Text', - 'Text Editor', 'Code') and df.options: + 'Text Editor', 'Code', 'Link') and df.fetch_from: if link_fieldname: - if df.options.startswith(link_fieldname + '.'): + if df.fetch_from.startswith(link_fieldname + '.'): out.append(df) else: - if '.' in df.options: - fieldname = df.options.split('.', 1)[0] + if '.' in df.fetch_from: + fieldname = df.fetch_from.split('.', 1)[0] if fieldname in link_fields: out.append(df) diff --git a/frappe/model/utils/__init__.py b/frappe/model/utils/__init__.py index a7b26b94f5..e5d329cd79 100644 --- a/frappe/model/utils/__init__.py +++ b/frappe/model/utils/__init__.py @@ -90,7 +90,7 @@ def get_fetch_values(doctype, fieldname, value): link_df = meta.get_field(fieldname) for df in meta.get_fields_to_fetch(fieldname): # example shipping_address.gistin - link_field, source_fieldname = df.options.split('.', 1) + link_field, source_fieldname = df.fetch_from.split('.', 1) out[df.fieldname] = frappe.db.get_value(link_df.options, value, source_fieldname) return out diff --git a/frappe/patches.txt b/frappe/patches.txt index f3c479fe5c..67753c8b4e 100644 --- a/frappe/patches.txt +++ b/frappe/patches.txt @@ -214,3 +214,4 @@ frappe.patches.v10_0.set_no_copy_to_workflow_state frappe.patches.v10_0.increase_single_table_column_length frappe.patches.v11_0.create_contact_for_user frappe.patches.v11_0.update_list_user_settings +frappe.patches.v11_0.copy_fetch_data_from_options diff --git a/frappe/patches/v11_0/copy_fetch_data_from_options.py b/frappe/patches/v11_0/copy_fetch_data_from_options.py new file mode 100644 index 0000000000..977fe8ace7 --- /dev/null +++ b/frappe/patches/v11_0/copy_fetch_data_from_options.py @@ -0,0 +1,30 @@ +import frappe + +def execute(): + frappe.reload_doc("core", "doctype", "docfield", force=True) + frappe.reload_doc("custom", "doctype", "custom_field", force=True) + frappe.reload_doc("custom", "doctype", "customize_form_field", force=True) + frappe.reload_doc("custom", "doctype", "property_setter", force=True) + + frappe.db.sql(''' + update `tabDocField` + set fetch_from = options, options='' + where options like '%.%' and (fetch_from is NULL OR fetch_from='') + and fieldtype in ('Data', 'Read Only', 'Text', 'Small Text', 'Text Editor', 'Code', 'Link') + and fieldname!='naming_series' + ''') + + frappe.db.sql(''' + update `tabCustom Field` + set fetch_from = options, options='' + where options like '%.%' and (fetch_from is NULL OR fetch_from='') + and fieldtype in ('Data', 'Read Only', 'Text', 'Small Text', 'Text Editor', 'Code', 'Link') + and fieldname!='naming_series' + ''') + + frappe.db.sql(''' + update `tabProperty Setter` + set property="fetch_from" + where property="options" and value like '%.%' + and property_type in ('Data', 'Read Only', 'Text', 'Small Text', 'Text Editor', 'Code', 'Link') + ''') diff --git a/frappe/public/js/frappe/form/script_manager.js b/frappe/public/js/frappe/form/script_manager.js index cf02ba9fb2..7a33655ddc 100644 --- a/frappe/public/js/frappe/form/script_manager.js +++ b/frappe/public/js/frappe/form/script_manager.js @@ -169,9 +169,9 @@ frappe.ui.form.ScriptManager = Class.extend({ function setup_add_fetch(df) { if((['Data', 'Read Only', 'Text', 'Small Text', - 'Text Editor', 'Code'].includes(df.fieldtype) || df.read_only==1) - && df.options && df.options.indexOf(".")!=-1) { - var parts = df.options.split("."); + 'Text Editor', 'Code', 'Link'].includes(df.fieldtype) || df.read_only==1) + && df.fetch_from && df.fetch_from.indexOf(".")!=-1) { + var parts = df.fetch_from.split("."); me.frm.add_fetch(parts[0], parts[1], df.fieldname); } }