From 3e4214d86aa0980458abba716316639987ac8995 Mon Sep 17 00:00:00 2001 From: Murtaza Sultani Date: Fri, 5 Sep 2025 09:54:01 +0200 Subject: Resolve "Forum3: Forumskonfigurationen von Veranstaltungskategorien entfernen" Closes #5794 Merge request studip/studip!4415 --- app/controllers/admin/sem_classes.php | 2 -- app/controllers/course/admission.php | 4 +--- app/views/admin/sem_classes/details.php | 16 ---------------- ...forum_configurations_from_sem_classes_table.php | 22 ++++++++++++++++++++++ lib/classes/JsonApi/Schemas/SemClass.php | 2 -- lib/classes/SemClass.php | 8 -------- .../assets/javascripts/lib/admin_sem_class.js | 2 -- 7 files changed, 23 insertions(+), 33 deletions(-) create mode 100644 db/migrations/6.1.16_remove_forum_configurations_from_sem_classes_table.php diff --git a/app/controllers/admin/sem_classes.php b/app/controllers/admin/sem_classes.php index 3dc9f26..3d7a803 100644 --- a/app/controllers/admin/sem_classes.php +++ b/app/controllers/admin/sem_classes.php @@ -116,8 +116,6 @@ class Admin_SemClassesController extends AuthenticatedController $sem_class->set('bereiche', Request::int("bereiche")); $sem_class->set('module', Request::int("module")); $sem_class->set('show_browse', Request::int("show_browse")); - $sem_class->set('write_access_nobody', Request::int("write_access_nobody")); - $sem_class->set('topic_create_autor', Request::int("topic_create_autor")); $sem_class->set('visible', Request::int("visible")); $sem_class->set('course_creation_forbidden', Request::int("course_creation_forbidden")); $sem_class->set('create_description', Request::get("create_description")); diff --git a/app/controllers/course/admission.php b/app/controllers/course/admission.php index c11a5e5..0479cfb 100644 --- a/app/controllers/course/admission.php +++ b/app/controllers/course/admission.php @@ -44,9 +44,7 @@ class Course_AdmissionController extends AuthenticatedController foreach ($lockrules as $rule) { $this->is_locked[$rule] = LockRules::Check($this->course_id, $rule) ? 'disabled readonly' : ''; } - if (!SeminarCategories::GetByTypeId($this->course->status)->write_access_nobody) { - $this->is_locked['write_level'] = 'disabled readonly'; - } + $this->is_locked['write_level'] = 'disabled readonly'; AdmissionApplication::addMembers($this->course->id); URLHelper::addLinkParam('return_to_dialog', Request::get('return_to_dialog')); } diff --git a/app/views/admin/sem_classes/details.php b/app/views/admin/sem_classes/details.php index c5553d6..8080920 100644 --- a/app/views/admin/sem_classes/details.php +++ b/app/views/admin/sem_classes/details.php @@ -135,22 +135,6 @@
- - - - - - -
- -
- diff --git a/db/migrations/6.1.16_remove_forum_configurations_from_sem_classes_table.php b/db/migrations/6.1.16_remove_forum_configurations_from_sem_classes_table.php new file mode 100644 index 0000000..05fabd2 --- /dev/null +++ b/db/migrations/6.1.16_remove_forum_configurations_from_sem_classes_table.php @@ -0,0 +1,22 @@ +exec(" + ALTER TABLE `sem_classes` + DROP COLUMN `write_access_nobody`, + DROP COLUMN `topic_create_autor` + "); + } + + public function down() + { + DBManager::get()->exec(" + ALTER TABLE `sem_classes` + ADD COLUMN `write_access_nobody` TINYINT(3) UNSIGNED NOT NULL AFTER `show_browse`, + ADD COLUMN `topic_create_autor` TINYINT(3) UNSIGNED NOT NULL AFTER `write_access_nobody` + "); + } +} diff --git a/lib/classes/JsonApi/Schemas/SemClass.php b/lib/classes/JsonApi/Schemas/SemClass.php index ea01a63..eb894aa 100644 --- a/lib/classes/JsonApi/Schemas/SemClass.php +++ b/lib/classes/JsonApi/Schemas/SemClass.php @@ -24,8 +24,6 @@ class SemClass extends SchemaProvider 'default-write-level' => (int) $resource['default_write_level'], 'bereiche' => (int) $resource['bereiche'], 'show-browse' => (bool) $resource['show_browse'], - 'write-access-nobody' => (bool) $resource['write_access_nobody'], - 'topic-create-autor' => (bool) $resource['topic_create_autor'], 'visible' => (bool) $resource['visible'], 'course-creation-forbidden' => (bool) $resource['course_creation_forbidden'], ]; diff --git a/lib/classes/SemClass.php b/lib/classes/SemClass.php index e541d8c..5e20af5 100644 --- a/lib/classes/SemClass.php +++ b/lib/classes/SemClass.php @@ -370,8 +370,6 @@ class SemClass implements ArrayAccess "bereiche = :bereiche, " . "module = :module, " . "show_browse = :show_browse, " . - "write_access_nobody = :write_access_nobody, " . - "topic_create_autor = :topic_create_autor, " . "visible = :visible, " . "course_creation_forbidden = :course_creation_forbidden, " . "modules = :modules, " . @@ -403,8 +401,6 @@ class SemClass implements ArrayAccess 'bereiche' => (int) $this->data['bereiche'], 'module' => (int) $this->data['module'], 'show_browse' => (int) $this->data['show_browse'], - 'write_access_nobody' => (int) $this->data['write_access_nobody'], - 'topic_create_autor' => (int) $this->data['topic_create_autor'], 'visible' => (int) $this->data['visible'], 'course_creation_forbidden' => (int) $this->data['course_creation_forbidden'], 'modules' => json_encode((object) $this->data['modules']), @@ -503,10 +499,6 @@ class SemClass implements ArrayAccess return (bool) $this->data['bereiche']; case "show_browse": return (bool) $this->data['show_browse']; - case "write_access_nobody": - return (bool) $this->data['write_access_nobody']; - case "topic_create_autor": - return (bool) $this->data['topic_create_autor']; case "visible": return (bool) $this->data['visible']; case "studygroup_mode": diff --git a/resources/assets/javascripts/lib/admin_sem_class.js b/resources/assets/javascripts/lib/admin_sem_class.js index 10f698c..ddf98de 100644 --- a/resources/assets/javascripts/lib/admin_sem_class.js +++ b/resources/assets/javascripts/lib/admin_sem_class.js @@ -57,8 +57,6 @@ const admin_sem_class = { bereiche: jQuery('#bereiche').is(':checked') ? 1 : 0, module: jQuery('#module').is(':checked') ? 1 : 0, show_browse: jQuery('#show_browse').is(':checked') ? 1 : 0, - write_access_nobody: jQuery('#write_access_nobody').is(':checked') ? 1 : 0, - topic_create_autor: jQuery('#topic_create_autor').is(':checked') ? 1 : 0, visible: jQuery('#visible').is(':checked') ? 1 : 0, course_creation_forbidden: jQuery('#course_creation_forbidden').is(':checked') ? 1 : 0, create_description: jQuery('#create_description').val(), -- cgit v1.0