Outreach & Promotional — Forms
Forms — Outreach & Promotional
Module:
outreach(Module #9) · See blueprint:docs/blueprints/outreach.mdAll forms below are internal (admin / module-admin login required) unless noted. Section headings group related sub-modules. Tone matches
aayojana_framework.html— two-column form-grid, with aSambhavana/Sourcehelp line under the title where the input maps to a legacy spreadsheet or document.
Section A — Expansion Initiatives
Form 1.1 — Expansion Initiative Setup
Purpose: Register a multi-month/year expansion project (new branch, new program, geographic outreach, digital push, community programme) so leadership has a single ledger of "what we are trying to grow into." Who fills: Module-admin (Outreach) or Trustee · once per initiative; updated as it progresses.
| Field | Type | Required | Options / Validation | Default | Help |
|---|---|---|---|---|---|
| Initiative Name | text | yes | 5-200 chars | — | e.g. "Bangalore Branch Launch 2026" |
| Kind | select | yes | new_branch / new_program / geographic_expansion / digital_expansion / community_engagement | new_program | Drives downstream report grouping |
| Description | textarea | no | up to 2000 chars | — | One-paragraph what+why |
| Target Branch | FK select (branches) | no | existing branch picker | — | Fill only if branch already exists |
| Target Location | text | conditional | required if kind=geographic / new_branch and no branch FK | — | "Mysuru / Bangalore / Hubli" |
| Start Date | date | yes | not in past beyond 1 yr | today | When activity begins |
| End Date (target) | date | no | ≥ start_date | — | Leave blank if open-ended |
| Status | select | yes | planning / active / paused / completed / abandoned | planning | Status changes write Audit log |
| Budget (₹) | number | no | ≥ 0; max 14,2 | — | Approved budget; > threshold triggers two-key |
| Funding Source | select | no | general_fund / specific_donor / building_fund / grant / mixed | general_fund | Used by Vitta tag-mapping |
| Lead User | FK select (users) | no | active staff user | — | Who owns delivery |
| Expected Outcomes | textarea | no | up to 2000 chars | — | Targets — to compare against outcomes later |
| Outcome Notes (post-mortem) | textarea | no | filled when status flips to completed | — | Read-only when not in completed/abandoned |
| Metrics (JSON) | structured | no | valid JSON keys: devotees_engaged, media_mentions, donations_attributed | {} |
Filled in nightly from related modules |
Submit action: Inserts expansion_initiatives row; if budget exceeds tenant
threshold, sends an Audit two-key approval request (Audit module). Status change to
active requires approval; status change to completed writes a record_audit_event
of legal_weight=False.
Related forms: Form 1.4 (link engagements to this initiative), Form 1.5 (branch
checklist if kind=new_branch), Form 4.1 in Comms (announce launch), Form 5.1 in
Reports (run outreach_engagement_summary).
Form 1.2 — Initiative Status Update
Purpose: Quick mid-flight update on an active initiative — actuals vs budget, running outcomes notes, status flip. Who fills: Lead user or module-admin · monthly during active phase.
| Field | Type | Required | Options / Validation | Default | Help |
|---|---|---|---|---|---|
| Initiative | FK select | yes | active initiatives only | current | Pre-filled from URL |
| Status | select | yes | planning / active / paused / completed / abandoned | (current) | Flip writes audit row |
| Actual Spend (₹) | number | no | ≥ 0 | (current) | Reconciles nightly with Vitta tag |
| Status Note | textarea | yes | 10-1000 chars | — | What happened this month? |
| Metrics Update (JSON) | structured | no | partial keys allowed | (merge) | Merged onto existing metrics |
Submit action: Update + audit log row. If status flips to completed,
nudges user to fill Form 1.1 outcome-notes.
Related forms: Form 5.1 (Reports run for outcome packet).
Section B — Branding Asset Library
Form 1.3 — Branding Asset Upload
Purpose: Catalogue a brand collateral file (logo / brochure / banner / kit) with version, validity, custodian, and usage rights — so future teams know which logo is official and what they may reuse. Who fills: Module-admin or Branding-coordinator · once per asset; new version = new row.
| Field | Type | Required | Options / Validation | Default | Help |
|---|---|---|---|---|---|
| Asset Name | text | yes | 3-200 chars | — | e.g. "Mysuru Ashrama Primary Logo" |
| Kind | select | yes | logo / brochure / banner / standee / social_media_kit / brand_guideline / pitch_deck / video_intro | logo | Drives library filter |
| Version | text | no | semver-ish (e.g. v1, v2.1, 2026-festival) | v1 | Free-form |
| File (upload) | file | yes (one of) | png/jpg/pdf/svg/zip; max 50 MB | — | Stored as MediaAsset |
| External Storage URL | url | yes (one of) | starts with https:// | — | Use if hosted in Drive / external CDN |
| Valid From | date | no | ≤ valid_until | — | For festival / time-bound campaigns |
| Valid Until | date | no | ≥ valid_from | — | NULL = perennial |
| Custodian | FK select (users) | yes | active staff user | current user | Single accountable owner |
| Usage Rights | select | yes | internal_only / public_press / partner_distribution / open_creative_commons | internal_only | Press kits = public_press |
| Usage Guideline Doc | FK media or URL | no | PDF preferred | — | Brand-guide / do-don't sheet |
| Mark Current | checkbox | no | — | true | Untick to archive an old version |
Submit action: Creates branding_assets + (optionally) media_assets row.
If is_current=true and another asset of same kind+name is current, prompts
"Replace [v1]? Old version will be archived (kept on file)."
Related forms: Form 1.4 (engagements may link a launch-banner asset), Form 3.x in
Publications (a press release attaches the latest logo automatically).
Section C — Public Engagements
Form 1.4 — Public Lecture / Workshop Entry
Purpose: Log an outward-facing engagement — lecture, workshop, conference talk, exhibition, satsang — that the institution delivered or hosted, with audience size and follow-up notes. Who fills: Coordinator or module-admin · within 7 days of the engagement.
| Field | Type | Required | Options / Validation | Default | Help |
|---|---|---|---|---|---|
| Title | text | yes | 5-255 chars | — | e.g. "Vedanta Sandesh — Public Talk" |
| Kind | select | yes | public_lecture / workshop / conference_talk / exhibition / satsang / panel | public_lecture | — |
| Description | textarea | no | up to 2000 chars | — | Topic + why this engagement matters |
| Engagement Date | date | yes | not future > 1 yr | today | Single-day; multi-day uses Joint Program |
| Duration (hours) | number | no | 0.25 – 24; step 0.25 | — | Decimal hours |
| Presenter (Member) | FK select | yes (one of) | members.id | — | Internal acharya / staff |
| Presenter (External Name) | text | yes (one of) | 3-255 chars | — | If guest speaker, free-text |
| Venue | text | no | 3-255 chars | — | "Mysore University Hall", etc. |
| Venue Branch | FK select (branches) | no | existing branches | — | If hosted at our branch |
| Audience Size (est.) | number | no | ≥ 0 | — | Attendees estimate |
| Recording / Photos URL | url | no | https:// | — | YouTube / Drive link |
| Linked Initiative | FK select | no | active or completed initiatives | — | If part of a larger expansion push |
| Impact Notes | textarea | no | up to 2000 chars | — | Donations attributed, follow-up prospects, press generated |
| Media Asset IDs (gallery) | multi-FK | no | media_assets.id list | — | Photos + recordings |
Submit action: Inserts public_engagements row. If Linked Initiative is set,
auto-increments that initiative's metrics.devotees_engaged by audience_size.
Auto-suggests creating a Media Coverage row if recording URL provided.
Related forms: Form 1.5 (Media Coverage Log if press attended), Form 4.2 in Comms
(invite audience), Form 3.x in Publications (publish press release post-event).
Section D — Media Coverage
Form 1.5 — Media Coverage Log
Purpose: Record every media mention (print, TV, online, radio, social) of the institution — for institutional memory and quarterly press-coverage roll-ups. Who fills: Comms / PR coordinator · as coverage is spotted.
| Field | Type | Required | Options / Validation | Default | Help |
|---|---|---|---|---|---|
| Coverage Date | date | yes | not future | today | Date piece appeared |
| Outlet | text | yes | 3-160 chars; auto-complete from past entries | — | "The Hindu", "Vijayavani", "Doordarshan", "DhulipalaTV" |
| Outlet Kind | select | yes | print / tv / online / radio / social_media | online | Filter dimension |
| Title / Headline | text | no | up to 500 chars | — | Article / segment title |
| Summary | textarea | no | up to 2000 chars | — | One-paragraph summary |
| Sentiment | select | yes | positive / neutral / critical | neutral | Manual v1; LLM-suggest later |
| Archive URL | url | no | https://; valid format | — | Live link to article |
| Archive PDF / Snapshot | file | no | pdf; max 20 MB | — | Snapshot in case URL rots |
| Related Engagement | FK select | no | recent engagements | — | If coverage was about a specific lecture |
| Related Initiative | FK select | no | active initiatives | — | If part of launch campaign |
| Reach Estimate | number | no | ≥ 0 | — | Circulation / viewers / impressions |
Submit action: Creates media_coverage_log row. If Archive URL is provided
without PDF, queues a background headless-browser snapshot job (Phase B+).
If Related Initiative is set, increments that initiative's metrics.media_mentions.
Related forms: Form 5.1 (Reports — quarterly media roll-up), Form 1.4 (link back
to engagement).
Section E — New Branch Establishment
Form 1.6 — New Branch Establishment Tracker
Purpose: Checklist-style tracker for the parallel workstreams of standing up a new branch — legal, infrastructure, staffing, communications, opening rituals — so nothing is forgotten and progress is visible at a glance. Who fills: Branch lead (the user named on Form 1.1 lead_user_id) · weekly during active phase.
| Field | Type | Required | Options / Validation | Default | Help |
|---|---|---|---|---|---|
| Linked Initiative | FK select | yes | initiatives where kind=new_branch | — | Master record |
| Branch Working Name | text | yes | 5-200 chars | — | "Hubli Ashrama" |
| Target Opening Date | date | yes | ≥ today | — | Aspirational |
| Legal Workstream | section | — | — | — | — |
| ☐ Trust deed amendment (parent trust adds branch) | checkbox + date | no | — | unchecked | Amendment regd date |
| ☐ Local Society / Trust registered | checkbox + date | no | — | unchecked | If separate legal vehicle |
| ☐ 12A / 80G extension filed | checkbox + date | no | — | unchecked | IT extension |
| ☐ FCRA registration / sub-clause | checkbox + date | no | — | unchecked | If foreign donations expected |
| ☐ GST registration (if turnover-applicable) | checkbox + date | no | — | unchecked | — |
| ☐ Local panchayat / municipal NOCs | checkbox + date | no | — | unchecked | — |
| Infrastructure | section | — | — | — | — |
| ☐ Land / building secured (lease or purchase) | checkbox + date | no | — | unchecked | Triggers Asset Mgmt entry |
| ☐ Electricity / water / sewage connections | checkbox + date | no | — | unchecked | — |
| ☐ Pooja / shrine setup | checkbox + date | no | — | unchecked | — |
| ☐ Office furniture + IT (laptop / printer) | checkbox + date | no | — | unchecked | — |
| ☐ Bank account opened | checkbox + date | no | — | unchecked | Triggers Vitta entry |
| Staffing | section | — | — | — | — |
| ☐ Branch in-charge named | checkbox + member FK | no | — | unchecked | Member with role |
| ☐ Archaka / acharya appointed | checkbox + member FK | no | — | unchecked | — |
| ☐ Office staff (admin, accounts) | checkbox + count | no | — | unchecked | Headcount |
| Communications | section | — | — | — | — |
| ☐ Announcement to existing donors | checkbox + date | no | — | unchecked | via Comms Form 4.2 |
| ☐ Press release issued | checkbox + Publication FK | no | — | unchecked | links to Publications |
| ☐ Branch landing page live | checkbox + URL | no | — | unchecked | — |
| ☐ Local-language pamphlet distributed | checkbox + qty | no | — | unchecked | Branding asset linked |
| Opening Rituals | section | — | — | — | — |
| ☐ Bhumi Pooja date | date | no | — | — | — |
| ☐ Pratishtha / opening date | date | no | — | — | — |
| ☐ First public satsang / lecture | date | no | — | — | Auto-creates engagement on Form 1.4 |
| Notes (free-text) | textarea | no | up to 4000 chars | — | Anything else worth remembering |
| Overall Progress | computed | — | % checkboxes ticked | — | Read-only progress bar |
Submit action: Saves checklist state on the parent expansion_initiatives row's
metadata.branch_checklist. When all five sections show 100%, prompts user to flip
initiative status to completed. Each section completion writes an audit-log entry
(legal_weight=False, but recoverable).
Related forms: Form 1.1 (parent), Form 1.4 (auto-create opening lecture), Form 4.2 in
Comms (announcement campaign), Form 3.x in Publications (press release), Form 5.1 in
Reports (handover packet on completion).
Workflow notes
- Initiative → Engagements + Media + Branch Checklist all FK upward to the same initiative, so an "Initiative Detail" page rolls all four into one timeline.
- Branding assets are independent of initiatives but can be tagged via JSON metadata for "festival 2026 kit" type bundles.
- Quarterly the Reports module auto-runs
outreach_engagement_summaryon the first of the month; output is mailed to trustees through Commssend_to_segment. - All form submissions inherit
tenant_idfrom the logged-in user's tenant — no tenant picker exposed to module-admins. - VijayaDV PUA characters in Sanskrit titles / descriptions are preserved verbatim; no Unicode normalisation runs on these textareas.