diff --git a/app/controllers/course/statusgroups.php b/app/controllers/course/statusgroups.php index eae298c0f5ad3f3e71a15764b3f1a1b9e806484e..79c595bc2f056d5b82f57ce060634f6c9f927eba 100644 --- a/app/controllers/course/statusgroups.php +++ b/app/controllers/course/statusgroups.php @@ -518,8 +518,7 @@ class Course_StatusgroupsController extends AuthenticatedController $endtime = 0; } } - $statusgruppe = new Statusgruppen($group_id); - $position = $statusgruppe->position; + $position = Statusgruppen::find($group_id)->position; $group = Statusgruppen::createOrUpdate( $group_id, Request::get('name'), @@ -528,7 +527,7 @@ class Course_StatusgroupsController extends AuthenticatedController Request::int('selfassign', 0) + Request::int('exclusive', 0), strtotime(Request::get('selfassign_start', 'now')), Request::get('selfassign_end') ? strtotime(Request::get('selfassign_end')) : 0, - Request::int('makefolder', 0) || $statusgruppe->hasFolder(), + Request::int('makefolder', 0), Request::getArray('dates') ); diff --git a/app/views/course/statusgroups/edit.php b/app/views/course/statusgroups/edit.php index 2cc857735debd066ee782f0d68784a5ffbb15825..d4bdde24b366b1454d3cc0b266b0fd78a0df31ae 100644 --- a/app/views/course/statusgroups/edit.php +++ b/app/views/course/statusgroups/edit.php @@ -23,7 +23,7 @@ </label> <?php elseif ($group->hasFolder()) : ?> <label> - <input type="checkbox" checked disabled> + <input type="checkbox" name="makefolder" value="1" checked> <?= _('Zu dieser Gruppe gehört ein Dateiordner.') ?> </label> <?php endif ?> diff --git a/lib/models/Statusgruppen.php b/lib/models/Statusgruppen.php index 16cd3d786965c41e3252e79cdd65d28e3853a073..d064259cfcd9c9e97eeaa5f8ff47327e66147e6d 100644 --- a/lib/models/Statusgruppen.php +++ b/lib/models/Statusgruppen.php @@ -156,9 +156,7 @@ class Statusgruppen extends SimpleORMap implements PrivacyObject * Create document folder if requested (ID is needed here, * so we do that after store()). */ - if ($makefolder) { - $group->updateFolder(true); - } + $group->updateFolder($makefolder); return $group; } @@ -358,11 +356,12 @@ class Statusgruppen extends SimpleORMap implements PrivacyObject // Keep existing folder, but disconnect it from group. if ($this->hasFolder() && !$set) { $folder = $this->getFolder(); - $folder->type = 'StandardFolder'; + $folder->folder_type = 'StandardFolder'; unset($folder->data_content['group']); return $folder->store(); } + // Update existing folder name if ($this->hasFolder() && $set) { $folder = $this->getFolder(); $folder->name = _('Dateiordner der Gruppe:') . ' ' . $this->name;