Scripts & code
A growing collection of utilities, automation, and small projects—WordPress plugins, shell helpers, and whatever else is useful to share. Everything here is built to be practical, readable, and easy to adapt.
What's here
Membership Manager
Full-featured membership plugin: payments, approvals, events & attendance, roster, renewal reminders, and dashboard—geared toward clubs and small orgs (including amateur radio groups).
- PayPal & Stripe Checkout
- Member approval queue & admin notifications
- Events calendar & attendance; prize drawing pool
- Public renewal form & price summary before checkout
- Email audit log; optional QRZ / Callook auto-fill
- Treasurer view — quick payments, member edits, recent attendance
- Guest / Visitor level — attendance-only records (optional list filter), hidden from roster by default
- Self check-in kiosk shortcode [mm_checkin] with QR code — tablet at the table, phones for everyone else; new walk-ins auto-created via callsign lookup
- DXCC Standings panel on member profiles — live lookup against a monthly-snapshot table showing modes, entity counts, Honor Roll and Lifetime status, with mismatch detection against the DXCC Certified flag
- Country field on member records; State dropdown includes PR, GU, VI
- Configurable officer titles & roles in Settings (add / reorder / restore defaults)
- In memoriam shortcode — Silent Keys on any members-only page
- Roster, privacy, CSV import/export, role tiers
DMARC Monitor
Automated DMARC aggregate report collection and analysis for cPanel servers — fetches reports from your mailbox, parses the XML, and displays per-domain findings in a self-hosted PHP dashboard.
- Connects to cPanel IMAP via localhost — no external dependencies
- Decompresses ZIP and GZ attachments, parses DMARC aggregate XML automatically
- Groups results by domain — SPF pass rate, DKIM pass rate, policy enforcement status
- Identifies SPF failures, DKIM failures, unknown sending sources, and quarantined messages
- Plain-English recommended action for every finding — specific DNS fixes included
- Fingerprint-based deduplication — never double-counts a report across cron runs
- Session-based login with username/password change page built in
- Status bar shows last cron run time, emails checked, and new reports added
- DNS bulk tools — add, audit, fix, and verify _dmarc records across all server domains
- Cron job runs every 4 hours; dark mode support; no external libraries required
About this site
I'm Jeff Dale WB3ISP. I publish scripts and small projects I actually use—nothing fancy, just solid code you can run, read, and modify. Licensing varies by project (GPL for WordPress plugins; check each item for specifics). If something saves you time, that's the point.
WB3ISP · Scripts & code · Jeff Dale · CQ CQ DE WB3ISP 73