diff --git a/church/church_communications/doctype/church_presentation/__init__.py b/church/church_communications/doctype/church_presentation/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/church/church_communications/doctype/church_presentation/church_presentation.js b/church/church_communications/doctype/church_presentation/church_presentation.js
new file mode 100644
index 0000000..f1d219b
--- /dev/null
+++ b/church/church_communications/doctype/church_presentation/church_presentation.js
@@ -0,0 +1,8 @@
+// Copyright (c) 2025, meichthys and contributors
+// For license information, please see license.txt
+
+// frappe.ui.form.on("Church Presentation", {
+// refresh(frm) {
+
+// },
+// });
diff --git a/church/church_communications/doctype/church_presentation/church_presentation.json b/church/church_communications/doctype/church_presentation/church_presentation.json
new file mode 100644
index 0000000..5811ea9
--- /dev/null
+++ b/church/church_communications/doctype/church_presentation/church_presentation.json
@@ -0,0 +1,58 @@
+{
+ "actions": [],
+ "allow_rename": 1,
+ "creation": "2025-10-10 23:07:31.392203",
+ "description": "A slideshow presentation of `Church Presentation Slide`s",
+ "doctype": "DocType",
+ "engine": "InnoDB",
+ "field_order": [
+ "title",
+ "section_break_hgry",
+ "slides"
+ ],
+ "fields": [
+ {
+ "fieldname": "title",
+ "fieldtype": "Data",
+ "label": "Title"
+ },
+ {
+ "fieldname": "section_break_hgry",
+ "fieldtype": "Section Break"
+ },
+ {
+ "fieldname": "slides",
+ "fieldtype": "Table",
+ "label": "Slides",
+ "options": "Church Presentation Slide"
+ }
+ ],
+ "grid_page_length": 50,
+ "index_web_pages_for_search": 1,
+ "links": [],
+ "modified": "2025-10-10 23:08:52.988817",
+ "modified_by": "Administrator",
+ "module": "Church Communications",
+ "name": "Church Presentation",
+ "owner": "Administrator",
+ "permissions": [
+ {
+ "create": 1,
+ "delete": 1,
+ "email": 1,
+ "export": 1,
+ "print": 1,
+ "read": 1,
+ "report": 1,
+ "role": "System Manager",
+ "share": 1,
+ "write": 1
+ }
+ ],
+ "row_format": "Dynamic",
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": [],
+ "track_changes": 1,
+ "track_views": 1
+}
\ No newline at end of file
diff --git a/church/church_communications/doctype/church_presentation/church_presentation.py b/church/church_communications/doctype/church_presentation/church_presentation.py
new file mode 100644
index 0000000..e12a267
--- /dev/null
+++ b/church/church_communications/doctype/church_presentation/church_presentation.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 ChurchPresentation(Document):
+ pass
diff --git a/church/church_communications/doctype/church_presentation/test_church_presentation.py b/church/church_communications/doctype/church_presentation/test_church_presentation.py
new file mode 100644
index 0000000..f47827c
--- /dev/null
+++ b/church/church_communications/doctype/church_presentation/test_church_presentation.py
@@ -0,0 +1,9 @@
+# Copyright (c) 2025, meichthys and Contributors
+# See license.txt
+
+# import frappe
+from frappe.tests.utils import FrappeTestCase
+
+
+class TestChurchPresentation(FrappeTestCase):
+ pass
diff --git a/church/church_communications/doctype/church_presentation_slide/__init__.py b/church/church_communications/doctype/church_presentation_slide/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.js b/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.js
new file mode 100644
index 0000000..d79b25e
--- /dev/null
+++ b/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.js
@@ -0,0 +1,8 @@
+// Copyright (c) 2025, meichthys and contributors
+// For license information, please see license.txt
+
+// frappe.ui.form.on("Church Presentation Slide", {
+// refresh(frm) {
+
+// },
+// });
diff --git a/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.json b/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.json
new file mode 100644
index 0000000..28c433b
--- /dev/null
+++ b/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.json
@@ -0,0 +1,41 @@
+{
+ "actions": [],
+ "allow_rename": 1,
+ "creation": "2025-10-10 22:47:37.269992",
+ "description": "A presentation slide to be displayed in the Church",
+ "doctype": "DocType",
+ "engine": "InnoDB",
+ "field_order": [
+ "content",
+ "background_image"
+ ],
+ "fields": [
+ {
+ "fieldname": "content",
+ "fieldtype": "Text Editor",
+ "in_list_view": 1,
+ "in_preview": 1,
+ "in_standard_filter": 1,
+ "label": "Content"
+ },
+ {
+ "fieldname": "background_image",
+ "fieldtype": "Attach Image",
+ "label": "Background Image"
+ }
+ ],
+ "grid_page_length": 50,
+ "index_web_pages_for_search": 1,
+ "istable": 1,
+ "links": [],
+ "modified": "2025-10-10 22:52:46.198898",
+ "modified_by": "Administrator",
+ "module": "Church Communications",
+ "name": "Church Presentation Slide",
+ "owner": "Administrator",
+ "permissions": [],
+ "row_format": "Dynamic",
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": []
+}
\ No newline at end of file
diff --git a/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.py b/church/church_communications/doctype/church_presentation_slide/church_presentation_slide.py
new file mode 100644
index 0000000..f7149e2
--- /dev/null
+++ b/church/church_communications/doctype/church_presentation_slide/church_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 ChurchPresentationSlide(Document):
+ pass
diff --git a/church/church_communications/doctype/church_presentation_slide/test_church_presentation_slide.py b/church/church_communications/doctype/church_presentation_slide/test_church_presentation_slide.py
new file mode 100644
index 0000000..6c37567
--- /dev/null
+++ b/church/church_communications/doctype/church_presentation_slide/test_church_presentation_slide.py
@@ -0,0 +1,9 @@
+# Copyright (c) 2025, meichthys and Contributors
+# See license.txt
+
+# import frappe
+from frappe.tests.utils import FrappeTestCase
+
+
+class TestChurchPresentationSlide(FrappeTestCase):
+ pass
diff --git a/church/church_communications/workspace/communications/communications.json b/church/church_communications/workspace/communications/communications.json
index 1523c77..e6ab5c4 100644
--- a/church/church_communications/workspace/communications/communications.json
+++ b/church/church_communications/workspace/communications/communications.json
@@ -1,6 +1,6 @@
{
"charts": [],
- "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\\\"Let no unwholesome talk come out of your mouths, but only what is helpful for building up the one in need and bringing grace to those who listen.\\\"/\",\"col\":12}},{\"id\":\"ybuIQ-BIW-\",\"type\":\"card\",\"data\":{\"card_name\":\"Communication Reports\",\"col\":5}}]",
+ "content": "[{\"id\":\"nnvMTG5Sl5\",\"type\":\"paragraph\",\"data\":{\"text\":\"\\\"Let no unwholesome talk come out of your mouths, but only what is helpful for building up the one in need and bringing grace to those who listen.\\\"/\",\"col\":12}},{\"id\":\"qhOPOjAeDu\",\"type\":\"card\",\"data\":{\"card_name\":\"Presentation Documents\",\"col\":4}},{\"id\":\"ybuIQ-BIW-\",\"type\":\"card\",\"data\":{\"card_name\":\"Letter Reports\",\"col\":4}}]",
"creation": "2025-10-03 23:10:33.370229",
"custom_blocks": [],
"docstatus": 0,
@@ -16,7 +16,65 @@
{
"hidden": 0,
"is_query_report": 0,
- "label": "Communication Reports",
+ "label": "Reports",
+ "link_count": 3,
+ "link_type": "DocType",
+ "onboard": 0,
+ "type": "Card Break"
+ },
+ {
+ "hidden": 0,
+ "is_query_report": 1,
+ "label": "Missionary Letters",
+ "link_count": 0,
+ "link_to": "Church Missionary Letters",
+ "link_type": "Report",
+ "onboard": 0,
+ "type": "Link"
+ },
+ {
+ "hidden": 0,
+ "is_query_report": 1,
+ "label": "Person Letters",
+ "link_count": 0,
+ "link_to": "Church Person Letters",
+ "link_type": "Report",
+ "onboard": 0,
+ "type": "Link"
+ },
+ {
+ "hidden": 0,
+ "is_query_report": 1,
+ "label": "Letters Not Yet Shared With Curch",
+ "link_count": 0,
+ "link_to": "Church Letters To Be Shared",
+ "link_type": "Report",
+ "onboard": 0,
+ "type": "Link"
+ },
+ {
+ "hidden": 0,
+ "is_query_report": 0,
+ "label": "Presentation Documents",
+ "link_count": 1,
+ "link_type": "DocType",
+ "onboard": 0,
+ "type": "Card Break"
+ },
+ {
+ "hidden": 0,
+ "is_query_report": 0,
+ "label": "Presentations",
+ "link_count": 0,
+ "link_to": "Church Presentation",
+ "link_type": "DocType",
+ "onboard": 0,
+ "type": "Link"
+ },
+ {
+ "hidden": 0,
+ "is_query_report": 0,
+ "label": "Letter Reports",
"link_count": 3,
"link_type": "DocType",
"onboard": 0,
@@ -53,7 +111,7 @@
"type": "Link"
}
],
- "modified": "2025-10-04 01:01:26.799817",
+ "modified": "2025-10-10 23:12:46.824922",
"modified_by": "Administrator",
"module": "Church Communications",
"name": "Communications",