Complete removal of the old DirectAccessReport entity and all related
files. LegalAid is now the sole entity for legal aid data management.
- Remove DirectAccessReport: controller, service, hooks, entity defs,
scopes, clientDefs, layouts, i18n (all 3 locales)
- Remove directAccessReports link from Case
- Rewrite GenerateInitialReport tool to work directly with LegalAid
- Clean up Case i18n (remove old field translations)
- Bump version to 1.5.0
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace scattered Case fields with a dedicated LegalAid entity that
holds all legal aid data (aid type, urgency, client contact, proceeding
details, legal analysis, recommendation, etc.). DirectAccessReport now
pulls from LegalAid for DOCX generation with automatic checkbox mapping.
- Add LegalAid entity with controller, layouts, i18n (he/en/fa)
- Remove cAidType, cUrgencyLevel, cAppointmentDate, cFilingDeadline,
cLegalAidType from Case (migrated to LegalAid)
- Add legalAidType field to LegalAid (DirectAccess/Regular/Duty)
- Update DirectAccessReportService to use LegalAid entity
- Add update_legal_aid and get_legal_aid SmartAssistant tools
- Fix AfterInstall template entityType to LegalAid
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
EspoCRM requires an explicit controller class for every entity — without
it the API returns 404. Added a simple Record controller for DirectAccessReport.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Version 1.2.3 was installed on EspoCRM but DirectAccessReport entity
was returning 404. Bumped to 1.3.1 to allow clean upgrade install.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Ensures custom/Espo/Custom/Resources/i18n/{locale}/ exists for
en_US, fa_IR, he_IL, and the system language. Without this, Label
Manager fails with 500 on fresh installs using fa_IR (Hebrew RTL
wrapper) because the directory doesn't exist and EspoCRM doesn't
create it automatically.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bottom panel tab labels with $ prefix resolve via translate(key, 'tabs', scope),
not 'labels'. Added "tabs" section to Case.json (fa_IR/he_IL/en_US).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Translates the bottom panel tab "$LegalAssistance" → "סיוע משפטי"
in Case detail view (fa_IR + he_IL + en_US).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The HebrewLanguage extension uses fa_IR as the locale code (RTL wrapper),
not he_IL. Without fa_IR translations, all labels show in English.
Copied he_IL → fa_IR. Bump to v1.2.0.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- prompts.json: rewrite in Hebrew with general awareness of "גישה ישירה"
concept, trigger keywords, and structured 8-step conversation flow
- tools.json: add courtName enum with 6 valid court names (was free string)
These changes match what was deployed to ai-gateway plugins/legal-assistance/
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add Global.json (he_IL + en_US) for scope names in navigation/menus
- Add en_US/Case.json for English field/option translations
- Add all enum option translations to DirectAccessReport (both languages)
- Bump version to 1.1.0
- Include updated extension ZIP package
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- DirectAccessReport entity (48 fields, status lifecycle, Case relationship)
- Case fields: cLegalAidType, cAppointmentDate, cAidType, cUrgencyLevel, cFilingDeadline
- Auto-tasks hook: creates 3 tasks when case set to Direct Access
- DOCX template with 72 placeholders (converted from original form)
- Shira plugin: generate_initial_report tool with structured conversation flow
- AfterInstall/AfterUninstall scripts for plugin deployment
- Hebrew + English translations
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>