2021-06-10 13:49:10 +02:00
|
|
|
package admin
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
|
feat(console): message and login texts, privacy policy (#2016)
* message texts wrapper components
* message-text sub, i18n, grid
* fix routing
* pack
* pack
* update material
* audit
* fix mgmt service for labelplcy
* map conv
* edit text from map
* request map
* fetch data, mgmt admin service
* warn box, i18n
* resetbtn
* login texts
* login text requests
* reset, default, i18n
* disabled, features, message text setter, service
* locale switcher
* policy grid
* password reset, domain claimed i18n
* lint files
* fix admin service, i18n, lang setter
* fix scss duplicate
* privacy policy, cleanup grid, fix message, login texts (#2031)
* policy grid everywhere 🦒
* cleanup home
* log login text request
* patch all data
* refresh toggle
* fix: add dialog for unsaved changes (#2057)
* logintexts dialog
* check for dialog on pairwise operation
* fix: patch value to local state after save
* fix: i18n and custom login texts (#2060)
* fix: i18n and custom login texts
* fix: tos and privacy texts
* fix frontend
* fix: tos and privacy texts and tests
* fix: i18n, tos and privacy texts and tests
* fix frontend maps
* i18n
* add ResetCustomLoginTextToDefault in admin api and fix template remove in handlers
* resetlogintexttodefault
Co-authored-by: Livio Amstutz <livio.a@gmail.com>
2021-07-26 12:44:45 +02:00
|
|
|
"golang.org/x/text/language"
|
|
|
|
|
2021-06-10 13:49:10 +02:00
|
|
|
"github.com/caos/zitadel/internal/api/grpc/object"
|
|
|
|
text_grpc "github.com/caos/zitadel/internal/api/grpc/text"
|
|
|
|
"github.com/caos/zitadel/internal/domain"
|
|
|
|
admin_pb "github.com/caos/zitadel/pkg/grpc/admin"
|
|
|
|
)
|
|
|
|
|
|
|
|
func (s *Server) GetDefaultInitMessageText(ctx context.Context, req *admin_pb.GetDefaultInitMessageTextRequest) (*admin_pb.GetDefaultInitMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetDefaultMessageText(ctx, domain.InitCodeMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetDefaultInitMessageTextResponse{
|
2021-07-13 07:13:39 +02:00
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetCustomInitMessageText(ctx context.Context, req *admin_pb.GetCustomInitMessageTextRequest) (*admin_pb.GetCustomInitMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetCustomMessageText(ctx, domain.InitCodeMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetCustomInitMessageTextResponse{
|
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
2021-06-10 13:49:10 +02:00
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) SetDefaultInitMessageText(ctx context.Context, req *admin_pb.SetDefaultInitMessageTextRequest) (*admin_pb.SetDefaultInitMessageTextResponse, error) {
|
|
|
|
result, err := s.command.SetDefaultMessageText(ctx, SetInitCustomTextToDomain(req))
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.SetDefaultInitMessageTextResponse{
|
|
|
|
Details: object.ChangeToDetailsPb(
|
|
|
|
result.Sequence,
|
|
|
|
result.EventDate,
|
|
|
|
result.ResourceOwner,
|
|
|
|
),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetDefaultPasswordResetMessageText(ctx context.Context, req *admin_pb.GetDefaultPasswordResetMessageTextRequest) (*admin_pb.GetDefaultPasswordResetMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetDefaultMessageText(ctx, domain.PasswordResetMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetDefaultPasswordResetMessageTextResponse{
|
2021-07-13 07:13:39 +02:00
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetCustomPasswordResetMessageText(ctx context.Context, req *admin_pb.GetCustomPasswordResetMessageTextRequest) (*admin_pb.GetCustomPasswordResetMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetCustomMessageText(ctx, domain.PasswordResetMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetCustomPasswordResetMessageTextResponse{
|
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
2021-06-10 13:49:10 +02:00
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) SetDefaultPasswordResetMessageText(ctx context.Context, req *admin_pb.SetDefaultPasswordResetMessageTextRequest) (*admin_pb.SetDefaultPasswordResetMessageTextResponse, error) {
|
|
|
|
result, err := s.command.SetDefaultMessageText(ctx, SetPasswordResetCustomTextToDomain(req))
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.SetDefaultPasswordResetMessageTextResponse{
|
|
|
|
Details: object.ChangeToDetailsPb(
|
|
|
|
result.Sequence,
|
|
|
|
result.EventDate,
|
|
|
|
result.ResourceOwner,
|
|
|
|
),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetDefaultVerifyEmailMessageText(ctx context.Context, req *admin_pb.GetDefaultVerifyEmailMessageTextRequest) (*admin_pb.GetDefaultVerifyEmailMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetDefaultMessageText(ctx, domain.VerifyEmailMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetDefaultVerifyEmailMessageTextResponse{
|
2021-07-13 07:13:39 +02:00
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetCustomVerifyEmailMessageText(ctx context.Context, req *admin_pb.GetCustomVerifyEmailMessageTextRequest) (*admin_pb.GetCustomVerifyEmailMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetCustomMessageText(ctx, domain.VerifyEmailMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetCustomVerifyEmailMessageTextResponse{
|
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
2021-06-10 13:49:10 +02:00
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
2021-07-20 11:40:53 +02:00
|
|
|
func (s *Server) SetDefaultVerifyEmailMessageText(ctx context.Context, req *admin_pb.SetDefaultVerifyEmailMessageTextRequest) (*admin_pb.SetDefaultVerifyEmailMessageTextResponse, error) {
|
2021-06-10 13:49:10 +02:00
|
|
|
result, err := s.command.SetDefaultMessageText(ctx, SetVerifyEmailCustomTextToDomain(req))
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.SetDefaultVerifyEmailMessageTextResponse{
|
|
|
|
Details: object.ChangeToDetailsPb(
|
|
|
|
result.Sequence,
|
|
|
|
result.EventDate,
|
|
|
|
result.ResourceOwner,
|
|
|
|
),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetDefaultVerifyPhoneMessageText(ctx context.Context, req *admin_pb.GetDefaultVerifyPhoneMessageTextRequest) (*admin_pb.GetDefaultVerifyPhoneMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetDefaultMessageText(ctx, domain.VerifyPhoneMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetDefaultVerifyPhoneMessageTextResponse{
|
2021-07-13 07:13:39 +02:00
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetCustomVerifyPhoneMessageText(ctx context.Context, req *admin_pb.GetCustomVerifyPhoneMessageTextRequest) (*admin_pb.GetCustomVerifyPhoneMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetCustomMessageText(ctx, domain.VerifyPhoneMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetCustomVerifyPhoneMessageTextResponse{
|
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
2021-06-10 13:49:10 +02:00
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) SetDefaultVerifyPhoneMessageText(ctx context.Context, req *admin_pb.SetDefaultVerifyPhoneMessageTextRequest) (*admin_pb.SetDefaultVerifyPhoneMessageTextResponse, error) {
|
|
|
|
result, err := s.command.SetDefaultMessageText(ctx, SetVerifyPhoneCustomTextToDomain(req))
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.SetDefaultVerifyPhoneMessageTextResponse{
|
|
|
|
Details: object.ChangeToDetailsPb(
|
|
|
|
result.Sequence,
|
|
|
|
result.EventDate,
|
|
|
|
result.ResourceOwner,
|
|
|
|
),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetDefaultDomainClaimedMessageText(ctx context.Context, req *admin_pb.GetDefaultDomainClaimedMessageTextRequest) (*admin_pb.GetDefaultDomainClaimedMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetDefaultMessageText(ctx, domain.DomainClaimedMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetDefaultDomainClaimedMessageTextResponse{
|
2021-07-13 07:13:39 +02:00
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetCustomDomainClaimedMessageText(ctx context.Context, req *admin_pb.GetCustomDomainClaimedMessageTextRequest) (*admin_pb.GetCustomDomainClaimedMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetCustomMessageText(ctx, domain.DomainClaimedMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetCustomDomainClaimedMessageTextResponse{
|
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
2021-06-10 13:49:10 +02:00
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) SetDefaultDomainClaimedMessageText(ctx context.Context, req *admin_pb.SetDefaultDomainClaimedMessageTextRequest) (*admin_pb.SetDefaultDomainClaimedMessageTextResponse, error) {
|
|
|
|
result, err := s.command.SetDefaultMessageText(ctx, SetDomainClaimedCustomTextToDomain(req))
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.SetDefaultDomainClaimedMessageTextResponse{
|
|
|
|
Details: object.ChangeToDetailsPb(
|
|
|
|
result.Sequence,
|
|
|
|
result.EventDate,
|
|
|
|
result.ResourceOwner,
|
|
|
|
),
|
|
|
|
}, nil
|
|
|
|
}
|
2021-07-05 15:10:49 +02:00
|
|
|
|
2021-08-02 15:24:58 +02:00
|
|
|
func (s *Server) GetDefaultPasswordlessRegistrationMessageText(ctx context.Context, req *admin_pb.GetDefaultPasswordlessRegistrationMessageTextRequest) (*admin_pb.GetDefaultPasswordlessRegistrationMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetDefaultMessageText(ctx, domain.PasswordlessRegistrationMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetDefaultPasswordlessRegistrationMessageTextResponse{
|
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) GetCustomPasswordlessRegistrationMessageText(ctx context.Context, req *admin_pb.GetCustomPasswordlessRegistrationMessageTextRequest) (*admin_pb.GetCustomPasswordlessRegistrationMessageTextResponse, error) {
|
|
|
|
msg, err := s.iam.GetCustomMessageText(ctx, domain.PasswordlessRegistrationMessageType, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetCustomPasswordlessRegistrationMessageTextResponse{
|
|
|
|
CustomText: text_grpc.DomainCustomMsgTextToPb(msg),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) SetDefaultPasswordlessRegistrationMessageText(ctx context.Context, req *admin_pb.SetDefaultPasswordlessRegistrationMessageTextRequest) (*admin_pb.SetDefaultPasswordlessRegistrationMessageTextResponse, error) {
|
|
|
|
result, err := s.command.SetDefaultMessageText(ctx, SetPasswordlessRegistrationCustomTextToDomain(req))
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.SetDefaultPasswordlessRegistrationMessageTextResponse{
|
|
|
|
Details: object.ChangeToDetailsPb(
|
|
|
|
result.Sequence,
|
|
|
|
result.EventDate,
|
|
|
|
result.ResourceOwner,
|
|
|
|
),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
2021-07-05 15:10:49 +02:00
|
|
|
func (s *Server) GetDefaultLoginTexts(ctx context.Context, req *admin_pb.GetDefaultLoginTextsRequest) (*admin_pb.GetDefaultLoginTextsResponse, error) {
|
|
|
|
msg, err := s.iam.GetDefaultLoginTexts(ctx, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetDefaultLoginTextsResponse{
|
|
|
|
CustomText: text_grpc.CustomLoginTextToPb(msg),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
func (s *Server) GetCustomLoginTexts(ctx context.Context, req *admin_pb.GetCustomLoginTextsRequest) (*admin_pb.GetCustomLoginTextsResponse, error) {
|
|
|
|
msg, err := s.iam.GetCustomLoginTexts(ctx, req.Language)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.GetCustomLoginTextsResponse{
|
|
|
|
CustomText: text_grpc.CustomLoginTextToPb(msg),
|
|
|
|
}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (s *Server) SetCustomLoginText(ctx context.Context, req *admin_pb.SetCustomLoginTextsRequest) (*admin_pb.SetCustomLoginTextsResponse, error) {
|
|
|
|
result, err := s.command.SetCustomIAMLoginText(ctx, SetLoginTextToDomain(req))
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.SetCustomLoginTextsResponse{
|
|
|
|
Details: object.ChangeToDetailsPb(
|
|
|
|
result.Sequence,
|
|
|
|
result.EventDate,
|
|
|
|
result.ResourceOwner,
|
|
|
|
),
|
|
|
|
}, nil
|
|
|
|
}
|
feat(console): message and login texts, privacy policy (#2016)
* message texts wrapper components
* message-text sub, i18n, grid
* fix routing
* pack
* pack
* update material
* audit
* fix mgmt service for labelplcy
* map conv
* edit text from map
* request map
* fetch data, mgmt admin service
* warn box, i18n
* resetbtn
* login texts
* login text requests
* reset, default, i18n
* disabled, features, message text setter, service
* locale switcher
* policy grid
* password reset, domain claimed i18n
* lint files
* fix admin service, i18n, lang setter
* fix scss duplicate
* privacy policy, cleanup grid, fix message, login texts (#2031)
* policy grid everywhere 🦒
* cleanup home
* log login text request
* patch all data
* refresh toggle
* fix: add dialog for unsaved changes (#2057)
* logintexts dialog
* check for dialog on pairwise operation
* fix: patch value to local state after save
* fix: i18n and custom login texts (#2060)
* fix: i18n and custom login texts
* fix: tos and privacy texts
* fix frontend
* fix: tos and privacy texts and tests
* fix: i18n, tos and privacy texts and tests
* fix frontend maps
* i18n
* add ResetCustomLoginTextToDefault in admin api and fix template remove in handlers
* resetlogintexttodefault
Co-authored-by: Livio Amstutz <livio.a@gmail.com>
2021-07-26 12:44:45 +02:00
|
|
|
|
|
|
|
func (s *Server) ResetCustomLoginTextToDefault(ctx context.Context, req *admin_pb.ResetCustomLoginTextsToDefaultRequest) (*admin_pb.ResetCustomLoginTextsToDefaultResponse, error) {
|
|
|
|
result, err := s.command.RemoveCustomIAMLoginTexts(ctx, language.Make(req.Language))
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return &admin_pb.ResetCustomLoginTextsToDefaultResponse{
|
|
|
|
Details: object.ChangeToDetailsPb(
|
|
|
|
result.Sequence,
|
|
|
|
result.EventDate,
|
|
|
|
result.ResourceOwner,
|
|
|
|
),
|
|
|
|
}, nil
|
|
|
|
}
|