Add feedback form (#1967)

Add feedback button and form. This feedback form can be used to provide direct feedback to the SCM-Manager Team.

Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
This commit is contained in:
Eduard Heimbuch
2022-03-10 09:39:17 +01:00
committed by GitHub
parent 390384b723
commit 4407dc6d8a
22 changed files with 235 additions and 21 deletions

View File

@@ -62,6 +62,7 @@ public class ConfigDto extends HalRepresentation implements UpdateConfigDto {
private String namespaceStrategy;
private String loginInfoUrl;
private String alertsUrl;
private String feedbackUrl;
private String releaseFeedUrl;
private String mailDomainName;
private Set<String> emergencyContacts;

View File

@@ -34,17 +34,19 @@ import lombok.Getter;
public class IndexDto extends HalRepresentation {
private final String version;
private final String instanceId;
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private final String initialization;
IndexDto(Links links, Embedded embedded, String version) {
this(links, embedded, version, null);
IndexDto(Links links, Embedded embedded, String version, String instanceId) {
this(links, embedded, version, instanceId, null);
}
IndexDto(Links links, Embedded embedded, String version, String initialization) {
IndexDto(Links links, Embedded embedded, String version, String instanceId, String initialization) {
super(links, embedded);
this.version = version;
this.instanceId = instanceId;
this.initialization = initialization;
}
}

View File

@@ -150,12 +150,15 @@ public class IndexDtoGenerator extends HalAppenderMapper {
if (!Strings.isNullOrEmpty(configuration.getAlertsUrl())) {
builder.single(link("alerts", resourceLinks.alerts().get()));
}
if (!Strings.isNullOrEmpty(configuration.getFeedbackUrl())) {
builder.single(link("feedback", configuration.getFeedbackUrl()));
}
} else {
builder.single(link("login", resourceLinks.authentication().jsonLogin()));
}
applyEnrichers(new EdisonHalAppender(builder, embeddedBuilder), new Index());
return new IndexDto(builder.build(), embeddedBuilder.build(), scmContextProvider.getVersion());
return new IndexDto(builder.build(), embeddedBuilder.build(), scmContextProvider.getVersion(), scmContextProvider.getInstanceId());
}
private List<Link> searchLinks() {
@@ -173,7 +176,7 @@ public class IndexDtoGenerator extends HalAppenderMapper {
InitializationStep initializationStep = initializationFinisher.missingInitialization();
initializationFinisher.getResource(initializationStep.name()).setupIndex(initializationLinkBuilder, initializationEmbeddedBuilder);
embeddedBuilder.with(initializationStep.name(), new InitializationDto(initializationLinkBuilder.build(), initializationEmbeddedBuilder.build()));
return new IndexDto(builder.build(), embeddedBuilder.build(), scmContextProvider.getVersion(), initializationStep.name());
return new IndexDto(builder.build(), embeddedBuilder.build(), scmContextProvider.getVersion(), scmContextProvider.getInstanceId(), initializationStep.name());
}
private boolean shouldAppendSubjectRelatedLinks() {