72c6d9a0e6
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
9 lines
286 B
PHP
9 lines
286 B
PHP
<?php
|
|
defined('_JEXEC') or die;
|
|
use Joomla\CMS\Installer\InstallerAdapter;
|
|
class Pkg_mokosuitenpoInstallerScript
|
|
{
|
|
public function preflight(string $type, InstallerAdapter $adapter): bool { return true; }
|
|
public function postflight(string $type, InstallerAdapter $adapter): void {}
|
|
}
|