blob: 016f1c423efb07e5642d9927fbfc4d73250182bf [file] [log] [blame]
Anand Doshid57e7932015-02-24 12:24:53 +05301from __future__ import unicode_literals
Chillar Anand915b3432021-09-02 16:44:59 +05302
Rushabh Mehta156ce602015-09-11 18:49:59 +05303from frappe import _
4
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +05305app_name = "erpnext"
6app_title = "ERPNext"
Rushabh Mehtaba02ce62015-07-22 15:07:25 +05307app_publisher = "Frappe Technologies Pvt. Ltd."
Rushabh Mehtaedc8ab02015-11-18 16:48:19 +05308app_description = """ERP made simple"""
Rushabh Mehta2167ff52016-12-07 11:08:48 +05309app_icon = "fa fa-th"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053010app_color = "#e74c3c"
Nabin Hait7ba4d022015-11-05 16:55:10 +053011app_email = "info@erpnext.com"
12app_license = "GNU General Public License (v3)"
Rushabh Mehta7d23e422015-11-02 10:45:18 +053013source_link = "https://github.com/frappe/erpnext"
Shivam Mishra8261df22020-10-19 13:52:35 +053014app_logo_url = "/assets/erpnext/images/erpnext-logo.svg"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053015
scmmishra734d3e02018-11-03 18:03:35 +053016
Sahil Khanad4eb642020-06-30 17:54:41 +053017develop_version = '13.x.x-develop'
Rushabh Mehtadb206f22017-03-10 09:38:58 +053018
Faris Ansari464d8382021-05-07 14:53:42 +053019app_include_js = "erpnext.bundle.js"
20app_include_css = "erpnext.bundle.css"
21web_include_js = "erpnext-web.bundle.js"
22web_include_css = "erpnext-web.bundle.css"
Suraj Shetty815aad12021-05-23 13:31:54 +053023email_css = "email_erpnext.bundle.css"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053024
mbauskarf54b1042017-03-13 16:32:46 +053025doctype_js = {
Abhishek Balam346ca562020-10-14 18:11:04 +053026 "Address": "public/js/address.js",
mbauskarf54b1042017-03-13 16:32:46 +053027 "Communication": "public/js/communication.js",
Faris Ansari5f8b3582019-03-19 11:48:32 +053028 "Event": "public/js/event.js",
Noah Jacobcbddeda2021-07-26 12:54:35 +053029 "Newsletter": "public/js/newsletter.js",
30 "Contact": "public/js/contact.js"
mbauskarf54b1042017-03-13 16:32:46 +053031}
32
Abhishek Balam6e9e7b42020-10-14 19:31:37 +053033override_doctype_class = {
Faris Ansari22bcad92020-10-16 15:28:12 +053034 'Address': 'erpnext.accounts.custom.address.ERPNextAddress'
Abhishek Balam6e9e7b42020-10-14 19:31:37 +053035}
36
Neil Trini Lasrado771fbb82018-08-24 15:15:56 +053037welcome_email = "erpnext.setup.utils.welcome_email"
38
Rushabh Mehta37b4d752015-11-09 16:53:11 +053039# setup wizard
40setup_wizard_requires = "assets/erpnext/js/setup_wizard.js"
Prateeksha Singh8b0b56d2017-12-21 11:55:58 +053041setup_wizard_stages = "erpnext.setup.setup_wizard.setup_wizard.get_setup_stages"
Prateeksha Singh95d8fd32017-09-04 11:14:04 +053042setup_wizard_test = "erpnext.setup.setup_wizard.test_setup_wizard.run_setup_wizard_test"
Rushabh Mehta37b4d752015-11-09 16:53:11 +053043
Rushabh Mehtad55bdcf2015-12-31 11:12:48 +053044before_install = "erpnext.setup.install.check_setup_wizard_not_completed"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053045after_install = "erpnext.setup.install.after_install"
46
47boot_session = "erpnext.startup.boot.boot_session"
48notification_config = "erpnext.startup.notifications.get_notification_config"
Rushabh Mehta05ce7ec2017-02-22 16:15:43 +053049get_help_messages = "erpnext.utilities.activation.get_help_messages"
prssanna3f1444e2019-09-24 13:04:53 +053050leaderboards = "erpnext.startup.leaderboard.get_leaderboards"
Prssanna Desai82ddef52020-06-18 18:18:41 +053051filters_config = "erpnext.startup.filters.get_filters_config"
prssannab57b3c92020-10-22 15:37:47 +053052additional_print_settings = "erpnext.controllers.print_settings.get_print_settings"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053053
Faris Ansari38ac7f72019-10-09 11:41:33 +053054on_session_creation = [
55 "erpnext.portal.utils.create_customer_or_supplier",
marination22f41a12021-02-25 13:56:38 +053056 "erpnext.e_commerce.shopping_cart.utils.set_cart_count"
Faris Ansari38ac7f72019-10-09 11:41:33 +053057]
marination22f41a12021-02-25 13:56:38 +053058on_logout = "erpnext.e_commerce.shopping_cart.utils.clear_cart_count"
Anand Doshif9fc04c2015-02-23 22:14:12 +053059
Mangesh-Khairnar07aae762019-06-26 11:03:57 +053060treeviews = ['Account', 'Cost Center', 'Warehouse', 'Item Group', 'Customer Group', 'Sales Person', 'Territory', 'Assessment Group', 'Department']
Rushabh Mehta764aa922016-05-02 13:28:46 +053061
Anand Doshif9fc04c2015-02-23 22:14:12 +053062# website
marination22f41a12021-02-25 13:56:38 +053063update_website_context = ["erpnext.e_commerce.shopping_cart.utils.update_website_context", "erpnext.education.doctype.education_settings.education_settings.update_website_context"]
64my_account_context = "erpnext.e_commerce.shopping_cart.utils.update_my_account_context"
Shariq Ansari9aa6f522021-09-14 12:49:08 +053065webform_list_context = "erpnext.controllers.website_list_for_contact.get_webform_list_context"
Rushabh Mehta621d6ea2015-07-08 12:39:27 +053066
Zarrar13ddc7e2018-03-20 12:38:43 +053067calendars = ["Task", "Work Order", "Leave Application", "Sales Order", "Holiday List", "Course Schedule"]
Rushabh Mehta621d6ea2015-07-08 12:39:27 +053068
Rushabh Mehtabc4e2cd2017-10-17 12:30:34 +053069domains = {
Ameya Shenoy5c623682017-12-06 18:36:27 +053070 'Agriculture': 'erpnext.domains.agriculture',
Rushabh Mehtabc4e2cd2017-10-17 12:30:34 +053071 'Distribution': 'erpnext.domains.distribution',
72 'Education': 'erpnext.domains.education',
Rushabh Mehtabc4e2cd2017-10-17 12:30:34 +053073 'Hospitality': 'erpnext.domains.hospitality',
74 'Manufacturing': 'erpnext.domains.manufacturing',
Zarrarde8f6122017-12-13 18:36:08 +053075 'Non Profit': 'erpnext.domains.non_profit',
Rushabh Mehtabc4e2cd2017-10-17 12:30:34 +053076 'Retail': 'erpnext.domains.retail',
77 'Services': 'erpnext.domains.services',
78}
79
marination025574d2021-02-19 12:50:01 +053080website_generators = ["Item Group", "Website Item", "BOM", "Sales Partner",
Rushabh Mehtadbb51542017-08-10 21:06:09 +053081 "Job Opening", "Student Admission"]
Rushabh Mehta621d6ea2015-07-08 12:39:27 +053082
Rushabh Mehta2e7c36e2015-04-16 12:41:42 +053083website_context = {
Rucha Mahabal01bea142021-10-04 09:58:38 +053084 "favicon": "/assets/erpnext/images/erpnext-favicon.svg",
Shivam Mishra8261df22020-10-19 13:52:35 +053085 "splash_image": "/assets/erpnext/images/erpnext-logo.svg"
Rushabh Mehta2e7c36e2015-04-16 12:41:42 +053086}
87
Anand Doshif9fc04c2015-02-23 22:14:12 +053088website_route_rules = [
89 {"from_route": "/orders", "to_route": "Sales Order"},
Rushabh Mehta156ce602015-09-11 18:49:59 +053090 {"from_route": "/orders/<path:name>", "to_route": "order",
91 "defaults": {
92 "doctype": "Sales Order",
Britlog4c7709e2017-07-28 15:24:22 +020093 "parents": [{"label": _("Orders"), "route": "orders"}]
Rushabh Mehta156ce602015-09-11 18:49:59 +053094 }
95 },
Anand Doshif9fc04c2015-02-23 22:14:12 +053096 {"from_route": "/invoices", "to_route": "Sales Invoice"},
Rushabh Mehta156ce602015-09-11 18:49:59 +053097 {"from_route": "/invoices/<path:name>", "to_route": "order",
98 "defaults": {
99 "doctype": "Sales Invoice",
Britlog4c7709e2017-07-28 15:24:22 +0200100 "parents": [{"label": _("Invoices"), "route": "invoices"}]
Rushabh Mehta156ce602015-09-11 18:49:59 +0530101 }
102 },
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530103 {"from_route": "/supplier-quotations", "to_route": "Supplier Quotation"},
104 {"from_route": "/supplier-quotations/<path:name>", "to_route": "order",
Rohit Waghchaure21499e82016-09-21 16:49:58 +0530105 "defaults": {
106 "doctype": "Supplier Quotation",
Brown-Harry Bomad3fa1912017-09-27 08:23:38 +0100107 "parents": [{"label": _("Supplier Quotation"), "route": "supplier-quotations"}]
Rohit Waghchaure21499e82016-09-21 16:49:58 +0530108 }
109 },
Faris Ansari38ac7f72019-10-09 11:41:33 +0530110 {"from_route": "/purchase-orders", "to_route": "Purchase Order"},
111 {"from_route": "/purchase-orders/<path:name>", "to_route": "order",
112 "defaults": {
113 "doctype": "Purchase Order",
114 "parents": [{"label": _("Purchase Order"), "route": "purchase-orders"}]
115 }
116 },
117 {"from_route": "/purchase-invoices", "to_route": "Purchase Invoice"},
118 {"from_route": "/purchase-invoices/<path:name>", "to_route": "order",
119 "defaults": {
120 "doctype": "Purchase Invoice",
121 "parents": [{"label": _("Purchase Invoice"), "route": "purchase-invoices"}]
122 }
123 },
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530124 {"from_route": "/quotations", "to_route": "Quotation"},
125 {"from_route": "/quotations/<path:name>", "to_route": "order",
126 "defaults": {
127 "doctype": "Quotation",
Rushabh Mehtadbb51542017-08-10 21:06:09 +0530128 "parents": [{"label": _("Quotations"), "route": "quotations"}]
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530129 }
130 },
Anand Doshif9fc04c2015-02-23 22:14:12 +0530131 {"from_route": "/shipments", "to_route": "Delivery Note"},
Rushabh Mehta156ce602015-09-11 18:49:59 +0530132 {"from_route": "/shipments/<path:name>", "to_route": "order",
133 "defaults": {
Anand Doshi4b127402015-11-26 18:22:03 +0530134 "doctype": "Delivery Note",
Britlog4c7709e2017-07-28 15:24:22 +0200135 "parents": [{"label": _("Shipments"), "route": "shipments"}]
Rushabh Mehta156ce602015-09-11 18:49:59 +0530136 }
Kanchan Chauhan2e8cc892016-02-19 17:27:23 +0530137 },
rohitwaghchaurea1064a62016-03-03 14:00:35 +0530138 {"from_route": "/rfq", "to_route": "Request for Quotation"},
139 {"from_route": "/rfq/<path:name>", "to_route": "rfq",
140 "defaults": {
141 "doctype": "Request for Quotation",
Britlog4c7709e2017-07-28 15:24:22 +0200142 "parents": [{"label": _("Request for Quotation"), "route": "rfq"}]
rohitwaghchaurea1064a62016-03-03 14:00:35 +0530143 }
144 },
Kanchan Chauhan1605ff02016-07-04 14:28:09 +0530145 {"from_route": "/addresses", "to_route": "Address"},
146 {"from_route": "/addresses/<path:name>", "to_route": "addresses",
147 "defaults": {
148 "doctype": "Address",
Britlog4c7709e2017-07-28 15:24:22 +0200149 "parents": [{"label": _("Addresses"), "route": "addresses"}]
Kanchan Chauhan1605ff02016-07-04 14:28:09 +0530150 }
151 },
Kanchan Chauhan2e8cc892016-02-19 17:27:23 +0530152 {"from_route": "/jobs", "to_route": "Job Opening"},
Neil Trini Lasrado83d81202016-09-15 14:48:13 +0530153 {"from_route": "/admissions", "to_route": "Student Admission"},
Vishal Dhayagudeedb27492017-07-25 10:53:12 +0530154 {"from_route": "/boms", "to_route": "BOM"},
155 {"from_route": "/timesheets", "to_route": "Timesheet"},
Doridel Cahanap2b14d6a2018-11-13 14:37:16 +0800156 {"from_route": "/material-requests", "to_route": "Material Request"},
157 {"from_route": "/material-requests/<path:name>", "to_route": "material_request_info",
158 "defaults": {
159 "doctype": "Material Request",
160 "parents": [{"label": _("Material Request"), "route": "material-requests"}]
161 }
162 },
Jannat Patel5a425112021-07-01 17:17:34 +0530163 {"from_route": "/project", "to_route": "Project"}
Anand Doshif9fc04c2015-02-23 22:14:12 +0530164]
165
Rushabh Mehtab9cdb052017-03-08 12:33:43 +0530166standard_portal_menu_items = [
Rushabh Mehta0c76f212016-04-01 11:53:50 +0530167 {"title": _("Projects"), "route": "/project", "reference_doctype": "Project"},
Rushabh Mehtafc800b32016-09-23 21:51:51 +0530168 {"title": _("Request for Quotations"), "route": "/rfq", "reference_doctype": "Request for Quotation", "role": "Supplier"},
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530169 {"title": _("Supplier Quotation"), "route": "/supplier-quotations", "reference_doctype": "Supplier Quotation", "role": "Supplier"},
Faris Ansari38ac7f72019-10-09 11:41:33 +0530170 {"title": _("Purchase Orders"), "route": "/purchase-orders", "reference_doctype": "Purchase Order", "role": "Supplier"},
171 {"title": _("Purchase Invoices"), "route": "/purchase-invoices", "reference_doctype": "Purchase Invoice", "role": "Supplier"},
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530172 {"title": _("Quotations"), "route": "/quotations", "reference_doctype": "Quotation", "role":"Customer"},
Rushabh Mehtafc800b32016-09-23 21:51:51 +0530173 {"title": _("Orders"), "route": "/orders", "reference_doctype": "Sales Order", "role":"Customer"},
174 {"title": _("Invoices"), "route": "/invoices", "reference_doctype": "Sales Invoice", "role":"Customer"},
175 {"title": _("Shipments"), "route": "/shipments", "reference_doctype": "Delivery Note", "role":"Customer"},
176 {"title": _("Issues"), "route": "/issues", "reference_doctype": "Issue", "role":"Customer"},
Neil Trini Lasrado3f0a5812016-07-19 14:17:33 +0530177 {"title": _("Addresses"), "route": "/addresses", "reference_doctype": "Address"},
Manas Solankie716da02017-09-18 16:00:34 +0530178 {"title": _("Timesheets"), "route": "/timesheets", "reference_doctype": "Timesheet", "role":"Customer"},
Manas Solankie716da02017-09-18 16:00:34 +0530179 {"title": _("Fees"), "route": "/fees", "reference_doctype": "Fees", "role":"Student"},
Manas Solanki05180012017-10-05 14:31:31 +0530180 {"title": _("Newsletter"), "route": "/newsletters", "reference_doctype": "Newsletter"},
Faris Ansari38ac7f72019-10-09 11:41:33 +0530181 {"title": _("Admission"), "route": "/admissions", "reference_doctype": "Student Admission", "role": "Student"},
182 {"title": _("Certification"), "route": "/certification", "reference_doctype": "Certification Application", "role": "Non Profit Portal User"},
Doridel Cahanap2b14d6a2018-11-13 14:37:16 +0800183 {"title": _("Material Request"), "route": "/material-requests", "reference_doctype": "Material Request", "role": "Customer"},
0Pranav5f5c7252019-12-18 16:21:50 +0530184 {"title": _("Appointment Booking"), "route": "/book_appointment"},
Rushabh Mehtafc800b32016-09-23 21:51:51 +0530185]
186
187default_roles = [
Rushabh Mehta95439db2017-01-14 00:25:22 +0530188 {'role': 'Customer', 'doctype':'Contact', 'email_field': 'email_id'},
189 {'role': 'Supplier', 'doctype':'Contact', 'email_field': 'email_id'},
Vishal Dhayagudeedb27492017-07-25 10:53:12 +0530190 {'role': 'Student', 'doctype':'Student', 'email_field': 'student_email_id'},
Rushabh Mehtac78b3112016-03-30 12:29:48 +0530191]
192
Suraj Shettyf1ffdb32019-06-07 12:48:13 +0530193sounds = [
194 {"name": "incoming-call", "src": "/assets/erpnext/sounds/incoming-call.mp3", "volume": 0.2},
195 {"name": "call-disconnect", "src": "/assets/erpnext/sounds/call-disconnect.mp3", "volume": 0.2},
196]
197
shariquerik19893752021-03-26 16:34:22 +0530198has_upload_permission = {
199 "Employee": "erpnext.hr.doctype.employee.employee.has_upload_permission"
200}
201
Anand Doshif9fc04c2015-02-23 22:14:12 +0530202has_website_permission = {
203 "Sales Order": "erpnext.controllers.website_list_for_contact.has_website_permission",
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530204 "Quotation": "erpnext.controllers.website_list_for_contact.has_website_permission",
Anand Doshif9fc04c2015-02-23 22:14:12 +0530205 "Sales Invoice": "erpnext.controllers.website_list_for_contact.has_website_permission",
Rohit Waghchaure21499e82016-09-21 16:49:58 +0530206 "Supplier Quotation": "erpnext.controllers.website_list_for_contact.has_website_permission",
Faris Ansari38ac7f72019-10-09 11:41:33 +0530207 "Purchase Order": "erpnext.controllers.website_list_for_contact.has_website_permission",
208 "Purchase Invoice": "erpnext.controllers.website_list_for_contact.has_website_permission",
Doridel Cahanap2b14d6a2018-11-13 14:37:16 +0800209 "Material Request": "erpnext.controllers.website_list_for_contact.has_website_permission",
Rushabh Mehtaa33d4682015-06-01 17:15:42 +0530210 "Delivery Note": "erpnext.controllers.website_list_for_contact.has_website_permission",
Vishal Dhayagudeedb27492017-07-25 10:53:12 +0530211 "Issue": "erpnext.support.doctype.issue.issue.has_website_permission",
Rushabh Mehtaf0569742017-09-13 12:52:30 +0530212 "Timesheet": "erpnext.controllers.website_list_for_contact.has_website_permission",
Anand Doshif9fc04c2015-02-23 22:14:12 +0530213}
Rushabh Mehta3daa49a2014-10-21 16:16:30 +0530214
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530215dump_report_map = "erpnext.startup.report_data_map.data_map"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530216
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530217before_tests = "erpnext.setup.utils.before_tests"
218
Rushabh Mehta308e6ea2015-03-24 17:34:58 +0530219standard_queries = {
Jamsheerc0097ad2018-11-23 11:37:58 +0530220 "Customer": "erpnext.selling.doctype.customer.customer.get_customer_list",
Rushabh Mehta308e6ea2015-03-24 17:34:58 +0530221}
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530222
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530223doc_events = {
Rucha Mahabalc91e03c2020-11-28 20:24:06 +0530224 "*": {
Himanshuec25d592021-06-14 19:05:52 +0530225 "validate": "erpnext.support.doctype.service_level_agreement.service_level_agreement.apply",
Rucha Mahabalc91e03c2020-11-28 20:24:06 +0530226 },
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530227 "Stock Entry": {
Nabin Hait4acd4312014-11-04 15:32:31 +0530228 "on_submit": "erpnext.stock.doctype.material_request.material_request.update_completed_and_requested_qty",
229 "on_cancel": "erpnext.stock.doctype.material_request.material_request.update_completed_and_requested_qty"
Anand Doshi648062d2014-05-05 16:46:14 +0530230 },
231 "User": {
KanchanChauhan1dc26b12017-06-13 15:26:35 +0530232 "after_insert": "frappe.contacts.doctype.contact.contact.update_contact",
Anand Doshi49856912014-05-28 18:49:13 +0530233 "validate": "erpnext.hr.doctype.employee.employee.validate_employee_role",
Rushabh Mehta0d6db6c2017-03-31 23:01:45 +0530234 "on_update": ["erpnext.hr.doctype.employee.employee.update_user_permissions",
235 "erpnext.portal.utils.set_default_role"]
Rushabh Mehta3daa49a2014-10-21 16:16:30 +0530236 },
Himanshuec25d592021-06-14 19:05:52 +0530237 "Communication": {
Ganga Manojf4fc1382021-07-14 11:43:10 +0530238 "on_update": [
239 "erpnext.support.doctype.service_level_agreement.service_level_agreement.update_hold_time",
240 "erpnext.support.doctype.issue.issue.set_first_response_time"
241 ]
Himanshuec25d592021-06-14 19:05:52 +0530242 },
marinationeef9cf12021-02-16 18:45:36 +0530243 ("Sales Taxes and Charges Template", "Price List"): {
244 "on_update": "erpnext.e_commerce.doctype.e_commerce_settings.e_commerce_settings.validate_cart_settings"
Rushabh Mehta3daa49a2014-10-21 16:16:30 +0530245 },
Anand Doshie3bd78e2016-04-22 18:53:21 +0530246 "Website Settings": {
marination939b0dd2021-02-10 19:44:10 +0530247 "validate": "erpnext.e_commerce.doctype.e_commerce_settings.e_commerce_settings.home_page_is_products"
Saurabhe4e89542016-07-21 20:26:46 +0530248 },
Deepesh Gargd07447a2020-11-24 08:09:17 +0530249 "Tax Category": {
250 "validate": "erpnext.regional.india.utils.validate_tax_category"
251 },
Charles-Henri Decultotb8c088e2018-02-21 06:37:33 +0100252 "Sales Invoice": {
Ahmad8a425702021-09-14 14:45:23 +0500253 "after_insert": "erpnext.regional.saudi_arabia.utils.create_qr_code",
vishdhad3ec1c12020-03-24 11:31:41 +0530254 "on_submit": [
255 "erpnext.regional.create_transaction_log",
256 "erpnext.regional.italy.utils.sales_invoice_on_submit",
257 "erpnext.erpnext_integrations.taxjar_integration.create_transaction"
258 ],
259 "on_cancel": [
260 "erpnext.regional.italy.utils.sales_invoice_on_cancel",
261 "erpnext.erpnext_integrations.taxjar_integration.delete_transaction"
262 ],
Ahmad87380d02021-09-06 23:36:55 +0500263 "on_trash": [
264 "erpnext.regional.check_deletion_permission",
Ahmad8a425702021-09-14 14:45:23 +0500265 "erpnext.regional.saudi_arabia.utils.delete_qr_code_file"
Ahmad940db712021-09-17 01:14:41 +0500266 ],
Ankush Menat76c85212021-04-07 16:09:58 +0530267 "validate": [
Deepesh Gargc36e48a2021-04-12 10:55:43 +0530268 "erpnext.regional.india.utils.validate_document_name",
269 "erpnext.regional.india.utils.update_taxable_values"
Ankush Menat76c85212021-04-07 16:09:58 +0530270 ]
Charles-Henri Decultotb8c088e2018-02-21 06:37:33 +0100271 },
Deepesh Garg24f9a802020-06-03 10:59:37 +0530272 "Purchase Invoice": {
hasnain28087b7a8e12020-09-09 20:54:30 +0530273 "validate": [
Deepesh Garg55fe85d2021-05-14 12:17:41 +0530274 "erpnext.regional.india.utils.validate_reverse_charge_transaction",
275 "erpnext.regional.india.utils.update_itc_availed_fields",
hasnain28087b7a8e12020-09-09 20:54:30 +0530276 "erpnext.regional.united_arab_emirates.utils.update_grand_total_for_rcm",
Deepesh Garg55fe85d2021-05-14 12:17:41 +0530277 "erpnext.regional.united_arab_emirates.utils.validate_returns",
278 "erpnext.regional.india.utils.update_taxable_values"
279 ]
Deepesh Garg24f9a802020-06-03 10:59:37 +0530280 },
Saurabhe4e89542016-07-21 20:26:46 +0530281 "Payment Entry": {
Deepesh Garg8b644d82021-07-15 15:36:54 +0530282 "validate": "erpnext.regional.india.utils.update_place_of_supply",
KanchanChauhan2826fd32020-07-23 15:45:03 +0530283 "on_submit": ["erpnext.regional.create_transaction_log", "erpnext.accounts.doctype.payment_request.payment_request.update_payment_req_status", "erpnext.accounts.doctype.dunning.dunning.resolve_dunning"],
Nabin Hait0357fbc2018-03-09 13:19:52 +0530284 "on_trash": "erpnext.regional.check_deletion_permission"
Rushabh Mehtab3c8f442017-06-21 17:22:38 +0530285 },
286 'Address': {
Rucha Mahabal212eb4b2021-08-30 13:10:18 +0530287 'validate': [
288 'erpnext.regional.india.utils.validate_gstin_for_india',
289 'erpnext.regional.italy.utils.set_state_code',
290 'erpnext.regional.india.utils.update_gst_category',
Rucha Mahabal212eb4b2021-08-30 13:10:18 +0530291 ],
Nabin Hait619c42b2018-01-10 17:48:03 +0530292 },
Deepesh Gargbb8cd1c2021-02-22 19:28:45 +0530293 'Supplier': {
294 'validate': 'erpnext.regional.india.utils.validate_pan_for_india'
295 },
Deepesh Garg6e2c13f2019-12-10 15:55:05 +0530296 ('Sales Invoice', 'Sales Order', 'Delivery Note', 'Purchase Invoice', 'Purchase Order', 'Purchase Receipt'): {
297 'validate': ['erpnext.regional.india.utils.set_place_of_supply']
Shridhar Patil4987c4e2018-07-03 10:10:04 +0530298 },
Suraj Shettyd4edd282019-08-09 19:23:04 +0530299 "Contact": {
300 "on_trash": "erpnext.support.doctype.issue.issue.update_issue",
leela3234df52021-01-12 23:31:40 +0530301 "after_insert": "erpnext.telephony.doctype.call_log.call_log.link_existing_conversations",
ChillarAnandc8565c72021-09-02 19:57:43 +0530302 "validate": ["erpnext.crm.utils.update_lead_phone_numbers"]
Suraj Shettyd4edd282019-08-09 19:23:04 +0530303 },
Rucha Mahabal9e35bff2019-07-12 13:56:36 +0530304 "Email Unsubscribe": {
305 "after_insert": "erpnext.crm.doctype.email_campaign.email_campaign.unsubscribe_recipient"
vishdhad3ec1c12020-03-24 11:31:41 +0530306 },
307 ('Quotation', 'Sales Order', 'Sales Invoice'): {
308 'validate': ["erpnext.erpnext_integrations.taxjar_integration.set_sales_tax"]
Deepesh Garg2b2572b2021-08-20 14:40:12 +0530309 },
310 "Company": {
311 "on_trash": "erpnext.regional.india.utils.delete_gst_settings_for_company"
Subin Tom798b4642021-09-03 12:30:57 +0530312 },
313 "Integration Request": {
314 "validate": "erpnext.accounts.doctype.payment_request.payment_request.validate_payment"
Anand Doshie3bd78e2016-04-22 18:53:21 +0530315 }
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530316}
317
vishaldcef7982020-01-13 12:59:52 +0530318# On cancel event Payment Entry will be exempted and all linked submittable doctype will get cancelled.
319# to maintain data integrity we exempted payment entry. it will un-link when sales invoice get cancelled.
320# if payment entry not in auto cancel exempted doctypes it will cancel payment entry.
321auto_cancel_exempted_doctypes= [
Rucha Mahabal4887b692020-10-23 20:33:30 +0530322 "Payment Entry",
vishaldcef7982020-01-13 12:59:52 +0530323]
vishal70148a62019-12-02 17:37:46 +0530324
Rohit Waghchaurea8f78fa2021-04-13 18:43:57 +0530325after_migrate = ["erpnext.setup.install.update_select_perm_after_install"]
326
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530327scheduler_events = {
marination06ee0ea2020-09-07 18:49:06 +0530328 "cron": {
329 "0/30 * * * *": [
Gavin D'souza71ac3992020-09-10 13:57:44 +0530330 "erpnext.utilities.doctype.video.video.update_youtube_data",
marination06ee0ea2020-09-07 18:49:06 +0530331 ]
332 },
Rohit Waghchaure425dff92019-01-17 12:49:45 +0530333 "all": [
Rucha Mahabal5100e112020-02-24 22:08:45 +0530334 "erpnext.projects.doctype.project.project.project_status_update_reminder",
mergify[bot]b9942ad2021-10-01 13:15:40 +0530335 "erpnext.hr.doctype.interview.interview.send_interview_reminder",
Anupam K22318b22020-04-18 00:45:18 +0530336 "erpnext.crm.doctype.social_media_post.social_media_post.process_scheduled_social_media_posts"
Rohit Waghchaure425dff92019-01-17 12:49:45 +0530337 ],
Nabin Hait75807232015-07-02 14:41:27 +0530338 "hourly": [
tundebabzy0ec44522018-03-01 11:33:03 +0100339 'erpnext.hr.doctype.daily_work_summary_group.daily_work_summary_group.trigger_emails',
Pawan Mehta6010a102018-09-05 17:16:57 +0530340 "erpnext.accounts.doctype.subscription.subscription.process_all",
Aditya Hase7bc692d2019-01-07 19:01:47 +0530341 "erpnext.erpnext_integrations.doctype.amazon_mws_settings.amazon_mws_settings.schedule_get_order_details",
342 "erpnext.accounts.doctype.gl_entry.gl_entry.rename_gle_sle_docs",
Nabin Hait34c551d2019-07-03 10:34:31 +0530343 "erpnext.erpnext_integrations.doctype.plaid_settings.plaid_settings.automatic_synchronization",
Rohit Waghchaure425dff92019-01-17 12:49:45 +0530344 "erpnext.projects.doctype.project.project.hourly_reminder",
Himanshu Warekar6e6148b2019-05-10 23:49:42 +0530345 "erpnext.projects.doctype.project.project.collect_project_status",
Himanshu Warekar2373c092019-06-25 16:27:06 +0530346 "erpnext.hr.doctype.shift_type.shift_type.process_auto_attendance_for_all_shifts",
Himanshuec25d592021-06-14 19:05:52 +0530347 "erpnext.support.doctype.service_level_agreement.service_level_agreement.set_service_level_agreement_variance"
Rohit Waghchaureb103b242021-05-27 17:05:36 +0530348 ],
349 "hourly_long": [
rohitwaghchaure575f8f22021-03-24 11:30:53 +0530350 "erpnext.stock.doctype.repost_item_valuation.repost_item_valuation.repost_entries"
Nabin Hait75807232015-07-02 14:41:27 +0530351 ],
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530352 "daily": [
Rushabh Mehtaf8509872014-10-08 12:03:19 +0530353 "erpnext.stock.reorder_item.reorder_item",
Nabin Hait606af962014-12-15 11:57:03 +0530354 "erpnext.support.doctype.issue.issue.auto_close_tickets",
mbauskare1e25a02017-02-16 19:36:59 +0530355 "erpnext.crm.doctype.opportunity.opportunity.auto_close_opportunity",
Rohit Waghchaure2f1db572016-11-08 12:39:33 +0530356 "erpnext.controllers.accounts_controller.update_invoice_status",
Rushabh Mehta5bceebc2015-01-23 15:22:13 +0530357 "erpnext.accounts.doctype.fiscal_year.fiscal_year.auto_create_fiscal_year",
Frappe PR Bot255b99e2021-08-24 20:19:22 +0530358 "erpnext.hr.doctype.employee.employee_reminders.send_work_anniversary_reminders",
359 "erpnext.hr.doctype.employee.employee_reminders.send_birthday_reminders",
Nabin Hait4fdb0522016-03-09 12:40:56 +0530360 "erpnext.projects.doctype.task.task.set_tasks_as_overdue",
Kanchan Chauhane58a41a2017-10-17 15:17:24 +0530361 "erpnext.assets.doctype.asset.depreciation.post_depreciation_entries",
Suraj Shettyd3069fe2018-02-21 15:15:43 +0530362 "erpnext.hr.doctype.daily_work_summary_group.daily_work_summary_group.send_summary",
Prateeksha Singhe012e242017-07-18 10:35:12 +0530363 "erpnext.stock.doctype.serial_no.serial_no.update_maintenance_status",
bcornwellmott96381da2017-07-24 10:12:30 -0700364 "erpnext.buying.doctype.supplier_scorecard.supplier_scorecard.refresh_scorecards",
Nabin Haitadbf8ad2017-07-31 20:45:36 +0530365 "erpnext.setup.doctype.company.company.cache_companies_monthly_sales_history",
Manas Solanki2f4e5ee2018-05-15 15:25:14 +0530366 "erpnext.assets.doctype.asset.asset.update_maintenance_status",
Rohan Bansalbf0f0aa2018-05-23 15:06:45 +0530367 "erpnext.assets.doctype.asset.asset.make_post_gl_entry",
Himanshu Mishra7aabef22018-06-28 23:43:23 +0530368 "erpnext.crm.doctype.contract.contract.update_status_for_contracts",
Himanshu0209ef02018-12-25 17:42:31 +0530369 "erpnext.projects.doctype.project.project.update_project_sales_billing",
Sagar Vora4d1a9b12019-01-22 15:56:39 +0530370 "erpnext.projects.doctype.project.project.send_project_status_email_to_users",
Himanshuf3e52132019-03-19 16:47:56 +0530371 "erpnext.quality_management.doctype.quality_review.quality_review.review",
Himanshu Warekarcf37e402019-05-07 10:27:01 +0530372 "erpnext.support.doctype.service_level_agreement.service_level_agreement.check_agreement_status",
Rucha Mahabalb54459e2019-07-22 03:23:40 +0530373 "erpnext.crm.doctype.email_campaign.email_campaign.send_email_to_leads_or_contacts",
0Pranav53b65ab2019-11-15 16:42:32 +0530374 "erpnext.crm.doctype.email_campaign.email_campaign.set_email_campaign_status",
marination81798042020-04-14 23:05:11 +0530375 "erpnext.selling.doctype.quotation.quotation.set_expired_status",
Abhishek Balamee5b9c72020-08-11 16:23:47 +0530376 "erpnext.buying.doctype.supplier_quotation.supplier_quotation.set_expired_status",
Rucha Mahabalf1cca592021-01-21 16:36:15 +0530377 "erpnext.accounts.doctype.process_statement_of_accounts.process_statement_of_accounts.send_auto_email",
378 "erpnext.non_profit.doctype.membership.membership.set_expired_status"
mergify[bot]b9942ad2021-10-01 13:15:40 +0530379 "erpnext.hr.doctype.interview.interview.send_daily_feedback_reminder"
KanchanChauhan73bd3cb2018-09-05 11:01:35 +0530380 ],
381 "daily_long": [
Gavin D'souzad38f5372019-10-30 14:43:58 +0530382 "erpnext.setup.doctype.email_digest.email_digest.send",
Mangesh-Khairnarf281f002019-08-05 14:47:02 +0530383 "erpnext.manufacturing.doctype.bom_update_tool.bom_update_tool.update_latest_price_in_all_boms",
384 "erpnext.hr.doctype.leave_ledger_entry.leave_ledger_entry.process_expired_allocation",
Deepesh Gargd1d0a502020-02-26 10:44:24 +0530385 "erpnext.hr.utils.generate_leave_encashment",
Anurag Mishra755b7732020-11-25 16:05:17 +0530386 "erpnext.hr.utils.allocate_earned_leaves",
Afshan5d66a2b2021-03-12 15:51:34 +0530387 "erpnext.loan_management.doctype.process_loan_security_shortfall.process_loan_security_shortfall.create_process_loan_security_shortfall",
388 "erpnext.loan_management.doctype.process_loan_interest_accrual.process_loan_interest_accrual.process_loan_interest_accrual_for_term_loans",
Anupam77cf5322020-09-28 18:38:41 +0530389 "erpnext.crm.doctype.lead.lead.daily_open_lead"
KanchanChauhan73bd3cb2018-09-05 11:01:35 +0530390 ],
Frappe PR Bot255b99e2021-08-24 20:19:22 +0530391 "weekly": [
392 "erpnext.hr.doctype.employee.employee_reminders.send_reminders_in_advance_weekly"
393 ],
394 "monthly": [
395 "erpnext.hr.doctype.employee.employee_reminders.send_reminders_in_advance_monthly"
396 ],
Nabin Haitb9b2a062019-05-01 12:49:44 +0530397 "monthly_long": [
Deepesh Gargde03d2c2020-06-01 11:30:34 +0530398 "erpnext.accounts.deferred_revenue.process_deferred_accounting",
Afshan5d66a2b2021-03-12 15:51:34 +0530399 "erpnext.loan_management.doctype.process_loan_interest_accrual.process_loan_interest_accrual.process_loan_interest_accrual_for_demand_loans"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530400 ]
401}
Anand Doshi7f41ff22014-06-26 12:02:55 +0530402
Faris Ansari2c5b3e82017-07-13 18:37:18 +0530403email_brand_image = "assets/erpnext/images/erpnext-logo.jpg"
404
Faris Ansari40d3ad22017-07-31 16:16:22 +0530405default_mail_footer = """
406 <span>
407 Sent via
408 <a class="text-muted" href="https://erpnext.com?source=via_email_footer" target="_blank">
409 ERPNext
410 </a>
411 </span>
412"""
Anand Doshic82331b2015-02-12 18:58:28 +0530413
414get_translated_dict = {
Anand Doshic82331b2015-02-12 18:58:28 +0530415 ("doctype", "Global Defaults"): "frappe.geo.country_info.get_translated_dict"
416}
Rushabh Mehtafe027b32016-03-28 13:21:43 +0530417
418bot_parsers = [
419 'erpnext.utilities.bot.FindItemBot',
Rushabh Mehta0c76f212016-04-01 11:53:50 +0530420]
Anand Doshif576f3b2016-06-25 19:51:48 +0530421
422get_site_info = 'erpnext.utilities.get_site_info'
Saurabh94c666a2016-11-08 20:35:50 +0530423
Saurabh0d47d512017-03-14 14:46:05 +0530424payment_gateway_enabled = "erpnext.accounts.utils.create_payment_gateway_account"
Rushabh Mehta7231f292017-07-13 15:00:56 +0530425
Himanshub84333f2020-04-14 13:02:03 +0530426communication_doctypes = ["Customer", "Supplier"]
427
Glen Whitneydea6a902020-11-17 22:16:13 +0000428accounting_dimension_doctypes = ["GL Entry", "Sales Invoice", "Purchase Invoice", "Payment Entry", "Asset",
429 "Expense Claim", "Expense Claim Detail", "Expense Taxes and Charges", "Stock Entry", "Budget", "Payroll Entry", "Delivery Note",
430 "Sales Invoice Item", "Purchase Invoice Item", "Purchase Order Item", "Journal Entry Account", "Material Request Item", "Delivery Note Item",
431 "Purchase Receipt Item", "Stock Entry Detail", "Payment Entry Deduction", "Sales Taxes and Charges", "Purchase Taxes and Charges", "Shipping Rule",
432 "Landed Cost Item", "Asset Value Adjustment", "Loyalty Program", "Fee Schedule", "Fee Structure", "Stock Reconciliation",
433 "Travel Request", "Fees", "POS Profile", "Opening Invoice Creation Tool", "Opening Invoice Creation Tool Item", "Subscription",
Deepesh Gargc9c89572021-09-16 19:33:57 +0530434 "Subscription Plan", "POS Invoice", "POS Invoice Item"
Glen Whitneydea6a902020-11-17 22:16:13 +0000435]
436
Rushabh Mehta7231f292017-07-13 15:00:56 +0530437regional_overrides = {
Charles-Henri Decultotb8c088e2018-02-21 06:37:33 +0100438 'France': {
439 'erpnext.tests.test_regional.test_method': 'erpnext.regional.france.utils.test_method'
440 },
Rushabh Mehta7231f292017-07-13 15:00:56 +0530441 'India': {
Nabin Haitb962fc12017-07-17 18:02:31 +0530442 'erpnext.tests.test_regional.test_method': 'erpnext.regional.india.utils.test_method',
443 'erpnext.controllers.taxes_and_totals.get_itemised_tax_breakup_header': 'erpnext.regional.india.utils.get_itemised_tax_breakup_header',
Shreya Shah4fa600a2018-06-05 11:27:53 +0530444 'erpnext.controllers.taxes_and_totals.get_itemised_tax_breakup_data': 'erpnext.regional.india.utils.get_itemised_tax_breakup_data',
Ranjith Kurungadama8e047a2018-06-14 17:56:16 +0530445 'erpnext.accounts.party.get_regional_address_details': 'erpnext.regional.india.utils.get_regional_address_details',
Deepesh Garg6a5ef262021-02-19 14:30:23 +0530446 'erpnext.controllers.taxes_and_totals.get_regional_round_off_accounts': 'erpnext.regional.india.utils.get_regional_round_off_accounts',
Ranjith Kurungadama8e047a2018-06-14 17:56:16 +0530447 'erpnext.hr.utils.calculate_annual_eligible_hra_exemption': 'erpnext.regional.india.utils.calculate_annual_eligible_hra_exemption',
Deepesh Garg3c004ad2020-07-02 21:18:29 +0530448 'erpnext.hr.utils.calculate_hra_exemption_for_period': 'erpnext.regional.india.utils.calculate_hra_exemption_for_period',
Saqib3a504902021-08-03 15:57:11 +0530449 'erpnext.assets.doctype.asset.asset.get_depreciation_amount': 'erpnext.regional.india.utils.get_depreciation_amount',
450 'erpnext.stock.doctype.item.item.set_item_tax_from_hsn_code': 'erpnext.regional.india.utils.set_item_tax_from_hsn_code'
rohitwaghchaured4526682017-12-28 14:20:13 +0530451 },
452 'United Arab Emirates': {
hasnain28087b7a8e12020-09-09 20:54:30 +0530453 'erpnext.controllers.taxes_and_totals.update_itemised_tax_data': 'erpnext.regional.united_arab_emirates.utils.update_itemised_tax_data',
454 'erpnext.accounts.doctype.purchase_invoice.purchase_invoice.make_regional_gl_entries': 'erpnext.regional.united_arab_emirates.utils.make_regional_gl_entries',
rohitwaghchaured4526682017-12-28 14:20:13 +0530455 },
456 'Saudi Arabia': {
457 'erpnext.controllers.taxes_and_totals.update_itemised_tax_data': 'erpnext.regional.united_arab_emirates.utils.update_itemised_tax_data'
scmmishra14d70ce2019-03-14 12:31:25 +0530458 },
459 'Italy': {
460 'erpnext.controllers.taxes_and_totals.update_itemised_tax_data': 'erpnext.regional.italy.utils.update_itemised_tax_data',
461 'erpnext.controllers.accounts_controller.validate_regional': 'erpnext.regional.italy.utils.sales_invoice_validate',
Rushabh Mehta7231f292017-07-13 15:00:56 +0530462 }
Manas Solanki2f4e5ee2018-05-15 15:25:14 +0530463}
Mangesh-Khairnar2ffa87e2019-03-20 13:25:48 +0530464user_privacy_documents = [
465 {
466 'doctype': 'Lead',
467 'match_field': 'email_id',
468 'personal_fields': ['phone', 'mobile_no', 'fax', 'website', 'lead_name'],
469 },
470 {
471 'doctype': 'Opportunity',
472 'match_field': 'contact_email',
473 'personal_fields': ['contact_mobile', 'contact_display', 'customer_name'],
474 }
John Clarkeb7339842019-04-04 23:32:25 -0600475]
Himanshu83b0b2a2019-09-27 00:59:48 +0530476
Himanshu Warekar21abc3a2019-09-30 13:40:02 +0530477# ERPNext doctypes for Global Search
Himanshu Warekar23c916c2019-10-02 16:32:53 +0530478global_search_doctypes = {
479 "Default": [
480 {"doctype": "Customer", "index": 0},
481 {"doctype": "Supplier", "index": 1},
482 {"doctype": "Item", "index": 2},
483 {"doctype": "Warehouse", "index": 3},
484 {"doctype": "Account", "index": 4},
485 {"doctype": "Employee", "index": 5},
486 {"doctype": "BOM", "index": 6},
487 {"doctype": "Sales Invoice", "index": 7},
488 {"doctype": "Sales Order", "index": 8},
489 {"doctype": "Quotation", "index": 9},
490 {"doctype": "Work Order", "index": 10},
Walstan Baptista0baebbd2020-12-08 09:43:29 +0530491 {"doctype": "Purchase Order", "index": 11},
492 {"doctype": "Purchase Receipt", "index": 12},
493 {"doctype": "Purchase Invoice", "index": 13},
494 {"doctype": "Delivery Note", "index": 14},
495 {"doctype": "Stock Entry", "index": 15},
496 {"doctype": "Material Request", "index": 16},
497 {"doctype": "Delivery Trip", "index": 17},
498 {"doctype": "Pick List", "index": 18},
499 {"doctype": "Salary Slip", "index": 19},
500 {"doctype": "Leave Application", "index": 20},
501 {"doctype": "Expense Claim", "index": 21},
502 {"doctype": "Payment Entry", "index": 22},
503 {"doctype": "Lead", "index": 23},
504 {"doctype": "Opportunity", "index": 24},
505 {"doctype": "Item Price", "index": 25},
506 {"doctype": "Purchase Taxes and Charges Template", "index": 26},
507 {"doctype": "Sales Taxes and Charges", "index": 27},
508 {"doctype": "Asset", "index": 28},
509 {"doctype": "Project", "index": 29},
510 {"doctype": "Task", "index": 30},
511 {"doctype": "Timesheet", "index": 31},
512 {"doctype": "Issue", "index": 32},
513 {"doctype": "Serial No", "index": 33},
514 {"doctype": "Batch", "index": 34},
515 {"doctype": "Branch", "index": 35},
516 {"doctype": "Department", "index": 36},
517 {"doctype": "Employee Grade", "index": 37},
518 {"doctype": "Designation", "index": 38},
519 {"doctype": "Job Opening", "index": 39},
520 {"doctype": "Job Applicant", "index": 40},
521 {"doctype": "Job Offer", "index": 41},
522 {"doctype": "Salary Structure Assignment", "index": 42},
523 {"doctype": "Appraisal", "index": 43},
524 {"doctype": "Loan", "index": 44},
525 {"doctype": "Maintenance Schedule", "index": 45},
526 {"doctype": "Maintenance Visit", "index": 46},
527 {"doctype": "Warranty Claim", "index": 47},
Himanshu Warekar23c916c2019-10-02 16:32:53 +0530528 ],
Himanshu Warekar23c916c2019-10-02 16:32:53 +0530529 "Education": [
530 {'doctype': 'Article', 'index': 1},
531 {'doctype': 'Video', 'index': 2},
532 {'doctype': 'Topic', 'index': 3},
533 {'doctype': 'Course', 'index': 4},
534 {'doctype': 'Program', 'index': 5},
535 {'doctype': 'Quiz', 'index': 6},
536 {'doctype': 'Question', 'index': 7},
537 {'doctype': 'Fee Schedule', 'index': 8},
538 {'doctype': 'Fee Structure', 'index': 9},
539 {'doctype': 'Fees', 'index': 10},
540 {'doctype': 'Student Group', 'index': 11},
541 {'doctype': 'Student', 'index': 12},
542 {'doctype': 'Instructor', 'index': 13},
543 {'doctype': 'Course Activity', 'index': 14},
544 {'doctype': 'Quiz Activity', 'index': 15},
545 {'doctype': 'Course Enrollment', 'index': 16},
546 {'doctype': 'Program Enrollment', 'index': 17},
547 {'doctype': 'Student Language', 'index': 18},
548 {'doctype': 'Student Applicant', 'index': 19},
549 {'doctype': 'Assessment Result', 'index': 20},
550 {'doctype': 'Assessment Plan', 'index': 21},
551 {'doctype': 'Grading Scale', 'index': 22},
552 {'doctype': 'Guardian', 'index': 23},
553 {'doctype': 'Student Leave Application', 'index': 24},
554 {'doctype': 'Student Log', 'index': 25},
555 {'doctype': 'Room', 'index': 26},
556 {'doctype': 'Course Schedule', 'index': 27},
557 {'doctype': 'Student Attendance', 'index': 28},
558 {'doctype': 'Announcement', 'index': 29},
559 {'doctype': 'Student Category', 'index': 30},
560 {'doctype': 'Assessment Group', 'index': 31},
561 {'doctype': 'Student Batch Name', 'index': 32},
562 {'doctype': 'Assessment Criteria', 'index': 33},
563 {'doctype': 'Academic Year', 'index': 34},
564 {'doctype': 'Academic Term', 'index': 35},
565 {'doctype': 'School House', 'index': 36},
566 {'doctype': 'Student Admission', 'index': 37},
567 {'doctype': 'Fee Category', 'index': 38},
568 {'doctype': 'Assessment Code', 'index': 39},
569 {'doctype': 'Discussion', 'index': 40},
570 ],
571 "Agriculture": [
572 {'doctype': 'Weather', 'index': 1},
573 {'doctype': 'Soil Texture', 'index': 2},
574 {'doctype': 'Water Analysis', 'index': 3},
575 {'doctype': 'Soil Analysis', 'index': 4},
576 {'doctype': 'Plant Analysis', 'index': 5},
577 {'doctype': 'Agriculture Analysis Criteria', 'index': 6},
578 {'doctype': 'Disease', 'index': 7},
579 {'doctype': 'Crop', 'index': 8},
580 {'doctype': 'Fertilizer', 'index': 9},
581 {'doctype': 'Crop Cycle', 'index': 10}
582 ],
583 "Non Profit": [
584 {'doctype': 'Certified Consultant', 'index': 1},
585 {'doctype': 'Certification Application', 'index': 2},
586 {'doctype': 'Volunteer', 'index': 3},
587 {'doctype': 'Membership', 'index': 4},
588 {'doctype': 'Member', 'index': 5},
589 {'doctype': 'Donor', 'index': 6},
590 {'doctype': 'Chapter', 'index': 7},
591 {'doctype': 'Grant Application', 'index': 8},
592 {'doctype': 'Volunteer Type', 'index': 9},
593 {'doctype': 'Donor Type', 'index': 10},
594 {'doctype': 'Membership Type', 'index': 11}
595 ],
596 "Hospitality": [
597 {'doctype': 'Hotel Room', 'index': 0},
598 {'doctype': 'Hotel Room Reservation', 'index': 1},
599 {'doctype': 'Hotel Room Pricing', 'index': 2},
600 {'doctype': 'Hotel Room Package', 'index': 3},
601 {'doctype': 'Hotel Room Type', 'index': 4}
602 ]
Faris Ansari22bcad92020-10-16 15:28:12 +0530603}
leela3234df52021-01-12 23:31:40 +0530604
605additional_timeline_content = {
606 '*': ['erpnext.telephony.doctype.call_log.call_log.get_linked_call_logs']
607}