aboutsummaryrefslogtreecommitdiff
path: root/app/controllers/studiengaenge
diff options
context:
space:
mode:
authorJan-Hendrik Willms <tleilax+studip@gmail.com>2024-08-29 14:38:15 +0000
committerJan-Hendrik Willms <tleilax+studip@gmail.com>2024-08-29 14:38:15 +0000
commitc5bdbd16af8a4b1f2dec09a47c31cd5d2d240264 (patch)
tree15179224d934fb19c48a7470dd209df7a7e601c6 /app/controllers/studiengaenge
parentbb5c21dcd0cf9ebb25c3dbbaf7094f55cda08466 (diff)
use csrf protection correctly, fixes #4545
Closes #4545 Merge request studip/studip!3341
Diffstat (limited to 'app/controllers/studiengaenge')
-rw-r--r--app/controllers/studiengaenge/studiengaenge.php50
1 files changed, 22 insertions, 28 deletions
diff --git a/app/controllers/studiengaenge/studiengaenge.php b/app/controllers/studiengaenge/studiengaenge.php
index 8465665..44f5d83 100644
--- a/app/controllers/studiengaenge/studiengaenge.php
+++ b/app/controllers/studiengaenge/studiengaenge.php
@@ -288,17 +288,13 @@ class Studiengaenge_StudiengaengeController extends MVVController
$studiengang = Studiengang::find($studiengang_id);
if (!$studiengang) {
PageLayout::postError(_('Unbekannter Studiengang'));
- } else {
- if (Request::isPost()) {
- if (Request::submitted('delete')) {
- CSRFProtection::verifyRequest();
- PageLayout::postSuccess(sprintf(
- _('Studiengang "%s" gelöscht!'),
- htmlReady($studiengang->name)
- ));
- $studiengang->delete();
- }
- }
+ } else if (Request::submitted('delete')) {
+ CSRFProtection::verifyUnsafeRequest();
+ PageLayout::postSuccess(sprintf(
+ _('Studiengang "%s" gelöscht!'),
+ htmlReady($studiengang->name)
+ ));
+ $studiengang->delete();
}
$this->redirect($this->action_url('index'));
}
@@ -538,23 +534,21 @@ class Studiengaenge_StudiengaengeController extends MVVController
if ($this->stg_stgteil->isNew()) {
PageLayout::postError(_('Unbekannter Studiengangteil'));
} else {
- if (Request::isPost()) {
- CSRFProtection::verifyRequest();
- if (!MvvPerm::haveFieldPermStudiengangteile($studiengang, MvvPerm::PERM_CREATE)) {
- throw new Trails\Exception(403);
- }
- $stgteil_name = $this->stg_stgteil->stgteil_name;
- $stgbez_name = $this->stg_stgteil->stgbez_name;
- if ($this->stg_stgteil->delete()) {
- PageLayout::postSuccess(sprintf(
- _('Die Zuordnung des Studiengangteils "%s" als "%s" zum Studiengang "%s" wurde gelöscht.'),
- htmlReady($stgteil_name),
- htmlReady($stgbez_name),
- htmlReady($studiengang->name)
- ));
- } else {
- PageLayout::postError(_('Der Studiengangteil konnte nicht gelöscht werden.'));
- }
+ CSRFProtection::verifyUnsafeRequest();
+ if (!MvvPerm::haveFieldPermStudiengangteile($studiengang, MvvPerm::PERM_CREATE)) {
+ throw new Trails\Exception(403);
+ }
+ $stgteil_name = $this->stg_stgteil->stgteil_name;
+ $stgbez_name = $this->stg_stgteil->stgbez_name;
+ if ($this->stg_stgteil->delete()) {
+ PageLayout::postSuccess(sprintf(
+ _('Die Zuordnung des Studiengangteils "%s" als "%s" zum Studiengang "%s" wurde gelöscht.'),
+ htmlReady($stgteil_name),
+ htmlReady($stgbez_name),
+ htmlReady($studiengang->name)
+ ));
+ } else {
+ PageLayout::postError(_('Der Studiengangteil konnte nicht gelöscht werden.'));
}
}
$this->redirect(