diff --git a/erpnext/config/non_profit.py b/erpnext/config/non_profit.py index ff4ff24af8..9c85ff6afe 100644 --- a/erpnext/config/non_profit.py +++ b/erpnext/config/non_profit.py @@ -78,25 +78,5 @@ def get_data(): "description": _("Grant information."), } ] - }, - { - "label": _("Event"), - "items": [ - { - "type": "doctype", - "name": "Member", - "description": _("Member information."), - } - ] - }, - { - "label": _("Setup Meeting"), - "items": [ - { - "type": "doctype", - "name": "Member", - "description": _("Member information."), - } - ] - }, + } ] diff --git a/erpnext/docs/assets/img/non_profit/donor/donor.png b/erpnext/docs/assets/img/non_profit/donor/donor.png new file mode 100644 index 0000000000..681dcc7f69 Binary files /dev/null and b/erpnext/docs/assets/img/non_profit/donor/donor.png differ diff --git a/erpnext/docs/assets/img/non_profit/donor/donor_type.png b/erpnext/docs/assets/img/non_profit/donor/donor_type.png new file mode 100644 index 0000000000..9fedb9b51c Binary files /dev/null and b/erpnext/docs/assets/img/non_profit/donor/donor_type.png differ diff --git a/erpnext/docs/assets/img/non_profit/grant_application/gant_application.png b/erpnext/docs/assets/img/non_profit/grant_application/gant_application.png new file mode 100644 index 0000000000..50cc1a87f7 Binary files /dev/null and b/erpnext/docs/assets/img/non_profit/grant_application/gant_application.png differ diff --git a/erpnext/docs/assets/img/non_profit/module.png b/erpnext/docs/assets/img/non_profit/module.png index 66bd60f3d0..3215ca244d 100644 Binary files a/erpnext/docs/assets/img/non_profit/module.png and b/erpnext/docs/assets/img/non_profit/module.png differ diff --git a/erpnext/docs/assets/img/non_profit/volunteer/volunteer.png b/erpnext/docs/assets/img/non_profit/volunteer/volunteer.png new file mode 100644 index 0000000000..368ff3a4d0 Binary files /dev/null and b/erpnext/docs/assets/img/non_profit/volunteer/volunteer.png differ diff --git a/erpnext/docs/assets/img/non_profit/volunteer/volunteer_type.png b/erpnext/docs/assets/img/non_profit/volunteer/volunteer_type.png new file mode 100644 index 0000000000..729a0b78d0 Binary files /dev/null and b/erpnext/docs/assets/img/non_profit/volunteer/volunteer_type.png differ diff --git a/erpnext/docs/user/manual/en/non_profit/Donor/__init__.py b/erpnext/docs/user/manual/en/non_profit/Donor/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/erpnext/docs/user/manual/en/non_profit/Donor/donor.md b/erpnext/docs/user/manual/en/non_profit/Donor/donor.md new file mode 100644 index 0000000000..0a625009fb --- /dev/null +++ b/erpnext/docs/user/manual/en/non_profit/Donor/donor.md @@ -0,0 +1,7 @@ +#Donor + +The Donor doctype allows you to record the Donor details. + +Student + +{next} \ No newline at end of file diff --git a/erpnext/docs/user/manual/en/non_profit/Donor/donor_type.md b/erpnext/docs/user/manual/en/non_profit/Donor/donor_type.md new file mode 100644 index 0000000000..6985a0f6c7 --- /dev/null +++ b/erpnext/docs/user/manual/en/non_profit/Donor/donor_type.md @@ -0,0 +1,7 @@ +#Donor Type + +The Donor Type doctype allows you to Create different Donor Profile for the Donor. + +Student + +{next} \ No newline at end of file diff --git a/erpnext/docs/user/manual/en/non_profit/Donor/index.md b/erpnext/docs/user/manual/en/non_profit/Donor/index.md new file mode 100644 index 0000000000..387cc9e9ff --- /dev/null +++ b/erpnext/docs/user/manual/en/non_profit/Donor/index.md @@ -0,0 +1,7 @@ +# Donor + +This section contains Donors and Donors Contribution related documents. + +### Topics + +{index} diff --git a/erpnext/docs/user/manual/en/non_profit/Donor/index.txt b/erpnext/docs/user/manual/en/non_profit/Donor/index.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/erpnext/docs/user/manual/en/non_profit/Grant Application/Grant Application.md b/erpnext/docs/user/manual/en/non_profit/Grant Application/Grant Application.md new file mode 100644 index 0000000000..a2ff9fe182 --- /dev/null +++ b/erpnext/docs/user/manual/en/non_profit/Grant Application/Grant Application.md @@ -0,0 +1,7 @@ +#Member + +The Grant Application doctype allows you to record the Grant Applicants details. + +Student + +{next} \ No newline at end of file diff --git a/erpnext/docs/user/manual/en/non_profit/Grant Application/__init__.py b/erpnext/docs/user/manual/en/non_profit/Grant Application/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/erpnext/docs/user/manual/en/non_profit/Grant Application/index.md b/erpnext/docs/user/manual/en/non_profit/Grant Application/index.md new file mode 100644 index 0000000000..3c44383379 --- /dev/null +++ b/erpnext/docs/user/manual/en/non_profit/Grant Application/index.md @@ -0,0 +1,9 @@ +# Grnat Application + +Grants are non-repayable funds or products disbursed or gifted by one party (grant makers), often a government department, corporation, foundation or trust, to a recipient, often (but not always) a nonprofit entity, educational institution, business or an individual. In order to receive a grant, some form of "Grant Writing" often referred to as either a proposal or an application is required. +Most grants are made to fund a specific project and require some level of compliance and reporting. The grant writing process involves an applicant submitting a proposal (or submission) to a potential funder, either on the applicant's own initiative or in response to a Request for Proposal from the funder. Other grants can be given to individuals, such as victims of natural disasters or individuals who seek to open a small business. Sometimes grant makers require grant seekers to have some form of tax-exempt status, be a registered nonprofit organization or a local government. + + +### Topics + +{index} diff --git a/erpnext/docs/user/manual/en/non_profit/Grant Application/index.txt b/erpnext/docs/user/manual/en/non_profit/Grant Application/index.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/erpnext/docs/user/manual/en/non_profit/Volunteer/__init__.py b/erpnext/docs/user/manual/en/non_profit/Volunteer/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/erpnext/docs/user/manual/en/non_profit/Volunteer/index.md b/erpnext/docs/user/manual/en/non_profit/Volunteer/index.md new file mode 100644 index 0000000000..88ec43bda1 --- /dev/null +++ b/erpnext/docs/user/manual/en/non_profit/Volunteer/index.md @@ -0,0 +1,7 @@ +# Volunteer + +This section contains Volunteer and Volunteer Type related documents. + +### Topics + +{index} diff --git a/erpnext/docs/user/manual/en/non_profit/Volunteer/index.txt b/erpnext/docs/user/manual/en/non_profit/Volunteer/index.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/erpnext/docs/user/manual/en/non_profit/Volunteer/volunteer.md b/erpnext/docs/user/manual/en/non_profit/Volunteer/volunteer.md new file mode 100644 index 0000000000..4a92202db1 --- /dev/null +++ b/erpnext/docs/user/manual/en/non_profit/Volunteer/volunteer.md @@ -0,0 +1,7 @@ +#Volunteer + +The Volunteer doctype allows you to record the Volunter details. + +Student + +{next} \ No newline at end of file diff --git a/erpnext/docs/user/manual/en/non_profit/Volunteer/volunteer_type.md b/erpnext/docs/user/manual/en/non_profit/Volunteer/volunteer_type.md new file mode 100644 index 0000000000..d8f2762535 --- /dev/null +++ b/erpnext/docs/user/manual/en/non_profit/Volunteer/volunteer_type.md @@ -0,0 +1,7 @@ +#Membership Type + +The Membership Type doctype allows you to Create different membership for the Member. + +Student + +{next} \ No newline at end of file diff --git a/erpnext/docs/user/manual/en/non_profit/index.md b/erpnext/docs/user/manual/en/non_profit/index.md index 027324687c..13aaf03623 100644 --- a/erpnext/docs/user/manual/en/non_profit/index.md +++ b/erpnext/docs/user/manual/en/non_profit/index.md @@ -3,7 +3,7 @@ The Non Profit Modules in ERPNext is designed to meet requirements of NGO and Non Profit Organization. This is a centralized system, which maintains and updates all the activities related to an Organization. This will track all activity related to Memberships, Chapters, Volunteer Management, -Donor Management, Pledge, Case Management, Meetings, Survey, Fundraiser and Event etc +Donor Management, Pledge, Case Management, Meetings, Survey, Fundraiser and Event and Grant etc diff --git a/erpnext/docs/user/manual/en/non_profit/index.txt b/erpnext/docs/user/manual/en/non_profit/index.txt index 78fdec242d..5ca0eb1319 100644 --- a/erpnext/docs/user/manual/en/non_profit/index.txt +++ b/erpnext/docs/user/manual/en/non_profit/index.txt @@ -3,4 +3,9 @@ Membership Membership Type Chapter Chapter Member -Chapter Message \ No newline at end of file +Chapter Message +Volunteer +Volunteer Type +Donor +Donor Type +Grant Application \ No newline at end of file diff --git a/erpnext/non_profit/doctype/donor/donor.js b/erpnext/non_profit/doctype/donor/donor.js index 6fbaa016b1..494ef64ec1 100644 --- a/erpnext/non_profit/doctype/donor/donor.js +++ b/erpnext/non_profit/doctype/donor/donor.js @@ -3,6 +3,15 @@ frappe.ui.form.on('Donor', { refresh: function(frm) { + frappe.dynamic_link = {doc: frm.doc, fieldname: 'name', doctype: 'Donor'} + + frm.toggle_display(['address_html','contact_html'], !frm.doc.__islocal); + + if(!frm.doc.__islocal) { + frappe.contacts.render_address_and_contact(frm); + } else { + frappe.contacts.clear_address_and_contact(frm); + } } }); diff --git a/erpnext/non_profit/doctype/donor/donor.json b/erpnext/non_profit/doctype/donor/donor.json index 17b19a16b1..d45074390b 100644 --- a/erpnext/non_profit/doctype/donor/donor.json +++ b/erpnext/non_profit/doctype/donor/donor.json @@ -43,6 +43,35 @@ "set_only_once": 0, "unique": 0 }, + { + "allow_bulk_edit": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "columns": 0, + "fieldname": "column_break_5", + "fieldtype": "Column Break", + "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, + "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, + "unique": 0 + }, { "allow_bulk_edit": 0, "allow_on_submit": 0, @@ -104,35 +133,6 @@ "set_only_once": 0, "unique": 0 }, - { - "allow_bulk_edit": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "columns": 0, - "fieldname": "column_break_5", - "fieldtype": "Column Break", - "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, - "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, - "unique": 0 - }, { "allow_bulk_edit": 0, "allow_on_submit": 0, @@ -141,7 +141,7 @@ "columns": 0, "fieldname": "image", "fieldtype": "Attach Image", - "hidden": 0, + "hidden": 1, "ignore_user_permissions": 0, "ignore_xss_filter": 0, "in_filter": 0, @@ -150,10 +150,10 @@ "in_standard_filter": 0, "label": "Image", "length": 0, - "no_copy": 0, + "no_copy": 1, "permlevel": 0, "precision": "", - "print_hide": 0, + "print_hide": 1, "print_hide_if_no_value": 0, "read_only": 0, "remember_last_selected_value": 0, @@ -349,13 +349,14 @@ "hide_heading": 0, "hide_toolbar": 0, "idx": 0, + "image_field": "image", "image_view": 0, "in_create": 0, "is_submittable": 0, "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-09-19 16:20:27.510196", + "modified": "2017-09-22 13:10:56.137043", "modified_by": "Administrator", "module": "Non Profit", "name": "Donor", diff --git a/erpnext/non_profit/doctype/donor/donor.py b/erpnext/non_profit/doctype/donor/donor.py index 9f09b161ee..d775c8367f 100644 --- a/erpnext/non_profit/doctype/donor/donor.py +++ b/erpnext/non_profit/doctype/donor/donor.py @@ -5,6 +5,10 @@ from __future__ import unicode_literals import frappe from frappe.model.document import Document +from frappe.contacts.address_and_contact import load_address_and_contact, delete_contact_and_address class Donor(Document): - pass + def onload(self): + """Load address and contacts in `__onload`""" + load_address_and_contact(self) + diff --git a/erpnext/non_profit/doctype/donor/donor_list.py b/erpnext/non_profit/doctype/donor/donor_list.py new file mode 100644 index 0000000000..248ba85d73 --- /dev/null +++ b/erpnext/non_profit/doctype/donor/donor_list.py @@ -0,0 +1,3 @@ +frappe.listview_settings['Donor'] = { + add_fields: ["donor_name", "donor_type", "image"], +}; diff --git a/erpnext/non_profit/doctype/grant_application/grant_application.js b/erpnext/non_profit/doctype/grant_application/grant_application.js index c10bd511b8..f4ac132c50 100644 --- a/erpnext/non_profit/doctype/grant_application/grant_application.js +++ b/erpnext/non_profit/doctype/grant_application/grant_application.js @@ -3,6 +3,15 @@ frappe.ui.form.on('Grant Application', { refresh: function(frm) { + frappe.dynamic_link = {doc: frm.doc, fieldname: 'name', doctype: 'Grant Application'} + + frm.toggle_display(['address_html','contact_html'], !frm.doc.__islocal); + + if(!frm.doc.__islocal) { + frappe.contacts.render_address_and_contact(frm); + } else { + frappe.contacts.clear_address_and_contact(frm); + } } }); diff --git a/erpnext/non_profit/doctype/grant_application/grant_application.json b/erpnext/non_profit/doctype/grant_application/grant_application.json index 19c8571574..e7d23144eb 100644 --- a/erpnext/non_profit/doctype/grant_application/grant_application.json +++ b/erpnext/non_profit/doctype/grant_application/grant_application.json @@ -79,16 +79,15 @@ "bold": 0, "collapsible": 0, "columns": 0, - "fieldname": "email", - "fieldtype": "Data", + "fieldname": "column_break_5", + "fieldtype": "Column Break", "hidden": 0, "ignore_user_permissions": 0, "ignore_xss_filter": 0, "in_filter": 0, "in_global_search": 0, - "in_list_view": 1, + "in_list_view": 0, "in_standard_filter": 0, - "label": "Email", "length": 0, "no_copy": 0, "permlevel": 0, @@ -98,7 +97,7 @@ "read_only": 0, "remember_last_selected_value": 0, "report_hide": 0, - "reqd": 1, + "reqd": 0, "search_index": 0, "set_only_once": 0, "unique": 0 @@ -139,15 +138,16 @@ "bold": 0, "collapsible": 0, "columns": 0, - "fieldname": "column_break_5", - "fieldtype": "Column Break", + "fieldname": "email", + "fieldtype": "Data", "hidden": 0, "ignore_user_permissions": 0, "ignore_xss_filter": 0, "in_filter": 0, "in_global_search": 0, - "in_list_view": 0, + "in_list_view": 1, "in_standard_filter": 0, + "label": "Email", "length": 0, "no_copy": 0, "permlevel": 0, @@ -157,7 +157,7 @@ "read_only": 0, "remember_last_selected_value": 0, "report_hide": 0, - "reqd": 0, + "reqd": 1, "search_index": 0, "set_only_once": 0, "unique": 0 @@ -170,7 +170,7 @@ "columns": 0, "fieldname": "image", "fieldtype": "Attach Image", - "hidden": 0, + "hidden": 1, "ignore_user_permissions": 0, "ignore_xss_filter": 0, "in_filter": 0, @@ -179,10 +179,10 @@ "in_standard_filter": 0, "label": "Image", "length": 0, - "no_copy": 0, + "no_copy": 1, "permlevel": 0, "precision": "", - "print_hide": 0, + "print_hide": 1, "print_hide_if_no_value": 0, "read_only": 0, "remember_last_selected_value": 0, @@ -462,80 +462,20 @@ "search_index": 0, "set_only_once": 0, "unique": 0 - }, - { - "allow_bulk_edit": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "columns": 0, - "fieldname": "default_receivable_accounts", - "fieldtype": "Section Break", - "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": "Accounting", - "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, - "unique": 0 - }, - { - "allow_bulk_edit": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "columns": 0, - "fieldname": "accounts", - "fieldtype": "Table", - "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": "Accounts", - "length": 0, - "no_copy": 0, - "options": "Party Account", - "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, - "unique": 0 } ], "has_web_view": 0, "hide_heading": 0, "hide_toolbar": 0, "idx": 0, + "image_field": "image", "image_view": 0, "in_create": 0, "is_submittable": 0, "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-09-21 12:02:01.206913", + "modified": "2017-09-22 13:10:32.303551", "modified_by": "Administrator", "module": "Non Profit", "name": "Grant Application", diff --git a/erpnext/non_profit/doctype/grant_application/grant_application.py b/erpnext/non_profit/doctype/grant_application/grant_application.py index 49cf58cb42..2a48138c39 100644 --- a/erpnext/non_profit/doctype/grant_application/grant_application.py +++ b/erpnext/non_profit/doctype/grant_application/grant_application.py @@ -5,6 +5,9 @@ from __future__ import unicode_literals import frappe from frappe.model.document import Document +from frappe.contacts.address_and_contact import load_address_and_contact, delete_contact_and_address class GrantApplication(Document): - pass + def onload(self): + """Load address and contacts in `__onload`""" + load_address_and_contact(self) diff --git a/erpnext/non_profit/doctype/grant_application/grant_application_list.py b/erpnext/non_profit/doctype/grant_application/grant_application_list.py new file mode 100644 index 0000000000..a1adb22135 --- /dev/null +++ b/erpnext/non_profit/doctype/grant_application/grant_application_list.py @@ -0,0 +1,3 @@ +frappe.listview_settings['Grant Application'] = { + add_fields: ["grant_application_name", "image"], +}; diff --git a/erpnext/non_profit/doctype/member/member.json b/erpnext/non_profit/doctype/member/member.json index 42954319f3..179c868f4b 100644 --- a/erpnext/non_profit/doctype/member/member.json +++ b/erpnext/non_profit/doctype/member/member.json @@ -43,6 +43,65 @@ "set_only_once": 0, "unique": 0 }, + { + "allow_bulk_edit": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "columns": 0, + "fieldname": "expires_on", + "fieldtype": "Date", + "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": "Expires On", + "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, + "unique": 0 + }, + { + "allow_bulk_edit": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "columns": 0, + "fieldname": "column_break_5", + "fieldtype": "Column Break", + "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, + "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, + "unique": 0 + }, { "allow_bulk_edit": 0, "allow_on_submit": 0, @@ -74,36 +133,6 @@ "set_only_once": 0, "unique": 0 }, - { - "allow_bulk_edit": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "columns": 0, - "fieldname": "expires_on", - "fieldtype": "Date", - "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": "Expires On", - "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, - "unique": 0 - }, { "allow_bulk_edit": 0, "allow_on_submit": 0, @@ -134,35 +163,6 @@ "set_only_once": 0, "unique": 0 }, - { - "allow_bulk_edit": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "columns": 0, - "fieldname": "column_break_5", - "fieldtype": "Column Break", - "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, - "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, - "unique": 0 - }, { "allow_bulk_edit": 0, "allow_on_submit": 0, @@ -171,7 +171,7 @@ "columns": 0, "fieldname": "image", "fieldtype": "Attach Image", - "hidden": 0, + "hidden": 1, "ignore_user_permissions": 0, "ignore_xss_filter": 0, "in_filter": 0, @@ -180,10 +180,10 @@ "in_standard_filter": 0, "label": "Image", "length": 0, - "no_copy": 0, + "no_copy": 1, "permlevel": 0, "precision": "", - "print_hide": 0, + "print_hide": 1, "print_hide_if_no_value": 0, "read_only": 0, "remember_last_selected_value": 0, @@ -379,13 +379,14 @@ "hide_heading": 0, "hide_toolbar": 0, "idx": 0, + "image_field": "image", "image_view": 0, "in_create": 0, "is_submittable": 0, "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-09-19 16:16:10.553575", + "modified": "2017-09-22 13:03:06.022229", "modified_by": "Administrator", "module": "Non Profit", "name": "Member", diff --git a/erpnext/non_profit/doctype/member/member_list.py b/erpnext/non_profit/doctype/member/member_list.py new file mode 100644 index 0000000000..9a10f217e6 --- /dev/null +++ b/erpnext/non_profit/doctype/member/member_list.py @@ -0,0 +1,3 @@ +frappe.listview_settings['Member'] = { + add_fields: ["member_name", "member_type", "image"], +}; diff --git a/erpnext/non_profit/doctype/volunteer/volunteer.js b/erpnext/non_profit/doctype/volunteer/volunteer.js index 2f6bb5bc2e..1d47d6d961 100644 --- a/erpnext/non_profit/doctype/volunteer/volunteer.js +++ b/erpnext/non_profit/doctype/volunteer/volunteer.js @@ -4,5 +4,14 @@ frappe.ui.form.on('Volunteer', { refresh: function(frm) { + frappe.dynamic_link = {doc: frm.doc, fieldname: 'name', doctype: 'Volunteer'} + + frm.toggle_display(['address_html','contact_html'], !frm.doc.__islocal); + + if(!frm.doc.__islocal) { + frappe.contacts.render_address_and_contact(frm); + } else { + frappe.contacts.clear_address_and_contact(frm); + } } }); diff --git a/erpnext/non_profit/doctype/volunteer/volunteer.json b/erpnext/non_profit/doctype/volunteer/volunteer.json index 1f3555f0fb..1b9a63f868 100644 --- a/erpnext/non_profit/doctype/volunteer/volunteer.json +++ b/erpnext/non_profit/doctype/volunteer/volunteer.json @@ -43,6 +43,65 @@ "set_only_once": 0, "unique": 0 }, + { + "allow_bulk_edit": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "columns": 0, + "fieldname": "expires_on", + "fieldtype": "Date", + "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": "Expires On", + "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, + "unique": 0 + }, + { + "allow_bulk_edit": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "columns": 0, + "fieldname": "column_break_5", + "fieldtype": "Column Break", + "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, + "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, + "unique": 0 + }, { "allow_bulk_edit": 0, "allow_on_submit": 0, @@ -74,36 +133,6 @@ "set_only_once": 0, "unique": 0 }, - { - "allow_bulk_edit": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "columns": 0, - "fieldname": "expires_on", - "fieldtype": "Date", - "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": "Expires On", - "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, - "unique": 0 - }, { "allow_bulk_edit": 0, "allow_on_submit": 0, @@ -134,35 +163,6 @@ "set_only_once": 0, "unique": 0 }, - { - "allow_bulk_edit": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "columns": 0, - "fieldname": "column_break_5", - "fieldtype": "Column Break", - "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, - "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, - "unique": 0 - }, { "allow_bulk_edit": 0, "allow_on_submit": 0, @@ -171,7 +171,7 @@ "columns": 0, "fieldname": "image", "fieldtype": "Attach Image", - "hidden": 0, + "hidden": 1, "ignore_user_permissions": 0, "ignore_xss_filter": 0, "in_filter": 0, @@ -180,10 +180,10 @@ "in_standard_filter": 0, "label": "Image", "length": 0, - "no_copy": 0, + "no_copy": 1, "permlevel": 0, "precision": "", - "print_hide": 0, + "print_hide": 1, "print_hide_if_no_value": 0, "read_only": 0, "remember_last_selected_value": 0, @@ -471,13 +471,14 @@ "hide_heading": 0, "hide_toolbar": 0, "idx": 0, + "image_field": "image", "image_view": 0, "in_create": 0, "is_submittable": 0, "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-09-20 15:30:34.874289", + "modified": "2017-09-22 13:11:06.477736", "modified_by": "Administrator", "module": "Non Profit", "name": "Volunteer", diff --git a/erpnext/non_profit/doctype/volunteer/volunteer.py b/erpnext/non_profit/doctype/volunteer/volunteer.py index 6765e38112..2c02ea0a8e 100644 --- a/erpnext/non_profit/doctype/volunteer/volunteer.py +++ b/erpnext/non_profit/doctype/volunteer/volunteer.py @@ -5,6 +5,9 @@ from __future__ import unicode_literals import frappe from frappe.model.document import Document +from frappe.contacts.address_and_contact import load_address_and_contact, delete_contact_and_address class Volunteer(Document): - pass + def onload(self): + """Load address and contacts in `__onload`""" + load_address_and_contact(self)