Add comprehensive custom forms builder with drag-and-drop
- Update CRM page: Change tab name from "Custom Online Forms" to "Custom Forms" - Add CustomFormManager component for form list/browse with create/edit/delete -...
Add CustomFormController for custom forms API endpoints
- Add REST controller at /api/security/custom-forms - Implement GET, POST, PUT, DELETE endpoints for form management - Support form structure with stacks and fi...
Form builder 지원으로 사용자 정의 양식 기능 추가
- FormFieldType을 12 필드 유형 (TEXT, TEXT AREA, MONEY, DATE, DATE TIME, DROPDOWN, RADIO, LIST, CHECKBOX, ADDRESS, US SSN, US STATE)에 추가하십시오. - 일반 클래스 추가: CustomForm...
Fully wire vendors-products page with modern UI, full CRUD for vendors and products
Add LeadVendorController with full CRUD for vendors and products
String ID로 LeadVendor 및 LeadVendorProduct에 대한 전체 CRUD 지원 추가
Add Next.js API routes for lead-markets to proxy to SecurityService
Add LeadMarketController for managing lead markets via REST API
Rebuild LeadMarketManager UI component with modern design and API integration
Add CRM settings page with Markets & Fields, Vendors & Products, Manual Lead Imports, and Integrated Lead Imports tabs
Use organization streamGuid for organization-wide media feed
- Added OrganizationRepository to MediaStreamController - Updated getFeed to use organization's streamGuid instead of querying all sessions - Updated createPost...
Create reusable MediaStream component and lead communications
- Created reusable MediaStream component for all media stream contexts - Refactored FeedTimeline to use MediaStream component - Created LeadCommunications compo...
Lead and support Lead-specific 미디어 스트림에 streamGuid 추가
- 참고 MediaSession 스트림에 Lead.java에 streamGuid 필드 추가 - 업데이트 된 MediaSession선택적 리드 협회를 지원하기 위해 포스트 - 업데이트 된 ********** * 옵션 리드 매개 변수를 수락 - MediaSessionRepository를 사...
Modernize social media feed design with hip, polished styling
Implement social media feed timeline
- Replace clubhouse page with FeedTimeline component - Add PostComposer for creating posts with images - Add PostCard component with like, comment, edit, delete...
Add MediaFeedController for social media feed
- Add MediaFeedController with REST endpoints for posts, comments, likes - Implement paginated feed endpoint with access level filtering - Add image upload endp...
MediaObjReportRepository 및 소셜 피드에 대한 미디어 서비스를 업데이트
- MediaObjReportRepository를 추가하십시오. - CreatePostSession 및 NATS 이벤트 게시와 미디어 서비스 업데이트 - Update MediaSessionRepository with 조직 기반 피드 쿼리 - Employee.java jobStatus 필...
Add filter header to Members & Subscribers tab with all column filters aligned
Add filter header to EmployeeManager datagrid with employment status and other filters
Update EmployeeManager with backend integration and add account API routes
Add AccountController with endpoints for Members & Subscribers and Employees & Contractors
MemberType enum 및 memberType 필드를 사용하여 효율적인 데이터베이스 쿼리에 대한 Member entity 추가
Preserve USERNAME and REMEMBER_ME cookies on logout and forward to kamo-login
- Exclude USERNAME and REMEMBER_ME cookies from deletion on logout - Forward logout request to kamo-login logout endpoint after clearing cookies
USERNAME 및 REMEMBER ME 쿠키를 도메인 별 설정으로 추가하십시오
- USERNAME 쿠키를 설정하면 성공적인 로그인을 기억하십시오 (1 년 만료) - 로그인 시도를 취소 할 때 Clear USERNAME 쿠키 - REMEMBER ME 쿠키를 '1' 또는 '0'을 체크박스 상태로 설정 - 페이지로드에서 USERNAME 쿠키의 사용자 이름 필드를 자동 ...
Add organization logos to Profile and Membership & Permissions tabs
- Fetch security provider organization logo and display next to Profile tab - Fetch current organization logo and display next to Membership & Permissions tab -...
Add Manage Backgrounds button in MemberHeader
- Added handleManageBackgroundsClick prop to MemberHeader - Added Manage Backgrounds button next to URL input when custom background is enabled - BackgroundMana...
Store avatar hash and extension in *** session data
- Added updateSession method to KSessionService for updating session fields - Updated setActiveAvatar to store userAvatarHash and userAvatarExtension in session...
Include avatar URLs in member profile response
- Added helper methods to generate avatar URLs (getThemeDomain, getPublicBucketName, generateFileHash, getPublicBucketUrl, generateAvatarUrl) - Updated getMembe...
Add avatar fallback logic to chat components and member list
- Created avatarUtils.ts with utility functions for avatar fallback (member -> user -> initials) - Updated HexHeadGroup to fetch and display avatars with fallba...
Update Create Avatar layout to match kamo-register design
- Reorganize Create Avatar tab with top row for quick settings (Style, Seed) - Split bottom row into two columns: Preview (left) and Advanced Settings (right) -...
Implement hash-based file storage for avatars
- Generate SHA-256 hash from avatar ID after persistence - Store hash in database fileHash field - Upload files to MinIO using hash-based naming: {hash}.{fileEx...
FileHash 필드를 안전한 파일 저장을위한 Avatar entity에 추가하십시오
- avatar ID의 SHA-256 해시 열 추가 - Hash는 축소 공격을 방지하기 위해 MinIO 파일에 사용됩니다. - 형식 : {hash}.{fileExtension} 대신 {id}.{fileExtension}