feat(contracts): Add legal export package and ESIGN compliance improvements
- Add export_legal endpoint for signed contracts that generates a ZIP with: - Signed contract PDF - Audit certificate PDF with signature details and hash verification - Machine-readable signature_record.json - Integrity verification report - README documentation - Add audit certificate template with: - Contract and signature information - Consent records with exact legal text - Document integrity verification (SHA-256 hash comparison) - ESIGN Act and UETA compliance statement - Update ContractSigning page for ESIGN/UETA compliance: - Consent checkbox text now matches backend-stored legal text - Added proper legal notice with ESIGN Act references - Add signed_at field to ContractListSerializer - Add view/print buttons for signed contracts in Contracts page - Allow viewing signed contracts via public signing URL 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -70,7 +70,28 @@
|
||||
"rememberMe": "Remember me",
|
||||
"twoFactorRequired": "Two-factor authentication required",
|
||||
"enterCode": "Enter verification code",
|
||||
"verifyCode": "Verify Code"
|
||||
"verifyCode": "Verify Code",
|
||||
"login": {
|
||||
"title": "Sign in to your account",
|
||||
"subtitle": "Don't have an account?",
|
||||
"createAccount": "Create one now",
|
||||
"platformBadge": "Platform Login",
|
||||
"heroTitle": "Manage Your Business with Confidence",
|
||||
"heroSubtitle": "Access your dashboard to manage appointments, customers, and grow your business.",
|
||||
"features": {
|
||||
"scheduling": "Smart scheduling & resource management",
|
||||
"automation": "Automated reminders & follow-ups",
|
||||
"security": "Enterprise-grade security"
|
||||
},
|
||||
"privacy": "Privacy",
|
||||
"terms": "Terms"
|
||||
},
|
||||
"tenantLogin": {
|
||||
"welcome": "Welcome to {{business}}",
|
||||
"subtitle": "Sign in to manage your appointments",
|
||||
"staffAccess": "Staff Access",
|
||||
"customerBooking": "Customer Booking"
|
||||
}
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Dashboard",
|
||||
@@ -679,6 +700,7 @@
|
||||
"edit": "Edit",
|
||||
"viewDetails": "View Details",
|
||||
"copyLink": "Copy Signing Link",
|
||||
"copied": "Copied!",
|
||||
"sendEmail": "Send Email",
|
||||
"openSigningPage": "Open Signing Page",
|
||||
"saveChanges": "Save Changes"
|
||||
@@ -723,7 +745,11 @@
|
||||
"status": "Status",
|
||||
"created": "Created",
|
||||
"contentPreview": "Content Preview",
|
||||
"signingLink": "Signing Link"
|
||||
"signingLink": "Signing Link",
|
||||
"signedTitle": "Contract Successfully Signed",
|
||||
"viewFullContract": "View Full Contract",
|
||||
"printContract": "Print Contract",
|
||||
"exportLegal": "Export Legal Package"
|
||||
},
|
||||
"preview": {
|
||||
"title": "Preview Contract",
|
||||
@@ -861,7 +887,14 @@
|
||||
"noCustomersFound": "No customers found matching your search.",
|
||||
"addNewCustomer": "Add New Customer",
|
||||
"createCustomer": "Create Customer",
|
||||
"errorLoading": "Error loading customers"
|
||||
"errorLoading": "Error loading customers",
|
||||
"deleteCustomer": "Delete Customer",
|
||||
"deleteConfirmation": "Are you sure you want to delete this customer? This action cannot be undone.",
|
||||
"password": "Password",
|
||||
"newPassword": "New Password",
|
||||
"passwordPlaceholder": "Leave blank to keep current password",
|
||||
"accountInfo": "Account Information",
|
||||
"contactDetails": "Contact Details"
|
||||
},
|
||||
"resources": {
|
||||
"title": "Resources",
|
||||
|
||||
Reference in New Issue
Block a user