From 88e8efdca69aa44e87756f37490d679a525b8d5d Mon Sep 17 00:00:00 2001 From: meichthys Date: Tue, 3 Mar 2026 04:16:00 +0000 Subject: [PATCH] rename modules & doctypes to remove the pre-pended "Church " --- README.md | 22 +-- .../church_collection_fund_total.py | 9 -- .../church_event_attendance.py | 9 -- .../church_event_attendance_type.js | 8 -- .../church_event_attendance_type.py | 9 -- .../test_church_event_attendance_type.py | 9 -- .../church_expense_type.js | 8 -- .../test_church_expense_type.py | 9 -- .../church_financial_transaction.py | 9 -- .../test_church_fund_transfer.py | 9 -- .../church_payment_type.js | 8 -- .../church_payment_type.py | 9 -- .../test_church_payment_type.py | 9 -- .../church_donations/church_donations.json | 32 ----- .../church_donations_by_person.json | 32 ----- .../church_expenses/church_expenses.json | 29 ---- .../manual:_finances/manual:_finances.json | 29 ---- .../church_belief_bible_references.py | 9 -- .../church_information/church_information.py | 9 -- .../test_church_information.py | 9 -- .../church_event_attendance.py | 9 -- .../church_event_attendance_type.js | 8 -- .../church_event_attendance_type.py | 9 -- .../test_church_event_attendance_type.py | 9 -- .../church_event_schedule.py | 9 -- .../church_event_type/church_event_type.py | 9 -- .../test_church_event_type.py | 9 -- .../church_attendance/church_attendance.json | 35 ----- .../church_missionary/church_missionary.py | 9 -- .../test_church_missionary.py | 9 -- .../church_missionary_agency.js | 8 -- .../church_missionary_agency.py | 9 -- .../test_church_missionary_agency.py | 9 -- .../church_missionary_support_frequency.js | 8 -- .../church_missionary_support_frequency.py | 9 -- ...est_church_missionary_support_frequency.py | 9 -- .../church_family/test_church_family.py | 9 -- .../church_family_members.py | 9 -- .../church_member_status.js | 8 -- .../church_member_status.py | 9 -- .../test_church_member_status.py | 9 -- .../church_person/test_church_person.py | 9 -- .../church_person_relation.py | 9 -- .../church_person_relation_type.js | 8 -- .../church_person_relation_type.py | 9 -- .../test_church_person_relation_type.py | 9 -- .../church_role_type/church_role_type.js | 8 -- .../church_role_type/church_role_type.py | 9 -- .../church_role_type/test_church_role_type.py | 9 -- ...church_person_roles_ending_this_month.json | 35 ----- .../current_church_person_roles.json | 35 ----- .../manual:_people/manual:_people.json | 29 ---- .../doctype/church_prayer/church_prayer.py | 9 -- .../church_prayer/test_church_prayer.py | 9 -- .../test_church_prayer_request.py | 9 -- .../church_prayer_request_status.js | 8 -- .../church_prayer_request_status.py | 9 -- .../test_church_prayer_request_status.py | 9 -- .../church_prayer_request_type.js | 8 -- .../church_prayer_request_type.py | 9 -- .../test_church_prayer_request_type.py | 9 -- .../church_prayer_topic.py | 9 -- .../church_bible_book/church_bible_book.js | 8 -- .../church_bible_book/church_bible_book.py | 9 -- .../test_church_bible_book.py | 9 -- .../test_church_bible_reference.py | 9 -- .../church_bible_translation.js | 8 -- .../church_bible_translation.py | 9 -- .../test_church_bible_translation.py | 9 -- .../test_church_bible_verse.py | 9 -- .../workspace/website/website.json | 2 +- .../__init__.py | 0 .../doctype/__init__.py | 0 .../doctype/letter}/__init__.py | 0 .../doctype/letter/letter.json} | 4 +- .../doctype/letter/letter.py} | 2 +- .../doctype/presentation}/__init__.py | 0 .../doctype/presentation/presentation.js} | 2 +- .../doctype/presentation/presentation.json} | 8 +- .../doctype/presentation/presentation.py} | 2 +- .../presentation/test_presentation.py} | 2 +- .../doctype/presentation_slide}/__init__.py | 0 .../presentation_slide/presentation_slide.js} | 2 +- .../presentation_slide.json} | 4 +- .../presentation_slide/presentation_slide.py | 9 ++ .../test_presentation_slide.py} | 2 +- .../report/__init__.py | 0 .../church_letters_to_be_shared/__init__.py | 0 .../church_letters_to_be_shared.json | 10 +- .../web_form/presentations/__init__.py | 0 .../web_form/presentations/presentations.js | 0 .../web_form/presentations/presentations.json | 6 +- .../web_form/presentations/presentations.py | 0 .../communications/communications.json | 10 +- .../manual:_communications.json | 4 +- .../__init__.py | 0 .../custom/address.json | 0 .../{church_finances => finances}/__init__.py | 0 .../doctype/__init__.py | 0 .../doctype/alms_request}/__init__.py | 0 .../doctype/alms_request/alms_request.js} | 6 +- .../doctype/alms_request/alms_request.json} | 12 +- .../doctype/alms_request/alms_request.py} | 12 +- .../alms_request/test_alms_request.py} | 2 +- .../doctype/collection}/__init__.py | 0 .../doctype/collection/collection.js} | 12 +- .../doctype/collection/collection.json} | 16 +-- .../doctype/collection/collection.py} | 14 +- .../doctype/collection/test_collection.py} | 2 +- .../collection_fund_total}/__init__.py | 0 .../collection_fund_total.json} | 8 +- .../collection_fund_total.py | 9 ++ .../doctype/donation}/__init__.py | 0 .../doctype/donation/donation.json} | 12 +- .../doctype/donation/donation.py} | 2 +- .../doctype/event_attendance}/__init__.py | 0 .../event_attendance/event_attendance.json} | 10 +- .../event_attendance/event_attendance.py} | 2 +- .../event_attendance_type}/__init__.py | 0 .../event_attendance_type.js | 8 ++ .../event_attendance_type.json} | 8 +- .../event_attendance_type.py | 9 ++ .../test_event_attendance_type.py | 9 ++ .../doctype/event_type}/__init__.py | 0 .../doctype/event_type/event_type.js} | 2 +- .../doctype/event_type/event_type.json} | 6 +- .../doctype/event_type/event_type.py} | 2 +- .../doctype/event_type/test_event_type.py} | 2 +- .../doctype/expense}/__init__.py | 0 .../doctype/expense/expense.js} | 2 +- .../doctype/expense/expense.json} | 12 +- .../doctype/expense/expense.py} | 26 ++-- .../doctype/expense/test_expense.py} | 2 +- .../doctype/expense_type}/__init__.py | 0 .../doctype/expense_type/expense_type.js} | 2 +- .../doctype/expense_type/expense_type.json} | 20 +-- .../doctype/expense_type/expense_type.py} | 2 +- .../expense_type/test_expense_type.py} | 2 +- .../financial_transaction}/__init__.py | 0 .../financial_transaction.json} | 4 +- .../financial_transaction.py | 9 ++ .../doctype/function}/__init__.py | 0 church/finances/doctype/function/function.js | 8 ++ .../doctype/function/function.json} | 10 +- church/finances/doctype/function/function.py | 9 ++ .../doctype/function/test_function.py | 9 ++ .../doctype/fund}/__init__.py | 0 .../doctype/fund/fund.js} | 2 +- .../doctype/fund/fund.json} | 8 +- .../doctype/fund/fund.py} | 2 +- church/finances/doctype/fund/test_fund.py | 9 ++ .../doctype/fund_transfer}/__init__.py | 0 .../doctype/fund_transfer/fund_transfer.js} | 2 +- .../doctype/fund_transfer/fund_transfer.json} | 12 +- .../doctype/fund_transfer/fund_transfer.py} | 22 +-- .../fund_transfer/test_fund_transfer.py | 9 ++ .../doctype/payment_type}/__init__.py | 0 .../doctype/payment_type/payment_type.js | 8 ++ .../doctype/payment_type/payment_type.json} | 8 +- .../doctype/payment_type/payment_type.py | 9 ++ .../doctype/payment_type/test_payment_type.py | 9 ++ .../report/__init__.py | 0 .../__init__.py | 0 ...church_collection_bank_reconciliation.json | 12 +- .../report/church_donations/__init__.py | 0 .../church_donations/church_donations.json | 32 +++++ .../church_donations_by_person/__init__.py | 0 .../church_donations_by_person.json | 32 +++++ .../report/church_expenses/__init__.py | 0 .../church_expenses/church_expenses.json | 29 ++++ .../report/church_fund_balances/__init__.py | 0 .../church_fund_balances.json | 12 +- .../church_fund_transactions/__init__.py | 0 .../church_fund_transactions.json | 12 +- .../__init__.py | 0 .../church_fund_transactions_by_date.json | 12 +- .../church_person_donations/__init__.py | 0 .../church_person_donations.json | 10 +- .../web_form/__init__.py | 0 .../web_form/alms_request/__init__.py | 0 .../web_form/alms_request/alms_request.js | 0 .../web_form/alms_request/alms_request.json | 6 +- .../web_form/alms_request/alms_request.py | 0 .../workspace/finances/finances.json | 44 +++--- .../manual:_finances/manual:_finances.json | 29 ++++ church/fixtures/church_bible_book.json | 132 +++++++++--------- church/fixtures/church_bible_translation.json | 60 ++++---- .../church_event_attendance_type.json | 16 +-- church/fixtures/church_event_type.json | 12 +- church/fixtures/church_fund.json | 6 +- church/fixtures/church_member_status.json | 4 +- .../church_missionary_support_frequency.json | 12 +- church/fixtures/church_payment_type.json | 4 +- .../fixtures/church_person_relation_type.json | 48 +++---- .../church_prayer_request_status.json | 6 +- .../fixtures/church_prayer_request_type.json | 12 +- church/fixtures/church_role_type.json | 10 +- church/fixtures/dashboard_chart.json | 58 ++++---- church/fixtures/form_tour.json | 42 +++--- church/fixtures/module_onboarding.json | 12 +- church/fixtures/onboarding_step.json | 42 +++--- church/fixtures/portal_menu_item.json | 4 +- church/fixtures/web_page.json | 12 +- .../__init__.py | 0 .../doctype/__init__.py | 0 .../doctype/belief}/__init__.py | 0 .../doctype/belief/belief.js} | 2 +- .../doctype/belief/belief.json} | 6 +- .../doctype/belief/belief.py} | 2 +- .../foundations/doctype/belief/test_belief.py | 9 ++ .../belief_bible_references}/__init__.py | 0 .../belief_bible_references.json} | 6 +- .../belief_bible_references.py | 9 ++ .../doctype/information}/__init__.py | 0 .../doctype/information/information.js | 8 ++ .../doctype/information/information.json} | 6 +- .../doctype/information/information.py | 9 ++ .../doctype/information/test_information.py | 9 ++ .../module_onboarding/church/church.json | 12 +- .../church_event/church_event.json | 8 +- .../church_family/church_family.json | 10 +- .../church_information.json | 10 +- .../church_manager/church_manager.json | 0 .../church_person/church_person.json | 10 +- .../church_prayer_request.json | 4 +- .../email_configuration.json | 0 .../workspace/foundations/foundations.json | 8 +- .../getting_started/getting_started.json | 4 +- .../manual:_foundations.json | 4 +- .../manual:_website/manual:_website.json | 4 +- .../workspace/support/support.json | 2 +- .../workspace/welcome/welcome.json | 2 +- church/hooks.py | 25 ++-- .../__init__.py | 0 .../doctype/__init__.py | 0 .../doctype/event_attendance}/__init__.py | 0 .../event_attendance/event_attendance.json} | 10 +- .../event_attendance/event_attendance.py | 9 ++ .../event_attendance_type}/__init__.py | 0 .../event_attendance_type.js | 8 ++ .../event_attendance_type.json} | 8 +- .../event_attendance_type.py | 9 ++ .../test_event_attendance_type.py | 9 ++ .../doctype/event_schedule}/__init__.py | 0 .../event_schedule/event_schedule.json} | 4 +- .../doctype/event_schedule/event_schedule.py | 9 ++ .../doctype/event_type}/__init__.py | 0 .../doctype/event_type/event_type.js | 8 ++ .../doctype/event_type/event_type.json} | 8 +- .../doctype/event_type/event_type.py | 9 ++ .../doctype/event_type/test_event_type.py | 9 ++ .../doctype/function}/__init__.py | 0 .../doctype/function/function.js} | 6 +- .../doctype/function/function.json} | 12 +- .../doctype/function/function.py} | 8 +- .../doctype/function/test_function.py | 9 ++ .../doctype/song}/__init__.py | 0 church/ministries/doctype/song/song.js | 8 ++ .../doctype/song/song.json} | 10 +- church/ministries/doctype/song/song.py | 9 ++ church/ministries/doctype/song/test_song.py | 9 ++ .../report/__init__.py | 0 .../report/church_attendance/__init__.py | 0 .../church_attendance/church_attendance.json | 35 +++++ .../church_event_attendance/__init__.py | 0 .../church_event_attendance.json | 10 +- .../church_event_count_by_type/__init__.py | 0 .../church_event_count_by_type.json | 12 +- .../report/church_events/__init__.py | 0 .../report/church_events/church_events.json | 10 +- .../manual:_ministries.json | 2 +- .../workspace/ministries/ministries.json | 16 +-- .../{church_missions => missions}/__init__.py | 0 .../doctype/__init__.py | 0 .../doctype/missionary}/__init__.py | 0 .../doctype/missionary/missionary.js} | 2 +- .../doctype/missionary/missionary.json} | 16 +-- .../missions/doctype/missionary/missionary.py | 9 ++ .../doctype/missionary/test_missionary.py | 9 ++ .../doctype/missionary_agency}/__init__.py | 0 .../missionary_agency/missionary_agency.js} | 2 +- .../missionary_agency/missionary_agency.json} | 6 +- .../missionary_agency/missionary_agency.py | 9 ++ .../test_missionary_agency.py} | 2 +- .../missionary_support_frequency}/__init__.py | 0 .../missionary_support_frequency.js} | 2 +- .../missionary_support_frequency.json} | 6 +- .../missionary_support_frequency.py} | 2 +- .../test_missionary_support_frequency.py} | 2 +- .../report/__init__.py | 0 .../church_missionary_letters/__init__.py | 0 .../church_missionary_letters.json | 12 +- .../__init__.py | 0 ...hurch_missionary_letters_not_yet_read.json | 12 +- .../manual:_missions/manual:_missions.json | 2 +- .../workspace/missions/missions.json | 10 +- church/modules.txt | 20 +-- .../__init__.py | 0 .../doctype/__init__.py | 0 .../doctype/church_asset/__init__.py | 0 .../doctype/church_asset/church_asset.js | 0 .../doctype/church_asset/church_asset.json | 2 +- .../doctype/church_asset/church_asset.py | 0 .../doctype/church_asset/test_church_asset.py | 0 .../doctype/church_location/__init__.py | 0 .../church_location/church_location.js | 0 .../church_location/church_location.json | 2 +- .../church_location/church_location.py | 0 .../church_location/test_church_location.py | 0 .../doctype/church_task/__init__.py | 0 .../doctype/church_task/church_task.js | 0 .../doctype/church_task/church_task.json | 4 +- .../doctype/church_task/church_task.py | 0 .../doctype/church_task/test_church_task.py | 0 .../doctype/church_task_item/__init__.py | 0 .../church_task_item/church_task_item.json | 2 +- .../church_task_item/church_task_item.py | 0 .../manual:_operations.json | 2 +- .../workspace/operations/operations.json | 2 +- church/{church_people => people}/__init__.py | 0 .../doctype/__init__.py | 0 .../doctype/family}/__init__.py | 0 .../doctype/family/family.js} | 2 +- .../doctype/family/family.json} | 14 +- .../doctype/family/family.py} | 18 +-- church/people/doctype/family/test_family.py | 9 ++ .../doctype/family_members}/__init__.py | 0 .../family_members/family_members.json} | 8 +- .../doctype/family_members/family_members.py | 9 ++ .../doctype/letter}/__init__.py | 0 .../doctype/letter/letter.json} | 4 +- church/people/doctype/letter/letter.py | 9 ++ .../doctype/member_status}/__init__.py | 0 .../doctype/member_status/member_status.js | 8 ++ .../doctype/member_status/member_status.json} | 6 +- .../doctype/member_status/member_status.py | 9 ++ .../member_status/test_member_status.py | 9 ++ .../doctype/person}/__init__.py | 0 .../doctype/person/person.js} | 6 +- .../doctype/person/person.json} | 34 ++--- .../doctype/person/person.py} | 52 +++---- church/people/doctype/person/test_person.py | 9 ++ .../doctype/person_relation}/__init__.py | 0 .../person_relation/person_relation.json} | 16 +-- .../person_relation/person_relation.py} | 2 +- .../doctype/person_relation_type}/__init__.py | 0 .../person_relation_type.js | 8 ++ .../person_relation_type.json} | 8 +- .../person_relation_type.py} | 2 +- .../test_person_relation_type.py} | 2 +- .../doctype/position}/__init__.py | 0 .../doctype/position/position.js} | 2 +- .../doctype/position/position.json} | 8 +- .../doctype/position/position.py} | 2 +- .../people/doctype/position/test_position.py | 9 ++ .../doctype/role_type}/__init__.py | 0 church/people/doctype/role_type/role_type.js | 8 ++ .../doctype/role_type/role_type.json} | 12 +- church/people/doctype/role_type/role_type.py | 9 ++ .../doctype/role_type/test_role_type.py | 9 ++ .../church_families/church_families.json | 6 +- .../church_members/church_members.json | 6 +- .../church_persons/church_persons.json | 8 +- .../print_format/__init__.py | 0 .../print_format/church_directory/__init__.py | 0 .../church_directory/church_directory.json | 6 +- .../report/__init__.py | 0 .../__init__.py | 0 .../church_people_letters_not_yet_read.json | 12 +- .../__init__.py | 0 .../church_person_birthdays_(this_week).json | 10 +- .../report/church_person_letters/__init__.py | 0 .../church_person_letters.json | 12 +- .../__init__.py | 0 ...church_person_roles_ending_this_month.json | 35 +++++ .../current_church_person_roles/__init__.py | 0 .../current_church_person_roles.json | 35 +++++ .../web_form/__init__.py | 0 .../web_form/personal_details/__init__.py | 0 .../personal_details/personal_details.js | 0 .../personal_details/personal_details.json | 8 +- .../personal_details/personal_details.py | 0 .../manual:_people/manual:_people.json | 29 ++++ .../workspace/people/people.json | 32 ++--- .../{church_prayers => prayers}/__init__.py | 0 .../doctype/__init__.py | 0 .../doctype/prayer}/__init__.py | 0 church/prayers/doctype/prayer/prayer.js | 8 ++ .../doctype/prayer/prayer.json} | 10 +- church/prayers/doctype/prayer/prayer.py | 9 ++ church/prayers/doctype/prayer/test_prayer.py | 9 ++ .../doctype/prayer_request}/__init__.py | 0 .../doctype/prayer_request/prayer_request.js} | 7 +- .../prayer_request/prayer_request.json} | 17 ++- .../doctype/prayer_request/prayer_request.py} | 2 +- .../templates/church_prayer_request.html | 0 .../templates/church_prayer_request_row.html | 0 .../prayer_request/test_prayer_request.py} | 2 +- .../prayer_request_status}/__init__.py | 0 .../prayer_request_status.js | 8 ++ .../prayer_request_status.json} | 4 +- .../prayer_request_status.py | 9 ++ .../test_prayer_request_status.py | 9 ++ .../doctype/prayer_request_type}/__init__.py | 0 .../prayer_request_type.js} | 2 +- .../prayer_request_type.json} | 4 +- .../prayer_request_type.py | 9 ++ .../test_prayer_request_type.py | 9 ++ .../doctype/prayer_topic}/__init__.py | 0 .../doctype/prayer_topic/prayer_topic.json} | 8 +- .../doctype/prayer_topic/prayer_topic.py | 9 ++ .../church_prayer_request_count.json | 10 +- ...hurch_prayer_request_count_(answered).json | 10 +- .../report/__init__.py | 0 .../__init__.py | 0 ...ch_prayer_requests:_recently_answered.json | 16 +-- .../__init__.py | 0 ...rch_prayer_requests:_recently_created.json | 20 +-- .../web_form/__init__.py | 0 .../web_form/prayer_request/__init__.py | 0 .../web_form/prayer_request/prayer_request.js | 0 .../prayer_request/prayer_request.json | 10 +- .../web_form/prayer_request/prayer_request.py | 0 .../prayer_request_anonymous/__init__.py | 0 .../prayer_request_anonymous.js | 0 .../prayer_request_anonymous.json | 10 +- .../prayer_request_anonymous.py | 0 .../manual:_prayers/manual:_prayers.json | 2 +- .../workspace/prayers/prayers.json | 22 +-- church/public/js/church_utils.js | 24 ++++ church/{church_study => study}/__init__.py | 0 .../doctype/__init__.py | 0 .../doctype/bible_book}/__init__.py | 0 church/study/doctype/bible_book/bible_book.js | 8 ++ .../doctype/bible_book/bible_book.json} | 6 +- church/study/doctype/bible_book/bible_book.py | 9 ++ .../doctype/bible_book/test_bible_book.py | 9 ++ .../doctype/bible_reference}/__init__.py | 0 .../bible_reference/bible_reference.js} | 18 +-- .../bible_reference/bible_reference.json} | 12 +- .../bible_reference/bible_reference.py} | 6 +- .../bible_reference/test_bible_reference.py | 9 ++ .../doctype/bible_translation}/__init__.py | 0 .../bible_translation/bible_translation.js} | 2 +- .../bible_translation/bible_translation.json} | 4 +- .../bible_translation/bible_translation.py | 9 ++ .../test_bible_translation.py} | 2 +- .../doctype/bible_verse}/__init__.py | 0 .../doctype/bible_verse/bible_verse.js} | 10 +- .../doctype/bible_verse/bible_verse.json} | 10 +- .../doctype/bible_verse/bible_verse.py} | 4 +- .../doctype/bible_verse/test_bible_verse.py | 9 ++ .../doctype/sermon}/__init__.py | 0 .../doctype/sermon/sermon.js} | 9 +- .../doctype/sermon/sermon.json} | 10 +- .../doctype/sermon/sermon.py} | 2 +- .../doctype/sermon/test_sermon.py} | 2 +- .../doctype/sermon_presentation}/__init__.py | 0 .../sermon_presentation.json} | 6 +- .../sermon_presentation.py} | 2 +- .../doctype/sermon_slide}/__init__.py | 0 .../doctype/sermon_slide/sermon_slide.json} | 7 +- .../doctype/sermon_slide/sermon_slide.py} | 2 +- .../manual:_study/manual:_study.json | 4 +- .../workspace/study/study.json | 12 +- church/www/sermon_presentation.html | 2 +- church/www/sermon_presentation.py | 6 +- 467 files changed, 1766 insertions(+), 1735 deletions(-) delete mode 100644 church/church_finances/doctype/church_collection_fund_total/church_collection_fund_total.py delete mode 100644 church/church_finances/doctype/church_event_attendance/church_event_attendance.py delete mode 100644 church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.js delete mode 100644 church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.py delete mode 100644 church/church_finances/doctype/church_event_attendance_type/test_church_event_attendance_type.py delete mode 100644 church/church_finances/doctype/church_expense_type/church_expense_type.js delete mode 100644 church/church_finances/doctype/church_expense_type/test_church_expense_type.py delete mode 100644 church/church_finances/doctype/church_financial_transaction/church_financial_transaction.py delete mode 100644 church/church_finances/doctype/church_fund_transfer/test_church_fund_transfer.py delete mode 100644 church/church_finances/doctype/church_payment_type/church_payment_type.js delete mode 100644 church/church_finances/doctype/church_payment_type/church_payment_type.py delete mode 100644 church/church_finances/doctype/church_payment_type/test_church_payment_type.py delete mode 100644 church/church_finances/report/church_donations/church_donations.json delete mode 100644 church/church_finances/report/church_donations_by_person/church_donations_by_person.json delete mode 100644 church/church_finances/report/church_expenses/church_expenses.json delete mode 100644 church/church_finances/workspace/manual:_finances/manual:_finances.json delete mode 100644 church/church_foundations/doctype/church_belief_bible_references/church_belief_bible_references.py delete mode 100644 church/church_foundations/doctype/church_information/church_information.py delete mode 100644 church/church_foundations/doctype/church_information/test_church_information.py delete mode 100644 church/church_ministries/doctype/church_event_attendance/church_event_attendance.py delete mode 100644 church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.js delete mode 100644 church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.py delete mode 100644 church/church_ministries/doctype/church_event_attendance_type/test_church_event_attendance_type.py delete mode 100644 church/church_ministries/doctype/church_event_schedule/church_event_schedule.py delete mode 100644 church/church_ministries/doctype/church_event_type/church_event_type.py delete mode 100644 church/church_ministries/doctype/church_event_type/test_church_event_type.py delete mode 100644 church/church_ministries/report/church_attendance/church_attendance.json delete mode 100644 church/church_missions/doctype/church_missionary/church_missionary.py delete mode 100644 church/church_missions/doctype/church_missionary/test_church_missionary.py delete mode 100644 church/church_missions/doctype/church_missionary_agency/church_missionary_agency.js delete mode 100644 church/church_missions/doctype/church_missionary_agency/church_missionary_agency.py delete mode 100644 church/church_missions/doctype/church_missionary_agency/test_church_missionary_agency.py delete mode 100644 church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.js delete mode 100644 church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.py delete mode 100644 church/church_missions/doctype/church_missionary_support_frequency/test_church_missionary_support_frequency.py delete mode 100644 church/church_people/doctype/church_family/test_church_family.py delete mode 100644 church/church_people/doctype/church_family_members/church_family_members.py delete mode 100644 church/church_people/doctype/church_member_status/church_member_status.js delete mode 100644 church/church_people/doctype/church_member_status/church_member_status.py delete mode 100644 church/church_people/doctype/church_member_status/test_church_member_status.py delete mode 100644 church/church_people/doctype/church_person/test_church_person.py delete mode 100644 church/church_people/doctype/church_person_relation/church_person_relation.py delete mode 100644 church/church_people/doctype/church_person_relation_type/church_person_relation_type.js delete mode 100644 church/church_people/doctype/church_person_relation_type/church_person_relation_type.py delete mode 100644 church/church_people/doctype/church_person_relation_type/test_church_person_relation_type.py delete mode 100644 church/church_people/doctype/church_role_type/church_role_type.js delete mode 100644 church/church_people/doctype/church_role_type/church_role_type.py delete mode 100644 church/church_people/doctype/church_role_type/test_church_role_type.py delete mode 100644 church/church_people/report/church_person_roles_ending_this_month/church_person_roles_ending_this_month.json delete mode 100644 church/church_people/report/current_church_person_roles/current_church_person_roles.json delete mode 100644 church/church_people/workspace/manual:_people/manual:_people.json delete mode 100644 church/church_prayers/doctype/church_prayer/church_prayer.py delete mode 100644 church/church_prayers/doctype/church_prayer/test_church_prayer.py delete mode 100644 church/church_prayers/doctype/church_prayer_request/test_church_prayer_request.py delete mode 100644 church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.js delete mode 100644 church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.py delete mode 100644 church/church_prayers/doctype/church_prayer_request_status/test_church_prayer_request_status.py delete mode 100644 church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.js delete mode 100644 church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.py delete mode 100644 church/church_prayers/doctype/church_prayer_request_type/test_church_prayer_request_type.py delete mode 100644 church/church_prayers/doctype/church_prayer_topic/church_prayer_topic.py delete mode 100644 church/church_study/doctype/church_bible_book/church_bible_book.js delete mode 100644 church/church_study/doctype/church_bible_book/church_bible_book.py delete mode 100644 church/church_study/doctype/church_bible_book/test_church_bible_book.py delete mode 100644 church/church_study/doctype/church_bible_reference/test_church_bible_reference.py delete mode 100644 church/church_study/doctype/church_bible_translation/church_bible_translation.js delete mode 100644 church/church_study/doctype/church_bible_translation/church_bible_translation.py delete mode 100644 church/church_study/doctype/church_bible_translation/test_church_bible_translation.py delete mode 100644 church/church_study/doctype/church_bible_verse/test_church_bible_verse.py rename church/{church_communications => communications}/__init__.py (100%) rename church/{church_communications => communications}/doctype/__init__.py (100%) rename church/{church_communications/doctype/church_letter => communications/doctype/letter}/__init__.py (100%) rename church/{church_communications/doctype/church_letter/church_letter.json => communications/doctype/letter/letter.json} (97%) rename church/{church_ministries/doctype/church_song/church_song.py => communications/doctype/letter/letter.py} (85%) rename church/{church_communications/doctype/church_presentation => communications/doctype/presentation}/__init__.py (100%) rename church/{church_finances/doctype/church_event/church_event.js => communications/doctype/presentation/presentation.js} (77%) rename church/{church_communications/doctype/church_presentation/church_presentation.json => communications/doctype/presentation/presentation.json} (87%) rename church/{church_communications/doctype/church_letter/church_letter.py => communications/doctype/presentation/presentation.py} (84%) rename church/{church_foundations/doctype/church_belief/test_church_belief.py => communications/doctype/presentation/test_presentation.py} (77%) rename church/{church_communications/doctype/church_presentation_slide => communications/doctype/presentation_slide}/__init__.py (100%) rename church/{church_foundations/doctype/church_information/church_information.js => communications/doctype/presentation_slide/presentation_slide.js} (75%) rename church/{church_communications/doctype/church_presentation_slide/church_presentation_slide.json => communications/doctype/presentation_slide/presentation_slide.json} (92%) create mode 100644 church/communications/doctype/presentation_slide/presentation_slide.py rename church/{church_finances/doctype/church_alms_request/test_church_alms_request.py => communications/doctype/presentation_slide/test_presentation_slide.py} (75%) rename church/{church_communications => communications}/report/__init__.py (100%) rename church/{church_communications => communications}/report/church_letters_to_be_shared/__init__.py (100%) rename church/{church_communications => communications}/report/church_letters_to_be_shared/church_letters_to_be_shared.json (81%) rename church/{church_communications => communications}/web_form/presentations/__init__.py (100%) rename church/{church_communications => communications}/web_form/presentations/presentations.js (100%) rename church/{church_communications => communications}/web_form/presentations/presentations.json (93%) rename church/{church_communications => communications}/web_form/presentations/presentations.py (100%) rename church/{church_communications => communications}/workspace/communications/communications.json (91%) rename church/{church_communications => communications}/workspace/manual:_communications/manual:_communications.json (51%) rename church/{church_customizations => customizations}/__init__.py (100%) rename church/{church_customizations => customizations}/custom/address.json (100%) rename church/{church_finances => finances}/__init__.py (100%) rename church/{church_finances => finances}/doctype/__init__.py (100%) rename church/{church_finances/doctype/church_alms_request => finances/doctype/alms_request}/__init__.py (100%) rename church/{church_finances/doctype/church_alms_request/church_alms_request.js => finances/doctype/alms_request/alms_request.js} (83%) rename church/{church_finances/doctype/church_alms_request/church_alms_request.json => finances/doctype/alms_request/alms_request.json} (93%) rename church/{church_finances/doctype/church_alms_request/church_alms_request.py => finances/doctype/alms_request/alms_request.py} (72%) rename church/{church_ministries/doctype/church_event/test_church_event.py => finances/doctype/alms_request/test_alms_request.py} (77%) rename church/{church_finances/doctype/church_collection => finances/doctype/collection}/__init__.py (100%) rename church/{church_finances/doctype/church_collection/church_collection.js => finances/doctype/collection/collection.js} (83%) rename church/{church_finances/doctype/church_collection/church_collection.json => finances/doctype/collection/collection.json} (86%) rename church/{church_finances/doctype/church_collection/church_collection.py => finances/doctype/collection/collection.py} (78%) rename church/{church_people/doctype/church_role/test_church_role.py => finances/doctype/collection/test_collection.py} (78%) rename church/{church_finances/doctype/church_collection_fund_total => finances/doctype/collection_fund_total}/__init__.py (100%) rename church/{church_finances/doctype/church_collection_fund_total/church_collection_fund_total.json => finances/doctype/collection_fund_total/collection_fund_total.json} (83%) create mode 100644 church/finances/doctype/collection_fund_total/collection_fund_total.py rename church/{church_finances/doctype/church_donation => finances/doctype/donation}/__init__.py (100%) rename church/{church_finances/doctype/church_donation/church_donation.json => finances/doctype/donation/donation.json} (88%) rename church/{church_finances/doctype/church_event/church_event.py => finances/doctype/donation/donation.py} (85%) rename church/{church_finances/doctype/church_event => finances/doctype/event_attendance}/__init__.py (100%) rename church/{church_finances/doctype/church_event_attendance/church_event_attendance.json => finances/doctype/event_attendance/event_attendance.json} (80%) rename church/{church_finances/doctype/church_event_type/church_event_type.py => finances/doctype/event_attendance/event_attendance.py} (83%) rename church/{church_finances/doctype/church_event_attendance => finances/doctype/event_attendance_type}/__init__.py (100%) create mode 100644 church/finances/doctype/event_attendance_type/event_attendance_type.js rename church/{church_finances/doctype/church_event_attendance_type/church_event_attendance_type.json => finances/doctype/event_attendance_type/event_attendance_type.json} (84%) create mode 100644 church/finances/doctype/event_attendance_type/event_attendance_type.py create mode 100644 church/finances/doctype/event_attendance_type/test_event_attendance_type.py rename church/{church_finances/doctype/church_event_attendance_type => finances/doctype/event_type}/__init__.py (100%) rename church/{church_ministries/doctype/church_song/church_song.js => finances/doctype/event_type/event_type.js} (78%) rename church/{church_finances/doctype/church_event_type/church_event_type.json => finances/doctype/event_type/event_type.json} (92%) rename church/{church_people/doctype/church_letter/church_letter.py => finances/doctype/event_type/event_type.py} (84%) rename church/{church_finances/doctype/church_fund/test_church_fund.py => finances/doctype/event_type/test_event_type.py} (78%) rename church/{church_finances/doctype/church_event_type => finances/doctype/expense}/__init__.py (100%) rename church/{church_prayers/doctype/church_prayer/church_prayer.js => finances/doctype/expense/expense.js} (77%) rename church/{church_finances/doctype/church_expense/church_expense.json => finances/doctype/expense/expense.json} (91%) rename church/{church_finances/doctype/church_expense/church_expense.py => finances/doctype/expense/expense.py} (55%) rename church/{church_ministries/doctype/church_song/test_church_song.py => finances/doctype/expense/test_expense.py} (78%) rename church/{church_finances/doctype/church_expense => finances/doctype/expense_type}/__init__.py (100%) rename church/{church_finances/doctype/church_expense/church_expense.js => finances/doctype/expense_type/expense_type.js} (76%) rename church/{church_finances/doctype/church_expense_type/church_expense_type.json => finances/doctype/expense_type/expense_type.json} (86%) rename church/{church_finances/doctype/church_expense_type/church_expense_type.py => finances/doctype/expense_type/expense_type.py} (82%) rename church/{church_finances/doctype/church_event/test_church_event.py => finances/doctype/expense_type/test_expense_type.py} (77%) rename church/{church_finances/doctype/church_expense_type => finances/doctype/financial_transaction}/__init__.py (100%) rename church/{church_finances/doctype/church_financial_transaction/church_financial_transaction.json => finances/doctype/financial_transaction/financial_transaction.json} (95%) create mode 100644 church/finances/doctype/financial_transaction/financial_transaction.py rename church/{church_finances/doctype/church_financial_transaction => finances/doctype/function}/__init__.py (100%) create mode 100644 church/finances/doctype/function/function.js rename church/{church_finances/doctype/church_event/church_event.json => finances/doctype/function/function.json} (93%) create mode 100644 church/finances/doctype/function/function.py create mode 100644 church/finances/doctype/function/test_function.py rename church/{church_finances/doctype/church_fund => finances/doctype/fund}/__init__.py (100%) rename church/{church_finances/doctype/church_fund/church_fund.js => finances/doctype/fund/fund.js} (92%) rename church/{church_finances/doctype/church_fund/church_fund.json => finances/doctype/fund/fund.json} (94%) rename church/{church_finances/doctype/church_fund/church_fund.py => finances/doctype/fund/fund.py} (95%) create mode 100644 church/finances/doctype/fund/test_fund.py rename church/{church_finances/doctype/church_fund_transfer => finances/doctype/fund_transfer}/__init__.py (100%) rename church/{church_finances/doctype/church_fund_transfer/church_fund_transfer.js => finances/doctype/fund_transfer/fund_transfer.js} (92%) rename church/{church_finances/doctype/church_fund_transfer/church_fund_transfer.json => finances/doctype/fund_transfer/fund_transfer.json} (91%) rename church/{church_finances/doctype/church_fund_transfer/church_fund_transfer.py => finances/doctype/fund_transfer/fund_transfer.py} (73%) create mode 100644 church/finances/doctype/fund_transfer/test_fund_transfer.py rename church/{church_finances/doctype/church_payment_type => finances/doctype/payment_type}/__init__.py (100%) create mode 100644 church/finances/doctype/payment_type/payment_type.js rename church/{church_finances/doctype/church_payment_type/church_payment_type.json => finances/doctype/payment_type/payment_type.json} (87%) create mode 100644 church/finances/doctype/payment_type/payment_type.py create mode 100644 church/finances/doctype/payment_type/test_payment_type.py rename church/{church_finances => finances}/report/__init__.py (100%) rename church/{church_finances => finances}/report/church_collection_bank_reconciliation/__init__.py (100%) rename church/{church_finances => finances}/report/church_collection_bank_reconciliation/church_collection_bank_reconciliation.json (71%) rename church/{church_finances => finances}/report/church_donations/__init__.py (100%) create mode 100644 church/finances/report/church_donations/church_donations.json rename church/{church_finances => finances}/report/church_donations_by_person/__init__.py (100%) create mode 100644 church/finances/report/church_donations_by_person/church_donations_by_person.json rename church/{church_finances => finances}/report/church_expenses/__init__.py (100%) create mode 100644 church/finances/report/church_expenses/church_expenses.json rename church/{church_finances => finances}/report/church_fund_balances/__init__.py (100%) rename church/{church_finances => finances}/report/church_fund_balances/church_fund_balances.json (75%) rename church/{church_finances => finances}/report/church_fund_transactions/__init__.py (100%) rename church/{church_finances => finances}/report/church_fund_transactions/church_fund_transactions.json (69%) rename church/{church_finances => finances}/report/church_fund_transactions_by_date/__init__.py (100%) rename church/{church_finances => finances}/report/church_fund_transactions_by_date/church_fund_transactions_by_date.json (69%) rename church/{church_finances => finances}/report/church_person_donations/__init__.py (100%) rename church/{church_finances => finances}/report/church_person_donations/church_person_donations.json (77%) rename church/{church_finances => finances}/web_form/__init__.py (100%) rename church/{church_finances => finances}/web_form/alms_request/__init__.py (100%) rename church/{church_finances => finances}/web_form/alms_request/alms_request.js (100%) rename church/{church_finances => finances}/web_form/alms_request/alms_request.json (96%) rename church/{church_finances => finances}/web_form/alms_request/alms_request.py (100%) rename church/{church_finances => finances}/workspace/finances/finances.json (73%) create mode 100644 church/finances/workspace/manual:_finances/manual:_finances.json rename church/{church_foundations => foundations}/__init__.py (100%) rename church/{church_foundations => foundations}/doctype/__init__.py (100%) rename church/{church_foundations/doctype/church_belief => foundations/doctype/belief}/__init__.py (100%) rename church/{church_foundations/doctype/church_belief/church_belief.js => foundations/doctype/belief/belief.js} (89%) rename church/{church_foundations/doctype/church_belief/church_belief.json => foundations/doctype/belief/belief.json} (94%) rename church/{church_foundations/doctype/church_belief/church_belief.py => foundations/doctype/belief/belief.py} (83%) create mode 100644 church/foundations/doctype/belief/test_belief.py rename church/{church_foundations/doctype/church_belief_bible_references => foundations/doctype/belief_bible_references}/__init__.py (100%) rename church/{church_foundations/doctype/church_belief_bible_references/church_belief_bible_references.json => foundations/doctype/belief_bible_references/belief_bible_references.json} (85%) create mode 100644 church/foundations/doctype/belief_bible_references/belief_bible_references.py rename church/{church_foundations/doctype/church_information => foundations/doctype/information}/__init__.py (100%) create mode 100644 church/foundations/doctype/information/information.js rename church/{church_foundations/doctype/church_information/church_information.json => foundations/doctype/information/information.json} (94%) create mode 100644 church/foundations/doctype/information/information.py create mode 100644 church/foundations/doctype/information/test_information.py rename church/{church_foundations => foundations}/module_onboarding/church/church.json (81%) rename church/{church_foundations => foundations}/onboarding_step/church_event/church_event.json (65%) rename church/{church_foundations => foundations}/onboarding_step/church_family/church_family.json (62%) rename church/{church_foundations => foundations}/onboarding_step/church_information/church_information.json (69%) rename church/{church_foundations => foundations}/onboarding_step/church_manager/church_manager.json (100%) rename church/{church_foundations => foundations}/onboarding_step/church_person/church_person.json (62%) rename church/{church_foundations => foundations}/onboarding_step/church_prayer_request/church_prayer_request.json (83%) rename church/{church_foundations => foundations}/onboarding_step/email_configuration/email_configuration.json (100%) rename church/{church_foundations => foundations}/workspace/foundations/foundations.json (91%) rename church/{church_foundations => foundations}/workspace/getting_started/getting_started.json (70%) rename church/{church_foundations => foundations}/workspace/manual:_foundations/manual:_foundations.json (53%) rename church/{church_foundations => foundations}/workspace/manual:_website/manual:_website.json (94%) rename church/{church_foundations => foundations}/workspace/support/support.json (98%) rename church/{church_foundations => foundations}/workspace/welcome/welcome.json (99%) rename church/{church_ministries => ministries}/__init__.py (100%) rename church/{church_ministries => ministries}/doctype/__init__.py (100%) rename church/{church_ministries/doctype/church_event => ministries/doctype/event_attendance}/__init__.py (100%) rename church/{church_ministries/doctype/church_event_attendance/church_event_attendance.json => ministries/doctype/event_attendance/event_attendance.json} (81%) create mode 100644 church/ministries/doctype/event_attendance/event_attendance.py rename church/{church_ministries/doctype/church_event_attendance => ministries/doctype/event_attendance_type}/__init__.py (100%) create mode 100644 church/ministries/doctype/event_attendance_type/event_attendance_type.js rename church/{church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.json => ministries/doctype/event_attendance_type/event_attendance_type.json} (87%) create mode 100644 church/ministries/doctype/event_attendance_type/event_attendance_type.py create mode 100644 church/ministries/doctype/event_attendance_type/test_event_attendance_type.py rename church/{church_ministries/doctype/church_event_attendance_type => ministries/doctype/event_schedule}/__init__.py (100%) rename church/{church_ministries/doctype/church_event_schedule/church_event_schedule.json => ministries/doctype/event_schedule/event_schedule.json} (96%) create mode 100644 church/ministries/doctype/event_schedule/event_schedule.py rename church/{church_ministries/doctype/church_event_schedule => ministries/doctype/event_type}/__init__.py (100%) create mode 100644 church/ministries/doctype/event_type/event_type.js rename church/{church_ministries/doctype/church_event_type/church_event_type.json => ministries/doctype/event_type/event_type.json} (93%) create mode 100644 church/ministries/doctype/event_type/event_type.py create mode 100644 church/ministries/doctype/event_type/test_event_type.py rename church/{church_ministries/doctype/church_event_type => ministries/doctype/function}/__init__.py (100%) rename church/{church_ministries/doctype/church_event/church_event.js => ministries/doctype/function/function.js} (86%) rename church/{church_ministries/doctype/church_event/church_event.json => ministries/doctype/function/function.json} (93%) rename church/{church_ministries/doctype/church_event/church_event.py => ministries/doctype/function/function.py} (86%) create mode 100644 church/ministries/doctype/function/test_function.py rename church/{church_ministries/doctype/church_song => ministries/doctype/song}/__init__.py (100%) create mode 100644 church/ministries/doctype/song/song.js rename church/{church_ministries/doctype/church_song/church_song.json => ministries/doctype/song/song.json} (92%) create mode 100644 church/ministries/doctype/song/song.py create mode 100644 church/ministries/doctype/song/test_song.py rename church/{church_ministries => ministries}/report/__init__.py (100%) rename church/{church_ministries => ministries}/report/church_attendance/__init__.py (100%) create mode 100644 church/ministries/report/church_attendance/church_attendance.json rename church/{church_ministries => ministries}/report/church_event_attendance/__init__.py (100%) rename church/{church_ministries => ministries}/report/church_event_attendance/church_event_attendance.json (69%) rename church/{church_ministries => ministries}/report/church_event_count_by_type/__init__.py (100%) rename church/{church_ministries => ministries}/report/church_event_count_by_type/church_event_count_by_type.json (79%) rename church/{church_ministries => ministries}/report/church_events/__init__.py (100%) rename church/{church_ministries => ministries}/report/church_events/church_events.json (51%) rename church/{church_ministries => ministries}/workspace/manual:_ministries/manual:_ministries.json (99%) rename church/{church_ministries => ministries}/workspace/ministries/ministries.json (90%) rename church/{church_missions => missions}/__init__.py (100%) rename church/{church_missions => missions}/doctype/__init__.py (100%) rename church/{church_missions/doctype/church_missionary => missions/doctype/missionary}/__init__.py (100%) rename church/{church_missions/doctype/church_missionary/church_missionary.js => missions/doctype/missionary/missionary.js} (95%) rename church/{church_missions/doctype/church_missionary/church_missionary.json => missions/doctype/missionary/missionary.json} (92%) create mode 100644 church/missions/doctype/missionary/missionary.py create mode 100644 church/missions/doctype/missionary/test_missionary.py rename church/{church_missions/doctype/church_missionary_agency => missions/doctype/missionary_agency}/__init__.py (100%) rename church/{church_ministries/doctype/church_event_type/church_event_type.js => missions/doctype/missionary_agency/missionary_agency.js} (75%) rename church/{church_missions/doctype/church_missionary_agency/church_missionary_agency.json => missions/doctype/missionary_agency/missionary_agency.json} (95%) create mode 100644 church/missions/doctype/missionary_agency/missionary_agency.py rename church/{church_finances/doctype/church_collection/test_church_collection.py => missions/doctype/missionary_agency/test_missionary_agency.py} (75%) rename church/{church_missions/doctype/church_missionary_support_frequency => missions/doctype/missionary_support_frequency}/__init__.py (100%) rename church/{church_communications/doctype/church_presentation_slide/church_presentation_slide.js => missions/doctype/missionary_support_frequency/missionary_support_frequency.js} (71%) rename church/{church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.json => missions/doctype/missionary_support_frequency/missionary_support_frequency.json} (90%) rename church/{church_communications/doctype/church_presentation_slide/church_presentation_slide.py => missions/doctype/missionary_support_frequency/missionary_support_frequency.py} (79%) rename church/{church_communications/doctype/church_presentation_slide/test_church_presentation_slide.py => missions/doctype/missionary_support_frequency/test_missionary_support_frequency.py} (71%) rename church/{church_missions => missions}/report/__init__.py (100%) rename church/{church_missions => missions}/report/church_missionary_letters/__init__.py (100%) rename church/{church_missions => missions}/report/church_missionary_letters/church_missionary_letters.json (80%) rename church/{church_missions => missions}/report/church_missionary_letters_not_yet_read/__init__.py (100%) rename church/{church_missions => missions}/report/church_missionary_letters_not_yet_read/church_missionary_letters_not_yet_read.json (76%) rename church/{church_missions => missions}/workspace/manual:_missions/manual:_missions.json (99%) rename church/{church_missions => missions}/workspace/missions/missions.json (90%) rename church/{church_operations => operations}/__init__.py (100%) rename church/{church_operations => operations}/doctype/__init__.py (100%) rename church/{church_operations => operations}/doctype/church_asset/__init__.py (100%) rename church/{church_operations => operations}/doctype/church_asset/church_asset.js (100%) rename church/{church_operations => operations}/doctype/church_asset/church_asset.json (98%) rename church/{church_operations => operations}/doctype/church_asset/church_asset.py (100%) rename church/{church_operations => operations}/doctype/church_asset/test_church_asset.py (100%) rename church/{church_operations => operations}/doctype/church_location/__init__.py (100%) rename church/{church_operations => operations}/doctype/church_location/church_location.js (100%) rename church/{church_operations => operations}/doctype/church_location/church_location.json (98%) rename church/{church_operations => operations}/doctype/church_location/church_location.py (100%) rename church/{church_operations => operations}/doctype/church_location/test_church_location.py (100%) rename church/{church_operations => operations}/doctype/church_task/__init__.py (100%) rename church/{church_operations => operations}/doctype/church_task/church_task.js (100%) rename church/{church_operations => operations}/doctype/church_task/church_task.json (98%) rename church/{church_operations => operations}/doctype/church_task/church_task.py (100%) rename church/{church_operations => operations}/doctype/church_task/test_church_task.py (100%) rename church/{church_operations => operations}/doctype/church_task_item/__init__.py (100%) rename church/{church_operations => operations}/doctype/church_task_item/church_task_item.json (98%) rename church/{church_operations => operations}/doctype/church_task_item/church_task_item.py (100%) rename church/{church_operations => operations}/workspace/manual:_operations/manual:_operations.json (98%) rename church/{church_operations => operations}/workspace/operations/operations.json (98%) rename church/{church_people => people}/__init__.py (100%) rename church/{church_people => people}/doctype/__init__.py (100%) rename church/{church_people/doctype/church_family => people/doctype/family}/__init__.py (100%) rename church/{church_people/doctype/church_family/church_family.js => people/doctype/family/family.js} (74%) rename church/{church_people/doctype/church_family/church_family.json => people/doctype/family/family.json} (84%) rename church/{church_people/doctype/church_family/church_family.py => people/doctype/family/family.py} (56%) create mode 100644 church/people/doctype/family/test_family.py rename church/{church_people/doctype/church_family_members => people/doctype/family_members}/__init__.py (100%) rename church/{church_people/doctype/church_family_members/church_family_members.json => people/doctype/family_members/family_members.json} (81%) create mode 100644 church/people/doctype/family_members/family_members.py rename church/{church_people/doctype/church_letter => people/doctype/letter}/__init__.py (100%) rename church/{church_people/doctype/church_letter/church_letter.json => people/doctype/letter/letter.json} (97%) create mode 100644 church/people/doctype/letter/letter.py rename church/{church_people/doctype/church_member_status => people/doctype/member_status}/__init__.py (100%) create mode 100644 church/people/doctype/member_status/member_status.js rename church/{church_people/doctype/church_member_status/church_member_status.json => people/doctype/member_status/member_status.json} (94%) create mode 100644 church/people/doctype/member_status/member_status.py create mode 100644 church/people/doctype/member_status/test_member_status.py rename church/{church_people/doctype/church_person => people/doctype/person}/__init__.py (100%) rename church/{church_people/doctype/church_person/church_person.js => people/doctype/person/person.js} (87%) rename church/{church_people/doctype/church_person/church_person.json => people/doctype/person/person.json} (92%) rename church/{church_people/doctype/church_person/church_person.py => people/doctype/person/person.py} (76%) create mode 100644 church/people/doctype/person/test_person.py rename church/{church_people/doctype/church_person_relation => people/doctype/person_relation}/__init__.py (100%) rename church/{church_people/doctype/church_person_relation/church_person_relation.json => people/doctype/person_relation/person_relation.json} (77%) rename church/{church_finances/doctype/church_donation/church_donation.py => people/doctype/person_relation/person_relation.py} (83%) rename church/{church_people/doctype/church_person_relation_type => people/doctype/person_relation_type}/__init__.py (100%) create mode 100644 church/people/doctype/person_relation_type/person_relation_type.js rename church/{church_people/doctype/church_person_relation_type/church_person_relation_type.json => people/doctype/person_relation_type/person_relation_type.json} (88%) rename church/{church_communications/doctype/church_presentation/church_presentation.py => people/doctype/person_relation_type/person_relation_type.py} (82%) rename church/{church_communications/doctype/church_presentation/test_church_presentation.py => people/doctype/person_relation_type/test_person_relation_type.py} (75%) rename church/{church_people/doctype/church_role => people/doctype/position}/__init__.py (100%) rename church/{church_people/doctype/church_role/church_role.js => people/doctype/position/position.js} (74%) rename church/{church_people/doctype/church_role/church_role.json => people/doctype/position/position.json} (90%) rename church/{church_people/doctype/church_role/church_role.py => people/doctype/position/position.py} (85%) create mode 100644 church/people/doctype/position/test_position.py rename church/{church_people/doctype/church_role_type => people/doctype/role_type}/__init__.py (100%) create mode 100644 church/people/doctype/role_type/role_type.js rename church/{church_people/doctype/church_role_type/church_role_type.json => people/doctype/role_type/role_type.json} (81%) create mode 100644 church/people/doctype/role_type/role_type.py create mode 100644 church/people/doctype/role_type/test_role_type.py rename church/{church_people => people}/number_card/church_families/church_families.json (85%) rename church/{church_people => people}/number_card/church_members/church_members.json (80%) rename church/{church_people => people}/number_card/church_persons/church_persons.json (80%) rename church/{church_people => people}/print_format/__init__.py (100%) rename church/{church_people => people}/print_format/church_directory/__init__.py (100%) rename church/{church_people => people}/print_format/church_directory/church_directory.json (61%) rename church/{church_people => people}/report/__init__.py (100%) rename church/{church_people => people}/report/church_people_letters_not_yet_read/__init__.py (100%) rename church/{church_people => people}/report/church_people_letters_not_yet_read/church_people_letters_not_yet_read.json (77%) rename church/{church_people => people}/report/church_person_birthdays_(this_week)/__init__.py (100%) rename church/{church_people => people}/report/church_person_birthdays_(this_week)/church_person_birthdays_(this_week).json (51%) rename church/{church_people => people}/report/church_person_letters/__init__.py (100%) rename church/{church_people => people}/report/church_person_letters/church_person_letters.json (81%) rename church/{church_people => people}/report/church_person_roles_ending_this_month/__init__.py (100%) create mode 100644 church/people/report/church_person_roles_ending_this_month/church_person_roles_ending_this_month.json rename church/{church_people => people}/report/current_church_person_roles/__init__.py (100%) create mode 100644 church/people/report/current_church_person_roles/current_church_person_roles.json rename church/{church_people => people}/web_form/__init__.py (100%) rename church/{church_people => people}/web_form/personal_details/__init__.py (100%) rename church/{church_people => people}/web_form/personal_details/personal_details.js (100%) rename church/{church_people => people}/web_form/personal_details/personal_details.json (98%) rename church/{church_people => people}/web_form/personal_details/personal_details.py (100%) create mode 100644 church/people/workspace/manual:_people/manual:_people.json rename church/{church_people => people}/workspace/people/people.json (86%) rename church/{church_prayers => prayers}/__init__.py (100%) rename church/{church_prayers => prayers}/doctype/__init__.py (100%) rename church/{church_prayers/doctype/church_prayer => prayers/doctype/prayer}/__init__.py (100%) create mode 100644 church/prayers/doctype/prayer/prayer.js rename church/{church_prayers/doctype/church_prayer/church_prayer.json => prayers/doctype/prayer/prayer.json} (91%) create mode 100644 church/prayers/doctype/prayer/prayer.py create mode 100644 church/prayers/doctype/prayer/test_prayer.py rename church/{church_prayers/doctype/church_prayer_request => prayers/doctype/prayer_request}/__init__.py (100%) rename church/{church_prayers/doctype/church_prayer_request/church_prayer_request.js => prayers/doctype/prayer_request/prayer_request.js} (74%) rename church/{church_prayers/doctype/church_prayer_request/church_prayer_request.json => prayers/doctype/prayer_request/prayer_request.json} (90%) rename church/{church_prayers/doctype/church_prayer_request/church_prayer_request.py => prayers/doctype/prayer_request/prayer_request.py} (92%) rename church/{church_prayers/doctype/church_prayer_request => prayers/doctype/prayer_request}/templates/church_prayer_request.html (100%) rename church/{church_prayers/doctype/church_prayer_request => prayers/doctype/prayer_request}/templates/church_prayer_request_row.html (100%) rename church/{church_finances/doctype/church_expense/test_church_expense.py => prayers/doctype/prayer_request/test_prayer_request.py} (77%) rename church/{church_prayers/doctype/church_prayer_request_status => prayers/doctype/prayer_request_status}/__init__.py (100%) create mode 100644 church/prayers/doctype/prayer_request_status/prayer_request_status.js rename church/{church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.json => prayers/doctype/prayer_request_status/prayer_request_status.json} (95%) create mode 100644 church/prayers/doctype/prayer_request_status/prayer_request_status.py create mode 100644 church/prayers/doctype/prayer_request_status/test_prayer_request_status.py rename church/{church_prayers/doctype/church_prayer_request_type => prayers/doctype/prayer_request_type}/__init__.py (100%) rename church/{church_communications/doctype/church_presentation/church_presentation.js => prayers/doctype/prayer_request_type/prayer_request_type.js} (74%) rename church/{church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.json => prayers/doctype/prayer_request_type/prayer_request_type.json} (95%) create mode 100644 church/prayers/doctype/prayer_request_type/prayer_request_type.py create mode 100644 church/prayers/doctype/prayer_request_type/test_prayer_request_type.py rename church/{church_prayers/doctype/church_prayer_topic => prayers/doctype/prayer_topic}/__init__.py (100%) rename church/{church_prayers/doctype/church_prayer_topic/church_prayer_topic.json => prayers/doctype/prayer_topic/prayer_topic.json} (85%) create mode 100644 church/prayers/doctype/prayer_topic/prayer_topic.py rename church/{church_prayers => prayers}/number_card/church_prayer_request_count/church_prayer_request_count.json (64%) rename church/{church_prayers => prayers}/number_card/church_prayer_request_count_(answered)/church_prayer_request_count_(answered).json (65%) rename church/{church_prayers => prayers}/report/__init__.py (100%) rename church/{church_prayers => prayers}/report/church_prayer_requests:_recently_answered/__init__.py (100%) rename church/{church_prayers => prayers}/report/church_prayer_requests:_recently_answered/church_prayer_requests:_recently_answered.json (74%) rename church/{church_prayers => prayers}/report/church_prayer_requests:_recently_created/__init__.py (100%) rename church/{church_prayers => prayers}/report/church_prayer_requests:_recently_created/church_prayer_requests:_recently_created.json (73%) rename church/{church_prayers => prayers}/web_form/__init__.py (100%) rename church/{church_prayers => prayers}/web_form/prayer_request/__init__.py (100%) rename church/{church_prayers => prayers}/web_form/prayer_request/prayer_request.js (100%) rename church/{church_prayers => prayers}/web_form/prayer_request/prayer_request.json (95%) rename church/{church_prayers => prayers}/web_form/prayer_request/prayer_request.py (100%) rename church/{church_prayers => prayers}/web_form/prayer_request_anonymous/__init__.py (100%) rename church/{church_prayers => prayers}/web_form/prayer_request_anonymous/prayer_request_anonymous.js (100%) rename church/{church_prayers => prayers}/web_form/prayer_request_anonymous/prayer_request_anonymous.json (92%) rename church/{church_prayers => prayers}/web_form/prayer_request_anonymous/prayer_request_anonymous.py (100%) rename church/{church_prayers => prayers}/workspace/manual:_prayers/manual:_prayers.json (99%) rename church/{church_prayers => prayers}/workspace/prayers/prayers.json (84%) create mode 100644 church/public/js/church_utils.js rename church/{church_study => study}/__init__.py (100%) rename church/{church_study => study}/doctype/__init__.py (100%) rename church/{church_study/doctype/church_bible_book => study/doctype/bible_book}/__init__.py (100%) create mode 100644 church/study/doctype/bible_book/bible_book.js rename church/{church_study/doctype/church_bible_book/church_bible_book.json => study/doctype/bible_book/bible_book.json} (93%) create mode 100644 church/study/doctype/bible_book/bible_book.py create mode 100644 church/study/doctype/bible_book/test_bible_book.py rename church/{church_study/doctype/church_bible_reference => study/doctype/bible_reference}/__init__.py (100%) rename church/{church_study/doctype/church_bible_reference/church_bible_reference.js => study/doctype/bible_reference/bible_reference.js} (90%) rename church/{church_study/doctype/church_bible_reference/church_bible_reference.json => study/doctype/bible_reference/bible_reference.json} (91%) rename church/{church_study/doctype/church_bible_reference/church_bible_reference.py => study/doctype/bible_reference/bible_reference.py} (81%) create mode 100644 church/study/doctype/bible_reference/test_bible_reference.py rename church/{church_study/doctype/church_bible_translation => study/doctype/bible_translation}/__init__.py (100%) rename church/{church_finances/doctype/church_event_type/church_event_type.js => study/doctype/bible_translation/bible_translation.js} (75%) rename church/{church_study/doctype/church_bible_translation/church_bible_translation.json => study/doctype/bible_translation/bible_translation.json} (95%) create mode 100644 church/study/doctype/bible_translation/bible_translation.py rename church/{church_finances/doctype/church_event_type/test_church_event_type.py => study/doctype/bible_translation/test_bible_translation.py} (75%) rename church/{church_study/doctype/church_bible_verse => study/doctype/bible_verse}/__init__.py (100%) rename church/{church_study/doctype/church_bible_verse/church_bible_verse.js => study/doctype/bible_verse/bible_verse.js} (93%) rename church/{church_study/doctype/church_bible_verse/church_bible_verse.json => study/doctype/bible_verse/bible_verse.json} (91%) rename church/{church_study/doctype/church_bible_verse/church_bible_verse.py => study/doctype/bible_verse/bible_verse.py} (81%) create mode 100644 church/study/doctype/bible_verse/test_bible_verse.py rename church/{church_study/doctype/church_sermon => study/doctype/sermon}/__init__.py (100%) rename church/{church_study/doctype/church_sermon/church_sermon.js => study/doctype/sermon/sermon.js} (96%) rename church/{church_study/doctype/church_sermon/church_sermon.json => study/doctype/sermon/sermon.json} (90%) rename church/{church_study/doctype/church_sermon/church_sermon.py => study/doctype/sermon/sermon.py} (93%) rename church/{church_study/doctype/church_sermon/test_church_sermon.py => study/doctype/sermon/test_sermon.py} (77%) rename church/{church_study/doctype/church_sermon_presentation => study/doctype/sermon_presentation}/__init__.py (100%) rename church/{church_study/doctype/church_sermon_presentation/church_sermon_presentation.json => study/doctype/sermon_presentation/sermon_presentation.json} (92%) rename church/{church_study/doctype/church_sermon_presentation/church_sermon_presentation.py => study/doctype/sermon_presentation/sermon_presentation.py} (79%) rename church/{church_study/doctype/church_sermon_slide => study/doctype/sermon_slide}/__init__.py (100%) rename church/{church_study/doctype/church_sermon_slide/church_sermon_slide.json => study/doctype/sermon_slide/sermon_slide.json} (86%) rename church/{church_study/doctype/church_sermon_slide/church_sermon_slide.py => study/doctype/sermon_slide/sermon_slide.py} (81%) rename church/{church_study => study}/workspace/manual:_study/manual:_study.json (65%) rename church/{church_study => study}/workspace/study/study.json (90%) diff --git a/README.md b/README.md index a44bb6e..a766c09 100644 --- a/README.md +++ b/README.md @@ -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 diff --git a/church/church_finances/doctype/church_collection_fund_total/church_collection_fund_total.py b/church/church_finances/doctype/church_collection_fund_total/church_collection_fund_total.py deleted file mode 100644 index 08b4388..0000000 --- a/church/church_finances/doctype/church_collection_fund_total/church_collection_fund_total.py +++ /dev/null @@ -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 diff --git a/church/church_finances/doctype/church_event_attendance/church_event_attendance.py b/church/church_finances/doctype/church_event_attendance/church_event_attendance.py deleted file mode 100644 index 1c56a6f..0000000 --- a/church/church_finances/doctype/church_event_attendance/church_event_attendance.py +++ /dev/null @@ -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 diff --git a/church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.js b/church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.js deleted file mode 100644 index 2984a38..0000000 --- a/church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.py b/church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.py deleted file mode 100644 index c7833bc..0000000 --- a/church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.py +++ /dev/null @@ -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 diff --git a/church/church_finances/doctype/church_event_attendance_type/test_church_event_attendance_type.py b/church/church_finances/doctype/church_event_attendance_type/test_church_event_attendance_type.py deleted file mode 100644 index 6818e82..0000000 --- a/church/church_finances/doctype/church_event_attendance_type/test_church_event_attendance_type.py +++ /dev/null @@ -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 diff --git a/church/church_finances/doctype/church_expense_type/church_expense_type.js b/church/church_finances/doctype/church_expense_type/church_expense_type.js deleted file mode 100644 index 4f670cf..0000000 --- a/church/church_finances/doctype/church_expense_type/church_expense_type.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_finances/doctype/church_expense_type/test_church_expense_type.py b/church/church_finances/doctype/church_expense_type/test_church_expense_type.py deleted file mode 100644 index 8d67a65..0000000 --- a/church/church_finances/doctype/church_expense_type/test_church_expense_type.py +++ /dev/null @@ -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 diff --git a/church/church_finances/doctype/church_financial_transaction/church_financial_transaction.py b/church/church_finances/doctype/church_financial_transaction/church_financial_transaction.py deleted file mode 100644 index 4c86605..0000000 --- a/church/church_finances/doctype/church_financial_transaction/church_financial_transaction.py +++ /dev/null @@ -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 diff --git a/church/church_finances/doctype/church_fund_transfer/test_church_fund_transfer.py b/church/church_finances/doctype/church_fund_transfer/test_church_fund_transfer.py deleted file mode 100644 index 748b2be..0000000 --- a/church/church_finances/doctype/church_fund_transfer/test_church_fund_transfer.py +++ /dev/null @@ -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 diff --git a/church/church_finances/doctype/church_payment_type/church_payment_type.js b/church/church_finances/doctype/church_payment_type/church_payment_type.js deleted file mode 100644 index ec6d5d9..0000000 --- a/church/church_finances/doctype/church_payment_type/church_payment_type.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_finances/doctype/church_payment_type/church_payment_type.py b/church/church_finances/doctype/church_payment_type/church_payment_type.py deleted file mode 100644 index 29f85cc..0000000 --- a/church/church_finances/doctype/church_payment_type/church_payment_type.py +++ /dev/null @@ -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 diff --git a/church/church_finances/doctype/church_payment_type/test_church_payment_type.py b/church/church_finances/doctype/church_payment_type/test_church_payment_type.py deleted file mode 100644 index 705e3b1..0000000 --- a/church/church_finances/doctype/church_payment_type/test_church_payment_type.py +++ /dev/null @@ -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 diff --git a/church/church_finances/report/church_donations/church_donations.json b/church/church_finances/report/church_donations/church_donations.json deleted file mode 100644 index 17c68b6..0000000 --- a/church/church_finances/report/church_donations/church_donations.json +++ /dev/null @@ -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 -} \ No newline at end of file diff --git a/church/church_finances/report/church_donations_by_person/church_donations_by_person.json b/church/church_finances/report/church_donations_by_person/church_donations_by_person.json deleted file mode 100644 index 0b60028..0000000 --- a/church/church_finances/report/church_donations_by_person/church_donations_by_person.json +++ /dev/null @@ -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 -} \ No newline at end of file diff --git a/church/church_finances/report/church_expenses/church_expenses.json b/church/church_finances/report/church_expenses/church_expenses.json deleted file mode 100644 index 949ac01..0000000 --- a/church/church_finances/report/church_expenses/church_expenses.json +++ /dev/null @@ -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 -} \ No newline at end of file diff --git a/church/church_finances/workspace/manual:_finances/manual:_finances.json b/church/church_finances/workspace/manual:_finances/manual:_finances.json deleted file mode 100644 index 3a8ac14..0000000 --- a/church/church_finances/workspace/manual:_finances/manual:_finances.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "charts": [], - "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83e\ude99Finances Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The finances module contains features related to the finances of the church.\",\"col\":12}},{\"id\":\"w8oEjl0tNc\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcb5Collections\",\"col\":12}},{\"id\":\"z52PVRpfzT\",\"type\":\"paragraph\",\"data\":{\"text\":\"A collection tracks donations from people for specific events.\",\"col\":12}},{\"id\":\"hh6-W_FmMh\",\"type\":\"paragraph\",\"data\":{\"text\":\"Each time a collection is taken, a New Collection should be created. When creating a new collection note the following:
- Although not required, It is recommended to link the collection to the Church Event in which the collection is being taken.
    - By regularly linking events to collections, it will be possible later to run reports to see collection amounts for specific event types, etc.
- Remember: After saving a collection, it will be in a draft state. In order to finalize the collection, you will need to 'Submit' the collection. Once submitted, it cannot be modified unless you cancel and amend it.
    - See the 'Terminology' section in the Getting Started guide for more information about document states (draft / submitted / cancelled / amended / etc).
- After submitting the collection, you can click the Bank Reconciliation Report button on the top right of the form. This report can be used to compare with bank deposit reports.\",\"col\":12}},{\"id\":\"kVjzsXy2-5\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Finances workspace, contains links to view the collection list and various collection reports.\",\"col\":12}},{\"id\":\"8K2QjgOLSb\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83e\udd32Donations\",\"col\":12}},{\"id\":\"bZ3I5EEmVO\",\"type\":\"paragraph\",\"data\":{\"text\":\"A donation tracks the amount given from a person toward a church fund. For tracking monies given to people in need, see Alms below.\",\"col\":12}},{\"id\":\"HSRUNh_Fan\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding donations to a collection, note the following:
- After entering each donation, the collection total and fund totals will be updated in real-time.
- If a single donation check specifies multiple funds, enter it as two separate donations (one for each fund).
- Additional payment types can be added if needed.
- When entering a donation from a specific person (i.e. Check donation or Cash Envelope), it is highly recommended to link the donation to the person.
   - By regularly linking donations to persons, end-of-year statements and individual person donation reports can be created.
\",\"col\":12}},{\"id\":\"Z1nAaK7FS7\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Finances workspace, contains links to view donation reports. \",\"col\":12}},{\"id\":\"vVJ7g0tHHy\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udccaFunds\",\"col\":12}},{\"id\":\"4znr2XFUMc\",\"type\":\"paragraph\",\"data\":{\"text\":\"Funds are used by churches to tag monies for a specific purpose. Some default funds are included (i.e. General, Building, Missions, etc), but additional funds can be created for your own purposes.\",\"col\":12}},{\"id\":\"37szS6a0yE\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding/managing a fund, note the following:
- Any collections that contained donations the the fund will be listed in the 'Transactions' section at the bottom of the fund form.
- Manual transactions can created for the fund if needed
    - If the transaction is a transfer between funds, then
create a fund transfer instead. Fund transfers automatically add a transaction to the fund.
    - If the transaction is documenting an church expense,
add an expense instead. By choosing the expense type, an associated fund transaction will automatically be created. \",\"col\":12}},{\"id\":\"Tdfr6-sFUJ\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Finances workspace, contains links to view fund reports along with a graph showing the current totals in each fund.\",\"col\":12}},{\"id\":\"1IhzkEsC60\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcb8Expenses\",\"col\":12}},{\"id\":\"jgQMiK07Uh\",\"type\":\"paragraph\",\"data\":{\"text\":\"Expenses are any transaction that requires an outflow of funds. \",\"col\":12}},{\"id\":\"wjAR7Nu3_S\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating an expense, note the following:
- An expense type must be chosen. If needed, you can create a new expense type.
\",\"col\":12}},{\"id\":\"67mC7yvAUx\",\"type\":\"paragraph\",\"data\":{\"text\":\"Expense Types\",\"col\":12}},{\"id\":\"fL3gBJn8g-\",\"type\":\"paragraph\",\"data\":{\"text\":\"Expense types are used to categorize different expenses. This allows for more fine-grained financial reporting.\",\"col\":12}},{\"id\":\"WmN1sFvcpL\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating an expense type, note the following:
- Each expense type is linked to a specific fund, so that when expenses of this type are created, a transaction for the related fund will also automatically be created.
- Expense types can be grouped in hierarchies. For example, you could have an expense type group of 'Waste' and then have sub-types of 'Trash' and 'Recycling'.
    - In the example above, the 'Waste' expense type would have the 'group' option checked and the 'Trash' and 'Recycling' expense types would have 'Waste' selected as the 'Parent Expense Type'.
\",\"col\":12}},{\"id\":\"hh7kswiBbD\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83e\udef4Alms\",\"col\":12}},{\"id\":\"tlzyc7xao2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Alms are monies given by the church to someone in need. For giving to the church, see Donations above.\",\"col\":12}},{\"id\":\"wHgIFlrdYA\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating an alms request, note the following:
- The Recipient is the person (or family) who would receive the alms
- Once the alms request is Approved or Declined, the Status field should be updated.
- Once the alms have been distributed to the Recipient:
    - The Status can be set to Distributed.
    - An associated Expense can be created by clicking the Create Expense button at the top-right of the form. This will create and submit an
Expense and automatically reduce the Fund associated with that Expense.\",\"col\":12}}]", - "creation": "2025-10-26 22:28:38.959939", - "custom_blocks": [], - "docstatus": 0, - "doctype": "Workspace", - "for_user": "", - "hide_custom": 0, - "icon": "help", - "idx": 0, - "indicator_color": "", - "is_hidden": 0, - "label": "Manual: Finances", - "links": [], - "modified": "2026-03-01 23:53:34.004566", - "modified_by": "Administrator", - "module": "Church Finances", - "name": "Manual: Finances", - "number_cards": [], - "owner": "Administrator", - "parent_page": "Finances", - "public": 1, - "quick_lists": [], - "roles": [], - "sequence_id": 7.0, - "shortcuts": [], - "title": "Manual: Finances" -} \ No newline at end of file diff --git a/church/church_foundations/doctype/church_belief_bible_references/church_belief_bible_references.py b/church/church_foundations/doctype/church_belief_bible_references/church_belief_bible_references.py deleted file mode 100644 index 98d0d06..0000000 --- a/church/church_foundations/doctype/church_belief_bible_references/church_belief_bible_references.py +++ /dev/null @@ -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 diff --git a/church/church_foundations/doctype/church_information/church_information.py b/church/church_foundations/doctype/church_information/church_information.py deleted file mode 100644 index 3857030..0000000 --- a/church/church_foundations/doctype/church_information/church_information.py +++ /dev/null @@ -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 diff --git a/church/church_foundations/doctype/church_information/test_church_information.py b/church/church_foundations/doctype/church_information/test_church_information.py deleted file mode 100644 index 2bf96b9..0000000 --- a/church/church_foundations/doctype/church_information/test_church_information.py +++ /dev/null @@ -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 diff --git a/church/church_ministries/doctype/church_event_attendance/church_event_attendance.py b/church/church_ministries/doctype/church_event_attendance/church_event_attendance.py deleted file mode 100644 index 1c56a6f..0000000 --- a/church/church_ministries/doctype/church_event_attendance/church_event_attendance.py +++ /dev/null @@ -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 diff --git a/church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.js b/church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.js deleted file mode 100644 index 2984a38..0000000 --- a/church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.py b/church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.py deleted file mode 100644 index c7833bc..0000000 --- a/church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.py +++ /dev/null @@ -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 diff --git a/church/church_ministries/doctype/church_event_attendance_type/test_church_event_attendance_type.py b/church/church_ministries/doctype/church_event_attendance_type/test_church_event_attendance_type.py deleted file mode 100644 index 6818e82..0000000 --- a/church/church_ministries/doctype/church_event_attendance_type/test_church_event_attendance_type.py +++ /dev/null @@ -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 diff --git a/church/church_ministries/doctype/church_event_schedule/church_event_schedule.py b/church/church_ministries/doctype/church_event_schedule/church_event_schedule.py deleted file mode 100644 index 3419f52..0000000 --- a/church/church_ministries/doctype/church_event_schedule/church_event_schedule.py +++ /dev/null @@ -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 diff --git a/church/church_ministries/doctype/church_event_type/church_event_type.py b/church/church_ministries/doctype/church_event_type/church_event_type.py deleted file mode 100644 index 8ffcd74..0000000 --- a/church/church_ministries/doctype/church_event_type/church_event_type.py +++ /dev/null @@ -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 diff --git a/church/church_ministries/doctype/church_event_type/test_church_event_type.py b/church/church_ministries/doctype/church_event_type/test_church_event_type.py deleted file mode 100644 index a29da72..0000000 --- a/church/church_ministries/doctype/church_event_type/test_church_event_type.py +++ /dev/null @@ -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 diff --git a/church/church_ministries/report/church_attendance/church_attendance.json b/church/church_ministries/report/church_attendance/church_attendance.json deleted file mode 100644 index 92421ae..0000000 --- a/church/church_ministries/report/church_attendance/church_attendance.json +++ /dev/null @@ -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 -} \ No newline at end of file diff --git a/church/church_missions/doctype/church_missionary/church_missionary.py b/church/church_missions/doctype/church_missionary/church_missionary.py deleted file mode 100644 index 9aca2bb..0000000 --- a/church/church_missions/doctype/church_missionary/church_missionary.py +++ /dev/null @@ -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 diff --git a/church/church_missions/doctype/church_missionary/test_church_missionary.py b/church/church_missions/doctype/church_missionary/test_church_missionary.py deleted file mode 100644 index fdef5a3..0000000 --- a/church/church_missions/doctype/church_missionary/test_church_missionary.py +++ /dev/null @@ -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 diff --git a/church/church_missions/doctype/church_missionary_agency/church_missionary_agency.js b/church/church_missions/doctype/church_missionary_agency/church_missionary_agency.js deleted file mode 100644 index 51bfefd..0000000 --- a/church/church_missions/doctype/church_missionary_agency/church_missionary_agency.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_missions/doctype/church_missionary_agency/church_missionary_agency.py b/church/church_missions/doctype/church_missionary_agency/church_missionary_agency.py deleted file mode 100644 index 65c260a..0000000 --- a/church/church_missions/doctype/church_missionary_agency/church_missionary_agency.py +++ /dev/null @@ -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 diff --git a/church/church_missions/doctype/church_missionary_agency/test_church_missionary_agency.py b/church/church_missions/doctype/church_missionary_agency/test_church_missionary_agency.py deleted file mode 100644 index 4c7306a..0000000 --- a/church/church_missions/doctype/church_missionary_agency/test_church_missionary_agency.py +++ /dev/null @@ -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 diff --git a/church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.js b/church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.js deleted file mode 100644 index 4bdd072..0000000 --- a/church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.py b/church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.py deleted file mode 100644 index 8ed9c59..0000000 --- a/church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.py +++ /dev/null @@ -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 diff --git a/church/church_missions/doctype/church_missionary_support_frequency/test_church_missionary_support_frequency.py b/church/church_missions/doctype/church_missionary_support_frequency/test_church_missionary_support_frequency.py deleted file mode 100644 index c362ea0..0000000 --- a/church/church_missions/doctype/church_missionary_support_frequency/test_church_missionary_support_frequency.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_family/test_church_family.py b/church/church_people/doctype/church_family/test_church_family.py deleted file mode 100644 index 4080999..0000000 --- a/church/church_people/doctype/church_family/test_church_family.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_family_members/church_family_members.py b/church/church_people/doctype/church_family_members/church_family_members.py deleted file mode 100644 index d16651c..0000000 --- a/church/church_people/doctype/church_family_members/church_family_members.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_member_status/church_member_status.js b/church/church_people/doctype/church_member_status/church_member_status.js deleted file mode 100644 index b10d7a9..0000000 --- a/church/church_people/doctype/church_member_status/church_member_status.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_people/doctype/church_member_status/church_member_status.py b/church/church_people/doctype/church_member_status/church_member_status.py deleted file mode 100644 index e4cb4a7..0000000 --- a/church/church_people/doctype/church_member_status/church_member_status.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_member_status/test_church_member_status.py b/church/church_people/doctype/church_member_status/test_church_member_status.py deleted file mode 100644 index b31b494..0000000 --- a/church/church_people/doctype/church_member_status/test_church_member_status.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_person/test_church_person.py b/church/church_people/doctype/church_person/test_church_person.py deleted file mode 100644 index 229209d..0000000 --- a/church/church_people/doctype/church_person/test_church_person.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_person_relation/church_person_relation.py b/church/church_people/doctype/church_person_relation/church_person_relation.py deleted file mode 100644 index 3107988..0000000 --- a/church/church_people/doctype/church_person_relation/church_person_relation.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_person_relation_type/church_person_relation_type.js b/church/church_people/doctype/church_person_relation_type/church_person_relation_type.js deleted file mode 100644 index eae8a51..0000000 --- a/church/church_people/doctype/church_person_relation_type/church_person_relation_type.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_people/doctype/church_person_relation_type/church_person_relation_type.py b/church/church_people/doctype/church_person_relation_type/church_person_relation_type.py deleted file mode 100644 index 46cb77b..0000000 --- a/church/church_people/doctype/church_person_relation_type/church_person_relation_type.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_person_relation_type/test_church_person_relation_type.py b/church/church_people/doctype/church_person_relation_type/test_church_person_relation_type.py deleted file mode 100644 index 8d29012..0000000 --- a/church/church_people/doctype/church_person_relation_type/test_church_person_relation_type.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_role_type/church_role_type.js b/church/church_people/doctype/church_role_type/church_role_type.js deleted file mode 100644 index ff44ed7..0000000 --- a/church/church_people/doctype/church_role_type/church_role_type.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_people/doctype/church_role_type/church_role_type.py b/church/church_people/doctype/church_role_type/church_role_type.py deleted file mode 100644 index 33beb97..0000000 --- a/church/church_people/doctype/church_role_type/church_role_type.py +++ /dev/null @@ -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 diff --git a/church/church_people/doctype/church_role_type/test_church_role_type.py b/church/church_people/doctype/church_role_type/test_church_role_type.py deleted file mode 100644 index af21221..0000000 --- a/church/church_people/doctype/church_role_type/test_church_role_type.py +++ /dev/null @@ -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 diff --git a/church/church_people/report/church_person_roles_ending_this_month/church_person_roles_ending_this_month.json b/church/church_people/report/church_person_roles_ending_this_month/church_person_roles_ending_this_month.json deleted file mode 100644 index 013ae2c..0000000 --- a/church/church_people/report/church_person_roles_ending_this_month/church_person_roles_ending_this_month.json +++ /dev/null @@ -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 -} \ No newline at end of file diff --git a/church/church_people/report/current_church_person_roles/current_church_person_roles.json b/church/church_people/report/current_church_person_roles/current_church_person_roles.json deleted file mode 100644 index b792bc9..0000000 --- a/church/church_people/report/current_church_person_roles/current_church_person_roles.json +++ /dev/null @@ -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 -} \ No newline at end of file diff --git a/church/church_people/workspace/manual:_people/manual:_people.json b/church/church_people/workspace/manual:_people/manual:_people.json deleted file mode 100644 index f75b251..0000000 --- a/church/church_people/workspace/manual:_people/manual:_people.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "charts": [], - "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udc65People Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The people module contains features relating to the people of the church (i.e. Members, Families, Leadership. etc).\",\"col\":12}},{\"id\":\"Htx875Wd1w\",\"type\":\"paragraph\",\"data\":{\"text\":\"The People workspace contains number cards and graphs indicating the current count of people/families/members. there are also links to various reports (Birthdays, Roles, Letters, etc).\",\"col\":12}},{\"id\":\"qI9ZNpJJX4\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udc64Person\",\"col\":12}},{\"id\":\"RZThk3_x4O\",\"type\":\"paragraph\",\"data\":{\"text\":\"Church people include guests, members, leadership, and other people who interact or are associated with the church.\",\"col\":12}},{\"id\":\"UJEDTpYJIM\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding a person, note the following:
- Church membership and baptism status can be indicated.
    - If needed, additional member status types can be created.
- If the person has any roles in the church, they should be indicated in the 'Church Roles' section. 
   - If a role type does not exist, you can create new role types as needed.
- Photos should be added for members. The photos will be used in a member directory in a future versions.
- Letters from this person can be added in the 'Contact' tab
- If a family has been selected, the person will be displayed in the \\\"Family Members\\\" section on the `Church Family` form.
- Family relationships can be defined in the 'Family' tab.
    - When a spouse is added, the spouse's document will also be updated accordingly.
    - Additional relationships can be defined in the 'Notable Relationships' section - these relationships are not auto-updated on the other person's document.
    - A Family can be automatically created from a person by clicking the 'New Family From Person' button. This requires a 'Last Name' to be set, and will set the person as the Family's head-of-household.\",\"col\":12}},{\"id\":\"IqJm62Jfo2\",\"type\":\"paragraph\",\"data\":{\"text\":\"To give a person access to the Church App Portal, the church person must have an associated email address. 
Click the \\\"Invite to Portal\\\" button on the 'Church Person' form to create and associate a new user with the 'Church Person'.
    - The user will be created with 'Church User' permissions and linked with the 'Church Person' (This should give the user access to their own information as well as information that is shared with them).
    - The user should receive an invitation/welcome email (assuming email settings have been setup correctly).\",\"col\":12}},{\"id\":\"0a0Yfbfao3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Person/Member Directory\",\"col\":12}},{\"id\":\"aIL5EgTGiJ\",\"type\":\"paragraph\",\"data\":{\"text\":\"To generate a Church Directory:
1. Navigate to the church person list.
2. (Optionally) Check the Is Member filter to only show members.
3. Select all the people by checking the top left checkbox in the list.
4. Click the Actions button and choose Print.
5. Select your print options and click Print to generate a member directory pdf file.
    - Tip: To make each person page smaller when printing the pdf, you can use the print multiple pages per sheet option in your system print dialog (if your system supports this feature).
\",\"col\":12}},{\"id\":\"A37CU_rUFj\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc66Family\",\"col\":12}},{\"id\":\"_wxytNqTX4\",\"type\":\"paragraph\",\"data\":{\"text\":\"Families are groups of people who are related.\",\"col\":12}},{\"id\":\"qQr_8PsoeH\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding a family, note the following:
- After adding a family, you may want to link people to the family. When a person is linked to a family, that person will be displayed in the \\\"Family Members\\\" list.
- Only one person can be set as the head of household. To set the head-of-household, go to the person's document and check 'Is Head of Household' on the 'Family' tab.
\",\"col\":12}}]", - "creation": "2025-10-26 22:59:15.251142", - "custom_blocks": [], - "docstatus": 0, - "doctype": "Workspace", - "for_user": "", - "hide_custom": 0, - "icon": "help", - "idx": 0, - "indicator_color": "green", - "is_hidden": 0, - "label": "Manual: People", - "links": [], - "modified": "2026-03-01 23:53:34.182905", - "modified_by": "Administrator", - "module": "Church People", - "name": "Manual: People", - "number_cards": [], - "owner": "Administrator", - "parent_page": "People", - "public": 1, - "quick_lists": [], - "roles": [], - "sequence_id": 17.0, - "shortcuts": [], - "title": "Manual: People" -} \ No newline at end of file diff --git a/church/church_prayers/doctype/church_prayer/church_prayer.py b/church/church_prayers/doctype/church_prayer/church_prayer.py deleted file mode 100644 index fb2d13c..0000000 --- a/church/church_prayers/doctype/church_prayer/church_prayer.py +++ /dev/null @@ -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 diff --git a/church/church_prayers/doctype/church_prayer/test_church_prayer.py b/church/church_prayers/doctype/church_prayer/test_church_prayer.py deleted file mode 100644 index f1c1e9e..0000000 --- a/church/church_prayers/doctype/church_prayer/test_church_prayer.py +++ /dev/null @@ -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 diff --git a/church/church_prayers/doctype/church_prayer_request/test_church_prayer_request.py b/church/church_prayers/doctype/church_prayer_request/test_church_prayer_request.py deleted file mode 100644 index 75a4192..0000000 --- a/church/church_prayers/doctype/church_prayer_request/test_church_prayer_request.py +++ /dev/null @@ -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 diff --git a/church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.js b/church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.js deleted file mode 100644 index c807cfc..0000000 --- a/church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.py b/church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.py deleted file mode 100644 index be20279..0000000 --- a/church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.py +++ /dev/null @@ -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 diff --git a/church/church_prayers/doctype/church_prayer_request_status/test_church_prayer_request_status.py b/church/church_prayers/doctype/church_prayer_request_status/test_church_prayer_request_status.py deleted file mode 100644 index fae6da3..0000000 --- a/church/church_prayers/doctype/church_prayer_request_status/test_church_prayer_request_status.py +++ /dev/null @@ -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 diff --git a/church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.js b/church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.js deleted file mode 100644 index b164cf2..0000000 --- a/church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.py b/church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.py deleted file mode 100644 index 6cfd9c4..0000000 --- a/church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.py +++ /dev/null @@ -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 diff --git a/church/church_prayers/doctype/church_prayer_request_type/test_church_prayer_request_type.py b/church/church_prayers/doctype/church_prayer_request_type/test_church_prayer_request_type.py deleted file mode 100644 index 73c4225..0000000 --- a/church/church_prayers/doctype/church_prayer_request_type/test_church_prayer_request_type.py +++ /dev/null @@ -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 diff --git a/church/church_prayers/doctype/church_prayer_topic/church_prayer_topic.py b/church/church_prayers/doctype/church_prayer_topic/church_prayer_topic.py deleted file mode 100644 index 9e71e5e..0000000 --- a/church/church_prayers/doctype/church_prayer_topic/church_prayer_topic.py +++ /dev/null @@ -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 diff --git a/church/church_study/doctype/church_bible_book/church_bible_book.js b/church/church_study/doctype/church_bible_book/church_bible_book.js deleted file mode 100644 index c0da1ee..0000000 --- a/church/church_study/doctype/church_bible_book/church_bible_book.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_study/doctype/church_bible_book/church_bible_book.py b/church/church_study/doctype/church_bible_book/church_bible_book.py deleted file mode 100644 index 306358a..0000000 --- a/church/church_study/doctype/church_bible_book/church_bible_book.py +++ /dev/null @@ -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 diff --git a/church/church_study/doctype/church_bible_book/test_church_bible_book.py b/church/church_study/doctype/church_bible_book/test_church_bible_book.py deleted file mode 100644 index d55a2cf..0000000 --- a/church/church_study/doctype/church_bible_book/test_church_bible_book.py +++ /dev/null @@ -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 diff --git a/church/church_study/doctype/church_bible_reference/test_church_bible_reference.py b/church/church_study/doctype/church_bible_reference/test_church_bible_reference.py deleted file mode 100644 index 0f8c4c1..0000000 --- a/church/church_study/doctype/church_bible_reference/test_church_bible_reference.py +++ /dev/null @@ -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 diff --git a/church/church_study/doctype/church_bible_translation/church_bible_translation.js b/church/church_study/doctype/church_bible_translation/church_bible_translation.js deleted file mode 100644 index 22debfb..0000000 --- a/church/church_study/doctype/church_bible_translation/church_bible_translation.js +++ /dev/null @@ -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) { - -// }, -// }); diff --git a/church/church_study/doctype/church_bible_translation/church_bible_translation.py b/church/church_study/doctype/church_bible_translation/church_bible_translation.py deleted file mode 100644 index de7eb04..0000000 --- a/church/church_study/doctype/church_bible_translation/church_bible_translation.py +++ /dev/null @@ -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 diff --git a/church/church_study/doctype/church_bible_translation/test_church_bible_translation.py b/church/church_study/doctype/church_bible_translation/test_church_bible_translation.py deleted file mode 100644 index 1f8c107..0000000 --- a/church/church_study/doctype/church_bible_translation/test_church_bible_translation.py +++ /dev/null @@ -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 diff --git a/church/church_study/doctype/church_bible_verse/test_church_bible_verse.py b/church/church_study/doctype/church_bible_verse/test_church_bible_verse.py deleted file mode 100644 index 938c49c..0000000 --- a/church/church_study/doctype/church_bible_verse/test_church_bible_verse.py +++ /dev/null @@ -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 diff --git a/church/church_website/workspace/website/website.json b/church/church_website/workspace/website/website.json index 411e472..032a689 100644 --- a/church/church_website/workspace/website/website.json +++ b/church/church_website/workspace/website/website.json @@ -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", diff --git a/church/church_communications/__init__.py b/church/communications/__init__.py similarity index 100% rename from church/church_communications/__init__.py rename to church/communications/__init__.py diff --git a/church/church_communications/doctype/__init__.py b/church/communications/doctype/__init__.py similarity index 100% rename from church/church_communications/doctype/__init__.py rename to church/communications/doctype/__init__.py diff --git a/church/church_communications/doctype/church_letter/__init__.py b/church/communications/doctype/letter/__init__.py similarity index 100% rename from church/church_communications/doctype/church_letter/__init__.py rename to church/communications/doctype/letter/__init__.py diff --git a/church/church_communications/doctype/church_letter/church_letter.json b/church/communications/doctype/letter/letter.json similarity index 97% rename from church/church_communications/doctype/church_letter/church_letter.json rename to church/communications/doctype/letter/letter.json index a4ee60e..849bba8 100644 --- a/church/church_communications/doctype/church_letter/church_letter.json +++ b/church/communications/doctype/letter/letter.json @@ -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": [], diff --git a/church/church_ministries/doctype/church_song/church_song.py b/church/communications/doctype/letter/letter.py similarity index 85% rename from church/church_ministries/doctype/church_song/church_song.py rename to church/communications/doctype/letter/letter.py index 58bcdf6..fdc0c5c 100644 --- a/church/church_ministries/doctype/church_song/church_song.py +++ b/church/communications/doctype/letter/letter.py @@ -5,5 +5,5 @@ from frappe.model.document import Document -class ChurchSong(Document): +class Letter(Document): pass diff --git a/church/church_communications/doctype/church_presentation/__init__.py b/church/communications/doctype/presentation/__init__.py similarity index 100% rename from church/church_communications/doctype/church_presentation/__init__.py rename to church/communications/doctype/presentation/__init__.py diff --git a/church/church_finances/doctype/church_event/church_event.js b/church/communications/doctype/presentation/presentation.js similarity index 77% rename from church/church_finances/doctype/church_event/church_event.js rename to church/communications/doctype/presentation/presentation.js index 527f219..4a8e5d9 100644 --- a/church/church_finances/doctype/church_event/church_event.js +++ b/church/communications/doctype/presentation/presentation.js @@ -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) { // }, diff --git a/church/church_communications/doctype/church_presentation/church_presentation.json b/church/communications/doctype/presentation/presentation.json similarity index 87% rename from church/church_communications/doctype/church_presentation/church_presentation.json rename to church/communications/doctype/presentation/presentation.json index 216a260..867064a 100644 --- a/church/church_communications/doctype/church_presentation/church_presentation.json +++ b/church/communications/doctype/presentation/presentation.json @@ -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": [ diff --git a/church/church_communications/doctype/church_letter/church_letter.py b/church/communications/doctype/presentation/presentation.py similarity index 84% rename from church/church_communications/doctype/church_letter/church_letter.py rename to church/communications/doctype/presentation/presentation.py index ac74167..a837fb8 100644 --- a/church/church_communications/doctype/church_letter/church_letter.py +++ b/church/communications/doctype/presentation/presentation.py @@ -5,5 +5,5 @@ from frappe.model.document import Document -class ChurchLetter(Document): +class Presentation(Document): pass diff --git a/church/church_foundations/doctype/church_belief/test_church_belief.py b/church/communications/doctype/presentation/test_presentation.py similarity index 77% rename from church/church_foundations/doctype/church_belief/test_church_belief.py rename to church/communications/doctype/presentation/test_presentation.py index 972b6c6..9b36154 100644 --- a/church/church_foundations/doctype/church_belief/test_church_belief.py +++ b/church/communications/doctype/presentation/test_presentation.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchBelief(FrappeTestCase): +class TestPresentation(FrappeTestCase): pass diff --git a/church/church_communications/doctype/church_presentation_slide/__init__.py b/church/communications/doctype/presentation_slide/__init__.py similarity index 100% rename from church/church_communications/doctype/church_presentation_slide/__init__.py rename to church/communications/doctype/presentation_slide/__init__.py diff --git a/church/church_foundations/doctype/church_information/church_information.js b/church/communications/doctype/presentation_slide/presentation_slide.js similarity index 75% rename from church/church_foundations/doctype/church_information/church_information.js rename to church/communications/doctype/presentation_slide/presentation_slide.js index afc147f..57f074a 100644 --- a/church/church_foundations/doctype/church_information/church_information.js +++ b/church/communications/doctype/presentation_slide/presentation_slide.js @@ -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) { // }, diff --git a/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.json b/church/communications/doctype/presentation_slide/presentation_slide.json similarity index 92% rename from church/church_communications/doctype/church_presentation_slide/church_presentation_slide.json rename to church/communications/doctype/presentation_slide/presentation_slide.json index 72cafc7..8ad2cb5 100644 --- a/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.json +++ b/church/communications/doctype/presentation_slide/presentation_slide.json @@ -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": [], diff --git a/church/communications/doctype/presentation_slide/presentation_slide.py b/church/communications/doctype/presentation_slide/presentation_slide.py new file mode 100644 index 0000000..c363469 --- /dev/null +++ b/church/communications/doctype/presentation_slide/presentation_slide.py @@ -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 diff --git a/church/church_finances/doctype/church_alms_request/test_church_alms_request.py b/church/communications/doctype/presentation_slide/test_presentation_slide.py similarity index 75% rename from church/church_finances/doctype/church_alms_request/test_church_alms_request.py rename to church/communications/doctype/presentation_slide/test_presentation_slide.py index c952103..86fe765 100644 --- a/church/church_finances/doctype/church_alms_request/test_church_alms_request.py +++ b/church/communications/doctype/presentation_slide/test_presentation_slide.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchAlmsRequest(FrappeTestCase): +class TestPresentationSlide(FrappeTestCase): pass diff --git a/church/church_communications/report/__init__.py b/church/communications/report/__init__.py similarity index 100% rename from church/church_communications/report/__init__.py rename to church/communications/report/__init__.py diff --git a/church/church_communications/report/church_letters_to_be_shared/__init__.py b/church/communications/report/church_letters_to_be_shared/__init__.py similarity index 100% rename from church/church_communications/report/church_letters_to_be_shared/__init__.py rename to church/communications/report/church_letters_to_be_shared/__init__.py diff --git a/church/church_communications/report/church_letters_to_be_shared/church_letters_to_be_shared.json b/church/communications/report/church_letters_to_be_shared/church_letters_to_be_shared.json similarity index 81% rename from church/church_communications/report/church_letters_to_be_shared/church_letters_to_be_shared.json rename to church/communications/report/church_letters_to_be_shared/church_letters_to_be_shared.json index 64252a1..e42c685 100644 --- a/church/church_communications/report/church_letters_to_be_shared/church_letters_to_be_shared.json +++ b/church/communications/report/church_letters_to_be_shared/church_letters_to_be_shared.json @@ -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": [ { diff --git a/church/church_communications/web_form/presentations/__init__.py b/church/communications/web_form/presentations/__init__.py similarity index 100% rename from church/church_communications/web_form/presentations/__init__.py rename to church/communications/web_form/presentations/__init__.py diff --git a/church/church_communications/web_form/presentations/presentations.js b/church/communications/web_form/presentations/presentations.js similarity index 100% rename from church/church_communications/web_form/presentations/presentations.js rename to church/communications/web_form/presentations/presentations.js diff --git a/church/church_communications/web_form/presentations/presentations.json b/church/communications/web_form/presentations/presentations.json similarity index 93% rename from church/church_communications/web_form/presentations/presentations.json rename to church/communications/web_form/presentations/presentations.json index c261e70..a6d953b 100644 --- a/church/church_communications/web_form/presentations/presentations.json +++ b/church/communications/web_form/presentations/presentations.json @@ -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, diff --git a/church/church_communications/web_form/presentations/presentations.py b/church/communications/web_form/presentations/presentations.py similarity index 100% rename from church/church_communications/web_form/presentations/presentations.py rename to church/communications/web_form/presentations/presentations.py diff --git a/church/church_communications/workspace/communications/communications.json b/church/communications/workspace/communications/communications.json similarity index 91% rename from church/church_communications/workspace/communications/communications.json rename to church/communications/workspace/communications/communications.json index e55a5cd..b058770 100644 --- a/church/church_communications/workspace/communications/communications.json +++ b/church/communications/workspace/communications/communications.json @@ -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", diff --git a/church/church_communications/workspace/manual:_communications/manual:_communications.json b/church/communications/workspace/manual:_communications/manual:_communications.json similarity index 51% rename from church/church_communications/workspace/manual:_communications/manual:_communications.json rename to church/communications/workspace/manual:_communications/manual:_communications.json index b70a787..fbb64ab 100644 --- a/church/church_communications/workspace/manual:_communications/manual:_communications.json +++ b/church/communications/workspace/manual:_communications/manual:_communications.json @@ -1,6 +1,6 @@ { "charts": [], - "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\u2709\ufe0fCommunications Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The communications module contains features related to personal interactions within (and without) the church.\",\"col\":12}},{\"id\":\"w8oEjl0tNc\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcddLetters\",\"col\":12}},{\"id\":\"3Bta1pYT8D\",\"type\":\"paragraph\",\"data\":{\"text\":\"Letters received by the church from church people or missionaries can be added to the relevant person or missionary for archival or reference purposes.

When adding a letter to a
person or missionary, note the following:
- Check the 'Is Private' checkbox if the letter is not to be displayed publicly.
    -
Missionary letters will be displayed on the public 'missions' website page unless this checkbox is checked!
- If the letter should be shared with the church, check the 'Share with Church?' checkbox
    - Once the letter is shared, the 'Shared Date' field should be updated
    - The Church Letters To Be Shared With Church report will show all letters that should be, and have not yet been shared with the church.

Example Workflow:
1. Missionary Mike sends a prayer letter that he would like read to the church.
2. The Church Secretary receives the letter, navigates to `Missions > Missionaries > Missionary Mike > Letters to the Church` and adds the letter to the Missionary Mike document making note that the letter should be read to the church.
3. Before the next church service, the Pastor runs the `
Missions > Church Missionary Letters` report and filters by 'Share w/ Church` to see which letters need to be read.
4. The letters are added to the `Church Event Schedule` for the next `
Church Event` (Service).
5. Missionary Mike's `Missionary` document can be updated with a date to show that the letter was read to the church.
\",\"col\":12}},{\"id\":\"X5XpRUgRXI\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udda5\ufe0fPresentations\",\"col\":12}},{\"id\":\"Nvk4J2JbSr\",\"type\":\"paragraph\",\"data\":{\"text\":\"Presentations are collections of digital media slides that may be presented at a church event.
Note: there is not currently a way to actually 'present' a presentation. For more advanced use-cases we recommend FreeShow.\",\"col\":12}},{\"id\":\"MtTk2oxuSy\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating a presentation, note the following:
- Add as many slides as needed containing the content you would like to display.
- You may want to add the presentation as an item in a church event's schedule.\",\"col\":12}}]", + "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\u2709\ufe0fCommunications Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The communications module contains features related to personal interactions within (and without) the church.\",\"col\":12}},{\"id\":\"w8oEjl0tNc\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcddLetters\",\"col\":12}},{\"id\":\"3Bta1pYT8D\",\"type\":\"paragraph\",\"data\":{\"text\":\"Letters received by the church from church people or missionaries can be added to the relevant person or missionary for archival or reference purposes.

When adding a letter to a
person or missionary, note the following:
- Check the 'Is Private' checkbox if the letter is not to be displayed publicly.
    -
Missionary letters will be displayed on the public 'missions' website page unless this checkbox is checked!
- If the letter should be shared with the church, check the 'Share with Church?' checkbox
    - Once the letter is shared, the 'Shared Date' field should be updated
    - The Letters To Be Shared With Church report will show all letters that should be, and have not yet been shared with the church.

Example Workflow:
1. Missionary Mike sends a prayer letter that he would like read to the church.
2. The Church Secretary receives the letter, navigates to `Missions > Missionaries > Missionary Mike > Letters to the Church` and adds the letter to the Missionary Mike document making note that the letter should be read to the church.
3. Before the next church service, the Pastor runs the `
Missions > Missionary Letters` report and filters by 'Share w/ Church` to see which letters need to be read.
4. The letters are added to the `Event Schedule` for the next `
Function` (Service).
5. Missionary Mike's `Missionary` document can be updated with a date to show that the letter was read to the church.
\",\"col\":12}},{\"id\":\"X5XpRUgRXI\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udda5\ufe0fPresentations\",\"col\":12}},{\"id\":\"Nvk4J2JbSr\",\"type\":\"paragraph\",\"data\":{\"text\":\"Presentations are collections of digital media slides that may be presented at a church event.
Note: there is not currently a way to actually 'present' a presentation. For more advanced use-cases we recommend FreeShow.\",\"col\":12}},{\"id\":\"MtTk2oxuSy\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating a presentation, note the following:
- Add as many slides as needed containing the content you would like to display.
- You may want to add the presentation as an item in a church event'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", diff --git a/church/church_customizations/__init__.py b/church/customizations/__init__.py similarity index 100% rename from church/church_customizations/__init__.py rename to church/customizations/__init__.py diff --git a/church/church_customizations/custom/address.json b/church/customizations/custom/address.json similarity index 100% rename from church/church_customizations/custom/address.json rename to church/customizations/custom/address.json diff --git a/church/church_finances/__init__.py b/church/finances/__init__.py similarity index 100% rename from church/church_finances/__init__.py rename to church/finances/__init__.py diff --git a/church/church_finances/doctype/__init__.py b/church/finances/doctype/__init__.py similarity index 100% rename from church/church_finances/doctype/__init__.py rename to church/finances/doctype/__init__.py diff --git a/church/church_finances/doctype/church_alms_request/__init__.py b/church/finances/doctype/alms_request/__init__.py similarity index 100% rename from church/church_finances/doctype/church_alms_request/__init__.py rename to church/finances/doctype/alms_request/__init__.py diff --git a/church/church_finances/doctype/church_alms_request/church_alms_request.js b/church/finances/doctype/alms_request/alms_request.js similarity index 83% rename from church/church_finances/doctype/church_alms_request/church_alms_request.js rename to church/finances/doctype/alms_request/alms_request.js index e8c5985..ca1f208 100644 --- a/church/church_finances/doctype/church_alms_request/church_alms_request.js +++ b/church/finances/doctype/alms_request/alms_request.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -frappe.ui.form.on('Church Alms Request', { +frappe.ui.form.on('Alms Request', { recipient_type: function(frm) { // Dynamically update the Recipient field description based on the Recipient Type that is selected if (frm.doc.recipient_type) { @@ -13,7 +13,7 @@ frappe.ui.form.on('Church Alms Request', { if (!frm.is_new()) { frm.add_custom_button(__('Create Expense'), function () { frappe.call({ - method: 'church.church_finances.doctype.church_alms_request.church_alms_request.create_expense', + method: 'church.finances.doctype.alms_request.alms_request.create_expense', args: { alms_request_name: frm.doc.name }, @@ -27,7 +27,7 @@ frappe.ui.form.on('Church Alms Request', { onload: function(frm) { // Pre-populate the requestor field with the current user's name if (frm.is_new()) { - frappe.db.get_value('Church Person', {'portal_user': frappe.session.user}, 'name') + frappe.db.get_value('Person', {'portal_user': frappe.session.user}, 'name') .then(r => { if (r && r.message) { frm.set_value('requestor', r.message.name); diff --git a/church/church_finances/doctype/church_alms_request/church_alms_request.json b/church/finances/doctype/alms_request/alms_request.json similarity index 93% rename from church/church_finances/doctype/church_alms_request/church_alms_request.json rename to church/finances/doctype/alms_request/alms_request.json index 67840c4..f0876d5 100644 --- a/church/church_finances/doctype/church_alms_request/church_alms_request.json +++ b/church/finances/doctype/alms_request/alms_request.json @@ -76,15 +76,15 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Expense Type", - "options": "Church Expense Type" + "options": "Expense Type" }, { - "default": "Church Person", + "default": "Person", "description": "The type of entity for which alms are being requested.", "fieldname": "recipient_type", "fieldtype": "Link", "label": "Recipient Type", - "link_filters": "[[\"DocType\",\"name\",\"in\",[\"Church Person\",\"Church Family\"]]]", + "link_filters": "[[\"DocType\",\"name\",\"in\",[\"Person\",\"Family\"]]]", "options": "DocType" }, { @@ -94,7 +94,7 @@ "in_filter": 1, "in_preview": 1, "label": "Requestor", - "options": "Church Person", + "options": "Person", "reqd": 1 } ], @@ -103,8 +103,8 @@ "links": [], "modified": "2026-02-20 00:03:30.229450", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Alms Request", + "module": "Finances", + "name": "Alms Request", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_finances/doctype/church_alms_request/church_alms_request.py b/church/finances/doctype/alms_request/alms_request.py similarity index 72% rename from church/church_finances/doctype/church_alms_request/church_alms_request.py rename to church/finances/doctype/alms_request/alms_request.py index 81e04ba..ea7a0f9 100644 --- a/church/church_finances/doctype/church_alms_request/church_alms_request.py +++ b/church/finances/doctype/alms_request/alms_request.py @@ -5,23 +5,23 @@ import frappe from frappe.model.document import Document -class ChurchAlmsRequest(Document): +class AlmsRequest(Document): pass @frappe.whitelist() def create_expense(alms_request_name): - """Create a Church Expense from the given Alms Request.""" - alms = frappe.get_doc("Church Alms Request", alms_request_name) + """Create a Expense from the given Alms Request.""" + alms = frappe.get_doc("Alms Request", alms_request_name) # Make sure an expense type and amount are provided if not alms.amount: frappe.throw("⚠️ An amount is required for an expense to be created.") if not alms.expense_type: frappe.throw("⚠️ An expense type is required for an expense to be created.") - expense = frappe.new_doc("Church Expense") + expense = frappe.new_doc("Expense") expense.amount = alms.amount - expense.notes = f"Church Alms Request: {alms.name}" - expense.type = frappe.db.get_value("Church Expense Type", alms.expense_type, "type") + expense.notes = f"Alms Request: {alms.name}" + expense.type = frappe.db.get_value("Expense Type", alms.expense_type, "type") expense.date = frappe.utils.now() expense.insert(ignore_permissions=True) frappe.msgprint(f"✅ {expense.type} expense created.") diff --git a/church/church_ministries/doctype/church_event/test_church_event.py b/church/finances/doctype/alms_request/test_alms_request.py similarity index 77% rename from church/church_ministries/doctype/church_event/test_church_event.py rename to church/finances/doctype/alms_request/test_alms_request.py index d8ed348..b0d6096 100644 --- a/church/church_ministries/doctype/church_event/test_church_event.py +++ b/church/finances/doctype/alms_request/test_alms_request.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchEvent(FrappeTestCase): +class TestAlmsRequest(FrappeTestCase): pass diff --git a/church/church_finances/doctype/church_collection/__init__.py b/church/finances/doctype/collection/__init__.py similarity index 100% rename from church/church_finances/doctype/church_collection/__init__.py rename to church/finances/doctype/collection/__init__.py diff --git a/church/church_finances/doctype/church_collection/church_collection.js b/church/finances/doctype/collection/collection.js similarity index 83% rename from church/church_finances/doctype/church_collection/church_collection.js rename to church/finances/doctype/collection/collection.js index ba53f76..60f280d 100644 --- a/church/church_finances/doctype/church_collection/church_collection.js +++ b/church/finances/doctype/collection/collection.js @@ -1,8 +1,8 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -// Add button to goto `Church Collection Bank Reconciliation` report -frappe.ui.form.on("Church Collection", { +// Add button to goto `Collection Bank Reconciliation` report +frappe.ui.form.on("Collection", { refresh(frm) { // Add 'Bank Reconciliation Report' button frm.add_custom_button(__('Bank Reconciliation Report'), function () { @@ -11,7 +11,7 @@ frappe.ui.form.on("Church Collection", { return; }; frm.refresh_field('date'); - frappe.set_route("query-report", "Church Collection Bank Reconciliation", { + frappe.set_route("query-report", "Collection Bank Reconciliation", { "parent_filter": frm.doc.date }); frappe.query_report.load(); @@ -20,13 +20,13 @@ frappe.ui.form.on("Church Collection", { }); // Keep Collection `total_amount` up to date when amounts are changed/added -frappe.ui.form.on("Church Donation", "amount", function(frm, cdt, cdn) { +frappe.ui.form.on("Donation", "amount", function(frm, cdt, cdn) { update_collection_total(frm); update_fund_totals(frm); }); // Keep Collection `total_amount` up to date when rows are removed from grid -frappe.ui.form.on("Church Donation", { +frappe.ui.form.on("Donation", { donations_remove: function(frm) { update_collection_total(frm); update_fund_totals(frm); @@ -34,7 +34,7 @@ frappe.ui.form.on("Church Donation", { }); // Also update when fund field changes -frappe.ui.form.on("Church Donation", "fund", function(frm, cdt, cdn) { +frappe.ui.form.on("Donation", "fund", function(frm, cdt, cdn) { update_fund_totals(frm); }); diff --git a/church/church_finances/doctype/church_collection/church_collection.json b/church/finances/doctype/collection/collection.json similarity index 86% rename from church/church_finances/doctype/church_collection/church_collection.json rename to church/finances/doctype/collection/collection.json index 2968b45..da6e260 100644 --- a/church/church_finances/doctype/church_collection/church_collection.json +++ b/church/finances/doctype/collection/collection.json @@ -3,7 +3,7 @@ "allow_rename": 1, "autoname": "format:{date}", "creation": "2025-09-02 00:47:02.825073", - "description": "A specific collection of `Church Donation`s that are generally from `Church Person`s and associated with a specific `Church Event`s.", + "description": "A specific collection of `Donation`s that are generally from `Person`s and associated with a specific `Function`s.", "doctype": "DocType", "documentation": "/app/manual%3A-finances", "engine": "InnoDB", @@ -20,14 +20,14 @@ ], "fields": [ { - "description": "The `Church Event` associated with this collection.", + "description": "The `Function` associated with this collection.", "fieldname": "event", "fieldtype": "Link", "in_list_view": 1, "in_preview": 1, "in_standard_filter": 1, "label": "Event", - "options": "Church Event", + "options": "Function", "search_index": 1 }, { @@ -48,7 +48,7 @@ "fieldname": "donations", "fieldtype": "Table", "label": "Donations", - "options": "Church Donation", + "options": "Donation", "reqd": 1 }, { @@ -67,7 +67,7 @@ "fieldname": "fund_totals", "fieldtype": "Table", "label": "Fund Totals", - "options": "Church Collection Fund Total", + "options": "Collection Fund Total", "read_only": 1 }, { @@ -81,7 +81,7 @@ "fieldtype": "Link", "label": "Amended From", "no_copy": 1, - "options": "Church Collection", + "options": "Collection", "print_hide": 1, "read_only": 1, "search_index": 1 @@ -93,8 +93,8 @@ "links": [], "modified": "2025-11-15 01:34:36.895717", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Collection", + "module": "Finances", + "name": "Collection", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_finances/doctype/church_collection/church_collection.py b/church/finances/doctype/collection/collection.py similarity index 78% rename from church/church_finances/doctype/church_collection/church_collection.py rename to church/finances/doctype/collection/collection.py index 35891dd..799a5da 100644 --- a/church/church_finances/doctype/church_collection/church_collection.py +++ b/church/finances/doctype/collection/collection.py @@ -5,14 +5,14 @@ import frappe from frappe.model.document import Document -class ChurchCollection(Document): +class Collection(Document): def on_submit(self): - self.update_church_funds(reverse=False) + self.update_funds(reverse=False) def on_cancel(self): - self.update_church_funds(reverse=True) + self.update_funds(reverse=True) - def update_church_funds(self, reverse=False): + def update_funds(self, reverse=False): fund_data = {} for donation in self.donations: if donation.fund and donation.amount: @@ -22,13 +22,13 @@ class ChurchCollection(Document): messages = [] for fund_name, fund_total in fund_data.items(): - fund_doc = frappe.get_doc("Church Fund", fund_name) + fund_doc = frappe.get_doc("Fund", fund_name) if reverse: fund_doc.transactions = [ txn for txn in fund_doc.transactions - if not (txn.source_type == "Church Collection" and txn.source == self.name) + if not (txn.source_type == "Collection" and txn.source == self.name) ] fund_doc.balance = (fund_doc.balance or 0) - fund_total fund_doc.save(ignore_permissions=True) @@ -38,7 +38,7 @@ class ChurchCollection(Document): "transactions", { "amount": fund_total, - "source_type": "Church Collection", + "source_type": "Collection", "source": self.name, "date": frappe.utils.now(), }, diff --git a/church/church_people/doctype/church_role/test_church_role.py b/church/finances/doctype/collection/test_collection.py similarity index 78% rename from church/church_people/doctype/church_role/test_church_role.py rename to church/finances/doctype/collection/test_collection.py index 0d1e5d1..07de838 100644 --- a/church/church_people/doctype/church_role/test_church_role.py +++ b/church/finances/doctype/collection/test_collection.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchRole(FrappeTestCase): +class TestCollection(FrappeTestCase): pass diff --git a/church/church_finances/doctype/church_collection_fund_total/__init__.py b/church/finances/doctype/collection_fund_total/__init__.py similarity index 100% rename from church/church_finances/doctype/church_collection_fund_total/__init__.py rename to church/finances/doctype/collection_fund_total/__init__.py diff --git a/church/church_finances/doctype/church_collection_fund_total/church_collection_fund_total.json b/church/finances/doctype/collection_fund_total/collection_fund_total.json similarity index 83% rename from church/church_finances/doctype/church_collection_fund_total/church_collection_fund_total.json rename to church/finances/doctype/collection_fund_total/collection_fund_total.json index be3fc83..67951dc 100644 --- a/church/church_finances/doctype/church_collection_fund_total/church_collection_fund_total.json +++ b/church/finances/doctype/collection_fund_total/collection_fund_total.json @@ -2,7 +2,7 @@ "actions": [], "allow_rename": 1, "creation": "2025-10-01 22:18:39.386224", - "description": "Total donations for specific `Church Fund`s", + "description": "Total donations for specific `Fund`s", "doctype": "DocType", "documentation": "/app/manual%3A-finances", "engine": "InnoDB", @@ -18,7 +18,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Fund", - "options": "Church Fund", + "options": "Fund", "reqd": 1 }, { @@ -37,8 +37,8 @@ "links": [], "modified": "2025-11-13 23:57:45.669918", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Collection Fund Total", + "module": "Finances", + "name": "Collection Fund Total", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/finances/doctype/collection_fund_total/collection_fund_total.py b/church/finances/doctype/collection_fund_total/collection_fund_total.py new file mode 100644 index 0000000..b7bb3bc --- /dev/null +++ b/church/finances/doctype/collection_fund_total/collection_fund_total.py @@ -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 CollectionFundTotal(Document): + pass diff --git a/church/church_finances/doctype/church_donation/__init__.py b/church/finances/doctype/donation/__init__.py similarity index 100% rename from church/church_finances/doctype/church_donation/__init__.py rename to church/finances/doctype/donation/__init__.py diff --git a/church/church_finances/doctype/church_donation/church_donation.json b/church/finances/doctype/donation/donation.json similarity index 88% rename from church/church_finances/doctype/church_donation/church_donation.json rename to church/finances/doctype/donation/donation.json index b1b2559..547416e 100644 --- a/church/church_finances/doctype/church_donation/church_donation.json +++ b/church/finances/doctype/donation/donation.json @@ -2,7 +2,7 @@ "actions": [], "allow_rename": 1, "creation": "2025-09-02 00:57:15.831405", - "description": "A donation made to the church (Generally by `Church Person`s).", + "description": "A donation made to the church (Generally by `Person`s).", "doctype": "DocType", "documentation": "/app/manual%3A-finances", "editable_grid": 1, @@ -24,7 +24,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Payment Type", - "options": "Church Payment Type", + "options": "Payment Type", "reqd": 1 }, { @@ -35,7 +35,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Fund", - "options": "Church Fund", + "options": "Fund", "reqd": 1 }, { @@ -47,7 +47,7 @@ "in_standard_filter": 1, "label": "Person", "mandatory_depends_on": "eval:doc.payment_type==\"Check\"", - "options": "Church Person" + "options": "Person" }, { "fieldname": "notes", @@ -79,8 +79,8 @@ "links": [], "modified": "2025-11-13 23:57:46.966670", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Donation", + "module": "Finances", + "name": "Donation", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/church_finances/doctype/church_event/church_event.py b/church/finances/doctype/donation/donation.py similarity index 85% rename from church/church_finances/doctype/church_event/church_event.py rename to church/finances/doctype/donation/donation.py index 7f3fc66..a5fe7dd 100644 --- a/church/church_finances/doctype/church_event/church_event.py +++ b/church/finances/doctype/donation/donation.py @@ -5,5 +5,5 @@ from frappe.model.document import Document -class ChurchEvent(Document): +class Donation(Document): pass diff --git a/church/church_finances/doctype/church_event/__init__.py b/church/finances/doctype/event_attendance/__init__.py similarity index 100% rename from church/church_finances/doctype/church_event/__init__.py rename to church/finances/doctype/event_attendance/__init__.py diff --git a/church/church_finances/doctype/church_event_attendance/church_event_attendance.json b/church/finances/doctype/event_attendance/event_attendance.json similarity index 80% rename from church/church_finances/doctype/church_event_attendance/church_event_attendance.json rename to church/finances/doctype/event_attendance/event_attendance.json index 0a89d73..15e7b3b 100644 --- a/church/church_finances/doctype/church_event_attendance/church_event_attendance.json +++ b/church/finances/doctype/event_attendance/event_attendance.json @@ -2,7 +2,7 @@ "actions": [], "allow_rename": 1, "creation": "2025-09-01 00:29:32.386192", - "description": "'Church Person's who attended a 'Church Event'", + "description": "'Person's who attended a 'Function'", "doctype": "DocType", "editable_grid": 1, "engine": "InnoDB", @@ -18,7 +18,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Person", - "options": "Church Person", + "options": "Person", "reqd": 1 }, { @@ -28,7 +28,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Attendance Type", - "options": "Church Event Attendance Type", + "options": "Event Attendance Type", "reqd": 1 } ], @@ -38,8 +38,8 @@ "links": [], "modified": "2025-09-21 22:09:27.471664", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event Attendance", + "module": "Ministries", + "name": "Event Attendance", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/church_finances/doctype/church_event_type/church_event_type.py b/church/finances/doctype/event_attendance/event_attendance.py similarity index 83% rename from church/church_finances/doctype/church_event_type/church_event_type.py rename to church/finances/doctype/event_attendance/event_attendance.py index 8ffcd74..97abe91 100644 --- a/church/church_finances/doctype/church_event_type/church_event_type.py +++ b/church/finances/doctype/event_attendance/event_attendance.py @@ -5,5 +5,5 @@ from frappe.model.document import Document -class ChurchEventType(Document): +class EventAttendance(Document): pass diff --git a/church/church_finances/doctype/church_event_attendance/__init__.py b/church/finances/doctype/event_attendance_type/__init__.py similarity index 100% rename from church/church_finances/doctype/church_event_attendance/__init__.py rename to church/finances/doctype/event_attendance_type/__init__.py diff --git a/church/finances/doctype/event_attendance_type/event_attendance_type.js b/church/finances/doctype/event_attendance_type/event_attendance_type.js new file mode 100644 index 0000000..024a435 --- /dev/null +++ b/church/finances/doctype/event_attendance_type/event_attendance_type.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Event Attendance Type", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.json b/church/finances/doctype/event_attendance_type/event_attendance_type.json similarity index 84% rename from church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.json rename to church/finances/doctype/event_attendance_type/event_attendance_type.json index 40c1823..9f0f1a5 100644 --- a/church/church_finances/doctype/church_event_attendance_type/church_event_attendance_type.json +++ b/church/finances/doctype/event_attendance_type/event_attendance_type.json @@ -2,7 +2,7 @@ "actions": [], "autoname": "format:{type}", "creation": "2025-09-01 00:33:34.102307", - "description": "Type of `Church Event Attendance` (i.e. Confirmed, Assumed, Unknown, Absent etc.)", + "description": "Type of `Event Attendance` (i.e. Confirmed, Assumed, Unknown, Absent etc.)", "doctype": "DocType", "engine": "InnoDB", "field_order": [ @@ -31,15 +31,15 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Event", + "link_doctype": "Function", "link_fieldname": "attendance_type", "table_fieldname": "attendance" } ], "modified": "2025-09-21 22:09:26.904715", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event Attendance Type", + "module": "Ministries", + "name": "Event Attendance Type", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/finances/doctype/event_attendance_type/event_attendance_type.py b/church/finances/doctype/event_attendance_type/event_attendance_type.py new file mode 100644 index 0000000..fddb903 --- /dev/null +++ b/church/finances/doctype/event_attendance_type/event_attendance_type.py @@ -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 EventAttendanceType(Document): + pass diff --git a/church/finances/doctype/event_attendance_type/test_event_attendance_type.py b/church/finances/doctype/event_attendance_type/test_event_attendance_type.py new file mode 100644 index 0000000..e54a256 --- /dev/null +++ b/church/finances/doctype/event_attendance_type/test_event_attendance_type.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestEventAttendanceType(FrappeTestCase): + pass diff --git a/church/church_finances/doctype/church_event_attendance_type/__init__.py b/church/finances/doctype/event_type/__init__.py similarity index 100% rename from church/church_finances/doctype/church_event_attendance_type/__init__.py rename to church/finances/doctype/event_type/__init__.py diff --git a/church/church_ministries/doctype/church_song/church_song.js b/church/finances/doctype/event_type/event_type.js similarity index 78% rename from church/church_ministries/doctype/church_song/church_song.js rename to church/finances/doctype/event_type/event_type.js index 6b12c9f..2e0cfa5 100644 --- a/church/church_ministries/doctype/church_song/church_song.js +++ b/church/finances/doctype/event_type/event_type.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -// frappe.ui.form.on("Church Song", { +// frappe.ui.form.on("Event Type", { // refresh(frm) { // }, diff --git a/church/church_finances/doctype/church_event_type/church_event_type.json b/church/finances/doctype/event_type/event_type.json similarity index 92% rename from church/church_finances/doctype/church_event_type/church_event_type.json rename to church/finances/doctype/event_type/event_type.json index ae6e796..41bede9 100644 --- a/church/church_finances/doctype/church_event_type/church_event_type.json +++ b/church/finances/doctype/event_type/event_type.json @@ -32,14 +32,14 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Event", + "link_doctype": "Function", "link_fieldname": "type" } ], "modified": "2025-09-21 22:09:26.615442", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event Type", + "module": "Ministries", + "name": "Event Type", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_people/doctype/church_letter/church_letter.py b/church/finances/doctype/event_type/event_type.py similarity index 84% rename from church/church_people/doctype/church_letter/church_letter.py rename to church/finances/doctype/event_type/event_type.py index ac74167..80eb6f0 100644 --- a/church/church_people/doctype/church_letter/church_letter.py +++ b/church/finances/doctype/event_type/event_type.py @@ -5,5 +5,5 @@ from frappe.model.document import Document -class ChurchLetter(Document): +class EventType(Document): pass diff --git a/church/church_finances/doctype/church_fund/test_church_fund.py b/church/finances/doctype/event_type/test_event_type.py similarity index 78% rename from church/church_finances/doctype/church_fund/test_church_fund.py rename to church/finances/doctype/event_type/test_event_type.py index 9565ee3..6c6b5d4 100644 --- a/church/church_finances/doctype/church_fund/test_church_fund.py +++ b/church/finances/doctype/event_type/test_event_type.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchFund(FrappeTestCase): +class TestEventType(FrappeTestCase): pass diff --git a/church/church_finances/doctype/church_event_type/__init__.py b/church/finances/doctype/expense/__init__.py similarity index 100% rename from church/church_finances/doctype/church_event_type/__init__.py rename to church/finances/doctype/expense/__init__.py diff --git a/church/church_prayers/doctype/church_prayer/church_prayer.js b/church/finances/doctype/expense/expense.js similarity index 77% rename from church/church_prayers/doctype/church_prayer/church_prayer.js rename to church/finances/doctype/expense/expense.js index 10c0071..7fa6c7d 100644 --- a/church/church_prayers/doctype/church_prayer/church_prayer.js +++ b/church/finances/doctype/expense/expense.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -// frappe.ui.form.on("Church Prayer", { +// frappe.ui.form.on("Expense", { // refresh(frm) { // }, diff --git a/church/church_finances/doctype/church_expense/church_expense.json b/church/finances/doctype/expense/expense.json similarity index 91% rename from church/church_finances/doctype/church_expense/church_expense.json rename to church/finances/doctype/expense/expense.json index 3969586..d3613bc 100644 --- a/church/church_finances/doctype/church_expense/church_expense.json +++ b/church/finances/doctype/expense/expense.json @@ -3,7 +3,7 @@ "allow_rename": 1, "autoname": "format:{type} - {date}", "creation": "2025-10-09 02:25:29.401455", - "description": "A financial transaction that reduces the balance of a `Church Fund`", + "description": "A financial transaction that reduces the balance of a `Fund`", "doctype": "DocType", "documentation": "/app/manual%3A-finances", "engine": "InnoDB", @@ -31,7 +31,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Type", - "options": "Church Expense Type", + "options": "Expense Type", "reqd": 1, "search_index": 1 }, @@ -47,7 +47,7 @@ "fieldtype": "Link", "label": "Amended From", "no_copy": 1, - "options": "Church Expense", + "options": "Expense", "print_hide": 1, "read_only": 1, "search_index": 1 @@ -65,14 +65,14 @@ "is_submittable": 1, "links": [ { - "link_doctype": "Church Fund", + "link_doctype": "Fund", "link_fieldname": "source" } ], "modified": "2025-11-15 01:36:35.919702", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Expense", + "module": "Finances", + "name": "Expense", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_finances/doctype/church_expense/church_expense.py b/church/finances/doctype/expense/expense.py similarity index 55% rename from church/church_finances/doctype/church_expense/church_expense.py rename to church/finances/doctype/expense/expense.py index 674a1ca..8a7a273 100644 --- a/church/church_finances/doctype/church_expense/church_expense.py +++ b/church/finances/doctype/expense/expense.py @@ -6,49 +6,49 @@ from frappe.model.document import Document from frappe.utils import get_link_to_form -class ChurchExpense(Document): +class Expense(Document): def before_delete(self): # This probably should never get called since frappe prevents the deletion # of submitted documents by default, but just to be sure we'll provide our own warning. # Prevent deletion if the document is not cancelled if not self.docstatus == 2: # 2 is Cancelled - frappe.throw("❌ You must cancel this Church Expense before deleting it.") + frappe.throw("❌ You must cancel this Expense before deleting it.") def on_cancel(self): - fund_name = frappe.db.get_value("Church Expense Type", self.type, "fund") + fund_name = frappe.db.get_value("Expense Type", self.type, "fund") if not fund_name: - frappe.throw("⚠️ No fund linked to the selected Church Expense Type.") + frappe.throw("⚠️ No fund linked to the selected Expense Type.") - fund = frappe.get_doc("Church Fund", fund_name) + fund = frappe.get_doc("Fund", fund_name) # Remove transaction that matches this expense updated_transactions = [] for transaction in fund.transactions: - if not (transaction.source_type == "Church Expense" and transaction.source == self.name): + if not (transaction.source_type == "Expense" and transaction.source == self.name): updated_transactions.append(transaction) else: frappe.msgprint( - f"💰 Associated {get_link_to_form('Church Fund', fund_name)} fund has been increased by ${-transaction.amount}" + f"💰 Associated {get_link_to_form('Fund', fund_name)} fund has been increased by ${-transaction.amount}" ) fund.transactions = updated_transactions fund.save(ignore_permissions=True) fund.reload() def on_submit(self): - # Get related Church Fund via Expense Type - fund_name = frappe.db.get_value("Church Expense Type", self.type, "fund") + # Get related Fund via Expense Type + fund_name = frappe.db.get_value("Expense Type", self.type, "fund") if not fund_name: - frappe.throw("⚠️ No fund linked to the selected Church Expense Type.") + frappe.throw("⚠️ No fund linked to the selected Expense Type.") - fund = frappe.get_doc("Church Fund", fund_name) + fund = frappe.get_doc("Fund", fund_name) # Add new row to fund's transactions table fund.append( "transactions", { "amount": -self.amount, - "source_type": "Church Expense", + "source_type": "Expense", "source": self.name, "date": self.date, "notes": self.notes, @@ -57,5 +57,5 @@ class ChurchExpense(Document): fund.save(ignore_permissions=True) fund.reload() frappe.msgprint( - f"💸 Associated {get_link_to_form('Church Fund', fund_name)} fund has been reduced by ${self.amount}" + f"💸 Associated {get_link_to_form('Fund', fund_name)} fund has been reduced by ${self.amount}" ) diff --git a/church/church_ministries/doctype/church_song/test_church_song.py b/church/finances/doctype/expense/test_expense.py similarity index 78% rename from church/church_ministries/doctype/church_song/test_church_song.py rename to church/finances/doctype/expense/test_expense.py index 4dcb946..ca3ffe0 100644 --- a/church/church_ministries/doctype/church_song/test_church_song.py +++ b/church/finances/doctype/expense/test_expense.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchSong(FrappeTestCase): +class TestExpense(FrappeTestCase): pass diff --git a/church/church_finances/doctype/church_expense/__init__.py b/church/finances/doctype/expense_type/__init__.py similarity index 100% rename from church/church_finances/doctype/church_expense/__init__.py rename to church/finances/doctype/expense_type/__init__.py diff --git a/church/church_finances/doctype/church_expense/church_expense.js b/church/finances/doctype/expense_type/expense_type.js similarity index 76% rename from church/church_finances/doctype/church_expense/church_expense.js rename to church/finances/doctype/expense_type/expense_type.js index fa9c081..5b11238 100644 --- a/church/church_finances/doctype/church_expense/church_expense.js +++ b/church/finances/doctype/expense_type/expense_type.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -// frappe.ui.form.on("Church Expense", { +// frappe.ui.form.on("Expense Type", { // refresh(frm) { // }, diff --git a/church/church_finances/doctype/church_expense_type/church_expense_type.json b/church/finances/doctype/expense_type/expense_type.json similarity index 86% rename from church/church_finances/doctype/church_expense_type/church_expense_type.json rename to church/finances/doctype/expense_type/expense_type.json index 223d691..0b5b569 100644 --- a/church/church_finances/doctype/church_expense_type/church_expense_type.json +++ b/church/finances/doctype/expense_type/expense_type.json @@ -3,13 +3,13 @@ "allow_rename": 1, "autoname": "format:{type}", "creation": "2025-10-09 02:26:38.910872", - "description": "A type of `Church Expense` (a.k.a. Categories)", + "description": "A type of `Expense` (a.k.a. Categories)", "doctype": "DocType", "documentation": "/app/manual%3A-finances", "engine": "InnoDB", "field_order": [ "type", - "parent_church_expense_type", + "parent_expense_type", "is_group", "column_break_spcy", "fund", @@ -53,10 +53,10 @@ "fieldtype": "Link", "hidden": 1, "label": "Old Parent", - "options": "Church Expense Type" + "options": "Expense Type" }, { - "fieldname": "parent_church_expense_type", + "fieldname": "parent_expense_type", "fieldtype": "Link", "ignore_user_permissions": 1, "in_filter": 1, @@ -64,7 +64,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Parent Expense Type", - "options": "Church Expense Type" + "options": "Expense Type" }, { "fieldname": "type", @@ -84,7 +84,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Fund", - "options": "Church Fund", + "options": "Fund", "reqd": 1 }, { @@ -102,16 +102,16 @@ "is_tree": 1, "links": [ { - "link_doctype": "Church Expense", + "link_doctype": "Expense", "link_fieldname": "type" } ], "modified": "2025-11-15 22:52:18.102093", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Expense Type", + "module": "Finances", + "name": "Expense Type", "naming_rule": "Expression", - "nsm_parent_field": "parent_church_expense_type", + "nsm_parent_field": "parent_expense_type", "owner": "Administrator", "permissions": [ { diff --git a/church/church_finances/doctype/church_expense_type/church_expense_type.py b/church/finances/doctype/expense_type/expense_type.py similarity index 82% rename from church/church_finances/doctype/church_expense_type/church_expense_type.py rename to church/finances/doctype/expense_type/expense_type.py index 4f1dc93..76dcf40 100644 --- a/church/church_finances/doctype/church_expense_type/church_expense_type.py +++ b/church/finances/doctype/expense_type/expense_type.py @@ -5,5 +5,5 @@ from frappe.utils.nestedset import NestedSet -class ChurchExpenseType(NestedSet): +class ExpenseType(NestedSet): pass diff --git a/church/church_finances/doctype/church_event/test_church_event.py b/church/finances/doctype/expense_type/test_expense_type.py similarity index 77% rename from church/church_finances/doctype/church_event/test_church_event.py rename to church/finances/doctype/expense_type/test_expense_type.py index d8ed348..3d93bb3 100644 --- a/church/church_finances/doctype/church_event/test_church_event.py +++ b/church/finances/doctype/expense_type/test_expense_type.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchEvent(FrappeTestCase): +class TestExpenseType(FrappeTestCase): pass diff --git a/church/church_finances/doctype/church_expense_type/__init__.py b/church/finances/doctype/financial_transaction/__init__.py similarity index 100% rename from church/church_finances/doctype/church_expense_type/__init__.py rename to church/finances/doctype/financial_transaction/__init__.py diff --git a/church/church_finances/doctype/church_financial_transaction/church_financial_transaction.json b/church/finances/doctype/financial_transaction/financial_transaction.json similarity index 95% rename from church/church_finances/doctype/church_financial_transaction/church_financial_transaction.json rename to church/finances/doctype/financial_transaction/financial_transaction.json index b91b994..6181498 100644 --- a/church/church_finances/doctype/church_financial_transaction/church_financial_transaction.json +++ b/church/finances/doctype/financial_transaction/financial_transaction.json @@ -68,8 +68,8 @@ "links": [], "modified": "2025-11-13 23:57:45.821416", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Financial Transaction", + "module": "Finances", + "name": "Financial Transaction", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/finances/doctype/financial_transaction/financial_transaction.py b/church/finances/doctype/financial_transaction/financial_transaction.py new file mode 100644 index 0000000..546db10 --- /dev/null +++ b/church/finances/doctype/financial_transaction/financial_transaction.py @@ -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 FinancialTransaction(Document): + pass diff --git a/church/church_finances/doctype/church_financial_transaction/__init__.py b/church/finances/doctype/function/__init__.py similarity index 100% rename from church/church_finances/doctype/church_financial_transaction/__init__.py rename to church/finances/doctype/function/__init__.py diff --git a/church/finances/doctype/function/function.js b/church/finances/doctype/function/function.js new file mode 100644 index 0000000..eae3b40 --- /dev/null +++ b/church/finances/doctype/function/function.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Function", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_finances/doctype/church_event/church_event.json b/church/finances/doctype/function/function.json similarity index 93% rename from church/church_finances/doctype/church_event/church_event.json rename to church/finances/doctype/function/function.json index 90d25e7..d0122f9 100644 --- a/church/church_finances/doctype/church_event/church_event.json +++ b/church/finances/doctype/function/function.json @@ -87,7 +87,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Type", - "options": "Church Event Type", + "options": "Event Type", "reqd": 1 }, { @@ -106,11 +106,11 @@ "fieldtype": "Section Break" }, { - "description": "'Church Person's who attended this event.", + "description": "'Person's who attended this event.", "fieldname": "attendance", "fieldtype": "Table", "label": "Attendance", - "options": "Church Event Attendance" + "options": "Event Attendance" } ], "grid_page_length": 50, @@ -118,8 +118,8 @@ "links": [], "modified": "2025-09-21 22:09:27.159698", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Event", + "module": "Finances", + "name": "Function", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/finances/doctype/function/function.py b/church/finances/doctype/function/function.py new file mode 100644 index 0000000..d122ca0 --- /dev/null +++ b/church/finances/doctype/function/function.py @@ -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 Function(Document): + pass diff --git a/church/finances/doctype/function/test_function.py b/church/finances/doctype/function/test_function.py new file mode 100644 index 0000000..0139a60 --- /dev/null +++ b/church/finances/doctype/function/test_function.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestFunction(FrappeTestCase): + pass diff --git a/church/church_finances/doctype/church_fund/__init__.py b/church/finances/doctype/fund/__init__.py similarity index 100% rename from church/church_finances/doctype/church_fund/__init__.py rename to church/finances/doctype/fund/__init__.py diff --git a/church/church_finances/doctype/church_fund/church_fund.js b/church/finances/doctype/fund/fund.js similarity index 92% rename from church/church_finances/doctype/church_fund/church_fund.js rename to church/finances/doctype/fund/fund.js index 8463512..f2cbff6 100644 --- a/church/church_finances/doctype/church_fund/church_fund.js +++ b/church/finances/doctype/fund/fund.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -frappe.ui.form.on('Church Fund', { +frappe.ui.form.on('Fund', { onload: function(frm) { sort_transactions_by_date(frm); } diff --git a/church/church_finances/doctype/church_fund/church_fund.json b/church/finances/doctype/fund/fund.json similarity index 94% rename from church/church_finances/doctype/church_fund/church_fund.json rename to church/finances/doctype/fund/fund.json index 2edb547..cb3bae9 100644 --- a/church/church_finances/doctype/church_fund/church_fund.json +++ b/church/finances/doctype/fund/fund.json @@ -64,22 +64,22 @@ "fieldname": "transactions", "fieldtype": "Table", "label": "Transactions", - "options": "Church Financial Transaction" + "options": "Financial Transaction" } ], "grid_page_length": 50, "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Collection", + "link_doctype": "Collection", "link_fieldname": "fund", "table_fieldname": "donations" } ], "modified": "2025-11-15 22:52:49.198523", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Fund", + "module": "Finances", + "name": "Fund", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_finances/doctype/church_fund/church_fund.py b/church/finances/doctype/fund/fund.py similarity index 95% rename from church/church_finances/doctype/church_fund/church_fund.py rename to church/finances/doctype/fund/fund.py index e721fda..04f7e61 100644 --- a/church/church_finances/doctype/church_fund/church_fund.py +++ b/church/finances/doctype/fund/fund.py @@ -5,7 +5,7 @@ from frappe.model.document import Document -class ChurchFund(Document): +class Fund(Document): def before_save(self): # Ensure balance is always current before saving self.recalculate_balance() diff --git a/church/finances/doctype/fund/test_fund.py b/church/finances/doctype/fund/test_fund.py new file mode 100644 index 0000000..b0db8e6 --- /dev/null +++ b/church/finances/doctype/fund/test_fund.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestFund(FrappeTestCase): + pass diff --git a/church/church_finances/doctype/church_fund_transfer/__init__.py b/church/finances/doctype/fund_transfer/__init__.py similarity index 100% rename from church/church_finances/doctype/church_fund_transfer/__init__.py rename to church/finances/doctype/fund_transfer/__init__.py diff --git a/church/church_finances/doctype/church_fund_transfer/church_fund_transfer.js b/church/finances/doctype/fund_transfer/fund_transfer.js similarity index 92% rename from church/church_finances/doctype/church_fund_transfer/church_fund_transfer.js rename to church/finances/doctype/fund_transfer/fund_transfer.js index 929a676..2f09614 100644 --- a/church/church_finances/doctype/church_fund_transfer/church_fund_transfer.js +++ b/church/finances/doctype/fund_transfer/fund_transfer.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -frappe.ui.form.on('Church Fund Transfer', { +frappe.ui.form.on('Fund Transfer', { from_fund: function(frm) { // Dynamically filter 'to_fund' to exclude the selected 'from_fund' frm.set_query('to_fund', () => ({ diff --git a/church/church_finances/doctype/church_fund_transfer/church_fund_transfer.json b/church/finances/doctype/fund_transfer/fund_transfer.json similarity index 91% rename from church/church_finances/doctype/church_fund_transfer/church_fund_transfer.json rename to church/finances/doctype/fund_transfer/fund_transfer.json index a6f0b91..d119b42 100644 --- a/church/church_finances/doctype/church_fund_transfer/church_fund_transfer.json +++ b/church/finances/doctype/fund_transfer/fund_transfer.json @@ -3,7 +3,7 @@ "allow_rename": 1, "autoname": "format:{from_fund} to {to_fund} - {date}", "creation": "2025-10-09 23:26:05.829776", - "description": "A financial currency transfer between two `Church Fund`s", + "description": "A financial currency transfer between two `Fund`s", "doctype": "DocType", "documentation": "/app/manual%3A-finances", "engine": "InnoDB", @@ -32,7 +32,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "From Fund", - "options": "Church Fund", + "options": "Fund", "reqd": 1 }, { @@ -44,7 +44,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "To Fund", - "options": "Church Fund", + "options": "Fund", "reqd": 1 }, { @@ -68,7 +68,7 @@ "fieldtype": "Link", "label": "Amended From", "no_copy": 1, - "options": "Church Fund Transfer", + "options": "Fund Transfer", "print_hide": 1, "read_only": 1, "search_index": 1 @@ -97,8 +97,8 @@ "links": [], "modified": "2025-11-13 23:57:45.954418", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Fund Transfer", + "module": "Finances", + "name": "Fund Transfer", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_finances/doctype/church_fund_transfer/church_fund_transfer.py b/church/finances/doctype/fund_transfer/fund_transfer.py similarity index 73% rename from church/church_finances/doctype/church_fund_transfer/church_fund_transfer.py rename to church/finances/doctype/fund_transfer/fund_transfer.py index fe59a21..bfc5b3b 100644 --- a/church/church_finances/doctype/church_fund_transfer/church_fund_transfer.py +++ b/church/finances/doctype/fund_transfer/fund_transfer.py @@ -3,7 +3,7 @@ from frappe.model.document import Document from frappe.utils import get_link_to_form, nowdate -class ChurchFundTransfer(Document): +class FundTransfer(Document): def validate(self): if self.from_fund == self.to_fund: frappe.throw("Source and destination funds must be different.") @@ -17,8 +17,8 @@ class ChurchFundTransfer(Document): self.remove_fund_transfer_transactions() def transfer_funds(self): - from_fund = frappe.get_doc("Church Fund", self.from_fund) - to_fund = frappe.get_doc("Church Fund", self.to_fund) + from_fund = frappe.get_doc("Fund", self.from_fund) + to_fund = frappe.get_doc("Fund", self.to_fund) transfer_note = self.notes or "" from_note = f"Transfer to {self.to_fund}" @@ -32,7 +32,7 @@ class ChurchFundTransfer(Document): "transactions", { "amount": -self.amount, - "source_type": "Church Fund Transfer", + "source_type": "Fund Transfer", "source": self.name, "date": self.date or nowdate(), "notes": from_note, @@ -43,7 +43,7 @@ class ChurchFundTransfer(Document): "transactions", { "amount": self.amount, - "source_type": "Church Fund Transfer", + "source_type": "Fund Transfer", "source": self.name, "date": self.date or nowdate(), "notes": to_note, @@ -55,21 +55,21 @@ class ChurchFundTransfer(Document): frappe.msgprint( f"✅ Transferred ${self.amount} from " - f"{get_link_to_form('Church Fund', self.from_fund)} to " - f"{get_link_to_form('Church Fund', self.to_fund)}." + f"{get_link_to_form('Fund', self.from_fund)} to " + f"{get_link_to_form('Fund', self.to_fund)}." ) def remove_fund_transfer_transactions(self): # Remove matching transactions from both funds for fund_name in [self.from_fund, self.to_fund]: - fund_doc = frappe.get_doc("Church Fund", fund_name) + fund_doc = frappe.get_doc("Fund", fund_name) # Keep only transactions not from this transfer fund_doc.set( "transactions", [ tx for tx in fund_doc.transactions - if not (tx.source_type == "Church Fund Transfer" and tx.source == self.name) + if not (tx.source_type == "Fund Transfer" and tx.source == self.name) ], ) fund_doc.save(ignore_permissions=True) @@ -77,6 +77,6 @@ class ChurchFundTransfer(Document): frappe.msgprint( f"⏪ Reverted transfer of ${self.amount} from " - f"{get_link_to_form('Church Fund', self.from_fund)} to " - f"{get_link_to_form('Church Fund', self.to_fund)}." + f"{get_link_to_form('Fund', self.from_fund)} to " + f"{get_link_to_form('Fund', self.to_fund)}." ) diff --git a/church/finances/doctype/fund_transfer/test_fund_transfer.py b/church/finances/doctype/fund_transfer/test_fund_transfer.py new file mode 100644 index 0000000..95e9953 --- /dev/null +++ b/church/finances/doctype/fund_transfer/test_fund_transfer.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestFundTransfer(FrappeTestCase): + pass diff --git a/church/church_finances/doctype/church_payment_type/__init__.py b/church/finances/doctype/payment_type/__init__.py similarity index 100% rename from church/church_finances/doctype/church_payment_type/__init__.py rename to church/finances/doctype/payment_type/__init__.py diff --git a/church/finances/doctype/payment_type/payment_type.js b/church/finances/doctype/payment_type/payment_type.js new file mode 100644 index 0000000..564a3ca --- /dev/null +++ b/church/finances/doctype/payment_type/payment_type.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Payment Type", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_finances/doctype/church_payment_type/church_payment_type.json b/church/finances/doctype/payment_type/payment_type.json similarity index 87% rename from church/church_finances/doctype/church_payment_type/church_payment_type.json rename to church/finances/doctype/payment_type/payment_type.json index e4f601b..cb81c20 100644 --- a/church/church_finances/doctype/church_payment_type/church_payment_type.json +++ b/church/finances/doctype/payment_type/payment_type.json @@ -3,7 +3,7 @@ "allow_rename": 1, "autoname": "format:{type}", "creation": "2025-09-02 01:03:03.764617", - "description": "The type of payment used for `Church Donation`s (i.e. Cash, Check, etc)", + "description": "The type of payment used for `Donation`s (i.e. Cash, Check, etc)", "doctype": "DocType", "documentation": "/app/manual%3A-finances", "engine": "InnoDB", @@ -32,15 +32,15 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Collection", + "link_doctype": "Collection", "link_fieldname": "payment_type", "table_fieldname": "donations" } ], "modified": "2025-11-13 23:57:46.638425", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Payment Type", + "module": "Finances", + "name": "Payment Type", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/finances/doctype/payment_type/payment_type.py b/church/finances/doctype/payment_type/payment_type.py new file mode 100644 index 0000000..69abed0 --- /dev/null +++ b/church/finances/doctype/payment_type/payment_type.py @@ -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 PaymentType(Document): + pass diff --git a/church/finances/doctype/payment_type/test_payment_type.py b/church/finances/doctype/payment_type/test_payment_type.py new file mode 100644 index 0000000..e677fc7 --- /dev/null +++ b/church/finances/doctype/payment_type/test_payment_type.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestPaymentType(FrappeTestCase): + pass diff --git a/church/church_finances/report/__init__.py b/church/finances/report/__init__.py similarity index 100% rename from church/church_finances/report/__init__.py rename to church/finances/report/__init__.py diff --git a/church/church_finances/report/church_collection_bank_reconciliation/__init__.py b/church/finances/report/church_collection_bank_reconciliation/__init__.py similarity index 100% rename from church/church_finances/report/church_collection_bank_reconciliation/__init__.py rename to church/finances/report/church_collection_bank_reconciliation/__init__.py diff --git a/church/church_finances/report/church_collection_bank_reconciliation/church_collection_bank_reconciliation.json b/church/finances/report/church_collection_bank_reconciliation/church_collection_bank_reconciliation.json similarity index 71% rename from church/church_finances/report/church_collection_bank_reconciliation/church_collection_bank_reconciliation.json rename to church/finances/report/church_collection_bank_reconciliation/church_collection_bank_reconciliation.json index f2155c3..ba21661 100644 --- a/church/church_finances/report/church_collection_bank_reconciliation/church_collection_bank_reconciliation.json +++ b/church/finances/report/church_collection_bank_reconciliation/church_collection_bank_reconciliation.json @@ -13,7 +13,7 @@ "fieldtype": "Link", "label": "Collections", "mandatory": 1, - "options": "Church Collection", + "options": "Collection", "wildcard_filter": 0 } ], @@ -22,13 +22,13 @@ "letterhead": null, "modified": "2025-10-02 01:07:53.346443", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Collection Bank Reconciliation", + "module": "Finances", + "name": "Collection Bank Reconciliation", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT\n parent as \"Collection\", \n fund as \"Fund\", \n person as \"Person\", \n payment_type as \"Payment Type\", \n check_number as \"Check #\", \n sum(amount) as \"Amount\", \n notes as \"Notes\"\nFROM `tabChurch Donation`\nWHERE parent = %(parent_filter)s\nGROUP By check_number;", - "ref_doctype": "Church Collection", - "report_name": "Church Collection Bank Reconciliation", + "query": "SELECT\n parent as \"Collection\", \n fund as \"Fund\", \n person as \"Person\", \n payment_type as \"Payment Type\", \n check_number as \"Check #\", \n sum(amount) as \"Amount\", \n notes as \"Notes\"\nFROM `tabDonation`\nWHERE parent = %(parent_filter)s\nGROUP By check_number;", + "ref_doctype": "Collection", + "report_name": "Collection Bank Reconciliation", "report_type": "Query Report", "roles": [ { diff --git a/church/church_finances/report/church_donations/__init__.py b/church/finances/report/church_donations/__init__.py similarity index 100% rename from church/church_finances/report/church_donations/__init__.py rename to church/finances/report/church_donations/__init__.py diff --git a/church/finances/report/church_donations/church_donations.json b/church/finances/report/church_donations/church_donations.json new file mode 100644 index 0000000..7646ed2 --- /dev/null +++ b/church/finances/report/church_donations/church_donations.json @@ -0,0 +1,32 @@ +{ + "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\",\"Collection\"],[\"event\",\"Collection\"],[\"fund\",\"Donation\"],[\"person\",\"Donation\"],[\"payment_type\",\"Donation\"],[\"check_number\",\"Donation\"],[\"amount\",\"Donation\"]],\"order_by\":\"`tabCollection`.`modified` desc\",\"page_length\":20,\"column_widths\":{\"name\":120,\"event\":120,\"Donation:fund\":120,\"Donation:person\":120,\"Donation:payment_type\":120,\"Donation:check_number\":120,\"Donation:amount\":120},\"group_by\":null}", + "letterhead": null, + "modified": "2025-10-02 01:10:11.876159", + "modified_by": "Administrator", + "module": "Finances", + "name": "Donations", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Collection", + "report_name": "Donations", + "report_type": "Report Builder", + "roles": [ + { + "role": "System Manager" + }, + { + "role": "Church Manager" + } + ], + "timeout": 0 +} \ No newline at end of file diff --git a/church/church_finances/report/church_donations_by_person/__init__.py b/church/finances/report/church_donations_by_person/__init__.py similarity index 100% rename from church/church_finances/report/church_donations_by_person/__init__.py rename to church/finances/report/church_donations_by_person/__init__.py diff --git a/church/finances/report/church_donations_by_person/church_donations_by_person.json b/church/finances/report/church_donations_by_person/church_donations_by_person.json new file mode 100644 index 0000000..e8aab38 --- /dev/null +++ b/church/finances/report/church_donations_by_person/church_donations_by_person.json @@ -0,0 +1,32 @@ +{ + "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\":[[\"Collection\",\"date\",\"Timespan\",\"this year\",false]],\"fields\":[[\"person\",\"Donation\"],[\"_aggregate_column\",\"Donation\"]],\"order_by\":\"`tabCollection`.`modified` desc\",\"add_totals_row\":true,\"page_length\":20,\"column_widths\":{\"Donation:person\":120,\"_aggregate_column\":200},\"group_by\":{\"group_by\":\"`tabDonation`.`person`\",\"aggregate_function\":\"sum\",\"aggregate_on\":\"`tabDonation`.`amount`\"}}", + "letterhead": null, + "modified": "2025-10-02 01:09:55.346449", + "modified_by": "Administrator", + "module": "Finances", + "name": "Donations by Person", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Collection", + "report_name": "Donations by Person", + "report_type": "Report Builder", + "roles": [ + { + "role": "System Manager" + }, + { + "role": "Church Manager" + } + ], + "timeout": 0 +} \ No newline at end of file diff --git a/church/church_finances/report/church_expenses/__init__.py b/church/finances/report/church_expenses/__init__.py similarity index 100% rename from church/church_finances/report/church_expenses/__init__.py rename to church/finances/report/church_expenses/__init__.py diff --git a/church/finances/report/church_expenses/church_expenses.json b/church/finances/report/church_expenses/church_expenses.json new file mode 100644 index 0000000..d848764 --- /dev/null +++ b/church/finances/report/church_expenses/church_expenses.json @@ -0,0 +1,29 @@ +{ + "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\",\"Expense\"],[\"docstatus\",\"Expense\"],[\"type\",\"Expense\"],[\"notes\",\"Expense\"],[\"date\",\"Expense\"],[\"amount\",\"Expense\"]],\"order_by\":\"`tabExpense`.`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": "Finances", + "name": "Expenses", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Expense", + "report_name": "Expenses", + "report_type": "Report Builder", + "roles": [ + { + "role": "System Manager" + } + ], + "timeout": 0 +} \ No newline at end of file diff --git a/church/church_finances/report/church_fund_balances/__init__.py b/church/finances/report/church_fund_balances/__init__.py similarity index 100% rename from church/church_finances/report/church_fund_balances/__init__.py rename to church/finances/report/church_fund_balances/__init__.py diff --git a/church/church_finances/report/church_fund_balances/church_fund_balances.json b/church/finances/report/church_fund_balances/church_fund_balances.json similarity index 75% rename from church/church_finances/report/church_fund_balances/church_fund_balances.json rename to church/finances/report/church_fund_balances/church_fund_balances.json index 5b9ea3d..2882ce7 100644 --- a/church/church_finances/report/church_fund_balances/church_fund_balances.json +++ b/church/finances/report/church_fund_balances/church_fund_balances.json @@ -6,7 +6,7 @@ "fieldname": "fund", "fieldtype": "Link", "label": "Fund", - "options": "Church Fund", + "options": "Fund", "width": 0 }, { @@ -26,13 +26,13 @@ "letterhead": null, "modified": "2025-10-02 00:14:58.822835", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Fund Balances", + "module": "Finances", + "name": "Fund Balances", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT fund, balance\nFROM `tabChurch Fund`;", - "ref_doctype": "Church Fund", - "report_name": "Church Fund Balances", + "query": "SELECT fund, balance\nFROM `tabFund`;", + "ref_doctype": "Fund", + "report_name": "Fund Balances", "report_type": "Query Report", "roles": [ { diff --git a/church/church_finances/report/church_fund_transactions/__init__.py b/church/finances/report/church_fund_transactions/__init__.py similarity index 100% rename from church/church_finances/report/church_fund_transactions/__init__.py rename to church/finances/report/church_fund_transactions/__init__.py diff --git a/church/church_finances/report/church_fund_transactions/church_fund_transactions.json b/church/finances/report/church_fund_transactions/church_fund_transactions.json similarity index 69% rename from church/church_finances/report/church_fund_transactions/church_fund_transactions.json rename to church/finances/report/church_fund_transactions/church_fund_transactions.json index 4a10174..0a2f4d8 100644 --- a/church/church_finances/report/church_fund_transactions/church_fund_transactions.json +++ b/church/finances/report/church_fund_transactions/church_fund_transactions.json @@ -6,7 +6,7 @@ "fieldname": "fund", "fieldtype": "Link", "label": "Fund", - "options": "Church Fund", + "options": "Fund", "width": 0 }, { @@ -56,13 +56,13 @@ "letterhead": null, "modified": "2025-10-02 00:37:51.943094", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Fund Transactions", + "module": "Finances", + "name": "Fund Transactions", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT \n cf.fund, \n ft.amount, \n ft.notes, \n ft.creation\nFROM \n `tabChurch Fund` cf \nINNER JOIN \n `tabChurch Financial Transaction` ft ON ft.parent = cf.name \nWHERE \n ft.parenttype = 'Church Fund'\n AND (%(from_date)s IS NULL OR DATE(ft.creation) >= %(from_date)s) \n AND (%(to_date)s IS NULL OR DATE(ft.creation) <= %(to_date)s) \nORDER BY\n cf.fund, ft.creation DESC", - "ref_doctype": "Church Fund", - "report_name": "Church Fund Transactions", + "query": "SELECT \n cf.fund, \n ft.amount, \n ft.notes, \n ft.creation\nFROM \n `tabFund` cf \nINNER JOIN \n `tabFinancial Transaction` ft ON ft.parent = cf.name \nWHERE \n ft.parenttype = 'Fund'\n AND (%(from_date)s IS NULL OR DATE(ft.creation) >= %(from_date)s) \n AND (%(to_date)s IS NULL OR DATE(ft.creation) <= %(to_date)s) \nORDER BY\n cf.fund, ft.creation DESC", + "ref_doctype": "Fund", + "report_name": "Fund Transactions", "report_type": "Query Report", "roles": [ { diff --git a/church/church_finances/report/church_fund_transactions_by_date/__init__.py b/church/finances/report/church_fund_transactions_by_date/__init__.py similarity index 100% rename from church/church_finances/report/church_fund_transactions_by_date/__init__.py rename to church/finances/report/church_fund_transactions_by_date/__init__.py diff --git a/church/church_finances/report/church_fund_transactions_by_date/church_fund_transactions_by_date.json b/church/finances/report/church_fund_transactions_by_date/church_fund_transactions_by_date.json similarity index 69% rename from church/church_finances/report/church_fund_transactions_by_date/church_fund_transactions_by_date.json rename to church/finances/report/church_fund_transactions_by_date/church_fund_transactions_by_date.json index 3b1cfa7..66d7dec 100644 --- a/church/church_finances/report/church_fund_transactions_by_date/church_fund_transactions_by_date.json +++ b/church/finances/report/church_fund_transactions_by_date/church_fund_transactions_by_date.json @@ -6,7 +6,7 @@ "fieldname": "fund", "fieldtype": "Link", "label": "Fund", - "options": "Church Fund", + "options": "Fund", "width": 0 }, { @@ -56,13 +56,13 @@ "letterhead": null, "modified": "2025-10-02 00:47:04.809206", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Fund Transactions By Date", + "module": "Finances", + "name": "Fund Transactions By Date", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT \n cf.fund, \n ft.amount, \n ft.notes, \n ft.creation\nFROM \n `tabChurch Fund` cf \nINNER JOIN \n `tabChurch Financial Transaction` ft ON ft.parent = cf.name \nWHERE \n ft.parenttype = 'Church Fund'\n AND (%(from_date)s IS NULL OR DATE(ft.creation) >= %(from_date)s) \n AND (%(to_date)s IS NULL OR DATE(ft.creation) <= %(to_date)s) \nORDER BY\n cf.fund, ft.creation DESC", - "ref_doctype": "Church Fund", - "report_name": "Church Fund Transactions By Date", + "query": "SELECT \n cf.fund, \n ft.amount, \n ft.notes, \n ft.creation\nFROM \n `tabFund` cf \nINNER JOIN \n `tabFinancial Transaction` ft ON ft.parent = cf.name \nWHERE \n ft.parenttype = 'Fund'\n AND (%(from_date)s IS NULL OR DATE(ft.creation) >= %(from_date)s) \n AND (%(to_date)s IS NULL OR DATE(ft.creation) <= %(to_date)s) \nORDER BY\n cf.fund, ft.creation DESC", + "ref_doctype": "Fund", + "report_name": "Fund Transactions By Date", "report_type": "Query Report", "roles": [ { diff --git a/church/church_finances/report/church_person_donations/__init__.py b/church/finances/report/church_person_donations/__init__.py similarity index 100% rename from church/church_finances/report/church_person_donations/__init__.py rename to church/finances/report/church_person_donations/__init__.py diff --git a/church/church_finances/report/church_person_donations/church_person_donations.json b/church/finances/report/church_person_donations/church_person_donations.json similarity index 77% rename from church/church_finances/report/church_person_donations/church_person_donations.json rename to church/finances/report/church_person_donations/church_person_donations.json index f3aa7ef..7d7cd59 100644 --- a/church/church_finances/report/church_person_donations/church_person_donations.json +++ b/church/finances/report/church_person_donations/church_person_donations.json @@ -12,7 +12,7 @@ "fieldtype": "Link", "label": "Person", "mandatory": 0, - "options": "Church Person", + "options": "Person", "wildcard_filter": 0 } ], @@ -22,12 +22,12 @@ "letterhead": null, "modified": "2025-09-21 22:47:37.230550", "modified_by": "Administrator", - "module": "Church Finances", - "name": "Church Person Donations", + "module": "Finances", + "name": "Person Donations", "owner": "Administrator", "prepared_report": 0, - "ref_doctype": "Church Collection", - "report_name": "Church Person Donations", + "ref_doctype": "Collection", + "report_name": "Person Donations", "report_type": "Report Builder", "roles": [ { diff --git a/church/church_finances/web_form/__init__.py b/church/finances/web_form/__init__.py similarity index 100% rename from church/church_finances/web_form/__init__.py rename to church/finances/web_form/__init__.py diff --git a/church/church_finances/web_form/alms_request/__init__.py b/church/finances/web_form/alms_request/__init__.py similarity index 100% rename from church/church_finances/web_form/alms_request/__init__.py rename to church/finances/web_form/alms_request/__init__.py diff --git a/church/church_finances/web_form/alms_request/alms_request.js b/church/finances/web_form/alms_request/alms_request.js similarity index 100% rename from church/church_finances/web_form/alms_request/alms_request.js rename to church/finances/web_form/alms_request/alms_request.js diff --git a/church/church_finances/web_form/alms_request/alms_request.json b/church/finances/web_form/alms_request/alms_request.json similarity index 96% rename from church/church_finances/web_form/alms_request/alms_request.json rename to church/finances/web_form/alms_request/alms_request.json index 0800640..b799bff 100644 --- a/church/church_finances/web_form/alms_request/alms_request.json +++ b/church/finances/web_form/alms_request/alms_request.json @@ -10,7 +10,7 @@ "button_label": "Save", "condition_json": "[]", "creation": "2025-11-15 01:00:46.450984", - "doc_type": "Church Alms Request", + "doc_type": "Alms Request", "docstatus": 0, "doctype": "Web Form", "idx": 0, @@ -48,7 +48,7 @@ "max_attachment_size": 0, "modified": "2026-02-20 00:59:47.260837", "modified_by": "Administrator", - "module": "Church Finances", + "module": "Finances", "name": "alms-request", "owner": "Administrator", "published": 1, @@ -107,7 +107,7 @@ "label": "Requestor", "max_length": 0, "max_value": 0, - "options": "Church Person", + "options": "Person", "precision": "", "read_only": 0, "reqd": 1, diff --git a/church/church_finances/web_form/alms_request/alms_request.py b/church/finances/web_form/alms_request/alms_request.py similarity index 100% rename from church/church_finances/web_form/alms_request/alms_request.py rename to church/finances/web_form/alms_request/alms_request.py diff --git a/church/church_finances/workspace/finances/finances.json b/church/finances/workspace/finances/finances.json similarity index 73% rename from church/church_finances/workspace/finances/finances.json rename to church/finances/workspace/finances/finances.json index 2d429fe..135c5a2 100644 --- a/church/church_finances/workspace/finances/finances.json +++ b/church/finances/workspace/finances/finances.json @@ -1,15 +1,15 @@ { "charts": [ { - "chart_name": "Church Fund Balances", - "label": "Church Fund Balances" + "chart_name": "Fund Balances", + "label": "Fund Balances" }, { - "chart_name": "Church Collections Sum", + "chart_name": "Collections Sum", "label": "Collections" } ], - "content": "[{\"id\":\"mncYXd3Fp_\",\"type\":\"paragraph\",\"data\":{\"text\":\"\\\"Which of you, wishing to build a tower, does not first sit down and \\ncount the cost to see if he has the resources to complete it?\\\"\",\"col\":12}},{\"id\":\"MmG7zVkZbr\",\"type\":\"chart\",\"data\":{\"chart_name\":\"Collections\",\"col\":6}},{\"id\":\"K7pkEdUhpZ\",\"type\":\"chart\",\"data\":{\"chart_name\":\"Church Fund Balances\",\"col\":6}},{\"id\":\"nN5R0rrK8W\",\"type\":\"spacer\",\"data\":{\"col\":12}},{\"id\":\"Xwvf2HyJiA\",\"type\":\"card\",\"data\":{\"card_name\":\"Collections\",\"col\":4}},{\"id\":\"hN4s7iuMS3\",\"type\":\"card\",\"data\":{\"card_name\":\"Expenses\",\"col\":4}},{\"id\":\"lFJ3k1PnBW\",\"type\":\"card\",\"data\":{\"card_name\":\"Funds\",\"col\":4}},{\"id\":\"m34hRRgTkK\",\"type\":\"card\",\"data\":{\"card_name\":\"Collection Reports\",\"col\":4}},{\"id\":\"qn8J4udcIZ\",\"type\":\"card\",\"data\":{\"card_name\":\"Expense Reports\",\"col\":4}},{\"id\":\"GhZ9fljXbs\",\"type\":\"card\",\"data\":{\"card_name\":\"Fund Reports\",\"col\":4}},{\"id\":\"xvoDAICiJN\",\"type\":\"card\",\"data\":{\"card_name\":\"Alms\",\"col\":4}},{\"id\":\"l_H4g7YzJQ\",\"type\":\"spacer\",\"data\":{\"col\":12}}]", + "content": "[{\"id\":\"mncYXd3Fp_\",\"type\":\"paragraph\",\"data\":{\"text\":\"\\\"Which of you, wishing to build a tower, does not first sit down and \\ncount the cost to see if he has the resources to complete it?\\\"\",\"col\":12}},{\"id\":\"MmG7zVkZbr\",\"type\":\"chart\",\"data\":{\"chart_name\":\"Collections\",\"col\":6}},{\"id\":\"K7pkEdUhpZ\",\"type\":\"chart\",\"data\":{\"chart_name\":\"Fund Balances\",\"col\":6}},{\"id\":\"nN5R0rrK8W\",\"type\":\"spacer\",\"data\":{\"col\":12}},{\"id\":\"Xwvf2HyJiA\",\"type\":\"card\",\"data\":{\"card_name\":\"Collections\",\"col\":4}},{\"id\":\"hN4s7iuMS3\",\"type\":\"card\",\"data\":{\"card_name\":\"Expenses\",\"col\":4}},{\"id\":\"lFJ3k1PnBW\",\"type\":\"card\",\"data\":{\"card_name\":\"Funds\",\"col\":4}},{\"id\":\"m34hRRgTkK\",\"type\":\"card\",\"data\":{\"card_name\":\"Collection Reports\",\"col\":4}},{\"id\":\"qn8J4udcIZ\",\"type\":\"card\",\"data\":{\"card_name\":\"Expense Reports\",\"col\":4}},{\"id\":\"GhZ9fljXbs\",\"type\":\"card\",\"data\":{\"card_name\":\"Fund Reports\",\"col\":4}},{\"id\":\"xvoDAICiJN\",\"type\":\"card\",\"data\":{\"card_name\":\"Alms\",\"col\":4}},{\"id\":\"l_H4g7YzJQ\",\"type\":\"spacer\",\"data\":{\"col\":12}}]", "creation": "2025-09-14 22:29:59.428671", "custom_blocks": [], "docstatus": 0, @@ -36,10 +36,10 @@ "is_query_report": 0, "label": "Donations", "link_count": 0, - "link_to": "Church Donations", + "link_to": "Donations", "link_type": "Report", "onboard": 0, - "report_ref_doctype": "Church Collection", + "report_ref_doctype": "Collection", "type": "Link" }, { @@ -47,7 +47,7 @@ "is_query_report": 1, "label": "Collection Bank Reconciliation", "link_count": 0, - "link_to": "Church Collection Bank Reconciliation", + "link_to": "Collection Bank Reconciliation", "link_type": "Report", "onboard": 0, "type": "Link" @@ -57,10 +57,10 @@ "is_query_report": 0, "label": "Donations Totals by Person (This Year)", "link_count": 0, - "link_to": "Church Donations by Person", + "link_to": "Donations by Person", "link_type": "Report", "onboard": 0, - "report_ref_doctype": "Church Collection", + "report_ref_doctype": "Collection", "type": "Link" }, { @@ -77,7 +77,7 @@ "is_query_report": 0, "label": "Collections", "link_count": 0, - "link_to": "Church Collection", + "link_to": "Collection", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -87,7 +87,7 @@ "is_query_report": 0, "label": "Payment Types", "link_count": 0, - "link_to": "Church Payment Type", + "link_to": "Payment Type", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -106,7 +106,7 @@ "is_query_report": 0, "label": "Funds", "link_count": 0, - "link_to": "Church Fund", + "link_to": "Fund", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -116,7 +116,7 @@ "is_query_report": 0, "label": "Fund Transfer", "link_count": 0, - "link_to": "Church Fund Transfer", + "link_to": "Fund Transfer", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -135,7 +135,7 @@ "is_query_report": 1, "label": "Fund Balances", "link_count": 0, - "link_to": "Church Fund Balances", + "link_to": "Fund Balances", "link_type": "Report", "onboard": 0, "type": "Link" @@ -154,10 +154,10 @@ "is_query_report": 0, "label": "Expenses", "link_count": 0, - "link_to": "Church Expenses", + "link_to": "Expenses", "link_type": "Report", "onboard": 0, - "report_ref_doctype": "Church Expense", + "report_ref_doctype": "Expense", "type": "Link" }, { @@ -174,7 +174,7 @@ "is_query_report": 0, "label": "Collections", "link_count": 0, - "link_to": "Church Collection", + "link_to": "Collection", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -184,7 +184,7 @@ "is_query_report": 0, "label": "Payment Types", "link_count": 0, - "link_to": "Church Payment Type", + "link_to": "Payment Type", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -203,7 +203,7 @@ "is_query_report": 0, "label": "Expenses", "link_count": 0, - "link_to": "Church Expense", + "link_to": "Expense", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -213,7 +213,7 @@ "is_query_report": 0, "label": "Expense Types", "link_count": 0, - "link_to": "Church Expense Type", + "link_to": "Expense Type", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -232,7 +232,7 @@ "is_query_report": 0, "label": "Alms Request", "link_count": 0, - "link_to": "Church Alms Request", + "link_to": "Alms Request", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -240,7 +240,7 @@ ], "modified": "2026-03-01 23:53:33.964639", "modified_by": "Administrator", - "module": "Church Finances", + "module": "Finances", "name": "Finances", "number_cards": [], "owner": "Administrator", diff --git a/church/finances/workspace/manual:_finances/manual:_finances.json b/church/finances/workspace/manual:_finances/manual:_finances.json new file mode 100644 index 0000000..6df7f4f --- /dev/null +++ b/church/finances/workspace/manual:_finances/manual:_finances.json @@ -0,0 +1,29 @@ +{ + "charts": [], + "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83e\ude99Finances Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The finances module contains features related to the finances of the church.\",\"col\":12}},{\"id\":\"w8oEjl0tNc\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcb5Collections\",\"col\":12}},{\"id\":\"z52PVRpfzT\",\"type\":\"paragraph\",\"data\":{\"text\":\"A collection tracks donations from people for specific events.\",\"col\":12}},{\"id\":\"hh6-W_FmMh\",\"type\":\"paragraph\",\"data\":{\"text\":\"Each time a collection is taken, a New Collection should be created. When creating a new collection note the following:
- Although not required, It is recommended to link the collection to the Function in which the collection is being taken.
    - By regularly linking events to collections, it will be possible later to run reports to see collection amounts for specific event types, etc.
- Remember: After saving a collection, it will be in a draft state. In order to finalize the collection, you will need to 'Submit' the collection. Once submitted, it cannot be modified unless you cancel and amend it.
    - See the 'Terminology' section in the Getting Started guide for more information about document states (draft / submitted / cancelled / amended / etc).
- After submitting the collection, you can click the Bank Reconciliation Report button on the top right of the form. This report can be used to compare with bank deposit reports.\",\"col\":12}},{\"id\":\"kVjzsXy2-5\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Finances workspace, contains links to view the collection list and various collection reports.\",\"col\":12}},{\"id\":\"8K2QjgOLSb\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83e\udd32Donations\",\"col\":12}},{\"id\":\"bZ3I5EEmVO\",\"type\":\"paragraph\",\"data\":{\"text\":\"A donation tracks the amount given from a person toward a church fund. For tracking monies given to people in need, see Alms below.\",\"col\":12}},{\"id\":\"HSRUNh_Fan\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding donations to a collection, note the following:
- After entering each donation, the collection total and fund totals will be updated in real-time.
- If a single donation check specifies multiple funds, enter it as two separate donations (one for each fund).
- Additional payment types can be added if needed.
- When entering a donation from a specific person (i.e. Check donation or Cash Envelope), it is highly recommended to link the donation to the person.
   - By regularly linking donations to persons, end-of-year statements and individual person donation reports can be created.
\",\"col\":12}},{\"id\":\"Z1nAaK7FS7\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Finances workspace, contains links to view donation reports. \",\"col\":12}},{\"id\":\"vVJ7g0tHHy\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udccaFunds\",\"col\":12}},{\"id\":\"4znr2XFUMc\",\"type\":\"paragraph\",\"data\":{\"text\":\"Funds are used by churches to tag monies for a specific purpose. Some default funds are included (i.e. General, Building, Missions, etc), but additional funds can be created for your own purposes.\",\"col\":12}},{\"id\":\"37szS6a0yE\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding/managing a fund, note the following:
- Any collections that contained donations the the fund will be listed in the 'Transactions' section at the bottom of the fund form.
- Manual transactions can created for the fund if needed
    - If the transaction is a transfer between funds, then
create a fund transfer instead. Fund transfers automatically add a transaction to the fund.
    - If the transaction is documenting an church expense,
add an expense instead. By choosing the expense type, an associated fund transaction will automatically be created. \",\"col\":12}},{\"id\":\"Tdfr6-sFUJ\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Finances workspace, contains links to view fund reports along with a graph showing the current totals in each fund.\",\"col\":12}},{\"id\":\"1IhzkEsC60\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcb8Expenses\",\"col\":12}},{\"id\":\"jgQMiK07Uh\",\"type\":\"paragraph\",\"data\":{\"text\":\"Expenses are any transaction that requires an outflow of funds. \",\"col\":12}},{\"id\":\"wjAR7Nu3_S\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating an expense, note the following:
- An expense type must be chosen. If needed, you can create a new expense type.
\",\"col\":12}},{\"id\":\"67mC7yvAUx\",\"type\":\"paragraph\",\"data\":{\"text\":\"Expense Types\",\"col\":12}},{\"id\":\"fL3gBJn8g-\",\"type\":\"paragraph\",\"data\":{\"text\":\"Expense types are used to categorize different expenses. This allows for more fine-grained financial reporting.\",\"col\":12}},{\"id\":\"WmN1sFvcpL\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating an expense type, note the following:
- Each expense type is linked to a specific fund, so that when expenses of this type are created, a transaction for the related fund will also automatically be created.
- Expense types can be grouped in hierarchies. For example, you could have an expense type group of 'Waste' and then have sub-types of 'Trash' and 'Recycling'.
    - In the example above, the 'Waste' expense type would have the 'group' option checked and the 'Trash' and 'Recycling' expense types would have 'Waste' selected as the 'Parent Expense Type'.
\",\"col\":12}},{\"id\":\"hh7kswiBbD\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83e\udef4Alms\",\"col\":12}},{\"id\":\"tlzyc7xao2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Alms are monies given by the church to someone in need. For giving to the church, see Donations above.\",\"col\":12}},{\"id\":\"wHgIFlrdYA\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating an alms request, note the following:
- The Recipient is the person (or family) who would receive the alms
- Once the alms request is Approved or Declined, the Status field should be updated.
- Once the alms have been distributed to the Recipient:
    - The Status can be set to Distributed.
    - An associated Expense can be created by clicking the Create Expense button at the top-right of the form. This will create and submit an
Expense and automatically reduce the Fund associated with that Expense.\",\"col\":12}}]", + "creation": "2025-10-26 22:28:38.959939", + "custom_blocks": [], + "docstatus": 0, + "doctype": "Workspace", + "for_user": "", + "hide_custom": 0, + "icon": "help", + "idx": 0, + "indicator_color": "", + "is_hidden": 0, + "label": "Manual: Finances", + "links": [], + "modified": "2026-03-01 23:53:34.004566", + "modified_by": "Administrator", + "module": "Finances", + "name": "Manual: Finances", + "number_cards": [], + "owner": "Administrator", + "parent_page": "Finances", + "public": 1, + "quick_lists": [], + "roles": [], + "sequence_id": 7.0, + "shortcuts": [], + "title": "Manual: Finances" +} \ No newline at end of file diff --git a/church/fixtures/church_bible_book.json b/church/fixtures/church_bible_book.json index 0f4448c..c76860c 100644 --- a/church/fixtures/church_bible_book.json +++ b/church/fixtures/church_bible_book.json @@ -3,7 +3,7 @@ "abbreviation": "REV", "book": "Revelation", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.435866", "name": "Revelation" }, @@ -11,7 +11,7 @@ "abbreviation": "JUD", "book": "Jude", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.428128", "name": "Jude" }, @@ -19,7 +19,7 @@ "abbreviation": "2JN", "book": "2 John", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.412496", "name": "2 John" }, @@ -27,7 +27,7 @@ "abbreviation": "1JN", "book": "1 John", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.405366", "name": "1 John" }, @@ -35,7 +35,7 @@ "abbreviation": "1PE", "book": "1 Peter", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.390842", "name": "1 Peter" }, @@ -43,7 +43,7 @@ "abbreviation": "JAS", "book": "James", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.384283", "name": "James" }, @@ -51,7 +51,7 @@ "abbreviation": "HEB", "book": "Hebrews", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.377081", "name": "Hebrews" }, @@ -59,7 +59,7 @@ "abbreviation": "PHM", "book": "Philemon", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.370557", "name": "Philemon" }, @@ -67,7 +67,7 @@ "abbreviation": "TIT", "book": "Titus", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.362941", "name": "Titus" }, @@ -75,7 +75,7 @@ "abbreviation": "2TI", "book": "2 Timothy", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.355408", "name": "2 Timothy" }, @@ -83,7 +83,7 @@ "abbreviation": "1TI", "book": "1 Timothy", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.349289", "name": "1 Timothy" }, @@ -91,7 +91,7 @@ "abbreviation": "2TH", "book": "2 Thessalonians", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.342430", "name": "2 Thessalonians" }, @@ -99,7 +99,7 @@ "abbreviation": "1TH", "book": "1 Thessalonians", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.335349", "name": "1 Thessalonians" }, @@ -107,7 +107,7 @@ "abbreviation": "COL", "book": "Colossians", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.328412", "name": "Colossians" }, @@ -115,7 +115,7 @@ "abbreviation": "PHP", "book": "Philippians", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.320853", "name": "Philippians" }, @@ -123,7 +123,7 @@ "abbreviation": "EPH", "book": "Ephesians", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.314584", "name": "Ephesians" }, @@ -131,7 +131,7 @@ "abbreviation": "GAL", "book": "Galatians", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.308299", "name": "Galatians" }, @@ -139,7 +139,7 @@ "abbreviation": "2CO", "book": "2 Corinthians", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.301972", "name": "2 Corinthians" }, @@ -147,7 +147,7 @@ "abbreviation": "1CO", "book": "1 Corinthians", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.295341", "name": "1 Corinthians" }, @@ -155,7 +155,7 @@ "abbreviation": "ROM", "book": "Romans", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.289020", "name": "Romans" }, @@ -163,7 +163,7 @@ "abbreviation": "ACT", "book": "Acts", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.282971", "name": "Acts" }, @@ -171,7 +171,7 @@ "abbreviation": "JHN", "book": "John", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.276501", "name": "John" }, @@ -179,7 +179,7 @@ "abbreviation": "LUK", "book": "Luke", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.269597", "name": "Luke" }, @@ -187,7 +187,7 @@ "abbreviation": "MRK", "book": "Mark", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.262903", "name": "Mark" }, @@ -195,7 +195,7 @@ "abbreviation": "MAT", "book": "Matthew", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.256820", "name": "Matthew" }, @@ -203,7 +203,7 @@ "abbreviation": "MAL", "book": "Malachi", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.250840", "name": "Malachi" }, @@ -211,7 +211,7 @@ "abbreviation": "ZEC", "book": "Zechariah", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.244547", "name": "Zechariah" }, @@ -219,7 +219,7 @@ "abbreviation": "HAG", "book": "Haggai", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.238069", "name": "Haggai" }, @@ -227,7 +227,7 @@ "abbreviation": "ZEP", "book": "Zephaniah", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.231855", "name": "Zephaniah" }, @@ -235,7 +235,7 @@ "abbreviation": "HAB", "book": "Habakkuk", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.225111", "name": "Habakkuk" }, @@ -243,7 +243,7 @@ "abbreviation": "NAM", "book": "Nahum", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.218905", "name": "Nahum" }, @@ -251,7 +251,7 @@ "abbreviation": "MIC", "book": "Micah", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.212258", "name": "Micah" }, @@ -259,7 +259,7 @@ "abbreviation": "JON", "book": "Jonah", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.205891", "name": "Jonah" }, @@ -267,7 +267,7 @@ "abbreviation": "OBA", "book": "Obadiah", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.198866", "name": "Obadiah" }, @@ -275,7 +275,7 @@ "abbreviation": "AMO", "book": "Amos", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.189189", "name": "Amos" }, @@ -283,7 +283,7 @@ "abbreviation": "JOL", "book": "Joel", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.179795", "name": "Joel" }, @@ -291,7 +291,7 @@ "abbreviation": "HOS", "book": "Hosea", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.171495", "name": "Hosea" }, @@ -299,7 +299,7 @@ "abbreviation": "DAN", "book": "Daniel", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-09 23:46:05.085800", "name": "Daniel" }, @@ -307,7 +307,7 @@ "abbreviation": "EZK", "book": "Ezekiel", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.160649", "name": "Ezekiel" }, @@ -315,7 +315,7 @@ "abbreviation": "LAM", "book": "Lamentations", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.153440", "name": "Lamentations" }, @@ -323,7 +323,7 @@ "abbreviation": "JER", "book": "Jeremiah", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.145342", "name": "Jeremiah" }, @@ -331,7 +331,7 @@ "abbreviation": "ISA", "book": "Isaiah", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.138046", "name": "Isaiah" }, @@ -339,7 +339,7 @@ "abbreviation": "SNG", "book": "Song of Solomon", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-09 23:45:49.079240", "name": "Song of Solomon" }, @@ -347,7 +347,7 @@ "abbreviation": "ECC", "book": "Ecclesiastes", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.128109", "name": "Ecclesiastes" }, @@ -355,7 +355,7 @@ "abbreviation": "PRO", "book": "Proverbs", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.120397", "name": "Proverbs" }, @@ -363,7 +363,7 @@ "abbreviation": "PSA", "book": "Psalms", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.111998", "name": "Psalms" }, @@ -371,7 +371,7 @@ "abbreviation": "JOB", "book": "Job", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.105039", "name": "Job" }, @@ -379,7 +379,7 @@ "abbreviation": "EST", "book": "Esther", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-09 23:45:23.124686", "name": "Esther" }, @@ -387,7 +387,7 @@ "abbreviation": "NEH", "book": "Nehemiah", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.093714", "name": "Nehemiah" }, @@ -395,7 +395,7 @@ "abbreviation": "EZR", "book": "Ezra", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.085685", "name": "Ezra" }, @@ -403,7 +403,7 @@ "abbreviation": "2CH", "book": "2 Chronicles", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.077295", "name": "2 Chronicles" }, @@ -411,7 +411,7 @@ "abbreviation": "1CH", "book": "1 Chronicles", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.068925", "name": "1 Chronicles" }, @@ -419,7 +419,7 @@ "abbreviation": "2KI", "book": "2 Kings", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.061525", "name": "2 Kings" }, @@ -427,7 +427,7 @@ "abbreviation": "1KI", "book": "1 Kings", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.054355", "name": "1 Kings" }, @@ -435,7 +435,7 @@ "abbreviation": "2SA", "book": "2 Samuel", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.047023", "name": "2 Samuel" }, @@ -443,7 +443,7 @@ "abbreviation": "RUT", "book": "Ruth", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.032809", "name": "Ruth" }, @@ -451,7 +451,7 @@ "abbreviation": "JDG", "book": "Judges", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.024608", "name": "Judges" }, @@ -459,7 +459,7 @@ "abbreviation": "JOS", "book": "Joshua", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.017796", "name": "Joshua" }, @@ -467,7 +467,7 @@ "abbreviation": "DEU", "book": "Deuteronomy", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.009611", "name": "Deuteronomy" }, @@ -475,7 +475,7 @@ "abbreviation": "NUM", "book": "Numbers", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.002849", "name": "Numbers" }, @@ -483,7 +483,7 @@ "abbreviation": "LEV", "book": "Leviticus", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:36.994681", "name": "Leviticus" }, @@ -491,7 +491,7 @@ "abbreviation": "EXO", "book": "Exodus", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-10-30 00:29:35.421522", "name": "Exodus" }, @@ -499,7 +499,7 @@ "abbreviation": "GEN", "book": "Genesis", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:36.963115", "name": "Genesis" }, @@ -507,7 +507,7 @@ "abbreviation": "3JN", "book": "3 John", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.420494", "name": "3 John" }, @@ -515,7 +515,7 @@ "abbreviation": "2PE", "book": "2 Peter", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.398271", "name": "2 Peter" }, @@ -523,7 +523,7 @@ "abbreviation": "1SA", "book": "1 Samuel", "docstatus": 0, - "doctype": "Church Bible Book", + "doctype": "Bible Book", "modified": "2025-11-06 00:18:37.039529", "name": "1 Samuel" } diff --git a/church/fixtures/church_bible_translation.json b/church/fixtures/church_bible_translation.json index 0a1ccf4..3d380a1 100644 --- a/church/fixtures/church_bible_translation.json +++ b/church/fixtures/church_bible_translation.json @@ -2,7 +2,7 @@ { "abbreviation": "KJV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-11-11 00:31:43.241625", "name": "King James Version", "translation": "King James Version" @@ -10,7 +10,7 @@ { "abbreviation": "NIV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.798606", "name": "New International Version", "translation": "New International Version" @@ -18,7 +18,7 @@ { "abbreviation": "ESV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.808630", "name": "English Standard Version", "translation": "English Standard Version" @@ -26,7 +26,7 @@ { "abbreviation": "NLT", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.818323", "name": "New Living Translation", "translation": "New Living Translation" @@ -34,7 +34,7 @@ { "abbreviation": "CSB", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.829058", "name": "Christian Standard Bible", "translation": "Christian Standard Bible" @@ -42,7 +42,7 @@ { "abbreviation": "NKJV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.838678", "name": "New King James Version", "translation": "New King James Version" @@ -50,7 +50,7 @@ { "abbreviation": "NASB", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.849367", "name": "New American Standard Bible", "translation": "New American Standard Bible" @@ -58,7 +58,7 @@ { "abbreviation": "NABRE", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.861138", "name": "New American Bible Revised Edition", "translation": "New American Bible Revised Edition" @@ -66,7 +66,7 @@ { "abbreviation": "MSG", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.871084", "name": "The Message", "translation": "The Message" @@ -74,7 +74,7 @@ { "abbreviation": "AMP", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.881176", "name": "Amplified Bible", "translation": "Amplified Bible" @@ -82,7 +82,7 @@ { "abbreviation": "NRSV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.891513", "name": "New Revised Standard Version", "translation": "New Revised Standard Version" @@ -90,7 +90,7 @@ { "abbreviation": "ASV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.901640", "name": "American Standard Version", "translation": "American Standard Version" @@ -98,7 +98,7 @@ { "abbreviation": "DRB", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.912327", "name": "Douay-Rheims Bible", "translation": "Douay-Rheims Bible" @@ -106,7 +106,7 @@ { "abbreviation": "RSV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.922454", "name": "Revised Standard Version", "translation": "Revised Standard Version" @@ -114,7 +114,7 @@ { "abbreviation": "JB", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.932427", "name": "Jerusalem Bible", "translation": "Jerusalem Bible" @@ -122,7 +122,7 @@ { "abbreviation": "NJB", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.942446", "name": "New Jerusalem Bible", "translation": "New Jerusalem Bible" @@ -130,7 +130,7 @@ { "abbreviation": "CEB", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.952487", "name": "Common English Bible", "translation": "Common English Bible" @@ -138,7 +138,7 @@ { "abbreviation": "GNT", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.962669", "name": "Good News Translation", "translation": "Good News Translation" @@ -146,7 +146,7 @@ { "abbreviation": "CEV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.972350", "name": "Contemporary English Version", "translation": "Contemporary English Version" @@ -154,7 +154,7 @@ { "abbreviation": "NET", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.982197", "name": "New English Translation", "translation": "New English Translation" @@ -162,7 +162,7 @@ { "abbreviation": "NIrV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:25.991980", "name": "New International Reader's Version", "translation": "New International Reader's Version" @@ -170,7 +170,7 @@ { "abbreviation": "CJB", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:26.011591", "name": "Complete Jewish Bible", "translation": "Complete Jewish Bible" @@ -178,7 +178,7 @@ { "abbreviation": "TPT", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:26.031151", "name": "The Passion Translation", "translation": "The Passion Translation" @@ -186,7 +186,7 @@ { "abbreviation": "LIVING", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:26.041142", "name": "The Living Bible", "translation": "The Living Bible" @@ -194,7 +194,7 @@ { "abbreviation": "MEV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:26.053780", "name": "Modern English Version", "translation": "Modern English Version" @@ -202,7 +202,7 @@ { "abbreviation": "NCV", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:26.064127", "name": "New Century Version", "translation": "New Century Version" @@ -210,7 +210,7 @@ { "abbreviation": "VOICE", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:26.074321", "name": "The Voice", "translation": "The Voice" @@ -218,7 +218,7 @@ { "abbreviation": "WEB", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-10-29 22:34:57.443008", "name": "World English Bible", "translation": "World English Bible" @@ -226,7 +226,7 @@ { "abbreviation": "BSB", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-11-06 01:17:39.595353", "name": "Berean Standard Bible", "translation": "Berean Standard Bible" @@ -234,7 +234,7 @@ { "abbreviation": "BBE", "docstatus": 0, - "doctype": "Church Bible Translation", + "doctype": "Bible Translation", "modified": "2025-09-17 23:23:26.021513", "name": "Bible in Basic English", "translation": "Bible in Basic English" diff --git a/church/fixtures/church_event_attendance_type.json b/church/fixtures/church_event_attendance_type.json index 79d3293..ced955f 100644 --- a/church/fixtures/church_event_attendance_type.json +++ b/church/fixtures/church_event_attendance_type.json @@ -1,32 +1,32 @@ [ { - "description": "It is unknown if the `Church Person` was present.", + "description": "It is unknown if the `Person` was present.", "docstatus": 0, - "doctype": "Church Event Attendance Type", + "doctype": "Event Attendance Type", "modified": "2025-09-01 00:49:02.575272", "name": "Unknown", "type": "Unknown" }, { - "description": "`Church Person` was absent.", + "description": "`Person` was absent.", "docstatus": 0, - "doctype": "Church Event Attendance Type", + "doctype": "Event Attendance Type", "modified": "2025-09-01 00:50:25.152727", "name": "Absent", "type": "Absent" }, { - "description": "The `Church Person` was assumed to be present.", + "description": "The `Person` was assumed to be present.", "docstatus": 0, - "doctype": "Church Event Attendance Type", + "doctype": "Event Attendance Type", "modified": "2025-09-01 00:48:23.253888", "name": "Assumed", "type": "Assumed" }, { - "description": "The `Church Person` was confirmed to be present.", + "description": "The `Person` was confirmed to be present.", "docstatus": 0, - "doctype": "Church Event Attendance Type", + "doctype": "Event Attendance Type", "modified": "2025-09-01 00:48:37.750184", "name": "Confirmed", "type": "Confirmed" diff --git a/church/fixtures/church_event_type.json b/church/fixtures/church_event_type.json index 1a363b2..b0dbbb0 100644 --- a/church/fixtures/church_event_type.json +++ b/church/fixtures/church_event_type.json @@ -2,7 +2,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Event Type", + "doctype": "Event Type", "modified": "2025-09-01 00:59:38.988367", "name": "Sunday Evening Service", "template_event": null, @@ -11,7 +11,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Event Type", + "doctype": "Event Type", "modified": "2025-09-01 01:00:17.100333", "name": "Prayer Meeting", "template_event": null, @@ -20,7 +20,7 @@ { "description": "", "docstatus": 0, - "doctype": "Church Event Type", + "doctype": "Event Type", "modified": "2025-09-01 01:01:46.102984", "name": "Business Meeting", "template_event": null, @@ -29,7 +29,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Event Type", + "doctype": "Event Type", "modified": "2025-09-01 00:59:49.876562", "name": "Sunday Morning Service", "template_event": null, @@ -38,7 +38,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Event Type", + "doctype": "Event Type", "modified": "2025-09-01 01:00:51.578037", "name": "Communion", "template_event": null, @@ -47,7 +47,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Event Type", + "doctype": "Event Type", "modified": "2025-11-07 01:09:09.288659", "name": "Baptism", "template_event": "", diff --git a/church/fixtures/church_fund.json b/church/fixtures/church_fund.json index afa91eb..884530b 100644 --- a/church/fixtures/church_fund.json +++ b/church/fixtures/church_fund.json @@ -3,7 +3,7 @@ "balance": 0, "description": "Funds for the building & maintenance of the church.", "docstatus": 0, - "doctype": "Church Fund", + "doctype": "Fund", "end_date": null, "fund": "Building", "modified": "2025-10-02 00:56:20.007430", @@ -15,7 +15,7 @@ "balance": 0, "description": "Financial support for missionaries", "docstatus": 0, - "doctype": "Church Fund", + "doctype": "Fund", "end_date": null, "fund": "Missions", "modified": "2025-10-02 01:02:06.137140", @@ -27,7 +27,7 @@ "balance": 0, "description": "Church general fund.", "docstatus": 0, - "doctype": "Church Fund", + "doctype": "Fund", "end_date": null, "fund": "General", "modified": "2025-10-02 01:03:14.200750", diff --git a/church/fixtures/church_member_status.json b/church/fixtures/church_member_status.json index 9864a26..d5bf3d9 100644 --- a/church/fixtures/church_member_status.json +++ b/church/fixtures/church_member_status.json @@ -3,7 +3,7 @@ "color": null, "description": null, "docstatus": 0, - "doctype": "Church Member Status", + "doctype": "Member Status", "modified": "2025-08-26 01:16:00.741909", "name": "Inactive", "status": "Inactive" @@ -12,7 +12,7 @@ "color": null, "description": null, "docstatus": 0, - "doctype": "Church Member Status", + "doctype": "Member Status", "modified": "2025-08-26 01:15:49.268376", "name": "Active", "status": "Active" diff --git a/church/fixtures/church_missionary_support_frequency.json b/church/fixtures/church_missionary_support_frequency.json index 00686e0..d71862e 100644 --- a/church/fixtures/church_missionary_support_frequency.json +++ b/church/fixtures/church_missionary_support_frequency.json @@ -2,7 +2,7 @@ { "description": "Support is sent once per year", "docstatus": 0, - "doctype": "Church Missionary Support Frequency", + "doctype": "Missionary Support Frequency", "frequency": "Yearly", "modified": "2025-10-02 22:01:07.476782", "name": "Yearly" @@ -10,7 +10,7 @@ { "description": "Support is sent 4 times per year", "docstatus": 0, - "doctype": "Church Missionary Support Frequency", + "doctype": "Missionary Support Frequency", "frequency": "Quarterly", "modified": "2025-10-02 22:01:31.042863", "name": "Quarterly" @@ -18,7 +18,7 @@ { "description": "Support is sent every two months", "docstatus": 0, - "doctype": "Church Missionary Support Frequency", + "doctype": "Missionary Support Frequency", "frequency": "Bi-Monthly", "modified": "2025-10-02 22:01:48.560028", "name": "Bi-Monthly" @@ -26,7 +26,7 @@ { "description": "Support is sent once per month", "docstatus": 0, - "doctype": "Church Missionary Support Frequency", + "doctype": "Missionary Support Frequency", "frequency": "Monthly", "modified": "2025-10-02 22:02:02.944446", "name": "Monthly" @@ -34,7 +34,7 @@ { "description": "Support is sent every two weeks", "docstatus": 0, - "doctype": "Church Missionary Support Frequency", + "doctype": "Missionary Support Frequency", "frequency": "Bi-Weekly", "modified": "2025-10-02 22:02:38.770235", "name": "Bi-Weekly" @@ -42,7 +42,7 @@ { "description": "Support is sent every week", "docstatus": 0, - "doctype": "Church Missionary Support Frequency", + "doctype": "Missionary Support Frequency", "frequency": "Weekly", "modified": "2025-10-02 22:02:49.588365", "name": "Weekly" diff --git a/church/fixtures/church_payment_type.json b/church/fixtures/church_payment_type.json index e9cceec..7afd6f0 100644 --- a/church/fixtures/church_payment_type.json +++ b/church/fixtures/church_payment_type.json @@ -2,7 +2,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Payment Type", + "doctype": "Payment Type", "modified": "2025-09-02 01:45:57.381589", "name": "Cash", "type": "Cash" @@ -10,7 +10,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Payment Type", + "doctype": "Payment Type", "modified": "2025-09-02 01:46:05.861238", "name": "Check", "type": "Check" diff --git a/church/fixtures/church_person_relation_type.json b/church/fixtures/church_person_relation_type.json index fe02103..81b7668 100644 --- a/church/fixtures/church_person_relation_type.json +++ b/church/fixtures/church_person_relation_type.json @@ -2,7 +2,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.653758", "name": "Uncle", "relation_type": "Uncle" @@ -10,7 +10,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.657867", "name": "Stepsister", "relation_type": "Stepsister" @@ -18,7 +18,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.661456", "name": "Stepmother", "relation_type": "Stepmother" @@ -26,7 +26,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.665259", "name": "Stepfather", "relation_type": "Stepfather" @@ -34,7 +34,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.669379", "name": "Stepbrother", "relation_type": "Stepbrother" @@ -42,7 +42,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.673111", "name": "Son", "relation_type": "Son" @@ -50,7 +50,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.676676", "name": "Sister-in-law", "relation_type": "Sister-in-law" @@ -58,7 +58,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.680119", "name": "Niece", "relation_type": "Niece" @@ -66,7 +66,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.683478", "name": "Nephew", "relation_type": "Nephew" @@ -74,7 +74,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.687305", "name": "Mother-in-law", "relation_type": "Mother-in-law" @@ -82,7 +82,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.695315", "name": "Grandson", "relation_type": "Grandson" @@ -90,7 +90,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.698809", "name": "Grandmother", "relation_type": "Grandmother" @@ -98,7 +98,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.702102", "name": "Grandfather", "relation_type": "Grandfather" @@ -106,7 +106,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.705686", "name": "Granddaughter", "relation_type": "Granddaughter" @@ -114,7 +114,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.710246", "name": "Father-in-law", "relation_type": "Father-in-law" @@ -122,7 +122,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.713876", "name": "Daughter", "relation_type": "Daughter" @@ -130,7 +130,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.717387", "name": "Brother-in-law", "relation_type": "Brother-in-law" @@ -138,7 +138,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.721712", "name": "Aunt", "relation_type": "Aunt" @@ -146,7 +146,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.726072", "name": "Father", "relation_type": "Father" @@ -154,7 +154,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.730197", "name": "Mother", "relation_type": "Mother" @@ -162,7 +162,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.733999", "name": "Sister", "relation_type": "Sister" @@ -170,7 +170,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.640635", "name": "Wife", "relation_type": "Wife" @@ -178,7 +178,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:24:08.691750", "name": "Husband", "relation_type": "Husband" @@ -186,7 +186,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Person Relation Type", + "doctype": "Person Relation Type", "modified": "2025-08-26 01:30:00.557230", "name": "Brother", "relation_type": "Brother" diff --git a/church/fixtures/church_prayer_request_status.json b/church/fixtures/church_prayer_request_status.json index 216a982..3c6151e 100644 --- a/church/fixtures/church_prayer_request_status.json +++ b/church/fixtures/church_prayer_request_status.json @@ -2,7 +2,7 @@ { "description": "The prayer request has been requested", "docstatus": 0, - "doctype": "Church Prayer Request Status", + "doctype": "Prayer Request Status", "modified": "2025-09-13 00:49:39.116401", "name": "Requested", "status": "Requested" @@ -10,7 +10,7 @@ { "description": "The prayer request is being prayed for", "docstatus": 0, - "doctype": "Church Prayer Request Status", + "doctype": "Prayer Request Status", "modified": "2025-09-30 01:13:47.596811", "name": "Being Prayed For", "status": "Being Prayed For" @@ -18,7 +18,7 @@ { "description": "The prayer request has been answered", "docstatus": 0, - "doctype": "Church Prayer Request Status", + "doctype": "Prayer Request Status", "modified": "2025-09-13 00:49:57.973400", "name": "Answered", "status": "Answered" diff --git a/church/fixtures/church_prayer_request_type.json b/church/fixtures/church_prayer_request_type.json index c0c652e..79baaa8 100644 --- a/church/fixtures/church_prayer_request_type.json +++ b/church/fixtures/church_prayer_request_type.json @@ -2,15 +2,15 @@ { "description": "A praise (not a request for prayer)", "docstatus": 0, - "doctype": "Church Prayer Request Type", + "doctype": "Prayer Request Type", "modified": "2025-09-13 01:26:17.502213", "name": "Praise", "type": "Praise" }, { - "description": "Related to the health of a `Church Person`", + "description": "Related to the health of a `Person`", "docstatus": 0, - "doctype": "Church Prayer Request Type", + "doctype": "Prayer Request Type", "modified": "2025-09-13 01:26:40.182238", "name": "Health", "type": "Health" @@ -18,15 +18,15 @@ { "description": "Related to an unspecified topic", "docstatus": 0, - "doctype": "Church Prayer Request Type", + "doctype": "Prayer Request Type", "modified": "2025-09-13 01:27:48.604973", "name": "Unspoken", "type": "Unspoken" }, { - "description": "Related to the salvation of a `Church Person`", + "description": "Related to the salvation of a `Person`", "docstatus": 0, - "doctype": "Church Prayer Request Type", + "doctype": "Prayer Request Type", "modified": "2025-09-13 01:28:48.259192", "name": "Salvation", "type": "Salvation" diff --git a/church/fixtures/church_role_type.json b/church/fixtures/church_role_type.json index 7cc3d90..bcd1421 100644 --- a/church/fixtures/church_role_type.json +++ b/church/fixtures/church_role_type.json @@ -2,7 +2,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Role Type", + "doctype": "Role Type", "modified": "2025-08-27 22:37:31.022091", "name": "Elder - 00002", "role": "Elder" @@ -10,7 +10,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Role Type", + "doctype": "Role Type", "modified": "2025-08-27 22:37:58.157108", "name": "Pastor - 00001", "role": "Pastor" @@ -18,7 +18,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Role Type", + "doctype": "Role Type", "modified": "2025-08-27 22:47:21.595158", "name": "Treasurer - 00004", "role": "Treasurer" @@ -26,7 +26,7 @@ { "description": null, "docstatus": 0, - "doctype": "Church Role Type", + "doctype": "Role Type", "modified": "2025-08-27 22:47:44.456382", "name": "Secretary - 00005", "role": "Secretary" @@ -34,7 +34,7 @@ { "description": "", "docstatus": 0, - "doctype": "Church Role Type", + "doctype": "Role Type", "modified": "2025-10-10 22:35:39.135319", "name": "Deacon - 00003", "role": "Deacon" diff --git a/church/fixtures/dashboard_chart.json b/church/fixtures/dashboard_chart.json index 338b26a..d7472c9 100644 --- a/church/fixtures/dashboard_chart.json +++ b/church/fixtures/dashboard_chart.json @@ -2,14 +2,14 @@ { "aggregate_function_based_on": null, "based_on": "creation", - "chart_name": "Church Persons Count", + "chart_name": "Persons Count", "chart_type": "Count", "color": null, "currency": "USD", "custom_options": null, "docstatus": 0, "doctype": "Dashboard Chart", - "document_type": "Church Person", + "document_type": "Person", "dynamic_filters_json": "[]", "filters_json": "[]", "from_date": null, @@ -20,8 +20,8 @@ "is_standard": 0, "last_synced_on": "2025-11-15 01:32:19.314727", "modified": "2025-10-10 23:37:28.780115", - "module": "Church People", - "name": "Church Persons Count", + "module": "People", + "name": "Persons Count", "number_of_groups": 0, "parent_document_type": "", "report_name": null, @@ -48,9 +48,9 @@ "custom_options": null, "docstatus": 0, "doctype": "Dashboard Chart", - "document_type": "Church Person", + "document_type": "Person", "dynamic_filters_json": "[]", - "filters_json": "[[\"Church Person\",\"is_member\",\"=\",1,false]]", + "filters_json": "[[\"Person\",\"is_member\",\"=\",1,false]]", "from_date": null, "group_by_based_on": null, "group_by_type": "Count", @@ -59,7 +59,7 @@ "is_standard": 0, "last_synced_on": "2025-11-15 01:32:19.365598", "modified": "2025-10-10 23:37:22.231188", - "module": "Church People", + "module": "People", "name": "Church Members Count (New by Month)", "number_of_groups": 0, "parent_document_type": "", @@ -80,16 +80,16 @@ { "aggregate_function_based_on": null, "based_on": "creation", - "chart_name": "Church Prayer Request Count (Active)", + "chart_name": "Prayer Request Count (Active)", "chart_type": "Count", "color": "#ECAD4B", "currency": "USD", "custom_options": null, "docstatus": 0, "doctype": "Dashboard Chart", - "document_type": "Church Prayer Request", + "document_type": "Prayer Request", "dynamic_filters_json": "[]", - "filters_json": "[[\"Church Prayer Request\",\"status\",\"in\",[\"Requested\",\"Intercession\"],false]]", + "filters_json": "[[\"Prayer Request\",\"status\",\"in\",[\"Requested\",\"Intercession\"],false]]", "from_date": null, "group_by_based_on": null, "group_by_type": "Count", @@ -98,8 +98,8 @@ "is_standard": 0, "last_synced_on": "2025-11-02 21:58:15.452340", "modified": "2025-10-10 23:37:40.094794", - "module": "Church Prayers", - "name": "Church Prayer Request Count (Active)", + "module": "Prayers", + "name": "Prayer Request Count (Active)", "number_of_groups": 0, "parent_document_type": "", "report_name": null, @@ -119,16 +119,16 @@ { "aggregate_function_based_on": null, "based_on": "modified", - "chart_name": "Church Prayer Requests (Answered)", + "chart_name": "Prayer Requests (Answered)", "chart_type": "Count", "color": "#29CD42", "currency": "USD", "custom_options": null, "docstatus": 0, "doctype": "Dashboard Chart", - "document_type": "Church Prayer Request", + "document_type": "Prayer Request", "dynamic_filters_json": "[]", - "filters_json": "[[\"Church Prayer Request\",\"status\",\"=\",\"Answered\",false]]", + "filters_json": "[[\"Prayer Request\",\"status\",\"=\",\"Answered\",false]]", "from_date": null, "group_by_based_on": null, "group_by_type": "Count", @@ -137,8 +137,8 @@ "is_standard": 0, "last_synced_on": "2025-11-02 21:58:15.454605", "modified": "2025-10-10 23:37:35.790654", - "module": "Church Prayers", - "name": "Church Prayer Requests (Answered)", + "module": "Prayers", + "name": "Prayer Requests (Answered)", "number_of_groups": 0, "parent_document_type": "", "report_name": null, @@ -158,7 +158,7 @@ { "aggregate_function_based_on": null, "based_on": null, - "chart_name": "Church Fund Balances", + "chart_name": "Fund Balances", "chart_type": "Report", "color": null, "currency": "USD", @@ -176,11 +176,11 @@ "is_standard": 0, "last_synced_on": null, "modified": "2025-10-10 23:37:15.567068", - "module": "Church Finances", - "name": "Church Fund Balances", + "module": "Finances", + "name": "Fund Balances", "number_of_groups": 0, "parent_document_type": null, - "report_name": "Church Fund Balances", + "report_name": "Fund Balances", "roles": [], "show_values_over_chart": 1, "source": null, @@ -195,7 +195,7 @@ "y_axis": [ { "color": "#29CD42", - "parent": "Church Fund Balances", + "parent": "Fund Balances", "parentfield": "y_axis", "parenttype": "Dashboard Chart", "y_field": "balance" @@ -205,14 +205,14 @@ { "aggregate_function_based_on": null, "based_on": "creation", - "chart_name": "Church Collections Sum", + "chart_name": "Collections Sum", "chart_type": "Sum", "color": "#138a25", "currency": "USD", "custom_options": null, "docstatus": 0, "doctype": "Dashboard Chart", - "document_type": "Church Donation", + "document_type": "Donation", "dynamic_filters_json": "[]", "filters_json": "[]", "from_date": null, @@ -221,16 +221,16 @@ "heatmap_year": null, "is_public": 0, "is_standard": 0, - "last_synced_on": "2025-11-15 01:33:07.103605", + "last_synced_on": "2026-03-02 00:00:50.691081", "modified": "2025-10-10 23:36:55.818468", - "module": "Church Finances", - "name": "Church Collections Sum", + "module": "Finances", + "name": "Collections Sum", "number_of_groups": 0, - "parent_document_type": "Church Collection", + "parent_document_type": "Collection", "report_name": null, "roles": [ { - "parent": "Church Collections Sum", + "parent": "Collections Sum", "parentfield": "roles", "parenttype": "Dashboard Chart", "role": "Church Manager" diff --git a/church/fixtures/form_tour.json b/church/fixtures/form_tour.json index 9d5f1ad..d2d6f57 100644 --- a/church/fixtures/form_tour.json +++ b/church/fixtures/form_tour.json @@ -9,11 +9,11 @@ "list_name": "List", "modified": "2025-09-30 21:54:12.850006", "module": "Desk", - "name": "Church Person", + "name": "Person", "new_document_form": 0, "page_name": null, "page_route": null, - "reference_doctype": "Church Person", + "reference_doctype": "Person", "report_name": "", "save_on_complete": 1, "steps": [ @@ -34,7 +34,7 @@ "offset_x": 0, "offset_y": 0, "ondemand_description": null, - "parent": "Church Person", + "parent": "Person", "parent_element_selector": null, "parent_fieldname": null, "parentfield": "steps", @@ -61,7 +61,7 @@ "offset_x": 0, "offset_y": 0, "ondemand_description": null, - "parent": "Church Person", + "parent": "Person", "parent_element_selector": null, "parent_fieldname": null, "parentfield": "steps", @@ -88,7 +88,7 @@ "offset_x": 0, "offset_y": 0, "ondemand_description": null, - "parent": "Church Person", + "parent": "Person", "parent_element_selector": null, "parent_fieldname": null, "parentfield": "steps", @@ -115,7 +115,7 @@ "offset_x": 0, "offset_y": 0, "ondemand_description": null, - "parent": "Church Person", + "parent": "Person", "parent_element_selector": null, "parent_fieldname": null, "parentfield": "steps", @@ -142,7 +142,7 @@ "offset_x": 0, "offset_y": 0, "ondemand_description": null, - "parent": "Church Person", + "parent": "Person", "parent_element_selector": null, "parent_fieldname": null, "parentfield": "steps", @@ -169,7 +169,7 @@ "offset_x": 0, "offset_y": 0, "ondemand_description": null, - "parent": "Church Person", + "parent": "Person", "parent_element_selector": null, "parent_fieldname": null, "parentfield": "steps", @@ -181,34 +181,34 @@ }, { "child_doctype": null, - "description": "You can define `Church Role`s that this person had been or is currently assigned.\nGo ahead and assign this person a 'Secretary' role starting today by clicking on the `Add Row` button below.", + "description": "You can define `Position`s that this person had been or is currently assigned.\nGo ahead and assign this person a 'Secretary' role starting today by clicking on the `Add Row` button below.", "element_selector": null, - "fieldname": "church_roles", + "fieldname": "positions", "fieldtype": "Table", "has_next_condition": 0, "hide_buttons": 0, "is_table_field": 0, - "label": "Church Roles", + "label": "Positions", "modal_trigger": 0, "next_form_tour": null, "next_on_click": 0, - "next_step_condition": "eval: doc.church_roles;", + "next_step_condition": "eval: doc.positions;", "offset_x": 0, "offset_y": 0, "ondemand_description": null, - "parent": "Church Person", + "parent": "Person", "parent_element_selector": null, "parent_fieldname": null, "parentfield": "steps", "parenttype": "Form Tour", "popover_element": 0, "position": "Top Center", - "title": "Church Roles", + "title": "Positions", "ui_tour": 0 }, { "child_doctype": null, - "description": "In this table (on the 'Family' tab) you can define relationships that this person has with other `Church Person`s. Additional `Church Person Relation Type`s can be defined in the drop-down list.\nLet's skip adding relationships for now.", + "description": "In this table (on the 'Family' tab) you can define relationships that this person has with other `Person`s. Additional `Person Relation Type`s can be defined in the drop-down list.\nLet's skip adding relationships for now.", "element_selector": null, "fieldname": "relationships", "fieldtype": "Table", @@ -223,7 +223,7 @@ "offset_x": 0, "offset_y": 0, "ondemand_description": null, - "parent": "Church Person", + "parent": "Person", "parent_element_selector": null, "parent_fieldname": null, "parentfield": "steps", @@ -234,7 +234,7 @@ "ui_tour": 0 } ], - "title": "Church Person", + "title": "Person", "track_steps": 0, "ui_tour": 0, "view_name": "Workspaces", @@ -410,11 +410,11 @@ "list_name": "List", "modified": "2025-09-28 22:47:37.075931", "module": "Desk", - "name": "Church Information", + "name": "Information", "new_document_form": 0, "page_name": null, "page_route": null, - "reference_doctype": "Church Information", + "reference_doctype": "Information", "report_name": "", "save_on_complete": 0, "steps": [ @@ -435,7 +435,7 @@ "offset_x": 0, "offset_y": 0, "ondemand_description": null, - "parent": "Church Information", + "parent": "Information", "parent_element_selector": null, "parent_fieldname": null, "parentfield": "steps", @@ -446,7 +446,7 @@ "ui_tour": 0 } ], - "title": "Church Information", + "title": "Information", "track_steps": 0, "ui_tour": 0, "view_name": "Workspaces", diff --git a/church/fixtures/module_onboarding.json b/church/fixtures/module_onboarding.json index 08f795e..66b4a64 100644 --- a/church/fixtures/module_onboarding.json +++ b/church/fixtures/module_onboarding.json @@ -25,7 +25,7 @@ "documentation_url": "https://github.com/meichthys/church", "is_complete": 0, "modified": "2025-09-30 21:21:52.088048", - "module": "Church Foundations", + "module": "Foundations", "name": "Church", "steps": [ { @@ -38,31 +38,31 @@ "parent": "Church", "parentfield": "steps", "parenttype": "Module Onboarding", - "step": "Church Information" + "step": "Information" }, { "parent": "Church", "parentfield": "steps", "parenttype": "Module Onboarding", - "step": "Church Person" + "step": "Person" }, { "parent": "Church", "parentfield": "steps", "parenttype": "Module Onboarding", - "step": "Church Family" + "step": "Family" }, { "parent": "Church", "parentfield": "steps", "parenttype": "Module Onboarding", - "step": "Church Event" + "step": "Function" }, { "parent": "Church", "parentfield": "steps", "parenttype": "Module Onboarding", - "step": "Church Prayer Request" + "step": "Prayer Request" } ], "subtitle": "People, Families, Events, Ministries, Collections, and more...", diff --git a/church/fixtures/onboarding_step.json b/church/fixtures/onboarding_step.json index eae1bb2..fb16011 100644 --- a/church/fixtures/onboarding_step.json +++ b/church/fixtures/onboarding_step.json @@ -1,22 +1,22 @@ [ { "action": "Create Entry", - "action_label": "Add a Church Family", + "action_label": "Add a Family", "callback_message": null, "callback_title": null, - "description": "Adding a `Church Family` allows you to track which `Church Person`s belong to specific families.", + "description": "Adding a `Family` allows you to track which `Person`s belong to specific families.", "docstatus": 0, "doctype": "Onboarding Step", "field": null, - "form_tour": "Church Family", + "form_tour": "Family", "intro_video_url": null, "is_complete": 0, "is_single": 0, "is_skipped": 0, "modified": "2025-09-18 00:37:57.629356", - "name": "Church Family", + "name": "Family", "path": null, - "reference_document": "Church Family", + "reference_document": "Family", "reference_report": null, "report_description": null, "report_reference_doctype": null, @@ -30,22 +30,22 @@ }, { "action": "Create Entry", - "action_label": "Add Church Person", + "action_label": "Add Person", "callback_message": null, "callback_title": null, - "description": "Adding `Church Person`s allows you to track the person's roles, attendance, donations, etc.", + "description": "Adding `Person`s allows you to track the person's roles, attendance, donations, etc.", "docstatus": 0, "doctype": "Onboarding Step", "field": null, - "form_tour": "Church Person", + "form_tour": "Person", "intro_video_url": null, "is_complete": 0, "is_single": 0, "is_skipped": 0, "modified": "2025-09-30 21:56:12.070093", - "name": "Church Person", + "name": "Person", "path": null, - "reference_document": "Church Person", + "reference_document": "Person", "reference_report": null, "report_description": null, "report_reference_doctype": null, @@ -88,10 +88,10 @@ }, { "action": "Create Entry", - "action_label": "Add a Church Event", + "action_label": "Add a Function", "callback_message": null, "callback_title": null, - "description": "Events can be used to track `Church Person` attendance and to link to `Church Collection`s", + "description": "Events can be used to track `Person` attendance and to link to `Collection`s", "docstatus": 0, "doctype": "Onboarding Step", "field": null, @@ -101,9 +101,9 @@ "is_single": 0, "is_skipped": 0, "modified": "2025-09-16 22:05:27.860375", - "name": "Church Event", + "name": "Function", "path": null, - "reference_document": "Church Event", + "reference_document": "Function", "reference_report": null, "report_description": null, "report_reference_doctype": null, @@ -130,9 +130,9 @@ "is_single": 0, "is_skipped": 0, "modified": "2025-09-13 01:21:56.200304", - "name": "Church Prayer Request", + "name": "Prayer Request", "path": null, - "reference_document": "Church Prayer Request", + "reference_document": "Prayer Request", "reference_report": null, "report_description": null, "report_reference_doctype": null, @@ -146,22 +146,22 @@ }, { "action": "Create Entry", - "action_label": "Add Church Information", + "action_label": "Add Information", "callback_message": null, "callback_title": null, - "description": "Church information is used across the application to populate parts of the church website, letterheads, reports, etc.\n\n⚠️ Only `Church Manager`s can edit `Church Information`.", + "description": "Church information is used across the application to populate parts of the church website, letterheads, reports, etc.\n\n⚠️ Only `Church Manager`s can edit `Information`.", "docstatus": 0, "doctype": "Onboarding Step", "field": null, - "form_tour": "Church Information", + "form_tour": "Information", "intro_video_url": null, "is_complete": 0, "is_single": 1, "is_skipped": 0, "modified": "2025-09-30 21:28:41.144848", - "name": "Church Information", + "name": "Information", "path": null, - "reference_document": "Church Information", + "reference_document": "Information", "reference_report": null, "report_description": null, "report_reference_doctype": null, diff --git a/church/fixtures/portal_menu_item.json b/church/fixtures/portal_menu_item.json index c8b0f21..a8d4dbe 100644 --- a/church/fixtures/portal_menu_item.json +++ b/church/fixtures/portal_menu_item.json @@ -8,7 +8,7 @@ "parent": "Portal Settings", "parentfield": "custom_menu", "parenttype": "Portal Settings", - "reference_doctype": "Church Prayer Request", + "reference_doctype": "Prayer Request", "role": "", "route": "prayer-request", "target": null, @@ -23,7 +23,7 @@ "parent": "Portal Settings", "parentfield": "custom_menu", "parenttype": "Portal Settings", - "reference_doctype": "Church Alms Request", + "reference_doctype": "Alms Request", "role": "", "route": "alms-request", "target": null, diff --git a/church/fixtures/web_page.json b/church/fixtures/web_page.json index c954b8e..d9003a0 100644 --- a/church/fixtures/web_page.json +++ b/church/fixtures/web_page.json @@ -15,13 +15,13 @@ "insert_style": 0, "javascript": null, "main_section": null, - "main_section_html": "{% set legal_name = frappe.db.get_value(\"Church Information\", \"Church Information\", \"legal_name\") %}\n{% if legal_name %}\n{% set information = frappe.get_doc(\"Church Information\") %}\n
\n
\n
\n
\n {{ information.legal_name }}\n {% if information.founding_date %}\n
\n Established: {{ information.founding_date }}\n {% endif %}\n
\n
\n

\n {{ information.about }}\n

\n
\n
\n
\n {% if information.mission_statement %}\n Mission Statement\n
\n \"{{ information.mission_statement }}\"\n {% endif %}\n
\n
\n
\n
\n
\n{% else %}\n
\n
\n

Welcome to Your Church Website

\n

\n Your new church website is almost ready!
\n To get started, please log in and configure your church information.
\n
\n The default login credentials are:
\n Username: Administrator
\n Password: admin
\n Be sure to change the password immediately!\n

\n \n Log In to Get Started\n \n
\n
\n{% endif %}\n", + "main_section_html": "{% set legal_name = frappe.db.get_value(\"Information\", \"Information\", \"legal_name\") %}\n{% if legal_name %}\n{% set information = frappe.get_doc(\"Information\") %}\n
\n
\n
\n
\n {{ information.legal_name }}\n {% if information.founding_date %}\n
\n Established: {{ information.founding_date }}\n {% endif %}\n
\n
\n

\n {{ information.about }}\n

\n
\n
\n
\n {% if information.mission_statement %}\n Mission Statement\n
\n \"{{ information.mission_statement }}\"\n {% endif %}\n
\n
\n
\n
\n
\n{% else %}\n
\n
\n

Welcome to Your Website

\n

\n Your new church website is almost ready!
\n To get started, please log in and configure your church information.
\n
\n The default login credentials are:
\n Username: Administrator
\n Password: admin
\n Be sure to change the password immediately!\n

\n \n Log In to Get Started\n \n
\n
\n{% endif %}\n", "main_section_md": "", "meta_description": null, "meta_image": null, "meta_title": null, "modified": "2026-03-02 00:41:04.380754", - "module": "Church Website", + "module": "Website", "name": "home", "page_blocks": [], "published": 1, @@ -50,13 +50,13 @@ "insert_style": 0, "javascript": null, "main_section": null, - "main_section_html": "
\n{% set belief_docs = frappe.get_list(\"Church Belief\", fields=[\"name\"], filters={\"publish\": 1}, ignore_permissions=True) %}\n{% for doc in belief_docs %}\n {% set belief = frappe.get_doc(\"Church Belief\", doc.name) %}\n
\n
\n
{{ belief.title }}
\n
\n

{{ belief.belief_statement }}

\n
\n
\n {% for row in belief.bible_references %} \n
{{ row.reference }}
\n {% endfor %} \n
\n
\n
\n{% endfor %} \n
", + "main_section_html": "
\n{% set belief_docs = frappe.get_list(\"Belief\", fields=[\"name\"], filters={\"publish\": 1}, ignore_permissions=True) %}\n{% for doc in belief_docs %}\n {% set belief = frappe.get_doc(\"Belief\", doc.name) %}\n
\n
\n
{{ belief.title }}
\n
\n

{{ belief.belief_statement }}

\n
\n
\n {% for row in belief.bible_references %} \n
{{ row.reference }}
\n {% endfor %} \n
\n
\n
\n{% endfor %} \n
", "main_section_md": "", "meta_description": null, "meta_image": null, "meta_title": null, "modified": "2026-03-02 00:23:14.196502", - "module": "Church Website", + "module": "Website", "name": "beliefs", "page_blocks": [], "published": 1, @@ -85,13 +85,13 @@ "insert_style": 0, "javascript": null, "main_section": null, - "main_section_html": "
\n{% set missionary_docs = frappe.get_list(\"Church Missionary\", fields=[\"name\"], filters={\"publish\": 1}, ignore_permissions=True) %} \n{% for doc in missionary_docs if not frappe.get_doc(\"Church Missionary\", doc.name).private %}\n {% set missionary = frappe.get_doc(\"Church Missionary\", doc.name) %}\n
\n
\n
\n \n {{ missionary.title }}\n
\n {% if missionary.agency %}\n ({{ missionary.agency }})\n {% endif %}\n
\n
\n {% if missionary.photo %} \n

\n \n

\n {% endif %}\n
\n
\n
\n {% if missionary.email %} \n {{ missionary.email }} \n {% endif %}\n {% set country_code = frappe.db.get_value(\"Country\", missionary.country, \"code\") %}\n {% if country_code %}\n \"{{\n {% endif %}\n {% if missionary.website %}\n {{ missionary.website }}\n {% endif %}\n
\n
\n
\n
\n{% endfor %} \n
", + "main_section_html": "
\n{% set missionary_docs = frappe.get_list(\"Missionary\", fields=[\"name\"], filters={\"publish\": 1}, ignore_permissions=True) %} \n{% for doc in missionary_docs if not frappe.get_doc(\"Missionary\", doc.name).private %}\n {% set missionary = frappe.get_doc(\"Missionary\", doc.name) %}\n
\n
\n
\n \n {{ missionary.title }}\n
\n {% if missionary.agency %}\n ({{ missionary.agency }})\n {% endif %}\n
\n
\n {% if missionary.photo %} \n

\n \n

\n {% endif %}\n
\n
\n
\n {% if missionary.email %} \n {{ missionary.email }} \n {% endif %}\n {% set country_code = frappe.db.get_value(\"Country\", missionary.country, \"code\") %}\n {% if country_code %}\n \"{{\n {% endif %}\n {% if missionary.website %}\n {{ missionary.website }}\n {% endif %}\n
\n
\n
\n
\n{% endfor %} \n
", "main_section_md": "", "meta_description": null, "meta_image": null, "meta_title": null, "modified": "2026-03-02 00:22:50.587239", - "module": "Church Website", + "module": "Website", "name": "missionaries", "page_blocks": [], "published": 1, diff --git a/church/church_foundations/__init__.py b/church/foundations/__init__.py similarity index 100% rename from church/church_foundations/__init__.py rename to church/foundations/__init__.py diff --git a/church/church_foundations/doctype/__init__.py b/church/foundations/doctype/__init__.py similarity index 100% rename from church/church_foundations/doctype/__init__.py rename to church/foundations/doctype/__init__.py diff --git a/church/church_foundations/doctype/church_belief/__init__.py b/church/foundations/doctype/belief/__init__.py similarity index 100% rename from church/church_foundations/doctype/church_belief/__init__.py rename to church/foundations/doctype/belief/__init__.py diff --git a/church/church_foundations/doctype/church_belief/church_belief.js b/church/foundations/doctype/belief/belief.js similarity index 89% rename from church/church_foundations/doctype/church_belief/church_belief.js rename to church/foundations/doctype/belief/belief.js index 28efb7f..a4fc9ed 100644 --- a/church/church_foundations/doctype/church_belief/church_belief.js +++ b/church/foundations/doctype/belief/belief.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -frappe.ui.form.on("Church Belief", { +frappe.ui.form.on("Belief", { refresh(frm) { //Add an 'intro' indicating if a belief is published to the website if(frm.doc.publish) { diff --git a/church/church_foundations/doctype/church_belief/church_belief.json b/church/foundations/doctype/belief/belief.json similarity index 94% rename from church/church_foundations/doctype/church_belief/church_belief.json rename to church/foundations/doctype/belief/belief.json index c5894a9..4336d83 100644 --- a/church/church_foundations/doctype/church_belief/church_belief.json +++ b/church/foundations/doctype/belief/belief.json @@ -37,7 +37,7 @@ "fieldname": "bible_references", "fieldtype": "Table", "label": "Bible References", - "options": "Church Belief Bible References" + "options": "Belief Bible References" }, { "default": "0", @@ -52,8 +52,8 @@ "links": [], "modified": "2026-02-19 00:45:58.469531", "modified_by": "Administrator", - "module": "Church Foundations", - "name": "Church Belief", + "module": "Foundations", + "name": "Belief", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_foundations/doctype/church_belief/church_belief.py b/church/foundations/doctype/belief/belief.py similarity index 83% rename from church/church_foundations/doctype/church_belief/church_belief.py rename to church/foundations/doctype/belief/belief.py index 8c93e7a..3579533 100644 --- a/church/church_foundations/doctype/church_belief/church_belief.py +++ b/church/foundations/doctype/belief/belief.py @@ -5,5 +5,5 @@ from frappe.website.website_generator import WebsiteGenerator -class ChurchBelief(WebsiteGenerator): +class Belief(WebsiteGenerator): pass diff --git a/church/foundations/doctype/belief/test_belief.py b/church/foundations/doctype/belief/test_belief.py new file mode 100644 index 0000000..e4be9e1 --- /dev/null +++ b/church/foundations/doctype/belief/test_belief.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestBelief(FrappeTestCase): + pass diff --git a/church/church_foundations/doctype/church_belief_bible_references/__init__.py b/church/foundations/doctype/belief_bible_references/__init__.py similarity index 100% rename from church/church_foundations/doctype/church_belief_bible_references/__init__.py rename to church/foundations/doctype/belief_bible_references/__init__.py diff --git a/church/church_foundations/doctype/church_belief_bible_references/church_belief_bible_references.json b/church/foundations/doctype/belief_bible_references/belief_bible_references.json similarity index 85% rename from church/church_foundations/doctype/church_belief_bible_references/church_belief_bible_references.json rename to church/foundations/doctype/belief_bible_references/belief_bible_references.json index 5a352f7..a9ed608 100644 --- a/church/church_foundations/doctype/church_belief_bible_references/church_belief_bible_references.json +++ b/church/foundations/doctype/belief_bible_references/belief_bible_references.json @@ -15,7 +15,7 @@ "fieldtype": "Link", "in_list_view": 1, "label": "Reference", - "options": "Church Bible Reference", + "options": "Bible Reference", "reqd": 1 } ], @@ -25,8 +25,8 @@ "links": [], "modified": "2025-11-18 23:55:23.069908", "modified_by": "Administrator", - "module": "Church Foundations", - "name": "Church Belief Bible References", + "module": "Foundations", + "name": "Belief Bible References", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/foundations/doctype/belief_bible_references/belief_bible_references.py b/church/foundations/doctype/belief_bible_references/belief_bible_references.py new file mode 100644 index 0000000..bfb4cbd --- /dev/null +++ b/church/foundations/doctype/belief_bible_references/belief_bible_references.py @@ -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 BeliefBibleReferences(Document): + pass diff --git a/church/church_foundations/doctype/church_information/__init__.py b/church/foundations/doctype/information/__init__.py similarity index 100% rename from church/church_foundations/doctype/church_information/__init__.py rename to church/foundations/doctype/information/__init__.py diff --git a/church/foundations/doctype/information/information.js b/church/foundations/doctype/information/information.js new file mode 100644 index 0000000..9ea2284 --- /dev/null +++ b/church/foundations/doctype/information/information.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Information", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_foundations/doctype/church_information/church_information.json b/church/foundations/doctype/information/information.json similarity index 94% rename from church/church_foundations/doctype/church_information/church_information.json rename to church/foundations/doctype/information/information.json index 3d01ae7..8e8c133 100644 --- a/church/church_foundations/doctype/church_information/church_information.json +++ b/church/foundations/doctype/information/information.json @@ -56,7 +56,7 @@ "fieldname": "default_bible_translation", "fieldtype": "Link", "label": "Default Bible Translation", - "options": "Church Bible Translation" + "options": "Bible Translation" } ], "grid_page_length": 50, @@ -65,8 +65,8 @@ "links": [], "modified": "2025-11-15 22:53:46.638825", "modified_by": "Administrator", - "module": "Church Foundations", - "name": "Church Information", + "module": "Foundations", + "name": "Information", "owner": "Administrator", "permissions": [ { diff --git a/church/foundations/doctype/information/information.py b/church/foundations/doctype/information/information.py new file mode 100644 index 0000000..bf90769 --- /dev/null +++ b/church/foundations/doctype/information/information.py @@ -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 Information(Document): + pass diff --git a/church/foundations/doctype/information/test_information.py b/church/foundations/doctype/information/test_information.py new file mode 100644 index 0000000..6380a2c --- /dev/null +++ b/church/foundations/doctype/information/test_information.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestInformation(FrappeTestCase): + pass diff --git a/church/church_foundations/module_onboarding/church/church.json b/church/foundations/module_onboarding/church/church.json similarity index 81% rename from church/church_foundations/module_onboarding/church/church.json rename to church/foundations/module_onboarding/church/church.json index 674818e..86d870b 100644 --- a/church/church_foundations/module_onboarding/church/church.json +++ b/church/foundations/module_onboarding/church/church.json @@ -18,7 +18,7 @@ "is_complete": 0, "modified": "2026-02-02 23:21:50.768671", "modified_by": "Administrator", - "module": "Church Foundations", + "module": "Foundations", "name": "Church", "owner": "Administrator", "steps": [ @@ -29,19 +29,19 @@ "step": "Email Configuration" }, { - "step": "Church Information" + "step": "Information" }, { - "step": "Church Person" + "step": "Person" }, { - "step": "Church Family" + "step": "Family" }, { - "step": "Church Event" + "step": "Function" }, { - "step": "Church Prayer Request" + "step": "Prayer Request" } ], "subtitle": "People, Families, Events, Ministries, Collections, and more...", diff --git a/church/church_foundations/onboarding_step/church_event/church_event.json b/church/foundations/onboarding_step/church_event/church_event.json similarity index 65% rename from church/church_foundations/onboarding_step/church_event/church_event.json rename to church/foundations/onboarding_step/church_event/church_event.json index ac3367e..341e2c7 100644 --- a/church/church_foundations/onboarding_step/church_event/church_event.json +++ b/church/foundations/onboarding_step/church_event/church_event.json @@ -1,8 +1,8 @@ { "action": "Create Entry", - "action_label": "Add a Church Event", + "action_label": "Add a Function", "creation": "2026-01-15 11:02:52.715557", - "description": "Events can be used to track `Church Person` attendance and to link to `Church Collection`s", + "description": "Events can be used to track `Person` attendance and to link to `Collection`s", "docstatus": 0, "doctype": "Onboarding Step", "idx": 0, @@ -11,9 +11,9 @@ "is_skipped": 0, "modified": "2025-09-16 22:05:27.860375", "modified_by": "Administrator", - "name": "Church Event", + "name": "Function", "owner": "Administrator", - "reference_document": "Church Event", + "reference_document": "Function", "show_form_tour": 0, "show_full_form": 0, "title": "Add upcoming church events.", diff --git a/church/church_foundations/onboarding_step/church_family/church_family.json b/church/foundations/onboarding_step/church_family/church_family.json similarity index 62% rename from church/church_foundations/onboarding_step/church_family/church_family.json rename to church/foundations/onboarding_step/church_family/church_family.json index df981eb..2598142 100644 --- a/church/church_foundations/onboarding_step/church_family/church_family.json +++ b/church/foundations/onboarding_step/church_family/church_family.json @@ -1,20 +1,20 @@ { "action": "Create Entry", - "action_label": "Add a Church Family", + "action_label": "Add a Family", "creation": "2026-01-15 11:02:52.691072", - "description": "Adding a `Church Family` allows you to track which `Church Person`s belong to specific families.", + "description": "Adding a `Family` allows you to track which `Person`s belong to specific families.", "docstatus": 0, "doctype": "Onboarding Step", - "form_tour": "Church Family", + "form_tour": "Family", "idx": 0, "is_complete": 0, "is_single": 0, "is_skipped": 0, "modified": "2025-09-18 00:37:57.629356", "modified_by": "Administrator", - "name": "Church Family", + "name": "Family", "owner": "Administrator", - "reference_document": "Church Family", + "reference_document": "Family", "show_form_tour": 1, "show_full_form": 0, "title": "Add families that are represented in your church.", diff --git a/church/church_foundations/onboarding_step/church_information/church_information.json b/church/foundations/onboarding_step/church_information/church_information.json similarity index 69% rename from church/church_foundations/onboarding_step/church_information/church_information.json rename to church/foundations/onboarding_step/church_information/church_information.json index 436e6cd..8a7fdf4 100644 --- a/church/church_foundations/onboarding_step/church_information/church_information.json +++ b/church/foundations/onboarding_step/church_information/church_information.json @@ -1,20 +1,20 @@ { "action": "Create Entry", - "action_label": "Add Church Information", + "action_label": "Add Information", "creation": "2026-01-15 11:02:52.730907", - "description": "Church information is used across the application to populate parts of the church website, letterheads, reports, etc.\n\n\u26a0\ufe0f Only `Church Manager`s can edit `Church Information`.", + "description": "Church information is used across the application to populate parts of the church website, letterheads, reports, etc.\n\n\u26a0\ufe0f Only `Church Manager`s can edit `Information`.", "docstatus": 0, "doctype": "Onboarding Step", - "form_tour": "Church Information", + "form_tour": "Information", "idx": 0, "is_complete": 0, "is_single": 1, "is_skipped": 0, "modified": "2025-09-30 21:28:41.144848", "modified_by": "Administrator", - "name": "Church Information", + "name": "Information", "owner": "Administrator", - "reference_document": "Church Information", + "reference_document": "Information", "show_form_tour": 1, "show_full_form": 1, "title": "Add your church information", diff --git a/church/church_foundations/onboarding_step/church_manager/church_manager.json b/church/foundations/onboarding_step/church_manager/church_manager.json similarity index 100% rename from church/church_foundations/onboarding_step/church_manager/church_manager.json rename to church/foundations/onboarding_step/church_manager/church_manager.json diff --git a/church/church_foundations/onboarding_step/church_person/church_person.json b/church/foundations/onboarding_step/church_person/church_person.json similarity index 62% rename from church/church_foundations/onboarding_step/church_person/church_person.json rename to church/foundations/onboarding_step/church_person/church_person.json index 42c00d9..be3a413 100644 --- a/church/church_foundations/onboarding_step/church_person/church_person.json +++ b/church/foundations/onboarding_step/church_person/church_person.json @@ -1,20 +1,20 @@ { "action": "Create Entry", - "action_label": "Add Church Person", + "action_label": "Add Person", "creation": "2026-01-15 11:02:52.699437", - "description": "Adding `Church Person`s allows you to track the person's roles, attendance, donations, etc.", + "description": "Adding `Person`s allows you to track the person's roles, attendance, donations, etc.", "docstatus": 0, "doctype": "Onboarding Step", - "form_tour": "Church Person", + "form_tour": "Person", "idx": 0, "is_complete": 0, "is_single": 0, "is_skipped": 0, "modified": "2025-09-30 21:56:12.070093", "modified_by": "Administrator", - "name": "Church Person", + "name": "Person", "owner": "Administrator", - "reference_document": "Church Person", + "reference_document": "Person", "show_form_tour": 1, "show_full_form": 1, "title": "Add people that attend your church.", diff --git a/church/church_foundations/onboarding_step/church_prayer_request/church_prayer_request.json b/church/foundations/onboarding_step/church_prayer_request/church_prayer_request.json similarity index 83% rename from church/church_foundations/onboarding_step/church_prayer_request/church_prayer_request.json rename to church/foundations/onboarding_step/church_prayer_request/church_prayer_request.json index 9868853..9a00048 100644 --- a/church/church_foundations/onboarding_step/church_prayer_request/church_prayer_request.json +++ b/church/foundations/onboarding_step/church_prayer_request/church_prayer_request.json @@ -10,9 +10,9 @@ "is_skipped": 0, "modified": "2025-09-13 01:21:56.200304", "modified_by": "Administrator", - "name": "Church Prayer Request", + "name": "Prayer Request", "owner": "Administrator", - "reference_document": "Church Prayer Request", + "reference_document": "Prayer Request", "show_form_tour": 0, "show_full_form": 1, "title": "Add prayer requests.", diff --git a/church/church_foundations/onboarding_step/email_configuration/email_configuration.json b/church/foundations/onboarding_step/email_configuration/email_configuration.json similarity index 100% rename from church/church_foundations/onboarding_step/email_configuration/email_configuration.json rename to church/foundations/onboarding_step/email_configuration/email_configuration.json diff --git a/church/church_foundations/workspace/foundations/foundations.json b/church/foundations/workspace/foundations/foundations.json similarity index 91% rename from church/church_foundations/workspace/foundations/foundations.json rename to church/foundations/workspace/foundations/foundations.json index ad5be24..afc50ef 100644 --- a/church/church_foundations/workspace/foundations/foundations.json +++ b/church/foundations/workspace/foundations/foundations.json @@ -25,9 +25,9 @@ { "hidden": 0, "is_query_report": 0, - "label": "Church Information", + "label": "Information", "link_count": 0, - "link_to": "Church Information", + "link_to": "Information", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -37,7 +37,7 @@ "is_query_report": 0, "label": "Beliefs", "link_count": 0, - "link_to": "Church Belief", + "link_to": "Belief", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -45,7 +45,7 @@ ], "modified": "2026-03-01 23:53:34.024070", "modified_by": "Administrator", - "module": "Church Foundations", + "module": "Foundations", "name": "Foundations", "number_cards": [], "owner": "Administrator", diff --git a/church/church_foundations/workspace/getting_started/getting_started.json b/church/foundations/workspace/getting_started/getting_started.json similarity index 70% rename from church/church_foundations/workspace/getting_started/getting_started.json rename to church/foundations/workspace/getting_started/getting_started.json index edccc3f..a17c82d 100644 --- a/church/church_foundations/workspace/getting_started/getting_started.json +++ b/church/foundations/workspace/getting_started/getting_started.json @@ -1,6 +1,6 @@ { "charts": [], - "content": "[{\"id\":\"jBOqYlrUKi\",\"type\":\"header\",\"data\":{\"text\":\"Getting Started\",\"col\":12}},{\"id\":\"G96Ym-p_M3\",\"type\":\"onboarding\",\"data\":{\"onboarding_name\":\"Church\",\"col\":12}},{\"id\":\"-4rZfnKx88\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcacTerminology\",\"col\":12}},{\"id\":\"DbBYvDiV8I\",\"type\":\"paragraph\",\"data\":{\"text\":\"- Workspace: Each menu item to the left is called a 'Workspace'. Workspaces show the Documents, Reports, Charts, and links to features in a given module.
- Module: A group of related functions in the app (i.e, Finances, Communications, Missions, etc).
- Document: Data that describes an object (i.e. Song, Fund, Person, etc). Documents are composed of 'Fields', are created via 'Forms', and can be viewed in a Document 'List' or 'Report'.
    - Name: The title given to a document. Some documents may have a number after the name to prevent documents from having the same name (document names must be unique).
    - State: When a Document is created, it can be in various states:
        - Not Saved: A new document is in this state until it is saved. No data is retained until the document is saved.
        - Draft: The document has not been submitted yet. Submittable documents will be in the 'draft' state after they are saved and before they are submitted. In this state the document can still be modified.
        - Submitted: A finalized document which cannot be edited unless it is cancelled and amended.
        - Cancelled: A document that has been cancelled (as opposed to deleted). Cancelled documents remain in the system for reference, and can be amended and re-submitted.
        - Amended: If a cancelled document needs to be changed, it can be amended. This will create a new document which will be linked to the original (cancelled) document.
- Fields: Pieces of data that make up a document (i.e. Name, Age, etc). Fields with a red * are mandatory.
- Form: A way to enter data into the system. A form consists of any number of fields, that (when saved) create a document.
- List
: A view that shows documents in a vertical layout. You can view a list of any type of document by typing `<document name> List` in the search bar at the top of the page.
- Report: A view that shows documents in an easy-to-filter view. Every column can be filtered individually. Additional filters and groupings can be added to easily retrieve a subset of documents.\",\"col\":12}},{\"id\":\"Yx5-uyqasy\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcccGeneral App Tips\",\"col\":12}},{\"id\":\"oyG93LCEUd\",\"type\":\"paragraph\",\"data\":{\"text\":\"The general layout of the application is the same for most modules & documents. Once you learn how to interact with the system in one module, it will be almost identical in other modules. Some tips that will work across the application are:\",\"col\":12}},{\"id\":\"d9OEtT2hpG\",\"type\":\"paragraph\",\"data\":{\"text\":\"Awesome Bar (keyboard shortcut of `ctrl-g`)
The search bar at the top of the page is called the `Awesome Bar` because it can be used for many purposes:
\u2795 Creating a new document: (i.e. `New Church Person` to add a new church person into the app)
\ud83d\udccbListing all documents of a specific type: (i.e. `Church Person List` to show a list of existing church people)
\ud83d\udcc4Report of a specific document type: (i.e. `Church Person Report` \\nto show a filter-able and group-able report containing church people)
\ud83d\udd0dFind an individual document: (i.e. `Marjorie May` to search for this person. Most documents are searchable this way)
\",\"col\":12}},{\"id\":\"MJLiY1t4dT\",\"type\":\"paragraph\",\"data\":{\"text\":\"Navigation
To navigate the system you can use the following:
\u2754Look for the 'question mark in a circle' icon. Clicking this icon will take you to the documentation relevant for the field or document you are working on.
\u2b05\ufe0f The sidebar items on the left will take you to a workspace for the given module
\u2196\ufe0f Clicking on the icon on the top left will take you back to the default workspace page.
\u2197\ufe0f Using the search bar, you can navigate to almost any page in the app.
\",\"col\":12}},{\"id\":\"wDz7rjHAKG\",\"type\":\"paragraph\",\"data\":{\"text\":\"Keyboard Shortcuts
After using the app for a while, keyboard shortcuts can help speed up your workflow significantly. To view a list of keyboard shortcuts, click the `Help > Keyboard Shortcuts` at the top right of the page. Some common shortcuts that may be useful are:
\ud83d\udcbe `ctrl-s` Saves a loaded document/form
\ud83d\udccd`ctrl-j` Locates a specific field in a form
\ud83d\udd0d`ctrl-g` Focuses the AwesomeBar for quick access to almost any action in the app.
\ud83d\udd03`ctrl-shift-r` Reloads the page - Useful if something didn't seem to load correctly.
\",\"col\":12}}]", + "content": "[{\"id\":\"jBOqYlrUKi\",\"type\":\"header\",\"data\":{\"text\":\"Getting Started\",\"col\":12}},{\"id\":\"G96Ym-p_M3\",\"type\":\"onboarding\",\"data\":{\"onboarding_name\":\"Church\",\"col\":12}},{\"id\":\"-4rZfnKx88\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcacTerminology\",\"col\":12}},{\"id\":\"DbBYvDiV8I\",\"type\":\"paragraph\",\"data\":{\"text\":\"- Workspace: Each menu item to the left is called a 'Workspace'. Workspaces show the Documents, Reports, Charts, and links to features in a given module.
- Module: A group of related functions in the app (i.e, Finances, Communications, Missions, etc).
- Document: Data that describes an object (i.e. Song, Fund, Person, etc). Documents are composed of 'Fields', are created via 'Forms', and can be viewed in a Document 'List' or 'Report'.
    - Name: The title given to a document. Some documents may have a number after the name to prevent documents from having the same name (document names must be unique).
    - State: When a Document is created, it can be in various states:
        - Not Saved: A new document is in this state until it is saved. No data is retained until the document is saved.
        - Draft: The document has not been submitted yet. Submittable documents will be in the 'draft' state after they are saved and before they are submitted. In this state the document can still be modified.
        - Submitted: A finalized document which cannot be edited unless it is cancelled and amended.
        - Cancelled: A document that has been cancelled (as opposed to deleted). Cancelled documents remain in the system for reference, and can be amended and re-submitted.
        - Amended: If a cancelled document needs to be changed, it can be amended. This will create a new document which will be linked to the original (cancelled) document.
- Fields: Pieces of data that make up a document (i.e. Name, Age, etc). Fields with a red * are mandatory.
- Form: A way to enter data into the system. A form consists of any number of fields, that (when saved) create a document.
- List
: A view that shows documents in a vertical layout. You can view a list of any type of document by typing `<document name> List` in the search bar at the top of the page.
- Report: A view that shows documents in an easy-to-filter view. Every column can be filtered individually. Additional filters and groupings can be added to easily retrieve a subset of documents.\",\"col\":12}},{\"id\":\"Yx5-uyqasy\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcccGeneral App Tips\",\"col\":12}},{\"id\":\"oyG93LCEUd\",\"type\":\"paragraph\",\"data\":{\"text\":\"The general layout of the application is the same for most modules & documents. Once you learn how to interact with the system in one module, it will be almost identical in other modules. Some tips that will work across the application are:\",\"col\":12}},{\"id\":\"d9OEtT2hpG\",\"type\":\"paragraph\",\"data\":{\"text\":\"Awesome Bar (keyboard shortcut of `ctrl-g`)
The search bar at the top of the page is called the `Awesome Bar` because it can be used for many purposes:
\u2795 Creating a new document: (i.e. `New Person` to add a new church person into the app)
\ud83d\udccbListing all documents of a specific type: (i.e. `Person List` to show a list of existing church people)
\ud83d\udcc4Report of a specific document type: (i.e. `Person Report` \\nto show a filter-able and group-able report containing church people)
\ud83d\udd0dFind an individual document: (i.e. `Marjorie May` to search for this person. Most documents are searchable this way)
\",\"col\":12}},{\"id\":\"MJLiY1t4dT\",\"type\":\"paragraph\",\"data\":{\"text\":\"Navigation
To navigate the system you can use the following:
\u2754Look for the 'question mark in a circle' icon. Clicking this icon will take you to the documentation relevant for the field or document you are working on.
\u2b05\ufe0f The sidebar items on the left will take you to a workspace for the given module
\u2196\ufe0f Clicking on the icon on the top left will take you back to the default workspace page.
\u2197\ufe0f Using the search bar, you can navigate to almost any page in the app.
\",\"col\":12}},{\"id\":\"wDz7rjHAKG\",\"type\":\"paragraph\",\"data\":{\"text\":\"Keyboard Shortcuts
After using the app for a while, keyboard shortcuts can help speed up your workflow significantly. To view a list of keyboard shortcuts, click the `Help > Keyboard Shortcuts` at the top right of the page. Some common shortcuts that may be useful are:
\ud83d\udcbe `ctrl-s` Saves a loaded document/form
\ud83d\udccd`ctrl-j` Locates a specific field in a form
\ud83d\udd0d`ctrl-g` Focuses the AwesomeBar for quick access to almost any action in the app.
\ud83d\udd03`ctrl-shift-r` Reloads the page - Useful if something didn't seem to load correctly.
\",\"col\":12}}]", "creation": "2025-10-20 23:30:01.238945", "custom_blocks": [], "docstatus": 0, @@ -15,7 +15,7 @@ "links": [], "modified": "2026-03-01 23:53:33.814564", "modified_by": "Administrator", - "module": "Church Foundations", + "module": "Foundations", "name": "Getting Started", "number_cards": [], "owner": "Administrator", diff --git a/church/church_foundations/workspace/manual:_foundations/manual:_foundations.json b/church/foundations/workspace/manual:_foundations/manual:_foundations.json similarity index 53% rename from church/church_foundations/workspace/manual:_foundations/manual:_foundations.json rename to church/foundations/workspace/manual:_foundations/manual:_foundations.json index 6c4bfeb..b87b68d 100644 --- a/church/church_foundations/workspace/manual:_foundations/manual:_foundations.json +++ b/church/foundations/workspace/manual:_foundations/manual:_foundations.json @@ -1,6 +1,6 @@ { "charts": [], - "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcc3Foundations Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The foundations module contains features related to founding and core beliefs/principles of the church.\",\"col\":12}},{\"id\":\"gWj0UvVJC8\",\"type\":\"paragraph\",\"data\":{\"text\":\"\u2139\ufe0fInformation\",\"col\":12}},{\"id\":\"on10zXJdTa\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Church Information page contains foundational information for the church.\",\"col\":12}},{\"id\":\"i1lPTPnBNf\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding church information, note the following:
- This information may be displayed on the public website (i.e in the footer, or on the 'about' page).\",\"col\":12}},{\"id\":\"w8oEjl0tNc\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcd4Beliefs\",\"col\":12}},{\"id\":\"rx8sNKF0oc\",\"type\":\"paragraph\",\"data\":{\"text\":\"Beliefs are the foundational principles the church stands for.\",\"col\":12}},{\"id\":\"nVhOr1yDL4\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding church beliefs, note the following:
- For each belief, supporting Bible references can be added.\",\"col\":12}}]", + "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcc3Foundations Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The foundations module contains features related to founding and core beliefs/principles of the church.\",\"col\":12}},{\"id\":\"gWj0UvVJC8\",\"type\":\"paragraph\",\"data\":{\"text\":\"\u2139\ufe0fInformation\",\"col\":12}},{\"id\":\"on10zXJdTa\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Information page contains foundational information for the church.\",\"col\":12}},{\"id\":\"i1lPTPnBNf\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding church information, note the following:
- This information may be displayed on the public website (i.e in the footer, or on the 'about' page).\",\"col\":12}},{\"id\":\"w8oEjl0tNc\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcd4Beliefs\",\"col\":12}},{\"id\":\"rx8sNKF0oc\",\"type\":\"paragraph\",\"data\":{\"text\":\"Beliefs are the foundational principles the church stands for.\",\"col\":12}},{\"id\":\"nVhOr1yDL4\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding church beliefs, note the following:
- For each belief, supporting Bible references can be added.\",\"col\":12}}]", "creation": "2025-10-26 22:35:59.512658", "custom_blocks": [], "docstatus": 0, @@ -15,7 +15,7 @@ "links": [], "modified": "2026-03-01 23:53:34.041257", "modified_by": "Administrator", - "module": "Church Foundations", + "module": "Foundations", "name": "Manual: Foundations", "number_cards": [], "owner": "Administrator", diff --git a/church/church_foundations/workspace/manual:_website/manual:_website.json b/church/foundations/workspace/manual:_website/manual:_website.json similarity index 94% rename from church/church_foundations/workspace/manual:_website/manual:_website.json rename to church/foundations/workspace/manual:_website/manual:_website.json index 8cfed23..cd1d057 100644 --- a/church/church_foundations/workspace/manual:_website/manual:_website.json +++ b/church/foundations/workspace/manual:_website/manual:_website.json @@ -1,6 +1,6 @@ { "charts": [], - "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83c\udf10Website Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The website module consists of two main features: a public website, and a user portal.\",\"col\":12}},{\"id\":\"kHbqzTGDhX\",\"type\":\"paragraph\",\"data\":{\"text\":\"\u26a0\ufe0f The website and portal 'features' have not been fully developed but the features are on the roadmap.\",\"col\":12}},{\"id\":\"fAFxFk8rny\",\"type\":\"header\",\"data\":{\"text\":\"\ud83c\udf0eWebsite\",\"col\":12}},{\"id\":\"WCW6FzkHwB\",\"type\":\"paragraph\",\"data\":{\"text\":\"The public facing website is accessible by anyone and can be dynamically updated based on information in the Church App (i.e. Beliefs, Missionaries, Ministries, etc).
User accounts with \\\"Church Manager\\\" permissions can modify the website.
No user account is required to view the website - anyone with an internet connection and a web browser can view the public website.
\",\"col\":12}},{\"id\":\"nZdduTPzRH\",\"type\":\"header\",\"data\":{\"text\":\"\ud83d\udc64User Portal\",\"col\":12}},{\"id\":\"8qBfIl0adi\",\"type\":\"paragraph\",\"data\":{\"text\":\"The user portal requires login credentials and provides users a personalized interface for accessing church information (i.e. Personal Profile, Prayer Requests, Alms Requests, etc).
Portal users cannot access all information in the Church App, they can only access information related to their 'Church Person', or information shared with them (i.e. non-private prayer requests).\",\"col\":12}}]", + "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83c\udf10Website Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The website module consists of two main features: a public website, and a user portal.\",\"col\":12}},{\"id\":\"kHbqzTGDhX\",\"type\":\"paragraph\",\"data\":{\"text\":\"\u26a0\ufe0f The website and portal 'features' have not been fully developed but the features are on the roadmap.\",\"col\":12}},{\"id\":\"fAFxFk8rny\",\"type\":\"header\",\"data\":{\"text\":\"\ud83c\udf0eWebsite\",\"col\":12}},{\"id\":\"WCW6FzkHwB\",\"type\":\"paragraph\",\"data\":{\"text\":\"The public facing website is accessible by anyone and can be dynamically updated based on information in the Church App (i.e. Beliefs, Missionaries, Ministries, etc).
User accounts with \\\"Church Manager\\\" permissions can modify the website.
No user account is required to view the website - anyone with an internet connection and a web browser can view the public website.
\",\"col\":12}},{\"id\":\"nZdduTPzRH\",\"type\":\"header\",\"data\":{\"text\":\"\ud83d\udc64User Portal\",\"col\":12}},{\"id\":\"8qBfIl0adi\",\"type\":\"paragraph\",\"data\":{\"text\":\"The user portal requires login credentials and provides users a personalized interface for accessing church information (i.e. Personal Profile, Prayer Requests, Alms Requests, etc).
Portal users cannot access all information in the Church App, they can only access information related to their 'Person', or information shared with them (i.e. non-private prayer requests).\",\"col\":12}}]", "creation": "2025-10-26 22:57:00.373845", "custom_blocks": [], "docstatus": 0, @@ -15,7 +15,7 @@ "links": [], "modified": "2026-03-01 23:53:34.287867", "modified_by": "Administrator", - "module": "Church Foundations", + "module": "Foundations", "name": "Manual: Website", "number_cards": [], "owner": "Administrator", diff --git a/church/church_foundations/workspace/support/support.json b/church/foundations/workspace/support/support.json similarity index 98% rename from church/church_foundations/workspace/support/support.json rename to church/foundations/workspace/support/support.json index 4602a5e..8cb8a70 100644 --- a/church/church_foundations/workspace/support/support.json +++ b/church/foundations/workspace/support/support.json @@ -15,7 +15,7 @@ "links": [], "modified": "2026-03-01 23:53:33.847485", "modified_by": "Administrator", - "module": "Church Foundations", + "module": "Foundations", "name": "Support", "number_cards": [], "owner": "Administrator", diff --git a/church/church_foundations/workspace/welcome/welcome.json b/church/foundations/workspace/welcome/welcome.json similarity index 99% rename from church/church_foundations/workspace/welcome/welcome.json rename to church/foundations/workspace/welcome/welcome.json index 21370a4..28c3df0 100644 --- a/church/church_foundations/workspace/welcome/welcome.json +++ b/church/foundations/workspace/welcome/welcome.json @@ -20,7 +20,7 @@ "links": [], "modified": "2026-03-01 23:53:33.749953", "modified_by": "Administrator", - "module": "Church Foundations", + "module": "Foundations", "name": "Welcome", "number_cards": [], "owner": "Administrator", diff --git a/church/hooks.py b/church/hooks.py index eec8185..cf9337a 100644 --- a/church/hooks.py +++ b/church/hooks.py @@ -14,13 +14,13 @@ website_context = { fixtures = [ { - "dt": "Church Bible Book", + "dt": "Bible Book", }, { - "dt": "Church Bible Translation", + "dt": "Bible Translation", }, { - "dt": "Church Event Attendance Type", + "dt": "Event Attendance Type", "filters": [ [ "type", @@ -35,7 +35,7 @@ fixtures = [ ], }, { - "dt": "Church Event Type", + "dt": "Event Type", "filters": [ [ "type", @@ -51,9 +51,9 @@ fixtures = [ ] ], }, - # `Church Fund` fixtures are manually created since we don't want to export test data + # `Fund` fixtures are manually created since we don't want to export test data { - "dt": "Church Missionary Support Frequency", + "dt": "Missionary Support Frequency", "filters": [ [ "frequency", @@ -70,7 +70,7 @@ fixtures = [ ], }, { - "dt": "Church Payment Type", + "dt": "Payment Type", "filters": [ [ "type", @@ -83,7 +83,7 @@ fixtures = [ ], }, { - "dt": "Church Person Relation Type", + "dt": "Person Relation Type", "filters": [ [ "relation_type", @@ -118,7 +118,7 @@ fixtures = [ ], }, { - "dt": "Church Member Status", + "dt": "Member Status", "filters": [ [ "status", @@ -131,7 +131,7 @@ fixtures = [ ], }, { - "dt": "Church Prayer Request Status", + "dt": "Prayer Request Status", "filters": [ [ "status", @@ -145,7 +145,7 @@ fixtures = [ ], }, { - "dt": "Church Prayer Request Type", + "dt": "Prayer Request Type", "filters": [ [ "type", @@ -160,7 +160,7 @@ fixtures = [ ], }, { - "dt": "Church Role Type", + "dt": "Role Type", "filters": [ [ "role", @@ -237,6 +237,7 @@ fixtures = [ # app_include_css = "/assets/church/css/church.css" app_include_js = [ "/assets/church/js/help_icon_on_form.js", + "/assets/church/js/church_utils.js", ] # include js, css files in header of web template diff --git a/church/church_ministries/__init__.py b/church/ministries/__init__.py similarity index 100% rename from church/church_ministries/__init__.py rename to church/ministries/__init__.py diff --git a/church/church_ministries/doctype/__init__.py b/church/ministries/doctype/__init__.py similarity index 100% rename from church/church_ministries/doctype/__init__.py rename to church/ministries/doctype/__init__.py diff --git a/church/church_ministries/doctype/church_event/__init__.py b/church/ministries/doctype/event_attendance/__init__.py similarity index 100% rename from church/church_ministries/doctype/church_event/__init__.py rename to church/ministries/doctype/event_attendance/__init__.py diff --git a/church/church_ministries/doctype/church_event_attendance/church_event_attendance.json b/church/ministries/doctype/event_attendance/event_attendance.json similarity index 81% rename from church/church_ministries/doctype/church_event_attendance/church_event_attendance.json rename to church/ministries/doctype/event_attendance/event_attendance.json index 72a9785..e0314a1 100644 --- a/church/church_ministries/doctype/church_event_attendance/church_event_attendance.json +++ b/church/ministries/doctype/event_attendance/event_attendance.json @@ -2,7 +2,7 @@ "actions": [], "allow_rename": 1, "creation": "2025-09-01 00:29:32.386192", - "description": "'Church Person's who attended a 'Church Event'", + "description": "'Person's who attended a 'Function'", "doctype": "DocType", "documentation": "/app/manual%3A-ministries", "editable_grid": 1, @@ -19,7 +19,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Person", - "options": "Church Person", + "options": "Person", "reqd": 1 }, { @@ -29,7 +29,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Attendance Type", - "options": "Church Event Attendance Type", + "options": "Event Attendance Type", "reqd": 1 } ], @@ -39,8 +39,8 @@ "links": [], "modified": "2025-11-13 23:59:23.559850", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event Attendance", + "module": "Ministries", + "name": "Event Attendance", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/ministries/doctype/event_attendance/event_attendance.py b/church/ministries/doctype/event_attendance/event_attendance.py new file mode 100644 index 0000000..97abe91 --- /dev/null +++ b/church/ministries/doctype/event_attendance/event_attendance.py @@ -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 EventAttendance(Document): + pass diff --git a/church/church_ministries/doctype/church_event_attendance/__init__.py b/church/ministries/doctype/event_attendance_type/__init__.py similarity index 100% rename from church/church_ministries/doctype/church_event_attendance/__init__.py rename to church/ministries/doctype/event_attendance_type/__init__.py diff --git a/church/ministries/doctype/event_attendance_type/event_attendance_type.js b/church/ministries/doctype/event_attendance_type/event_attendance_type.js new file mode 100644 index 0000000..024a435 --- /dev/null +++ b/church/ministries/doctype/event_attendance_type/event_attendance_type.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Event Attendance Type", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.json b/church/ministries/doctype/event_attendance_type/event_attendance_type.json similarity index 87% rename from church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.json rename to church/ministries/doctype/event_attendance_type/event_attendance_type.json index efbeece..0e98c85 100644 --- a/church/church_ministries/doctype/church_event_attendance_type/church_event_attendance_type.json +++ b/church/ministries/doctype/event_attendance_type/event_attendance_type.json @@ -2,7 +2,7 @@ "actions": [], "autoname": "format:{type}", "creation": "2025-09-01 00:33:34.102307", - "description": "Type of `Church Event Attendance` (i.e. Confirmed, Assumed, Unknown, Absent etc.)", + "description": "Type of `Event Attendance` (i.e. Confirmed, Assumed, Unknown, Absent etc.)", "doctype": "DocType", "documentation": "/app/manual%3A-ministries", "engine": "InnoDB", @@ -32,15 +32,15 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Event", + "link_doctype": "Function", "link_fieldname": "attendance_type", "table_fieldname": "attendance" } ], "modified": "2025-11-13 23:59:23.271613", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event Attendance Type", + "module": "Ministries", + "name": "Event Attendance Type", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/ministries/doctype/event_attendance_type/event_attendance_type.py b/church/ministries/doctype/event_attendance_type/event_attendance_type.py new file mode 100644 index 0000000..fddb903 --- /dev/null +++ b/church/ministries/doctype/event_attendance_type/event_attendance_type.py @@ -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 EventAttendanceType(Document): + pass diff --git a/church/ministries/doctype/event_attendance_type/test_event_attendance_type.py b/church/ministries/doctype/event_attendance_type/test_event_attendance_type.py new file mode 100644 index 0000000..e54a256 --- /dev/null +++ b/church/ministries/doctype/event_attendance_type/test_event_attendance_type.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestEventAttendanceType(FrappeTestCase): + pass diff --git a/church/church_ministries/doctype/church_event_attendance_type/__init__.py b/church/ministries/doctype/event_schedule/__init__.py similarity index 100% rename from church/church_ministries/doctype/church_event_attendance_type/__init__.py rename to church/ministries/doctype/event_schedule/__init__.py diff --git a/church/church_ministries/doctype/church_event_schedule/church_event_schedule.json b/church/ministries/doctype/event_schedule/event_schedule.json similarity index 96% rename from church/church_ministries/doctype/church_event_schedule/church_event_schedule.json rename to church/ministries/doctype/event_schedule/event_schedule.json index faed36a..af397c0 100644 --- a/church/church_ministries/doctype/church_event_schedule/church_event_schedule.json +++ b/church/ministries/doctype/event_schedule/event_schedule.json @@ -69,8 +69,8 @@ "links": [], "modified": "2025-11-13 23:59:23.169607", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event Schedule", + "module": "Ministries", + "name": "Event Schedule", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/ministries/doctype/event_schedule/event_schedule.py b/church/ministries/doctype/event_schedule/event_schedule.py new file mode 100644 index 0000000..4b6cf98 --- /dev/null +++ b/church/ministries/doctype/event_schedule/event_schedule.py @@ -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 EventSchedule(Document): + pass diff --git a/church/church_ministries/doctype/church_event_schedule/__init__.py b/church/ministries/doctype/event_type/__init__.py similarity index 100% rename from church/church_ministries/doctype/church_event_schedule/__init__.py rename to church/ministries/doctype/event_type/__init__.py diff --git a/church/ministries/doctype/event_type/event_type.js b/church/ministries/doctype/event_type/event_type.js new file mode 100644 index 0000000..2e0cfa5 --- /dev/null +++ b/church/ministries/doctype/event_type/event_type.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Event Type", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_ministries/doctype/church_event_type/church_event_type.json b/church/ministries/doctype/event_type/event_type.json similarity index 93% rename from church/church_ministries/doctype/church_event_type/church_event_type.json rename to church/ministries/doctype/event_type/event_type.json index 86c7152..d7cb822 100644 --- a/church/church_ministries/doctype/church_event_type/church_event_type.json +++ b/church/ministries/doctype/event_type/event_type.json @@ -40,7 +40,7 @@ "fieldname": "template_event", "fieldtype": "Link", "label": "Template Event", - "options": "Church Event" + "options": "Function" }, { "fieldname": "section_break_pepr", @@ -51,14 +51,14 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Event", + "link_doctype": "Function", "link_fieldname": "type" } ], "modified": "2025-11-15 22:57:02.207658", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event Type", + "module": "Ministries", + "name": "Event Type", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/ministries/doctype/event_type/event_type.py b/church/ministries/doctype/event_type/event_type.py new file mode 100644 index 0000000..80eb6f0 --- /dev/null +++ b/church/ministries/doctype/event_type/event_type.py @@ -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 EventType(Document): + pass diff --git a/church/ministries/doctype/event_type/test_event_type.py b/church/ministries/doctype/event_type/test_event_type.py new file mode 100644 index 0000000..6c6b5d4 --- /dev/null +++ b/church/ministries/doctype/event_type/test_event_type.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestEventType(FrappeTestCase): + pass diff --git a/church/church_ministries/doctype/church_event_type/__init__.py b/church/ministries/doctype/function/__init__.py similarity index 100% rename from church/church_ministries/doctype/church_event_type/__init__.py rename to church/ministries/doctype/function/__init__.py diff --git a/church/church_ministries/doctype/church_event/church_event.js b/church/ministries/doctype/function/function.js similarity index 86% rename from church/church_ministries/doctype/church_event/church_event.js rename to church/ministries/doctype/function/function.js index 14718ff..36c87e8 100644 --- a/church/church_ministries/doctype/church_event/church_event.js +++ b/church/ministries/doctype/function/function.js @@ -2,7 +2,7 @@ // For license information, please see license.txt -frappe.ui.form.on('Church Event', { +frappe.ui.form.on('Function', { before_save(frm) { // Update Attendance Total when saving // Only include the number of 'Confirmed' and 'Assumed' attendees @@ -19,12 +19,12 @@ frappe.ui.form.on('Church Event', { // Add template-fill functionality if we have a template specified and this is a new form if (!frm.is_new() || !frm.doc.type) return; // Check if the selected type has a template - frappe.db.get_value('Church Event Type', frm.doc.type, 'template_event').then(r => { + frappe.db.get_value('Event Type', frm.doc.type, 'template_event').then(r => { if (!r.message?.template_event) return; // Add Fill from Template` button if template exists frm.add_custom_button(__('Fill from Template'), function() { frappe.call({ - method: 'church.church_ministries.doctype.church_event.church_event.apply_template', + method: 'church.ministries.doctype.function.function.apply_template', args: { source_name: r.message.template_event, target_doc: frm.doc diff --git a/church/church_ministries/doctype/church_event/church_event.json b/church/ministries/doctype/function/function.json similarity index 93% rename from church/church_ministries/doctype/church_event/church_event.json rename to church/ministries/doctype/function/function.json index 16c789c..edb02d5 100644 --- a/church/church_ministries/doctype/church_event/church_event.json +++ b/church/ministries/doctype/function/function.json @@ -51,7 +51,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Type", - "options": "Church Event Type", + "options": "Event Type", "reqd": 1, "search_index": 1 }, @@ -108,11 +108,11 @@ "fieldtype": "Section Break" }, { - "description": "'Church Person's who attended this event.", + "description": "'Person's who attended this event.", "fieldname": "attendance", "fieldtype": "Table", "label": "Attendance", - "options": "Church Event Attendance" + "options": "Event Attendance" }, { "description": "Includes `Confirmed`, `Assumed` attendance.", @@ -129,7 +129,7 @@ "fieldname": "schedule", "fieldtype": "Table", "label": "Schedule", - "options": "Church Event Schedule" + "options": "Event Schedule" } ], "grid_page_length": 50, @@ -137,8 +137,8 @@ "links": [], "modified": "2025-11-15 22:56:41.992819", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event", + "module": "Ministries", + "name": "Function", "naming_rule": "By script", "owner": "Administrator", "permissions": [ diff --git a/church/church_ministries/doctype/church_event/church_event.py b/church/ministries/doctype/function/function.py similarity index 86% rename from church/church_ministries/doctype/church_event/church_event.py rename to church/ministries/doctype/function/function.py index 0faa1b3..8de0b28 100644 --- a/church/church_ministries/doctype/church_event/church_event.py +++ b/church/ministries/doctype/function/function.py @@ -5,17 +5,17 @@ import frappe from frappe.model.document import Document -class ChurchEvent(Document): +class Function(Document): pass def autoname(self): name = self.get_name() - if not frappe.db.exists("Church Event", self.name): + if not frappe.db.exists("Function", self.name): self.name = name return else: if self.name != self.get_name(): - frappe.rename_doc("Church Event", self.name, name) + frappe.rename_doc("Function", self.name, name) def get_name(self): """Constructs the document name""" @@ -29,7 +29,7 @@ class ChurchEvent(Document): @frappe.whitelist() def apply_template(source_name): # Get template document - template = frappe.get_doc("Church Event", source_name) + template = frappe.get_doc("Function", source_name) template_dict = template.as_dict() copied_doc = {} diff --git a/church/ministries/doctype/function/test_function.py b/church/ministries/doctype/function/test_function.py new file mode 100644 index 0000000..0139a60 --- /dev/null +++ b/church/ministries/doctype/function/test_function.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestFunction(FrappeTestCase): + pass diff --git a/church/church_ministries/doctype/church_song/__init__.py b/church/ministries/doctype/song/__init__.py similarity index 100% rename from church/church_ministries/doctype/church_song/__init__.py rename to church/ministries/doctype/song/__init__.py diff --git a/church/ministries/doctype/song/song.js b/church/ministries/doctype/song/song.js new file mode 100644 index 0000000..bc537d8 --- /dev/null +++ b/church/ministries/doctype/song/song.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Song", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_ministries/doctype/church_song/church_song.json b/church/ministries/doctype/song/song.json similarity index 92% rename from church/church_ministries/doctype/church_song/church_song.json rename to church/ministries/doctype/song/song.json index cec2191..6944bd0 100644 --- a/church/church_ministries/doctype/church_song/church_song.json +++ b/church/ministries/doctype/song/song.json @@ -3,7 +3,7 @@ "allow_rename": 1, "autoname": "format:Song {#}", "creation": "2025-10-10 22:36:42.168218", - "description": "A song sung by the Church as part of worship or a `Church Event`", + "description": "A song sung by the Church as part of worship or a `Function`", "doctype": "DocType", "documentation": "/app/manual%3A-ministries", "engine": "InnoDB", @@ -46,21 +46,21 @@ "fieldname": "slides", "fieldtype": "Table", "label": "Slides", - "options": "Church Presentation Slide" + "options": "Presentation Slide" } ], "grid_page_length": 50, "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Event", + "link_doctype": "Function", "link_fieldname": "item" } ], "modified": "2025-11-15 22:54:14.635022", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Song", + "module": "Ministries", + "name": "Song", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/ministries/doctype/song/song.py b/church/ministries/doctype/song/song.py new file mode 100644 index 0000000..43ed84c --- /dev/null +++ b/church/ministries/doctype/song/song.py @@ -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 Song(Document): + pass diff --git a/church/ministries/doctype/song/test_song.py b/church/ministries/doctype/song/test_song.py new file mode 100644 index 0000000..90ef830 --- /dev/null +++ b/church/ministries/doctype/song/test_song.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestSong(FrappeTestCase): + pass diff --git a/church/church_ministries/report/__init__.py b/church/ministries/report/__init__.py similarity index 100% rename from church/church_ministries/report/__init__.py rename to church/ministries/report/__init__.py diff --git a/church/church_ministries/report/church_attendance/__init__.py b/church/ministries/report/church_attendance/__init__.py similarity index 100% rename from church/church_ministries/report/church_attendance/__init__.py rename to church/ministries/report/church_attendance/__init__.py diff --git a/church/ministries/report/church_attendance/church_attendance.json b/church/ministries/report/church_attendance/church_attendance.json new file mode 100644 index 0000000..de12062 --- /dev/null +++ b/church/ministries/report/church_attendance/church_attendance.json @@ -0,0 +1,35 @@ +{ + "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\":[[\"Event Attendance\",\"person\",\"is\",\"set\",false],[\"Event Attendance\",\"attendance_type\",\"in\",[\"Confirmed\",\"Assumed\"],false]],\"fields\":[[\"person\",\"Event Attendance\"],[\"event_name\",\"Function\"],[\"type\",\"Function\"],[\"attendance_type\",\"Event Attendance\"],[\"name\",\"Function\"]],\"order_by\":\"`tabFunction`.`modified` desc\",\"page_length\":20,\"column_widths\":{\"Event Attendance:person\":120,\"event_name\":120,\"type\":182,\"Event Attendance:attendance_type\":120,\"name\":361},\"group_by\":null}", + "letterhead": null, + "modified": "2025-10-02 01:12:41.676774", + "modified_by": "Administrator", + "module": "Ministries", + "name": "Church Attendance", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Function", + "report_name": "Church Attendance", + "report_type": "Report Builder", + "roles": [ + { + "role": "System Manager" + }, + { + "role": "Church Manager" + }, + { + "role": "Church User" + } + ], + "timeout": 0 +} \ No newline at end of file diff --git a/church/church_ministries/report/church_event_attendance/__init__.py b/church/ministries/report/church_event_attendance/__init__.py similarity index 100% rename from church/church_ministries/report/church_event_attendance/__init__.py rename to church/ministries/report/church_event_attendance/__init__.py diff --git a/church/church_ministries/report/church_event_attendance/church_event_attendance.json b/church/ministries/report/church_event_attendance/church_event_attendance.json similarity index 69% rename from church/church_ministries/report/church_event_attendance/church_event_attendance.json rename to church/ministries/report/church_event_attendance/church_event_attendance.json index 8a74dc8..6ee8726 100644 --- a/church/church_ministries/report/church_event_attendance/church_event_attendance.json +++ b/church/ministries/report/church_event_attendance/church_event_attendance.json @@ -12,13 +12,13 @@ "letterhead": null, "modified": "2025-10-02 01:11:23.917088", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event Attendance", + "module": "Ministries", + "name": "Event Attendance", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT parent as Event, count(person) as `Attendance Count`\nFROM `tabChurch Event Attendance`\nWHERE attendance_type in (\"Assumed\", \"Confirmed\")\nGROUP BY parent;\n", - "ref_doctype": "Church Event", - "report_name": "Church Event Attendance", + "query": "SELECT parent as Event, count(person) as `Attendance Count`\nFROM `tabEvent Attendance`\nWHERE attendance_type in (\"Assumed\", \"Confirmed\")\nGROUP BY parent;\n", + "ref_doctype": "Function", + "report_name": "Event Attendance", "report_type": "Query Report", "roles": [ { diff --git a/church/church_ministries/report/church_event_count_by_type/__init__.py b/church/ministries/report/church_event_count_by_type/__init__.py similarity index 100% rename from church/church_ministries/report/church_event_count_by_type/__init__.py rename to church/ministries/report/church_event_count_by_type/__init__.py diff --git a/church/church_ministries/report/church_event_count_by_type/church_event_count_by_type.json b/church/ministries/report/church_event_count_by_type/church_event_count_by_type.json similarity index 79% rename from church/church_ministries/report/church_event_count_by_type/church_event_count_by_type.json rename to church/ministries/report/church_event_count_by_type/church_event_count_by_type.json index a464730..83f455c 100644 --- a/church/church_ministries/report/church_event_count_by_type/church_event_count_by_type.json +++ b/church/ministries/report/church_event_count_by_type/church_event_count_by_type.json @@ -30,14 +30,14 @@ "letterhead": null, "modified": "2025-10-02 01:11:36.534790", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Event Count by Type", + "module": "Ministries", + "name": "Function Count by Type", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT type as Type, count(name) as Counts\nFROM `tabChurch Event`\nWHERE (start_date IS NULL OR end_date IS NULL OR date(start_date) BETWEEN %(start)s AND %(end)s)\nGROUP BY type;", - "ref_doctype": "Church Event", - "reference_report": "Church Events by Type", - "report_name": "Church Event Count by Type", + "query": "SELECT type as Type, count(name) as Counts\nFROM `tabFunction`\nWHERE (start_date IS NULL OR end_date IS NULL OR date(start_date) BETWEEN %(start)s AND %(end)s)\nGROUP BY type;", + "ref_doctype": "Function", + "reference_report": "Functions by Type", + "report_name": "Function Count by Type", "report_type": "Query Report", "roles": [ { diff --git a/church/church_ministries/report/church_events/__init__.py b/church/ministries/report/church_events/__init__.py similarity index 100% rename from church/church_ministries/report/church_events/__init__.py rename to church/ministries/report/church_events/__init__.py diff --git a/church/church_ministries/report/church_events/church_events.json b/church/ministries/report/church_events/church_events.json similarity index 51% rename from church/church_ministries/report/church_events/church_events.json rename to church/ministries/report/church_events/church_events.json index 8ffb10e..921d8b0 100644 --- a/church/church_ministries/report/church_events/church_events.json +++ b/church/ministries/report/church_events/church_events.json @@ -9,16 +9,16 @@ "filters": [], "idx": 0, "is_standard": "Yes", - "json": "{\"filters\":[],\"fields\":[[\"name\",\"Church Event\"],[\"event_name\",\"Church Event\"],[\"type\",\"Church Event\"]],\"order_by\":\"`tabChurch Event`.`modified` desc\",\"add_totals_row\":0,\"page_length\":20,\"column_widths\":{\"name\":341,\"event_name\":125,\"type\":235},\"group_by\":null}", + "json": "{\"filters\":[],\"fields\":[[\"name\",\"Function\"],[\"event_name\",\"Function\"],[\"type\",\"Function\"]],\"order_by\":\"`tabFunction`.`modified` desc\",\"add_totals_row\":0,\"page_length\":20,\"column_widths\":{\"name\":341,\"event_name\":125,\"type\":235},\"group_by\":null}", "letterhead": null, "modified": "2025-09-21 22:47:13.752538", "modified_by": "Administrator", - "module": "Church Ministries", - "name": "Church Events", + "module": "Ministries", + "name": "Functions", "owner": "Administrator", "prepared_report": 0, - "ref_doctype": "Church Event", - "report_name": "Church Events", + "ref_doctype": "Function", + "report_name": "Functions", "report_type": "Report Builder", "roles": [ { diff --git a/church/church_ministries/workspace/manual:_ministries/manual:_ministries.json b/church/ministries/workspace/manual:_ministries/manual:_ministries.json similarity index 99% rename from church/church_ministries/workspace/manual:_ministries/manual:_ministries.json rename to church/ministries/workspace/manual:_ministries/manual:_ministries.json index 9f6360a..bb9ede7 100644 --- a/church/church_ministries/workspace/manual:_ministries/manual:_ministries.json +++ b/church/ministries/workspace/manual:_ministries/manual:_ministries.json @@ -15,7 +15,7 @@ "links": [], "modified": "2026-03-01 23:53:34.074310", "modified_by": "Administrator", - "module": "Church Ministries", + "module": "Ministries", "name": "Manual: Ministries", "number_cards": [], "owner": "Administrator", diff --git a/church/church_ministries/workspace/ministries/ministries.json b/church/ministries/workspace/ministries/ministries.json similarity index 90% rename from church/church_ministries/workspace/ministries/ministries.json rename to church/ministries/workspace/ministries/ministries.json index d1e2ecf..71f9831 100644 --- a/church/church_ministries/workspace/ministries/ministries.json +++ b/church/ministries/workspace/ministries/ministries.json @@ -27,7 +27,7 @@ "is_query_report": 0, "label": "Events", "link_count": 0, - "link_to": "Church Event", + "link_to": "Function", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -37,7 +37,7 @@ "is_query_report": 0, "label": "Event Types", "link_count": 0, - "link_to": "Church Event Type", + "link_to": "Event Type", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -47,7 +47,7 @@ "is_query_report": 0, "label": "Event Attendance Types", "link_count": 0, - "link_to": "Church Event Attendance Type", + "link_to": "Event Attendance Type", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -69,7 +69,7 @@ "link_to": "Church Attendance", "link_type": "Report", "onboard": 0, - "report_ref_doctype": "Church Event", + "report_ref_doctype": "Function", "type": "Link" }, { @@ -77,7 +77,7 @@ "is_query_report": 1, "label": "Attendance by Event", "link_count": 0, - "link_to": "Church Event Attendance", + "link_to": "Event Attendance", "link_type": "Report", "onboard": 0, "type": "Link" @@ -87,7 +87,7 @@ "is_query_report": 1, "label": "Event Count by Type", "link_count": 0, - "link_to": "Church Event Count by Type", + "link_to": "Function Count by Type", "link_type": "Report", "onboard": 0, "type": "Link" @@ -106,7 +106,7 @@ "is_query_report": 0, "label": "Songs", "link_count": 0, - "link_to": "Church Song", + "link_to": "Song", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -114,7 +114,7 @@ ], "modified": "2026-03-01 23:53:34.057250", "modified_by": "Administrator", - "module": "Church Ministries", + "module": "Ministries", "name": "Ministries", "number_cards": [], "owner": "Administrator", diff --git a/church/church_missions/__init__.py b/church/missions/__init__.py similarity index 100% rename from church/church_missions/__init__.py rename to church/missions/__init__.py diff --git a/church/church_missions/doctype/__init__.py b/church/missions/doctype/__init__.py similarity index 100% rename from church/church_missions/doctype/__init__.py rename to church/missions/doctype/__init__.py diff --git a/church/church_missions/doctype/church_missionary/__init__.py b/church/missions/doctype/missionary/__init__.py similarity index 100% rename from church/church_missions/doctype/church_missionary/__init__.py rename to church/missions/doctype/missionary/__init__.py diff --git a/church/church_missions/doctype/church_missionary/church_missionary.js b/church/missions/doctype/missionary/missionary.js similarity index 95% rename from church/church_missions/doctype/church_missionary/church_missionary.js rename to church/missions/doctype/missionary/missionary.js index 2dd6930..c2605d3 100644 --- a/church/church_missions/doctype/church_missionary/church_missionary.js +++ b/church/missions/doctype/missionary/missionary.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -frappe.ui.form.on("Church Missionary", { +frappe.ui.form.on("Missionary", { refresh(frm) { //Add an 'intro' indicating if a missionary is published to the website if (frm.doc.sensitive && frm.doc.publish){ diff --git a/church/church_missions/doctype/church_missionary/church_missionary.json b/church/missions/doctype/missionary/missionary.json similarity index 92% rename from church/church_missions/doctype/church_missionary/church_missionary.json rename to church/missions/doctype/missionary/missionary.json index 17471f0..043a1a7 100644 --- a/church/church_missions/doctype/church_missionary/church_missionary.json +++ b/church/missions/doctype/missionary/missionary.json @@ -43,7 +43,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Agency", - "options": "Church Missionary Agency", + "options": "Missionary Agency", "search_index": 1 }, { @@ -77,7 +77,7 @@ "fieldtype": "Section Break" }, { - "description": "Link related documents here (i.e. `Church Person`s, `Church Event`s, `Church Collection`s, etc.)", + "description": "Link related documents here (i.e. `Person`s, `Function`s, `Collection`s, etc.)", "fieldname": "related_documents", "fieldtype": "Table", "label": "Related Documents", @@ -116,7 +116,7 @@ "fieldname": "letters", "fieldtype": "Table", "label": "Letters to the Church", - "options": "Church Letter" + "options": "Letter" }, { "fieldname": "support_amount", @@ -131,7 +131,7 @@ "in_preview": 1, "label": "Support Frequency", "mandatory_depends_on": "eval: doc.support_amount>0;", - "options": "Church Missionary Support Frequency" + "options": "Missionary Support Frequency" }, { "fieldname": "email", @@ -141,11 +141,11 @@ "options": "Email" }, { - "description": "Link an associated `Church Person` (or primary contact person)", + "description": "Link an associated `Person` (or primary contact person)", "fieldname": "person", "fieldtype": "Link", "label": "Person", - "options": "Church Person", + "options": "Person", "reqd": 1 }, { @@ -213,8 +213,8 @@ "links": [], "modified": "2026-02-19 00:58:04.376350", "modified_by": "Administrator", - "module": "Church Missions", - "name": "Church Missionary", + "module": "Missions", + "name": "Missionary", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/missions/doctype/missionary/missionary.py b/church/missions/doctype/missionary/missionary.py new file mode 100644 index 0000000..2f1cc40 --- /dev/null +++ b/church/missions/doctype/missionary/missionary.py @@ -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 Missionary(Document): + pass diff --git a/church/missions/doctype/missionary/test_missionary.py b/church/missions/doctype/missionary/test_missionary.py new file mode 100644 index 0000000..4d75756 --- /dev/null +++ b/church/missions/doctype/missionary/test_missionary.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestMissionary(FrappeTestCase): + pass diff --git a/church/church_missions/doctype/church_missionary_agency/__init__.py b/church/missions/doctype/missionary_agency/__init__.py similarity index 100% rename from church/church_missions/doctype/church_missionary_agency/__init__.py rename to church/missions/doctype/missionary_agency/__init__.py diff --git a/church/church_ministries/doctype/church_event_type/church_event_type.js b/church/missions/doctype/missionary_agency/missionary_agency.js similarity index 75% rename from church/church_ministries/doctype/church_event_type/church_event_type.js rename to church/missions/doctype/missionary_agency/missionary_agency.js index 5103297..4170799 100644 --- a/church/church_ministries/doctype/church_event_type/church_event_type.js +++ b/church/missions/doctype/missionary_agency/missionary_agency.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -// frappe.ui.form.on("Church Event Type", { +// frappe.ui.form.on("Missionary Agency", { // refresh(frm) { // }, diff --git a/church/church_missions/doctype/church_missionary_agency/church_missionary_agency.json b/church/missions/doctype/missionary_agency/missionary_agency.json similarity index 95% rename from church/church_missions/doctype/church_missionary_agency/church_missionary_agency.json rename to church/missions/doctype/missionary_agency/missionary_agency.json index 6c4d453..62f7624 100644 --- a/church/church_missions/doctype/church_missionary_agency/church_missionary_agency.json +++ b/church/missions/doctype/missionary_agency/missionary_agency.json @@ -80,14 +80,14 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Missionary", + "link_doctype": "Missionary", "link_fieldname": "agency" } ], "modified": "2025-11-15 22:54:24.063990", "modified_by": "Administrator", - "module": "Church Missions", - "name": "Church Missionary Agency", + "module": "Missions", + "name": "Missionary Agency", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/missions/doctype/missionary_agency/missionary_agency.py b/church/missions/doctype/missionary_agency/missionary_agency.py new file mode 100644 index 0000000..6341ad1 --- /dev/null +++ b/church/missions/doctype/missionary_agency/missionary_agency.py @@ -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 MissionaryAgency(Document): + pass diff --git a/church/church_finances/doctype/church_collection/test_church_collection.py b/church/missions/doctype/missionary_agency/test_missionary_agency.py similarity index 75% rename from church/church_finances/doctype/church_collection/test_church_collection.py rename to church/missions/doctype/missionary_agency/test_missionary_agency.py index 50c4836..67da133 100644 --- a/church/church_finances/doctype/church_collection/test_church_collection.py +++ b/church/missions/doctype/missionary_agency/test_missionary_agency.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchCollection(FrappeTestCase): +class TestMissionaryAgency(FrappeTestCase): pass diff --git a/church/church_missions/doctype/church_missionary_support_frequency/__init__.py b/church/missions/doctype/missionary_support_frequency/__init__.py similarity index 100% rename from church/church_missions/doctype/church_missionary_support_frequency/__init__.py rename to church/missions/doctype/missionary_support_frequency/__init__.py diff --git a/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.js b/church/missions/doctype/missionary_support_frequency/missionary_support_frequency.js similarity index 71% rename from church/church_communications/doctype/church_presentation_slide/church_presentation_slide.js rename to church/missions/doctype/missionary_support_frequency/missionary_support_frequency.js index d79b25e..5eb971a 100644 --- a/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.js +++ b/church/missions/doctype/missionary_support_frequency/missionary_support_frequency.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -// frappe.ui.form.on("Church Presentation Slide", { +// frappe.ui.form.on("Missionary Support Frequency", { // refresh(frm) { // }, diff --git a/church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.json b/church/missions/doctype/missionary_support_frequency/missionary_support_frequency.json similarity index 90% rename from church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.json rename to church/missions/doctype/missionary_support_frequency/missionary_support_frequency.json index 2be1607..0ffa9f6 100644 --- a/church/church_missions/doctype/church_missionary_support_frequency/church_missionary_support_frequency.json +++ b/church/missions/doctype/missionary_support_frequency/missionary_support_frequency.json @@ -3,7 +3,7 @@ "allow_rename": 1, "autoname": "format:{frequency}", "creation": "2025-10-02 21:51:33.814292", - "description": "How often `Church Missionary` support is given", + "description": "How often `Missionary` support is given", "doctype": "DocType", "documentation": "/app/doctype?module=Church+Missions", "engine": "InnoDB", @@ -38,8 +38,8 @@ "links": [], "modified": "2025-11-15 22:54:40.556718", "modified_by": "Administrator", - "module": "Church Missions", - "name": "Church Missionary Support Frequency", + "module": "Missions", + "name": "Missionary Support Frequency", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.py b/church/missions/doctype/missionary_support_frequency/missionary_support_frequency.py similarity index 79% rename from church/church_communications/doctype/church_presentation_slide/church_presentation_slide.py rename to church/missions/doctype/missionary_support_frequency/missionary_support_frequency.py index f7149e2..dfc7d05 100644 --- a/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.py +++ b/church/missions/doctype/missionary_support_frequency/missionary_support_frequency.py @@ -5,5 +5,5 @@ from frappe.model.document import Document -class ChurchPresentationSlide(Document): +class MissionarySupportFrequency(Document): pass diff --git a/church/church_communications/doctype/church_presentation_slide/test_church_presentation_slide.py b/church/missions/doctype/missionary_support_frequency/test_missionary_support_frequency.py similarity index 71% rename from church/church_communications/doctype/church_presentation_slide/test_church_presentation_slide.py rename to church/missions/doctype/missionary_support_frequency/test_missionary_support_frequency.py index 6c37567..2156bc4 100644 --- a/church/church_communications/doctype/church_presentation_slide/test_church_presentation_slide.py +++ b/church/missions/doctype/missionary_support_frequency/test_missionary_support_frequency.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchPresentationSlide(FrappeTestCase): +class TestMissionarySupportFrequency(FrappeTestCase): pass diff --git a/church/church_missions/report/__init__.py b/church/missions/report/__init__.py similarity index 100% rename from church/church_missions/report/__init__.py rename to church/missions/report/__init__.py diff --git a/church/church_missions/report/church_missionary_letters/__init__.py b/church/missions/report/church_missionary_letters/__init__.py similarity index 100% rename from church/church_missions/report/church_missionary_letters/__init__.py rename to church/missions/report/church_missionary_letters/__init__.py diff --git a/church/church_missions/report/church_missionary_letters/church_missionary_letters.json b/church/missions/report/church_missionary_letters/church_missionary_letters.json similarity index 80% rename from church/church_missions/report/church_missionary_letters/church_missionary_letters.json rename to church/missions/report/church_missionary_letters/church_missionary_letters.json index c41ea96..6dddfe5 100644 --- a/church/church_missions/report/church_missionary_letters/church_missionary_letters.json +++ b/church/missions/report/church_missionary_letters/church_missionary_letters.json @@ -6,7 +6,7 @@ "fieldname": "parent", "fieldtype": "Link", "label": "From", - "options": "Church Missionary", + "options": "Missionary", "width": 0 }, { @@ -57,13 +57,13 @@ "letterhead": null, "modified": "2025-10-27 22:16:47.646916", "modified_by": "Administrator", - "module": "Church Missions", - "name": "Church Missionary Letters", + "module": "Missions", + "name": "Missionary Letters", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT parent, date, share_with_church, shared_date, is_private, file, content \nFROM `tabChurch Letter`\nWHERE `tabChurch Letter`.parenttype = \"Church Missionary\"\nORDER BY parent", - "ref_doctype": "Church Missionary", - "report_name": "Church Missionary Letters", + "query": "SELECT parent, date, share_with_church, shared_date, is_private, file, content \nFROM `tabLetter`\nWHERE `tabLetter`.parenttype = \"Missionary\"\nORDER BY parent", + "ref_doctype": "Missionary", + "report_name": "Missionary Letters", "report_type": "Query Report", "roles": [ { diff --git a/church/church_missions/report/church_missionary_letters_not_yet_read/__init__.py b/church/missions/report/church_missionary_letters_not_yet_read/__init__.py similarity index 100% rename from church/church_missions/report/church_missionary_letters_not_yet_read/__init__.py rename to church/missions/report/church_missionary_letters_not_yet_read/__init__.py diff --git a/church/church_missions/report/church_missionary_letters_not_yet_read/church_missionary_letters_not_yet_read.json b/church/missions/report/church_missionary_letters_not_yet_read/church_missionary_letters_not_yet_read.json similarity index 76% rename from church/church_missions/report/church_missionary_letters_not_yet_read/church_missionary_letters_not_yet_read.json rename to church/missions/report/church_missionary_letters_not_yet_read/church_missionary_letters_not_yet_read.json index 4e97c2d..02464f4 100644 --- a/church/church_missions/report/church_missionary_letters_not_yet_read/church_missionary_letters_not_yet_read.json +++ b/church/missions/report/church_missionary_letters_not_yet_read/church_missionary_letters_not_yet_read.json @@ -6,7 +6,7 @@ "fieldname": "parent", "fieldtype": "Link", "label": "From", - "options": "Church Missionary", + "options": "Missionary", "width": 0 }, { @@ -57,13 +57,13 @@ "letterhead": null, "modified": "2025-10-27 22:21:41.413295", "modified_by": "Administrator", - "module": "Church Missions", - "name": "Church Missionary Letters Not Yet Read", + "module": "Missions", + "name": "Missionary Letters Not Yet Read", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT parent, date, share_with_church, shared_date, is_private, file, content \nFROM `tabChurch Letter` \nWHERE `tabChurch Letter`.parenttype=\"Church Missionary\" AND share_with_church=1 AND shared_date IS NULL\nORDER BY parent", - "ref_doctype": "Church Missionary", - "report_name": "Church Missionary Letters Not Yet Read", + "query": "SELECT parent, date, share_with_church, shared_date, is_private, file, content \nFROM `tabLetter` \nWHERE `tabLetter`.parenttype=\"Missionary\" AND share_with_church=1 AND shared_date IS NULL\nORDER BY parent", + "ref_doctype": "Missionary", + "report_name": "Missionary Letters Not Yet Read", "report_type": "Query Report", "roles": [ { diff --git a/church/church_missions/workspace/manual:_missions/manual:_missions.json b/church/missions/workspace/manual:_missions/manual:_missions.json similarity index 99% rename from church/church_missions/workspace/manual:_missions/manual:_missions.json rename to church/missions/workspace/manual:_missions/manual:_missions.json index 08dcd49..927650e 100644 --- a/church/church_missions/workspace/manual:_missions/manual:_missions.json +++ b/church/missions/workspace/manual:_missions/manual:_missions.json @@ -15,7 +15,7 @@ "links": [], "modified": "2026-03-01 23:53:34.110707", "modified_by": "Administrator", - "module": "Church Missions", + "module": "Missions", "name": "Manual: Missions", "number_cards": [], "owner": "Administrator", diff --git a/church/church_missions/workspace/missions/missions.json b/church/missions/workspace/missions/missions.json similarity index 90% rename from church/church_missions/workspace/missions/missions.json rename to church/missions/workspace/missions/missions.json index 3ca902d..5614b8b 100644 --- a/church/church_missions/workspace/missions/missions.json +++ b/church/missions/workspace/missions/missions.json @@ -27,7 +27,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" @@ -37,7 +37,7 @@ "is_query_report": 1, "label": "Missionary Letters Not Yet Read", "link_count": 0, - "link_to": "Church Missionary Letters Not Yet Read", + "link_to": "Missionary Letters Not Yet Read", "link_type": "Report", "onboard": 0, "type": "Link" @@ -56,7 +56,7 @@ "is_query_report": 0, "label": "Missionaries", "link_count": 0, - "link_to": "Church Missionary", + "link_to": "Missionary", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -66,7 +66,7 @@ "is_query_report": 0, "label": "Missionary Agencies", "link_count": 0, - "link_to": "Church Missionary Agency", + "link_to": "Missionary Agency", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -74,7 +74,7 @@ ], "modified": "2026-03-01 23:53:34.091666", "modified_by": "Administrator", - "module": "Church Missions", + "module": "Missions", "name": "Missions", "number_cards": [], "owner": "Administrator", diff --git a/church/modules.txt b/church/modules.txt index ab3354a..21a617b 100644 --- a/church/modules.txt +++ b/church/modules.txt @@ -1,11 +1,11 @@ -Church People -Church Finances -Church Ministries -Church Missions -Church Prayers -Church Foundations -Church Study -Church Customizations -Church Communications -Church Operations +People +Finances +Ministries +Missions +Prayers +Foundations +Study +Customizations +Communications +Operations Church Website \ No newline at end of file diff --git a/church/church_operations/__init__.py b/church/operations/__init__.py similarity index 100% rename from church/church_operations/__init__.py rename to church/operations/__init__.py diff --git a/church/church_operations/doctype/__init__.py b/church/operations/doctype/__init__.py similarity index 100% rename from church/church_operations/doctype/__init__.py rename to church/operations/doctype/__init__.py diff --git a/church/church_operations/doctype/church_asset/__init__.py b/church/operations/doctype/church_asset/__init__.py similarity index 100% rename from church/church_operations/doctype/church_asset/__init__.py rename to church/operations/doctype/church_asset/__init__.py diff --git a/church/church_operations/doctype/church_asset/church_asset.js b/church/operations/doctype/church_asset/church_asset.js similarity index 100% rename from church/church_operations/doctype/church_asset/church_asset.js rename to church/operations/doctype/church_asset/church_asset.js diff --git a/church/church_operations/doctype/church_asset/church_asset.json b/church/operations/doctype/church_asset/church_asset.json similarity index 98% rename from church/church_operations/doctype/church_asset/church_asset.json rename to church/operations/doctype/church_asset/church_asset.json index e008b3f..7c9ae85 100644 --- a/church/church_operations/doctype/church_asset/church_asset.json +++ b/church/operations/doctype/church_asset/church_asset.json @@ -64,7 +64,7 @@ "links": [], "modified": "2025-12-15 00:32:16.361162", "modified_by": "Administrator", - "module": "Church Operations", + "module": "Operations", "name": "Church Asset", "naming_rule": "Expression", "owner": "Administrator", diff --git a/church/church_operations/doctype/church_asset/church_asset.py b/church/operations/doctype/church_asset/church_asset.py similarity index 100% rename from church/church_operations/doctype/church_asset/church_asset.py rename to church/operations/doctype/church_asset/church_asset.py diff --git a/church/church_operations/doctype/church_asset/test_church_asset.py b/church/operations/doctype/church_asset/test_church_asset.py similarity index 100% rename from church/church_operations/doctype/church_asset/test_church_asset.py rename to church/operations/doctype/church_asset/test_church_asset.py diff --git a/church/church_operations/doctype/church_location/__init__.py b/church/operations/doctype/church_location/__init__.py similarity index 100% rename from church/church_operations/doctype/church_location/__init__.py rename to church/operations/doctype/church_location/__init__.py diff --git a/church/church_operations/doctype/church_location/church_location.js b/church/operations/doctype/church_location/church_location.js similarity index 100% rename from church/church_operations/doctype/church_location/church_location.js rename to church/operations/doctype/church_location/church_location.js diff --git a/church/church_operations/doctype/church_location/church_location.json b/church/operations/doctype/church_location/church_location.json similarity index 98% rename from church/church_operations/doctype/church_location/church_location.json rename to church/operations/doctype/church_location/church_location.json index eb6f50d..572637d 100644 --- a/church/church_operations/doctype/church_location/church_location.json +++ b/church/operations/doctype/church_location/church_location.json @@ -99,7 +99,7 @@ "links": [], "modified": "2026-01-05 23:51:38.123146", "modified_by": "Administrator", - "module": "Church Operations", + "module": "Operations", "name": "Church Location", "naming_rule": "Expression", "nsm_parent_field": "parent_church_location", diff --git a/church/church_operations/doctype/church_location/church_location.py b/church/operations/doctype/church_location/church_location.py similarity index 100% rename from church/church_operations/doctype/church_location/church_location.py rename to church/operations/doctype/church_location/church_location.py diff --git a/church/church_operations/doctype/church_location/test_church_location.py b/church/operations/doctype/church_location/test_church_location.py similarity index 100% rename from church/church_operations/doctype/church_location/test_church_location.py rename to church/operations/doctype/church_location/test_church_location.py diff --git a/church/church_operations/doctype/church_task/__init__.py b/church/operations/doctype/church_task/__init__.py similarity index 100% rename from church/church_operations/doctype/church_task/__init__.py rename to church/operations/doctype/church_task/__init__.py diff --git a/church/church_operations/doctype/church_task/church_task.js b/church/operations/doctype/church_task/church_task.js similarity index 100% rename from church/church_operations/doctype/church_task/church_task.js rename to church/operations/doctype/church_task/church_task.js diff --git a/church/church_operations/doctype/church_task/church_task.json b/church/operations/doctype/church_task/church_task.json similarity index 98% rename from church/church_operations/doctype/church_task/church_task.json rename to church/operations/doctype/church_task/church_task.json index bc42070..871fbfc 100644 --- a/church/church_operations/doctype/church_task/church_task.json +++ b/church/operations/doctype/church_task/church_task.json @@ -90,7 +90,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Assigned Person", - "options": "Church Person" + "options": "Person" }, { "fieldname": "column_break_yrnx", @@ -158,7 +158,7 @@ "links": [], "modified": "2025-12-20 22:59:11.776100", "modified_by": "Administrator", - "module": "Church Operations", + "module": "Operations", "name": "Church Task", "naming_rule": "Expression", "nsm_parent_field": "parent_task", diff --git a/church/church_operations/doctype/church_task/church_task.py b/church/operations/doctype/church_task/church_task.py similarity index 100% rename from church/church_operations/doctype/church_task/church_task.py rename to church/operations/doctype/church_task/church_task.py diff --git a/church/church_operations/doctype/church_task/test_church_task.py b/church/operations/doctype/church_task/test_church_task.py similarity index 100% rename from church/church_operations/doctype/church_task/test_church_task.py rename to church/operations/doctype/church_task/test_church_task.py diff --git a/church/church_operations/doctype/church_task_item/__init__.py b/church/operations/doctype/church_task_item/__init__.py similarity index 100% rename from church/church_operations/doctype/church_task_item/__init__.py rename to church/operations/doctype/church_task_item/__init__.py diff --git a/church/church_operations/doctype/church_task_item/church_task_item.json b/church/operations/doctype/church_task_item/church_task_item.json similarity index 98% rename from church/church_operations/doctype/church_task_item/church_task_item.json rename to church/operations/doctype/church_task_item/church_task_item.json index 530b07d..5e571c7 100644 --- a/church/church_operations/doctype/church_task_item/church_task_item.json +++ b/church/operations/doctype/church_task_item/church_task_item.json @@ -64,7 +64,7 @@ "links": [], "modified": "2025-12-20 22:36:42.050521", "modified_by": "Administrator", - "module": "Church Operations", + "module": "Operations", "name": "Church Task Item", "owner": "Administrator", "permissions": [], diff --git a/church/church_operations/doctype/church_task_item/church_task_item.py b/church/operations/doctype/church_task_item/church_task_item.py similarity index 100% rename from church/church_operations/doctype/church_task_item/church_task_item.py rename to church/operations/doctype/church_task_item/church_task_item.py diff --git a/church/church_operations/workspace/manual:_operations/manual:_operations.json b/church/operations/workspace/manual:_operations/manual:_operations.json similarity index 98% rename from church/church_operations/workspace/manual:_operations/manual:_operations.json rename to church/operations/workspace/manual:_operations/manual:_operations.json index 313d5cf..c9817ee 100644 --- a/church/church_operations/workspace/manual:_operations/manual:_operations.json +++ b/church/operations/workspace/manual:_operations/manual:_operations.json @@ -15,7 +15,7 @@ "links": [], "modified": "2026-03-01 23:53:34.142627", "modified_by": "Administrator", - "module": "Church Operations", + "module": "Operations", "name": "Manual: Operations", "number_cards": [], "owner": "Administrator", diff --git a/church/church_operations/workspace/operations/operations.json b/church/operations/workspace/operations/operations.json similarity index 98% rename from church/church_operations/workspace/operations/operations.json rename to church/operations/workspace/operations/operations.json index 44c7740..67cba26 100644 --- a/church/church_operations/workspace/operations/operations.json +++ b/church/operations/workspace/operations/operations.json @@ -55,7 +55,7 @@ ], "modified": "2026-03-01 23:53:34.126218", "modified_by": "Administrator", - "module": "Church Operations", + "module": "Operations", "name": "Operations", "number_cards": [], "owner": "Administrator", diff --git a/church/church_people/__init__.py b/church/people/__init__.py similarity index 100% rename from church/church_people/__init__.py rename to church/people/__init__.py diff --git a/church/church_people/doctype/__init__.py b/church/people/doctype/__init__.py similarity index 100% rename from church/church_people/doctype/__init__.py rename to church/people/doctype/__init__.py diff --git a/church/church_people/doctype/church_family/__init__.py b/church/people/doctype/family/__init__.py similarity index 100% rename from church/church_people/doctype/church_family/__init__.py rename to church/people/doctype/family/__init__.py diff --git a/church/church_people/doctype/church_family/church_family.js b/church/people/doctype/family/family.js similarity index 74% rename from church/church_people/doctype/church_family/church_family.js rename to church/people/doctype/family/family.js index 8496b8e..53ae449 100644 --- a/church/church_people/doctype/church_family/church_family.js +++ b/church/people/doctype/family/family.js @@ -1,6 +1,6 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -frappe.ui.form.on("Church Family", { +frappe.ui.form.on("Family", { }); diff --git a/church/church_people/doctype/church_family/church_family.json b/church/people/doctype/family/family.json similarity index 84% rename from church/church_people/doctype/church_family/church_family.json rename to church/people/doctype/family/family.json index 450ac5b..10a1792 100644 --- a/church/church_people/doctype/church_family/church_family.json +++ b/church/people/doctype/family/family.json @@ -3,7 +3,7 @@ "allow_import": 1, "autoname": "format:Family {#}", "creation": "2025-08-22 00:15:20.425153", - "description": "A family of people ('Church Person's) that are considered to be part of the same household. One 'Church Person' can be set to be the Head of Household for a family. ", + "description": "A family of people ('Person's) that are considered to be part of the same household. One 'Person' can be set to be the Head of Household for a family. ", "doctype": "DocType", "documentation": "/app/manual%3A-people", "engine": "InnoDB", @@ -45,7 +45,7 @@ "in_standard_filter": 1, "is_virtual": 1, "label": "Head of Household", - "options": "Church Person" + "options": "Person" }, { "fieldname": "photo", @@ -61,7 +61,7 @@ "fieldname": "members", "fieldtype": "Table", "label": "Family Members", - "options": "Church Family Members" + "options": "Family Members" } ], "grid_page_length": 50, @@ -69,18 +69,18 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Person", + "link_doctype": "Person", "link_fieldname": "family" }, { - "link_doctype": "Church Alms Request", + "link_doctype": "Alms Request", "link_fieldname": "recipient" } ], "modified": "2025-12-20 23:03:58.407158", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Family", + "module": "People", + "name": "Family", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_people/doctype/church_family/church_family.py b/church/people/doctype/family/family.py similarity index 56% rename from church/church_people/doctype/church_family/church_family.py rename to church/people/doctype/family/family.py index 58ecad9..0551801 100644 --- a/church/church_people/doctype/church_family/church_family.py +++ b/church/people/doctype/family/family.py @@ -5,33 +5,33 @@ import frappe from frappe.model.document import Document -class ChurchFamily(Document): +class Family(Document): pass @property def head_of_household(self): # To ensure we don't have multiple people returned here, - # After saving a 'Church Person', we uncheck `head_of_household` - # for any other 'Church Person's that are part of the same family + # After saving a 'Person', we uncheck `head_of_household` + # for any other 'Person's that are part of the same family doc_dict = frappe.get_list( - doctype="Church Person", + doctype="Person", filters=[["family", "=", self.name], ["is_head_of_household", "=", True]], ) if not doc_dict: return - doc_dict[0]["doctype"] = "Church Person" + doc_dict[0]["doctype"] = "Person" return frappe.get_doc(doc_dict[0]).name def before_save(self): - # Remove family from Church Person records when Person is removed from ChurchFamily + # Remove family from Person records when Person is removed from Family if self.get_doc_before_save() and self.get_doc_before_save().members: for member in self.get_doc_before_save().members: if member not in self.members: - frappe.db.set_value("Church Person", member.member, "family", None, update_modified=False) - # Update Church Person records when ChurchFamily is updated + frappe.db.set_value("Person", member.member, "family", None, update_modified=False) + # Update Person records when Family is updated if self.members: for member in self.members: if member.member: frappe.db.set_value( - "Church Person", member.member, "family", self.name, update_modified=False + "Person", member.member, "family", self.name, update_modified=False ) diff --git a/church/people/doctype/family/test_family.py b/church/people/doctype/family/test_family.py new file mode 100644 index 0000000..842bb04 --- /dev/null +++ b/church/people/doctype/family/test_family.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestFamily(FrappeTestCase): + pass diff --git a/church/church_people/doctype/church_family_members/__init__.py b/church/people/doctype/family_members/__init__.py similarity index 100% rename from church/church_people/doctype/church_family_members/__init__.py rename to church/people/doctype/family_members/__init__.py diff --git a/church/church_people/doctype/church_family_members/church_family_members.json b/church/people/doctype/family_members/family_members.json similarity index 81% rename from church/church_people/doctype/church_family_members/church_family_members.json rename to church/people/doctype/family_members/family_members.json index 9211f5a..3c2c527 100644 --- a/church/church_people/doctype/church_family_members/church_family_members.json +++ b/church/people/doctype/family_members/family_members.json @@ -2,7 +2,7 @@ "actions": [], "allow_rename": 1, "creation": "2025-12-20 00:48:57.168497", - "description": "People who are part of a `Church Family`", + "description": "People who are part of a `Family`", "doctype": "DocType", "documentation": "/app/manual%3A-people#family", "editable_grid": 1, @@ -17,7 +17,7 @@ "in_list_view": 1, "in_preview": 1, "label": "Family Member", - "options": "Church Person", + "options": "Person", "reqd": 1 } ], @@ -27,8 +27,8 @@ "links": [], "modified": "2025-12-20 23:04:31.049341", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Family Members", + "module": "People", + "name": "Family Members", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/people/doctype/family_members/family_members.py b/church/people/doctype/family_members/family_members.py new file mode 100644 index 0000000..e6d5a3b --- /dev/null +++ b/church/people/doctype/family_members/family_members.py @@ -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 FamilyMembers(Document): + pass diff --git a/church/church_people/doctype/church_letter/__init__.py b/church/people/doctype/letter/__init__.py similarity index 100% rename from church/church_people/doctype/church_letter/__init__.py rename to church/people/doctype/letter/__init__.py diff --git a/church/church_people/doctype/church_letter/church_letter.json b/church/people/doctype/letter/letter.json similarity index 97% rename from church/church_people/doctype/church_letter/church_letter.json rename to church/people/doctype/letter/letter.json index c3b688c..ebbcd8f 100644 --- a/church/church_people/doctype/church_letter/church_letter.json +++ b/church/people/doctype/letter/letter.json @@ -92,8 +92,8 @@ "links": [], "modified": "2025-09-29 23:55:37.070600", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Letter", + "module": "People", + "name": "Letter", "naming_rule": "Expression", "owner": "Administrator", "permissions": [], diff --git a/church/people/doctype/letter/letter.py b/church/people/doctype/letter/letter.py new file mode 100644 index 0000000..fdc0c5c --- /dev/null +++ b/church/people/doctype/letter/letter.py @@ -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 Letter(Document): + pass diff --git a/church/church_people/doctype/church_member_status/__init__.py b/church/people/doctype/member_status/__init__.py similarity index 100% rename from church/church_people/doctype/church_member_status/__init__.py rename to church/people/doctype/member_status/__init__.py diff --git a/church/people/doctype/member_status/member_status.js b/church/people/doctype/member_status/member_status.js new file mode 100644 index 0000000..a009473 --- /dev/null +++ b/church/people/doctype/member_status/member_status.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Member Status", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_people/doctype/church_member_status/church_member_status.json b/church/people/doctype/member_status/member_status.json similarity index 94% rename from church/church_people/doctype/church_member_status/church_member_status.json rename to church/people/doctype/member_status/member_status.json index 12b0fb7..278ba8e 100644 --- a/church/church_people/doctype/church_member_status/church_member_status.json +++ b/church/people/doctype/member_status/member_status.json @@ -39,14 +39,14 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Person", + "link_doctype": "Person", "link_fieldname": "membership_status" } ], "modified": "2025-11-15 22:55:21.448686", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Member Status", + "module": "People", + "name": "Member Status", "naming_rule": "By fieldname", "owner": "Administrator", "permissions": [ diff --git a/church/people/doctype/member_status/member_status.py b/church/people/doctype/member_status/member_status.py new file mode 100644 index 0000000..5514586 --- /dev/null +++ b/church/people/doctype/member_status/member_status.py @@ -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 MemberStatus(Document): + pass diff --git a/church/people/doctype/member_status/test_member_status.py b/church/people/doctype/member_status/test_member_status.py new file mode 100644 index 0000000..4217541 --- /dev/null +++ b/church/people/doctype/member_status/test_member_status.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestMemberStatus(FrappeTestCase): + pass diff --git a/church/church_people/doctype/church_person/__init__.py b/church/people/doctype/person/__init__.py similarity index 100% rename from church/church_people/doctype/church_person/__init__.py rename to church/people/doctype/person/__init__.py diff --git a/church/church_people/doctype/church_person/church_person.js b/church/people/doctype/person/person.js similarity index 87% rename from church/church_people/doctype/church_person/church_person.js rename to church/people/doctype/person/person.js index 6e58656..0eb46a1 100644 --- a/church/church_people/doctype/church_person/church_person.js +++ b/church/people/doctype/person/person.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -frappe.ui.form.on("Church Person", { +frappe.ui.form.on("Person", { refresh(frm) { // Add 'New Family From Person' button if Last Name is populated if (frm.doc.last_name) { @@ -17,9 +17,9 @@ frappe.ui.form.on("Church Person", { }); } - // Add 'Church Person Tour' button + // Add 'Person Tour' button frm.add_custom_button(__('Tutorial'), function () { - frm.tour.init("Church Person").then(() => frm.tour.start()); + frm.tour.init("Person").then(() => frm.tour.start()); }); }, diff --git a/church/church_people/doctype/church_person/church_person.json b/church/people/doctype/person/person.json similarity index 92% rename from church/church_people/doctype/church_person/church_person.json rename to church/people/doctype/person/person.json index 8511d2f..e5c6434 100644 --- a/church/church_people/doctype/church_person/church_person.json +++ b/church/people/doctype/person/person.json @@ -27,7 +27,7 @@ "is_baptized", "baptism_date", "section_break_osjz", - "church_roles", + "positions", "contact_information_tab", "contact_information_section", "home_address", @@ -148,7 +148,7 @@ "in_list_view": 1, "in_preview": 1, "label": "Family", - "options": "Church Family", + "options": "Family", "print_hide": 1, "search_index": 1 }, @@ -196,7 +196,7 @@ "in_preview": 1, "label": "Membership Status", "mandatory_depends_on": "eval:doc.is_member", - "options": "Church Member Status", + "options": "Member Status", "search_index": 1 }, { @@ -212,10 +212,10 @@ "label": "Baptism Date" }, { - "fieldname": "church_roles", + "fieldname": "positions", "fieldtype": "Table", - "label": "Church Roles", - "options": "Church Role" + "label": "Positions", + "options": "Position" }, { "fieldname": "section_break_osjz", @@ -249,8 +249,8 @@ "fieldtype": "Link", "in_preview": 1, "label": "Spouse", - "link_filters": "[[\"Church Person\",\"name\",\"!=\",\"{{doc.id}}\"]]", - "options": "Church Person" + "link_filters": "[[\"Person\",\"name\",\"!=\",\"{{doc.id}}\"]]", + "options": "Person" }, { "fieldname": "column_break_fkwj", @@ -274,7 +274,7 @@ "fieldname": "relationships", "fieldtype": "Table", "label": "Notable Relationships", - "options": "Church Person Relation", + "options": "Person Relation", "print_hide": 1 }, { @@ -294,7 +294,7 @@ "fieldname": "letters", "fieldtype": "Table", "label": "Letters to the Church", - "options": "Church Letter", + "options": "Letter", "print_hide": 1 }, { @@ -315,30 +315,30 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Prayer Request", + "link_doctype": "Prayer Request", "link_fieldname": "requestor" }, { - "link_doctype": "Church Prayer", + "link_doctype": "Prayer", "link_fieldname": "person" }, { - "link_doctype": "Church Collection", + "link_doctype": "Collection", "link_fieldname": "person" }, { - "link_doctype": "Church Event", + "link_doctype": "Function", "link_fieldname": "person" }, { - "link_doctype": "Church Alms Request", + "link_doctype": "Alms Request", "link_fieldname": "recipient" } ], "modified": "2026-02-22 23:11:46.660564", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Person", + "module": "People", + "name": "Person", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_people/doctype/church_person/church_person.py b/church/people/doctype/person/person.py similarity index 76% rename from church/church_people/doctype/church_person/church_person.py rename to church/people/doctype/person/person.py index 3d0fdf2..f45f366 100644 --- a/church/church_people/doctype/church_person/church_person.py +++ b/church/people/doctype/person/person.py @@ -8,11 +8,11 @@ from frappe.model.document import Document from frappe.utils import get_link_to_form -class ChurchPerson(Document): +class Person(Document): def on_update(self): - # Update Family Member list in Church Family + # Update Family Member list in Family if self.family: - family = frappe.get_doc("Church Family", self.family) + family = frappe.get_doc("Family", self.family) found = False for member in family.members: if member.member == self.name: @@ -25,9 +25,9 @@ class ChurchPerson(Document): # Return if this is a new person if not self.get_doc_before_save(): return - # Remove person from Church Family if family is removed + # Remove person from Family if family is removed if not self.family and self.get_doc_before_save().family is not None: - family = frappe.get_doc("Church Family", self.get_doc_before_save().family) + family = frappe.get_doc("Family", self.get_doc_before_save().family) for member in family.members: if member.member == self.name: family.remove(member) @@ -40,9 +40,9 @@ class ChurchPerson(Document): self.full_name = f"{self.first_name}" + ((" " + self.last_name) if self.last_name else "") def before_delete(self): - # Remove person from Church Family + # Remove person from Family if self.family: - family = frappe.get_doc("Church Family", self.family) + family = frappe.get_doc("Family", self.family) for member in family.members: if member.name == self.name: family.remove(member) @@ -56,7 +56,7 @@ class ChurchPerson(Document): # Remove old head of household when new one is assigned - Also rename family if self.is_head_of_household: old_heads_of_household = frappe.db.get_all( - doctype="Church Person", + doctype="Person", filters=[ ["family", "=", self.family], ["is_head_of_household", "=", True], @@ -66,14 +66,14 @@ class ChurchPerson(Document): if old_heads_of_household: # There should only be one head of household, but just in case we loop through all of them. for head in old_heads_of_household: - head_doc = frappe.get_doc("Church Person", head["name"]) + head_doc = frappe.get_doc("Person", head["name"]) frappe.msgprint( f"ℹ️ {head_doc.full_name} was removed from being the head of this household." ) head_doc.is_head_of_household = False head_doc.save() # Rename family with new head of household - family_doc = frappe.get_doc("Church Family", self.family) + family_doc = frappe.get_doc("Family", self.family) dashes = family_doc.family_name.rfind("-") if dashes == -1: # If no dashes found, add one family_doc.family_name = f"{self.family} - {self.first_name}" @@ -84,25 +84,25 @@ class ChurchPerson(Document): # Sync spouses if self.spouse and self.is_married: # Sync spouses - spouse = frappe.get_doc("Church Person", self.spouse) + spouse = frappe.get_doc("Person", self.spouse) if spouse.spouse != self.name: # Unlink spouse's old spouse if there was one - frappe.db.set_value("Church Person", spouse.spouse, "spouse", None) - frappe.db.set_value("Church Person", spouse.spouse, "anniversary", None) - frappe.db.set_value("Church Person", spouse.spouse, "is_married", False) + frappe.db.set_value("Person", spouse.spouse, "spouse", None) + frappe.db.set_value("Person", spouse.spouse, "anniversary", None) + frappe.db.set_value("Person", spouse.spouse, "is_married", False) # Link spouses - frappe.db.set_value("Church Person", spouse.name, "spouse", self.name) - frappe.db.set_value("Church Person", spouse.name, "is_married", True) - frappe.db.set_value("Church Person", spouse.name, "anniversary", self.anniversary) + frappe.db.set_value("Person", spouse.name, "spouse", self.name) + frappe.db.set_value("Person", spouse.name, "is_married", True) + frappe.db.set_value("Person", spouse.name, "anniversary", self.anniversary) frappe.msgprint(f"Spouses have been linked:
{self.full_name} 👩‍❤️‍👨 {spouse.full_name}") elif spouse.anniversary != self.anniversary: # Keep anniversary in sync when it changes on either side - frappe.db.set_value("Church Person", spouse.name, "anniversary", self.anniversary) + frappe.db.set_value("Person", spouse.name, "anniversary", self.anniversary) else: if self._doc_before_save and self._doc_before_save.is_married and self._doc_before_save.spouse: - spouse = frappe.get_doc("Church Person", self._doc_before_save.spouse) - frappe.db.set_value("Church Person", spouse.name, "spouse", None) - frappe.db.set_value("Church Person", spouse.name, "is_married", False) + spouse = frappe.get_doc("Person", self._doc_before_save.spouse) + frappe.db.set_value("Person", spouse.name, "spouse", None) + frappe.db.set_value("Person", spouse.name, "is_married", False) self.spouse = None self.anniversary = None self.is_married = False @@ -112,7 +112,7 @@ class ChurchPerson(Document): def new_family_from_person(self): # Check if a family with this person's name already exists existing_family = frappe.db.exists( - "Church Family", {"family_name": f"{self.last_name} - {self.first_name}"} + "Family", {"family_name": f"{self.last_name} - {self.first_name}"} ) if existing_family: @@ -126,19 +126,19 @@ class ChurchPerson(Document): return # Don't create a new family - doc = frappe.new_doc("Church Family") + doc = frappe.new_doc("Family") doc.family_name = f"{self.last_name} - {self.first_name}" doc.save() self.set("family", doc) self.set("is_head_of_household", True) self.save() self.reload() - family_link = get_link_to_form("Church Family", doc.name, doc.family_name) + family_link = get_link_to_form("Family", doc.name, doc.family_name) frappe.msgprint(f"👨‍👩‍👧‍👦 New family created: {family_link}") @frappe.whitelist() def update_is_current_role(self): - for role in self.church_roles: + for role in self.positions: if ( frappe.utils.get_datetime(role.start_date) < datetime.now() @@ -164,7 +164,7 @@ class ChurchPerson(Document): new_user.role_profile_name = "Church User" new_user.save(ignore_permissions=True) - # Update Church Person to mark as portal user + # Update Person to mark as portal user self.portal_user = new_user.name self.save(ignore_permissions=True) diff --git a/church/people/doctype/person/test_person.py b/church/people/doctype/person/test_person.py new file mode 100644 index 0000000..21b47cf --- /dev/null +++ b/church/people/doctype/person/test_person.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestPerson(FrappeTestCase): + pass diff --git a/church/church_people/doctype/church_person_relation/__init__.py b/church/people/doctype/person_relation/__init__.py similarity index 100% rename from church/church_people/doctype/church_person_relation/__init__.py rename to church/people/doctype/person_relation/__init__.py diff --git a/church/church_people/doctype/church_person_relation/church_person_relation.json b/church/people/doctype/person_relation/person_relation.json similarity index 77% rename from church/church_people/doctype/church_person_relation/church_person_relation.json rename to church/people/doctype/person_relation/person_relation.json index 1321e2c..5b5f02a 100644 --- a/church/church_people/doctype/church_person_relation/church_person_relation.json +++ b/church/people/doctype/person_relation/person_relation.json @@ -1,14 +1,14 @@ { "actions": [], "creation": "2025-08-25 20:53:56.079617", - "description": "Relationship between two `Church Person`s", + "description": "Relationship between two `Person`s", "doctype": "DocType", "documentation": "/app/manual%3A-people", "editable_grid": 1, "engine": "InnoDB", "field_order": [ "section_break_mhmq", - "church_person", + "person", "relation_type" ], "fields": [ @@ -23,17 +23,17 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Relation Type", - "options": "Church Person Relation Type", + "options": "Person Relation Type", "reqd": 1 }, { "allow_in_quick_entry": 1, - "fieldname": "church_person", + "fieldname": "person", "fieldtype": "Link", "in_list_view": 1, "in_standard_filter": 1, - "label": "Church Person", - "options": "Church Person", + "label": "Person", + "options": "Person", "reqd": 1 } ], @@ -43,8 +43,8 @@ "links": [], "modified": "2025-11-14 00:00:11.595410", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Person Relation", + "module": "People", + "name": "Person Relation", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/church_finances/doctype/church_donation/church_donation.py b/church/people/doctype/person_relation/person_relation.py similarity index 83% rename from church/church_finances/doctype/church_donation/church_donation.py rename to church/people/doctype/person_relation/person_relation.py index 0845bdc..ed8035f 100644 --- a/church/church_finances/doctype/church_donation/church_donation.py +++ b/church/people/doctype/person_relation/person_relation.py @@ -5,5 +5,5 @@ from frappe.model.document import Document -class ChurchDonation(Document): +class PersonRelation(Document): pass diff --git a/church/church_people/doctype/church_person_relation_type/__init__.py b/church/people/doctype/person_relation_type/__init__.py similarity index 100% rename from church/church_people/doctype/church_person_relation_type/__init__.py rename to church/people/doctype/person_relation_type/__init__.py diff --git a/church/people/doctype/person_relation_type/person_relation_type.js b/church/people/doctype/person_relation_type/person_relation_type.js new file mode 100644 index 0000000..d111359 --- /dev/null +++ b/church/people/doctype/person_relation_type/person_relation_type.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Person Relation Type", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_people/doctype/church_person_relation_type/church_person_relation_type.json b/church/people/doctype/person_relation_type/person_relation_type.json similarity index 88% rename from church/church_people/doctype/church_person_relation_type/church_person_relation_type.json rename to church/people/doctype/person_relation_type/person_relation_type.json index b5a4f8e..7e32ab1 100644 --- a/church/church_people/doctype/church_person_relation_type/church_person_relation_type.json +++ b/church/people/doctype/person_relation_type/person_relation_type.json @@ -3,7 +3,7 @@ "allow_import": 1, "autoname": "format:{relation_type}", "creation": "2025-08-25 21:30:15.393857", - "description": "The type of relationship between two `Church Person`s", + "description": "The type of relationship between two `Person`s", "doctype": "DocType", "documentation": "/app/manual%3A-people", "engine": "InnoDB", @@ -33,15 +33,15 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Person", + "link_doctype": "Person", "link_fieldname": "relation_type", "table_fieldname": "relationships" } ], "modified": "2025-11-15 22:55:00.261062", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Person Relation Type", + "module": "People", + "name": "Person Relation Type", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_communications/doctype/church_presentation/church_presentation.py b/church/people/doctype/person_relation_type/person_relation_type.py similarity index 82% rename from church/church_communications/doctype/church_presentation/church_presentation.py rename to church/people/doctype/person_relation_type/person_relation_type.py index e12a267..00b263f 100644 --- a/church/church_communications/doctype/church_presentation/church_presentation.py +++ b/church/people/doctype/person_relation_type/person_relation_type.py @@ -5,5 +5,5 @@ from frappe.model.document import Document -class ChurchPresentation(Document): +class PersonRelationType(Document): pass diff --git a/church/church_communications/doctype/church_presentation/test_church_presentation.py b/church/people/doctype/person_relation_type/test_person_relation_type.py similarity index 75% rename from church/church_communications/doctype/church_presentation/test_church_presentation.py rename to church/people/doctype/person_relation_type/test_person_relation_type.py index f47827c..d4028d5 100644 --- a/church/church_communications/doctype/church_presentation/test_church_presentation.py +++ b/church/people/doctype/person_relation_type/test_person_relation_type.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchPresentation(FrappeTestCase): +class TestPersonRelationType(FrappeTestCase): pass diff --git a/church/church_people/doctype/church_role/__init__.py b/church/people/doctype/position/__init__.py similarity index 100% rename from church/church_people/doctype/church_role/__init__.py rename to church/people/doctype/position/__init__.py diff --git a/church/church_people/doctype/church_role/church_role.js b/church/people/doctype/position/position.js similarity index 74% rename from church/church_people/doctype/church_role/church_role.js rename to church/people/doctype/position/position.js index 49e0dd3..3496907 100644 --- a/church/church_people/doctype/church_role/church_role.js +++ b/church/people/doctype/position/position.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -// frappe.ui.form.on("Church Role", { +// frappe.ui.form.on("Position", { // }); diff --git a/church/church_people/doctype/church_role/church_role.json b/church/people/doctype/position/position.json similarity index 90% rename from church/church_people/doctype/church_role/church_role.json rename to church/people/doctype/position/position.json index d609445..65140e6 100644 --- a/church/church_people/doctype/church_role/church_role.json +++ b/church/people/doctype/position/position.json @@ -3,7 +3,7 @@ "allow_rename": 1, "autoname": "format:Role {#}", "creation": "2025-08-26 22:42:20.029649", - "description": "`Church Person` roles in the church.", + "description": "`Person` roles in the church.", "doctype": "DocType", "documentation": "/app/manual%3A-people", "editable_grid": 1, @@ -22,7 +22,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Role", - "options": "Church Role Type", + "options": "Role Type", "reqd": 1 }, { @@ -62,8 +62,8 @@ "links": [], "modified": "2025-11-14 00:00:12.088225", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Role", + "module": "People", + "name": "Position", "naming_rule": "Expression", "owner": "Administrator", "permissions": [], diff --git a/church/church_people/doctype/church_role/church_role.py b/church/people/doctype/position/position.py similarity index 85% rename from church/church_people/doctype/church_role/church_role.py rename to church/people/doctype/position/position.py index 47765cc..17d7f80 100644 --- a/church/church_people/doctype/church_role/church_role.py +++ b/church/people/doctype/position/position.py @@ -5,5 +5,5 @@ import frappe from frappe.model.document import Document -class ChurchRole(Document): +class Position(Document): pass diff --git a/church/people/doctype/position/test_position.py b/church/people/doctype/position/test_position.py new file mode 100644 index 0000000..948339f --- /dev/null +++ b/church/people/doctype/position/test_position.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestPosition(FrappeTestCase): + pass diff --git a/church/church_people/doctype/church_role_type/__init__.py b/church/people/doctype/role_type/__init__.py similarity index 100% rename from church/church_people/doctype/church_role_type/__init__.py rename to church/people/doctype/role_type/__init__.py diff --git a/church/people/doctype/role_type/role_type.js b/church/people/doctype/role_type/role_type.js new file mode 100644 index 0000000..3825151 --- /dev/null +++ b/church/people/doctype/role_type/role_type.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Role Type", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_people/doctype/church_role_type/church_role_type.json b/church/people/doctype/role_type/role_type.json similarity index 81% rename from church/church_people/doctype/church_role_type/church_role_type.json rename to church/people/doctype/role_type/role_type.json index 54013cd..ed3fa82 100644 --- a/church/church_people/doctype/church_role_type/church_role_type.json +++ b/church/people/doctype/role_type/role_type.json @@ -3,7 +3,7 @@ "allow_rename": 1, "autoname": "format:{role} - {#####}", "creation": "2025-08-26 22:57:29.102805", - "description": "Types of roles that `Church Person`s can fill in the church.", + "description": "Types of roles that `Person`s can fill in the church.", "doctype": "DocType", "documentation": "/app/manual%3A-people", "editable_grid": 1, @@ -14,7 +14,7 @@ ], "fields": [ { - "description": "The name of the role or position that a `Church Person` can fulfill.", + "description": "The name of the role or position that a `Person` can fulfill.", "fieldname": "role", "fieldtype": "Data", "in_list_view": 1, @@ -32,15 +32,15 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Person", + "link_doctype": "Person", "link_fieldname": "role", - "table_fieldname": "church_roles" + "table_fieldname": "positions" } ], "modified": "2025-11-15 22:54:52.639182", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Role Type", + "module": "People", + "name": "Role Type", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/people/doctype/role_type/role_type.py b/church/people/doctype/role_type/role_type.py new file mode 100644 index 0000000..970ff08 --- /dev/null +++ b/church/people/doctype/role_type/role_type.py @@ -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 RoleType(Document): + pass diff --git a/church/people/doctype/role_type/test_role_type.py b/church/people/doctype/role_type/test_role_type.py new file mode 100644 index 0000000..e78f62e --- /dev/null +++ b/church/people/doctype/role_type/test_role_type.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestRoleType(FrappeTestCase): + pass diff --git a/church/church_people/number_card/church_families/church_families.json b/church/people/number_card/church_families/church_families.json similarity index 85% rename from church/church_people/number_card/church_families/church_families.json rename to church/people/number_card/church_families/church_families.json index c8aa093..7203ec7 100644 --- a/church/church_people/number_card/church_families/church_families.json +++ b/church/people/number_card/church_families/church_families.json @@ -4,17 +4,17 @@ "currency": "USD", "docstatus": 0, "doctype": "Number Card", - "document_type": "Church Family", + "document_type": "Family", "dynamic_filters_json": "[]", "filters_json": "[]", "function": "Count", "idx": 0, "is_public": 0, "is_standard": 1, - "label": "Church Family Count", + "label": "Family Count", "modified": "2025-09-21 22:43:42.038846", "modified_by": "Administrator", - "module": "Church People", + "module": "People", "name": "Church Families", "owner": "Administrator", "parent_document_type": "", diff --git a/church/church_people/number_card/church_members/church_members.json b/church/people/number_card/church_members/church_members.json similarity index 80% rename from church/church_people/number_card/church_members/church_members.json rename to church/people/number_card/church_members/church_members.json index bdfa791..8eeff8b 100644 --- a/church/church_people/number_card/church_members/church_members.json +++ b/church/people/number_card/church_members/church_members.json @@ -4,9 +4,9 @@ "currency": "USD", "docstatus": 0, "doctype": "Number Card", - "document_type": "Church Person", + "document_type": "Person", "dynamic_filters_json": "[]", - "filters_json": "[[\"Church Person\",\"is_member\",\"=\",1,false]]", + "filters_json": "[[\"Person\",\"is_member\",\"=\",1,false]]", "function": "Count", "idx": 0, "is_public": 0, @@ -14,7 +14,7 @@ "label": "Church Member Count", "modified": "2025-09-21 22:43:41.991451", "modified_by": "Administrator", - "module": "Church People", + "module": "People", "name": "Church Members", "owner": "Administrator", "parent_document_type": "", diff --git a/church/church_people/number_card/church_persons/church_persons.json b/church/people/number_card/church_persons/church_persons.json similarity index 80% rename from church/church_people/number_card/church_persons/church_persons.json rename to church/people/number_card/church_persons/church_persons.json index 94c4682..8eca8f1 100644 --- a/church/church_people/number_card/church_persons/church_persons.json +++ b/church/people/number_card/church_persons/church_persons.json @@ -4,18 +4,18 @@ "currency": "USD", "docstatus": 0, "doctype": "Number Card", - "document_type": "Church Person", + "document_type": "Person", "dynamic_filters_json": "[]", "filters_json": "[]", "function": "Count", "idx": 2, "is_public": 0, "is_standard": 1, - "label": "Church Person Count", + "label": "Person Count", "modified": "2025-09-21 22:43:42.061281", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Persons", + "module": "People", + "name": "Persons", "owner": "Administrator", "parent_document_type": "", "report_function": "Sum", diff --git a/church/church_people/print_format/__init__.py b/church/people/print_format/__init__.py similarity index 100% rename from church/church_people/print_format/__init__.py rename to church/people/print_format/__init__.py diff --git a/church/church_people/print_format/church_directory/__init__.py b/church/people/print_format/church_directory/__init__.py similarity index 100% rename from church/church_people/print_format/church_directory/__init__.py rename to church/people/print_format/church_directory/__init__.py diff --git a/church/church_people/print_format/church_directory/church_directory.json b/church/people/print_format/church_directory/church_directory.json similarity index 61% rename from church/church_people/print_format/church_directory/church_directory.json rename to church/people/print_format/church_directory/church_directory.json index e54983f..651db28 100644 --- a/church/church_people/print_format/church_directory/church_directory.json +++ b/church/people/print_format/church_directory/church_directory.json @@ -6,11 +6,11 @@ "custom_format": 1, "default_print_language": "en", "disabled": 0, - "doc_type": "Church Person", + "doc_type": "Person", "docstatus": 0, "doctype": "Print Format", "font_size": 14, - "html": "\n\n
\n

Church Directory

\n
\n\n\n \n \n\n \n \n
\n {% if doc.photo %}\n \n {% else %}\n \n {% endif %}\n \n\n
\n {{ doc.full_name or (doc.first_name + \" \" + doc.last_name) }}\n
\n\n \n {% if doc.church_roles %}\n {% for role in doc.church_roles %}\n
\n Role\n {{ role.role }}\n
\n {% endfor %}\n {% endif %}\n\n {% if doc.primary_phone %}\n
\n Phone\n {{ doc.primary_phone }}\n
\n {% endif %}\n\n {% if doc.email %}\n
\n Email\n {{ doc.email }}\n
\n {% endif %}\n\n {% if doc.home_address %}\n
\n Address\n {{ doc.home_address }}\n
\n {% endif %}\n\n {% if doc.birthday %}\n
\n Birthday\n \n {{ frappe.utils.formatdate(doc.birthday, \"MMMM d\") }}\n \n
\n {% endif %}\n\n {% if doc.anniversary %}\n
\n Anniversary\n \n {{ frappe.utils.formatdate(doc.anniversary, \"MMMM d, yyyy\") }}\n \n
\n {% endif %}\n\n {% if doc.membership_date %}\n
\n Member Since\n \n {{ frappe.utils.formatdate(doc.membership_date, \"MMMM d, yyyy\") }}\n \n
\n {% endif %}\n
\n\n
\n {{ frappe.utils.formatdate(frappe.utils.nowdate(), \"MMMM yyyy\") }}\n
\n", + "html": "\n\n
\n

Church Directory

\n
\n\n\n \n \n\n \n \n
\n {% if doc.photo %}\n \n {% else %}\n \n {% endif %}\n \n\n
\n {{ doc.full_name or (doc.first_name + \" \" + doc.last_name) }}\n
\n\n \n {% if doc.positions %}\n {% for role in doc.positions %}\n
\n Role\n {{ role.role }}\n
\n {% endfor %}\n {% endif %}\n\n {% if doc.primary_phone %}\n
\n Phone\n {{ doc.primary_phone }}\n
\n {% endif %}\n\n {% if doc.email %}\n
\n Email\n {{ doc.email }}\n
\n {% endif %}\n\n {% if doc.home_address %}\n
\n Address\n {{ doc.home_address }}\n
\n {% endif %}\n\n {% if doc.birthday %}\n
\n Birthday\n \n {{ frappe.utils.formatdate(doc.birthday, \"MMMM d\") }}\n \n
\n {% endif %}\n\n {% if doc.anniversary %}\n
\n Anniversary\n \n {{ frappe.utils.formatdate(doc.anniversary, \"MMMM d, yyyy\") }}\n \n
\n {% endif %}\n\n {% if doc.membership_date %}\n
\n Member Since\n \n {{ frappe.utils.formatdate(doc.membership_date, \"MMMM d, yyyy\") }}\n \n
\n {% endif %}\n
\n\n
\n {{ frappe.utils.formatdate(frappe.utils.nowdate(), \"MMMM yyyy\") }}\n
\n", "idx": 0, "line_breaks": 0, "margin_bottom": 15.0, @@ -19,7 +19,7 @@ "margin_top": 15.0, "modified": "2026-02-13 01:00:58.501895", "modified_by": "Administrator", - "module": "Church People", + "module": "People", "name": "Church Directory", "owner": "Administrator", "page_number": "Hide", diff --git a/church/church_people/report/__init__.py b/church/people/report/__init__.py similarity index 100% rename from church/church_people/report/__init__.py rename to church/people/report/__init__.py diff --git a/church/church_people/report/church_people_letters_not_yet_read/__init__.py b/church/people/report/church_people_letters_not_yet_read/__init__.py similarity index 100% rename from church/church_people/report/church_people_letters_not_yet_read/__init__.py rename to church/people/report/church_people_letters_not_yet_read/__init__.py diff --git a/church/church_people/report/church_people_letters_not_yet_read/church_people_letters_not_yet_read.json b/church/people/report/church_people_letters_not_yet_read/church_people_letters_not_yet_read.json similarity index 77% rename from church/church_people/report/church_people_letters_not_yet_read/church_people_letters_not_yet_read.json rename to church/people/report/church_people_letters_not_yet_read/church_people_letters_not_yet_read.json index 64343cd..01aa757 100644 --- a/church/church_people/report/church_people_letters_not_yet_read/church_people_letters_not_yet_read.json +++ b/church/people/report/church_people_letters_not_yet_read/church_people_letters_not_yet_read.json @@ -6,7 +6,7 @@ "fieldname": "parent", "fieldtype": "Link", "label": "From", - "options": "Church Missionary", + "options": "Missionary", "width": 0 }, { @@ -57,13 +57,13 @@ "letterhead": null, "modified": "2025-10-27 22:23:05.985946", "modified_by": "Administrator", - "module": "Church People", - "name": "Church People Letters Not Yet Read", + "module": "People", + "name": "People Letters Not Yet Read", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT parent, date, share_with_church, shared_date, is_private, file, content \nFROM `tabChurch Letter` \nWHERE `tabChurch Letter`.parenttype=\"Church Person\" AND share_with_church=1 AND shared_date IS NULL\nORDER BY parent", - "ref_doctype": "Church Missionary", - "report_name": "Church People Letters Not Yet Read", + "query": "SELECT parent, date, share_with_church, shared_date, is_private, file, content \nFROM `tabLetter` \nWHERE `tabLetter`.parenttype=\"Person\" AND share_with_church=1 AND shared_date IS NULL\nORDER BY parent", + "ref_doctype": "Missionary", + "report_name": "People Letters Not Yet Read", "report_type": "Query Report", "roles": [ { diff --git a/church/church_people/report/church_person_birthdays_(this_week)/__init__.py b/church/people/report/church_person_birthdays_(this_week)/__init__.py similarity index 100% rename from church/church_people/report/church_person_birthdays_(this_week)/__init__.py rename to church/people/report/church_person_birthdays_(this_week)/__init__.py diff --git a/church/church_people/report/church_person_birthdays_(this_week)/church_person_birthdays_(this_week).json b/church/people/report/church_person_birthdays_(this_week)/church_person_birthdays_(this_week).json similarity index 51% rename from church/church_people/report/church_person_birthdays_(this_week)/church_person_birthdays_(this_week).json rename to church/people/report/church_person_birthdays_(this_week)/church_person_birthdays_(this_week).json index 3a6c76a..e970c87 100644 --- a/church/church_people/report/church_person_birthdays_(this_week)/church_person_birthdays_(this_week).json +++ b/church/people/report/church_person_birthdays_(this_week)/church_person_birthdays_(this_week).json @@ -9,16 +9,16 @@ "filters": [], "idx": 2, "is_standard": "Yes", - "json": "{\"filters\":[[\"Church Person\",\"birthday\",\"Timespan\",\"this week\",false]],\"fields\":[[\"name\",\"Church Person\"],[\"birthday\",\"Church Person\"]],\"order_by\":\"`tabChurch Person`.`modified` desc\",\"add_totals_row\":0,\"page_length\":20,\"column_widths\":{\"name\":120,\"birthday\":120},\"group_by\":null}", + "json": "{\"filters\":[[\"Person\",\"birthday\",\"Timespan\",\"this week\",false]],\"fields\":[[\"name\",\"Person\"],[\"birthday\",\"Person\"]],\"order_by\":\"`tabPerson`.`modified` desc\",\"add_totals_row\":0,\"page_length\":20,\"column_widths\":{\"name\":120,\"birthday\":120},\"group_by\":null}", "letterhead": null, "modified": "2025-10-02 01:14:54.138648", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Person Birthdays (This Week)", + "module": "People", + "name": "Person Birthdays (This Week)", "owner": "Administrator", "prepared_report": 0, - "ref_doctype": "Church Person", - "report_name": "Church Person Birthdays (This Week)", + "ref_doctype": "Person", + "report_name": "Person Birthdays (This Week)", "report_type": "Report Builder", "roles": [ { diff --git a/church/church_people/report/church_person_letters/__init__.py b/church/people/report/church_person_letters/__init__.py similarity index 100% rename from church/church_people/report/church_person_letters/__init__.py rename to church/people/report/church_person_letters/__init__.py diff --git a/church/church_people/report/church_person_letters/church_person_letters.json b/church/people/report/church_person_letters/church_person_letters.json similarity index 81% rename from church/church_people/report/church_person_letters/church_person_letters.json rename to church/people/report/church_person_letters/church_person_letters.json index 3e5625b..df25a3d 100644 --- a/church/church_people/report/church_person_letters/church_person_letters.json +++ b/church/people/report/church_person_letters/church_person_letters.json @@ -6,7 +6,7 @@ "fieldname": "parent", "fieldtype": "Link", "label": "From", - "options": "Church Person", + "options": "Person", "width": 0 }, { @@ -57,13 +57,13 @@ "letterhead": null, "modified": "2025-10-27 22:18:35.634996", "modified_by": "Administrator", - "module": "Church People", - "name": "Church Person Letters", + "module": "People", + "name": "Person Letters", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT parent, date, share_with_church, shared_date, is_private, file, content \nFROM `tabChurch Letter`\nWHERE `tabChurch Letter`.parenttype = \"Church Person\"\nORDER BY parent;", - "ref_doctype": "Church Person", - "report_name": "Church Person Letters", + "query": "SELECT parent, date, share_with_church, shared_date, is_private, file, content \nFROM `tabLetter`\nWHERE `tabLetter`.parenttype = \"Person\"\nORDER BY parent;", + "ref_doctype": "Person", + "report_name": "Person Letters", "report_type": "Query Report", "roles": [ { diff --git a/church/church_people/report/church_person_roles_ending_this_month/__init__.py b/church/people/report/church_person_roles_ending_this_month/__init__.py similarity index 100% rename from church/church_people/report/church_person_roles_ending_this_month/__init__.py rename to church/people/report/church_person_roles_ending_this_month/__init__.py diff --git a/church/people/report/church_person_roles_ending_this_month/church_person_roles_ending_this_month.json b/church/people/report/church_person_roles_ending_this_month/church_person_roles_ending_this_month.json new file mode 100644 index 0000000..f8a711d --- /dev/null +++ b/church/people/report/church_person_roles_ending_this_month/church_person_roles_ending_this_month.json @@ -0,0 +1,35 @@ +{ + "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\":[[\"Position\",\"end_date\",\"Timespan\",\"this month\",false]],\"fields\":[[\"name\",\"Person\"],[\"role\",\"Position\"],[\"start_date\",\"Position\"],[\"end_date\",\"Position\"],[\"notes\",\"Position\"]],\"order_by\":\"`tabPerson`.`modified` desc\",\"add_totals_row\":0,\"page_length\":20,\"column_widths\":{\"name\":120,\"Position:role\":120,\"Position:start_date\":120,\"Position:end_date\":120,\"Position:notes\":120},\"group_by\":null}", + "letterhead": null, + "modified": "2025-10-02 01:15:17.185570", + "modified_by": "Administrator", + "module": "People", + "name": "Person Roles Ending This Month", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Person", + "report_name": "Person Roles Ending This Month", + "report_type": "Report Builder", + "roles": [ + { + "role": "System Manager" + }, + { + "role": "Church Manager" + }, + { + "role": "Church User" + } + ], + "timeout": 0 +} \ No newline at end of file diff --git a/church/church_people/report/current_church_person_roles/__init__.py b/church/people/report/current_church_person_roles/__init__.py similarity index 100% rename from church/church_people/report/current_church_person_roles/__init__.py rename to church/people/report/current_church_person_roles/__init__.py diff --git a/church/people/report/current_church_person_roles/current_church_person_roles.json b/church/people/report/current_church_person_roles/current_church_person_roles.json new file mode 100644 index 0000000..ac36cee --- /dev/null +++ b/church/people/report/current_church_person_roles/current_church_person_roles.json @@ -0,0 +1,35 @@ +{ + "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\":[[\"Position\",\"role\",\"is\",\"set\",false],[\"Position\",\"is_current_role\",\"=\",1,false]],\"fields\":[[\"name\",\"Person\"],[\"role\",\"Position\"],[\"start_date\",\"Position\"],[\"end_date\",\"Position\"],[\"notes\",\"Position\"]],\"order_by\":\"`tabPerson`.`modified` desc\",\"add_totals_row\":0,\"page_length\":20,\"column_widths\":{\"name\":120,\"Position:role\":120,\"Position:start_date\":120,\"Position:end_date\":120,\"Position:notes\":120},\"group_by\":null}", + "letterhead": null, + "modified": "2025-10-02 01:14:28.304991", + "modified_by": "Administrator", + "module": "People", + "name": "Current Person Roles", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Person", + "report_name": "Current Person Roles", + "report_type": "Report Builder", + "roles": [ + { + "role": "System Manager" + }, + { + "role": "Church Manager" + }, + { + "role": "Church User" + } + ], + "timeout": 0 +} \ No newline at end of file diff --git a/church/church_people/web_form/__init__.py b/church/people/web_form/__init__.py similarity index 100% rename from church/church_people/web_form/__init__.py rename to church/people/web_form/__init__.py diff --git a/church/church_people/web_form/personal_details/__init__.py b/church/people/web_form/personal_details/__init__.py similarity index 100% rename from church/church_people/web_form/personal_details/__init__.py rename to church/people/web_form/personal_details/__init__.py diff --git a/church/church_people/web_form/personal_details/personal_details.js b/church/people/web_form/personal_details/personal_details.js similarity index 100% rename from church/church_people/web_form/personal_details/personal_details.js rename to church/people/web_form/personal_details/personal_details.js diff --git a/church/church_people/web_form/personal_details/personal_details.json b/church/people/web_form/personal_details/personal_details.json similarity index 98% rename from church/church_people/web_form/personal_details/personal_details.json rename to church/people/web_form/personal_details/personal_details.json index 02adb74..baf7eef 100644 --- a/church/church_people/web_form/personal_details/personal_details.json +++ b/church/people/web_form/personal_details/personal_details.json @@ -10,7 +10,7 @@ "button_label": "Save", "condition_json": "[]", "creation": "2025-11-19 00:10:47.226042", - "doc_type": "Church Person", + "doc_type": "Person", "docstatus": 0, "doctype": "Web Form", "idx": 0, @@ -72,7 +72,7 @@ "max_attachment_size": 0, "modified": "2025-12-18 23:45:41.183820", "modified_by": "Administrator", - "module": "Church People", + "module": "People", "name": "personal-details", "owner": "Administrator", "published": 1, @@ -328,7 +328,7 @@ "label": "Spouse", "max_length": 0, "max_value": 0, - "options": "Church Person", + "options": "Person", "precision": "", "read_only": 0, "reqd": 0, @@ -342,7 +342,7 @@ "label": "Notable Relationships", "max_length": 0, "max_value": 0, - "options": "Church Person Relation", + "options": "Person Relation", "precision": "", "read_only": 0, "reqd": 0, diff --git a/church/church_people/web_form/personal_details/personal_details.py b/church/people/web_form/personal_details/personal_details.py similarity index 100% rename from church/church_people/web_form/personal_details/personal_details.py rename to church/people/web_form/personal_details/personal_details.py diff --git a/church/people/workspace/manual:_people/manual:_people.json b/church/people/workspace/manual:_people/manual:_people.json new file mode 100644 index 0000000..65b151a --- /dev/null +++ b/church/people/workspace/manual:_people/manual:_people.json @@ -0,0 +1,29 @@ +{ + "charts": [], + "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udc65People Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The people module contains features relating to the people of the church (i.e. Members, Families, Leadership. etc).\",\"col\":12}},{\"id\":\"Htx875Wd1w\",\"type\":\"paragraph\",\"data\":{\"text\":\"The People workspace contains number cards and graphs indicating the current count of people/families/members. there are also links to various reports (Birthdays, Roles, Letters, etc).\",\"col\":12}},{\"id\":\"qI9ZNpJJX4\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udc64Person\",\"col\":12}},{\"id\":\"RZThk3_x4O\",\"type\":\"paragraph\",\"data\":{\"text\":\"Church people include guests, members, leadership, and other people who interact or are associated with the church.\",\"col\":12}},{\"id\":\"UJEDTpYJIM\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding a person, note the following:
- Church membership and baptism status can be indicated.
    - If needed, additional member status types can be created.
- If the person has any roles in the church, they should be indicated in the 'Positions' section. 
   - If a role type does not exist, you can create new role types as needed.
- Photos should be added for members. The photos will be used in a member directory in a future versions.
- Letters from this person can be added in the 'Contact' tab
- If a family has been selected, the person will be displayed in the \\\"Family Members\\\" section on the `Family` form.
- Family relationships can be defined in the 'Family' tab.
    - When a spouse is added, the spouse's document will also be updated accordingly.
    - Additional relationships can be defined in the 'Notable Relationships' section - these relationships are not auto-updated on the other person's document.
    - A Family can be automatically created from a person by clicking the 'New Family From Person' button. This requires a 'Last Name' to be set, and will set the person as the Family's head-of-household.\",\"col\":12}},{\"id\":\"IqJm62Jfo2\",\"type\":\"paragraph\",\"data\":{\"text\":\"To give a person access to the Church App Portal, the church person must have an associated email address. 
Click the \\\"Invite to Portal\\\" button on the 'Person' form to create and associate a new user with the 'Person'.
    - The user will be created with 'Church User' permissions and linked with the 'Person' (This should give the user access to their own information as well as information that is shared with them).
    - The user should receive an invitation/welcome email (assuming email settings have been setup correctly).\",\"col\":12}},{\"id\":\"0a0Yfbfao3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Person/Member Directory\",\"col\":12}},{\"id\":\"aIL5EgTGiJ\",\"type\":\"paragraph\",\"data\":{\"text\":\"To generate a Church Directory:
1. Navigate to the church person list.
2. (Optionally) Check the Is Member filter to only show members.
3. Select all the people by checking the top left checkbox in the list.
4. Click the Actions button and choose Print.
5. Select your print options and click Print to generate a member directory pdf file.
    - Tip: To make each person page smaller when printing the pdf, you can use the print multiple pages per sheet option in your system print dialog (if your system supports this feature).
\",\"col\":12}},{\"id\":\"A37CU_rUFj\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc66Family\",\"col\":12}},{\"id\":\"_wxytNqTX4\",\"type\":\"paragraph\",\"data\":{\"text\":\"Families are groups of people who are related.\",\"col\":12}},{\"id\":\"qQr_8PsoeH\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding a family, note the following:
- After adding a family, you may want to link people to the family. When a person is linked to a family, that person will be displayed in the \\\"Family Members\\\" list.
- Only one person can be set as the head of household. To set the head-of-household, go to the person's document and check 'Is Head of Household' on the 'Family' tab.
\",\"col\":12}}]", + "creation": "2025-10-26 22:59:15.251142", + "custom_blocks": [], + "docstatus": 0, + "doctype": "Workspace", + "for_user": "", + "hide_custom": 0, + "icon": "help", + "idx": 0, + "indicator_color": "green", + "is_hidden": 0, + "label": "Manual: People", + "links": [], + "modified": "2026-03-01 23:53:34.182905", + "modified_by": "Administrator", + "module": "People", + "name": "Manual: People", + "number_cards": [], + "owner": "Administrator", + "parent_page": "People", + "public": 1, + "quick_lists": [], + "roles": [], + "sequence_id": 17.0, + "shortcuts": [], + "title": "Manual: People" +} \ No newline at end of file diff --git a/church/church_people/workspace/people/people.json b/church/people/workspace/people/people.json similarity index 86% rename from church/church_people/workspace/people/people.json rename to church/people/workspace/people/people.json index 48ad868..15b6a20 100644 --- a/church/church_people/workspace/people/people.json +++ b/church/people/workspace/people/people.json @@ -1,7 +1,7 @@ { "charts": [ { - "chart_name": "Church Persons Count", + "chart_name": "Persons Count", "label": "Persons" }, { @@ -37,7 +37,7 @@ "is_query_report": 0, "label": "People", "link_count": 0, - "link_to": "Church Person", + "link_to": "Person", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -47,7 +47,7 @@ "is_query_report": 0, "label": "Families", "link_count": 0, - "link_to": "Church Family", + "link_to": "Family", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -57,7 +57,7 @@ "is_query_report": 0, "label": "Relation Types", "link_count": 0, - "link_to": "Church Person Relation Type", + "link_to": "Person Relation Type", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -67,7 +67,7 @@ "is_query_report": 0, "label": "Member Status Types", "link_count": 0, - "link_to": "Church Member Status", + "link_to": "Member Status", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -77,7 +77,7 @@ "is_query_report": 0, "label": "Role Types", "link_count": 0, - "link_to": "Church Role Type", + "link_to": "Role Type", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -97,10 +97,10 @@ "is_query_report": 0, "label": "Current Roles", "link_count": 0, - "link_to": "Current Church Person Roles", + "link_to": "Current Person Roles", "link_type": "Report", "onboard": 0, - "report_ref_doctype": "Church Person", + "report_ref_doctype": "Person", "type": "Link" }, { @@ -108,10 +108,10 @@ "is_query_report": 0, "label": "Birthdays (This Week)", "link_count": 0, - "link_to": "Church Person Birthdays (This Week)", + "link_to": "Person Birthdays (This Week)", "link_type": "Report", "onboard": 0, - "report_ref_doctype": "Church Person", + "report_ref_doctype": "Person", "type": "Link" }, { @@ -119,10 +119,10 @@ "is_query_report": 0, "label": "Roles Ending This Month", "link_count": 0, - "link_to": "Church Person Roles Ending This Month", + "link_to": "Person Roles Ending This Month", "link_type": "Report", "onboard": 0, - "report_ref_doctype": "Church Person", + "report_ref_doctype": "Person", "type": "Link" }, { @@ -130,7 +130,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" @@ -140,7 +140,7 @@ "is_query_report": 1, "label": "Person Letters Not Yet Read", "link_count": 0, - "link_to": "Church People Letters Not Yet Read", + "link_to": "People Letters Not Yet Read", "link_type": "Report", "onboard": 0, "type": "Link" @@ -148,12 +148,12 @@ ], "modified": "2026-03-01 23:53:34.159927", "modified_by": "Administrator", - "module": "Church People", + "module": "People", "name": "People", "number_cards": [ { "label": "Persons", - "number_card_name": "Church Persons" + "number_card_name": "Persons" }, { "label": "Members", diff --git a/church/church_prayers/__init__.py b/church/prayers/__init__.py similarity index 100% rename from church/church_prayers/__init__.py rename to church/prayers/__init__.py diff --git a/church/church_prayers/doctype/__init__.py b/church/prayers/doctype/__init__.py similarity index 100% rename from church/church_prayers/doctype/__init__.py rename to church/prayers/doctype/__init__.py diff --git a/church/church_prayers/doctype/church_prayer/__init__.py b/church/prayers/doctype/prayer/__init__.py similarity index 100% rename from church/church_prayers/doctype/church_prayer/__init__.py rename to church/prayers/doctype/prayer/__init__.py diff --git a/church/prayers/doctype/prayer/prayer.js b/church/prayers/doctype/prayer/prayer.js new file mode 100644 index 0000000..8865484 --- /dev/null +++ b/church/prayers/doctype/prayer/prayer.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Prayer", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_prayers/doctype/church_prayer/church_prayer.json b/church/prayers/doctype/prayer/prayer.json similarity index 91% rename from church/church_prayers/doctype/church_prayer/church_prayer.json rename to church/prayers/doctype/prayer/prayer.json index f64f33d..47eb2c6 100644 --- a/church/church_prayers/doctype/church_prayer/church_prayer.json +++ b/church/prayers/doctype/prayer/prayer.json @@ -21,7 +21,7 @@ "fieldtype": "Link", "in_list_view": 1, "label": "Person", - "options": "Church Person", + "options": "Person", "reqd": 1, "search_index": 1 }, @@ -48,21 +48,21 @@ "fieldname": "topics", "fieldtype": "Table", "label": "Prayer Topics", - "options": "Church Prayer Topic" + "options": "Prayer Topic" } ], "grid_page_length": 50, "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Event", + "link_doctype": "Function", "link_fieldname": "item" } ], "modified": "2025-11-15 22:56:20.377317", "modified_by": "Administrator", - "module": "Church Prayers", - "name": "Church Prayer", + "module": "Prayers", + "name": "Prayer", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/prayers/doctype/prayer/prayer.py b/church/prayers/doctype/prayer/prayer.py new file mode 100644 index 0000000..b2cb685 --- /dev/null +++ b/church/prayers/doctype/prayer/prayer.py @@ -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 Prayer(Document): + pass diff --git a/church/prayers/doctype/prayer/test_prayer.py b/church/prayers/doctype/prayer/test_prayer.py new file mode 100644 index 0000000..30f1536 --- /dev/null +++ b/church/prayers/doctype/prayer/test_prayer.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestPrayer(FrappeTestCase): + pass diff --git a/church/church_prayers/doctype/church_prayer_request/__init__.py b/church/prayers/doctype/prayer_request/__init__.py similarity index 100% rename from church/church_prayers/doctype/church_prayer_request/__init__.py rename to church/prayers/doctype/prayer_request/__init__.py diff --git a/church/church_prayers/doctype/church_prayer_request/church_prayer_request.js b/church/prayers/doctype/prayer_request/prayer_request.js similarity index 74% rename from church/church_prayers/doctype/church_prayer_request/church_prayer_request.js rename to church/prayers/doctype/prayer_request/prayer_request.js index 6ed048f..7335c99 100644 --- a/church/church_prayers/doctype/church_prayer_request/church_prayer_request.js +++ b/church/prayers/doctype/prayer_request/prayer_request.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -frappe.ui.form.on('Church Prayer Request', { +frappe.ui.form.on('Prayer Request', { recipient_type: function(frm) { // Dynamically update the Recipient field description based on the Recipient Type that is selected if (frm.doc.recipient_type) { @@ -9,9 +9,12 @@ frappe.ui.form.on('Church Prayer Request', { } }, onload: function(frm) { + // Filter recipient_type to DocTypes in the church app + church.set_church_doctype_query(frm, 'recipient_type'); + // Pre-populate the requestor field with the current user's name if (frm.is_new()) { - frappe.db.get_value('Church Person', {'portal_user': frappe.session.user}, 'name') + frappe.db.get_value('Person', {'portal_user': frappe.session.user}, 'name') .then(r => { if (r && r.message) { frm.set_value('requestor', r.message.name); diff --git a/church/church_prayers/doctype/church_prayer_request/church_prayer_request.json b/church/prayers/doctype/prayer_request/prayer_request.json similarity index 90% rename from church/church_prayers/doctype/church_prayer_request/church_prayer_request.json rename to church/prayers/doctype/prayer_request/prayer_request.json index 1bdfae8..deac989 100644 --- a/church/church_prayers/doctype/church_prayer_request/church_prayer_request.json +++ b/church/prayers/doctype/prayer_request/prayer_request.json @@ -3,7 +3,7 @@ "allow_import": 1, "autoname": "format:Prayer Request {#}", "creation": "2025-09-13 00:16:52.698863", - "description": "A request for prayer from (or for) a `Church Person`.", + "description": "A request for prayer from (or for) a `Person`.", "doctype": "DocType", "documentation": "/app/manual%3A-prayers", "engine": "InnoDB", @@ -29,7 +29,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Status", - "options": "Church Prayer Request Status", + "options": "Prayer Request Status", "reqd": 1 }, { @@ -71,7 +71,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Type", - "options": "Church Prayer Request Type", + "options": "Prayer Request Type", "reqd": 1 }, { @@ -81,7 +81,7 @@ "in_filter": 1, "in_preview": 1, "label": "Requestor", - "options": "Church Person", + "options": "Person", "reqd": 1 }, { @@ -98,27 +98,26 @@ "search_index": 1 }, { - "default": "Church Person", + "default": "Person", "description": "The type of entity for which prayer is being requested.", "fieldname": "recipient_type", "fieldtype": "Link", "label": "Recipient Type", - "link_filters": "[[\"DocType\",\"name\",\"like\",\"%Church%\"]]", "options": "DocType" } ], "grid_page_length": 50, "links": [ { - "link_doctype": "Church Prayer", + "link_doctype": "Prayer", "link_fieldname": "topic", "table_fieldname": "topics" } ], "modified": "2026-02-19 23:47:54.971006", "modified_by": "Administrator", - "module": "Church Prayers", - "name": "Church Prayer Request", + "module": "Prayers", + "name": "Prayer Request", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/church_prayers/doctype/church_prayer_request/church_prayer_request.py b/church/prayers/doctype/prayer_request/prayer_request.py similarity index 92% rename from church/church_prayers/doctype/church_prayer_request/church_prayer_request.py rename to church/prayers/doctype/prayer_request/prayer_request.py index fec5284..1b7b6a1 100644 --- a/church/church_prayers/doctype/church_prayer_request/church_prayer_request.py +++ b/church/prayers/doctype/prayer_request/prayer_request.py @@ -6,7 +6,7 @@ from frappe.model.document import Document from frappe.website.website_generator import WebsiteGenerator -class ChurchPrayerRequest(Document): +class PrayerRequest(Document): pass diff --git a/church/church_prayers/doctype/church_prayer_request/templates/church_prayer_request.html b/church/prayers/doctype/prayer_request/templates/church_prayer_request.html similarity index 100% rename from church/church_prayers/doctype/church_prayer_request/templates/church_prayer_request.html rename to church/prayers/doctype/prayer_request/templates/church_prayer_request.html diff --git a/church/church_prayers/doctype/church_prayer_request/templates/church_prayer_request_row.html b/church/prayers/doctype/prayer_request/templates/church_prayer_request_row.html similarity index 100% rename from church/church_prayers/doctype/church_prayer_request/templates/church_prayer_request_row.html rename to church/prayers/doctype/prayer_request/templates/church_prayer_request_row.html diff --git a/church/church_finances/doctype/church_expense/test_church_expense.py b/church/prayers/doctype/prayer_request/test_prayer_request.py similarity index 77% rename from church/church_finances/doctype/church_expense/test_church_expense.py rename to church/prayers/doctype/prayer_request/test_prayer_request.py index 510730b..1f78529 100644 --- a/church/church_finances/doctype/church_expense/test_church_expense.py +++ b/church/prayers/doctype/prayer_request/test_prayer_request.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchExpense(FrappeTestCase): +class TestPrayerRequest(FrappeTestCase): pass diff --git a/church/church_prayers/doctype/church_prayer_request_status/__init__.py b/church/prayers/doctype/prayer_request_status/__init__.py similarity index 100% rename from church/church_prayers/doctype/church_prayer_request_status/__init__.py rename to church/prayers/doctype/prayer_request_status/__init__.py diff --git a/church/prayers/doctype/prayer_request_status/prayer_request_status.js b/church/prayers/doctype/prayer_request_status/prayer_request_status.js new file mode 100644 index 0000000..4deae11 --- /dev/null +++ b/church/prayers/doctype/prayer_request_status/prayer_request_status.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Prayer Request Status", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.json b/church/prayers/doctype/prayer_request_status/prayer_request_status.json similarity index 95% rename from church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.json rename to church/prayers/doctype/prayer_request_status/prayer_request_status.json index cb03de5..4b9d94f 100644 --- a/church/church_prayers/doctype/church_prayer_request_status/church_prayer_request_status.json +++ b/church/prayers/doctype/prayer_request_status/prayer_request_status.json @@ -34,8 +34,8 @@ "links": [], "modified": "2025-11-15 22:55:34.948117", "modified_by": "Administrator", - "module": "Church Prayers", - "name": "Church Prayer Request Status", + "module": "Prayers", + "name": "Prayer Request Status", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/prayers/doctype/prayer_request_status/prayer_request_status.py b/church/prayers/doctype/prayer_request_status/prayer_request_status.py new file mode 100644 index 0000000..ebd4433 --- /dev/null +++ b/church/prayers/doctype/prayer_request_status/prayer_request_status.py @@ -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 PrayerRequestStatus(Document): + pass diff --git a/church/prayers/doctype/prayer_request_status/test_prayer_request_status.py b/church/prayers/doctype/prayer_request_status/test_prayer_request_status.py new file mode 100644 index 0000000..36c75f8 --- /dev/null +++ b/church/prayers/doctype/prayer_request_status/test_prayer_request_status.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestPrayerRequestStatus(FrappeTestCase): + pass diff --git a/church/church_prayers/doctype/church_prayer_request_type/__init__.py b/church/prayers/doctype/prayer_request_type/__init__.py similarity index 100% rename from church/church_prayers/doctype/church_prayer_request_type/__init__.py rename to church/prayers/doctype/prayer_request_type/__init__.py diff --git a/church/church_communications/doctype/church_presentation/church_presentation.js b/church/prayers/doctype/prayer_request_type/prayer_request_type.js similarity index 74% rename from church/church_communications/doctype/church_presentation/church_presentation.js rename to church/prayers/doctype/prayer_request_type/prayer_request_type.js index f1d219b..fb5a8b0 100644 --- a/church/church_communications/doctype/church_presentation/church_presentation.js +++ b/church/prayers/doctype/prayer_request_type/prayer_request_type.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -// frappe.ui.form.on("Church Presentation", { +// frappe.ui.form.on("Prayer Request Type", { // refresh(frm) { // }, diff --git a/church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.json b/church/prayers/doctype/prayer_request_type/prayer_request_type.json similarity index 95% rename from church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.json rename to church/prayers/doctype/prayer_request_type/prayer_request_type.json index a112670..aaf75ba 100644 --- a/church/church_prayers/doctype/church_prayer_request_type/church_prayer_request_type.json +++ b/church/prayers/doctype/prayer_request_type/prayer_request_type.json @@ -35,8 +35,8 @@ "links": [], "modified": "2025-11-15 22:56:08.171517", "modified_by": "Administrator", - "module": "Church Prayers", - "name": "Church Prayer Request Type", + "module": "Prayers", + "name": "Prayer Request Type", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/prayers/doctype/prayer_request_type/prayer_request_type.py b/church/prayers/doctype/prayer_request_type/prayer_request_type.py new file mode 100644 index 0000000..dabf5e1 --- /dev/null +++ b/church/prayers/doctype/prayer_request_type/prayer_request_type.py @@ -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 PrayerRequestType(Document): + pass diff --git a/church/prayers/doctype/prayer_request_type/test_prayer_request_type.py b/church/prayers/doctype/prayer_request_type/test_prayer_request_type.py new file mode 100644 index 0000000..b020e99 --- /dev/null +++ b/church/prayers/doctype/prayer_request_type/test_prayer_request_type.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestPrayerRequestType(FrappeTestCase): + pass diff --git a/church/church_prayers/doctype/church_prayer_topic/__init__.py b/church/prayers/doctype/prayer_topic/__init__.py similarity index 100% rename from church/church_prayers/doctype/church_prayer_topic/__init__.py rename to church/prayers/doctype/prayer_topic/__init__.py diff --git a/church/church_prayers/doctype/church_prayer_topic/church_prayer_topic.json b/church/prayers/doctype/prayer_topic/prayer_topic.json similarity index 85% rename from church/church_prayers/doctype/church_prayer_topic/church_prayer_topic.json rename to church/prayers/doctype/prayer_topic/prayer_topic.json index 95c52d8..6aa0dd4 100644 --- a/church/church_prayers/doctype/church_prayer_topic/church_prayer_topic.json +++ b/church/prayers/doctype/prayer_topic/prayer_topic.json @@ -2,7 +2,7 @@ "actions": [], "allow_rename": 1, "creation": "2025-10-08 22:18:20.512806", - "description": "Parts of a `Church Prayer`, i.e prayer requests, persons, verses, etc.", + "description": "Parts of a `Prayer`, i.e prayer requests, persons, verses, etc.", "doctype": "DocType", "documentation": "/app/manual%3A-prayers", "editable_grid": 1, @@ -14,7 +14,7 @@ ], "fields": [ { - "default": "Church Prayer Request", + "default": "Prayer Request", "fieldname": "topic_type", "fieldtype": "Link", "in_filter": 1, @@ -49,8 +49,8 @@ "links": [], "modified": "2025-11-14 00:00:36.473877", "modified_by": "Administrator", - "module": "Church Prayers", - "name": "Church Prayer Topic", + "module": "Prayers", + "name": "Prayer Topic", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/prayers/doctype/prayer_topic/prayer_topic.py b/church/prayers/doctype/prayer_topic/prayer_topic.py new file mode 100644 index 0000000..c8c1d35 --- /dev/null +++ b/church/prayers/doctype/prayer_topic/prayer_topic.py @@ -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 PrayerTopic(Document): + pass diff --git a/church/church_prayers/number_card/church_prayer_request_count/church_prayer_request_count.json b/church/prayers/number_card/church_prayer_request_count/church_prayer_request_count.json similarity index 64% rename from church/church_prayers/number_card/church_prayer_request_count/church_prayer_request_count.json rename to church/prayers/number_card/church_prayer_request_count/church_prayer_request_count.json index 4207254..8ce2503 100644 --- a/church/church_prayers/number_card/church_prayer_request_count/church_prayer_request_count.json +++ b/church/prayers/number_card/church_prayer_request_count/church_prayer_request_count.json @@ -4,18 +4,18 @@ "currency": "USD", "docstatus": 0, "doctype": "Number Card", - "document_type": "Church Prayer Request", + "document_type": "Prayer Request", "dynamic_filters_json": "[]", - "filters_json": "[[\"Church Prayer Request\",\"status\",\"in\",[\"Requested\",\"Intercession\"],false]]", + "filters_json": "[[\"Prayer Request\",\"status\",\"in\",[\"Requested\",\"Intercession\"],false]]", "function": "Count", "idx": 3, "is_public": 1, "is_standard": 1, - "label": "Church Prayer Request Count (Active)", + "label": "Prayer Request Count (Active)", "modified": "2025-09-25 22:45:11.344516", "modified_by": "Administrator", - "module": "Church Prayers", - "name": "Church Prayer Request Count", + "module": "Prayers", + "name": "Prayer Request Count", "owner": "Administrator", "parent_document_type": "", "report_function": "Sum", diff --git a/church/church_prayers/number_card/church_prayer_request_count_(answered)/church_prayer_request_count_(answered).json b/church/prayers/number_card/church_prayer_request_count_(answered)/church_prayer_request_count_(answered).json similarity index 65% rename from church/church_prayers/number_card/church_prayer_request_count_(answered)/church_prayer_request_count_(answered).json rename to church/prayers/number_card/church_prayer_request_count_(answered)/church_prayer_request_count_(answered).json index db6358b..c9eb1dc 100644 --- a/church/church_prayers/number_card/church_prayer_request_count_(answered)/church_prayer_request_count_(answered).json +++ b/church/prayers/number_card/church_prayer_request_count_(answered)/church_prayer_request_count_(answered).json @@ -4,18 +4,18 @@ "currency": "USD", "docstatus": 0, "doctype": "Number Card", - "document_type": "Church Prayer Request", + "document_type": "Prayer Request", "dynamic_filters_json": "[]", - "filters_json": "[[\"Church Prayer Request\",\"status\",\"=\",\"Answered\",false]]", + "filters_json": "[[\"Prayer Request\",\"status\",\"=\",\"Answered\",false]]", "function": "Count", "idx": 1, "is_public": 1, "is_standard": 1, - "label": "Church Prayer Request Count (Answered)", + "label": "Prayer Request Count (Answered)", "modified": "2025-09-21 22:44:03.076610", "modified_by": "Administrator", - "module": "Church Prayers", - "name": "Church Prayer Request Count (Answered)", + "module": "Prayers", + "name": "Prayer Request Count (Answered)", "owner": "Administrator", "parent_document_type": "", "report_function": "Sum", diff --git a/church/church_prayers/report/__init__.py b/church/prayers/report/__init__.py similarity index 100% rename from church/church_prayers/report/__init__.py rename to church/prayers/report/__init__.py diff --git a/church/church_prayers/report/church_prayer_requests:_recently_answered/__init__.py b/church/prayers/report/church_prayer_requests:_recently_answered/__init__.py similarity index 100% rename from church/church_prayers/report/church_prayer_requests:_recently_answered/__init__.py rename to church/prayers/report/church_prayer_requests:_recently_answered/__init__.py diff --git a/church/church_prayers/report/church_prayer_requests:_recently_answered/church_prayer_requests:_recently_answered.json b/church/prayers/report/church_prayer_requests:_recently_answered/church_prayer_requests:_recently_answered.json similarity index 74% rename from church/church_prayers/report/church_prayer_requests:_recently_answered/church_prayer_requests:_recently_answered.json rename to church/prayers/report/church_prayer_requests:_recently_answered/church_prayer_requests:_recently_answered.json index bd93e8c..71b0b21 100644 --- a/church/church_prayers/report/church_prayer_requests:_recently_answered/church_prayer_requests:_recently_answered.json +++ b/church/prayers/report/church_prayer_requests:_recently_answered/church_prayer_requests:_recently_answered.json @@ -6,21 +6,21 @@ "fieldname": "status", "fieldtype": "Link", "label": "Status", - "options": "Church Prayer Request Status", + "options": "Prayer Request Status", "width": 0 }, { "fieldname": "type", "fieldtype": "Link", "label": "Type", - "options": "Church Prayer Request Type", + "options": "Prayer Request Type", "width": 0 }, { "fieldname": "related_person", "fieldtype": "Link", "label": "Related Person", - "options": "Church Person", + "options": "Person", "width": 0 }, { @@ -51,13 +51,13 @@ "letterhead": null, "modified": "2025-09-25 22:56:55.686505", "modified_by": "Administrator", - "module": "Church Prayers", - "name": "Church Prayer Requests: Recently Answered", + "module": "Prayers", + "name": "Prayer Requests: Recently Answered", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT status, type, related_person, request\nFROM `tabChurch Prayer Request`\nWHERE creation > %(request_since)s and status = 'answered';", - "ref_doctype": "Church Prayer Request", - "report_name": "Church Prayer Requests: Recently Answered", + "query": "SELECT status, type, related_person, request\nFROM `tabPrayer Request`\nWHERE creation > %(request_since)s and status = 'answered';", + "ref_doctype": "Prayer Request", + "report_name": "Prayer Requests: Recently Answered", "report_type": "Query Report", "roles": [ { diff --git a/church/church_prayers/report/church_prayer_requests:_recently_created/__init__.py b/church/prayers/report/church_prayer_requests:_recently_created/__init__.py similarity index 100% rename from church/church_prayers/report/church_prayer_requests:_recently_created/__init__.py rename to church/prayers/report/church_prayer_requests:_recently_created/__init__.py diff --git a/church/church_prayers/report/church_prayer_requests:_recently_created/church_prayer_requests:_recently_created.json b/church/prayers/report/church_prayer_requests:_recently_created/church_prayer_requests:_recently_created.json similarity index 73% rename from church/church_prayers/report/church_prayer_requests:_recently_created/church_prayer_requests:_recently_created.json rename to church/prayers/report/church_prayer_requests:_recently_created/church_prayer_requests:_recently_created.json index 8fb3b7b..2c4365d 100644 --- a/church/church_prayers/report/church_prayer_requests:_recently_created/church_prayer_requests:_recently_created.json +++ b/church/prayers/report/church_prayer_requests:_recently_created/church_prayer_requests:_recently_created.json @@ -6,35 +6,35 @@ "fieldname": "status", "fieldtype": "Link", "label": "Status", - "options": "Church Prayer Request Status", + "options": "Prayer Request Status", "width": 0 }, { "fieldname": "type", "fieldtype": "Link", "label": "Type", - "options": "Church Prayer Request Type", + "options": "Prayer Request Type", "width": 0 }, { "fieldname": "related_person", "fieldtype": "Link", "label": "Related Person", - "options": "Church Person", + "options": "Person", "width": 0 }, { "fieldname": "request", "fieldtype": "Data", "label": "Request", - "options": "Church Prayer Request", + "options": "Prayer Request", "width": 0 }, { "fieldname": "name", "fieldtype": "Link", "label": "Link to Request", - "options": "Church Prayer Request", + "options": "Prayer Request", "width": 0 } ], @@ -59,13 +59,13 @@ "letterhead": null, "modified": "2025-11-02 22:00:28.164362", "modified_by": "Administrator", - "module": "Church Prayers", - "name": "Church Prayer Requests: Recently Created", + "module": "Prayers", + "name": "Prayer Requests: Recently Created", "owner": "Administrator", "prepared_report": 0, - "query": "SELECT status, type, related_person, request, name\nFROM `tabChurch Prayer Request`\nWHERE creation > %(request_since)s;", - "ref_doctype": "Church Prayer Request", - "report_name": "Church Prayer Requests: Recently Created", + "query": "SELECT status, type, related_person, request, name\nFROM `tabPrayer Request`\nWHERE creation > %(request_since)s;", + "ref_doctype": "Prayer Request", + "report_name": "Prayer Requests: Recently Created", "report_type": "Query Report", "roles": [ { diff --git a/church/church_prayers/web_form/__init__.py b/church/prayers/web_form/__init__.py similarity index 100% rename from church/church_prayers/web_form/__init__.py rename to church/prayers/web_form/__init__.py diff --git a/church/church_prayers/web_form/prayer_request/__init__.py b/church/prayers/web_form/prayer_request/__init__.py similarity index 100% rename from church/church_prayers/web_form/prayer_request/__init__.py rename to church/prayers/web_form/prayer_request/__init__.py diff --git a/church/church_prayers/web_form/prayer_request/prayer_request.js b/church/prayers/web_form/prayer_request/prayer_request.js similarity index 100% rename from church/church_prayers/web_form/prayer_request/prayer_request.js rename to church/prayers/web_form/prayer_request/prayer_request.js diff --git a/church/church_prayers/web_form/prayer_request/prayer_request.json b/church/prayers/web_form/prayer_request/prayer_request.json similarity index 95% rename from church/church_prayers/web_form/prayer_request/prayer_request.json rename to church/prayers/web_form/prayer_request/prayer_request.json index 287e0ce..74bda29 100644 --- a/church/church_prayers/web_form/prayer_request/prayer_request.json +++ b/church/prayers/web_form/prayer_request/prayer_request.json @@ -11,7 +11,7 @@ "client_script": "", "condition_json": "[]", "creation": "2025-09-13 22:28:01.939717", - "doc_type": "Church Prayer Request", + "doc_type": "Prayer Request", "docstatus": 0, "doctype": "Web Form", "idx": 0, @@ -59,7 +59,7 @@ "max_attachment_size": 0, "modified": "2026-02-20 00:57:34.930575", "modified_by": "Administrator", - "module": "Church Prayers", + "module": "Prayers", "name": "prayer-request", "owner": "Administrator", "published": 1, @@ -78,7 +78,7 @@ "label": "Status", "max_length": 0, "max_value": 0, - "options": "Church Prayer Request Status", + "options": "Prayer Request Status", "precision": "", "read_only": 0, "reqd": 1, @@ -93,7 +93,7 @@ "label": "Type", "max_length": 0, "max_value": 0, - "options": "Church Prayer Request Type", + "options": "Prayer Request Type", "precision": "", "read_only": 0, "reqd": 1, @@ -122,7 +122,7 @@ "label": "Requestor", "max_length": 0, "max_value": 0, - "options": "Church Person", + "options": "Person", "precision": "", "read_only": 0, "reqd": 1, diff --git a/church/church_prayers/web_form/prayer_request/prayer_request.py b/church/prayers/web_form/prayer_request/prayer_request.py similarity index 100% rename from church/church_prayers/web_form/prayer_request/prayer_request.py rename to church/prayers/web_form/prayer_request/prayer_request.py diff --git a/church/church_prayers/web_form/prayer_request_anonymous/__init__.py b/church/prayers/web_form/prayer_request_anonymous/__init__.py similarity index 100% rename from church/church_prayers/web_form/prayer_request_anonymous/__init__.py rename to church/prayers/web_form/prayer_request_anonymous/__init__.py diff --git a/church/church_prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.js b/church/prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.js similarity index 100% rename from church/church_prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.js rename to church/prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.js diff --git a/church/church_prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.json b/church/prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.json similarity index 92% rename from church/church_prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.json rename to church/prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.json index 5cc0b36..1d9dc7f 100644 --- a/church/church_prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.json +++ b/church/prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.json @@ -8,9 +8,9 @@ "anonymous": 1, "apply_document_permissions": 1, "button_label": "Save", - "condition_json": "[[\"Church Prayer Request\",\"status\",\"!=\",\"Answered\",false]]", + "condition_json": "[[\"Prayer Request\",\"status\",\"!=\",\"Answered\",false]]", "creation": "2025-09-13 23:09:32.093784", - "doc_type": "Church Prayer Request", + "doc_type": "Prayer Request", "docstatus": 0, "doctype": "Web Form", "idx": 0, @@ -37,7 +37,7 @@ "max_attachment_size": 0, "modified": "2025-10-03 22:44:08.779481", "modified_by": "Administrator", - "module": "Church Prayers", + "module": "Prayers", "name": "prayer-request-anonymous", "owner": "Administrator", "published": 1, @@ -56,7 +56,7 @@ "label": "Status", "max_length": 0, "max_value": 0, - "options": "Church Prayer Request Status", + "options": "Prayer Request Status", "precision": "", "read_only": 0, "reqd": 1, @@ -71,7 +71,7 @@ "label": "Type", "max_length": 0, "max_value": 0, - "options": "Church Prayer Request Type", + "options": "Prayer Request Type", "precision": "", "read_only": 0, "reqd": 1, diff --git a/church/church_prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.py b/church/prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.py similarity index 100% rename from church/church_prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.py rename to church/prayers/web_form/prayer_request_anonymous/prayer_request_anonymous.py diff --git a/church/church_prayers/workspace/manual:_prayers/manual:_prayers.json b/church/prayers/workspace/manual:_prayers/manual:_prayers.json similarity index 99% rename from church/church_prayers/workspace/manual:_prayers/manual:_prayers.json rename to church/prayers/workspace/manual:_prayers/manual:_prayers.json index 8c75079..4f62802 100644 --- a/church/church_prayers/workspace/manual:_prayers/manual:_prayers.json +++ b/church/prayers/workspace/manual:_prayers/manual:_prayers.json @@ -15,7 +15,7 @@ "links": [], "modified": "2026-03-01 23:53:34.218246", "modified_by": "Administrator", - "module": "Church Prayers", + "module": "Prayers", "name": "Manual: Prayers", "number_cards": [], "owner": "Administrator", diff --git a/church/church_prayers/workspace/prayers/prayers.json b/church/prayers/workspace/prayers/prayers.json similarity index 84% rename from church/church_prayers/workspace/prayers/prayers.json rename to church/prayers/workspace/prayers/prayers.json index 66618c2..8aef8fd 100644 --- a/church/church_prayers/workspace/prayers/prayers.json +++ b/church/prayers/workspace/prayers/prayers.json @@ -1,11 +1,11 @@ { "charts": [ { - "chart_name": "Church Prayer Request Count (Active)", + "chart_name": "Prayer Request Count (Active)", "label": "Active Prayer Request Count" }, { - "chart_name": "Church Prayer Requests (Answered)", + "chart_name": "Prayer Requests (Answered)", "label": "Answered Prayers" } ], @@ -36,7 +36,7 @@ "is_query_report": 1, "label": "Recently Created", "link_count": 0, - "link_to": "Church Prayer Requests: Recently Created", + "link_to": "Prayer Requests: Recently Created", "link_type": "Report", "onboard": 0, "type": "Link" @@ -46,7 +46,7 @@ "is_query_report": 1, "label": "Recently Answered", "link_count": 0, - "link_to": "Church Prayer Requests: Recently Answered", + "link_to": "Prayer Requests: Recently Answered", "link_type": "Report", "onboard": 0, "type": "Link" @@ -65,7 +65,7 @@ "is_query_report": 0, "label": "Requests", "link_count": 0, - "link_to": "Church Prayer Request", + "link_to": "Prayer Request", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -75,7 +75,7 @@ "is_query_report": 0, "label": "Request Statuses", "link_count": 0, - "link_to": "Church Prayer Request Status", + "link_to": "Prayer Request Status", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -85,7 +85,7 @@ "is_query_report": 0, "label": "Request Types", "link_count": 0, - "link_to": "Church Prayer Request Type", + "link_to": "Prayer Request Type", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -95,7 +95,7 @@ "is_query_report": 0, "label": "Prayers", "link_count": 0, - "link_to": "Church Prayer", + "link_to": "Prayer", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -103,16 +103,16 @@ ], "modified": "2026-03-01 23:53:34.199101", "modified_by": "Administrator", - "module": "Church Prayers", + "module": "Prayers", "name": "Prayers", "number_cards": [ { "label": "Active Prayer Requests", - "number_card_name": "Church Prayer Request Count" + "number_card_name": "Prayer Request Count" }, { "label": "Answered Prayers", - "number_card_name": "Church Prayer Request Count (Answered)" + "number_card_name": "Prayer Request Count (Answered)" } ], "owner": "Administrator", diff --git a/church/public/js/church_utils.js b/church/public/js/church_utils.js new file mode 100644 index 0000000..8afbed3 --- /dev/null +++ b/church/public/js/church_utils.js @@ -0,0 +1,24 @@ +window.church = window.church || {}; + +// Sets a query filter on a DocType link field to only show DocTypes belonging to the church app. +// fieldname: the Link field to filter +// child_table: (optional) the child table fieldname if the field is in a child doctype +church.set_church_doctype_query = function(frm, fieldname, child_table) { + frappe.db.get_list('Module Def', { + filters: { app_name: 'church' }, + fields: ['name'], + limit: 0 + }).then(modules => { + const module_names = modules.map(m => m.name); + const query = function() { + return { + filters: [['DocType', 'module', 'in', module_names]] + }; + }; + if (child_table) { + frm.set_query(fieldname, child_table, query); + } else { + frm.set_query(fieldname, query); + } + }); +}; diff --git a/church/church_study/__init__.py b/church/study/__init__.py similarity index 100% rename from church/church_study/__init__.py rename to church/study/__init__.py diff --git a/church/church_study/doctype/__init__.py b/church/study/doctype/__init__.py similarity index 100% rename from church/church_study/doctype/__init__.py rename to church/study/doctype/__init__.py diff --git a/church/church_study/doctype/church_bible_book/__init__.py b/church/study/doctype/bible_book/__init__.py similarity index 100% rename from church/church_study/doctype/church_bible_book/__init__.py rename to church/study/doctype/bible_book/__init__.py diff --git a/church/study/doctype/bible_book/bible_book.js b/church/study/doctype/bible_book/bible_book.js new file mode 100644 index 0000000..73aeb26 --- /dev/null +++ b/church/study/doctype/bible_book/bible_book.js @@ -0,0 +1,8 @@ +// Copyright (c) 2025, meichthys and contributors +// For license information, please see license.txt + +// frappe.ui.form.on("Bible Book", { +// refresh(frm) { + +// }, +// }); diff --git a/church/church_study/doctype/church_bible_book/church_bible_book.json b/church/study/doctype/bible_book/bible_book.json similarity index 93% rename from church/church_study/doctype/church_bible_book/church_bible_book.json rename to church/study/doctype/bible_book/bible_book.json index 7f84dcb..d2e24b6 100644 --- a/church/church_study/doctype/church_bible_book/church_bible_book.json +++ b/church/study/doctype/bible_book/bible_book.json @@ -37,14 +37,14 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Bible Verse", + "link_doctype": "Bible Verse", "link_fieldname": "book" } ], "modified": "2025-11-15 22:56:27.649435", "modified_by": "Administrator", - "module": "Church Study", - "name": "Church Bible Book", + "module": "Study", + "name": "Bible Book", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/study/doctype/bible_book/bible_book.py b/church/study/doctype/bible_book/bible_book.py new file mode 100644 index 0000000..66137c6 --- /dev/null +++ b/church/study/doctype/bible_book/bible_book.py @@ -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 BibleBook(Document): + pass diff --git a/church/study/doctype/bible_book/test_bible_book.py b/church/study/doctype/bible_book/test_bible_book.py new file mode 100644 index 0000000..f9f38b8 --- /dev/null +++ b/church/study/doctype/bible_book/test_bible_book.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestBibleBook(FrappeTestCase): + pass diff --git a/church/church_study/doctype/church_bible_reference/__init__.py b/church/study/doctype/bible_reference/__init__.py similarity index 100% rename from church/church_study/doctype/church_bible_reference/__init__.py rename to church/study/doctype/bible_reference/__init__.py diff --git a/church/church_study/doctype/church_bible_reference/church_bible_reference.js b/church/study/doctype/bible_reference/bible_reference.js similarity index 90% rename from church/church_study/doctype/church_bible_reference/church_bible_reference.js rename to church/study/doctype/bible_reference/bible_reference.js index 7d1b7f6..1390b05 100644 --- a/church/church_study/doctype/church_bible_reference/church_bible_reference.js +++ b/church/study/doctype/bible_reference/bible_reference.js @@ -1,18 +1,18 @@ -frappe.ui.form.on("Church Bible Reference", { +frappe.ui.form.on("Bible Reference", { import_reference_text: frm => { fetch_bible_text(frm); }, refresh: async function(frm) { frm.add_custom_button('Open in AndBible', async function() { - const start_verse = await frappe.get_doc("Church Bible Verse", frm.doc.start_verse); + const start_verse = await frappe.get_doc("Bible Verse", frm.doc.start_verse); if (!start_verse.book || !start_verse.chapter || !start_verse.verse) { frappe.msgprint(__('Please make sure reference Start Verse has a Chapter and Verse.')); return; } try { - // Fetch abbreviation from linked Church Bible Book record - const book = await frappe.db.get_doc('Church Bible Book', start_verse.book); + // Fetch abbreviation from linked Bible Book record + const book = await frappe.db.get_doc('Bible Book', start_verse.book); const abbreviation = book.abbreviation; if (!abbreviation) { @@ -34,7 +34,7 @@ frappe.ui.form.on("Church Bible Reference", { } }); // Set default translation if not set - frappe.db.get_single_value('Church Information', 'default_bible_translation') + frappe.db.get_single_value('Information', 'default_bible_translation') .then(function (value) { if (!frm.doc.translation) { frm.set_value('translation', value); @@ -46,7 +46,7 @@ frappe.ui.form.on("Church Bible Reference", { async function fetch_bible_text(frm) { try { // Fetch full translation document from DB - const translation_doc = await frappe.db.get_doc("Church Bible Translation", frm.doc.translation); + const translation_doc = await frappe.db.get_doc("Bible Translation", frm.doc.translation); const translationAbbr = translation_doc.abbreviation; const translation_id = await get_translation_id(translationAbbr); @@ -65,7 +65,7 @@ async function fetch_bible_text(frm) { } // Fetch book abbreviation for API - const start_book_doc = await frappe.db.get_doc("Church Bible Book", start_verse_doc.book); + const start_book_doc = await frappe.db.get_doc("Bible Book", start_verse_doc.book); const book_abbrev = await get_book_abbreviation(translation_id, start_book_doc.abbreviation); if (!book_abbrev) { @@ -148,9 +148,9 @@ async function get_book_abbreviation(translation_id, book_abbr) { async function get_verse_reference(name) { if (!name) return null; try { - const doc = await frappe.db.get_doc("Church Bible Verse", name); + const doc = await frappe.db.get_doc("Bible Verse", name); return { - book: doc.book, // link to Church Bible Book + book: doc.book, // link to Bible Book chapter: parseInt(doc.chapter), verse: parseInt(doc.verse) }; diff --git a/church/church_study/doctype/church_bible_reference/church_bible_reference.json b/church/study/doctype/bible_reference/bible_reference.json similarity index 91% rename from church/church_study/doctype/church_bible_reference/church_bible_reference.json rename to church/study/doctype/bible_reference/bible_reference.json index a02dc67..d651215 100644 --- a/church/church_study/doctype/church_bible_reference/church_bible_reference.json +++ b/church/study/doctype/bible_reference/bible_reference.json @@ -23,7 +23,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Start Verse", - "options": "Church Bible Verse", + "options": "Bible Verse", "reqd": 1, "search_index": 1 }, @@ -34,7 +34,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "End Verse", - "options": "Church Bible Verse", + "options": "Bible Verse", "search_index": 1 }, { @@ -48,7 +48,7 @@ "in_list_view": 1, "in_standard_filter": 1, "label": "Translation", - "options": "Church Bible Translation" + "options": "Bible Translation" }, { "description": "Text fetched courtesy of bible.helloao.org", @@ -72,15 +72,15 @@ "index_web_pages_for_search": 1, "links": [ { - "link_doctype": "Church Belief", + "link_doctype": "Belief", "link_fieldname": "reference", "table_fieldname": "bible_references" } ], "modified": "2026-01-11 23:23:16.779117", "modified_by": "Administrator", - "module": "Church Study", - "name": "Church Bible Reference", + "module": "Study", + "name": "Bible Reference", "naming_rule": "By script", "owner": "Administrator", "permissions": [ diff --git a/church/church_study/doctype/church_bible_reference/church_bible_reference.py b/church/study/doctype/bible_reference/bible_reference.py similarity index 81% rename from church/church_study/doctype/church_bible_reference/church_bible_reference.py rename to church/study/doctype/bible_reference/bible_reference.py index 06f12c5..87f0737 100644 --- a/church/church_study/doctype/church_bible_reference/church_bible_reference.py +++ b/church/study/doctype/bible_reference/bible_reference.py @@ -5,17 +5,17 @@ import frappe from frappe.model.document import Document -class ChurchBibleReference(Document): +class BibleReference(Document): pass def autoname(self): name = self.get_name() - if not frappe.db.exists("Church Bible Reference", self.name): + if not frappe.db.exists("Bible Reference", self.name): self.name = name return else: if self.name != self.get_name(): - frappe.rename_doc("Church Bible Reference", self.name, name) + frappe.rename_doc("Bible Reference", self.name, name) def get_name(self): """Constructs the document name""" diff --git a/church/study/doctype/bible_reference/test_bible_reference.py b/church/study/doctype/bible_reference/test_bible_reference.py new file mode 100644 index 0000000..39c5533 --- /dev/null +++ b/church/study/doctype/bible_reference/test_bible_reference.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestBibleReference(FrappeTestCase): + pass diff --git a/church/church_study/doctype/church_bible_translation/__init__.py b/church/study/doctype/bible_translation/__init__.py similarity index 100% rename from church/church_study/doctype/church_bible_translation/__init__.py rename to church/study/doctype/bible_translation/__init__.py diff --git a/church/church_finances/doctype/church_event_type/church_event_type.js b/church/study/doctype/bible_translation/bible_translation.js similarity index 75% rename from church/church_finances/doctype/church_event_type/church_event_type.js rename to church/study/doctype/bible_translation/bible_translation.js index 5103297..4a10534 100644 --- a/church/church_finances/doctype/church_event_type/church_event_type.js +++ b/church/study/doctype/bible_translation/bible_translation.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -// frappe.ui.form.on("Church Event Type", { +// frappe.ui.form.on("Bible Translation", { // refresh(frm) { // }, diff --git a/church/church_study/doctype/church_bible_translation/church_bible_translation.json b/church/study/doctype/bible_translation/bible_translation.json similarity index 95% rename from church/church_study/doctype/church_bible_translation/church_bible_translation.json rename to church/study/doctype/bible_translation/bible_translation.json index 04f9744..8df401b 100644 --- a/church/church_study/doctype/church_bible_translation/church_bible_translation.json +++ b/church/study/doctype/bible_translation/bible_translation.json @@ -39,8 +39,8 @@ "links": [], "modified": "2025-11-15 22:56:50.550989", "modified_by": "Administrator", - "module": "Church Study", - "name": "Church Bible Translation", + "module": "Study", + "name": "Bible Translation", "naming_rule": "Expression", "owner": "Administrator", "permissions": [ diff --git a/church/study/doctype/bible_translation/bible_translation.py b/church/study/doctype/bible_translation/bible_translation.py new file mode 100644 index 0000000..cdfe3d7 --- /dev/null +++ b/church/study/doctype/bible_translation/bible_translation.py @@ -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 BibleTranslation(Document): + pass diff --git a/church/church_finances/doctype/church_event_type/test_church_event_type.py b/church/study/doctype/bible_translation/test_bible_translation.py similarity index 75% rename from church/church_finances/doctype/church_event_type/test_church_event_type.py rename to church/study/doctype/bible_translation/test_bible_translation.py index a29da72..d8411e1 100644 --- a/church/church_finances/doctype/church_event_type/test_church_event_type.py +++ b/church/study/doctype/bible_translation/test_bible_translation.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchEventType(FrappeTestCase): +class TestBibleTranslation(FrappeTestCase): pass diff --git a/church/church_study/doctype/church_bible_verse/__init__.py b/church/study/doctype/bible_verse/__init__.py similarity index 100% rename from church/church_study/doctype/church_bible_verse/__init__.py rename to church/study/doctype/bible_verse/__init__.py diff --git a/church/church_study/doctype/church_bible_verse/church_bible_verse.js b/church/study/doctype/bible_verse/bible_verse.js similarity index 93% rename from church/church_study/doctype/church_bible_verse/church_bible_verse.js rename to church/study/doctype/bible_verse/bible_verse.js index dbfdb9d..84141f7 100644 --- a/church/church_study/doctype/church_bible_verse/church_bible_verse.js +++ b/church/study/doctype/bible_verse/bible_verse.js @@ -1,7 +1,7 @@ // Copyright (c) 2025, meichthys and contributors // For license information, please see license.txt -frappe.ui.form.on('Church Bible Verse', { +frappe.ui.form.on('Bible Verse', { after_save: function(frm) { // If document was renamed, reload to new URL const expected_name = `${frm.doc.book} ${frm.doc.chapter}:${frm.doc.verse}`; @@ -38,8 +38,8 @@ frappe.ui.form.on('Church Bible Verse', { } try { - // Fetch abbreviation from linked Church Bible Book record - const bookData = await frappe.db.get_doc('Church Bible Book', frm.doc.book); + // Fetch abbreviation from linked Bible Book record + const bookData = await frappe.db.get_doc('Bible Book', frm.doc.book); const abbreviation = bookData.abbreviation; if (!abbreviation) { @@ -87,7 +87,7 @@ frappe.ui.form.on('Church Bible Verse', { async function get_chapter_count(book) { // Get the number of chapters in a book - const book_doc = await frappe.db.get_doc("Church Bible Book", book); + const book_doc = await frappe.db.get_doc("Bible Book", book); let book_abbreviation = book_doc.abbreviation const url = `https://bible-api.com/data/kjv/${book_abbreviation}`; const resp = await fetch(url); @@ -104,7 +104,7 @@ async function get_chapter_count(book) { async function get_verse_count(book, chapter) { // Get the number of verses in a chapter of a book - const book_doc = await frappe.db.get_doc("Church Bible Book", book); + const book_doc = await frappe.db.get_doc("Bible Book", book); let book_abbreviation = book_doc.abbreviation const url = `https://bible-api.com/data/kjv/${book_abbreviation}/${chapter}`; const resp = await fetch(url); diff --git a/church/church_study/doctype/church_bible_verse/church_bible_verse.json b/church/study/doctype/bible_verse/bible_verse.json similarity index 91% rename from church/church_study/doctype/church_bible_verse/church_bible_verse.json rename to church/study/doctype/bible_verse/bible_verse.json index 42af3b1..bb10023 100644 --- a/church/church_study/doctype/church_bible_verse/church_bible_verse.json +++ b/church/study/doctype/bible_verse/bible_verse.json @@ -22,7 +22,7 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Book", - "options": "Church Bible Book", + "options": "Bible Book", "reqd": 1, "search_index": 1, "set_only_once": 1 @@ -57,19 +57,19 @@ "links": [ { "group": "Start Verse:", - "link_doctype": "Church Bible Reference", + "link_doctype": "Bible Reference", "link_fieldname": "start_verse" }, { "group": "End Verse:", - "link_doctype": "Church Bible Reference", + "link_doctype": "Bible Reference", "link_fieldname": "end_verse" } ], "modified": "2026-02-16 21:56:18.344040", "modified_by": "Administrator", - "module": "Church Study", - "name": "Church Bible Verse", + "module": "Study", + "name": "Bible Verse", "naming_rule": "By script", "owner": "Administrator", "permissions": [ diff --git a/church/church_study/doctype/church_bible_verse/church_bible_verse.py b/church/study/doctype/bible_verse/bible_verse.py similarity index 81% rename from church/church_study/doctype/church_bible_verse/church_bible_verse.py rename to church/study/doctype/bible_verse/bible_verse.py index 2b34cd7..4e9c4b5 100644 --- a/church/church_study/doctype/church_bible_verse/church_bible_verse.py +++ b/church/study/doctype/bible_verse/bible_verse.py @@ -5,7 +5,7 @@ import frappe from frappe.model.document import Document -class ChurchBibleVerse(Document): +class BibleVerse(Document): pass def autoname(self): @@ -20,5 +20,5 @@ class ChurchBibleVerse(Document): new_name = self.get_name() if self.name != new_name: # Rename the document before saving - frappe.rename_doc("Church Bible Verse", self.name, new_name, force=True) + frappe.rename_doc("Bible Verse", self.name, new_name, force=True) self.name = new_name diff --git a/church/study/doctype/bible_verse/test_bible_verse.py b/church/study/doctype/bible_verse/test_bible_verse.py new file mode 100644 index 0000000..4e0a7d9 --- /dev/null +++ b/church/study/doctype/bible_verse/test_bible_verse.py @@ -0,0 +1,9 @@ +# Copyright (c) 2025, meichthys and Contributors +# See license.txt + +# import frappe +from frappe.tests.utils import FrappeTestCase + + +class TestBibleVerse(FrappeTestCase): + pass diff --git a/church/church_study/doctype/church_sermon/__init__.py b/church/study/doctype/sermon/__init__.py similarity index 100% rename from church/church_study/doctype/church_sermon/__init__.py rename to church/study/doctype/sermon/__init__.py diff --git a/church/church_study/doctype/church_sermon/church_sermon.js b/church/study/doctype/sermon/sermon.js similarity index 96% rename from church/church_study/doctype/church_sermon/church_sermon.js rename to church/study/doctype/sermon/sermon.js index 5b8beef..0aedd05 100644 --- a/church/church_study/doctype/church_sermon/church_sermon.js +++ b/church/study/doctype/sermon/sermon.js @@ -151,7 +151,12 @@ function render_fields_selector(frm, cdt, cdn) { }); } -frappe.ui.form.on("Church Sermon", { +frappe.ui.form.on("Sermon", { + onload(frm) { + // Filter slide_type to DocTypes in the church app + church.set_church_doctype_query(frm, 'slide_type', 'slides'); + }, + refresh(frm) { if (!frm.is_new()) { frm.add_custom_button(__("Present"), function () { @@ -171,7 +176,7 @@ frappe.ui.form.on("Church Sermon", { }, }); -frappe.ui.form.on("Church Sermon Slide", { +frappe.ui.form.on("Sermon Slide", { form_render(frm, cdt, cdn) { setTimeout(() => render_fields_selector(frm, cdt, cdn), 100); }, diff --git a/church/church_study/doctype/church_sermon/church_sermon.json b/church/study/doctype/sermon/sermon.json similarity index 90% rename from church/church_study/doctype/church_sermon/church_sermon.json rename to church/study/doctype/sermon/sermon.json index 347cea2..cbe2531 100644 --- a/church/church_study/doctype/church_sermon/church_sermon.json +++ b/church/study/doctype/sermon/sermon.json @@ -27,7 +27,7 @@ "fieldname": "prepared_by", "fieldtype": "Link", "label": "Prepared By", - "options": "Church Person" + "options": "Person" }, { "fieldname": "section_break_slides", @@ -38,7 +38,7 @@ "fieldname": "slides", "fieldtype": "Table", "label": "Slides", - "options": "Church Sermon Slide" + "options": "Sermon Slide" }, { "fieldname": "section_break_presentation_history", @@ -49,7 +49,7 @@ "fieldname": "presentation_history", "fieldtype": "Table", "label": "Presentation History", - "options": "Church Sermon Presentation" + "options": "Sermon Presentation" }, { "fieldname": "notes", @@ -62,8 +62,8 @@ "links": [], "modified": "2026-02-26 23:56:39.919525", "modified_by": "Administrator", - "module": "Church Study", - "name": "Church Sermon", + "module": "Study", + "name": "Sermon", "naming_rule": "By fieldname", "owner": "Administrator", "permissions": [ diff --git a/church/church_study/doctype/church_sermon/church_sermon.py b/church/study/doctype/sermon/sermon.py similarity index 93% rename from church/church_study/doctype/church_sermon/church_sermon.py rename to church/study/doctype/sermon/sermon.py index 1820883..7cb5232 100644 --- a/church/church_study/doctype/church_sermon/church_sermon.py +++ b/church/study/doctype/sermon/sermon.py @@ -6,7 +6,7 @@ from frappe.model.document import Document from frappe.model.rename_doc import rename_doc -class ChurchSermon(Document): +class Sermon(Document): def before_save(self): if not self.is_new() and self.has_value_changed("title") and self.title != self.name: rename_doc(self.doctype, self.name, self.title, merge=False) diff --git a/church/church_study/doctype/church_sermon/test_church_sermon.py b/church/study/doctype/sermon/test_sermon.py similarity index 77% rename from church/church_study/doctype/church_sermon/test_church_sermon.py rename to church/study/doctype/sermon/test_sermon.py index db4b704..b1568f7 100644 --- a/church/church_study/doctype/church_sermon/test_church_sermon.py +++ b/church/study/doctype/sermon/test_sermon.py @@ -5,5 +5,5 @@ from frappe.tests.utils import FrappeTestCase -class TestChurchSermon(FrappeTestCase): +class TestSermon(FrappeTestCase): pass diff --git a/church/church_study/doctype/church_sermon_presentation/__init__.py b/church/study/doctype/sermon_presentation/__init__.py similarity index 100% rename from church/church_study/doctype/church_sermon_presentation/__init__.py rename to church/study/doctype/sermon_presentation/__init__.py diff --git a/church/church_study/doctype/church_sermon_presentation/church_sermon_presentation.json b/church/study/doctype/sermon_presentation/sermon_presentation.json similarity index 92% rename from church/church_study/doctype/church_sermon_presentation/church_sermon_presentation.json rename to church/study/doctype/sermon_presentation/sermon_presentation.json index a8e913a..341b821 100644 --- a/church/church_study/doctype/church_sermon_presentation/church_sermon_presentation.json +++ b/church/study/doctype/sermon_presentation/sermon_presentation.json @@ -25,7 +25,7 @@ "fieldtype": "Link", "in_list_view": 1, "label": "Presented By", - "options": "Church Person" + "options": "Person" }, { "fieldname": "location", @@ -53,8 +53,8 @@ "links": [], "modified": "2026-02-26 23:59:43.935601", "modified_by": "Administrator", - "module": "Church Study", - "name": "Church Sermon Presentation", + "module": "Study", + "name": "Sermon Presentation", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/church_study/doctype/church_sermon_presentation/church_sermon_presentation.py b/church/study/doctype/sermon_presentation/sermon_presentation.py similarity index 79% rename from church/church_study/doctype/church_sermon_presentation/church_sermon_presentation.py rename to church/study/doctype/sermon_presentation/sermon_presentation.py index cb1c6b3..378dc76 100644 --- a/church/church_study/doctype/church_sermon_presentation/church_sermon_presentation.py +++ b/church/study/doctype/sermon_presentation/sermon_presentation.py @@ -5,5 +5,5 @@ import frappe from frappe.model.document import Document -class ChurchSermonPresentation(Document): +class SermonPresentation(Document): pass diff --git a/church/church_study/doctype/church_sermon_slide/__init__.py b/church/study/doctype/sermon_slide/__init__.py similarity index 100% rename from church/church_study/doctype/church_sermon_slide/__init__.py rename to church/study/doctype/sermon_slide/__init__.py diff --git a/church/church_study/doctype/church_sermon_slide/church_sermon_slide.json b/church/study/doctype/sermon_slide/sermon_slide.json similarity index 86% rename from church/church_study/doctype/church_sermon_slide/church_sermon_slide.json rename to church/study/doctype/sermon_slide/sermon_slide.json index 2434be1..e8401db 100644 --- a/church/church_study/doctype/church_sermon_slide/church_sermon_slide.json +++ b/church/study/doctype/sermon_slide/sermon_slide.json @@ -2,7 +2,7 @@ "actions": [], "allow_rename": 1, "creation": "2026-02-26 12:00:00.000000", - "description": "A slide in a Church Sermon that references a document from the Church App", + "description": "A slide in a Sermon that references a document from the Church App", "doctype": "DocType", "editable_grid": 1, "engine": "InnoDB", @@ -23,7 +23,6 @@ "in_preview": 1, "in_standard_filter": 1, "label": "Slide Type", - "link_filters": "[[\"DocType\",\"name\",\"like\",\"Church%\"]]", "options": "DocType", "reqd": 1 }, @@ -64,8 +63,8 @@ "links": [], "modified": "2026-02-26 12:00:00.000000", "modified_by": "Administrator", - "module": "Church Study", - "name": "Church Sermon Slide", + "module": "Study", + "name": "Sermon Slide", "owner": "Administrator", "permissions": [], "row_format": "Dynamic", diff --git a/church/church_study/doctype/church_sermon_slide/church_sermon_slide.py b/church/study/doctype/sermon_slide/sermon_slide.py similarity index 81% rename from church/church_study/doctype/church_sermon_slide/church_sermon_slide.py rename to church/study/doctype/sermon_slide/sermon_slide.py index 6cf8057..dfb2ac1 100644 --- a/church/church_study/doctype/church_sermon_slide/church_sermon_slide.py +++ b/church/study/doctype/sermon_slide/sermon_slide.py @@ -4,5 +4,5 @@ from frappe.model.document import Document -class ChurchSermonSlide(Document): +class SermonSlide(Document): pass diff --git a/church/church_study/workspace/manual:_study/manual:_study.json b/church/study/workspace/manual:_study/manual:_study.json similarity index 65% rename from church/church_study/workspace/manual:_study/manual:_study.json rename to church/study/workspace/manual:_study/manual:_study.json index dc95272..6532d6b 100644 --- a/church/church_study/workspace/manual:_study/manual:_study.json +++ b/church/study/workspace/manual:_study/manual:_study.json @@ -1,6 +1,6 @@ { "charts": [], - "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcdaStudy Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The study module contains features relating to the study of the Bible, sermons, and other learning material.\",\"col\":12}},{\"id\":\"H-WYbWn_0i\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcdaBible Books\",\"col\":12}},{\"id\":\"hqPc4xChK3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The books of the Bible along with abbreviations. These are used when creating Bible Verses or Bible References.\",\"col\":12}},{\"id\":\"Xs1_rwqxZQ\",\"type\":\"paragraph\",\"data\":{\"text\":\"Books of the Bible can be modified by users with the 'Church Manager' role.\",\"col\":12}},{\"id\":\"UiWbOWGCUX\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83c\ude1aTranslations\",\"col\":12}},{\"id\":\"UmzeUAU3nD\",\"type\":\"paragraph\",\"data\":{\"text\":\"Translations of the Bible. Each translation has a name, and abbreviation.\",\"col\":12}},{\"id\":\"v9Oh4ZCpvo\",\"type\":\"paragraph\",\"data\":{\"text\":\"When managing translations, note the following:
- By default, only users with the 'Church Manager' permission can modify translations.
- The abbreviation is used when fetching the text of a Bible reference.
\",\"col\":12}},{\"id\":\"AhYJwznZam\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udd20Bible Verse\",\"col\":12}},{\"id\":\"EIxAFMzBsy\",\"type\":\"paragraph\",\"data\":{\"text\":\"A Bible verse is a Book, Chapter, and Verse combination that represents a single verse in the Bible. A range of Bible verses makes a Bible Reference.\",\"col\":12}},{\"id\":\"qpqD2-oP6P\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding a Bible verse, note the following:
- If you have an internet connection the 'chapter' and 'verse' dropdown fields should limit you to actual valid chapters/verses, however without an internet connection, the chapter field will only be limited to 1-150 and verses will only be limited to 1-176. This could allow you to choose an invalid chapter/verse combination.\",\"col\":12}},{\"id\":\"7rEQkywW17\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcd6Bible Reference\",\"col\":12}},{\"id\":\"jgpkMdqNrA\",\"type\":\"paragraph\",\"data\":{\"text\":\"A Bible reference is a range of Bible verses.\",\"col\":12}},{\"id\":\"29--J4q9h0\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding a Bible reference, note the following:
- Only a start-verse is required
- To 'Import Reference Text' you must have a 'Start Verse' and 'Translation' selected. 
    - Reference text is imported from bible.helloao.org which supports most public domain translations and those with permissive licenses.
    - If no text is fetched, it is likely that the translation you are trying to fetch text for is copyrighted and therefore restricted under copyright. We recommend using public domain versions like the BSB which have absolutely zero restrictions on the Word of God - and are not used for profit by the copyright holders.
    - An internet connection is required to 'Import Reference Text'

\",\"col\":12}},{\"id\":\"W_SrD0oSAz\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcddSermons\",\"col\":12}},{\"id\":\"nbEHeWXsAp\",\"type\":\"paragraph\",\"data\":{\"text\":\"A Church Sermon is a collection of slides that can be presented at a church event. Each sermon has a title, an optional 'Prepared By' field linking to a Church Person, and optional notes.\",\"col\":12}},{\"id\":\"iak3lFqr80\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating a sermon, note the following:
- Add slides to the 'Slides' table to build your sermon content. Each slide references a document (e.g. a Bible Reference)
- For each slide, you can select which fields from the linked document to show on the slide.
  - You may choose a field to use as the slide title by checking the 'Title' box.
  - If no fields are selected, the slide will show the linked document's name as the title.
- The 'Presentation History' table tracks when and where the sermon has been presented, who presented it, and optionally includes a recording of the sermon.\",\"col\":12}},{\"id\":\"IdqC6ue2s5\",\"type\":\"paragraph\",\"data\":{\"text\":\"Presenting a Sermon\",\"col\":12}},{\"id\":\"O5YqX1I5FA\",\"type\":\"paragraph\",\"data\":{\"text\":\"To present a sermon, click the 'Present' button on the sermon document:
- Use the arrow keys, or spacebar to navigate between slides.
- Press Escape or click the `X` button to exit the presentation.\",\"col\":12}},{\"id\":\"p_rUjtXqFB\",\"type\":\"paragraph\",\"data\":{\"text\":\"Example Workflow\",\"col\":12}},{\"id\":\"VseMD6jUIg\",\"type\":\"paragraph\",\"data\":{\"text\":\"1. The Pastor creates a new Church Sermon and adds slides referencing Bible References, Church Beliefs, Church Songs, etc.
2. He adds additional per-slide notes to be displayed in the presentation and general sermon notes that are private (not presented).
3. On Sunday, he clicks 'Present' to display the sermon.
4. After the service, a row is added to 'Presentation History' table with the date, presenter, location, and optionally an audio/video recording of the sermon.\",\"col\":12}}]", + "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcdaStudy Manual\",\"col\":12}},{\"id\":\"B-CtTCmVDX\",\"type\":\"paragraph\",\"data\":{\"text\":\"The study module contains features relating to the study of the Bible, sermons, and other learning material.\",\"col\":12}},{\"id\":\"H-WYbWn_0i\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcdaBible Books\",\"col\":12}},{\"id\":\"hqPc4xChK3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The books of the Bible along with abbreviations. These are used when creating Bible Verses or Bible References.\",\"col\":12}},{\"id\":\"Xs1_rwqxZQ\",\"type\":\"paragraph\",\"data\":{\"text\":\"Books of the Bible can be modified by users with the 'Church Manager' role.\",\"col\":12}},{\"id\":\"UiWbOWGCUX\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83c\ude1aTranslations\",\"col\":12}},{\"id\":\"UmzeUAU3nD\",\"type\":\"paragraph\",\"data\":{\"text\":\"Translations of the Bible. Each translation has a name, and abbreviation.\",\"col\":12}},{\"id\":\"v9Oh4ZCpvo\",\"type\":\"paragraph\",\"data\":{\"text\":\"When managing translations, note the following:
- By default, only users with the 'Church Manager' permission can modify translations.
- The abbreviation is used when fetching the text of a Bible reference.
\",\"col\":12}},{\"id\":\"AhYJwznZam\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udd20Bible Verse\",\"col\":12}},{\"id\":\"EIxAFMzBsy\",\"type\":\"paragraph\",\"data\":{\"text\":\"A Bible verse is a Book, Chapter, and Verse combination that represents a single verse in the Bible. A range of Bible verses makes a Bible Reference.\",\"col\":12}},{\"id\":\"qpqD2-oP6P\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding a Bible verse, note the following:
- If you have an internet connection the 'chapter' and 'verse' dropdown fields should limit you to actual valid chapters/verses, however without an internet connection, the chapter field will only be limited to 1-150 and verses will only be limited to 1-176. This could allow you to choose an invalid chapter/verse combination.\",\"col\":12}},{\"id\":\"7rEQkywW17\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcd6Bible Reference\",\"col\":12}},{\"id\":\"jgpkMdqNrA\",\"type\":\"paragraph\",\"data\":{\"text\":\"A Bible reference is a range of Bible verses.\",\"col\":12}},{\"id\":\"29--J4q9h0\",\"type\":\"paragraph\",\"data\":{\"text\":\"When adding a Bible reference, note the following:
- Only a start-verse is required
- To 'Import Reference Text' you must have a 'Start Verse' and 'Translation' selected. 
    - Reference text is imported from bible.helloao.org which supports most public domain translations and those with permissive licenses.
    - If no text is fetched, it is likely that the translation you are trying to fetch text for is copyrighted and therefore restricted under copyright. We recommend using public domain versions like the BSB which have absolutely zero restrictions on the Word of God - and are not used for profit by the copyright holders.
    - An internet connection is required to 'Import Reference Text'

\",\"col\":12}},{\"id\":\"W_SrD0oSAz\",\"type\":\"paragraph\",\"data\":{\"text\":\"\ud83d\udcddSermons\",\"col\":12}},{\"id\":\"nbEHeWXsAp\",\"type\":\"paragraph\",\"data\":{\"text\":\"A Sermon is a collection of slides that can be presented at a church event. Each sermon has a title, an optional 'Prepared By' field linking to a Person, and optional notes.\",\"col\":12}},{\"id\":\"iak3lFqr80\",\"type\":\"paragraph\",\"data\":{\"text\":\"When creating a sermon, note the following:
- Add slides to the 'Slides' table to build your sermon content. Each slide references a document (e.g. a Bible Reference)
- For each slide, you can select which fields from the linked document to show on the slide.
  - You may choose a field to use as the slide title by checking the 'Title' box.
  - If no fields are selected, the slide will show the linked document's name as the title.
- The 'Presentation History' table tracks when and where the sermon has been presented, who presented it, and optionally includes a recording of the sermon.\",\"col\":12}},{\"id\":\"IdqC6ue2s5\",\"type\":\"paragraph\",\"data\":{\"text\":\"Presenting a Sermon\",\"col\":12}},{\"id\":\"O5YqX1I5FA\",\"type\":\"paragraph\",\"data\":{\"text\":\"To present a sermon, click the 'Present' button on the sermon document:
- Use the arrow keys, or spacebar to navigate between slides.
- Press Escape or click the `X` button to exit the presentation.\",\"col\":12}},{\"id\":\"p_rUjtXqFB\",\"type\":\"paragraph\",\"data\":{\"text\":\"Example Workflow\",\"col\":12}},{\"id\":\"VseMD6jUIg\",\"type\":\"paragraph\",\"data\":{\"text\":\"1. The Pastor creates a new Sermon and adds slides referencing Bible References, Beliefs, Songs, etc.
2. He adds additional per-slide notes to be displayed in the presentation and general sermon notes that are private (not presented).
3. On Sunday, he clicks 'Present' to display the sermon.
4. After the service, a row is added to 'Presentation History' table with the date, presenter, location, and optionally an audio/video recording of the sermon.\",\"col\":12}}]", "creation": "2025-10-26 22:52:48.833706", "custom_blocks": [], "docstatus": 0, @@ -15,7 +15,7 @@ "links": [], "modified": "2026-03-01 23:53:34.248560", "modified_by": "Administrator", - "module": "Church Study", + "module": "Study", "name": "Manual: Study", "number_cards": [], "owner": "Administrator", diff --git a/church/church_study/workspace/study/study.json b/church/study/workspace/study/study.json similarity index 90% rename from church/church_study/workspace/study/study.json rename to church/study/workspace/study/study.json index f71005c..0f0a6c9 100644 --- a/church/church_study/workspace/study/study.json +++ b/church/study/workspace/study/study.json @@ -27,7 +27,7 @@ "is_query_report": 0, "label": "Bible Books", "link_count": 0, - "link_to": "Church Bible Book", + "link_to": "Bible Book", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -37,7 +37,7 @@ "is_query_report": 0, "label": "Bible Translations", "link_count": 0, - "link_to": "Church Bible Translation", + "link_to": "Bible Translation", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -47,7 +47,7 @@ "is_query_report": 0, "label": "Bible Verses", "link_count": 0, - "link_to": "Church Bible Verse", + "link_to": "Bible Verse", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -57,7 +57,7 @@ "is_query_report": 0, "label": "Bible References", "link_count": 0, - "link_to": "Church Bible Reference", + "link_to": "Bible Reference", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -67,7 +67,7 @@ "is_query_report": 0, "label": "Sermons", "link_count": 0, - "link_to": "Church Sermon", + "link_to": "Sermon", "link_type": "DocType", "onboard": 0, "type": "Link" @@ -75,7 +75,7 @@ ], "modified": "2026-03-01 23:53:34.231761", "modified_by": "Administrator", - "module": "Church Study", + "module": "Study", "name": "Study", "number_cards": [], "owner": "Administrator", diff --git a/church/www/sermon_presentation.html b/church/www/sermon_presentation.html index ce27c00..2cad3d4 100644 --- a/church/www/sermon_presentation.html +++ b/church/www/sermon_presentation.html @@ -37,7 +37,7 @@ {% else %}
-

No slides in this sermon. Add slides to the Church Sermon document to begin.

+

No slides in this sermon. Add slides to the Sermon document to begin.

{% endif %} diff --git a/church/www/sermon_presentation.py b/church/www/sermon_presentation.py index 9a126e3..aea5628 100644 --- a/church/www/sermon_presentation.py +++ b/church/www/sermon_presentation.py @@ -73,8 +73,8 @@ def get_context(context): if not name: frappe.throw("Please specify a sermon name", frappe.exceptions.ValidationError) - sermon = frappe.get_doc("Church Sermon", name) - frappe.has_permission("Church Sermon", doc=sermon, throw=True) + sermon = frappe.get_doc("Sermon", name) + frappe.has_permission("Sermon", doc=sermon, throw=True) slides = [] for row in sermon.get("slides", []): @@ -108,7 +108,7 @@ def get_context(context): prepared_by_name = "" if sermon.prepared_by: - prepared_by_name = frappe.get_doc("Church Person", sermon.prepared_by).get_title() + prepared_by_name = frappe.get_doc("Person", sermon.prepared_by).get_title() context.sermon_title = sermon.title or sermon.name context.prepared_by = prepared_by_name