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.
+
+
+
+{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.
+
+
+
+{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.
+
+
+
+{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.
+
+
+
+{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.
+
+
+
+{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)