gitea-actions[bot]
|
bfe66d8ab0
|
chore(release): build 01.02.00-rc [skip ci]
release-candidate
|
2026-06-20 19:05:49 +00:00 |
|
Jonathan Miller
|
0190947bb7
|
Add NpoReportsController API — annual impact, donor impact, recurring donations CRUD
Universal: Auto Version Bump / Version Bump (push) Failing after 7s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Failing after 7s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Generic: Repo Health / Access control (pull_request) Successful in 2s
Universal: PR Check / Validate PR (pull_request) Failing after 4s
Branch Cleanup / Delete merged branch (pull_request) Has been skipped
Universal: Build & Release / Promote to RC (pull_request) Has been skipped
Universal: Build & Release / Build & Release Pipeline (pull_request) Has been skipped
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
|
2026-06-20 14:01:57 -05:00 |
|
jmiller
|
c03e07845d
|
Merge pull request 'feat: ImpactReportHelper' (#16) from dev into main
|
2026-06-20 18:52:19 +00:00 |
|
Jonathan Miller
|
dafa6ba9eb
|
Add ImpactReportHelper — annual impact summary, donor retention, program metrics
Universal: Auto Version Bump / Version Bump (push) Failing after 12s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Failing after 12s
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Generic: Repo Health / Access control (pull_request) Successful in 2s
Universal: PR Check / Validate PR (pull_request) Failing after 4s
Branch Cleanup / Delete merged branch (pull_request) Has been skipped
Universal: Build & Release / Promote to RC (pull_request) Has been skipped
Universal: Build & Release / Build & Release Pipeline (pull_request) Failing after 7s
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
|
2026-06-20 13:28:43 -05:00 |
|
jmiller
|
8b2dc7a575
|
fix: rename moko-platform to mokocli + changelog promotion in workflows
|
2026-06-20 17:17:33 +00:00 |
|
jmiller
|
fe40d20eca
|
fix: rename moko-platform to mokocli + changelog promotion in workflows
|
2026-06-20 17:17:33 +00:00 |
|
jmiller
|
f7bd7325b7
|
fix: rename moko-platform to mokocli + changelog promotion in workflows
|
2026-06-20 17:17:32 +00:00 |
|
jmiller
|
7aa0af69b4
|
fix: rename moko-platform to mokocli + changelog promotion in workflows
|
2026-06-20 17:17:32 +00:00 |
|
jmiller
|
dc4b9d61f4
|
fix: rename moko-platform to mokocli + changelog promotion in workflows
|
2026-06-20 17:17:31 +00:00 |
|
jmiller
|
1966f8446a
|
fix: rename moko-platform to mokocli + changelog promotion in workflows
|
2026-06-20 17:17:30 +00:00 |
|
jmiller
|
3b29206744
|
Merge pull request 'feat: NpoDonorController API' (#15) from dev into main
|
2026-06-18 17:47:35 +00:00 |
|
Jonathan Miller
|
6d773e2e04
|
Add NpoDonorController API — donor CRUD, pledges, recurring revenue summary
|
2026-06-18 11:59:58 -05:00 |
|
jmiller
|
630485be81
|
Merge pull request 'feat: DonorWall view + block-stable CI' (#14) from dev into main
|
2026-06-18 16:24:03 +00:00 |
|
Jonathan Miller
|
a704e716bf
|
Add DonorWall site view — public donor recognition by level
|
2026-06-18 11:12:43 -05:00 |
|
Jonathan Miller
|
c5058cf99d
|
ci: add block-stable workflow
|
2026-06-18 10:55:58 -05:00 |
|
jmiller
|
af2897bb57
|
Merge pull request 'feat: RecurringDonationHelper + review fixes' (#13) from dev into main
|
2026-06-18 15:42:16 +00:00 |
|
Jonathan Miller
|
42161e3d0f
|
fix: add idempotency guard to recurring donation processing
|
2026-06-18 10:37:52 -05:00 |
|
Jonathan Miller
|
990aa86682
|
Add RecurringDonationHelper — pledge creation, autopay processing, recurring revenue
|
2026-06-18 10:26:54 -05:00 |
|
jmiller
|
5d7fdc530d
|
feat: Full nonprofit platform build — 17 commits
|
2026-06-18 14:54:56 +00:00 |
|
Jonathan Miller
|
62a18c894b
|
fix: PR review — escape LIKE wildcards in DonorsModel search
|
2026-06-18 09:52:07 -05:00 |
|
Jonathan Miller
|
bab40a0af6
|
Add NpoCampaignsController API — campaigns with progress, memberships, expiring alerts, dashboard stats
|
2026-06-18 08:29:46 -05:00 |
|
Jonathan Miller
|
0275564283
|
Add MemberPortal site view — giving history, membership status, tax receipts, event registrations
|
2026-06-17 11:41:49 -05:00 |
|
Jonathan Miller
|
88cb3a2fe5
|
Update MokoSuite → MokoSuiteClient submodule reference
Updated .gitmodules URL and path for the MokoSuite → MokoSuiteClient rename.
|
2026-06-15 16:49:10 -05:00 |
|
Jonathan Miller
|
29e87cb572
|
Add 7 admin models — Donors, Donations, Campaigns, Grants, Volunteers, Events, Memberships
All use Joomla 6 BaseDatabaseModel with $this->getDatabase()
|
2026-06-15 00:49:53 -05:00 |
|
Jonathan Miller
|
33f4da29f9
|
Add Volunteers/Grants API controllers, EventCalendar and GrantPortal site views
- NpoVolunteersController: list, register, log hours, stats
- NpoGrantsController: grants CRUD, campaigns with progress tracking
- EventCalendar: public monthly view with registration counts
- GrantPortal: public grant listing with summary stats
|
2026-06-15 00:35:03 -05:00 |
|
Jonathan Miller
|
d257afa23e
|
feat: events/volunteers/memberships/grants API controller
NpoEventsController: event listing + registration + check-in, volunteer
hours logging, membership summary, grant pipeline with reports due.
Permission checks on admin-only endpoints (npo.grants, core.manage).
|
2026-06-13 08:57:23 -05:00 |
|
Jonathan Miller
|
38dabdce76
|
chore: CI workflow, language files, CSS, JS infrastructure
|
2026-06-13 08:37:25 -05:00 |
|
Jonathan Miller
|
c9c5ff7254
|
feat: events, volunteers, memberships views + grant/membership/event helpers
GrantHelper: pipeline summary, deadline tracking, report due dates.
MembershipHelper: active members, expiring, revenue summary, renewal.
EventHelper: upcoming events, registration, check-in, capacity tracking.
Admin views: Events list, Volunteers with hours stats, Memberships
with annual dues summary. All with templates.
|
2026-06-13 08:14:30 -05:00 |
|
Jonathan Miller
|
9f304902f9
|
feat: public donate page, campaign page with thermometer, volunteer signup
Donate: online donation form with quick-amount buttons, fund/campaign
selection, tribute (in honor/memory), auto tax receipt generation,
contact auto-creation. Campaign page: public thermometer + recent
donors + donate button. Volunteer signup: skills checkboxes, day
availability, auto contact creation + volunteer registration.
|
2026-06-13 08:01:55 -05:00 |
|
Jonathan Miller
|
7a033da7ed
|
feat: wire ACL permission checks into API controller
NpoDonationsController: requireAuth() checks on listDonations and
createDonation (npo.donations permission). Matches access.xml actions.
|
2026-06-13 07:33:08 -05:00 |
|
Jonathan Miller
|
f97c86bc71
|
chore: comprehensive config.xml settings + access.xml permissions
|
2026-06-13 07:20:07 -05:00 |
|
Jonathan Miller
|
2b6d52eeb3
|
feat: webservices plugin, task scheduler, router, config, access
NpoAutomation task plugin: year-end tax receipts, lapsed donor detection,
grant deadline reminders, pledge follow-up emails.
MokoSuiteNpoApi webservices: 6 CRUD routes (donors, donations, campaigns,
grants, volunteers, events). Router, config.xml, access.xml, updates.xml.
|
2026-06-13 07:10:16 -05:00 |
|
Jonathan Miller
|
675fff8ca6
|
feat: donors list, campaigns with thermometers, grants pipeline, donations API
NpoDonationsController API: donations CRUD, campaigns list, thermometer
data, donor list, fundraising summary.
Admin views: Donors list with lifetime giving + level badges, Campaigns
with progress bars + donor counts, Grants pipeline with deadline tracking.
|
2026-06-13 06:53:08 -05:00 |
|
Jonathan Miller
|
aee7bd071d
|
chore: add MokoSuite base as direct submodule for packaging
|
2026-06-12 02:26:17 -05:00 |
|
Jonathan Miller
|
63e7e8a922
|
chore: add MokoSuiteCRM as git submodule for layer packaging
|
2026-06-12 02:20:31 -05:00 |
|
Jonathan Miller
|
72c6d9a0e6
|
feat: initial scaffold — MokoSuiteNPO nonprofit management
Layer 2 add-on for MokoSuite CRM. Full nonprofit operations:
Schema (12 tables):
- Donors (extends CRM contacts with giving levels + lifetime stats)
- Donations (cash/check/card/ACH/stock/crypto/in-kind/pledge/matching)
- Pledges (installment tracking with fulfilment status)
- Funds (unrestricted/temporarily/permanently restricted/endowment)
- Campaigns (fundraising drives with goals and thermometers)
- Grants (prospect > writing > submitted > awarded > reporting lifecycle)
- Volunteers (skills, availability, background checks)
- Volunteer Hours (activity logging with approval)
- Memberships (levels, dues, auto-renew)
- Tax Receipts (IRS-compliant acknowledgment letters)
- Events (galas, auctions, community events with registration)
- Event Registrations (tickets, dietary, table assignment)
Helpers (4):
- DonorHelper: profiles, giving history, level auto-calculation, lapsed detection
- CampaignHelper: active campaigns, thermometer data, fundraising summary
- VolunteerHelper: registration, hours logging, skills matching, reporting
- TaxReceiptHelper: IRS-compliant receipt generation, year-end batch
Infrastructure:
- Joomla 6 architecture (PHP 8.3+, DI container, typed properties)
- Admin dashboard with fundraising thermometers + grant deadlines
- 6 webservice routes (donors, donations, campaigns, grants, volunteers, events)
- Package manifest with DLID update server
- GPL-3.0 license
|
2026-06-12 00:41:21 -05:00 |
|
jmiller
|
195d317644
|
Initial commit
|
2026-06-12 04:33:43 +00:00 |
|