From f5670d7b3961d4b23c41d356dd251344e0216410 Mon Sep 17 00:00:00 2001
From: David Siegfried <david.siegfried@uni-vechta.de>
Date: Tue, 12 Jul 2022 14:07:04 +0000
Subject: [PATCH] declare undeclared variables, fixes #1235

Closes #1235

Merge request studip/studip!750
---
 lib/classes/DataFieldEntry.class.php                     | 1 +
 lib/classes/I18N.php                                     | 2 +-
 lib/classes/JsonApi/Models/ForumEntry.php                | 1 -
 lib/classes/JsonApi/Routes/Files/RangeFileRefsCreate.php | 2 +-
 lib/classes/MvvI18N.php                                  | 2 +-
 lib/classes/Smiley.php                                   | 2 +-
 lib/classes/StudipForm.class.php                         | 1 +
 lib/classes/StudipRangeTreeViewAdmin.class.php           | 2 ++
 lib/classes/TreeView.class.php                           | 2 +-
 lib/classes/restapi/ConsumerPermissions.php              | 6 +++---
 10 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/lib/classes/DataFieldEntry.class.php b/lib/classes/DataFieldEntry.class.php
index c934e51eb75..6acd2739ae8 100644
--- a/lib/classes/DataFieldEntry.class.php
+++ b/lib/classes/DataFieldEntry.class.php
@@ -103,6 +103,7 @@ abstract class DataFieldEntry
         }
         $clause1 = '';
         $parameters = [];
+        $clause1 = '';
         if(is_array($range_id)) {
             // rangeID may be an array ("classic" rangeID and second rangeID used for user roles)
             $secRangeID = $range_id[1];
diff --git a/lib/classes/I18N.php b/lib/classes/I18N.php
index 18e1e7aa749..5ba2c889542 100644
--- a/lib/classes/I18N.php
+++ b/lib/classes/I18N.php
@@ -101,7 +101,7 @@ class I18N
      */
     public function checkMvvPerms(ModuleManagementModel $object, $perm = MvvPerm::PERM_WRITE)
     {
-        $may_edit = MvvPerm::get($object)->haveFieldPerm($field ?: $this->name, $perm);
+        $may_edit = MvvPerm::get($object)->haveFieldPerm($this->name, $perm);
         return $this->setReadOnly(!$may_edit);
     }
 
diff --git a/lib/classes/JsonApi/Models/ForumEntry.php b/lib/classes/JsonApi/Models/ForumEntry.php
index 767926c975d..3355244d7b5 100644
--- a/lib/classes/JsonApi/Models/ForumEntry.php
+++ b/lib/classes/JsonApi/Models/ForumEntry.php
@@ -125,7 +125,6 @@ class ForumEntry extends \SimpleORMap
 
         $stmt_four = \DBManager::get()->prepare('DELETE FROM forum_categories_entries
             WHERE topic_id = ?');
-        $stmt_four->bindParam(':ids', $ids, \StudipPDO::PARAM_ARRAY);
         $stmt_four->execute([$topicId]);
 
         return $stmt_one && $stmt_two && $stmt_three && $stmt_four;
diff --git a/lib/classes/JsonApi/Routes/Files/RangeFileRefsCreate.php b/lib/classes/JsonApi/Routes/Files/RangeFileRefsCreate.php
index a91320d4c15..4afc5ca4180 100644
--- a/lib/classes/JsonApi/Routes/Files/RangeFileRefsCreate.php
+++ b/lib/classes/JsonApi/Routes/Files/RangeFileRefsCreate.php
@@ -41,7 +41,7 @@ class RangeFileRefsCreate extends JsonApiController
 
         $json = $this->validate($request);
 
-        if (!$parent = $this->getRelationshipParent($json)) {
+        if (!$parentFolder = $this->getRelationshipParent($json)) {
             throw new RecordNotFoundException('Bad `parent` folder.');
         }
         if ($parentFolder->range_id !== $range->id) {
diff --git a/lib/classes/MvvI18N.php b/lib/classes/MvvI18N.php
index 7ff7a6a2ea5..11b3adbc892 100644
--- a/lib/classes/MvvI18N.php
+++ b/lib/classes/MvvI18N.php
@@ -17,7 +17,7 @@ class MvvI18N extends I18N
      */
     public function checkPermission(ModuleManagementModel $object, $perm = MvvPerm::PERM_WRITE)
     {
-        $may_edit = MvvPerm::get($object)->haveFieldPerm($field ?: $this->name, $perm);
+        $may_edit = MvvPerm::get($object)->haveFieldPerm($this->name, $perm);
         return $this->setReadOnly(!$may_edit);
     }
 }
diff --git a/lib/classes/Smiley.php b/lib/classes/Smiley.php
index 8d37e4f225b..4bf5d83bbd3 100644
--- a/lib/classes/Smiley.php
+++ b/lib/classes/Smiley.php
@@ -397,7 +397,7 @@ class Smiley
             'update'    => 0
         ];
 
-        if ($filename === null) {
+        if ($smiley_file === null) {
             $files = glob(self::getFilename('*'));
         } else {
             $files = [$smiley_file];
diff --git a/lib/classes/StudipForm.class.php b/lib/classes/StudipForm.class.php
index f7560523572..fd76fee9879 100644
--- a/lib/classes/StudipForm.class.php
+++ b/lib/classes/StudipForm.class.php
@@ -259,6 +259,7 @@ class StudipForm {
     {
         $date_values = explode("-", $default); //YYYY-MM-DD
         $value = '';
+        $ret = '';
         if(count($date_values)==3){
             $value = $date_values[2]. '.' . $date_values[1]. '.' .$date_values[0];
         }
diff --git a/lib/classes/StudipRangeTreeViewAdmin.class.php b/lib/classes/StudipRangeTreeViewAdmin.class.php
index 28577b3ba04..1bde3715be9 100644
--- a/lib/classes/StudipRangeTreeViewAdmin.class.php
+++ b/lib/classes/StudipRangeTreeViewAdmin.class.php
@@ -652,6 +652,7 @@ class StudipRangeTreeViewAdmin extends TreeView{
     }
 
     function getEditItemContent(){
+        $content = '';
         ob_start();
         ?>
         <div style="margin: 0px 5%">
@@ -733,6 +734,7 @@ class StudipRangeTreeViewAdmin extends TreeView{
 
     function getEditCatContent($item_id, $cat_snap)
     {
+        $content = '';
         ob_start();
         ?>
         <form name="cat_form_<?= $item_id ?>" method="post" class="default"
diff --git a/lib/classes/TreeView.class.php b/lib/classes/TreeView.class.php
index 2223cc1d8bb..b2d8f5b851e 100644
--- a/lib/classes/TreeView.class.php
+++ b/lib/classes/TreeView.class.php
@@ -289,6 +289,7 @@ class TreeView {
     * @param    string  $item_id
     */
     function printItemDetails($item_id){
+        $level_output = '';
         if (!$this->tree->hasKids($item_id) || !$this->open_ranges[$item_id] || $item_id == $this->start_item_id)
             $level_output = "<td class=\"blank\" background=\"" . Assets::image_path('forumleer.gif') . "\">"
                           . Assets::img('forumleer.gif', ['size' => '10@20'])
@@ -326,7 +327,6 @@ class TreeView {
         echo "<td class=\"printcontent\" width=\"100%\"><br>";
         echo $this->getItemContent($item_id);
         echo "<br></td></tr></table>";
-        return;
     }
 
     /**
diff --git a/lib/classes/restapi/ConsumerPermissions.php b/lib/classes/restapi/ConsumerPermissions.php
index f0e0f03a085..a62ec11f7c1 100644
--- a/lib/classes/restapi/ConsumerPermissions.php
+++ b/lib/classes/restapi/ConsumerPermissions.php
@@ -195,14 +195,14 @@ class ConsumerPermissions
                   VALUES (:route, IFNULL(:consumer_id, 'global'), :method, :granted)
                   ON DUPLICATE KEY UPDATE granted = VALUES(granted)";
         $statement = DBManager::get()->prepare($query);
-        $statement->bindParam(':route', $route_id);
         $statement->bindValue(':consumer_id', $this->consumer_id);
-        $statement->bindParam(':method', $method);
-        $statement->bindParam(':granted', $granted);
 
         foreach ($this->permissions as $route_id => $methods) {
+            $statement->bindParam(':route', $route_id);
             foreach ($methods as $method => $granted) {
+                $statement->bindParam(':method', $method);
                 $granted = (int) !empty($granted);
+                $statement->bindParam(':granted', $granted);
                 $result = $result && $statement->execute();
             }
         }
-- 
GitLab