fixed client config selection only for cc of institution of exam

This commit is contained in:
anhefti 2020-10-28 17:09:17 +01:00
parent 6c8aa7b12c
commit af8cca8ab2
No known key found for this signature in database
GPG key ID: E9AD9471B6BC114D
2 changed files with 10 additions and 4 deletions

View file

@ -24,6 +24,7 @@ import org.springframework.stereotype.Component;
import ch.ethz.seb.sebserver.gbl.Constants;
import ch.ethz.seb.sebserver.gbl.model.Domain;
import ch.ethz.seb.sebserver.gbl.model.Entity;
import ch.ethz.seb.sebserver.gbl.model.EntityKey;
import ch.ethz.seb.sebserver.gbl.model.sebconfig.ConfigCreationInfo;
import ch.ethz.seb.sebserver.gbl.model.sebconfig.SEBClientConfig;
@ -68,7 +69,7 @@ public class ExamCreateClientConfigPopup {
this.downloadFileName = downloadFileName;
}
public Function<PageAction, PageAction> exportFunction() {
public Function<PageAction, PageAction> exportFunction(final Long examInstitutionId) {
return action -> {
@ -80,7 +81,8 @@ public class ExamCreateClientConfigPopup {
final CreationFormContext creationFormContext = new CreationFormContext(
this.pageService,
action.pageContext());
action.pageContext(),
String.valueOf(examInstitutionId));
final Predicate<FormHandle<?>> doCreate = formHandle -> doCreate(
this.pageService,
@ -124,13 +126,16 @@ public class ExamCreateClientConfigPopup {
private final PageService pageService;
private final PageContext pageContext;
private final String examInstitutionId;
protected CreationFormContext(
final PageService pageService,
final PageContext pageContext) {
final PageContext pageContext,
final String examInstitutionId) {
this.pageService = pageService;
this.pageContext = pageContext;
this.examInstitutionId = examInstitutionId;
}
@Override
@ -138,6 +143,7 @@ public class ExamCreateClientConfigPopup {
final List<Tuple<String>> configs = this.pageService.getRestService().getBuilder(GetClientConfigs.class)
.withQueryParam(SEBClientConfig.FILTER_ATTR_ACTIVE, Constants.TRUE_STRING)
.withQueryParam(Entity.FILTER_ATTR_INSTITUTION, this.examInstitutionId)
.call()
.getOrThrow()
.stream()

View file

@ -397,7 +397,7 @@ public class ExamForm implements TemplateComposer {
.newAction(ActionDefinition.EXAM_SEB_CLIENT_CONFIG_EXPORT)
.withEntityKey(entityKey)
.withExec(this.examCreateClientConfigPopup.exportFunction())
.withExec(this.examCreateClientConfigPopup.exportFunction(exam.institutionId))
.publishIf(() -> writeGrant && readonly)
.newAction(ActionDefinition.EXAM_MODIFY_SEB_RESTRICTION_DETAILS)