rename modules & doctypes to remove the pre-pended "Church "

This commit is contained in:
meichthys 2026-03-03 04:16:00 +00:00
parent 401ef7bec3
commit 88e8efdca6
467 changed files with 1766 additions and 1735 deletions

View File

@ -31,16 +31,16 @@ The following features have been implemented in this app (see the [🗺️ Roadm
- Built-in Documentation for each module
- Portal for users with a login:
- Prayer request submission & viewing
- `Church Person` tracking
- Define and track `Church Person Relation`ships
- Define `Church Person Relation Type`s
- Define & track `Church Person Role`s (i.e. board member, deacon, pastor, etc)
- `Church Family` tracking
- Track head of household (Set on `Church Person` record)
- `Church Prayer Request` tracking
- `Person` tracking
- Define and track `Person Relation`ships
- Define `Person Relation Type`s
- Define & track `Person Role`s (i.e. board member, deacon, pastor, etc)
- `Family` tracking
- Track head of household (Set on `Person` record)
- `Prayer Request` tracking
- Authenticated or Anonymous web-form submissions
- Authenticated users can manage their own prayer requests
- `Church Missionary` & `Church Missionary Agency` tracking
- `Missionary` & `Missionary Agency` tracking
- Church module desk workspace with guided setup steps
- Event tracking
- Event types, details, basic attendance tracking & reporting & templating
@ -51,10 +51,10 @@ The following features have been implemented in this app (see the [🗺️ Roadm
- Fund balance tracking
- Collections automatically update funds when saved
- Basic Asset Tracking (location, details)
- Church Belief tracking
- Basic Church Website
- Belief tracking
- Basic Website
- About Page
- Church Letter tracking (from people & missionaries)
- Letter tracking (from people & missionaries)
- Bible Vers & Reference entry
- Fetch Bible text from bible-api.com
- Alms Requests

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchCollectionFundTotal(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchEventAttendance(Document):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Event Attendance Type", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchEventAttendanceType(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchEventAttendanceType(FrappeTestCase):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Expense Type", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchExpenseType(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchFinancialTransaction(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchFundTransfer(FrappeTestCase):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Payment Type", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchPaymentType(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchPaymentType(FrappeTestCase):
pass

View File

@ -1,32 +0,0 @@
{
"add_total_row": 0,
"add_translate_data": 0,
"columns": [],
"creation": "2025-09-05 01:00:11.506737",
"disabled": 0,
"docstatus": 0,
"doctype": "Report",
"filters": [],
"idx": 1,
"is_standard": "Yes",
"json": "{\"filters\":[],\"fields\":[[\"name\",\"Church Collection\"],[\"event\",\"Church Collection\"],[\"fund\",\"Church Donation\"],[\"person\",\"Church Donation\"],[\"payment_type\",\"Church Donation\"],[\"check_number\",\"Church Donation\"],[\"amount\",\"Church Donation\"]],\"order_by\":\"`tabChurch Collection`.`modified` desc\",\"page_length\":20,\"column_widths\":{\"name\":120,\"event\":120,\"Church Donation:fund\":120,\"Church Donation:person\":120,\"Church Donation:payment_type\":120,\"Church Donation:check_number\":120,\"Church Donation:amount\":120},\"group_by\":null}",
"letterhead": null,
"modified": "2025-10-02 01:10:11.876159",
"modified_by": "Administrator",
"module": "Church Finances",
"name": "Church Donations",
"owner": "Administrator",
"prepared_report": 0,
"ref_doctype": "Church Collection",
"report_name": "Church Donations",
"report_type": "Report Builder",
"roles": [
{
"role": "System Manager"
},
{
"role": "Church Manager"
}
],
"timeout": 0
}

View File

@ -1,32 +0,0 @@
{
"add_total_row": 0,
"add_translate_data": 0,
"columns": [],
"creation": "2025-09-05 00:50:20.107973",
"disabled": 0,
"docstatus": 0,
"doctype": "Report",
"filters": [],
"idx": 0,
"is_standard": "Yes",
"json": "{\"filters\":[[\"Church Collection\",\"date\",\"Timespan\",\"this year\",false]],\"fields\":[[\"person\",\"Church Donation\"],[\"_aggregate_column\",\"Church Donation\"]],\"order_by\":\"`tabChurch Collection`.`modified` desc\",\"add_totals_row\":true,\"page_length\":20,\"column_widths\":{\"Church Donation:person\":120,\"_aggregate_column\":200},\"group_by\":{\"group_by\":\"`tabChurch Donation`.`person`\",\"aggregate_function\":\"sum\",\"aggregate_on\":\"`tabChurch Donation`.`amount`\"}}",
"letterhead": null,
"modified": "2025-10-02 01:09:55.346449",
"modified_by": "Administrator",
"module": "Church Finances",
"name": "Church Donations by Person",
"owner": "Administrator",
"prepared_report": 0,
"ref_doctype": "Church Collection",
"report_name": "Church Donations by Person",
"report_type": "Report Builder",
"roles": [
{
"role": "System Manager"
},
{
"role": "Church Manager"
}
],
"timeout": 0
}

View File

@ -1,29 +0,0 @@
{
"add_total_row": 0,
"add_translate_data": 0,
"columns": [],
"creation": "2025-10-10 22:24:01.259125",
"disabled": 0,
"docstatus": 0,
"doctype": "Report",
"filters": [],
"idx": 0,
"is_standard": "Yes",
"json": "{\"filters\":[],\"fields\":[[\"name\",\"Church Expense\"],[\"docstatus\",\"Church Expense\"],[\"type\",\"Church Expense\"],[\"notes\",\"Church Expense\"],[\"date\",\"Church Expense\"],[\"amount\",\"Church Expense\"]],\"order_by\":\"`tabChurch Expense`.`modified` desc\",\"add_totals_row\":0,\"page_length\":20,\"column_widths\":{\"name\":238,\"docstatus\":120,\"type\":120,\"notes\":120,\"date\":120,\"amount\":120},\"group_by\":null,\"chart_args\":{\"chart_type\":\"pie\",\"x_axis\":\"type\",\"y_axes\":[\"amount\"]}}",
"letterhead": null,
"modified": "2025-10-10 22:26:37.688841",
"modified_by": "Administrator",
"module": "Church Finances",
"name": "Church Expenses",
"owner": "Administrator",
"prepared_report": 0,
"ref_doctype": "Church Expense",
"report_name": "Church Expenses",
"report_type": "Report Builder",
"roles": [
{
"role": "System Manager"
}
],
"timeout": 0
}

File diff suppressed because one or more lines are too long

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchBeliefBibleReferences(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchInformation(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchInformation(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchEventAttendance(Document):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Event Attendance Type", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchEventAttendanceType(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchEventAttendanceType(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchEventSchedule(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchEventType(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchEventType(FrappeTestCase):
pass

View File

@ -1,35 +0,0 @@
{
"add_total_row": 0,
"add_translate_data": 0,
"columns": [],
"creation": "2025-09-05 01:10:20.185556",
"disabled": 0,
"docstatus": 0,
"doctype": "Report",
"filters": [],
"idx": 1,
"is_standard": "Yes",
"json": "{\"filters\":[[\"Church Event Attendance\",\"person\",\"is\",\"set\",false],[\"Church Event Attendance\",\"attendance_type\",\"in\",[\"Confirmed\",\"Assumed\"],false]],\"fields\":[[\"person\",\"Church Event Attendance\"],[\"event_name\",\"Church Event\"],[\"type\",\"Church Event\"],[\"attendance_type\",\"Church Event Attendance\"],[\"name\",\"Church Event\"]],\"order_by\":\"`tabChurch Event`.`modified` desc\",\"page_length\":20,\"column_widths\":{\"Church Event Attendance:person\":120,\"event_name\":120,\"type\":182,\"Church Event Attendance:attendance_type\":120,\"name\":361},\"group_by\":null}",
"letterhead": null,
"modified": "2025-10-02 01:12:41.676774",
"modified_by": "Administrator",
"module": "Church Ministries",
"name": "Church Attendance",
"owner": "Administrator",
"prepared_report": 0,
"ref_doctype": "Church Event",
"report_name": "Church Attendance",
"report_type": "Report Builder",
"roles": [
{
"role": "System Manager"
},
{
"role": "Church Manager"
},
{
"role": "Church User"
}
],
"timeout": 0
}

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchMissionary(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchMissionary(FrappeTestCase):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Missionary Agency", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchMissionaryAgency(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchMissionaryAgency(FrappeTestCase):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Missionary Support Frequency", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchMissionarySupportFrequency(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchMissionarySupportFrequency(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchFamily(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchFamilyMembers(Document):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Member Status", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchMemberStatus(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchMemberStatus(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchPerson(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchPersonRelation(Document):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Person Relation Type", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchPersonRelationType(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchPersonRelationType(FrappeTestCase):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Role Type", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchRoleType(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchRoleType(FrappeTestCase):
pass

View File

@ -1,35 +0,0 @@
{
"add_total_row": 0,
"add_translate_data": 0,
"columns": [],
"creation": "2025-08-28 01:16:38.856774",
"disabled": 0,
"docstatus": 0,
"doctype": "Report",
"filters": [],
"idx": 0,
"is_standard": "Yes",
"json": "{\"filters\":[[\"Church Role\",\"end_date\",\"Timespan\",\"this month\",false]],\"fields\":[[\"name\",\"Church Person\"],[\"role\",\"Church Role\"],[\"start_date\",\"Church Role\"],[\"end_date\",\"Church Role\"],[\"notes\",\"Church Role\"]],\"order_by\":\"`tabChurch Person`.`modified` desc\",\"add_totals_row\":0,\"page_length\":20,\"column_widths\":{\"name\":120,\"Church Role:role\":120,\"Church Role:start_date\":120,\"Church Role:end_date\":120,\"Church Role:notes\":120},\"group_by\":null}",
"letterhead": null,
"modified": "2025-10-02 01:15:17.185570",
"modified_by": "Administrator",
"module": "Church People",
"name": "Church Person Roles Ending This Month",
"owner": "Administrator",
"prepared_report": 0,
"ref_doctype": "Church Person",
"report_name": "Church Person Roles Ending This Month",
"report_type": "Report Builder",
"roles": [
{
"role": "System Manager"
},
{
"role": "Church Manager"
},
{
"role": "Church User"
}
],
"timeout": 0
}

View File

@ -1,35 +0,0 @@
{
"add_total_row": 0,
"add_translate_data": 0,
"columns": [],
"creation": "2025-08-28 00:52:47.449012",
"disabled": 0,
"docstatus": 0,
"doctype": "Report",
"filters": [],
"idx": 0,
"is_standard": "Yes",
"json": "{\"filters\":[[\"Church Role\",\"role\",\"is\",\"set\",false],[\"Church Role\",\"is_current_role\",\"=\",1,false]],\"fields\":[[\"name\",\"Church Person\"],[\"role\",\"Church Role\"],[\"start_date\",\"Church Role\"],[\"end_date\",\"Church Role\"],[\"notes\",\"Church Role\"]],\"order_by\":\"`tabChurch Person`.`modified` desc\",\"add_totals_row\":0,\"page_length\":20,\"column_widths\":{\"name\":120,\"Church Role:role\":120,\"Church Role:start_date\":120,\"Church Role:end_date\":120,\"Church Role:notes\":120},\"group_by\":null}",
"letterhead": null,
"modified": "2025-10-02 01:14:28.304991",
"modified_by": "Administrator",
"module": "Church People",
"name": "Current Church Person Roles",
"owner": "Administrator",
"prepared_report": 0,
"ref_doctype": "Church Person",
"report_name": "Current Church Person Roles",
"report_type": "Report Builder",
"roles": [
{
"role": "System Manager"
},
{
"role": "Church Manager"
},
{
"role": "Church User"
}
],
"timeout": 0
}

File diff suppressed because one or more lines are too long

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchPrayer(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchPrayer(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchPrayerRequest(FrappeTestCase):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Prayer Request Status", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchPrayerRequestStatus(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchPrayerRequestStatus(FrappeTestCase):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Prayer Request Type", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchPrayerRequestType(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchPrayerRequestType(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchPrayerTopic(Document):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Bible Book", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchBibleBook(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchBibleBook(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchBibleReference(FrappeTestCase):
pass

View File

@ -1,8 +0,0 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Bible Translation", {
// refresh(frm) {
// },
// });

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class ChurchBibleTranslation(Document):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchBibleTranslation(FrappeTestCase):
pass

View File

@ -1,9 +0,0 @@
# Copyright (c) 2025, meichthys and Contributors
# See license.txt
# import frappe
from frappe.tests.utils import FrappeTestCase
class TestChurchBibleVerse(FrappeTestCase):
pass

View File

@ -236,7 +236,7 @@
],
"modified": "2026-03-01 23:53:37.114133",
"modified_by": "Administrator",
"module": "Church Website",
"module": "Website",
"name": "Website",
"number_cards": [],
"owner": "Administrator",

View File

@ -97,8 +97,8 @@
"links": [],
"modified": "2025-11-13 23:58:34.793584",
"modified_by": "Administrator",
"module": "Church Communications",
"name": "Church Letter",
"module": "Communications",
"name": "Letter",
"naming_rule": "Expression",
"owner": "Administrator",
"permissions": [],

View File

@ -5,5 +5,5 @@
from frappe.model.document import Document
class ChurchSong(Document):
class Letter(Document):
pass

View File

@ -1,7 +1,7 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Event", {
// frappe.ui.form.on("Presentation", {
// refresh(frm) {
// },

View File

@ -2,7 +2,7 @@
"actions": [],
"autoname": "format:Presentation {#}",
"creation": "2025-10-10 23:07:31.392203",
"description": "A slideshow presentation of `Church Presentation Slide`s",
"description": "A slideshow presentation of `Presentation Slide`s",
"doctype": "DocType",
"documentation": "/app/manual%3A-communications",
"engine": "InnoDB",
@ -25,7 +25,7 @@
"fieldname": "slides",
"fieldtype": "Table",
"label": "Slides",
"options": "Church Presentation Slide"
"options": "Presentation Slide"
}
],
"grid_page_length": 50,
@ -33,8 +33,8 @@
"links": [],
"modified": "2025-11-15 22:53:19.321184",
"modified_by": "Administrator",
"module": "Church Communications",
"name": "Church Presentation",
"module": "Communications",
"name": "Presentation",
"naming_rule": "Expression",
"owner": "Administrator",
"permissions": [

View File

@ -5,5 +5,5 @@
from frappe.model.document import Document
class ChurchLetter(Document):
class Presentation(Document):
pass

View File

@ -5,5 +5,5 @@
from frappe.tests.utils import FrappeTestCase
class TestChurchBelief(FrappeTestCase):
class TestPresentation(FrappeTestCase):
pass

View File

@ -1,7 +1,7 @@
// Copyright (c) 2025, meichthys and contributors
// For license information, please see license.txt
// frappe.ui.form.on("Church Information", {
// frappe.ui.form.on("Presentation Slide", {
// refresh(frm) {
// },

View File

@ -32,8 +32,8 @@
"links": [],
"modified": "2025-11-13 23:58:34.672818",
"modified_by": "Administrator",
"module": "Church Communications",
"name": "Church Presentation Slide",
"module": "Communications",
"name": "Presentation Slide",
"naming_rule": "Expression",
"owner": "Administrator",
"permissions": [],

View File

@ -0,0 +1,9 @@
# Copyright (c) 2025, meichthys and contributors
# For license information, please see license.txt
# import frappe
from frappe.model.document import Document
class PresentationSlide(Document):
pass

View File

@ -5,5 +5,5 @@
from frappe.tests.utils import FrappeTestCase
class TestChurchAlmsRequest(FrappeTestCase):
class TestPresentationSlide(FrappeTestCase):
pass

View File

@ -52,13 +52,13 @@
"letterhead": null,
"modified": "2025-10-04 00:57:20.117288",
"modified_by": "Administrator",
"module": "Church Communications",
"name": "Church Letters To Be Shared",
"module": "Communications",
"name": "Letters To Be Shared",
"owner": "Administrator",
"prepared_report": 0,
"query": "SELECT parenttype, parent, date, is_private, COALESCE(file, \" \"), content, name \nFROM `tabChurch Letter` \nWHERE share_with_church = True\n AND shared_date IS NULL;",
"ref_doctype": "Church Person",
"report_name": "Church Letters To Be Shared",
"query": "SELECT parenttype, parent, date, is_private, COALESCE(file, \" \"), content, name \nFROM `tabLetter` \nWHERE share_with_church = True\n AND shared_date IS NULL;",
"ref_doctype": "Person",
"report_name": "Letters To Be Shared",
"report_type": "Query Report",
"roles": [
{

View File

@ -10,7 +10,7 @@
"button_label": "Save",
"condition_json": "[]",
"creation": "2025-12-19 23:50:47.255475",
"doc_type": "Church Presentation",
"doc_type": "Presentation",
"docstatus": 0,
"doctype": "Web Form",
"idx": 0,
@ -27,7 +27,7 @@
"max_attachment_size": 0,
"modified": "2025-12-20 00:20:51.007813",
"modified_by": "Administrator",
"module": "Church Communications",
"module": "Communications",
"name": "presentations",
"owner": "Administrator",
"published": 1,
@ -70,7 +70,7 @@
"label": "Slides",
"max_length": 0,
"max_value": 0,
"options": "Church Presentation Slide",
"options": "Presentation Slide",
"precision": "",
"read_only": 0,
"reqd": 0,

View File

@ -27,7 +27,7 @@
"is_query_report": 0,
"label": "Presentations",
"link_count": 0,
"link_to": "Church Presentation",
"link_to": "Presentation",
"link_type": "DocType",
"onboard": 0,
"type": "Link"
@ -46,7 +46,7 @@
"is_query_report": 1,
"label": "Missionary Letters",
"link_count": 0,
"link_to": "Church Missionary Letters",
"link_to": "Missionary Letters",
"link_type": "Report",
"onboard": 0,
"type": "Link"
@ -56,7 +56,7 @@
"is_query_report": 1,
"label": "Person Letters",
"link_count": 0,
"link_to": "Church Person Letters",
"link_to": "Person Letters",
"link_type": "Report",
"onboard": 0,
"type": "Link"
@ -66,7 +66,7 @@
"is_query_report": 1,
"label": "Letters Not Yet Shared With Curch",
"link_count": 0,
"link_to": "Church Letters To Be Shared",
"link_to": "Letters To Be Shared",
"link_type": "Report",
"onboard": 0,
"type": "Link"
@ -74,7 +74,7 @@
],
"modified": "2026-03-01 23:53:33.885173",
"modified_by": "Administrator",
"module": "Church Communications",
"module": "Communications",
"name": "Communications",
"number_cards": [],
"owner": "Administrator",

View File

@ -1,6 +1,6 @@
{
"charts": [],
"content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span class=\\\"h1\\\" style=\\\"font-weight: normal;\\\">\u2709\ufe0fCommunications Manual</span>\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span style=\\\"font-weight: normal;\\\">The communications module contains features related to personal interactions within (and without) the church.</span>\",\"col\":12}},{\"id\":\"w8oEjl0tNc\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span class=\\\"h2\\\" style=\\\"font-weight: normal;\\\">\ud83d\udcddLetters</span>\",\"col\":12}},{\"id\":\"3Bta1pYT8D\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span style=\\\"font-weight: normal;\\\">Letters received by the church from church <a href=\\\"/app/church-person\\\">people</a> or <a href=\\\"/app/church-missionary\\\">missionaries</a> can be added to the relevant person or missionary for archival or reference purposes.<br><br>When adding a letter to a </span><a href=\\\"/app/church-person\\\">person</a><span style=\\\"font-weight: normal;\\\"> or </span><a href=\\\"/app/church-missionary\\\">missionary</a><span style=\\\"font-weight: normal;\\\">, note the following:<br>- Check the 'Is Private' checkbox if the letter is not to be displayed publicly.<br>&nbsp; &nbsp; - </span><a href=\\\"/app/query-report/Church%20Missionary%20Letters\\\">Missionary letters</a><span style=\\\"font-weight: normal;\\\"> will be displayed on the public 'missions' website page unless this checkbox is checked!<br>- If the letter should be shared with the church, check the 'Share with Church?' checkbox<br>&nbsp; &nbsp; - Once the letter is shared, the 'Shared Date' field should be updated<br>&nbsp; &nbsp; - The <a href=\\\"/app/query-report/Church%20Letters%20To%20Be%20Shared\\\">Church Letters To Be Shared With Church</a> report will show all letters that should be, and have not yet been shared with the church.<br><br><span class=\\\"h4\\\">Example Workflow:</span><br>1. Missionary Mike sends a prayer letter that he would like read to the church.<br>2. The Church Secretary receives the letter, navigates to `<a href=\\\"/app/missions\\\">Missions</a> &gt; <a href=\\\"/app/church-missionary\\\">Missionaries</a> &gt; Missionary Mike &gt; Letters to the Church` and adds the letter to the Missionary Mike document making note that the letter should be read to the church.<br>3. Before the next church service, the Pastor runs the `</span><a href=\\\"/app/missions\\\">Missions</a><span style=\\\"font-weight: normal;\\\"> &gt; </span><a href=\\\"/app/query-report/Church%20Missionary%20Letters\\\">Church Missionary Letters</a><span style=\\\"font-weight: normal;\\\">` report and filters by 'Share w/ Church` to see which letters need to be read.<br>4. The letters are added to the `Church Event Schedule` for the next `</span><a href=\\\"/app/church-event\\\">Church Event</a><span style=\\\"font-weight: normal;\\\">` (Service).<br>5. Missionary Mike's `Missionary` document can be updated with a date to show that the letter was read to the church.</span>\",\"col\":12}},{\"id\":\"X5XpRUgRXI\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span class=\\\"h2\\\">\ud83d\udda5\ufe0fPresentations</span>\",\"col\":12}},{\"id\":\"Nvk4J2JbSr\",\"type\":\"paragraph\",\"data\":{\"text\":\"Presentations are collections of digital media slides that may be presented at a <a href=\\\"/app/church-event\\\">church event</a>.<br>Note: there is not currently a way to actually 'present' a presentation. For more advanced use-cases we recommend&nbsp;<a href=\\\"https://freeshow.app/\\\">FreeShow</a>.\",\"col\":12}},{\"id\":\"MtTk2oxuSy\",\"type\":\"paragraph\",\"data\":{\"text\":\"When <a href=\\\"/app/church-presentation/new-church-presentation\\\">creating a presentation</a>, note the following:<br>- Add as many slides as needed containing the content you would like to display.<br>- You may want to add the presentation as an item in a <a href=\\\"/app/church-event\\\">church event</a>'s schedule.\",\"col\":12}}]",
"content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span class=\\\"h1\\\" style=\\\"font-weight: normal;\\\">\u2709\ufe0fCommunications Manual</span>\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span style=\\\"font-weight: normal;\\\">The communications module contains features related to personal interactions within (and without) the church.</span>\",\"col\":12}},{\"id\":\"w8oEjl0tNc\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span class=\\\"h2\\\" style=\\\"font-weight: normal;\\\">\ud83d\udcddLetters</span>\",\"col\":12}},{\"id\":\"3Bta1pYT8D\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span style=\\\"font-weight: normal;\\\">Letters received by the church from church <a href=\\\"/app/church-person\\\">people</a> or <a href=\\\"/app/church-missionary\\\">missionaries</a> can be added to the relevant person or missionary for archival or reference purposes.<br><br>When adding a letter to a </span><a href=\\\"/app/church-person\\\">person</a><span style=\\\"font-weight: normal;\\\"> or </span><a href=\\\"/app/church-missionary\\\">missionary</a><span style=\\\"font-weight: normal;\\\">, note the following:<br>- Check the 'Is Private' checkbox if the letter is not to be displayed publicly.<br>&nbsp; &nbsp; - </span><a href=\\\"/app/query-report/Church%20Missionary%20Letters\\\">Missionary letters</a><span style=\\\"font-weight: normal;\\\"> will be displayed on the public 'missions' website page unless this checkbox is checked!<br>- If the letter should be shared with the church, check the 'Share with Church?' checkbox<br>&nbsp; &nbsp; - Once the letter is shared, the 'Shared Date' field should be updated<br>&nbsp; &nbsp; - The <a href=\\\"/app/query-report/Church%20Letters%20To%20Be%20Shared\\\">Letters To Be Shared With Church</a> report will show all letters that should be, and have not yet been shared with the church.<br><br><span class=\\\"h4\\\">Example Workflow:</span><br>1. Missionary Mike sends a prayer letter that he would like read to the church.<br>2. The Church Secretary receives the letter, navigates to `<a href=\\\"/app/missions\\\">Missions</a> &gt; <a href=\\\"/app/church-missionary\\\">Missionaries</a> &gt; Missionary Mike &gt; Letters to the Church` and adds the letter to the Missionary Mike document making note that the letter should be read to the church.<br>3. Before the next church service, the Pastor runs the `</span><a href=\\\"/app/missions\\\">Missions</a><span style=\\\"font-weight: normal;\\\"> &gt; </span><a href=\\\"/app/query-report/Church%20Missionary%20Letters\\\">Missionary Letters</a><span style=\\\"font-weight: normal;\\\">` report and filters by 'Share w/ Church` to see which letters need to be read.<br>4. The letters are added to the `Event Schedule` for the next `</span><a href=\\\"/app/church-event\\\">Function</a><span style=\\\"font-weight: normal;\\\">` (Service).<br>5. Missionary Mike's `Missionary` document can be updated with a date to show that the letter was read to the church.</span>\",\"col\":12}},{\"id\":\"X5XpRUgRXI\",\"type\":\"paragraph\",\"data\":{\"text\":\"<span class=\\\"h2\\\">\ud83d\udda5\ufe0fPresentations</span>\",\"col\":12}},{\"id\":\"Nvk4J2JbSr\",\"type\":\"paragraph\",\"data\":{\"text\":\"Presentations are collections of digital media slides that may be presented at a <a href=\\\"/app/church-event\\\">church event</a>.<br>Note: there is not currently a way to actually 'present' a presentation. For more advanced use-cases we recommend&nbsp;<a href=\\\"https://freeshow.app/\\\">FreeShow</a>.\",\"col\":12}},{\"id\":\"MtTk2oxuSy\",\"type\":\"paragraph\",\"data\":{\"text\":\"When <a href=\\\"/app/church-presentation/new-church-presentation\\\">creating a presentation</a>, note the following:<br>- Add as many slides as needed containing the content you would like to display.<br>- You may want to add the presentation as an item in a <a href=\\\"/app/church-event\\\">church event</a>'s schedule.\",\"col\":12}}]",
"creation": "2025-10-20 23:16:06.520964",
"custom_blocks": [],
"docstatus": 0,
@ -15,7 +15,7 @@
"links": [],
"modified": "2026-03-01 23:53:33.928235",
"modified_by": "Administrator",
"module": "Church Communications",
"module": "Communications",
"name": "Manual: Communications",
"number_cards": [],
"owner": "Administrator",

Some files were not shown because too many files have changed in this diff Show More