[fix] Deleted Membership Doctype from Foundation App

This commit is contained in:
Vishal
2018-01-08 16:18:01 +05:30
parent 61067cd0db
commit 3be2d43133
14 changed files with 9 additions and 704 deletions

View File

@@ -1,22 +0,0 @@
// Copyright (c) 2016, EOSSF and contributors
// For license information, please see license.txt
frappe.ui.form.on('Member', {
refresh: function(frm) {
frappe.call({
method:"frappe.client.get_value",
args:{
'doctype':"Membership",
'filters':{'member': frm.doc.name},
'fieldname':[
'to_date'
]
},
callback: function (data) {
frappe.model.set_value(frm.doctype,frm.docname, "expires_on", data.message.to_date);
}
});
}
});

View File

@@ -1,237 +0,0 @@
{
"allow_copy": 0,
"allow_import": 0,
"allow_rename": 0,
"autoname": "field:email",
"beta": 0,
"creation": "2017-02-24 11:47:56.865726",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "member_name",
"fieldtype": "Data",
"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": "Member Name",
"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": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "membership_type",
"fieldtype": "Select",
"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": "Membership Type",
"length": 0,
"no_copy": 0,
"options": "Gold\nSilver\nIndividual",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"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_standard_filter": 0,
"label": "Email",
"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": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "image",
"fieldtype": "Attach Image",
"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": "Image",
"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_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "address",
"fieldtype": "Small Text",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Address",
"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_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
}
],
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"in_dialog": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2017-03-02 11:36:12.723569",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "Member",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -1,10 +0,0 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2015, EOSSF and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe.model.document import Document
class Member(Document):
pass

View File

@@ -1,12 +0,0 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2015, EOSSF and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
# test_records = frappe.get_test_records('Member')
class TestMember(unittest.TestCase):
pass

View File

@@ -1,8 +0,0 @@
// Copyright (c) 2016, EOSSF and contributors
// For license information, please see license.txt
frappe.ui.form.on('Membership', {
refresh: function(frm) {
}
});

View File

@@ -1,269 +0,0 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"autoname": "M-.YY.-.####",
"beta": 0,
"creation": "2017-02-24 11:56:55.208964",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "member",
"fieldtype": "Link",
"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": "Member",
"length": 0,
"no_copy": 0,
"options": "Member",
"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_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "membership_type",
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Membership Type",
"length": 0,
"no_copy": 0,
"options": "Gold\nSilver\nIndividual",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "from_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "From",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "to_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "To",
"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": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "paid",
"fieldtype": "Check",
"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": "Paid",
"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_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "currency",
"fieldtype": "Select",
"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": "Currency",
"length": 0,
"no_copy": 0,
"options": "USD\nINR",
"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_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "amount",
"fieldtype": "Float",
"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": "Amount",
"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
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2017-03-14 18:44:13.286524",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "Membership",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -1,93 +0,0 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2015, EOSSF and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe.model.document import Document
from frappe.utils import add_days, add_years, nowdate, getdate, cint, fmt_money
from frappe import _
import foundation
currency_wise_membership_plan_mapper = {
"Gold": {
"USD": 5000,
"INR": 300000,
},
"Silver": {
"USD": 1500,
"INR": 100000,
},
"Individual": {
"USD": 200,
"INR": 10000,
}
}
class Membership(Document):
def validate(self):
member_name = frappe.get_value('Member', dict(email=frappe.session.user))
if not member_name:
user = frappe.get_doc('User', frappe.session.user)
member = frappe.get_doc(dict(
doctype='Member',
email=frappe.session.user,
member_name=user.get_fullname()
)).insert(ignore_permissions=True)
member_name = member.name
if self.get("__islocal"):
self.member = member_name
# get last membership (if active)
last_membership = foundation.get_last_membership()
# if person applied for offline membership
if last_membership and not frappe.session.user == "Administrator":
# if last membership does not expire in 30 days, then do not allow to renew
if getdate(add_days(last_membership.to_date, -30)) > getdate(nowdate()) :
frappe.throw(_('You can only renew if your membership expires within 30 days'))
self.from_date = add_days(last_membership.to_date, 1)
elif frappe.session.user == "Administrator":
self.from_date = self.from_date
else:
self.from_date = nowdate()
self.to_date = add_years(self.from_date, 1)
frappe.db.set_value("Member", self.member, "expires_on", self.to_date)
def on_payment_authorized(self, status_changed_to=None):
if status_changed_to in ("Completed", "Authorized"):
self.load_from_db()
self.db_set('paid', 1)
self.link_member_with_service_provider()
def link_member_with_service_provider(self):
service_provider = frappe.db.get_value("Service Provider", dict(owner=frappe.session.user))
if service_provider:
frappe.db.set_value("Service Provider", service_provider, "member", frappe.session.user,
update_modified=False)
else:
# create new service provider for the member
doc = frappe.get_doc({
"doctype": "Service Provider",
"email": frappe.session.user,
"title": frappe.db.get_value("Member", self.member, "member_name"),
"member": self.member,
"show_in_website": 1
}).insert(ignore_mandatory=True, ignore_permissions = True)
def validate_payment(self):
membership_fees = currency_wise_membership_plan_mapper\
.get(self.membership_type, {}).get(self.currency)
if cint(membership_fees) != cint(self.amount):
formated_membership_fees = fmt_money(membership_fees, precision=0, currency=self.currency)
frappe.msgprint("For Membership Type: {0}, the fees are {1}".format(self.membership_type,
formated_membership_fees), raise_exception=frappe.ValidationError,
title="Validate Payment Amount", indicator='red')

View File

@@ -1,34 +0,0 @@
<div class="web-list-item membership-list-item">
<div class="row">
<div class="col-sm-3 col-xs-6">
#
</div>
<div class="col-sm-3 hidden-xs">
Membership
</div>
<div class="col-sm-3 col-xs-6">
Expires On
</div>
<div class="col-sm-3 hidden-xs">
Amount
</div>
</div>
</div>
<div class="web-list-item membership-list-item">
<div class="row">
<div class="col-sm-3 col-xs-6">
<a href="/{{ pathname }}?name={{ doc.name }}">
{{ doc.name }}
</a>
</div>
<div class="col-sm-3 hidden-xs">
{{ doc.membership_type }}
</div>
<div class="col-sm-3 col-xs-6">
{{ frappe.utils.global_date_format(doc.to_date) }}
</div>
<div class="col-sm-3 hidden-xs">
{{ doc.amount }}
</div>
</div>
</div>

View File

@@ -1,12 +0,0 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2015, EOSSF and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
# test_records = frappe.get_test_records('Membership')
class TestMembership(unittest.TestCase):
pass

View File

@@ -15,10 +15,11 @@
"docstatus": 0, "docstatus": 0,
"doctype": "Web Form", "doctype": "Web Form",
"idx": 0, "idx": 0,
"introduction_text": "",
"is_standard": 1, "is_standard": 1,
"login_required": 1, "login_required": 1,
"max_attachment_size": 0, "max_attachment_size": 0,
"modified": "2017-03-14 16:31:47.735437", "modified": "2018-01-08 15:53:09.381486",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "ERPNext Foundation", "module": "ERPNext Foundation",
"name": "memberships", "name": "memberships",
@@ -35,12 +36,12 @@
"web_form_fields": [ "web_form_fields": [
{ {
"fieldname": "membership_type", "fieldname": "membership_type",
"fieldtype": "Select", "fieldtype": "Link",
"hidden": 0, "hidden": 0,
"label": "Membership Type", "label": "Membership Type",
"max_length": 0, "max_length": 0,
"max_value": 0, "max_value": 0,
"options": "Gold\nSilver\nIndividual", "options": "Membership Type",
"read_only": 0, "read_only": 0,
"reqd": 1 "reqd": 1
}, },

View File

@@ -8,7 +8,7 @@ def get_context(context):
pass pass
def get_list_context(context): def get_list_context(context):
context.row_template = 'erpnext_foundation/doctype/membership/templates/membership_list.html' context.row_template = 'non_profit/doctype/membership/templates/membership_list.html'
context.get_list = get_site_list context.get_list = get_site_list
def get_site_list(doctype, txt, filters, limit_start, limit_page_length=20, order_by=None): def get_site_list(doctype, txt, filters, limit_start, limit_page_length=20, order_by=None):

View File

@@ -15,10 +15,11 @@
"docstatus": 0, "docstatus": 0,
"doctype": "Web Form", "doctype": "Web Form",
"idx": 0, "idx": 0,
"introduction_text": "",
"is_standard": 1, "is_standard": 1,
"login_required": 1, "login_required": 1,
"max_attachment_size": 0, "max_attachment_size": 0,
"modified": "2017-03-14 18:38:07.785349", "modified": "2018-01-08 15:53:23.345945",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "ERPNext Foundation", "module": "ERPNext Foundation",
"name": "memberships-usd", "name": "memberships-usd",
@@ -35,12 +36,12 @@
"web_form_fields": [ "web_form_fields": [
{ {
"fieldname": "membership_type", "fieldname": "membership_type",
"fieldtype": "Select", "fieldtype": "Link",
"hidden": 0, "hidden": 0,
"label": "Membership Type", "label": "Membership Type",
"max_length": 0, "max_length": 0,
"max_value": 0, "max_value": 0,
"options": "Gold\nSilver\nIndividual", "options": "Membership Type",
"read_only": 0, "read_only": 0,
"reqd": 1 "reqd": 1
}, },