Commit Graph

43 Commits

Author SHA1 Message Date
Matt 3f90db0392 feat: Update distribution method in EOI document generation to 'NONE' 2025-07-09 21:59:06 -04:00
Matt a83895bef3 feat: Update Documenso configuration in .env.example and refactor generate-eoi-document to use environment variables for recipient IDs and template ID 2025-07-09 21:51:42 -04:00
Matt 3a83831a20 FEAT: Implement authenticated internal API call utility to forward cookies and enhance authentication handling 2025-06-15 17:48:40 +02:00
Matt f4f514f1e1 KEYCLOAK AUTH FIX: Phase 5 - Final Batch (COMPLETE)
**UPDATED ENDPOINTS (7 final):**
- test-eoi-cleanup.ts (updated old auth)
- eoi/send-reminders.ts (updated old auth + fixed function calls)
- eoi/delete-generated-document.ts (updated old auth)
- eoi/delete-document.ts (updated old auth + fixed function calls)
- email/test-minio-bucket.ts (updated old auth)
- email/test-connection.ts (updated old auth)
- email/process-sales-eois.ts (updated old auth)

** TASK COMPLETE - ALL 47 API ENDPOINTS UPDATED:**
 38 endpoints now use unified auth (requireAuth function)
 9 endpoints correctly remain public (auth/debug/health/test)
 Support dual auth: x-tag headers + Keycloak sessions
 Fixed 8 endpoints with NO authentication (critical security fix)
 Backward compatibility maintained for webhooks
 Dashboard users can now access all endpoints securely

**SECURITY ACHIEVEMENT:**
- Eliminated all old x-tag authentication patterns
- Unified authentication system across entire API
- Critical security vulnerabilities patched
- Production-ready authentication implementation
2025-06-15 16:41:36 +02:00
Matt a17c6ed162 KEYCLOAK AUTH FIX: Phase 4 - Email & Files Endpoints
**UPDATED ENDPOINTS (11 additional):**
- email/send.ts (CRITICAL: was using old auth)
- email/fetch-thread.ts (CRITICAL: was using old auth)
- email/fetch-thread-v2.ts (CRITICAL: was using old auth)
- email/generate-eoi-document.ts (CRITICAL: was using old auth)
- files/upload.ts (CRITICAL: was using old auth)
- files/list.ts (SECURITY ISSUE: had NO auth)
- files/download.ts (SECURITY ISSUE: had NO auth)
- files/delete.ts (SECURITY ISSUE: had NO auth)
- files/create-folder.ts (SECURITY ISSUE: had NO auth)
- files/preview.ts (SECURITY ISSUE: had NO auth)
- files/rename.ts (SECURITY ISSUE: had NO auth)

**AUTHENTICATION:** All now support dual auth:
- x-tag header (webhooks/external calls)
- Keycloak session (logged-in users)

**PROGRESS:** 28/47 endpoints completed (~60%)
**NEXT:** Continue with remaining proxy, test & debug endpoints

**CRITICAL SECURITY FIXES:** Found 6 file endpoints with NO authentication - major vulnerability patched!
2025-06-15 16:32:34 +02:00
Matt 72ea543485 Update logo references and email logo URL in configuration 2025-06-13 13:36:14 +02:00
Matt f111f76a3b email server updates 2025-06-12 18:05:42 +02:00
Matt da2d965da8 fixes 2025-06-12 17:52:57 +02:00
Matt 64c35b70f8 Improve email session management and add IMAP connection pooling
- Switch from localStorage to sessionStorage for email sessions
- Add session validation on component mount
- Implement IMAP connection pool with folder search capabilities
- Add operation locking utility for concurrent request handling
- Refactor EOI section component structure
- Update API endpoints for better email thread management
2025-06-12 15:53:12 +02:00
Matt c8d8042797 fixes 2025-06-11 19:22:50 +02:00
Matt d233f3b919 fixes 2025-06-11 18:46:18 +02:00
Matt 061cbea574 fixes 2025-06-11 18:38:43 +02:00
Matt 30e90dd73b fixes 2025-06-11 18:29:56 +02:00
Matt 96aa06d2ed fixes 2025-06-11 18:14:10 +02:00
Matt f891060e7c Add embedded signing support with webhook configuration
- Add helper function to generate embedded signing URLs from Documenso links
- Store embedded signature links for all signers (Client, Developer, CC)
- Add webhook secret configuration for embedded signing
- Add documentation for embedded signing and website implementation
- Update Interest type with embedded signature link fields
2025-06-11 17:57:58 +02:00
Matt 85773fc09e updates 2025-06-11 16:50:31 +02:00
Matt bc591f687f fixes 2025-06-11 16:05:19 +02:00
Matt f992fbb5a6 updates 2025-06-11 14:08:28 +02:00
Matt 0b6601fabc updates 2025-06-11 13:54:04 +02:00
Matt fca6321dcf Merge branch 'main' of https://code.portnimara.com/ron/client-portal 2025-06-11 13:53:10 +02:00
Matt a49322f852 updates 2025-06-11 13:50:51 +02:00
Matt 09c32ae6cb updates 2025-06-10 20:56:56 +02:00
Matt cf4af2cbff updates 2025-06-10 20:45:47 +02:00
Matt 3d3a712ed2 Fix email loading issues and improve performance
- Removed limit on cached emails - now loads ALL cached emails from MinIO
- Kept IMAP limit at 50 for reasonable performance
- Added loading indicator showing when emails are being fetched
- Fixed ES module import issue in email-utils.ts
- Improved user experience with visual feedback during loading

This ensures all email threads load completely while maintaining reasonable performance
2025-06-10 18:09:53 +02:00
Matt 0a541f658d Improve email loading performance and fix UI issues
- Fixed refresh button icon not displaying (changed from icon prop to v-icon element)
- Reduced default email limit from 50 to 20 to improve loading speed
- Optimized cached email loading to only load most recent emails (up to limit)
- Fixed CommonJS require error in email-utils.ts (changed to ES module import)
- Added sorting to cached files to ensure newest emails are loaded first

This should significantly improve email loading performance from 578 cached files down to max 20
2025-06-10 18:04:31 +02:00
Matt 28d69cd000 updates 2025-06-10 17:56:26 +02:00
Matt f0e03c278a Fix multiple UI/UX issues and enhance email functionality
- Fixed delete interest button requiring multiple clicks by removing debounce
- Fixed Generate EOI button display on mobile devices
- Added horizontal scrolling with touch support for mobile interest list
- Removed Place of Residence field from interest creation form
- Enhanced EOI upload with better error handling and logging
- Fixed email attachment upload authentication issues
- Created EmailDetailsDialog component for viewing full email details
- Re-integrated email thread viewing with toggle between threads/all views
- Added reply functionality for individual emails and threads
- Optimized email loading performance by reducing fetch limit to 50
- Fixed visual bugs with thread expansion panels
- Added explicit save button for email signatures
- Improved file upload authentication and bucket creation for attachments
2025-06-10 17:07:11 +02:00
Matt 4b6d3fd991 updates 2025-06-10 15:01:04 +02:00
Matt bb1a237961 updates 2025-06-10 14:32:20 +02:00
Matt 218705da52 Add EOI automation system with email processing and document management
- Implement automated EOI processing from sales emails
- Add EOI document upload and management capabilities
- Enhance email thread handling with better parsing and grouping
- Add retry logic and error handling for file operations
- Introduce Documeso integration for document processing
- Create server tasks and plugins infrastructure
- Update email composer with improved attachment handling
2025-06-10 13:59:09 +02:00
Matt 4d55bb63b2 fixes 2025-06-10 12:26:50 +02:00
Matt b332f913a6 Add file attachment support to email composer
- Add file browser integration for selecting attachments
- Display attached files with remove functionality in composer
- Include attachments in email sending process
- Show attachment info in email thread display
- Update server endpoints to handle file attachments
- Minor UI improvements to EOI status badge layout
2025-06-10 02:39:00 +02:00
Matt e388779e11 updates 2025-06-10 02:10:32 +02:00
Matt 662f22a58f fixes 2025-06-10 01:57:19 +02:00
Matt b4fe29413b updates 2025-06-10 01:19:14 +02:00
Matt 58b2504e14 updates 2025-06-10 00:53:49 +02:00
Matt d9fb94a76c Refactor EOI management into dedicated component
Extract EOI links and generation functionality from InterestDetailsModal
into a new reusable EOISection component. This improves code organization
and maintainability while adding debounce support for form submissions.

- Create new EOISection.vue component for EOI management
- Remove inline EOI links section from InterestDetailsModal
- Add debounce utility for form submission handling
- Update email generation and thread fetching logic
- Update related types and utilities
2025-06-10 00:37:43 +02:00
Matt 48cee6f849 Fix 502 errors on container restart and expand API authentication
- Handle 502 Gateway Timeout errors by clearing invalid sessions
- Add graceful session validation failure handling in fetch-thread API
- Expand x-tag authentication to accept additional valid token
- Add debug logging to berth-related API endpoints
- Document the 502 error fix in email system documentation
2025-06-09 23:29:24 +02:00
Matt f593036d0f Fix email signature layout and enhance email thread fetching
- Move logo to top of email signature for better formatting
- Enhance IMAP search to include CC/BCC fields and multiple folders
- Fix EOI document generation to properly send and extract signing URLs
- Update documentation with all email system fixes
2025-06-09 23:09:32 +02:00
Matt 77b6aa2752 Fix EOI generation and interest update authentication
- Make Address field optional in EOI document generation with "Not Provided" default
- Accept both x-tag headers ("094ut234" and "pjnvü1230") for interest updates
- Update required fields validation to exclude Address
- Improve error messages to guide users on updating missing fields
2025-06-09 22:56:10 +02:00
Matt 5f10e9fb54 Fix email system error handling and remove hardcoded credentials
- Handle missing email sessions gracefully without throwing errors
- Clear partial session data when no valid session exists
- Return empty results instead of 401 errors for missing credentials
- Remove hardcoded Documenso API key and require env variables
- Reduce email fetch limit from 50 to 20 for performance
- Add documentation for email system fixes
2025-06-09 22:50:06 +02:00
Matt f7cc2973e1 Add Documenso integration for EOI document generation
- Add Documenso API configuration to environment variables
- Create endpoint to generate EOI documents with e-signature capability
- Update email composer to insert generated EOI document links
- Add UI indicators for EOI generation status in interest details
- Emit events to refresh interest data after EOI generation
2025-06-09 22:40:37 +02:00
Matt 618c888b85 Add email communication system with encrypted credentials
- Add email components for composing, viewing threads, and credential setup
- Implement server API endpoints for sending emails and fetching threads
- Add encryption utilities for secure credential storage
- Configure email settings in environment variables
- Integrate email functionality into interest details modal
2025-06-09 21:45:06 +02:00