diff --git a/lib/classes/JsonApi/Schemas/Courseware/Unit.php b/lib/classes/JsonApi/Schemas/Courseware/Unit.php index 901f2f0d882dd86d43b1c511ffc2d76d24cee307..6152e940e61edbccdcb8a611f5522d06ae209f65 100644 --- a/lib/classes/JsonApi/Schemas/Courseware/Unit.php +++ b/lib/classes/JsonApi/Schemas/Courseware/Unit.php @@ -34,6 +34,7 @@ class Unit extends SchemaProvider 'public' => (int) $resource['public'], 'release-date' => $resource['release_date'] ? date('c', $resource['release_date']) : null, 'withdraw-date' => $resource['withdraw_date'] ? date('c', $resource['withdraw_date']) : null, + 'config' => json_decode($resource['config']), 'mkdate' => date('c', $resource['mkdate']), 'chdate' => date('c', $resource['chdate']), ]; diff --git a/resources/vue/components/courseware/unit/CoursewareUnitItem.vue b/resources/vue/components/courseware/unit/CoursewareUnitItem.vue index b1e82bfecc0945fdf90818c5228749e3a83360ef..f09601e94d7a1d03aa945cea69c89a2f946e3e37 100644 --- a/resources/vue/components/courseware/unit/CoursewareUnitItem.vue +++ b/resources/vue/components/courseware/unit/CoursewareUnitItem.vue @@ -286,13 +286,14 @@ export default { createFeedback: 'feedback-elements/create', loadFeedbackElement: 'feedback-elements/loadById', }), - async checkCertificate() { - if (this.getStudipConfig('COURSEWARE_CERTIFICATES_ENABLE')) { - const response = await axios.get(STUDIP.URLHelper.getURL('jsonapi.php/v1/courseware-units/' + - this.unit.id + '/certificate/' + STUDIP.USER_ID)); - if (response.status === 200) { - this.certificate = response.data; - } + checkCertificate() { + if (this.getStudipConfig('COURSEWARE_CERTIFICATES_ENABLE') && this.unit.attributes.config.certificate) { + axios.get(STUDIP.URLHelper.getURL('jsonapi.php/v1/courseware-units/' + + this.unit.id + '/certificate/' + STUDIP.USER_ID)) + .then(response => { + this.certificate = response.data; + }) + .catch(error => {}); } }, executeDelete() {