fix: change back to login button and add to register option screen (#4847)

* fix: change back to login button and add to register option screen

* fix: change back to login button and add logic for remove and set events

Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
This commit is contained in:
Stefan Benz 2022-12-20 08:26:48 +00:00 committed by GitHub
parent 5d61ed5cac
commit 339fbd4f0c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 75 additions and 5 deletions

View File

@ -229,6 +229,7 @@ export function mapRequestValues(map: Partial<Map>, req: Req): Req {
r21.setExternalLoginDescription(map.registrationOptionText?.externalLoginDescription ?? ''); r21.setExternalLoginDescription(map.registrationOptionText?.externalLoginDescription ?? '');
r21.setTitle(map.registrationOptionText?.title ?? ''); r21.setTitle(map.registrationOptionText?.title ?? '');
r21.setUserNameButtonText(map.registrationOptionText?.userNameButtonText ?? ''); r21.setUserNameButtonText(map.registrationOptionText?.userNameButtonText ?? '');
r21.setLoginButtonText(map.registrationOptionText?.loginButtonText ?? '');
req.setRegistrationOptionText(r21); req.setRegistrationOptionText(r21);
const r22 = new RegistrationOrgScreenText(); const r22 = new RegistrationOrgScreenText();

View File

@ -486,6 +486,7 @@ title: zitadel/text.proto
| description | string | - | string.max_len: 500<br /> | | description | string | - | string.max_len: 500<br /> |
| user_name_button_text | string | - | string.max_len: 200<br /> | | user_name_button_text | string | - | string.max_len: 200<br /> |
| external_login_description | string | - | string.max_len: 500<br /> | | external_login_description | string | - | string.max_len: 500<br /> |
| login_button_text | string | - | string.max_len: 200<br /> |

View File

@ -345,6 +345,7 @@ func RegistrationOptionScreenTextToPb(text domain.RegistrationOptionScreenText)
Description: text.Description, Description: text.Description,
UserNameButtonText: text.RegisterUsernamePasswordButtonText, UserNameButtonText: text.RegisterUsernamePasswordButtonText,
ExternalLoginDescription: text.ExternalLoginDescription, ExternalLoginDescription: text.ExternalLoginDescription,
LoginButtonText: text.LoginButtonText,
} }
} }
@ -811,6 +812,7 @@ func RegistrationOptionScreenTextPbToDomain(text *text_pb.RegistrationOptionScre
Description: text.Description, Description: text.Description,
RegisterUsernamePasswordButtonText: text.UserNameButtonText, RegisterUsernamePasswordButtonText: text.UserNameButtonText,
ExternalLoginDescription: text.ExternalLoginDescription, ExternalLoginDescription: text.ExternalLoginDescription,
LoginButtonText: text.LoginButtonText,
} }
} }

View File

@ -195,6 +195,7 @@ RegisterOption:
Description: Wähle aus wie du dich registrieren möchtest. Description: Wähle aus wie du dich registrieren möchtest.
RegisterUsernamePasswordButtonText: Mit Benutzername Passwort RegisterUsernamePasswordButtonText: Mit Benutzername Passwort
ExternalLoginDescription: oder registriere dich mit einem externen Benutzer ExternalLoginDescription: oder registriere dich mit einem externen Benutzer
LoginButtonText: login
RegistrationUser: RegistrationUser:
Title: Registration Title: Registration
@ -222,7 +223,7 @@ RegistrationUser:
TosConfirmAnd: und die TosConfirmAnd: und die
PrivacyLinkText: Datenschutzerklärung PrivacyLinkText: Datenschutzerklärung
ExternalLogin: oder registriere dich mit einem externen Benutzer ExternalLogin: oder registriere dich mit einem externen Benutzer
BackButtonText: zurück BackButtonText: login
NextButtonText: weiter NextButtonText: weiter
ExternalRegistrationUserOverview: ExternalRegistrationUserOverview:

View File

@ -195,6 +195,7 @@ RegisterOption:
Description: Choose how you'd like to register Description: Choose how you'd like to register
RegisterUsernamePasswordButtonText: With username password RegisterUsernamePasswordButtonText: With username password
ExternalLoginDescription: or register with an external user ExternalLoginDescription: or register with an external user
LoginButtonText: login
RegistrationUser: RegistrationUser:
Title: Registration Title: Registration
@ -222,7 +223,7 @@ RegistrationUser:
TosConfirmAnd: and the TosConfirmAnd: and the
PrivacyLinkText: privacy policy PrivacyLinkText: privacy policy
ExternalLogin: or register with an external user ExternalLogin: or register with an external user
BackButtonText: back BackButtonText: login
NextButtonText: next NextButtonText: next
ExternalRegistrationUserOverview: ExternalRegistrationUserOverview:

View File

@ -195,6 +195,7 @@ RegisterOption:
Description: Choisissez comment vous souhaitez vous enregistrer Description: Choisissez comment vous souhaitez vous enregistrer
RegisterUsernamePasswordButtonText: Avec nom d'utilisateur et mot de passe RegisterUsernamePasswordButtonText: Avec nom d'utilisateur et mot de passe
ExternalLoginDescription: ou s'enregistrer avec un utilisateur externe ExternalLoginDescription: ou s'enregistrer avec un utilisateur externe
LoginButtonText: connexion
RegistrationUser: RegistrationUser:
Title: Inscription Title: Inscription
@ -222,7 +223,7 @@ RegistrationUser:
TosConfirmAnd: et la TosConfirmAnd: et la
PrivacyLinkText: politique de confidentialité PrivacyLinkText: politique de confidentialité
ExternalLogin: ou m'inscrire avec un utilisateur externe ExternalLogin: ou m'inscrire avec un utilisateur externe
BackButtonText: retour BackButtonText: connexion
NextButtonText: suivant NextButtonText: suivant
ExternalRegistrationUserOverview: ExternalRegistrationUserOverview:

View File

@ -195,6 +195,7 @@ RegisterOption:
Description: Scegli come vuoi registrarti Description: Scegli come vuoi registrarti
RegisterUsernamePasswordButtonText: Con nome utente e password RegisterUsernamePasswordButtonText: Con nome utente e password
ExternalLoginDescription: o registrarsi con un utente esterno ExternalLoginDescription: o registrarsi con un utente esterno
LoginButtonText: Accedi
RegistrationUser: RegistrationUser:
Title: Registrazione Title: Registrazione
@ -222,7 +223,7 @@ RegistrationUser:
TosConfirmAnd: e TosConfirmAnd: e
PrivacyLinkText: l'informativa sulla privacy PrivacyLinkText: l'informativa sulla privacy
ExternalLogin: o registrati con un utente esterno ExternalLogin: o registrati con un utente esterno
BackButtonText: indietro BackButtonText: Accedi
NextButtonText: Avanti NextButtonText: Avanti
ExternalRegistrationUserOverview: ExternalRegistrationUserOverview:

View File

@ -195,6 +195,7 @@ RegisterOption:
Description: 选择您的注册方式 Description: 选择您的注册方式
RegisterUsernamePasswordButtonText: 使用用户名密码 RegisterUsernamePasswordButtonText: 使用用户名密码
ExternalLoginDescription: 或使用外部身份提供者 ExternalLoginDescription: 或使用外部身份提供者
LoginButtonText: 登录
RegistrationUser: RegistrationUser:
Title: 注册 Title: 注册
@ -222,7 +223,7 @@ RegistrationUser:
TosConfirmAnd: TosConfirmAnd:
PrivacyLinkText: 隐私政策 PrivacyLinkText: 隐私政策
ExternalLogin: 使用外部身份提供者注册 ExternalLogin: 使用外部身份提供者注册
BackButtonText: 返回 BackButtonText: 登录
NextButtonText: 继续 NextButtonText: 继续
ExternalRegistrationUserOverview: ExternalRegistrationUserOverview:

View File

@ -36,6 +36,12 @@
</div> </div>
{{template "error-message" .}} {{template "error-message" .}}
<div class="lgn-actions">
<a class="lgn-stroked-button" href="{{ loginUrl }}">
{{t "RegisterOption.LoginButtonText"}}
</a>
</div>
</form> </form>

View File

@ -761,6 +761,10 @@ func (c *Commands) createRegistrationOptionEvents(ctx context.Context, agg *even
if event != nil { if event != nil {
events = append(events, event) events = append(events, event)
} }
event = c.createCustomLoginTextEvent(ctx, agg, domain.LoginKeyRegistrationOptionLoginButtonText, existingText.RegistrationOptionLoginButtonText, text.RegisterOption.LoginButtonText, text.Language, defaultText)
if event != nil {
events = append(events, event)
}
return events return events
} }

View File

@ -204,6 +204,7 @@ type CustomLoginTextReadModel struct {
RegistrationOptionDescription string RegistrationOptionDescription string
RegistrationOptionUserNameButtonText string RegistrationOptionUserNameButtonText string
RegistrationOptionExternalLoginDescription string RegistrationOptionExternalLoginDescription string
RegistrationOptionLoginButtonText string
RegistrationUserTitle string RegistrationUserTitle string
RegistrationUserDescription string RegistrationUserDescription string
@ -1878,6 +1879,10 @@ func (wm *CustomLoginTextReadModel) handleRegistrationOptionScreenSetEvent(e *po
wm.RegistrationOptionExternalLoginDescription = e.Text wm.RegistrationOptionExternalLoginDescription = e.Text
return return
} }
if e.Key == domain.LoginKeyRegistrationOptionLoginButtonText {
wm.RegistrationOptionLoginButtonText = e.Text
return
}
} }
func (wm *CustomLoginTextReadModel) handleRegistrationOptionScreenRemoveEvent(e *policy.CustomTextRemovedEvent) { func (wm *CustomLoginTextReadModel) handleRegistrationOptionScreenRemoveEvent(e *policy.CustomTextRemovedEvent) {
@ -1897,6 +1902,10 @@ func (wm *CustomLoginTextReadModel) handleRegistrationOptionScreenRemoveEvent(e
wm.RegistrationOptionExternalLoginDescription = "" wm.RegistrationOptionExternalLoginDescription = ""
return return
} }
if e.Key == domain.LoginKeyRegistrationOptionLoginButtonText {
wm.RegistrationOptionLoginButtonText = ""
return
}
} }
func (wm *CustomLoginTextReadModel) handleRegistrationUserScreenSetEvent(e *policy.CustomTextSetEvent) { func (wm *CustomLoginTextReadModel) handleRegistrationUserScreenSetEvent(e *policy.CustomTextSetEvent) {

View File

@ -932,6 +932,12 @@ func TestCommandSide_SetCustomIAMLoginText(t *testing.T) {
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, "ExternalLoginDescription", language.English, &instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, "ExternalLoginDescription", language.English,
), ),
), ),
eventFromEventPusherWithInstanceID(
"INSTANCE",
instance.NewCustomTextSetEvent(context.Background(),
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionLoginButtonText, "LoginButtonText", language.English,
),
),
eventFromEventPusherWithInstanceID( eventFromEventPusherWithInstanceID(
"INSTANCE", "INSTANCE",
instance.NewCustomTextSetEvent(context.Background(), instance.NewCustomTextSetEvent(context.Background(),
@ -1569,6 +1575,7 @@ func TestCommandSide_SetCustomIAMLoginText(t *testing.T) {
Description: "Description", Description: "Description",
RegisterUsernamePasswordButtonText: "RegisterUsernamePasswordButtonText", RegisterUsernamePasswordButtonText: "RegisterUsernamePasswordButtonText",
ExternalLoginDescription: "ExternalLoginDescription", ExternalLoginDescription: "ExternalLoginDescription",
LoginButtonText: "LoginButtonText",
}, },
RegistrationUser: domain.RegistrationUserScreenText{ RegistrationUser: domain.RegistrationUserScreenText{
Title: "Title", Title: "Title",
@ -2548,6 +2555,12 @@ func TestCommandSide_SetCustomIAMLoginText(t *testing.T) {
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, "ExternalLoginDescription", language.English, &instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, "ExternalLoginDescription", language.English,
), ),
), ),
eventFromEventPusherWithInstanceID(
"INSTANCE",
instance.NewCustomTextSetEvent(context.Background(),
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionLoginButtonText, "LoginButtonText", language.English,
),
),
eventFromEventPusherWithInstanceID( eventFromEventPusherWithInstanceID(
"INSTANCE", "INSTANCE",
instance.NewCustomTextSetEvent(context.Background(), instance.NewCustomTextSetEvent(context.Background(),
@ -3859,6 +3872,12 @@ func TestCommandSide_SetCustomIAMLoginText(t *testing.T) {
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, language.English, &instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, language.English,
), ),
), ),
eventFromEventPusherWithInstanceID(
"INSTANCE",
instance.NewCustomTextRemovedEvent(context.Background(),
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionLoginButtonText, language.English,
),
),
eventFromEventPusherWithInstanceID( eventFromEventPusherWithInstanceID(
"INSTANCE", "INSTANCE",
instance.NewCustomTextRemovedEvent(context.Background(), instance.NewCustomTextRemovedEvent(context.Background(),
@ -5223,6 +5242,12 @@ func TestCommandSide_SetCustomIAMLoginText(t *testing.T) {
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, "ExternalLoginDescription", language.English, &instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, "ExternalLoginDescription", language.English,
), ),
), ),
eventFromEventPusherWithInstanceID(
"INSTANCE",
instance.NewCustomTextSetEvent(context.Background(),
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionLoginButtonText, "LoginButtonText", language.English,
),
),
eventFromEventPusherWithInstanceID( eventFromEventPusherWithInstanceID(
"INSTANCE", "INSTANCE",
instance.NewCustomTextSetEvent(context.Background(), instance.NewCustomTextSetEvent(context.Background(),
@ -6532,6 +6557,12 @@ func TestCommandSide_SetCustomIAMLoginText(t *testing.T) {
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, language.English, &instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, language.English,
), ),
), ),
eventFromEventPusherWithInstanceID(
"INSTANCE",
instance.NewCustomTextRemovedEvent(context.Background(),
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionLoginButtonText, language.English,
),
),
eventFromEventPusherWithInstanceID( eventFromEventPusherWithInstanceID(
"INSTANCE", "INSTANCE",
instance.NewCustomTextRemovedEvent(context.Background(), instance.NewCustomTextRemovedEvent(context.Background(),
@ -7844,6 +7875,12 @@ func TestCommandSide_SetCustomIAMLoginText(t *testing.T) {
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, "ExternalLoginDescription", language.English, &instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionExternalLoginDescription, "ExternalLoginDescription", language.English,
), ),
), ),
eventFromEventPusherWithInstanceID(
"INSTANCE",
instance.NewCustomTextSetEvent(context.Background(),
&instance.NewAggregate("INSTANCE").Aggregate, domain.LoginCustomText, domain.LoginKeyRegistrationOptionLoginButtonText, "LoginButtonText", language.English,
),
),
eventFromEventPusherWithInstanceID( eventFromEventPusherWithInstanceID(
"INSTANCE", "INSTANCE",
instance.NewCustomTextSetEvent(context.Background(), instance.NewCustomTextSetEvent(context.Background(),
@ -8481,6 +8518,7 @@ func TestCommandSide_SetCustomIAMLoginText(t *testing.T) {
Description: "Description", Description: "Description",
RegisterUsernamePasswordButtonText: "RegisterUsernamePasswordButtonText", RegisterUsernamePasswordButtonText: "RegisterUsernamePasswordButtonText",
ExternalLoginDescription: "ExternalLoginDescription", ExternalLoginDescription: "ExternalLoginDescription",
LoginButtonText: "LoginButtonText",
}, },
RegistrationUser: domain.RegistrationUserScreenText{ RegistrationUser: domain.RegistrationUserScreenText{
Title: "Title", Title: "Title",

View File

@ -206,6 +206,7 @@ const (
LoginKeyRegistrationOptionDescription = LoginKeyRegistrationOption + "Description" LoginKeyRegistrationOptionDescription = LoginKeyRegistrationOption + "Description"
LoginKeyRegistrationOptionUserNameButtonText = LoginKeyRegistrationOption + "RegisterUsernamePasswordButtonText" LoginKeyRegistrationOptionUserNameButtonText = LoginKeyRegistrationOption + "RegisterUsernamePasswordButtonText"
LoginKeyRegistrationOptionExternalLoginDescription = LoginKeyRegistrationOption + "ExternalLoginDescription" LoginKeyRegistrationOptionExternalLoginDescription = LoginKeyRegistrationOption + "ExternalLoginDescription"
LoginKeyRegistrationOptionLoginButtonText = LoginKeyRegistrationOption + "LoginButtonText"
LoginKeyRegistrationUser = "RegistrationUser." LoginKeyRegistrationUser = "RegistrationUser."
LoginKeyRegistrationUserTitle = LoginKeyRegistrationUser + "Title" LoginKeyRegistrationUserTitle = LoginKeyRegistrationUser + "Title"
@ -261,6 +262,7 @@ const (
LoginKeyRegisterOrgTosConfirmAnd = LoginKeyRegistrationOrg + "TosConfirmAnd" LoginKeyRegisterOrgTosConfirmAnd = LoginKeyRegistrationOrg + "TosConfirmAnd"
LoginKeyRegisterOrgPrivacyLinkText = LoginKeyRegistrationOrg + "PrivacyLinkText" LoginKeyRegisterOrgPrivacyLinkText = LoginKeyRegistrationOrg + "PrivacyLinkText"
LoginKeyRegisterOrgSaveButtonText = LoginKeyRegistrationOrg + "SaveButtonText" LoginKeyRegisterOrgSaveButtonText = LoginKeyRegistrationOrg + "SaveButtonText"
LoginKeyRegisterOrgBackButtonText = LoginKeyRegistrationOrg + "BackButtonText"
LoginKeyLinkingUserDone = "LinkingUsersDone." LoginKeyLinkingUserDone = "LinkingUsersDone."
LoginKeyLinkingUserDoneTitle = LoginKeyLinkingUserDone + "Title" LoginKeyLinkingUserDoneTitle = LoginKeyLinkingUserDone + "Title"
@ -540,6 +542,7 @@ type RegistrationOptionScreenText struct {
Description string Description string
RegisterUsernamePasswordButtonText string RegisterUsernamePasswordButtonText string
ExternalLoginDescription string ExternalLoginDescription string
LoginButtonText string
} }
type RegistrationUserScreenText struct { type RegistrationUserScreenText struct {

View File

@ -283,6 +283,7 @@ message RegistrationOptionScreenText {
string description = 2 [(validate.rules).string = {max_len: 500}]; string description = 2 [(validate.rules).string = {max_len: 500}];
string user_name_button_text = 3 [(validate.rules).string = {max_len: 200}]; string user_name_button_text = 3 [(validate.rules).string = {max_len: 200}];
string external_login_description = 4 [(validate.rules).string = {max_len: 500}]; string external_login_description = 4 [(validate.rules).string = {max_len: 500}];
string login_button_text = 5 [(validate.rules).string = {max_len: 200}];
} }
message RegistrationUserScreenText { message RegistrationUserScreenText {