Add detailed logging to updateMemberProfile for debugging
- Added logging at start of updateMemberProfile method - Added logging before and after saving user and member - Improved error response to include error detail...
Improve error handling and refresh profile data after save
- Added detailed error messages when profile save fails - Profile data is now refreshed from server after successful save - Better error logging for debugging
Add support for updating user name fields and dateOfBirth in member profile
- Added UserRepository to MemberController - Updated updateMemberProfile to handle namePrefix, nameFirst, nameMiddle, nameLast, nameSuffix, nameFirstAKA, nameLa...
Remove URL input for backgrounds, improve upload error handling, fix avatar persistence
- Removed URL input field for backgrounds - only uploads via popup are allowed - Improved error handling for background uploads with detailed error messages - F...
Resolve lint errors in ProfileTab and MemberHeader
- Added Button import to MemberHeader - Fixed newAvatar scope issue in handleUploadPhoto and handleCreateAvatar Creator - Stored avatarIdToRefresh in outer scop...
Refresh profile data after setting avatar and ensure proper activation
- handleSelectAvatar now sets avatar as active via API and refreshes profile data - handleUploadPhoto and handleCreateAvatar Creator now update member and refre...
Convert null to undefined for avatarSrc type compatibility
- fetchMemberAvatar returns string | null but avatarSrc expects string | undefined - Use nullish coalescing operator to convert null to undefined
Add .js extension to dynamic imports for node16 module resolution
- TypeScript with node16 moduleResolution requires explicit file extensions - Changed relative imports to include .js extension
Use relative paths for dynamic imports of avatarUtils
- Changed dynamic imports from @/app/lib/avatarUtils to relative paths - Fixes TypeScript module resolution error during build
Fix async/await syntax error in HexHeadGroup useEffect
- Wrapped Promise.all in async function to fix build error - useEffect callbacks cannot be async directly
Update avatarUtils to use URLs directly from member profile
- Backend now includes avatar URLs in member profile response - Removed unnecessary second API call to /api/security/avatars/{id} - More efficient and works cor...
Use correct bucket and object path structure for MinIO uploads
- Change bucket name from domain-based to 'public' bucket - Include domain path (e.g., kamocrm-com) as part of object name, not bucket name - Fix object path st...
Properly handle MinIO upload failures for avatars
- Remove silent exception swallowing in Avatar Creator avatar creation - Add proper error handling and rollback for failed uploads - Delete database record if f...
Handle missing fileHash column gracefully
- Add try-catch around fileHash access to handle missing database column - Fall back to ID-based file naming if fileHash column doesn't exist yet - Allows code ...
MuiAvatar를 사용하여 img 태그를 올바르게 표시 avatar 이미지
- 더 나은 이미지 렌더링을위한 MuiAvatar 구성 요소 대신 네이티브 img 태그 사용 - 원형 디스플레이를 위해 적당한 스타일링을 가진 상자 콘테이너에 있는 포장 img - 모든 기존 기능 유지 (오류 처리, 로딩 콜백) - avatar 이미지가 선택 메뉴에서 표시되지 않은 문제...
Avatar URL 생성 및 표시 문제
- API 프록시에서 X-Forwarded-Host 헤더 포워딩을 추가하면 올바른 테마 도메인 URL을 생성할 수 있습니다. - avatar 업로드 및 fetch 작업에 대한 포괄적 인 로깅 추가 - transformAvatarUrl 기능으로 URL 처리 개선 - 이미지 로딩 실패를 위...
Avatar 관리 UI 및 기능 향상
- Avatar 팝업에서 avatar 디스플레이를 수정하여 모든 avatar에 대한 이미지를 보여줍니다 (URL이 누락 될 때 SVG 클라이언트 측 생성) - 향상된 파일 입력 처리로 업로드 사진 기능 수정 - 'Avatar Creator' 텍스트를 'avatar'로 바꾸기 - 'Man...
