blob: e98ca4b59763c2f2c5a349cd93ac1e5eff5a2d9f [file] [log] [blame]
Anand Doshid57e7932015-02-24 12:24:53 +05301from __future__ import unicode_literals
Rushabh Mehta156ce602015-09-11 18:49:59 +05302from frappe import _
3
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +05304app_name = "erpnext"
5app_title = "ERPNext"
Rushabh Mehtaba02ce62015-07-22 15:07:25 +05306app_publisher = "Frappe Technologies Pvt. Ltd."
Rushabh Mehtaedc8ab02015-11-18 16:48:19 +05307app_description = """ERP made simple"""
Rushabh Mehta2167ff52016-12-07 11:08:48 +05308app_icon = "fa fa-th"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +05309app_color = "#e74c3c"
Nabin Hait7ba4d022015-11-05 16:55:10 +053010app_email = "info@erpnext.com"
11app_license = "GNU General Public License (v3)"
Rushabh Mehta7d23e422015-11-02 10:45:18 +053012source_link = "https://github.com/frappe/erpnext"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053013
Ameya Shenoy49647bf2018-11-08 12:48:35 +053014develop_version = '12.x.x-develop'
Rushabh Mehtadb206f22017-03-10 09:38:58 +053015
Anand Doshi0c3bb752014-07-09 12:59:56 +053016error_report_email = "support@erpnext.com"
17
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053018app_include_js = "assets/js/erpnext.min.js"
19app_include_css = "assets/css/erpnext.css"
20web_include_js = "assets/js/erpnext-web.min.js"
Solufyin3be899c2018-08-07 18:28:39 +053021web_include_css = "assets/css/erpnext-web.css"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053022
mbauskarf54b1042017-03-13 16:32:46 +053023doctype_js = {
24 "Communication": "public/js/communication.js",
Charles-Henri Decultotefd776d2018-10-03 07:11:26 +020025 "Event": "public/js/event.js"
mbauskarf54b1042017-03-13 16:32:46 +053026}
27
Neil Trini Lasrado771fbb82018-08-24 15:15:56 +053028welcome_email = "erpnext.setup.utils.welcome_email"
29
Rushabh Mehta37b4d752015-11-09 16:53:11 +053030# setup wizard
31setup_wizard_requires = "assets/erpnext/js/setup_wizard.js"
Prateeksha Singh8b0b56d2017-12-21 11:55:58 +053032setup_wizard_stages = "erpnext.setup.setup_wizard.setup_wizard.get_setup_stages"
Prateeksha Singh95d8fd32017-09-04 11:14:04 +053033setup_wizard_test = "erpnext.setup.setup_wizard.test_setup_wizard.run_setup_wizard_test"
Rushabh Mehta37b4d752015-11-09 16:53:11 +053034
Rushabh Mehtad55bdcf2015-12-31 11:12:48 +053035before_install = "erpnext.setup.install.check_setup_wizard_not_completed"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053036after_install = "erpnext.setup.install.after_install"
37
38boot_session = "erpnext.startup.boot.boot_session"
39notification_config = "erpnext.startup.notifications.get_notification_config"
Rushabh Mehta05ce7ec2017-02-22 16:15:43 +053040get_help_messages = "erpnext.utilities.activation.get_help_messages"
Prateeksha Singh95d8fd32017-09-04 11:14:04 +053041get_user_progress_slides = "erpnext.utilities.user_progress.get_user_progress_slides"
42update_and_get_user_progress = "erpnext.utilities.user_progress_utils.update_default_domain_actions_and_get_state"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +053043
Rushabh Mehta3daa49a2014-10-21 16:16:30 +053044on_session_creation = "erpnext.shopping_cart.utils.set_cart_count"
45on_logout = "erpnext.shopping_cart.utils.clear_cart_count"
Anand Doshif9fc04c2015-02-23 22:14:12 +053046
Manas Solanki84e9d452017-11-28 18:04:08 +053047treeviews = ['Account', 'Cost Center', 'Warehouse', 'Item Group', 'Customer Group', 'Sales Person', 'Territory', 'Assessment Group']
Rushabh Mehta764aa922016-05-02 13:28:46 +053048
Anand Doshif9fc04c2015-02-23 22:14:12 +053049# website
50update_website_context = "erpnext.shopping_cart.utils.update_website_context"
51my_account_context = "erpnext.shopping_cart.utils.update_my_account_context"
Rushabh Mehta621d6ea2015-07-08 12:39:27 +053052
Makarand Bauskar1b67d712017-10-04 15:55:56 +053053email_append_to = ["Job Applicant", "Lead", "Opportunity", "Issue"]
Anand Doshif9fc04c2015-02-23 22:14:12 +053054
Zarrar13ddc7e2018-03-20 12:38:43 +053055calendars = ["Task", "Work Order", "Leave Application", "Sales Order", "Holiday List", "Course Schedule"]
Rushabh Mehta621d6ea2015-07-08 12:39:27 +053056
hiousid81e9f32017-11-17 07:12:24 +010057
Kanchan Chauhan1f3d5b72016-03-01 11:33:49 +053058
Rushabh Mehtabc4e2cd2017-10-17 12:30:34 +053059domains = {
Ameya Shenoy5c623682017-12-06 18:36:27 +053060 'Agriculture': 'erpnext.domains.agriculture',
Rushabh Mehtabc4e2cd2017-10-17 12:30:34 +053061 'Distribution': 'erpnext.domains.distribution',
62 'Education': 'erpnext.domains.education',
63 'Healthcare': 'erpnext.domains.healthcare',
64 'Hospitality': 'erpnext.domains.hospitality',
65 'Manufacturing': 'erpnext.domains.manufacturing',
Zarrarde8f6122017-12-13 18:36:08 +053066 'Non Profit': 'erpnext.domains.non_profit',
Rushabh Mehtabc4e2cd2017-10-17 12:30:34 +053067 'Retail': 'erpnext.domains.retail',
68 'Services': 'erpnext.domains.services',
69}
70
Rushabh Mehtadbb51542017-08-10 21:06:09 +053071website_generators = ["Item Group", "Item", "BOM", "Sales Partner",
72 "Job Opening", "Student Admission"]
Rushabh Mehta621d6ea2015-07-08 12:39:27 +053073
Rushabh Mehta2e7c36e2015-04-16 12:41:42 +053074website_context = {
Rushabh Mehta5674c4f2015-04-16 15:09:42 +053075 "favicon": "/assets/erpnext/images/favicon.png",
Rushabh Mehtad40e6612017-01-10 14:46:45 +053076 "splash_image": "/assets/erpnext/images/erp-icon.svg"
Rushabh Mehta2e7c36e2015-04-16 12:41:42 +053077}
78
Anand Doshif9fc04c2015-02-23 22:14:12 +053079website_route_rules = [
80 {"from_route": "/orders", "to_route": "Sales Order"},
Rushabh Mehta156ce602015-09-11 18:49:59 +053081 {"from_route": "/orders/<path:name>", "to_route": "order",
82 "defaults": {
83 "doctype": "Sales Order",
Britlog4c7709e2017-07-28 15:24:22 +020084 "parents": [{"label": _("Orders"), "route": "orders"}]
Rushabh Mehta156ce602015-09-11 18:49:59 +053085 }
86 },
Anand Doshif9fc04c2015-02-23 22:14:12 +053087 {"from_route": "/invoices", "to_route": "Sales Invoice"},
Rushabh Mehta156ce602015-09-11 18:49:59 +053088 {"from_route": "/invoices/<path:name>", "to_route": "order",
89 "defaults": {
90 "doctype": "Sales Invoice",
Britlog4c7709e2017-07-28 15:24:22 +020091 "parents": [{"label": _("Invoices"), "route": "invoices"}]
Rushabh Mehta156ce602015-09-11 18:49:59 +053092 }
93 },
Makarand Bauskar9306aff2017-07-21 15:19:47 +053094 {"from_route": "/supplier-quotations", "to_route": "Supplier Quotation"},
95 {"from_route": "/supplier-quotations/<path:name>", "to_route": "order",
Rohit Waghchaure21499e82016-09-21 16:49:58 +053096 "defaults": {
97 "doctype": "Supplier Quotation",
Brown-Harry Bomad3fa1912017-09-27 08:23:38 +010098 "parents": [{"label": _("Supplier Quotation"), "route": "supplier-quotations"}]
Rohit Waghchaure21499e82016-09-21 16:49:58 +053099 }
100 },
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530101 {"from_route": "/quotations", "to_route": "Quotation"},
102 {"from_route": "/quotations/<path:name>", "to_route": "order",
103 "defaults": {
104 "doctype": "Quotation",
Rushabh Mehtadbb51542017-08-10 21:06:09 +0530105 "parents": [{"label": _("Quotations"), "route": "quotations"}]
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530106 }
107 },
Anand Doshif9fc04c2015-02-23 22:14:12 +0530108 {"from_route": "/shipments", "to_route": "Delivery Note"},
Rushabh Mehta156ce602015-09-11 18:49:59 +0530109 {"from_route": "/shipments/<path:name>", "to_route": "order",
110 "defaults": {
Anand Doshi4b127402015-11-26 18:22:03 +0530111 "doctype": "Delivery Note",
Britlog4c7709e2017-07-28 15:24:22 +0200112 "parents": [{"label": _("Shipments"), "route": "shipments"}]
Rushabh Mehta156ce602015-09-11 18:49:59 +0530113 }
Kanchan Chauhan2e8cc892016-02-19 17:27:23 +0530114 },
rohitwaghchaurea1064a62016-03-03 14:00:35 +0530115 {"from_route": "/rfq", "to_route": "Request for Quotation"},
116 {"from_route": "/rfq/<path:name>", "to_route": "rfq",
117 "defaults": {
118 "doctype": "Request for Quotation",
Britlog4c7709e2017-07-28 15:24:22 +0200119 "parents": [{"label": _("Request for Quotation"), "route": "rfq"}]
rohitwaghchaurea1064a62016-03-03 14:00:35 +0530120 }
121 },
Kanchan Chauhan1605ff02016-07-04 14:28:09 +0530122 {"from_route": "/addresses", "to_route": "Address"},
123 {"from_route": "/addresses/<path:name>", "to_route": "addresses",
124 "defaults": {
125 "doctype": "Address",
Britlog4c7709e2017-07-28 15:24:22 +0200126 "parents": [{"label": _("Addresses"), "route": "addresses"}]
Kanchan Chauhan1605ff02016-07-04 14:28:09 +0530127 }
128 },
Kanchan Chauhan2e8cc892016-02-19 17:27:23 +0530129 {"from_route": "/jobs", "to_route": "Job Opening"},
Neil Trini Lasrado83d81202016-09-15 14:48:13 +0530130 {"from_route": "/admissions", "to_route": "Student Admission"},
Vishal Dhayagudeedb27492017-07-25 10:53:12 +0530131 {"from_route": "/boms", "to_route": "BOM"},
132 {"from_route": "/timesheets", "to_route": "Timesheet"},
Anand Doshif9fc04c2015-02-23 22:14:12 +0530133]
134
Rushabh Mehtab9cdb052017-03-08 12:33:43 +0530135standard_portal_menu_items = [
Jamsheerf9269112018-07-16 18:08:53 +0530136 {"title": _("Personal Details"), "route": "/personal-details", "reference_doctype": "Patient", "role": "Patient"},
Rushabh Mehta0c76f212016-04-01 11:53:50 +0530137 {"title": _("Projects"), "route": "/project", "reference_doctype": "Project"},
Rushabh Mehtafc800b32016-09-23 21:51:51 +0530138 {"title": _("Request for Quotations"), "route": "/rfq", "reference_doctype": "Request for Quotation", "role": "Supplier"},
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530139 {"title": _("Supplier Quotation"), "route": "/supplier-quotations", "reference_doctype": "Supplier Quotation", "role": "Supplier"},
140 {"title": _("Quotations"), "route": "/quotations", "reference_doctype": "Quotation", "role":"Customer"},
Rushabh Mehtafc800b32016-09-23 21:51:51 +0530141 {"title": _("Orders"), "route": "/orders", "reference_doctype": "Sales Order", "role":"Customer"},
142 {"title": _("Invoices"), "route": "/invoices", "reference_doctype": "Sales Invoice", "role":"Customer"},
143 {"title": _("Shipments"), "route": "/shipments", "reference_doctype": "Delivery Note", "role":"Customer"},
144 {"title": _("Issues"), "route": "/issues", "reference_doctype": "Issue", "role":"Customer"},
Neil Trini Lasrado3f0a5812016-07-19 14:17:33 +0530145 {"title": _("Addresses"), "route": "/addresses", "reference_doctype": "Address"},
Manas Solankie716da02017-09-18 16:00:34 +0530146 {"title": _("Timesheets"), "route": "/timesheets", "reference_doctype": "Timesheet", "role":"Customer"},
Rushabh Mehtaf0569742017-09-13 12:52:30 +0530147 {"title": _("Timesheets"), "route": "/timesheets", "reference_doctype": "Timesheet", "role":"Customer"},
148 {"title": _("Lab Test"), "route": "/lab-test", "reference_doctype": "Lab Test", "role":"Patient"},
Jamsheerf9269112018-07-16 18:08:53 +0530149 {"title": _("Prescription"), "route": "/prescription", "reference_doctype": "Patient Encounter", "role":"Patient"},
Manas Solankie716da02017-09-18 16:00:34 +0530150 {"title": _("Patient Appointment"), "route": "/patient-appointments", "reference_doctype": "Patient Appointment", "role":"Patient"},
151 {"title": _("Fees"), "route": "/fees", "reference_doctype": "Fees", "role":"Student"},
Manas Solanki05180012017-10-05 14:31:31 +0530152 {"title": _("Newsletter"), "route": "/newsletters", "reference_doctype": "Newsletter"},
Vishala6a302f2017-10-31 13:27:49 +0530153 {"title": _("Admission"), "route": "/admissions", "reference_doctype": "Student Admission"},
asbasawaraj4c263482018-06-15 10:04:19 +0530154 {"title": _("Certification"), "route": "/certification", "reference_doctype": "Certification Application"},
Rushabh Mehtafc800b32016-09-23 21:51:51 +0530155]
156
157default_roles = [
Rushabh Mehta95439db2017-01-14 00:25:22 +0530158 {'role': 'Customer', 'doctype':'Contact', 'email_field': 'email_id'},
159 {'role': 'Supplier', 'doctype':'Contact', 'email_field': 'email_id'},
Vishal Dhayagudeedb27492017-07-25 10:53:12 +0530160 {'role': 'Student', 'doctype':'Student', 'email_field': 'student_email_id'},
Rushabh Mehtac78b3112016-03-30 12:29:48 +0530161]
162
Anand Doshif9fc04c2015-02-23 22:14:12 +0530163has_website_permission = {
164 "Sales Order": "erpnext.controllers.website_list_for_contact.has_website_permission",
Makarand Bauskar9306aff2017-07-21 15:19:47 +0530165 "Quotation": "erpnext.controllers.website_list_for_contact.has_website_permission",
Anand Doshif9fc04c2015-02-23 22:14:12 +0530166 "Sales Invoice": "erpnext.controllers.website_list_for_contact.has_website_permission",
Rohit Waghchaure21499e82016-09-21 16:49:58 +0530167 "Supplier Quotation": "erpnext.controllers.website_list_for_contact.has_website_permission",
Rushabh Mehtaa33d4682015-06-01 17:15:42 +0530168 "Delivery Note": "erpnext.controllers.website_list_for_contact.has_website_permission",
Vishal Dhayagudeedb27492017-07-25 10:53:12 +0530169 "Issue": "erpnext.support.doctype.issue.issue.has_website_permission",
Rushabh Mehtaf0569742017-09-13 12:52:30 +0530170 "Timesheet": "erpnext.controllers.website_list_for_contact.has_website_permission",
171 "Lab Test": "erpnext.healthcare.web_form.lab_test.lab_test.has_website_permission",
Jamsheerf9269112018-07-16 18:08:53 +0530172 "Patient Encounter": "erpnext.healthcare.web_form.prescription.prescription.has_website_permission",
173 "Patient Appointment": "erpnext.healthcare.web_form.patient_appointments.patient_appointments.has_website_permission",
174 "Patient": "erpnext.healthcare.web_form.personal_details.personal_details.has_website_permission"
Anand Doshif9fc04c2015-02-23 22:14:12 +0530175}
Rushabh Mehta3daa49a2014-10-21 16:16:30 +0530176
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530177dump_report_map = "erpnext.startup.report_data_map.data_map"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530178
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530179before_tests = "erpnext.setup.utils.before_tests"
180
Rushabh Mehta308e6ea2015-03-24 17:34:58 +0530181standard_queries = {
Jamsheerc0097ad2018-11-23 11:37:58 +0530182 "Customer": "erpnext.selling.doctype.customer.customer.get_customer_list",
183 "Healthcare Practitioner": "erpnext.healthcare.doctype.healthcare_practitioner.healthcare_practitioner.get_practitioner_list"
Rushabh Mehta308e6ea2015-03-24 17:34:58 +0530184}
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530185
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530186doc_events = {
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530187 "Stock Entry": {
Nabin Hait4acd4312014-11-04 15:32:31 +0530188 "on_submit": "erpnext.stock.doctype.material_request.material_request.update_completed_and_requested_qty",
189 "on_cancel": "erpnext.stock.doctype.material_request.material_request.update_completed_and_requested_qty"
Anand Doshi648062d2014-05-05 16:46:14 +0530190 },
191 "User": {
KanchanChauhan1dc26b12017-06-13 15:26:35 +0530192 "after_insert": "frappe.contacts.doctype.contact.contact.update_contact",
Anand Doshi49856912014-05-28 18:49:13 +0530193 "validate": "erpnext.hr.doctype.employee.employee.validate_employee_role",
Rushabh Mehta0d6db6c2017-03-31 23:01:45 +0530194 "on_update": ["erpnext.hr.doctype.employee.employee.update_user_permissions",
195 "erpnext.portal.utils.set_default_role"]
Rushabh Mehta3daa49a2014-10-21 16:16:30 +0530196 },
Rushabh Mehtaf16f9c52016-04-08 17:20:50 +0530197 ("Sales Taxes and Charges Template", 'Price List'): {
Rushabh Mehta3daa49a2014-10-21 16:16:30 +0530198 "on_update": "erpnext.shopping_cart.doctype.shopping_cart_settings.shopping_cart_settings.validate_cart_settings"
199 },
Rushabh Mehtaf16f9c52016-04-08 17:20:50 +0530200
Anand Doshie3bd78e2016-04-22 18:53:21 +0530201 "Website Settings": {
202 "validate": "erpnext.portal.doctype.products_settings.products_settings.home_page_is_products"
Saurabhe4e89542016-07-21 20:26:46 +0530203 },
Charles-Henri Decultotb8c088e2018-02-21 06:37:33 +0100204 "Sales Invoice": {
Charles-Henri Decultotb8c088e2018-02-21 06:37:33 +0100205 "on_submit": "erpnext.regional.france.utils.create_transaction_log",
Nabin Hait0357fbc2018-03-09 13:19:52 +0530206 "on_trash": "erpnext.regional.check_deletion_permission"
Charles-Henri Decultotb8c088e2018-02-21 06:37:33 +0100207 },
Saurabhe4e89542016-07-21 20:26:46 +0530208 "Payment Entry": {
Charles-Henri Decultotb8c088e2018-02-21 06:37:33 +0100209 "on_submit": ["erpnext.regional.france.utils.create_transaction_log", "erpnext.accounts.doctype.payment_request.payment_request.make_status_as_paid"],
Nabin Hait0357fbc2018-03-09 13:19:52 +0530210 "on_trash": "erpnext.regional.check_deletion_permission"
Rushabh Mehtab3c8f442017-06-21 17:22:38 +0530211 },
212 'Address': {
Gaurav Naik3bf0acb2019-02-20 12:08:53 +0530213 'validate': ['erpnext.regional.india.utils.validate_gstin_for_india', 'erpnext.regional.italy.utils.set_state_code']
Nabin Hait619c42b2018-01-10 17:48:03 +0530214 },
Vishal Dhayagude2505c742018-04-04 11:05:21 +0530215 ('Sales Invoice', 'Purchase Invoice', 'Delivery Note'): {
Nabin Hait619c42b2018-01-10 17:48:03 +0530216 'validate': 'erpnext.regional.india.utils.set_place_of_supply'
Shridhar Patil4987c4e2018-07-03 10:10:04 +0530217 },
218 "Contact":{
219 "on_trash": "erpnext.support.doctype.issue.issue.update_issue"
Anand Doshie3bd78e2016-04-22 18:53:21 +0530220 }
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530221}
222
223scheduler_events = {
Rohit Waghchaure425dff92019-01-17 12:49:45 +0530224 "all": [
225 "erpnext.projects.doctype.project.project.project_status_update_reminder"
226 ],
Nabin Hait75807232015-07-02 14:41:27 +0530227 "hourly": [
tundebabzy0ec44522018-03-01 11:33:03 +0100228 'erpnext.hr.doctype.daily_work_summary_group.daily_work_summary_group.trigger_emails',
Pawan Mehta6010a102018-09-05 17:16:57 +0530229 "erpnext.accounts.doctype.subscription.subscription.process_all",
Rohit Waghchaure425dff92019-01-17 12:49:45 +0530230 "erpnext.erpnext_integrations.doctype.amazon_mws_settings.amazon_mws_settings.schedule_get_order_details",
231 "erpnext.projects.doctype.project.project.hourly_reminder",
232 "erpnext.projects.doctype.project.project.collect_project_status"
Nabin Hait75807232015-07-02 14:41:27 +0530233 ],
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530234 "daily": [
Rushabh Mehtaf8509872014-10-08 12:03:19 +0530235 "erpnext.stock.reorder_item.reorder_item",
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530236 "erpnext.setup.doctype.email_digest.email_digest.send",
Nabin Hait606af962014-12-15 11:57:03 +0530237 "erpnext.support.doctype.issue.issue.auto_close_tickets",
mbauskare1e25a02017-02-16 19:36:59 +0530238 "erpnext.crm.doctype.opportunity.opportunity.auto_close_opportunity",
Rohit Waghchaure2f1db572016-11-08 12:39:33 +0530239 "erpnext.controllers.accounts_controller.update_invoice_status",
Rushabh Mehta5bceebc2015-01-23 15:22:13 +0530240 "erpnext.accounts.doctype.fiscal_year.fiscal_year.auto_create_fiscal_year",
Rushabh Mehta13ec41a2015-12-10 12:31:36 +0530241 "erpnext.hr.doctype.employee.employee.send_birthday_reminders",
Nabin Hait4fdb0522016-03-09 12:40:56 +0530242 "erpnext.projects.doctype.task.task.set_tasks_as_overdue",
Kanchan Chauhane58a41a2017-10-17 15:17:24 +0530243 "erpnext.assets.doctype.asset.depreciation.post_depreciation_entries",
Suraj Shettyd3069fe2018-02-21 15:15:43 +0530244 "erpnext.hr.doctype.daily_work_summary_group.daily_work_summary_group.send_summary",
Prateeksha Singhe012e242017-07-18 10:35:12 +0530245 "erpnext.stock.doctype.serial_no.serial_no.update_maintenance_status",
bcornwellmott96381da2017-07-24 10:12:30 -0700246 "erpnext.buying.doctype.supplier_scorecard.supplier_scorecard.refresh_scorecards",
Nabin Haitadbf8ad2017-07-31 20:45:36 +0530247 "erpnext.setup.doctype.company.company.cache_companies_monthly_sales_history",
Manas Solanki2f4e5ee2018-05-15 15:25:14 +0530248 "erpnext.assets.doctype.asset.asset.update_maintenance_status",
Rohan Bansalbf0f0aa2018-05-23 15:06:45 +0530249 "erpnext.assets.doctype.asset.asset.make_post_gl_entry",
Himanshu Mishra7aabef22018-06-28 23:43:23 +0530250 "erpnext.crm.doctype.contract.contract.update_status_for_contracts",
Rohit Waghchaure425dff92019-01-17 12:49:45 +0530251 "erpnext.projects.doctype.project.project.update_project_sales_billing",
252 "erpnext.projects.doctype.project.project.send_project_status_email_to_users"
KanchanChauhan73bd3cb2018-09-05 11:01:35 +0530253 ],
254 "daily_long": [
255 "erpnext.manufacturing.doctype.bom_update_tool.bom_update_tool.update_latest_price_in_all_boms"
256 ],
Manas Solanki03938482018-05-14 16:16:46 +0530257 "monthly": [
Zarrare83ff382018-09-21 15:45:40 +0530258 "erpnext.accounts.deferred_revenue.convert_deferred_revenue_to_income",
259 "erpnext.accounts.deferred_revenue.convert_deferred_expense_to_expense",
Ranjith Kurungadam375db612018-06-01 16:09:28 +0530260 "erpnext.hr.utils.allocate_earned_leaves"
Rushabh Mehta4ceb20e2014-05-02 12:14:03 +0530261 ]
262}
Anand Doshi7f41ff22014-06-26 12:02:55 +0530263
Faris Ansari2c5b3e82017-07-13 18:37:18 +0530264email_brand_image = "assets/erpnext/images/erpnext-logo.jpg"
265
Faris Ansari40d3ad22017-07-31 16:16:22 +0530266default_mail_footer = """
267 <span>
268 Sent via
269 <a class="text-muted" href="https://erpnext.com?source=via_email_footer" target="_blank">
270 ERPNext
271 </a>
272 </span>
273"""
Anand Doshic82331b2015-02-12 18:58:28 +0530274
275get_translated_dict = {
Anand Doshic82331b2015-02-12 18:58:28 +0530276 ("doctype", "Global Defaults"): "frappe.geo.country_info.get_translated_dict"
277}
Rushabh Mehtafe027b32016-03-28 13:21:43 +0530278
279bot_parsers = [
280 'erpnext.utilities.bot.FindItemBot',
Rushabh Mehta0c76f212016-04-01 11:53:50 +0530281]
Anand Doshif576f3b2016-06-25 19:51:48 +0530282
283get_site_info = 'erpnext.utilities.get_site_info'
Saurabh94c666a2016-11-08 20:35:50 +0530284
Saurabh0d47d512017-03-14 14:46:05 +0530285payment_gateway_enabled = "erpnext.accounts.utils.create_payment_gateway_account"
Rushabh Mehta7231f292017-07-13 15:00:56 +0530286
287regional_overrides = {
Charles-Henri Decultotb8c088e2018-02-21 06:37:33 +0100288 'France': {
289 'erpnext.tests.test_regional.test_method': 'erpnext.regional.france.utils.test_method'
290 },
Rushabh Mehta7231f292017-07-13 15:00:56 +0530291 'India': {
Nabin Haitb962fc12017-07-17 18:02:31 +0530292 'erpnext.tests.test_regional.test_method': 'erpnext.regional.india.utils.test_method',
293 '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 +0530294 '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 +0530295 'erpnext.accounts.party.get_regional_address_details': 'erpnext.regional.india.utils.get_regional_address_details',
296 'erpnext.hr.utils.calculate_annual_eligible_hra_exemption': 'erpnext.regional.india.utils.calculate_annual_eligible_hra_exemption',
297 'erpnext.hr.utils.calculate_hra_exemption_for_period': 'erpnext.regional.india.utils.calculate_hra_exemption_for_period'
rohitwaghchaured4526682017-12-28 14:20:13 +0530298 },
299 'United Arab Emirates': {
300 'erpnext.controllers.taxes_and_totals.update_itemised_tax_data': 'erpnext.regional.united_arab_emirates.utils.update_itemised_tax_data'
301 },
302 'Saudi Arabia': {
303 'erpnext.controllers.taxes_and_totals.update_itemised_tax_data': 'erpnext.regional.united_arab_emirates.utils.update_itemised_tax_data'
Gauravf1e28e02019-02-13 16:46:24 +0530304 },
305 'Italy': {
306 'erpnext.controllers.taxes_and_totals.update_itemised_tax_data': 'erpnext.regional.italy.utils.update_itemised_tax_data',
307 'erpnext.controllers.accounts_controller.validate_regional': 'erpnext.regional.italy.utils.sales_invoice_validate',
308 'erpnext.controllers.accounts_controller.on_submit_regional': 'erpnext.regional.italy.utils.sales_invoice_on_submit',
309 'erpnext.controllers.accounts_controller.on_cancel_regional': 'erpnext.regional.italy.utils.sales_invoice_on_cancel'
Rushabh Mehta7231f292017-07-13 15:00:56 +0530310 }
Manas Solanki2f4e5ee2018-05-15 15:25:14 +0530311}