diff --git a/controllers/solutions.php b/controllers/solutions.php index 5c56153a9209e8f755f9956d77e41f68cbd17a24..c19d4e2934092f9ebc6d677d3e498a6a0f51dba2 100644 --- a/controllers/solutions.php +++ b/controllers/solutions.php @@ -904,20 +904,22 @@ class SolutionsController extends StudipController } Sidebar::get()->addWidget($widget); - if (count($solution_archive)) { - $widget = new SelectWidget(_vips('Versionen'), $this->url_for('solutions/edit_solution', compact('assignment_id', 'exercise_id', 'solver_id', 'view')), 'solution_id'); - $version = $solution->id ? date('d.m.Y, H:i', strtotime($solution->time)) : _vips('nicht abgegeben'); - $element = new SelectElement(0, sprintf(_vips('Aktuelle Version: %s'), $version), !$archived_id); - $widget->addElement($element); + $widget = new SelectWidget(_vips('Versionen'), $this->url_for('solutions/edit_solution', compact('assignment_id', 'exercise_id', 'solver_id', 'view')), 'solution_id'); + $version = $solution->id ? date('d.m.Y, H:i', strtotime($solution->time)) : _vips('nicht abgegeben'); + $element = new SelectElement(0, sprintf(_vips('Aktuelle Version: %s'), $version), !$archived_id); + $widget->addElement($element); - foreach ($solution_archive as $i => $old_solution) { - $element = new SelectElement($old_solution->id, - sprintf(_vips('Version %s vom %s'), count($solution_archive) - $i, date('d.m.Y, H:i', strtotime($old_solution->time))), - $old_solution->id == $archived_id); - $widget->addElement($element); - } - Sidebar::get()->addWidget($widget); + if (count($solution_archive) === 0) { + $widget->attributes = ['disabled' => 'disabled']; } + + foreach ($solution_archive as $i => $old_solution) { + $element = new SelectElement($old_solution->id, + sprintf(_vips('Version %s vom %s'), count($solution_archive) - $i, date('d.m.Y, H:i', strtotime($old_solution->time))), + $old_solution->id == $archived_id); + $widget->addElement($element); + } + Sidebar::get()->addWidget($widget); } /**