diff --git a/app/controllers/contents/courseware.php b/app/controllers/contents/courseware.php index 61b5115e79494e118cc6c8edc8021de0ba1fa2b7..0183655cdef78c0f15984efdca499cb256fc7f5c 100644 --- a/app/controllers/contents/courseware.php +++ b/app/controllers/contents/courseware.php @@ -23,6 +23,7 @@ class Contents_CoursewareController extends CoursewareController $this->user = $GLOBALS['user']; $this->licenses = $this->getLicenses(); + $this->oer_enabled = Config::get()->OERCAMPUS_ENABLED && $GLOBALS['perm']->have_perm(Config::get()->OER_PUBLIC_STATUS); $this->unitsNotFound = Unit::countBySql('range_id = ?', [$this->user->id]) === 0; } @@ -61,7 +62,7 @@ class Contents_CoursewareController extends CoursewareController */ public function courseware_action($unit_id = null): void { - global $perm, $user; + global $user; Navigation::activateItem('/contents/courseware/courseware'); if ($this->unitsNotFound) { @@ -297,7 +298,7 @@ class Contents_CoursewareController extends CoursewareController */ public function shared_content_courseware_action($entry_element_id): void { - global $perm, $user; + global $user; $navigation = new Navigation(_('Geteiltes Lernmaterial'), 'dispatch.php/contents/courseware/shared_content_courseware/' . $entry_element_id); Navigation::addItem('/contents/courseware/shared_content_courseware', $navigation); @@ -320,9 +321,6 @@ class Contents_CoursewareController extends CoursewareController $this->user_id = $struct->owner_id; - - $this->oer_enabled = Config::get()->OERCAMPUS_ENABLED && $perm->have_perm(Config::get()->OER_PUBLIC_STATUS); - $this->setCoursewareSidebar(); } } diff --git a/app/controllers/course/courseware.php b/app/controllers/course/courseware.php index 29c48d9e0323d3085a7dd082725e5481713898e5..46419a88e85665d5e2d7d9b8d9630c30bd95f768 100644 --- a/app/controllers/course/courseware.php +++ b/app/controllers/course/courseware.php @@ -31,6 +31,7 @@ class Course_CoursewareController extends CoursewareController object_set_visit_module($this->studip_module->getPluginId()); $this->last_visitdate = object_get_visit(Context::getId(), $this->studip_module->getPluginId()); $this->licenses = $this->getLicenses(); + $this->oer_enabled = Config::get()->OERCAMPUS_ENABLED && $GLOBALS['perm']->have_perm(Config::get()->OER_PUBLIC_STATUS); $this->unitsNotFound = Unit::countBySql('range_id = ?', [Context::getId()]) === 0; } @@ -42,7 +43,7 @@ class Course_CoursewareController extends CoursewareController public function courseware_action($unit_id = null): void { - global $perm, $user; + global $user; Navigation::activateItem('course/courseware/unit'); if ($this->unitsNotFound) { PageLayout::postMessage(MessageBox::info(_('Es wurde kein Lernmaterial gefunden.'))); diff --git a/app/views/contents/courseware/courseware.php b/app/views/contents/courseware/courseware.php index ba4a48e5467bb810f6510f0be03d00b5fcfc07c0..683f07e4748aab745a8ec4fb83622e115fa5bef5 100644 --- a/app/views/contents/courseware/courseware.php +++ b/app/views/contents/courseware/courseware.php @@ -5,7 +5,7 @@ entry-type="users" entry-id="<?= htmlReady($user_id) ?>" unit-id="<?= htmlReady($unit_id) ?>" - oer-enabled='<?= htmlReady(Config::get()->OERCAMPUS_ENABLED) ?>' + oer-enabled='<?= htmlReady($oer_enabled) ?>' licenses='<?= htmlReady($licenses) ?>' > </div> diff --git a/app/views/course/courseware/courseware.php b/app/views/course/courseware/courseware.php index 5440c973f1405ae9b1587dfa65febed0fedd35ba..1abb48a667fbf3e7d904b0c37d99d457b992db91 100644 --- a/app/views/course/courseware/courseware.php +++ b/app/views/course/courseware/courseware.php @@ -5,7 +5,7 @@ entry-type="courses" entry-id="<?= htmlReady(Context::getId()) ?>" unit-id="<?= htmlReady($unit_id) ?>" - oer-enabled="<?= htmlReady(Config::get()->OERCAMPUS_ENABLED) ?>" + oer-enabled='<?= htmlReady($oer_enabled) ?>' licenses='<?= htmlReady($licenses) ?>' > </div> diff --git a/resources/vue/components/courseware/CoursewareExportWidget.vue b/resources/vue/components/courseware/CoursewareExportWidget.vue index c8baa4fac8df5ed8de5f33b9eda6ddcc09f4734a..89ecf1cbb8324524011c0b85b9bcc4a56721af5f 100644 --- a/resources/vue/components/courseware/CoursewareExportWidget.vue +++ b/resources/vue/components/courseware/CoursewareExportWidget.vue @@ -64,11 +64,15 @@ export default { return this.canVisit; }, showOer() { + if (!this.oerEnabled) { + return false; + } + if (this.context.type === 'users') { return true; } - return this.oerEnabled && this.userIsTeacher && this.canVisit + return this.userIsTeacher && this.canVisit; } }, methods: { diff --git a/resources/vue/components/courseware/CoursewareStructuralElement.vue b/resources/vue/components/courseware/CoursewareStructuralElement.vue index 3ee6ca2f3d28cbbe02fe19fb53cb9812002837a8..40c43d728efb085126faef2bb4c7e58bf0f7b9ca 100644 --- a/resources/vue/components/courseware/CoursewareStructuralElement.vue +++ b/resources/vue/components/courseware/CoursewareStructuralElement.vue @@ -1030,10 +1030,15 @@ export default { let menu = [ { id: 4, label: this.$gettext('Informationen anzeigen'), icon: 'info', emit: 'showInfo' }, { id: 5, label: this.$gettext('Lesezeichen setzen'), icon: 'star', emit: 'setBookmark' }, - { id: 6, label: this.$gettext('Lerninhalt für OER Campus vorschlagen'), icon: 'oer-campus', - emit: 'showSuggest' } ]; + if (this.oerEnabled) { + menu.push( + { id: 6, label: this.$gettext('Lerninhalt für OER Campus vorschlagen'), icon: 'oer-campus', + emit: 'showSuggest' } + ); + } + if (!document.documentElement.classList.contains('responsive-display')) { menu.push( { id: 7, label: this.$gettext('Als Vollbild anzeigen'), icon: 'screen-full',