보안 모델 정책의 규정 준수 마법사
- 지점 유형 API지도 알코올 / 담배 / 방화 정책 마법사 상태 - 동적 준수 단계 : 모델이 모든 ATF 및 연령을 고정 할 때 nav에서 omit - MEMBER SELECT 또는 여러 연령 옵션만 제어 - 리뷰는 사용자 만 표시되었습니다.; title Compliance Set...
Changelog 링크 및 일일 카운트와 실시간 상태 표시
미리보기 카운트다운 및 signup 복사를 컴팩트 한 "Now LIVE"로 대체하십시오. callout, changelog 링크를 유지, 항상 오늘의 변경 카운트를 표시 API에서 로드 후. locales를 통해 previewBanner 문자열을 업데이트합니다.
RoleRightsSyncService를 모든 부팅에 완전히 자기 치유
RoleRightType을 추가하거나 제거하려면 다시 실행해야 합니다. KamoInitializerService. syncAll()는 이제 3단계를 실행합니다. 1. 치유 제약 - 모든 CHECK 제약을 드롭 테이블과 두 개의 upsert-required 독특한 제약이 존재한다. Hi...
플랫폼 관리 설정 추가 — org 계획 보조금, 이벤트, 계획 카탈로그
- /settings/platform의 밑에 새로운 페이지 ( hasPlatformAdminAccess에 의해 보호하는): - /organizations - 모든 org, 보조금 / modify/revoke COMP는 이유와 계획 - /events - 감사 피드의 ************...
PlatformAdmin Controller + 서비스 추가
- PlatformAdminController at /api/billing/platform (클래스 레벨 @PlatformAdminOnly) - GET /orgs, GET /orgs / {orgId} - POST /org/{orgId}/grants, PATCH|DELETE /orgs/{...
Seed Organization.isTopLevel for kamocrm 및 OWNER UNLIMITED 자체 컴파일 계획
- DataLoader: 드롭 조직 createOrg의 유형 arg, set isTopLevel=true 에 kamocrm - KamoCRMAgeReqUpdateRunner + 테스트 : IS TOP LEVEL = TYPE 대신 TRUE에 일치 - OrganizationTypeRemov...
Organization.isTopLevel, PaymentMethod.COMP, COMP * 이벤트 유형 추가; 조직 제거 유형 enum
- 조직 : 플랫폼 소유자 식별을위한 `isTopLevel` 플래그와 죽은 `type` 필드를 대체 - PaymentMethod : 무료 플랫폼 관리자 보조금 (스트라이프 없음) - SubscriptionEventType: COMP GRANTED, COMP REVOKED, COMP EX...
Member-requestor 지원 권리 조정 및 듀얼 모드 티켓보기
- NavTop: 어떤 지원 권리든지를 위한 show SupportButton (시약 또는 일원) - SupportButton : 오른쪽으로 각 드롭다운 항목 - Create/View Tickets, Webinar 요청, 오른쪽이 열릴 때만 표시되는 내 웹 세미나 - SupportTic...
회원제 서비스 이용권 (133-136)
비 시약 회원을 위한 4개의 새로운 SUPPORT-scoped 권리를 추가하십시오: - *********** (133) - CREATE SUPPORT TICKET (134) 을 - REQUEST WEBINAR (136) - VIEW MY SCHEDULED WEBINARS (136)
SecurityRoleManager에 Sync Rights 버튼을 추가하십시오
Button은 Organ.hasParent가 false일 때만 볼 수 있습니다. 이름 * POST /api/security/roles/sync-rights는 그 후에 역할 테이블을 다시 로드합니다.
RoleRightsSyncService를 추출하고 sync-rights endpoint 추가
- RoleRightsSyncService: OrgRole 모두에 대한 역할 권한 동기화 논리를 중앙화 그리고 *********** 테이블; 시작 및 주문 - DataLoader: 시작에 RoleRightsSyncService.syncAll()에 위임 - SecurityRoleContr...
역할 권한 DTOs enum 구동 및 보안 모델 권한 동기화 추가
- SecurityRoleDTO.fromOrgRole(): 모든 롤리전을 삽입 DB를 가진 유형 값 viewup으로 설정 - 새로운 권리는 NOT SPECIFIED로 자동으로 나타납니다. -********** 동일한 enum 구동 방식 보안 모델의 기본 역할 - OrgRoleRight....
Native updateMemberType을 추가하고,TeamMemberRow 쿼리를 MemberRepository에 추가하십시오
표시 도시 및 하위 구분 티켓 방문자 지 행
"City, Region, Country (IP)"로 표시 - null은 필터링되어 있으므로 국가 데이터만 사용할 때 degrades gracefully
Expose 도시와 subdivision 에 방문자 geo lookup
- 도시 및 하위 영역으로 GeoResult 기록 확장 - GeoLookupService (IP-level)를 사용하는 Switch SupportTicketService.toDTO() country-only geoLocationRepository 대신, 그래서 도시 및 subdivisi...
탭 URL params를 /account 페이지에 딥 링크 및 재생 지속
탭 상태는 이제 동기화됩니다 *********** 그래서 링크 특정 탭 작업을 수행하고 올바른 탭은 페이지를 새로 고침에 선택합니다.
티켓 헤더에서 방문자 플래그, 국가 및 IP 표시
- supportTicketDTO 유형에 VisitorCountryCode, visitorsCountryName 추가 - flag emoji + country name + IP address row in TicketHeader for public 채팅 티켓
고객 플래그 및 지원 티켓 헤더에 위치 표시
- PublicChatVisitorRepository 및 GeoLiteLocationRepository를 SupportTicketService에 주사하십시오 - 방문자Ip주소, 방문자CountryCode, 방문자CountryName in toDTO() geo lookup을 통해 - Ge...
LiveSupportPanel에서 STOMP/SockJS를 가진 기본 WebSocket을 대체하십시오
- @stomp/stompjs 및 sockjs 클라이언트 패키지 추가 - 대신 SockJS+STOMP를 통해 media.{domain}/ws/public-chat에 연결하십시오 api.{domain}에 대한 raw WebSocket은 잘못된 호스트와 잘못된 프로토콜이었다. - STOMP...
STOMP/NATS를 통해 end-to-end 공개 채팅 실시간 수정
- PublicChatWebSocketInterceptor의 internalAuth 요구 사항 제거 그래서 방문자는 세션 토큰 만 사용하여 직접 연결할 수 있습니다. - ChatMessageDto의 senderName로 방문자 displayName를 포함 TicketChat에서 메시징하...
NEW TICKET NATS 알림 자동 오픈 지원 티켓 팝업
새로운 지원 티켓이 도착했을 때, 이제는 NEW TICKET를 보내 PENDING COUNT 외에도 STOMP 메시지. 지원CountContext 툴을 파견하여 핸들링:티켓 채팅 창 팝업 /support로 이동해야 하는 대리인 없이 자동적으로.
애니메이션 영웅, 타임라인, CTA로 /contact-confirmed 페이지를 추가
연락처 양식에 인라인 성공 메시지 대체 전용 프리미엄 확인 페이지: 애니메이션 SVG 체크 마크 입자 파열, 'What Happens 다음 3 단계 타임 라인, 그리고 '당신은 기다립니다'CTA 카드. 모든 23 로컬 파일 새로운 contactConfirmed i18n 열쇠로 새롭게 하...
Org 설정 섹션 추가 (timezone, 연령 req, 콘텐츠 플래그, 설명, 별명); 미리보기 / addDomain 버튼을 제거
Redesign LabelManager - 인라인 섹션 편집, 깨진 저장, 읽기 전용 기본
Per-section read/edit 패턴을 가진 LabelManager.tsx를 바꿔 씁니다. 부서지는 저장 버튼(validateForm blocked save because contact/company field was never populated API에서). 글로벌 양식 제출,...
Cross-tenant 이메일 주소를 차단하는 KamoMail 도메인 validator 추가
서비스 레이어에서 확인하는 KamoMailDomainValidator 구성품을 소개합니다. 제출 된 이메일 도메인이 org의 검증 된 기본 도메인과 일치 여부 KamoMail이 활성 공급자입니다. MailboxProvisioningService에 주사, AliasService 및 Sha...
Enforce KamoMail 도메인은 mailbox, alias 및 공유 mailbox 생성에 제한합니다
KamoMail이 이메일 공급자 인 경우, 회원은 메일 박스 만 만들 수 있습니다. aliases 및 org의 검증된 기본 도메인을 사용하여 공유 메일 박스. 3개의 독립적인 층에 보강: frontend UI (prefix+locked 도메인 도메인이 없을 때 사용 가능한 상태 입력, ...