Skip to content
Snippets Groups Projects
Commit cf575136 authored by Moritz Strohm's avatar Moritz Strohm Committed by Jan-Hendrik Willms
Browse files

course/grouping controller: use CSRF protection, fixes #3271

Closes #3271

Merge request studip/studip!2211
parent a3012814
No related branches found
No related tags found
No related merge requests found
...@@ -267,6 +267,7 @@ class Course_GroupingController extends AuthenticatedController ...@@ -267,6 +267,7 @@ class Course_GroupingController extends AuthenticatedController
*/ */
public function action_action() public function action_action()
{ {
CSRFProtection::verifyUnsafeRequest();
if (Request::submitted('single_action')) { if (Request::submitted('single_action')) {
list($course_id, $permission) = explode('-', Request::get('single_action')); list($course_id, $permission) = explode('-', Request::get('single_action'));
...@@ -327,6 +328,8 @@ class Course_GroupingController extends AuthenticatedController ...@@ -327,6 +328,8 @@ class Course_GroupingController extends AuthenticatedController
*/ */
public function move_members_action($source_id) public function move_members_action($source_id)
{ {
CSRFProtection::verifyUnsafeRequest();
$source = Seminar::getInstance($source_id); $source = Seminar::getInstance($source_id);
$target = Seminar::getInstance(Request::option('target')); $target = Seminar::getInstance(Request::option('target'));
...@@ -459,6 +462,7 @@ class Course_GroupingController extends AuthenticatedController ...@@ -459,6 +462,7 @@ class Course_GroupingController extends AuthenticatedController
*/ */
public function unassign_parent_action() public function unassign_parent_action()
{ {
CSRFProtection::verifyUnsafeRequest();
$parent = $this->course->parent_course; $parent = $this->course->parent_course;
$this->course->parent_course = null; $this->course->parent_course = null;
NotificationCenter::postNotification('CourseWillRemoveFromGroup', $this->course->id, $parent); NotificationCenter::postNotification('CourseWillRemoveFromGroup', $this->course->id, $parent);
...@@ -477,6 +481,8 @@ class Course_GroupingController extends AuthenticatedController ...@@ -477,6 +481,8 @@ class Course_GroupingController extends AuthenticatedController
*/ */
public function assign_child_action() public function assign_child_action()
{ {
CSRFProtection::verifyUnsafeRequest();
if ($child = Request::option('child')) { if ($child = Request::option('child')) {
$child_course = Course::find($child); $child_course = Course::find($child);
......
<form class="default" method="post" action="<?= $controller->url_for('course/grouping/assign_child') ?>"> <form class="default" method="post" action="<?= $controller->url_for('course/grouping/assign_child') ?>">
<?= CSRFProtection::tokenTag() ?>
<fieldset> <fieldset>
<legend> <legend>
<?= _('Bereits zugeordnet') ?> <?= _('Bereits zugeordnet') ?>
......
<? if (!empty($courses)) : ?> <? if (!empty($courses)) : ?>
<form class="default" action="<?= $controller->url_for('course/grouping/action') ?>" method="post" <form class="default" action="<?= $controller->url_for('course/grouping/action') ?>" method="post"
data-dialog="size=auto"> data-dialog="size=auto">
<?= CSRFProtection::tokenTag() ?>
<section class="studip"> <section class="studip">
<? foreach ($courses as $child) : ?> <? foreach ($courses as $child) : ?>
<article class="studip toggle" id="<?= $child->id ?>"> <article class="studip toggle" id="<?= $child->id ?>">
...@@ -8,6 +9,7 @@ ...@@ -8,6 +9,7 @@
<h1> <h1>
<input type="checkbox" name="courses[]" value="<?= $child->id ?>" class="courses" <input type="checkbox" name="courses[]" value="<?= $child->id ?>" class="courses"
data-activates="#actions-courses"> data-activates="#actions-courses">
<a href="<?= ContentBoxHelper::href($child->id, ['contentbox_type' => 'news']) ?>" <a href="<?= ContentBoxHelper::href($child->id, ['contentbox_type' => 'news']) ?>"
data-course-id="<?= $child->id ?>" data-course-id="<?= $child->id ?>"
data-get-members-url="<?= $controller->url_for('course/grouping/child_course_members', $child->id) ?>" data-get-members-url="<?= $controller->url_for('course/grouping/child_course_members', $child->id) ?>"
......
<form class="default" action="<?= $controller->url_for('course/grouping/move_members', $source_id) ?>" method="post"> <form class="default" action="<?= $controller->url_for('course/grouping/move_members', $source_id) ?>" method="post">
<?= CSRFProtection::tokenTag() ?>
<fieldset> <fieldset>
<legend><?= _('Personen verschieben') ?></legend> <legend><?= _('Personen verschieben') ?></legend>
......
<? if ($parent) : ?> <? if ($parent) : ?>
<form class="default" method="post" action="<?= $controller->url_for('course/grouping/unassign_parent') ?>"> <form class="default" method="post" action="<?= $controller->url_for('course/grouping/unassign_parent') ?>">
<?= CSRFProtection::tokenTag() ?>
<fieldset> <fieldset>
<legend><?= _('Veranstaltung zuordnen') ?></legend> <legend><?= _('Veranstaltung zuordnen') ?></legend>
<section> <section>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment